1.安全攻击与安全风险
1.安全攻击
针对RFID主要的安全攻击可以简单的分为主动攻击和被动攻击两种类型。主动攻击包括从获得的射频标签实体,通过物理手段在实验室环境中去除芯片封装,使用微探针获取敏感信号,从而进行射频标签重构的复杂攻击;通过软件,利用微处理器的通用接口,通过扫描射频标签和响应读写器的探询,寻求安全协议和加密算法存在的漏洞,进而删除射频标签内容或篡改可重写射频标签内容;通过干扰广播、阻塞信道或其他手段,构建异常的应用环境,使合法处理器发生故障,进行拒绝服务攻击等。
被动攻击主要包括通过采用窃听技术,分析微处理器正常工作过程中产生的各种电磁特征,来获得射频标签和读写器之间或其他RFID通信设备之问的通信数据;通过读写器等窃听设备,跟踪商品流通动态等。
应对主动攻击的重要技术是认证技术,应对被动攻击的主要技术手段是加密。
2.安全风险
RFID当初的应用设计是完全开放的,是出现安全隐患的根本原因。安全隐患会出现在射频标签、网络和数据等各个环节。
RFID系统中最主要的安全风险是保密性。
另一个安全风险是位置保密或跟踪。
拒绝服务和伪造标签是常见的安全风险。
另外,增加供应链的透明度是RFID的主要优势之一,但这给数据安全带来了新的隐患。
2.RFID系统的安全需求
机密性
完整性
可用性
真实性
隐私性
3.密码学基础
1. 密码学的基本概念

图1:加密模型
加密和解密变换的关系式为

密码学包含密码编码学和密码分析学。密码编码学研究密码体制的设计,破译密码的技术称为密码分析。密码学的一条基本原则是必须假定破译者知道通用的加密方法,也就是说, 加密算法E是公开的,因此真正的秘密就在于密钥。
2. 对称密码体制
1)概述
对称密码体制是一种常规密钥密码体制,也称为单钥密码体制或私钥密码体制。在对称密码体制中,加密密钥和解密密钥相同。
从得到的密文序列的结构来划分,有序列密码和分组密码两种不同的密码体制。序列密码是将明文m看成连续的比特流(或字符流)m1m2…,并且用密钥序列K=K1K2…中的第i个元素Ki对明文中的mi进行加密,因此也称为流密码。
分组密码是将明文划分为固定的n比特的数据组,然后以组为单位,在密钥的控制下进行一系列的线性或非线性的变化而得到密文。分组密码的一个重要优点是不需要同步。对称密码体制算法的优点是计算开销小、速度快,是目前用于信息加密的主要算法。
2)分组密码
分组密码中具有代表性的是数据加密标准(Data Encryption Standard,DES)和高级加密标准(Advanced Encryption Standard,AES)。
①DES
DES由IBM公司于1975年研究成功并发表,1977年被美国定为联邦信息标准。DES的分组长度为64位,密钥长度为56位,将64位的明文经加密算法变换为64位的密文。
64位的明文m经初始置换IP后的64位输出分别记为左半边32位L0和右半边32位R0,然后经过16次迭代。如果用mi表示第i次的迭代结果,同时令Li和Ri分别代表m的左半边和右半边。


图2:DES加密算法

图3:函数的变换过程
②AES
AES是新的加密标准,是分组加密算法,分组长度为128位,密钥长度有128位、192位、256位三种,分别称为AES-128,AES-192,AES-256。DES中没有给出S盒是如何设计的,而AES的S盒是公开的。因此,AES在电子商务等众多方面将会获得更广泛的应用。
3)序列密码
序列密码也称为流密码,由于其计算复杂度低,硬件实现容易,因此在RFID系统中获得了广泛应用。
3.非对称密码体制
非对称密码体制也称为公钥密码体制、双钥密码体制。它的产生主要有两个方面的原因,一个是由于对称密码体制的密钥分配问题;另一个是对数字签名的需求。
1976年,Diffie和Hellman提出了一种全新的加密思想,即公开密钥算法。公钥密码体制在智能卡中获得了较好应用,而在RFID中的应用仍是一个待研究开发的课题。
在这种算法中,每个用户都使用两个密钥:其中加密密钥是公开的,用于其他人向他发送加密报文(用公开的加密密钥和加密算法);解密密钥用于自己对收到的密文进行解密,这是保密的。通常称公开密钥算法中的加密密钥为公开密钥,解密密钥为私人密钥,以区别传统密码学中的秘密密钥。
目前,公开密钥密码体制中最著名的算法称为RSA算法。RSA算法是基于数论的原理,即对一个大数的素数分解很困难。
在智能卡上实现RSA算法,仅凭8位CPU是远远不够的,因此有些智能卡芯片增加了加密协处理器,专门处理大整数的基本运算。
4.RFID中的认证技术
射频识别技术认证技术要解决阅读器与应答器之间的互相认证问题。即应答器应确认阅读器的身份,防止存储数据未被认可地读出或重写;阅读器也应确认应答器的身份,以防止假冒和读入伪造数据。
射频识别技术认证技术要解决阅读器与应答器之间的互相认证问题。即应答器应确认阅读器的身份,防止存储数据未被认可地读出或重写;阅读器也应确认应答器的身份,以防止假冒和读入伪造数据。
1. 相互对称认证
阅读器和应答器之间的互相认证采用国际标准ISO 9798-2的“三次认证”,这是基于共享秘密密钥的用户认证协议的方法。

(1)阅读器发送查询口令的命令给应答器,应答器作为应答响应传送所产生的一个随机数RB给阅读器。
(2)阅读器产生一个随机数RA,使用共享的密钥K和共同的加密算法EK,算出加密数据块TOKEN AB,并将TOKEN AB传送给应答器。
TOKEN AB=EK(RA,RB)
(3)应答器接收到TOKEN AB后进行解密,将取得的随机数 与原先发送的随机数RB进行比较,若一致则阅读器获得了应答器的确认。
(4)应答器发送另一个加密数据块TOKEN BA给阅读器,TOKEN BA为
TOKEN BA=EK(RB1,RA)
RA为从阅读器传来的随机数,RB1为随机数。
(5)阅读器接收到TOKEN BA并对其解密,若收到的随机数与原先发送的随机数RA相同,则完成了阅读器对应答器的认证。
2.利用导出密钥的相互对称认证
相互对称的认证方法有一个缺点,即所有属于同一应用的标签都是用相同的密钥K保护的。这种情况对于具有大量标签(如在公共短途交通网的票务系统中使用者数百万个标签)的应用来说,是一种潜在的危险,由于这些标签以不可控的数量分布在众多使用者的手中,而且廉价并容易得到,因而必须考虑标签的密钥被破解的可能。如果发生了这种情况,则整个过程将被完全公开,且控制改变密钥的代价会非常大,实现起来也会很困难。
为此,需要对相互对称认证过程进行改变,主要方法是,每个射频标签使用不同的密钥来保护,并在标签生产过程中读取其序列号,使用加密算法和主控密钥KM计算(导出)密钥KX,从而完成了标签的初始化过程。这样,每个射频标签都拥有了一个与自己识别号和主控密钥KM相关的专用密钥KX。在读写器端获取标签ID后也同样可以计算出专用密钥KX。
5.RFID技术应用中的安全问题与安全策略
RFID系统的安全问题,由三个不同层次的安全保障环节组成,一是电子标签制造的安全技术;二是芯片的物理安全技术,如防非法读写、防软件跟踪等;三是卡的通信安全技术,如加密算法等。这三个方面共同形成电子标签的安全体系,保证电子标签从生产到使用的安全。在实际使用中,三者之间却没有那么明显的界限,如带DES、RSA协处理器的电子标签利用软硬件实现系统的安全保障体系。

