基于SM1算法CPU门禁读卡器设计
2020-07-04姜志宪张伟王福虎
姜志宪 张伟 王福虎
摘 要:针对目前门禁读卡器主要采用Mifare卡技术,而该技术为伪随机数认证、密钥长度过短,导致易被破解。为了解决门禁系统安全性问题,研发一款支持SM1密码算法CPU读卡器,保证数据安全可靠性,满足某些部门对门禁高安全加密应用的需求,能够为门禁系统提供可靠性与安全性方面的保障。
关键词:读卡器;SM1算法;可靠性;安全性
随着社会经济的发展和科技的进步,门禁系统从最初的普通单元门对讲,到可视的单元门对讲,发展到现在的非接触卡式门禁管理系统。并且随着人们对安全意识的提高,人们对居住周边环境的安全性、舒适性和便捷性也提出了越来越高的要求,智能门禁系统作为目前普遍采用的安防设备其性能也需要不断提高,因此作为其核心组件的更高级别的门禁读卡器的设计和应用就显得非常重要[1]。
1 总体设计
国密CPU读卡器主要由PSAM模块、主控芯片、非接接口模块,电平模块四部分构成,主控芯片完成芯片操作系统的所有逻辑功能,是这个产品的核心硬件部件;PSAM模块用来提供产品所需的密码算法和密钥存储功能;非接通讯模块用于与非接触式门禁卡进行数据交互;电平转换模块用于完成信号的转换[2]。读卡器的总体设计框图如图1所示。
智能IC卡和门禁读卡器之间采用SM1密码算法进行身份鉴别和数据加密通讯,智能IC卡和门禁读卡器之间认证由安装在门禁读卡器上的PSAM卡进行运算的。PSAM卡支持国密SM1算法,并可根据密钥长度自动选择算法,其中SM1算法为对称加密,且算法不公开,安全性较高。门禁读卡器获得智能IC卡产生的身份鉴别信息后,将该信息通过PSAM卡模块进行身份鉴别;如果信息合法,则将信息传输给主控模块,并将处理后的信息上传给门禁控制器。
2 硬件设计
硬件主要采用已经经过国家密码管理局审批的SJK1116安全存取模块、晶振和非接接口模块等以及其他简单外围电路。主控芯片STC15W4K48S4完成芯片操作系统的所有逻辑功能,是这个产品的核心硬件部件;PSAM模块用来提供产品所需的密码算法和密钥存储功能;非接通讯模块用于与非接触式门禁卡进行数据交互;RJ45接口用于连接门禁系统控制器,通过网络接口与门禁控制器进行通讯。SJK1116安全存取模块内置真随机数发生器。派瑞门禁系统安全读卡器需要生成或使用真随机数时,SJK1116的真随机数发生器是唯一的随机数来源。
3 软件设计
读卡器完成卡片类型的鉴别,主要借助PSAM卡与智能IC卡完成密码通信功能,这样门禁读卡器就可以和智能IC卡完成身份信息的鉴别,达到读取智能IC卡内部文件内容的目的[3]。最终,安全读卡器将获取的卡片内容上传到门禁控制器。
该读卡器的软件部分主要是对主控芯片进行编程,主要分为寻卡、鉴别及读卡三部分。读卡器上电后进入初始化阶段检测读卡模块,检测通过后读卡器进入正常寻卡状态;读卡器检测到卡后,对CPU卡进行认证鉴别,该鉴别过程主要通過读卡器上的PSAM卡来完成;认证通过后开始读取CPU卡片内容并将卡片内容通过外接通信接口上传到门禁控制器。
4 结语
随着国产算法的推广,越来越多的密码设备开始使用国产密码算法。本文介绍了国密CPU读卡器设计,同时从硬件和软件两个方面论述了该方案的可行性。该设计可以满足相关部门对门禁高安全加密应用的需求,能够为门禁系统提供可靠性与安全性方面的保障,市场前景很广泛。
参考文献:
[1]王海洋.新型非接触式IC卡读卡器设计及其应用[D].广东工业大学,2014.
[2]闫永昭,郑金州.基于国密SM1算法的CPU卡应用[J].现代电子技术,2013,36(15):82-83+87.
[3]王素琴.Mifare1非接触式IC卡的研究与实现[D].北京工业大学,2013.