
PC/SC规范由微软公司与世界其它著名的来自智能卡厂商组成的PC/盾省足达SC工作组提出的。
- 外文名称 PC/SC
- 提出者 微软公司
- 基于平台 WINDOWS
- 工业标准 -ISO7816
目标
来自 遵从现在ICC和PC的标准并在适当的地方予在扩充
跨平台的可操作性,使该规范可在多种硬件和软件平台上实现
应用程序可以采用不同厂商提供的产品(独立于厂商)
建立应用级的智能卡服务接口,推广ICC在PC上的应用,并促成PC采用ICC作主标准设备。
主要组成
PC/纪投SC体系由三个主要部件加大约量往增似志染组成,分别规定的操作系统厂商、读写器(IFD)厂商、智能直搞请式卡(ICC)厂商出村石胜胞可的职责。
i. IFD
(即读写器)控制器是由IFD厂商提供的可安装部件。
ii. Resource 360百科manager(资源管理器)使用Win32API函数实现,是由操作系统续建阿与还华半厂商提供的系统级部件。
iii. Service Providers(服务提供者),服务程序是由厂商提供的可安装部件,用于提供访问特殊服务的手段,其使用的是基本COM的界面方式于先块须掌至护烈短。
程序的安装
支持PC/SC规范的CR汉这聚望原既电在排白W系列IC读卡器包装盒有一个PC/SC驱动程序安装软盘。运行安装程序SETUP.EXE
驱动程序会自动安装到系统中,就可以按PC/SC规范使用CRW系列读卡器。
方法及示例
PC/SC的API函数由操作系统提供,在微软公司提供的MSDN(2000年10月版)有相关帮助(路径\\MSDN\Platform SDK\Security\Smart Card),函数声明在Winscard.h中,所用的库是Scarddlg.lib,这里只是摘录其中一个来说明:ScardConnect。
ScardConnect函数用来建立应用程序与插在读卡器中的智能卡的连接。如果在指定的读卡器中没有卡片,则返回一个错误。
LONG ScardConnect(IN SC益乐粒汉松条相交我东协ARDCONTEXT hContext, IN 备亮肉道端LPCTSTR szReader, IN DWORD dwShareMode, IN DWORD dwPr来自eferredPro360百科tocols, OUT LPSCARDHANDLE phCard, OU活各仍采较T LPDWORD pd争数每振兵传京治村印wActiveProtocol);
参数:hC什能ontext:标识资源管理器环境的句柄,这个资源管理器环境是预先调用SCardEstablishContext来设置的。
SzReader:与目标卡相连的读卡器名字
DwShareMode:用来标识其它应用程序是否与该卡相连的标志。可以取以下值
取值 含义
SCARD_SHARE_SHARED 本应用程序将与其它应用程序共享这张卡
SCARD_SHARE_EXCLU坐北劳孙益术笔陆半SIVE 本应用程杨型序将不会与其它应用程序东汽汽进情吧众洲共享这张卡
S口振带稳爱层甲CARD_SHARE_DIRECT 本应用程序指定读卡器为私有,并直接控制卡片,其它应用程序不能访问它
DwPreferredProtocols:连接时,所能接收的协议位标志。可以取以下值,也可茶优争脚消巴车矿那据雨以进行OR操作
取值 含义
SCARD_PROTOCOL_TO T=0 是可能接收的协议
SCARD_PROTOCOL_T1 T=1 是可能接收的协议
0 该参数只有当dwSh也会太预答关马制areMode设置为SCARD_SHARE_DIRECT时,才可能为零维装务副脸乐。因此,由驱动来完成无协议的通讯直到ScardControl发送控制指示
IOCTL_SMARTCARD_SET_PROTOCOL
PhCard:返回一个句柄,标识智能卡与指写读卡器的连接
PdwActivePro燃就白味林货tocol:返回一个标识,标识确定有效的协议,可以取以下值
取值 含义
SCARD_PROT护烟曾OCOL_TO T=获探极黑理0 是有效的协议
SCARD_PROTOCOL_T1 T=1 是有效的协议
SCARD_PROTOCOL_UNDEFINED 已经指定为SCARD_SHARE_DIRECT