1. 引言
工业物联网的三个特征是全面感知、可靠传输、智能处理,系统通过网络通信协议协调各模块之间的操作时序,从而实现整个系统的自我感知和判断、自我调节和控制等。而本文提出的方法主要是针对于传输层。可靠传输层保证感知数据在异构网络中的可靠传输,其功能相当于TCP/IP结构中的网络层和传输层,包括信息传输和识别、数据存储、数据压缩和恢复。构成该层的要素包括网络基础设施、通信协议以及通信协议间的协调机制。可靠传输层的安全主要是传统互联网、移动网、专业网、三网融合通信平台等基础性网络的安全,其可能受到的安全威胁有:垃圾数据传播(垃圾邮件、病毒等);假冒攻击、中间人攻击等(存在于所有类型的网络);DDOS攻击(来源于互联网,可扩展到移动和无线网);跨异构网络的攻击(互联网、移动网等互联情况下);新型针对三网融合通信平台的攻击等。
在实际的工业物联网项目应用过程中,通常会采用外部网络与末梢网络栽旬旬的双向认证技术来实现网络与实体之间的互信机制,这部分技术主要在传输层实现,包括安全密码算法(对称和公钥密码)的设休密钥管理、栽点对栽点机密性、端对端机密性、强认证协议、密码算法和密码协议标准化等内容。但是,在现有的技术环境下,双向认证还必须考虑以下两个现实问题:1) 末梢网络资源通常是非常有限的,认证过程中必须充分地认识到这点,因而认证机制所涉及的计算量和通信开销必须尽可能小;2) 对外部网络而言,其连接的末梢网络数量巨大,且结构不尽相同,要在如此复杂的环境下建立一个高效的识别机制,以区分这些网络及其内部栽点,并赋予唯一的身份标识,需要完善的解决方案。
2. 基于共享秘密Hash函数的RFID双向认证协议
在物联网中,RFID技术是一种通过无线电波远距离识别物体和信息传输的技术。RFID技术已经在生活中的多个领域得到了普及并充分的突显出了它的强大的实用价值。但是,由于RFID系统数据传输标签的独特性,想要设计出安全高效的RFID安全认证方案,成为了RFID安全协议研究领域的一大挑战。在工业物联网中,RFID技术引用非常广泛,针对RFID系统不停呈现出来的各式各样的安全与隐私问题,通过总结前人提出来的安全协议的设计理念,提出了一种改进的RFID系统解决方案,并重点介绍了新协议的初始化条件、基本原理和认证流程。通过建立安全性分析模型,分析了新协议是如何解决RFID系统中普遍存在的安全问题 [1] [2] [3] 。
在工业物联网中,实体身份识别和认证技术会利用到RFID射频识别和双向认证技术。而本文中提出的新协议就是针对于RFID技术的安全缺陷和实现实体和网络之间互信机制的双向认证协议。
2.1. 安全认证协议的设计
通过总结前人提出来的安全协议的设计理念,提出了一种改进的RFID系统解决方案,并重点介绍了新协议的初始化条件、基本原理和认证流程。通过建立安全性分析模型,分析了新协议是如何解决RFID系统中普遍存在的安全问题 [4] [5] [6] [7] 。
2.1.1. 初始条件与设计原理
数据传输标签存储ID、S和H(ID||S),认证前数据传输标签状态为锁定状态。后台服务器存储所有数据传输标签数值对(ID, S, H(ID||S)),并且在后台服务器中嵌入随机数生成器。其中R是服务器产生的随机数,ID是数据传输标签的标识,S是系统运作前预先设置的秘密值,H是预先定义的哈希函数,Tag表示标签,Reader表示读写器,S和H(ID||S)会随着随机数的不同而不断更新。不考虑协议中设计的Hash函数本身的缺陷 [8] [9] 。
改进的认证方案设计原理见图1所示。
2.1.2. 认证流程
安全协议认证流程如下:
1) 后台数据库将生成的R响应给RFID读取器。
2) RFID读取器向数据传输标签发出Query认证请求。
3) 数据传输标签依据H函数计算H(ID||R||S),然后将运算结果和H(ID||S)通过RFID读取器响应给后台服务器。
4) 后端数据库依据接收到的数值,检索系统文档是否存在一组(IDj, S, H(IDj||S))数据,其中H(IDj||S)与H(ID||S)相同,若相同,则依据该组的IDj和S计算H(IDj||R||S)。然后校验H(IDj||R||S) = H(ID||R||S),如果相等,则数据传输标签认证通过并进行下一步运作,否则数据传输标签认证失败。
5) 后端数据库计算SDB = H(R||S)、H(ID||SDB)和H(IDj||R||SDB),后端数据库使用SDB和H(ID||SDB)替换相应的S和H(ID||S),并通过RFID读取器将H(IDj||R||SDB)转发给数据传输标签。
6) 数据传输标签计算ST = H(R||S)、H(ID||ST)和H(ID||R||ST),并判断H(ID||R||ST)与接收到的数据H(IDj||R||SDB)是否相等,若相等,则RFID读取器认证成功,系统标签使用ST和H(ID||ST)替换相应的S和H(ID||S),否则RFID读取器认证失败。
Figure 1. Security authentication protocol design principles
图1. 安全认证协议的设计原理
2.2. 协议的安全性分析
1) 双向认证。通过后端数据库比较H(IDj||R||S)和H(ID||R||S)是否相等、数据传输标签比较H(ID||R||ST)和H(IDj||R||SDB)是否相等,实现了RFID系统合法身份的双向认证。
2) 向前安全。由于R、数据传输标签秘密值S的可变性和H函数的不可逆性,纵然非法用户取来了H(ID||R||S)和H(ID||S)的值,也无法追溯到系统数据传输标签以前相关的认证响应记录。
3) 防位置跟踪。由于R、数据传输标签秘密值S的可变性、更新的,因此系统Tag每次回答RFID读取器询问的数值H(ID||R||S)和H(ID||S)也是不同的,可以防止非法使用者依据RFID系统Tag的特定响应记录而进行的定位追踪。
4) 防重传攻击。每次的秘密数S是变化的,攻击者即使窃听了合法RFID读取器前一次发送的H(IDj||R||SDB)、合法数据传输标签前一次发送的H(ID||S)和H(ID||R||S),也无法再次模拟出H(IDj||R||SDB)的值或H(ID||S)和H(ID||R||S)的值,有效的防止了重传攻击。
5) 防窃听与非法读取。数据传输标签ID在非安全信道传播时经过Hash函数的加密处理,所以非法用户无法窃听标签的真实ID。
6) 防假冒攻击。由于在每次认证过程完成后,都对数据传输标签共享秘密值S和服务器共享秘密值S进行了更新,攻击者无法伪造秘密值S。系统合法Tag响应的H(ID||S)和H(ID||R||S)与攻击者伪造的数据传输标签响应不同,因此无法通过系统合法RFID读取器认证。系统合法RFID读取器响应的H(IDj||R||SDB)与攻击者伪造的RFID读取器响应不同,因此无法通过系统Tag的合法认证。
7) 不可分辨性。由于认证过程中加入了随机数、秘密值和Hash函数这些元素,使得非法使用者无法通过获取多个合法Tag的响应辨别出某一个系统Tag的响应,也无法通过获取同一个Tag的多次响应辨别出该响应Tag的某一次响应,达到了不可分辨性的安全目标。
8) 拒绝服务。由于后台数据库和标签中的隐私数据只有通过安全认证后才会进行数据更新,假如合法标签正在进行安全认证,在完成之前被停止了,那么此时后台数据库和系统Tag中的数值记录也没有任何更替,可满足下一次或诸多次的认证,达到了抵制拒绝不法服务的安全目标。
2.3. 基于共享秘密Hash函数的RFID双向认证协议的工业物联网
本文提出的新协议,是在典型的安全认证机制基础之上设计出来的,新协议有效地解决了RFID系统的双向认证问题,并且在新协议中加入了Hash函数 [10] 、共享秘密值和随机数这3个元素,加强了新协议的防位置、跟踪、重放攻击、假冒攻击、窃听的抵抗能力。基于前面第三节提出的安全性分析,总体上来说,本文设计的新协议基本上解决了典型的RFID隐私保护机制存在的各种各样的安全问题,具有较好的安全性能 [11] 。针对于工业物联网,新协议主要解决了两个问题。第一个就是双向认证的问题,新协议不但要认证服务器端而且还要认证标签端。第二个就是RFID技术的安全问题,新协议通过利用变化的共享秘密值以及变化的随机数保证了用户每次在识别身份时确保了用户身份唯一性。从而保证了用户的数据安全和隐私。此外其次就是数据在网络传输的安全性,为了解决互联网中通信数据隐私问题,我们需要对传输的数据进行加密,本文采用采用MD5算法 [12] 进行数据加密。
3. 小结
本文介绍了工业物联网的安全风险分析和关键防护技术,并通过总结前人提出来的安全协议的设计理念,提出了一种改进的工业物联网RFID系统解决方案,并重点介绍了新协议的初始化条件、基本原理和认证流程。通过建立安全性分析模型,分析了新协议是如何解决RFID系统中普遍存在的安全问题。在工业物联网中,RFID技术安全与隐私和RFID技术的应用领域是紧密相关的,不同的应用领域关联了不同的RFID安全等级。对于有些领域如工业安全生产管理,控制安全要求较高,那么需要将协议的安全性放在第一位。所以在充分考虑系统设计成本的基础之上,设计出机制简单、安全高效的加密认证算法成为了研究的热点。
NOTES
*第一作者。