PC/SC专题

来源:互联网 发布:andrew marc 知乎 编辑:程序博客网 时间:2024/05/17 09:24

 PC/SC是微软公司提供的用于智能卡开发的协议类型,对于PC/SC协议微软提供了专有的协议驱动模型,可以容易的被IE调用实现SSL。同事对于IE也可以通过CSP的方式来实现SSL协议。

我最近看了关于SmartCard驱动开发的模型。SmartCard实现主要分为几个部分

1、驱动初始化部分,制定协议类型,传输率等相关基本信息,同时初始化 SMARTCARD_EXTENSION 。

2、在相关DeviceIoCtrl中,将Irp转给SmartcardDeviceControl。

3、实现回调函数。主要是几个关键的回调函数。

4、例如NTSTATUS 
  (*ReaderFunction[RDF_TRANSMIT])(
    PSMARTCARD_EXTENSION  
SmartcardExtension
    );回调函数

在实现该回调函数,可以采用简单的方法,

4.1 调用SmartcardT1Request 将请求从调换缓冲区复制到smartcard lib缓冲区。

4.2 将数据取出,交给硬件设备。数据存在SmartcardExtension-> SmartcardRequest->systembuffer中。

4.3 从设备中读取信息,并将信息 SmartcardExtension->SmartcardReply.Buffer

4.4 调用SmartcardT1Reply 来完成最后的处理。

 

 

 

原创粉丝点击