城市轨道交通门禁系统加密方案研究
2019-03-15张化军何治达
张化军 何治达 邹 洋
(1. 郑州地铁集团有限公司, 450018, 郑州; 2. 中国船舶重工集团公司第七一三研究所,450015, 郑州//第一作者,工程师)
门禁系统是为确保城市轨道交通正常、安全运营,保证授权人员在受控情况下方便地进入设备管理区域,防止非授权人员进入限制区所设立的系统。它一直扮演着保障城市轨道交通安全的重要角色。随着门禁系统应用领域的扩展和深入,目前,城市轨道交通门禁系统所采用的Mifare 1卡难以满足更高的安全性和更复杂的多应用需求,尤其是在Mifare 1卡的安全被破解的情况下,用户信息的安全性得不到保障,卡片几乎都可以被完整复制,限制了目前一卡通的发展。随着集成技术和加密技术的发展,近几年CPU(中央处理器)卡技术逐渐成熟,交易过程的信息安全性和可定制开发的灵活性不断提升,因此CPU 卡技术正成为非接触IC(集成电路)卡技术的重要发展趋势。
1 城市轨道交通门禁系统卡
1.1 门禁系统卡类型
目前,城市轨道交通门禁系统应用的非接触式IC卡主要包括Mifare 1卡、DESfire卡和CPU卡,其特点见表1。
较为流行的非接触式IC卡为Mifare 1卡和CPU卡;DESfire卡为准CPU卡,属于Mifare 1卡与CPU卡之间的过渡产品。以下主要介绍CPU卡与Mifare 1卡的相关技术。
1.2 门禁系统卡的通信原理及特点
Mifare 1卡、CPU卡的通信原理以及CPU卡的双向认证原理如图1~3所示。由Mifare 1卡和CPU卡的通信原理可知,Mifare 1卡的密码进行明文传输,一旦被窃取,卡片即可被复制,因此此卡采用密码认证的方式,存在一定的安全隐患;CPU卡采用随机码加密结果认证方式,即同一张CPU卡每次刷卡的认证密码均不相同,只要密钥系统不泄露,卡被窃取后通信数据依然不会被破解。
1.3 卡结构对比
1.3.1 卡结构
CPU卡芯片产品支持ISO 14443-A协议,CPU指令兼容通用8051指令和内置硬件DES(数据加密标准)协处理器,数据存储器为8 kB的EEPROM(带电可擦写可编程只读处理器)。该芯片符合中国人民银行颁布的《中国金融集成电路(IC)卡规范(2.0)》(以下简为“PBOC 2.0”)中对电子存折/电子钱包的要求,也符合CJ/T 306—2009《建设事业非接触式CPU卡芯片技术要求》的规定。COS系统则同时支持上述两规范的要求,且具有较好的安全性。
Mifare卡是NXP公司生产的一系列遵守ISO 14443A标准的射频卡。该卡包括0~15共16个扇区,并且每个扇区都有独立的密码,每个扇区配备了0~3共4个块,16个扇区的64个块按绝对地址编号为0~63,每个块可以保存16 B的内容,16个扇区共可保存1 024 B内容。每个扇区的第4段用来保存KeyA、KeyB和控制位(门禁系统控制读写权限)。0扇区0块是特殊的数据块,用于存放制造商代码,包括芯片序列号,此块仅具只读功能。
表1 常用非接触式IC卡特点
图1 Mifare 1卡通信原理
图2 CPU卡通信原理
图3 CPU卡双向认证原理
1.3.2 软件
非接触CPU卡拥有独立的CPU 处理器和芯片操作系统,所以可以更灵活地支持各种不同的应用需求,以及更安全地设计交易流程。但同时,非接触CPU卡的系统显得更为复杂,需要进行诸如密钥管理、交易流程、PSAM(销售点终端安全存取模块)卡以及卡片个性化等方面的系统改造。
Mifare 1通常被认为是一种制造智能卡的技术,这是因为Mifare 1卡兼具读写功能。事实上,Mifare 1卡仅具记忆功能,必须搭配处理器卡才能达到读写功能,且卡片内不存在系统软件。
1.3.3 对比
非接触CPU 卡可以通过内外部认证的机制,如定义的电子钱包的交易流程,更加可靠地满足不同的业务流程对安全和密钥管理的需求。
CPU卡支持多种密钥分类,对电子钱包圈存可以使用圈存密钥,同时可以使用消费密钥进行消费,使用TAC(交易认证码)密钥进行清算,使用卡片应用维护密钥进行数据的更新。卡片个人化过程中,可以使用卡片传输密钥、卡片主控密钥及应用主控密钥等,真正做到一钥一用。
通过由CPU卡发送至SAM卡的MAC(报文鉴别代码)1、由SAM卡发送至CPU卡的MAC 2, 以及由CPU卡返回的TAC,可以实现数据传输验证的计算。而MAC 1、MAC 2 和TAC 在同一张CPU 卡每次传输的过程中都是不同的,因此无法使用空中接收的办法来破解CPU 卡的密钥。
CPU卡与Mifare 1卡对比详见表2和表3。
表2 CPU卡与Mifare 1卡的参数对比表
表3 CPU卡与Mifare 1卡的加密安全性对比表
2 门禁系统CPU卡加密方案
2.1 CPU卡加密方法
2.1.1 CPU卡规划情况
CPU卡主要包括主控制区、一卡通专用文件区(用于员工乘坐地铁)、预留文件区和卡预留空间,如图4所示。
图4 CPU卡规划和当前使用情况
2.1.2 门禁系统对于CPU卡的使用需求建议
CPU卡的一卡通业务应用均授权了密钥文件,若车站门禁系统使用既有的密钥文件,不同业务间的信息交互存在安全风险,也不便于不同专业间的用卡管理,因此,车站门禁系统应使用CPU卡的预留应用ADF 3(1003)空间。
2.2 门禁系统加密工作
(1) 首先在CPU卡中找到需要操作的文件,通过文件标志表进行标记,并利用CPU卡预留区域空间,单独设置门禁系统的车站级应用,同时建立目录文件。
(2) 加密方式按商密3DES或国密标准,采用对称密钥加密法。
(3) 为保证既有线路、在建线路和新建线路对于门禁系统的卡授权统一管理,轨道公司需建立密钥文件和业务应用文件标准。
(4) 发卡中心负责CPU员工卡的重新授权工作,以激活预留区域门禁系统建立的密钥文件和业务应用文件。
(5) 由门禁厂家根据已确定的密钥文件和业务应用文件标准,根据读卡协议进行CPU读卡器的二次程序开发。
2.3 既有门禁系统改造方案
既有门禁系统的改进方案如表4所示。
表4 既有门禁系统的改造方案
3 结语
门禁系统作为城市轨道交通中最重要的安全系统,更新本系统所采用的技术已迫在眉睫,这样才能保证设备和人员安全,从而进一步保障城市轨道交通的运营安全。采用CPU卡技术运用加密算法,可以保证认证信息不被解析,从而保障门禁系统安全使用;可以使用CPU卡预留区域的空间开发新的应用,扩展门禁系统功能。门禁系统采用CPU卡技术运用加密算法的方案将是轨道交通门禁系统新的发展方向。