1、第五章第五章RFID系统数据传输的系统数据传输的安全性安全性一、一、信息安全概述信息安全概述 信息安全主要解决数据保密和认证的问题。数据保密就是采取复杂多样的措施对数据加以保护,防止数据被有意或无意地泄露给无关人员,造成危害。认证分为信息认证和用户认证两个方面:信息认证信息认证是指信息在从发送到接收整个通路中没有被第三者修改和伪造。用户认证用户认证是指用户双方都能证实对方是这次通信的合法用户。由于RFID系统应用领域差异非常大,不同应用对安全性的要求也不同,因此在设计RFID系统的安全方案时,应以经济实用、操作方便为宜。应答器通常都具有较高的物理安全性,体现在下述方面:制造工艺复杂,设备昂贵,
2、因此伪造应答器的成本较高,一般难以实现;在生产制造过程中,对各个环节都予以监控纪录,确保不会出现生产制造过程中的缺失;在发行过程中,采取严格的管理流程;应答器都必须符合标准规范所规定的机械、电气、寿命和抵御各种物理化学危害的能力。对于高度安全的RFID系统,除物理安全性外,还应考虑多层次的安全问题,增强抵御各种攻击的能力。通常攻击的方式分为被动攻击被动攻击和主动攻击主动攻击。截获信息的攻击称为被动攻击,例如试图非法获取应答器中重要数据信息等,应对应对被动攻击的主要技术手段是加密被动攻击的主要技术手段是加密。更改、伪造信息和拒绝用户使用资源的攻击称为主动攻击,应对主动攻击的重要技应对主动攻击的重
3、要技术是认证技术术是认证技术。二、密码学的基本概念二、密码学的基本概念图5.1所示为一个加密模型。欲加密的信息m称为明文,明文经某种加密算法E的作用后转换成密文c,加密算法中的参数称为加密密钥K。密文经解密算法D的变换后恢复为明文,解密算法也有一个密钥K,它和加密密钥可以相同也可以不同。加密和解密变换的关系式为:c=EK(m)m=DK(C)=D K(EK(m)密码学包含密码编码学和密码分析学。密码编码学研究密码体制的设计,破译密码的技术称为密码分析。密码学的一条基本原则是必须假定破译者知道通用的加密方法,也就是说,加密算法E是公开的,因此真正的秘密就在于密钥。密码的使用应注意以下问题:密钥的长
4、度很重要,密钥越长,密钥空间就越大,遍历密钥空间所花的时间就越长,破译的可能性就越小,但密钥越长加密算法的复杂度、所需存储容量和运算时间都会增加,需要更多的资源;密钥应易于更换;密钥通常由一个密钥源提供,当需要向远地传送密钥时,一定要通过另一个安全信道。密码分析所面对的主要情况是:仅有密文而无明文的破译,称为“只有密文”问题;拥有了一批相匹配的明文和密文,称为“已知明文问题”;能够加密自己所选的一些明文时,称为“选择明文”问题。对于一个密码体制,如果破译者即使能够加密任意数量的明文,也无法破译密文,则这一密码体制称为无条件安全的,或称为理论上是不可破的。在无任何限制的条件下,目前几乎所有实用的
5、密码体制均是可破的。如果一个密码体制中的密码不能被可以使用的计算机资源破译,则这一密码体制称为在计算上是安全的。三、射频识别中的认证技术三、射频识别中的认证技术 射频识别认证技术要解决阅读器与应答器之间的互相认证问题。即应答器应确认阅读器的身份,防止存储数据未被认可地读出或重写;而阅读器也应确认应答器的身份,以防止假冒和读入伪造数据。1三次认证过程三次认证过程 阅读器和应答器之间的互相认证采用国际标准IS0 9798-2的“三次认证过程”,这是基于共享秘密密钥的用户认证协议的方法。认证的过程如图5.11所示,认证步骤如下:(1)阅读器发送查询口令的命令给应答器,应答器作为应答响应传送所产生的一
6、个随机数RB给阅读器。(2)阅读器产生一个随机数RA,使用共享的密钥K和共同的加密算法EK,算出加密数据块TOKEN AB,并将TOKEN AB传送给应答器。TOKEN AB=EK(RA,RB)(3)应答器接收到TOKEN AB后,进行解密,将取得的随机数RB与原先发送的随机数RB进行比较,若一致则阅读器获得了应答器的确认。(4)应答器发送另一个加密数据块TOKEN BA给阅读器,TOKEN BA为:TOKEN BA=EK(RB1,RA)式中RA为从阅读器传来的随机数,RB1为随机数。(5)阅读器接收到TOKEN BA并对其解密,若收到的随机数RA与原先发送的随机数RA相同,则完成了阅读器对应
7、答器的认证。2利用识别号的认证方法利用识别号的认证方法 上面介绍的认证方法是对同一应用的应答器都用相同的密钥K来认证,这在安全方面具有潜在的危险。如果每个应答器都能有不同的密钥,则安全性会有很大的改善。由于应答器都有自己唯一的识别号,因而可用主控密钥Km对识别号实施加密算法而获得导出密钥Kt,并用其初始化应答器,则Kt就成为该应答器的专有密钥。专有密钥与主控密钥、识别号相关,不同应答器的专有密钥不同。在认证时,阅读器首先获取应答器的识别号,在阅读器中利用主控密钥Km 识别号和指定算法获得该应答器的专有密钥(即导出密钥)Kt 。以后的认证过程同前面介绍的三次认证过程,但所用的密钥为Kt。四、密钥
8、管理四、密钥管理 1应答器中的密钥应答器中的密钥 为了阻止对应答器的未经认可的访问,采用了各种方法。最简单的方法是口令的匹配检查,应答器将收到的口令与存储的基准口令比较,如果一致就允许访问数据存储器。更为安全的措施还需要阅读器和应答器之间的认证。具有密钥的应答器除了数据存储区外总包含有存储密钥的附加存储区,出于安全考虑,密钥在生产中写入密钥存储器,它不能被读出。在应答器中,密钥可能会不止一个,按其功能可分为分级密钥和存储区分页密钥。(1)分级密钥分级密钥 分级密钥是指应答器中存有两个或两个以上具有不同等级访问权限的密钥。例如,密钥A仅可读取存储区中的数据,而密钥B对数据区可以读、写。如果阅读器
9、A只有密钥A,则在认证后它仅可读取应答器中的数据,但不能写入。而阅读器B如果具有密钥B,则认证后可以对存储区进行读、写。分级密钥可用于很多场合。例如,在城市公交中,公交车上的阅读器仅具有付款的减值功能,而发售处的阅读器可具有升值(充值)功能。(2)存储区分页密钥存储区分页密钥 在很多应用中需要将应答器的存储区分页,即将存储区分为若干独立的段,不同的段用以存储不同的应用数据,如身份信息、公交卡和停车证中的信息。在这些应用中,各个分页的访问,都需要用该分页的密钥认证后才能进行,即各个分页都用单独的密钥保护。采用分页密钥方式时,应答器一般应有较大的存储区。此外,段内空间的大小是一个必须仔细考虑的问题
10、。固定大小的分页空间,往往利用率不高,会浪费一些宝贵的资源;采用可变长分页空间的方法可以提高利用率,但在采用状态机的应答器中较难实现,因而也很少采用。2密钥的分层管理结构密钥的分层管理结构 为了保证可靠的总体安全性,对于密钥采用分层管理,如图5.12所示。初级密钥用来保护数据,即对数据进行加密和解密;二级密钥是用于加密保护初级密钥的密钥;主密钥则用于保护二级密钥。这种方法对系统的所有秘密的保护转化为对主密钥的保护。表5.4所示为各层密钥的名称和加密对象。一个系统通常可视其对安全性的要求来选择所需的密钥层级。3密码装置密码装置在密钥的使用中,密钥的明码只允许出现在特定的保护区,这一保护区称为密码装置密码装置。密码装置中含有一个密码算法和供少量参数和密钥使用的寄存器,外界只能通过有限的几个严加保护不受侵犯的接口对它进行访问。这些接口接受处理请求、密钥和数据参数,并根据请求和输入的数据进行运算,然后产生输出。密码装置通过本身提供的指令向外界提供服务。密码装置的组成如图5.13所示。