APP下载

基于RFID的物联网轻量级安全认证方案

2021-03-07雷璨陈治宇

电子技术与软件工程 2021年24期
关键词:读写器公钥密文

雷璨 陈治宇

(四川省能源投资集团有限责任公司 四川省成都市 610041)

物联网(IOT,Internet of Things)也叫“传感网”,是指物体通过装入各种信息传感设备,比如射频识别(RFID)装置、红外感应器、全球定位系统、激光扫描器或其它方式进行连接,然后与互联网或移动通信网络结合起来最终形成一个巨大的智能网络,通过电脑或手机实现对物体的智能化管理。

随着云计算、大数据、人工智能等技术飞速发展,物联网应用层出不穷,物联网产业发展迅速。窄带物联网技术(NB-IOT)、加强的机器类型通信(eMTC)、远距离无线电技术(LoRa)等低功耗广域(LPWA)技术和应用不断创新突破迅速,物联网产业发展入黄金发展阶段。

据权威机构统计,2020年活跃的物联网设备数量预计将增加到100 亿台,到2025年将增加到220 亿台。全球物联网产业规模2008年500 亿美元,2018年近1510 亿美元。《2018年中国5G 产业与应用发展白皮书》预计,到2025年中国物联网连接数将达到53.8 亿,其中5G 物联网连接数达到39.3 亿[1]。当前我国正在推广智慧城市建设,需要在智慧城建、智能电网、移动通信等领域大量使用物联网设备。

IOT 发展至今,由于承载诸多关系国计民生的关键基础设施和重要信息系统,也成为国家级网络对抗以及黑客组织网络攻击的主要对象。2010年曝光的震网病毒对许多国家的核电站、水电站、电网设施等工业设施造成严重破坏;2016年Mirai 僵尸网络通过控制物联网设施实施分布式拒绝服务攻击(DDoS)造成DNS 服务关闭,造成美国东部大面积断网[2]。据Gartner 统计数据,2020年全球企业在物联网安全方面的损失达到15 亿美元[3]。

有鉴于此,IOT 的网络安全防护成为研究热点。IOT 的安全接入认证是确保安全的网络关口。物联网认证机制的安全目标是认证数据发送者身份信息的真实性,确保认证信息的机密性。IOT 大多应用于工业场景下的强电磁干扰、高温、高压等恶劣环境中,计算和存储能力较弱,无法采用基于生物特征和“用户名+口令”等技术架构的身份认证[4]。

因此,面向IOT 的身份认证协议需要构建轻量级认证架构,且实现双向认证、消息完整性与抗抵赖性、匿名性与抗追踪性、前向保密性等要求。物联网结构如图1所示。

1 物联网安全认证技术路线

从逻辑架构角度,IOT 可分为感知层、网络层和应用层。如图1所示。

图1:物联网结构

其中,感知层包括传感器节点、终端节点、网关节点;网络层包括无线网络、专有网络和有线网络,用于承载平台与终端设备之间的交互;应用层则包括各类应用程序。

从网络安全风险角度,感知层的风险主要有终端的物理安全、网络通信及结构安全、数据泄露、安全漏洞等,常见攻击有:侧信道攻击、女巫攻击、Dos 攻击;网络层的风险主要表现为无线数据的传输链路安全、非授权接入和访问网络等方面,常见攻击包括:网络监听、中间人攻击、路由攻击;应用层是物联网与用户的接口,通过物联网应用层协议(COAP、MQTT、XMPP 等)为用户提供业务应用服务,常见的攻击包括:身份伪造攻击、注入攻击、重放攻击。

由于IOT 中的设备存在计算能力有限、存储空间小、更换操作不方便等缺点,使得传统的“用户名+密码”、USBKey 双因子认证或者是生物特征等认证手段无法在IOT 中使用。IOT 设备易被攻击者利用,实施中间人攻击。

根据IOT 系统中认证对象的不同、将认证协议分为用户与设备认证、设备与服务器认证、设备与设备认证。IOT 认证协议分类如表1所示。

表 1:物联网认证分类

表 2:符号及其注释

(1)在用户与设备认证场景中,用户通过输入“用户名+密码”或采用生物特征认证方式,连接网关访问物联网终端,认证协议主要为了确保用户身份可信。

(2)在设备与服务器认证场景中,RFID 标签和RFID 读写器之间的信道是开放的,需要通过认证协议实现轻量级认证和隐私保护。

(3)在设备与设备的认证场景中,智能家居中设备间的相互认证高度依赖物联网网关,网关极易成为认证的性能瓶颈;车联网中移动认证时容易造成隐私泄露。

从技术发展路线看,物联网认证协议一般采用基于对称密码体制的方案和基于公钥密码体制的方案。在实际应用中,对称密码体制用于通信加密,公钥密码体制可用于身份认证,需要考虑硬件资源、计算能力和加解密效率综合考虑选用具体密码方案[5]。

此外,基于传统密码体制的方案需要将公钥和私钥保存于物联网节点设备。由于物联网中节点设备资源受限,难以实现自我保护,攻击者可通过物理手段捕获开放环境中的节点设备,从其存储介质中提取私钥。因此,从安全角度需要为这些节点设备配置更多安全防护措施,导致部署成本过大,无法在工程中大范围应用。

2 基于RFID的轻量级IOT安全认证方案

2.1 研究现状及存在的问题

RFID 是一种非接触式自动识别技术,可广泛应用于智慧城市、智能城建等工业物联网环境,可以快速、实时地采集和处理相关对象的信息。

RFID 系统由RFID 标签、RFID 读写器和服务器组成,RFID系统架构如图2所示。

图2:RFID 系统架构

在RFID 工作机制中,标签存储着设备的信息,附着在设备上;RFID 读写器通过天线接收标签传递的信息,并将信息发送到后端服务器;RFID 读写器和服务器之间的通信通常为有线网络,但标签与读写器之间使用开放的无线电波通信,存在着安全隐患。

从安全角度看,RFID 体系物联网认证机制主要遇到的安全威胁有[5]:

2.1.1 物理攻击

攻击者恶意损毁标签,或者发射电磁来干扰标签与RFID 读写器之间的通信信号。

2.1.2 RFID 标签伪造

攻击者利用空白的RFID 标签伪造为合法的电子标签,或者直接对现有的合法标签信息进行修改,从而实施中间人攻击。

2.1.3 RFID 嗅探

由于目前RFID 认证均是由标签发起,由后台服务器进行单向认证,故可以用非法的RFID 读写器读取RFID 标签的隐私信息,从而实施中间人攻击。

2.1.4 重放攻击

攻击者通过截获RFID 标签与RFID 读写器之间的交互信息,同时记录下标签与读写器之间的通信序列,将截获的消息重传给读写器或者服务器端,从而达到伪装合法标签或服务器的目的。

鉴于RFID 技术在物联网体系中的重要地位,RFID 系统环境的安全性问题也逐渐成为了学术界关注的重点。文献[6]提出了一种具有缓存功能的RFID 认证协议。RFID 读写中存储着访问密钥,这可以利用读写器的存储资源进行密码运算,提高认证效率[6];文献[7]提出了基于云计算的认证方案,该协议充分利用云计算的优势,利用云端的计算能力完成加密和认证,保证了系统的安全性[7]。

2.2 解决方案

本方案的思路是借助公钥密码体制实现RFID 标签和后台服务器之间的双向认证。利用时间戳和随机数来更新认证的信息,防止前向攻击和重放攻击。公钥密码算法选用轻量化的ECC(椭圆曲线算法)。

在ECC 算法加解密过程中,椭圆曲线上的点群中的标量乘运算所消耗的时间极大影响了整体ECC 的效率。因此,针对ECC 算法的轻量级改造,主要采用的是标量乘运算过程中的优化。现有的相关研究工作主要有两种思路:第一种是将整数基于某种数学形式展开表示,通过控制展开式中非零元素的个数,从而使得点加和倍点运算次数大幅降低;第二种是通过预计算省去标量乘计算过程中的复杂度。

本方案选用文献[8]提出的基于新双基的椭圆曲线标量乘算法,减少了整数双基链展开式的冗余度,简化了标量乘运算的计算复杂度[8]。符号及其注释如表2所示。

初始化阶段:

服务器利用ECC 算法产生公钥Key(DB_PUB)和私钥Key(DB_PRI),并将公钥分发至RFID 标签中进行存储。

注册阶段:

(1)RFID 标签将自己的SID 作为注册请求信息发送给RFID读写器,RFID 读写器接收到注册请求后,获取当前系统时间作为时间戳Ti-1,并存储时间戳和SID 信息,将该SID|| Hash(Ti-1)发给服务器。

(2)服务器接受到SID 之后,查看已注册列表,判断标签是否已注册;若没有则保存该SID。利用私钥对该字符串加密, 即txtEncry=EccE{Key(DB_PRI), Hash(Ti-1)}, 存储SID 和Hash(Ti-1),并将该加密信息txtEncry 发送给RFID 读写器,读写器将密文发送给RFID 标签。

(3)RFID 标签用公钥解密,执行操作EccD{ Key(DB_PUB),txtEncry},获取Hash(Ti-1),并将Hash(Ti-1)存储。

认证阶段:

(1)RFID 标签产生随机数Random(Tag),并组合成字符串SID||Random(Tag), 执行操作Hash(SID||Random(Tag)),并将该哈希值进行存储,用服务器的公钥加密字符串SID||Random(Tag)||Hash(Ti-1), 即clientEncry=EccE{Key(DB_PUB)),SID||Random(Tag)|| Hash(Ti-1)},并将密文clientEncry 发送给RFID 读写器。

(2)RFID 读写器获取密文clientEncry,并获取系统时间作为时间戳Ti,并存储时间戳,执行clientEncry||Hash(Ti),将该密文clientEncry||Hash(Ti)发送给服务器。

(3)服务器执行字符串操作,分别获取密文clientEncry 和Hash(Ti)。利用私钥解密密文clientEncry,获取SID、Random(Tag)和Hash(Ti),通过查找SID,比对获取Hash(Ti)与存储的数据是否一致,若一致则认定RFID 标签的合法身份。同时验证比对Hash(Ti)与Hash(Ti-1)是否一致,若一致,则认定为重放攻击。

(4)服务器产生随机数Random(DB),执行Random(DB)||Random(Tag)操作,并用私钥加密发送给RFID 读写器,即severEncry=EccE{Key(DB_PRI),Random(DB)||Random(Tag)},RFID读写器转发密文severEncry 给RFID 标签。

(5)RFID 标签获取密文severEncry,利用公钥解密,获得Random(Tag),并执行Hash(SID||Random(Tag)),比较与存储的数据是否一致,从而验证服务器的身份。至此,完成双向认证。Random(DB)|| Random(Tag)则可以作为双方协商的加密密钥。

2.3 方案安全性分析

2.3.1 双向认证

本方案实现RFID 标签和服务器之间的双向认证,杜绝中间人仿冒攻击风险。

2.3.2 信息的机密性

在双向认证过程中,信息均是加密传输,且使用ECC 算法,加密强度高。RFID 标签存储的是公钥和密文,即使遭受攻击也无数据泄露的风险。

2.3.3 前向攻击

本方案中引入了Hash 函数,作为认证因子的时间戳是经过Hash计算后存储的,标签中不持有之前的认证信息和作废的时间戳,因此,本方案具有前向攻击安全性。

2.3.4 后向攻击

由于认证过程中引入随机数,攻击者无法通过计算获取认证口令,因此,本方案具有后向攻击安全性。

2.3.5 防重放攻击

由于标签产生随机数均不一致,同时认证信息中引入了时间戳,因此可以抵御重放攻击。

此外,本方案中大量计算和检索工作均在服务器侧完成,极大地减轻RFID 标签侧的计算压力。

3 小结

物联网是我国智慧城市发展战略的重要支撑,目前已被用于智能交通、智能城建等众多领域。 随着网络安全法、数据安全法和密码法的颁布实施,物联网的安全问题越来越受到重视。

现有的研究方向都在设计适用于物联网中的轻量级密码算法和认证机制,然而过于“轻量级”的加密体制则会导致安全强度降低,因此,需要在轻量级和安全强度之间找到平衡点。

随着物联网设备存储和计算能力逐步改善,针对物联网的APT攻击愈演愈烈,基于成熟的密码体制的安全认证方法将是抵御有组织网络攻击的最后保障。后续的研究工作将聚焦本方案的工程化实现,探索适用于不同场景中的解决方案。

猜你喜欢

读写器公钥密文
一种针对格基后量子密码的能量侧信道分析框架
一种支持动态更新的可排名密文搜索方案
基于模糊数学的通信网络密文信息差错恢复
一种基于混沌的公钥加密方案
HES:一种更小公钥的同态加密算法
SM2椭圆曲线公钥密码算法综述
云存储中支持词频和用户喜好的密文模糊检索
基于视频抓拍读写器的高速公路防倒卡研究
基于格的公钥加密与证书基加密
基于随机时隙的RFID读写器防冲突方法