中文版 / ENGLISH 
华虹首页 关于我们 产品中心 解决方案 服务支持 人力资源 新闻中心 联系我们
SOLUTION 解决方案
公交一卡通
身份识别
移动支付
社会保障
电信智能卡
解决方案 首页 >> 解决方案 >> 

双界面CPU芯片在社保二代项目中的应用

发布时间: 2010/7/27

双界面CPU芯片在社保二代项目中的应用

摘要:

随着应用市场对IC卡的要求不断提高,单纯的接触式或非接触式IC卡已经不能完全满足市场需求,因此双界面CPU智能卡芯片孕育而生。本文 简要介绍双界面CPU智能卡芯片的特点,然后介绍了华虹集成电路有限责任公司的双界面CPU智能卡芯片的结构、技术特点和适用范围, 通过双界面社保二代项目的开发重点介绍该双界面CPU智能卡芯片的使用。

 

 

关键字:双界面,CPU芯片,社保二代

 

 

1.      简介

随着技术与经济的不断发展,人们对IC卡的需求和要求也不断提高。目前比较普及的接触式智能卡在使用过程中也暴露出其不可避免的弱点:容易磨损,导致误读错读率高;交易速度慢,特别是插拔频率高的场合;受使用环境限制等。非接触式智能卡是目前国际智能卡的前沿技术,与接触式智能卡相比较,非接触式卡的优点是:可靠性高,表面无裸露的芯片;操作方便,交易速度快;加密性能好。

虽然接触式智能卡应用系统存在很多缺点,但是大量的接触式智能卡机具不能马上更换为非接触式机具,另外,在射频信号干扰强烈的环境下,非接触式智能卡不能正常工作,无法取代接触式智能卡,于是产生了双界面智能卡。双界面智能卡可分为三种: 种是卡内有2个独立的芯片,分别处理接触式和非接触式应用系统;第二种是卡内仍是2个独立的芯片,只是共享一部分存储空间;第三种是卡内只有1CPU芯片,所有资源都是共享的。三种双界面智能卡中,只有 一种双界面智能卡才是真正意义上的双界面CPU卡。华虹公司成功研制的双界面CPU芯片,完全能够满足第三种双界面智能卡的需求。

2.      双界面CPU芯片特点

华虹公司研制的这款双界面CPU芯片是一款同时兼有接触式和非接触式通讯接口的CPU智能IC卡芯片。CPU采用32位高性能MCU。芯片集成了RF模块和7816串行接口模块;硬件可自动检测接触式和非接触式电源和时钟信号;符合ISO7816 T=0/1ISO14443 type A/B通信协议;硬件可自动识别通信协议;type A协议的抗冲突由硬件完成。除了功能完备的通讯接口外,芯片还集成了定时器和看门狗、时钟生成、中断控制器、系统控制、安全控制、国际标准加解密算法协处理器和国家商用密码算法模块、真随机数发生器、CRC模块等,方便应用COS的开发。

该芯片主要用于社保卡和银行卡,还包括一些多应用智能卡,卡内一部分应用支持接触式,另一部分支持非接触式。另外一些type A/B兼容卡的应用也能满足要求。

下一节我们以社保二代开发项目为例,介绍双界面CPU芯片的使用。

3.      双界面社保二代实现

社保二代卡是一个双界面、多应用的智能卡。它同时支持接触式7816 T=0协议,非接触式14443 typeA/typeB协议,还具有社保和Q-PBOC等多个应用。

3.1 双界面的选择

社保二代卡的实现充分利用了华虹公司自主研制的双界面CPU芯片的特点,使双界面的功能得以轻松实现。 ,芯片内部有个电源指示寄存器(PowerAvailReg),软件通过读取该寄存器的值,就可以知道目前系统是处于纯非接触式应用还是纯接触式应用或两种应用同时存在。然后根据该结果,设置系统时钟源及分频系数等。接下来,如果系统处于纯接触式环境或两种环境同时存在,软件执行接触式7816 T=0协议通道;否则执行非接触式14443协议通道。在非接触式通道执行中,软件设置RF特性使能寄存器(RFFEATURE),使能芯片根据输入波形,自动选择通信协议,然后软件读取RF特性使能寄存器(RFFEATURE),就可以知道是typeA协议还是typeB协议, 根据选择,执行不同的初始化和抗冲突处理即可。流程如图1所示。

通信通道的选择和应用无关,所以软件采用函数指针的方式,根据不同的通讯接口,函数指针指向相应的发送接收函数,应用只需要调用函数指针就可以收发数据了,不需要关心具体的通讯协议。

另外,芯片还支持睡眠模式下的自动发送接收模式。在设计过程中,软件灵活采用该模式,将发送数据和接收数据的过程合并成一个过程,不仅降低了RF发送接收过程中的功耗,而且减少了中断产生次数,节省了函数调用和处理的时间,只需要调用一个发送接收函数即可,不需要先调用发送函数,产生一次中断,再调用接收函数,再产生一次中断。



1社保二代卡程序基本流程图

3.2 文件结构及其访问管理

该设计遵守ISO/IEC 7816 标准所定义文件标准。根据标准,可以支持专用文件(DF)和基本文件(EF)两种文件。卡内的文件的逻辑组织结构如图2所示。在根处的DF 称为主文件(MF),该MF 是必备的。其他DF 是任选的,每个应用可以对应一 DDF目录,例如社保应用环境可以对应DDF1Q-PBOC的近距离支付系统环境对应DDF2,在每 DDF目录下,又可以存放同一应用环境下的不同应用,例如社保应用下的社会保险,医疗保险等都分别对应一个ADF。在每 DF目录下,都有对应的密钥文件、工作文件和一些私有文件。当读卡机选择了某一DDF目录,则表示进入了该应用环境,之后的操作都是针对该应用的,其他应用环境下的操作是被屏蔽的。



2 文件结构

每个文件(包括DFEF)都由文件头和文件体组成。文件头中包含文件的标识、大小、访问权限和其它基本信息。所有DF文件头中都包含属性字段,用于指明文件的特殊信息,包括创建权限、解锁权限和应用标识位。应用标识位用于区别不同的应用,如果对于不同的应用,指令头相同,但是处理方法不同,则可通过该标识位进行区别处理。所有EF文件头中也包含属性字段,包括读权限和写权限。另外,在DF文件头中还包含一个生命周期字段,可以通过ACTIVE DF指令进行修改。当DF处于Creation状态时,DFEF的操作都不受权限控制。当DF处于Initialisation状态时,DF操作受权限控制,EF的操作不受权限控制。当DF处于Activated Operation状态时,DFEF的操作都受权限控制。

3.3 安全管理

卡内安全状态描述如下:

卡内仅保存当前层和父层两层的安全状态,每一层的状态由2个字节来描述,每一位对应一个外部认证密钥或PIN,每一位的取值表示对应外部认证密钥或PIN的认证状态(为0表示认证通过;为1表示认证失败)。在DDF下选择ADF时,DDF层的状态成为父层的安全状态。ADF层的状态成为当前层的安全状态。

系统支持通过外部认证(EXTERNAL AUTHENTICATE)指令或校验PIN指令(VERIFY)获得对卡内数据对象的访问权限。系统在每一个DF下(包括MF) 多支持对15个外部认证密钥和15PIN进行鉴权。

每个数据对象的安全属性可以支持2个安全条件的任意组合,可以是KEYPIN2个安全条件可以是“与”和“或”关系,可以是当前DF下的或父层DF下的,索引号可以是从01-FF

卡片内可分为3类密钥:

传输密钥 —— 卡片在出厂时固化在卡片内部的一段数据。

主控密钥 —— MF/DF下都有一个主控密钥,这里默认各 外部认证密钥01作为各 的主控密钥。

应用密钥 —— 和应用相关的密钥。

密钥的使用原则是:

1.         创建/删除文件的权限认证,使用本 的主控密钥。如果本 的主控密钥还没有创建,则使用上一 的主控密钥。例如,当前DF下还没有创建主控密钥,则在DF下的所有EF文件的创建和删除受上一 主控密钥权限控制。按此规则一 一 往上找,如果MF下的主控密钥没有创建,就使用卡内的传输密钥。

2.         追加KEY记录时,如果需要线路保护,即计算MAC值,则使用本 的主控密钥。如果本 的主控密钥还没有创建,则使用上一 的主控密钥。例如,追加DF下的主控密钥,因为DF下的主控密钥还没有创建,所以使用上一 主控密钥。一旦创建好了主控密钥,那么后面密钥的追加就使用该DF下的主控密钥。如果MF下的主控密钥没有创建,就使用卡内的传输密钥。

3.         工作EF文件的读写访问权限控制,工作EF文件的线路保护(MAC计算,线路加密)都使用应用密钥。

4.  RSA密钥的追加也使用主控密钥。

4.      小结

目前市场上双界面多应用卡片的需求越来越大,社保二代卡正是这一需求的产物,而双界面CPU芯片无疑是其 选择。因此,双界面智能CPU芯片也将是未来卡芯片的发展趋势。

 

 

              沪ICP备19002321号-1 公安全国联网备案编号 备案编号:31011502008572