电子门禁系统及智能IC卡标准与产品
产品概述
电子门禁系统能够对重要区域人员进出的进行管理管理,是实现物理和环境访问控制的有效手段,目前常见的是以人员拥有非接触式智能IC卡(以下统称智能IC卡)为鉴别实现的。
智能IC卡与电子门禁系统基于对称密码体制实现相互鉴别,密码应用涉及应用系统和密钥管理及发卡系统。
应用系统中由安全模块提供安全保护,其中涉及两种安全模块:门禁卡内的安全模块和门禁读卡器/后台管理系统内的安全模块。
门禁卡内的安全模块用于证明IC卡的身份合法性鉴别,提供计算鉴别码功能。
注:【智能IC卡】本文所称的智能IC卡均为基于国密算法实现的智能CPU卡。智能CPU卡的组成结构为:微处理器单元(CPU)、存储单元(随机存储器RAM、只读存储器ROM、带电可擦除可编程只读存储器EEPROM)、卡与读卡器通信的I/O接口、加密协处理器(基于国密的安全芯片)、随机数发生器等。其中CPU负责整体的加解密操作和访问控制与传输等操作,加密协处理器即安全芯片负责对输入的数据使用国密算法进行加密或解密操作(本文中涉及的安全模块均使用国密SM4对称算法),ROM中固化COS片上操作系统,EEPROM中存放个人信息和发行单位有关信息。
门禁读卡器/后台管理系统内的安全模块用于在鉴别IC卡身份时为读卡器或后台管理系统提供密码服务。
在电子门禁密码应用系统中,根据安全模块的位置分为两种应用方式:安全模块在门禁读卡器中的应用方式和安全模块在后台管理系统中的应用方式。
方式一:安全模块在读卡器中的应用方式。如图二所示:
安全模块在读卡器中,门禁读卡器直接对门禁卡做身份鉴别,根据鉴别结果直接控制执行机构做出反应,随后将身份鉴别信息传输至后台管理系统做备份处理。在智能IC卡应用中智能卡与读卡器之间的鉴别机制分为内部鉴别和外部鉴别。关于鉴别机制的典型工作流程基于对称密码的“挑战—响应”机制(使用APDU应用层数据传输协议)。具体如下:
- 外部鉴别:
外部鉴别指智能IC卡对读卡器的鉴别。
首先读卡器发送读取随机数的指令;智能IC卡产生随机数(Ra)后发送给读卡器;读卡器使用对称密钥(Keyc)加密随机数得到密文(Ra′)后发送给智能IC卡;智能IC卡用预先共享的密钥(Keyc)解密密文与原随机数比较并进行判定。
- 内部鉴别:
内部鉴别指读卡器对智能IC卡的鉴别。
首先读卡器产生随机数(Ra)以内部鉴别的形式发送给智能IC卡;智能IC卡使用预先共享的对称密钥(Keyc)加密随机数得到密文(Ra′)发送给读卡器;读卡器用对应的对称密钥解密密文得到随机数进行对比判定。
方式一中具体身份鉴别过程如图3所示:
门禁读卡器使用安全模块的SM4算法对安全模块内预存的系统根密钥(Keyr)进行分散,得到当前门禁卡对应的卡片密钥,然后使用安全模块的SM4算法和该卡片密钥对门禁卡进行身份鉴别。门禁读卡器上传门禁卡身份鉴别的结果给后台管理系统,后台管理系统进行实时或非实时门禁权限及审计管理。
方式二:安全模块在后台管理系统中的应用方式。如图4所示:
采用方式二的电子门禁系统中,由后台管理系统对卡片进行身份鉴别,并根据鉴别结果控制门禁功能的执行,这种方式适用于门禁读卡器实时在线操作的情况,具体的身份鉴别过程为:读卡器读取门禁卡,卡片将其唯一标识(UID)和特定发行信息(Ci)发送给读卡器;读卡器将随机数(Ra)发给门禁卡,门禁卡使用一卡一密的对称密钥(Keyc)将其加密后把密文(Ra′)发送给读卡器;读卡器将得到的参数(Ra ,Ra′, UID, Ci)统一发送给后台管理系统;后台收到后利用系统根密钥(Keyr)分散得到一卡一密对称密钥(Keyc),然后解密密文或加密随机数对比验证智能IC卡的身份;而后根据IC卡的唯一标识查找黑名单,根据结果判断是否操作执行机构开门,同时后台管理系统利用安全模块生成下一个随机数发送给读卡器以供下一个人员持智能IC卡鉴别身份。