CN116405219B - 一种保障固件安全的多因子物联网设备群组认证方法 - Google Patents
一种保障固件安全的多因子物联网设备群组认证方法Info
- Publication number
- CN116405219B CN116405219B CN202310311735.5A CN202310311735A CN116405219B CN 116405219 B CN116405219 B CN 116405219B CN 202310311735 A CN202310311735 A CN 202310311735A CN 116405219 B CN116405219 B CN 116405219B
- Authority
- CN
- China
- Prior art keywords
- server
- authentication
- gateway
- equipment
- firmware
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
- H04L9/3234—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving additional secure or trusted devices, e.g. TPM, smartcard, USB or software token
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/08—Network architectures or network communication protocols for network security for authentication of entities
- H04L63/0853—Network architectures or network communication protocols for network security for authentication of entities using an additional device, e.g. smartcard, SIM or a different communication terminal
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/06—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
- H04L9/0643—Hash functions, e.g. MD5, SHA, HMAC or f9 MAC
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0816—Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
- H04L9/0838—Key agreement, i.e. key establishment technique in which a shared key is derived by parties as a function of information contributed by, or associated with, each of these
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0861—Generation of secret information including derivation or calculation of cryptographic keys or passwords
- H04L9/0869—Generation of secret information including derivation or calculation of cryptographic keys or passwords involving random numbers or seeds
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Hardware Design (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Power Engineering (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明涉及一种保障固件安全的多因子物联网设备群组认证方法,属于物联网领域。该方法适用于智慧交通等的综合应用场景,能够实现群组物联网设备与服务器基于密钥、PUF和设备固件完整性的相互认证和密钥协商。方法包括初始化、群组设备认证和设备间通信协商三个阶段,初始化主要完成设备、网关和服务器之间对认证因子的协商与存储,群组设备认证则是多设备网关帮助下完成与服务器的多因子认证与密钥协商;设备间相互通信则是双方设备在网关帮助下完成密钥协商。方法充分考虑了物联网设备资源和性能受限的情况,其涉及到的计算均采用计算成本较低的哈希和异或操作,在保证安全性的同时提升了群组设备在认证过程中的计算效率。
Description
技术领域
本发明属于物联网领域,涉及一种保障固件安全的多因子物联网设备群组认证方法。
背景技术
联网能够通过传感器、移动通信技术等将任何需要连接的物体和个人相互连接、信息共享,同时借助人工智能、云计算等技术实现智能认知与决策,物联网系统按照功能和特征可分为感知层、传输层次和应用层。随着物联网与移动通信技术的不断发展,物联网设备的数量与日俱增。物联网系统的网络模型不断更新迭代,主要表现在以下两个方面:随着网络规模的不断扩大,物联网设备的接入数量不断增加,设备和数据呈现海量趋势;面向更多综合复杂应用场景,如智慧交通、智慧城市等,物联网设备的类型与功能不断增多,网络结构呈现复杂异构趋势。
物联网设备通常具有算力低、体积小、功耗低等特点,且常常被布置在公开场合,长时间无人员维护,容易受到假冒攻击和设备篡改攻击。例如,攻击者可以使用旁路攻击等手段获得设备的隐私;可以使用克隆手段假冒合法设备进而获得物联网系统的敏感信息;甚至通过物理或网络手段篡改物联网设备固件或植入恶意代码,进而破坏设备的安全性。
同时,随着综合复杂应用场景的不断发展,网络规模和设备形态的不断变化,传统单一设备接入认证的方案不能满足大规模设备接入时的效率需求。因此在设计面向综合应用场景的物联网认证协议时,不仅要考虑协议的安全性需求,同时要满足多设备同时接入认证的效率需求。
发明内容
有鉴于此,本发明的目的在于提供一种保障固件安全的多因子物联网设备群组认证方法。利用对设备PUF和固件完整性的验证保证其物理和软件的安全性。为了使认证方法更加高效,网关在认证中担任聚合器(Aggregator,AG),辅助设备与服务器完成认证。同时,考虑应用场景下物联网设备间的通信需求,提供设备间的相互认证与密钥协商方法。
为达到上述目的,本发明提供如下技术方案:
一种保障固件安全的多因子物联网设备群组认证方法,该方法包括以下三个阶段:
(1)初始化阶段:设备进行初始化时生成对应初始化请求并结合自身身份ID,经由网关后发送给服务器,服务器根据消息,将设备和网关的身份注册到自身数据库,并产生PUF的激励,发送给设备;设备根据激励使用PUF计算得到响应并将其发回给服务器;服务器根据响应信息,利用产生的随机数和主密钥,计算得到对应密钥和伪身份,并将其发送给网关;网关存储对应伪身份和密钥,并转发给设备存储;至此,设备网关和服务器均存储对应的认证信息;
(2)群组设备认证阶段:完成多设备在网关帮助下与服务器基于PUF、固件完整性的多因子相互认证与密钥协商;网关在接收到一定数量的设备认证请求后,将请求消息聚合发送给服务器,服务器返回的认证消息也由网关分发给不同的设备;在群组设备认证阶段,设备首先在注册的伪身份和密钥对中选择一对并计算验证信息发送给网关;网关在接收到一定数量消息或到达等待时间后,将通过验证的设备消息转发给服务器;服务器接收消息后,通过验证信息验证设备的身份,如验证通过则在存储的激励响应对CRPs中选择一个激励信息,而后产生一个随机数,并将其发送给网关;网关收到消息后,产生一个随机数,将其连同收到的消息转发给设备;设备收到消息后,验证网关和服务器的真实性,如不通过则拒绝认证并删除对应信息,而后产生一个随机数,并根据网关发送过来的激励计算对应的PUF响应,而后利用PUF的响应和分区哈希值计算自身的固件完整性值,并将以上信息通过异或哈希等方式加密后发送给网关;网关得到消息后,验证设备的身份,通过后附带上自己产生的随机数发送给服务器;服务器通过查询响应并计算得到设备固件完整性值,而后验证设备的身份,如通过则根据设备、网关和服务器产生的随机数和PUF计算会话密钥,并将认证结果发送给设备;设备得到认证结果,并相应计算得到与服务器的会话密钥,完成与服务器的相互认证与密钥协商;
(3)设备间通信协商阶段:在网关聚合器的帮助下,双方设备完成与网关的认证以及设备间的密钥协商,同时,在网关中间路由对设备透明的情况下,本方案也适用于不同局域网间的设备相互通信的场景;当设备1需要与设备2相互通信时,设备1首先将自身和设备2的伪身份发送给网关;网关接收消息后对设备1的身份进行认证,认证通过后分别从设备1和设备2存储的伪身份密钥对中选择设备1和2的新伪身份和密钥,并计算两个新密钥的异或值K,而后分别向设备1和设备2发送对应新的伪身份和K以及产生的随机数N;设备1和设备2接收到消息后,均首先验证网关的身份,通过验证后,根据伪身份和K计算得到自身密钥和对方密钥以及随机数N,通过双方的新密钥和随机数N计算得到与对方的会话密钥,并向对方发送确认消息,进而完成设备双方会话密钥的协商。
可选的,设备和服务器双方在群组认证阶段完成基于密钥、PUF和设备固件完整性的多因子认证,其中设备根据服务器发来的激励信息Ci通过Ri=PUF(Ci)计算得到响应,并利用模糊提取器减少PUF在实际使用过程中易受环境噪声影响的问题,计算得到(hd,k)=FE.Gen(Ri),从而得到PUF的密钥k,服务器借助此密钥完成对设备PUF的认证。
可选的,服务器在群组设备认证阶段完成了对设备的固件完整性验证,设备首先根据自身固件和分区信息计算得到各个分区的哈希值,而后借助本次认证中使用的PUF密钥k和各分区哈希值作为HMAC的输入进而计算得到固件完整性值F;服务器则根据网关发送过来的设备分区信息结合自身存储的全局分区表以及本次认证使用的PUF密钥k计算得到固件完整性值,通过比较两值对设备的固件完整性进行验证,同时固件完整性值通过作为哈希函数的输入产生的验证消息V反映,服务器计算同样的V与接收的数值比较。
可选的,所述设备固件完整性的验证的具体包括以下两个阶段:
(1)设备部署阶段:网络拥有者根据设备固件大小和功能对设备固件进行分区,分别计算各个分区的哈希值,而后服务器根据网络中所有设备的各个分区的哈希值构建全局分区表,内容包括分区编号和分区对应的哈希值,网关则在认证协议的初始化阶段,根据设备发送的固件信息构建局域网内的设备分区表,内容包括设备的身份ID和设备分区编号的集合;
(2)固件完整性验证阶段:服务器根据网关发送过来的设备分区表,结合自身存储的全局分区表,借助PUF的响应计算得到具体设备的固件完整性值,并与设备发送过来的完整性值比较,对设备的固件完整性进行验证,包含设备固件完整性信息的设备分区表和全局分区表被分别存储在网关和服务器当中,能够保证在网关或服务器被劫持时,单独一方均无法得到正确的设备固件完整性值,无法完成认证过程。
本发明的有益效果在于:
(1)该方法能够提供设备和服务器之间的相互认证和密钥协商,并提供对设备的隐私保护。设备和服务器通过认证方法完成了双方基于PUF和固件完整性的多因子相互认证,同时,双方根据各自产生的随机数和PUF密钥计算得到会话密钥,完成了密钥协商,其密钥之间并无关联和规律,提供了前后向安全保障。与此同时,设备在每次与服务器认证期间,均使用不同的伪身份,且当验证出现问题时,均要删除当前使用的伪身份,保证了设备的隐私安全。
(2)该方法使用PUF和固件完整性对设备进行认证,保证了设备的物理和软件安全。PUF具有不可克隆的特性,且对PUF的修改都会影响到其功能,进而得不到正确的相应,因此该方法能够保护设备的物理安全;同时通过在认证过程中对设备固件完整性的验证保证设备不受固件篡改的威胁,进而提升其软件安全性。
本发明的其他优点、目标和特征在某种程度上将在随后的说明书中进行阐述,并且在某种程度上,基于对下文的考察研究对本领域技术人员而言将是显而易见的,或者可以从本发明的实践中得到教导。本发明的目标和其他优点可以通过下面的说明书来实现和获得。
附图说明
为了使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明作优选的详细描述,其中:
图1为方法适用的系统模型图;
图2为方法的初始化阶段;
图3为方法的群组设备认证阶段;
图4为方法的设备间通信协商阶段。
具体实施方式
以下通过特定的具体实例说明本发明的实施方式,本领域技术人员可由本说明书所揭露的内容轻易地了解本发明的其他优点与功效。本发明还可以通过另外不同的具体实施方式加以实施或应用,本说明书中的各项细节也可以基于不同观点与应用,在没有背离本发明的精神下进行各种修饰或改变。需要说明的是,以下实施例中所提供的图示仅以示意方式说明本发明的基本构想,在不冲突的情况下,以下实施例及实施例中的特征可以相互组合。
其中,附图仅用于示例性说明,表示的仅是示意图,而非实物图,不能理解为对本发明的限制;为了更好地说明本发明的实施例,附图某些部件会有省略、放大或缩小,并不代表实际产品的尺寸;对本领域技术人员来说,附图中某些公知结构及其说明可能省略是可以理解的。
本发明实施例的附图中相同或相似的标号对应相同或相似的部件;在本发明的描述中,需要理解的是,若有术语“上”、“下”、“左”、“右”、“前”、“后”等指示的方位或位置关系为基于附图所示的方位或位置关系,仅是为了便于描述本发明和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此附图中描述位置关系的用语仅用于示例性说明,不能理解为对本发明的限制,对于本领域的普通技术人员而言,可以根据具体情况理解上述术语的具体含义。
本发明是一种适用于复杂物联网应用场景的面向设备的多因子群组认证方法,认证实体包括设备、网关和服务器。参阅图1,不同类型的物联网设备通过网关与服务器相连,网关在认证过程中充当聚集器的作用,负责对设备和服务器发送的消息进行消息聚合和分发,同时辅助设备完成与服务器的相互认证。
所述面向设备的多因子群组认证方法中需要对设备的固件完整性进行验证,验证的具体步骤包括设备部署和完整性校验两个阶段。
在设备部署阶段,服务器首先根据设备固件,按照分区计算每个分区的哈希值。注意这个阶段使用的哈希函数并不是HMAC,而是没有密钥参数的普通哈希,因为HMAC的参数R只有在认证过程中才能确定。服务器在计算过程中首先构建全局分区表,此表由两项组成:1)分区编号,根据分区数目依次增加;2)对应分区的哈希值。其次,当一个设备计算完毕后,根据设备ID构建设备分区表,此表由以下数据项构成:1)设备的唯一ID;2)设备完整固件的分区构成集合,由分区编号组成。添加新设备时,全局分区表根据分区的哈希值,只需要增加不同分区的分区编号与哈希值,而设备分区表按照规则增加对应数据即可。同样,在设备固件更新后,也可参考上述方法对全局分区表和设备分区表进行更新。
在固件完整性校验阶段,我们假设设备固件X分块后为{x1,x2..xi},首先设备通过普通哈希算法计算Y={y1,y2..yi},而后将认证过程使用的PUF响应R和固件哈希值Y作为HMAC的输入计算最终的哈希值Z。服务器在收到设备发来的Z以后,通过查阅设备分区表和全局分区表得到对应的Y′,结合认证中使用的R计算得到对应的Z′。最后,服务器通过比较Z与Z′的值便可验证设备固件的完整性。
所述面向设备的多因子群组认证方法主要包括初始化、群组设备认证和设备间通信协商三个阶段。
初始化阶段主要完成设备、网关和服务器之间对认证因子的协商与存储,包括CRPs、伪身份和设备固件信息等,通常在安全信道下进行。本发明中,包含设备固件完整性信息的两个表格设备分区表(DTB)和全局分区表(GTB)被分别存储在网关和服务器当中。这样做能够保证在网关或服务器被劫持时,单独一方均无法得到正确的设备固件完整性值,无法完成认证过程,进而提升了系统安全性,同时,分开存储还能够减少服务器的部分存储负担。需要说明的是,假设网关在物联网设备初始化之前已经与服务器事先建立了连接,具体步骤如下。
(1)参阅图2所示,物联网设备进行初始化时,选择自身IDi,生成初始化请求消息Req,并将其发送给网关。
(2)网关接收到消息以后,将设备IDi注册到数据库中,选择自身IDAg,将消息{IDi,IDAg,Req}发送给服务器。
(3)服务器接收消息后,注册设备与网关的ID到自身数据库中,随机产生m个PUF的激励C1~Cm,并将其发送给网关。
(4)网关收到服务器发来的激励信息,不做处理,直接转发给对应的设备。
(5)设备收到PUF的激励后,计算m个响应Ri=PUF(Ci),得到自身固件分区信息Fir,将消息{R1~Rm,Fir}发送给网关。
(6)网关接收到消息以后,将PUF的响应R转发给服务器,同时根据设备发来的固件分区信息Fir生成设备分区表DTB,其中记录了设备ID和对应的分区号集合。
(7)服务器收到网关发来的响应后,产生随机数N,并计算伪身份PIDi=h(Ri||N),计算密钥Ki=h(Ri||mk),其中mk为服务器的主密钥,而后按照{PIDi,(Ci,Ri),Ki}方式存储数据。
(8)网关收到消息后,将{PIDi,Ki}与设备ID匹配后存储,并转发消息{PIDi,Ki}。
(9)设备接收消息,并按照{PIDi,Ki}方式存储数据。
群组设备认证阶段主要完成多设备在网关帮助下与服务器完成基于PUF、固件完整性的多因子相互认证与密钥协商。网关在接收到一定数量的设备认证请求后,将请求消息聚合发送给服务器,服务器返回的认证消息也由网关分发给不同的设备,参阅图3所示,具体步骤如下。
(1)当设备需要认证时,首先在自己存储的伪身份与密钥中选择一对{PIDi,Ki},并计算验证信息V0=h(PIDi||Ki),将消息{PIDi,V0}发送给网关。
(2)网关接收到设备发来的认证请求后,首先根据PIDi在自身存储的数据库中查找得到对应Ki,而后计算并验证V0正确性,如错误则终止与此设备认证,并从数据库中删除对应的{PIDi,Ki},正确则继续认证。而后,当网关在限定时间内(避免网关等待设备请求造成阻塞)收集到一定数量的设备认证请求并验证后,将多个设备的{PIDi,V0}经消息聚合后发送给服务器。
(3)服务器接收到网关发送的认证消息后,根据PIDi逐个从数据库中查询得到Ki、Ci并验证V0的正确性。同样,如果验证不通过则终止与设备的认证并从数据库中删除对应的{PIDi,(Ci,Ri),Ki}。如认证通过,产生一个随机数N0,根据每个设备计算Ci'=Ci⊕Ki和N0'=N0⊕Ki,计算验证信息V1=h(Ci||N0||Ki),并将合并后的消息{Ci',N0',V1}发送给网关。
(4)网关接收消息后,根据自身存储的Ki计算得到对应的Ci=Ci'⊕Ki,N0=N0'⊕Ki,而后逐个验证V1的正确性,错误则终止认证并删除对应信息。验证成功后,产生一个随机数N1,计算N1'=N1⊕N0,依据每个设备计算V2=h(V1||N1),并将消息{Ci',N0',N1',V2}发送给对应设备。
(5)设备接收消息后,与网关相似,根据Ki计算得到Ci和N0,而后计算N1=N'1⊕N0,从而验证V2的正确性。如验证错误则终止认证并删除对应信息,验证正确则继续产生随机数N2,根据自身的PUF计算响应Ri=PUF(Ci),使用模糊提取器计算(hd,k)=FE.Gen(Ri)。计算hd'=hd⊕N0⊕N1、N2'=N2⊕N1。根据固件分区信息Fir和PUF响应信息Ri使用HMAC计算得到固件哈希值F,并计算V3=h(F||k||N0||N1||N2)和V4=h(F||k),将消息{hd',N2',V3,V4}发送给网关。
(6)网关接收到不同设备发送回的消息后,首先根据N1计算得到不同设备的N2,利用接收到的V4验证V3的正确性,错误则拒绝认证并删除信息。正确则与上一阶段类似计算得到N1',查询得到每个设备的固件分区号集合FDTB,并分别计算V5=h(V3||FDTB),将消息{hd',N1',N2',V5,FDTB}聚合发送给服务器。
(7)服务器接收到消息后,计算N1=N1'⊕N0、N2=N2'⊕N1,而后计算hd=hd'⊕N0⊕N1得到帮助数据hd。随后服务器根据查询数据库得到的PUF响应Ri和模糊提取器计算密钥k=FE.Rep(Ri,hd),根据网关发送过来的设备分区表结合全局分区表利用HMAC计算得到设备固件完整性信息F,进而验证V5的正确性。验证通过则表示当前计算设备认证通过,等待群组设备验证结束后,得到一组设备的认证结果Res,并计算Res'=Res⊕N0⊕N1。服务器对认证通过的设备,逐个计算与其的会话密钥sk=h(N0||N1||N2||k),并计算sk'=sk⊕N2⊕k。最后,计算V6=h(sk'||Res),将{Res',sk',V6}发送给网关。
(8)网关接收消息,计算Res=Res'⊕N0⊕N1并验证V6的正确性,错误则拒绝认证并删除信息,通过后网关将认证结果Res和sk'发送给对应设备。
(9)设备接收到认证结果后,如认证通过,则计算会话密钥sk=h(N0||N1||N2||k),并与接收得到的sk'⊕N2⊕k对比,如相同则表示设备和服务器双方会话密钥协商成功,接下来将使用此会话密钥进行通信。
至此,群组设备在网关聚集器的帮助下完成了与服务器的相互认证与密钥协商。在步骤(3)中,服务器通过对V0的验证实现对设备密钥K因子的认证。同样的,在步骤(7)中,服务器通过对包含PUF和设备固件完整性信息的V5的验证完成了对这两个认证因子的认证。而后通过网关发送给设备的消息{Res,sk'}完成双方对会话密钥的协商。
设备间通信主要面向综合应用场景中,需要设备间数据共享或同步的应用需求。本节所提出的设备间会话密钥协商协议是在网关聚合器的帮助下,双方设备完成与网关的认证以及设备间的密钥协商。同时,在网关中间路由传输对设备透明的情况下,本节提出的协议也适用于不同局域网间的设备相互通信。参阅图4所示,设备间通信协商阶段的具体步骤如下。
(1)当设备i想要与设备j通信时,需要知道对方当前使用的伪身份PID,它可以通过两种方式获得,一是当设备在局域网内通信时监听获得设备的伪身份;二是通过将设备的真实ID发送给网关查询获得。当得知对方的伪身份后,设备计算V0=h(PIDi||PIDj||Ki),并将消息{PIDi,PIDj,V0}发送给网关。
(2)网关接收消息后,通过PIDi和PIDj查询得到Ki和Kj,而后验证V0的正确性,如错误则终止认证并删除双方设备的对应PID和K。验证通过后,网关产生随机数N,计算N'=N⊕Ki和N”=N⊕Kj。而后分别从存储的设备i和设备j的{PID,K}中选择设备i的{PIDm,Km}和设备j的{PIDn,Kn},并计算K=Km⊕Kn。最后分别计算V1=h(PIDm||N'||PIDj||K)和V2=h(PIDn||N”||PIDi||K),并向设备i发送消息{PIDm,N',PIDj,K,V1},向设备j发送消息{PIDn,N”,PIDi,K,V2}。
(3)设备i接收到消息后,计算N=N'⊕Ki,根据PIDm查询得到Km,并计算Kn=K⊕Km,而后计算并验证V1的正确性。验证通过后计算与设备j的会话密钥sk=(Km||Kn||N),并向设备j发送使用sk加密的确认消息{sk⊕Kn}sk。
(4)设备j接收到消息后,与设备i类似,计算得到随机数N和Km。通过消息中的PIDi便可得知请求方的身份。计算并验证V2的正确性,错误则拒绝认证并删除对应信息,通过后计算与设备i的会话密钥sk=(Km||Kn||N),并向设备i发送使用sk加密的消息{sk⊕Km}sk作为确认。
至此,设备i和设备j通过网关完成相互认证与密钥协商。设备i首先通过V0与V1完成与网关的相互认证,而后设备i与设备j通过带有会话密钥的两条消息完成了相互认证与密钥协商。
最后说明的是,以上实施例仅用以说明本发明的技术方案而非限制,尽管参照较佳实施例对本发明进行了详细说明,本领域的普通技术人员应当理解,可以对本发明的技术方案进行修改或者等同替换,而不脱离本技术方案的宗旨和范围,其均应涵盖在本发明的权利要求范围当中。
Claims (4)
1.一种保障固件安全的多因子物联网设备群组认证方法,其特征在于:该方法包括以下三个阶段:
(1)初始化阶段:设备进行初始化时生成对应初始化请求并结合自身身份ID,经由网关后发送给服务器,服务器根据消息,将设备和网关的身份注册到自身数据库,并产生PUF的激励,发送给设备;设备根据激励使用PUF计算得到响应并将其发回给服务器;服务器根据响应信息,利用产生的随机数和主密钥,计算得到对应密钥和伪身份,并将其发送给网关;网关存储对应伪身份和密钥,并转发给设备存储;至此,设备网关和服务器均存储对应的认证信息;
(2)群组设备认证阶段:完成多设备在网关帮助下与服务器基于 PUF、固件完整性的多因子相互认证与密钥协商;网关在接收到一定数量的设备认证请求后,将请求消息聚合发送给服务器,服务器返回的认证消息也由网关分发给不同的设备;在群组设备认证阶段,设备首先在注册的伪身份和密钥对中选择一对并计算验证信息发送给网关;网关在接收到一定数量消息或到达等待时间后,将通过验证的设备消息转发给服务器;服务器接收消息后,通过验证信息验证设备的身份,如验证通过则在存储的激励响应对CRPs中选择一个激励信息,而后产生一个随机数,并将其发送给网关;网关收到消息后,产生一个随机数,将其连同收到的消息转发给设备;设备收到消息后,验证网关和服务器的真实性,如不通过则拒绝认证并删除对应信息,而后产生一个随机数,并根据网关发送过来的激励计算对应的PUF响应,而后利用PUF的响应和分区哈希值计算自身的固件完整性值,并将以上信息通过异或哈希方式加密后发送给网关;网关得到消息后,验证设备的身份,通过后附带上自己产生的随机数发送给服务器;服务器通过查询响应并计算得到设备固件完整性值,而后验证设备的身份,如通过则根据设备、网关和服务器产生的随机数和PUF计算会话密钥,并将认证结果发送给设备;设备得到认证结果,并相应计算得到与服务器的会话密钥,完成与服务器的相互认证与密钥协商;
(3)设备间通信协商阶段:在网关聚合器的帮助下,双方设备完成与网关的认证以及设备间的密钥协商,同时,在网关中间路由对设备透明的情况下,本方案也适用于不同局域网间的设备相互通信的场景;当设备1需要与设备2相互通信时,设备1首先将自身和设备2的伪身份发送给网关;网关接收消息后对设备1的身份进行认证,认证通过后分别从设备1和设备2存储的伪身份密钥对中选择设备1和2的新伪身份和密钥,并计算两个新密钥的异或值K,而后分别向设备1和设备2发送对应新的伪身份和K以及产生的随机数N;设备1和设备2接收到消息后,均首先验证网关的身份,通过验证后,根据伪身份和K计算得到自身密钥和对方密钥以及随机数N,通过双方的新密钥和随机数N计算得到与对方的会话密钥,并向对方发送确认消息,进而完成设备双方会话密钥的协商。
2.根据权利要求1所述的一种保障固件安全的多因子物联网设备群组认证方法,其特征在于:设备和服务器双方在群组认证阶段完成基于密钥、PUF和设备固件完整性的多因子认证,其中设备根据服务器发来的激励信息Ci通过Ri=PUF(Ci)计算得到响应,并利用模糊提取器减少PUF在实际使用过程中易受环境噪声影响的问题,计算得到(hd,k)=FE.Gen(Ri),从而得到PUF的密钥k,服务器借助此密钥完成对设备PUF的认证。
3.根据权利要求2所述的一种保障固件安全的多因子物联网设备群组认证方法,其特征在于:服务器在群组设备认证阶段完成了对设备的固件完整性验证,设备首先根据自身固件和分区信息计算得到各个分区的哈希值,而后借助本次认证中使用的PUF密钥k和各分区哈希值作为HMAC的输入进而计算得到固件完整性值F;服务器则根据网关发送过来的设备分区信息结合自身存储的全局分区表以及本次认证使用的PUF密钥k计算得到固件完整性值,通过比较两值对设备的固件完整性进行验证,同时固件完整性值通过作为哈希函数的输入产生的验证消息V反映,服务器计算同样的V与接收的数值比较。
4.根据权利要求3所述的一种保障固件安全的多因子物联网设备群组认证方法,其特征在于:所述设备固件完整性的验证的具体包括以下两个阶段:
(1)设备部署阶段:网络拥有者根据设备固件大小和功能对设备固件进行分区,分别计算各个分区的哈希值,而后服务器根据网络中所有设备的各个分区的哈希值构建全局分区表,内容包括分区编号和分区对应的哈希值,网关则在认证协议的初始化阶段,根据设备发送的固件信息构建局域网内的设备分区表,内容包括设备的身份ID和设备分区编号的集合;
(2)固件完整性验证阶段:服务器根据网关发送过来的设备分区表,结合自身存储的全局分区表,借助PUF的响应计算得到具体设备的固件完整性值,并与设备发送过来的完整性值比较,对设备的固件完整性进行验证,包含设备固件完整性信息的设备分区表和全局分区表被分别存储在网关和服务器当中,能够保证在网关或服务器被劫持时,单独一方均无法得到正确的设备固件完整性值,无法完成认证过程。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| CN202310311735.5A CN116405219B (zh) | 2023-03-28 | 2023-03-28 | 一种保障固件安全的多因子物联网设备群组认证方法 |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| CN202310311735.5A CN116405219B (zh) | 2023-03-28 | 2023-03-28 | 一种保障固件安全的多因子物联网设备群组认证方法 |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| CN116405219A CN116405219A (zh) | 2023-07-07 |
| CN116405219B true CN116405219B (zh) | 2025-07-22 |
Family
ID=87011624
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| CN202310311735.5A Active CN116405219B (zh) | 2023-03-28 | 2023-03-28 | 一种保障固件安全的多因子物联网设备群组认证方法 |
Country Status (1)
| Country | Link |
|---|---|
| CN (1) | CN116405219B (zh) |
Families Citing this family (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| WO2025030566A1 (zh) * | 2023-08-10 | 2025-02-13 | Oppo广东移动通信有限公司 | 认证方法和设备 |
Citations (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN113079132A (zh) * | 2021-02-26 | 2021-07-06 | 西安电子科技大学 | 海量物联网设备认证方法、存储介质、信息数据处理终端 |
| CN114286334A (zh) * | 2021-12-29 | 2022-04-05 | 西安邮电大学 | 一种移动通信场景的多用户认证方法、系统及信息处理终端 |
Family Cites Families (6)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US8813202B2 (en) * | 2012-01-03 | 2014-08-19 | General Instrument Corporation | Mechanism to determine source device service tier based on the version of the HDCP key |
| WO2019179608A1 (en) * | 2018-03-20 | 2019-09-26 | Telefonaktiebolaget Lm Ericsson (Publ) | Initial network authorization for a communications device |
| CN113132087B (zh) * | 2019-12-30 | 2025-07-29 | 国民技术股份有限公司 | 物联网、身份认证及保密通信方法、芯片、设备及介质 |
| CN112118229B (zh) * | 2020-08-20 | 2022-09-27 | 宁波奥克斯电气股份有限公司 | 物联网设备和服务器安全认证方法、装置及电子设备 |
| CN112464190A (zh) * | 2020-12-17 | 2021-03-09 | 深圳市飞思捷跃科技有限公司 | 一种基于区块链的物联网平台高可用高安全方法 |
| CN113329371B (zh) * | 2021-04-29 | 2022-12-20 | 北京航空航天大学 | 一种基于puf的5g车联网v2v匿名认证与密钥协商方法 |
-
2023
- 2023-03-28 CN CN202310311735.5A patent/CN116405219B/zh active Active
Patent Citations (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN113079132A (zh) * | 2021-02-26 | 2021-07-06 | 西安电子科技大学 | 海量物联网设备认证方法、存储介质、信息数据处理终端 |
| CN114286334A (zh) * | 2021-12-29 | 2022-04-05 | 西安邮电大学 | 一种移动通信场景的多用户认证方法、系统及信息处理终端 |
Also Published As
| Publication number | Publication date |
|---|---|
| CN116405219A (zh) | 2023-07-07 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| CN112039872B (zh) | 基于区块链的跨域匿名认证方法及系统 | |
| TWI840358B (zh) | 用以使用區塊鏈來執行基元式互換之電腦實施系統及方法 | |
| Wang et al. | Ultra super fast authentication protocol for electric vehicle charging using extended chaotic maps | |
| KR102580509B1 (ko) | 복수의 스토리지 노드를 통해 대규모 블록체인의 안전한 저장을 가능하게 하는 컴퓨터 구현 시스템 및 방법 | |
| CN101902476B (zh) | 移动p2p用户身份认证方法 | |
| Wu et al. | A provably secure authentication and key exchange protocol in vehicular ad hoc networks | |
| CN113746858B (zh) | 一种基于可验证随机函数的跨链通信方法 | |
| Ghahramani et al. | A secure biometric-based authentication protocol for global mobility networks in smart cities | |
| CN113395166B (zh) | 一种基于边缘计算的电力终端云边端协同安全接入认证方法 | |
| CN115021958B (zh) | 一种雾计算与区块链融合的智能家居身份认证方法与系统 | |
| CN107147498B (zh) | 用于rfid认证过程中的认证方法和传递信息的加密方法 | |
| CN113572765B (zh) | 一种面向资源受限终端的轻量级身份认证密钥协商方法 | |
| CN115378604A (zh) | 一种基于信誉值机制的边缘计算终端设备的身份认证方法 | |
| CN113747433B (zh) | 一种雾网络中基于区块侧链结构的设备认证方法 | |
| CN112468983A (zh) | 一种低功耗的电力物联网智能设备接入认证方法及其辅助装置 | |
| Wang et al. | Secure long-range autonomous valet parking: A reservation scheme with three-factor authentication and key agreement | |
| Zahednejad et al. | A Lightweight, Secure Big Data‐Based Authentication and Key‐Agreement Scheme for IoT with Revocability | |
| Savitha et al. | A unique secure multimodal biometrics-based user anonymous authenticated key management protocol (SMUAAKAP) based on block chain mechanism for generic HIoTNs | |
| He et al. | VC-MAKA: mutual authentication and key agreement protocol based on verifiable commitment for Internet of Vehicles | |
| CN116405219B (zh) | 一种保障固件安全的多因子物联网设备群组认证方法 | |
| CN113364584A (zh) | 一种物联网设备与雾节点认证系统和方法 | |
| Chaudhry et al. | TS-PAID: A Two-Stage PUF-based lightweight Authentication protocol for Internet of Drones | |
| Liou et al. | T-auth: A novel authentication mechanism for the iot based on smart contracts and pufs | |
| CN116506857A (zh) | 基于及时生成和更新认证信息的无人机身份认证方法 | |
| Cui et al. | A dynamic C-V2X anonymous authentication and group key agreement protocol |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| PB01 | Publication | ||
| PB01 | Publication | ||
| SE01 | Entry into force of request for substantive examination | ||
| SE01 | Entry into force of request for substantive examination | ||
| GR01 | Patent grant | ||
| GR01 | Patent grant |