王朝百科
分享
 
 
 

PC/SC

王朝百科·作者佚名  2010-08-12  
宽屏版  字体: |||超大  

1.简介:

PC/SC规范由微软公司与世界其它著名的智能卡厂商组成的PC/SC工作组提出的。PC/SC规范是一个基于WINDOWS平台的一个标准用户接口(AP1),提供了一个从个人电脑(Personal Computer)到智能卡(SmartCard)的整合环境,虽然到目前为止,WONDOWS是唯一支持PC/SC标准的操作系统平台,但由于WINDOWS的影响力,PC/SC规范也为智能卡业界所接收。到目前为止,PC/SC规范的最新版本是PC/SC Specifications 1.0。

PC/SC规范建立在工业标准-ISO7816和EMV标准的基础上,但它对底层的设备接口和独立于设备的应用API接口(例如用来允许多个应用共享使用系统同一张智能卡的资源管理器)做了更详尽的补充。它的提出主要是为了达到以下目标:

遵从现在ICC和PC的标准并在适当的地方予在扩充

跨平台的可操作性,使该规范可在多种硬件和软件平台上实现

应用程序可以采用不同厂商提供的产品(独立于厂商)

建立应用级的智能卡服务接口,推广ICC在PC上的应用,并促成PC采用ICC作主标准设备。

2.PC/SC体系的主要组成:

PC/SC体系由三个主要部件组成,分别规定的操作系统厂商、读写器(IFD)厂商、智能卡(ICC)厂商的职责。

PC/SC
体系主要组成

i. IFD

(即读写器)控制器是由IFD厂商提供的可安装部件。

ii. Resource manager(资源管理器)使用Win32API函数实现,是由操作系统厂商提供的系统级部件。

iii. Service Providers(服务提供者),服务程序是由厂商提供的可安装部件,用于提供访问特殊服务的手段,其使用的是基本COM的界面方式。

3.CRW系列IC读卡器PC/SC驱程序的安装

支持PC/SC规范的CRW系列IC读卡器包装盒有一个PC/SC驱动程序安装软盘。运行安装程序SETUP.EXE

驱动程序会自动安装到系统中,就可以按PC/SC规范使用CRW系列读卡器。

4.PC/SC的API函数使用方法及示例

PC/SC的API函数由操作系统提供,在微软公司提供的MSDN(2000年10月版)有相关帮助(路径\MSDNPlatform SDKSecuritySmart Card),函数声明在Winscard.h中,所用的库是Scarddlg.lib,这里只是摘录其中一个来说明:ScardConnect。

ScardConnect函数用来建立应用程序与插在读卡器中的智能卡的连接。如果在指定的读卡器中没有卡片,则返回一个错误。

LONG SCardCommect(IN SCARDCONTEXT hContext, IN LPCTSTR szReader, IN DWORD dwShareMode, IN DWORD dwPreferredProtocols, OUT LPSCARDHANDLE phCard, OUT LPDWORD pdwActiveProtocol);

参数:hContext:标识资源管理器环境的句柄,这个资源管理器环境是预先调用SCardEstablishContext来设置的。

SzReader:与目标卡相连的读卡器名字

DwShareMode:用来标识其它应用程序是否与该卡相连的标志。可以取以下值

取值 含义

SCARD_SHARE_SHARED 本应用程序将与其它应用程序共享这张卡

SCARD_SHARE_EXCLUSIVE 本应用程序将不会与其它应用程序共享这张卡

SCARD_SHARE_DIRECT 本应用程序指定读卡器为私有,并直接控制卡片,其它应用程序不能访问它

DwPreferredProtocols:连接时,所能接收的协议位标志。可以取以下值,也可以进行OR操作

取值 含义

SCARD_PROTOCOL_TO T=0 是可能接收的协议

SCARD_PROTOCOL_T1 T=1 是可能接收的协议

0 该参数只有当dwShareMode设置为SCARD_SHARE_DIRECT时,才可能为零。因此,由驱动来完成无协议的通讯直到ScardControl发送控制指示

IOCTL_SMARTCARD_SET_PROTOCOL

PhCard:返回一个句柄,标识智能卡与指写读卡器的连接

PdwActiveProtocol:返回一个标识,标识确定有效的协议,可以取以下值

取值 含义

SCARD_PROTOCOL_TO T=0 是有效的协议

SCARD_PROTOCOL_T1 T=1 是有效的协议

SCARD_PROTOCOL_UNDEFINED 已经指定为SCARD_SHARE_DIRECT

 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
如何用java替换看不见的字符比如零宽空格​十六进制U+200B
 干货   2023-09-10
网页字号不能单数吗,网页字体大小为什么一般都是偶数
 干货   2023-09-06
java.lang.ArrayIndexOutOfBoundsException: 4096
 干货   2023-09-06
Noto Sans CJK SC字体下载地址
 干货   2023-08-30
window.navigator和navigator的区别是什么?
 干货   2023-08-23
js获取referer、useragent、浏览器语言
 干货   2023-08-23
oscache遇到404时会不会缓存?
 干货   2023-08-23
linux下用rm -rf *删除大量文件太慢怎么解决?
 干货   2023-08-08
刀郎新歌破世界纪录!
 娱乐   2023-08-01
js实现放大缩小页面
 干货   2023-07-31
生成式人工智能服务管理暂行办法
 百态   2023-07-31
英语学习:过去完成时The Past Perfect Tense举例说明
 干货   2023-07-31
Mysql常用sql命令语句整理
 干货   2023-07-30
科学家复活了46000年前的虫子
 探索   2023-07-29
英语学习:过去进行时The Past Continuous Tense举例说明
 干货   2023-07-28
meta name="applicable-device"告知页面适合哪种终端设备:PC端、移动端还是自适应
 干货   2023-07-28
只用css如何实现打字机特效?
 百态   2023-07-15
css怎么实现上下滚动
 干货   2023-06-28
canvas怎么画一个三角形?
 干货   2023-06-28
canvas怎么画一个椭圆形?
 干货   2023-06-28
canvas怎么画一个圆形?
 干货   2023-06-28
canvas怎么画一个正方形?
 干货   2023-06-28
中国河南省郑州市金水区蜘蛛爬虫ip大全
 干货   2023-06-22
javascript简易动态时间代码
 干货   2023-06-20
感谢员工的付出和激励的话怎么说?
 干货   2023-06-18
 
>>返回首页<<
 
 
静静地坐在废墟上,四周的荒凉一望无际,忽然觉得,凄凉也很美
© 2005- 王朝网络 版权所有