节点接入网关的认证方法与流程

文档序号:34362664发布日期:2023-06-04 18:08阅读:133来源:国知局
节点接入网关的认证方法与流程

本发明涉及物联网设备认证领域,具体是涉及一种节点接入网关的认证方法。


背景技术:

1、物联网中,节点设备通过蓝牙模块或者wi f i模块等无线传输模块连接网关,然后通过以太网或者光纤连接至公共云平台。节点与网关建立连接时,双方均需要认证,确保节点和网关通信时的安全。

2、传统技术为客户端与服务端通过证书进行认证,认证完成后使用固定的密钥进行传输,若该固定的密钥被第三方盗窃,客户端与服务端传输的通信数据都会泄露。

3、现有一种面向物联网的设备匿名身份认证方法及系统,该方法包括:定义通信模型、系统参数选取、系统初始化、设备注册、计算私钥和临时秘密值等步骤,并利用临时秘密值对密文进行解密,最后设备认证和密钥协商。其中,该方法在生产时需要向系统的设备写入非对称密钥和相关的参数,在生产化时写入非对称密钥和证书需要较高的维护成本。


技术实现思路

1、本发明的第一目的是提供一种维护成本较低的节点接入网关的认证方法。

2、为了实现上述的第一目的,本发明提供的一种节点接入网关的认证方法,包括节点获取自身的节点标识、第一对称密钥与第二对称密钥;网关获取第一分散数据和第二分散数据,第一分散数据为第一对称密钥通过分散函数计算得到,第二分散数据为第二对称密钥通过分散函数计算得到;网关生成网关公钥与网关私钥;网关获取节点标识,将节点标识记录在注册表中;节点产生节点公钥与节点私钥,并与网关进行双向认证:节点产生第一随机数,并初始化节点序列号,使用第二对称密钥与mac函数计算第一mac值,并发送第一命令至网关,第一命令包括节点序列号、节点标识、第一随机数、节点公钥和第一mac值;网关判断节点标识是否有记录于注册表中,若有记录,则通过分散函数计算第二分散数据,得到第二对称密钥;通过第二对称密钥和mac函数计算第二mac值,并判断第二mac值是否与第一mac值相同,若相同,则保存节点公钥,确认节点通过认证。

3、由上述方案可见,节点在出厂前通过安全设备只写入第一对称密钥、第二对称密钥和节点标识,网关出厂前通过安全设备写入第一分散数据和第二分散数据,节点和网关在出厂前并未通过安全设备写入非对称密钥或者预设证书,其维护成本较低。

4、进一步的方案中,网关保存所述节点公钥后,还执行:网关初始化网关序列号,并产生第二随机数,并通过第二对称密钥与mac函数计算第三mac值,并发送第二命令至节点,第二命令包括网关序列号、第二随机数、网关公钥和第三mac值;节点通过第二对称密钥与mac函数计算第四mac值,判断第四mac值是否与第三mac值是否相等,若相等,保存网关公钥,确认网关通过认证。

5、由此可见,节点保存网关公钥,完成双向认证。

6、进一步的方案中,确认网关通过认证后,还执行:节点与网关通过认证产生临时密钥,并使用所述临时密钥进行通信。

7、由此可见,使用临时密钥通信可提高网关与节点通信时的安全性。

8、进一步的方案中,节点与网关通过认证产生临时密钥中包括:节点产生第一临时公钥、第一临时私钥和第三随机数,使用节点私钥对节点序列号、节点标识、第三随机数和第一临时公钥签名得到第一签名数据,并发送第三命令发送至网关,第三命令包括第一临时公钥、第三随机数、节点标识、节点序列号和第一签名数据。

9、由此可见,节点产生第一临时公私钥发送至网关,为生成临时密钥做准备。

10、进一步的方案中,网关判断节点标识是否有记录于注册表中,若有记录,使用节点公钥对节点序列号、节点标识、第三随机数、第一临时公钥和第一签名数据验签得到第一验签数据;判断第一验签数据是否为验签成功,若是,则网关确认接收第一临时公钥成功;网关产生第二临时公钥、第二临时私钥和第四随机数,并使用网关私钥对网关序列号、节点标识、第四随机数、第二临时公钥进行签名得到第二签名数据;网关根据第一临时公钥与第二临时私钥产生第一临时密钥,使用第一临时密钥加密第三随机数得到第一密文,发送第四命令至节点,第四命令包括第二临时公钥、第四随机数、第一密文、网关序列号、节点标识和所述第二签名数据。

11、由此可见,网关通过第一临时公钥与第二临时私钥产生第一临时密钥,网关在与节点通信时可使用第一临时密钥。

12、进一步的方案中,节点接收第四命令后,还执行:节点使用网关公钥对网关序列号、节点标识、第四随机数、第二临时公钥和第二签名数据进行验签,得到第二验签数据;判断第二验签数据是否为验签成功,若是,节点确认第二临时公钥接收成功;节点根据第一临时私钥与第二临时公钥产生第二临时密钥,并使用第二临时密钥解密第一密文得到第一数据,判断第一数据是否与第三随机数相同,若相同,则使用第二临时密钥加密第四随机数生成第二密文,发送第五命令至网关,第五命令包括节点序列号、节点标识和第二密文。

13、由此可见,节点通过第一临时私钥与第二临时公钥产生第二临时密钥,由于第一临时私钥与第一临时公钥为一对密钥,第二临时私钥与第二临时公钥为一对密钥,所以第二临时密钥与第一临时密钥相同。当节点使用第二临时密钥解密第一密文得到的第一数据等于第三随机数,则证明第一临时密钥等于第二临时密钥。

14、进一步的方案中,网关使用第一临时密钥解密第二密文,得到第二数据,判断第二数据是否与第四随机数相同,若相同,则网关确认节点生成临时密钥认证成功。

15、由此可见,若网关使用第一临时密钥解密第二密文得到第二数据第四随机数相同,则证明第一临时密钥等于第二临时密钥。

16、进一步的方案中,所述节点生成临时密钥后,在需要对所述临时密钥更改时,执行:节点产生第五随机数、第三临时公钥与第三临时私钥,使用节点私钥对节点序列号、节点标识、第五随机数和第三临时公钥进行签名,得到第三签名数据,并发送第六命令至网关,第六命令包括节点序列号、节点标识、第五随机数、第三临时公钥和第三签名数据;节点根据第三临时私钥与第二临时公钥产生第三临时密钥;网关使用节点公钥对节点序列号、节点标识、第五随机数、所述第三临时公钥和所述第三签名数据进行签名,得到第三验签数据,判断所述第三验签数据是否为验签成功,保存第三临时公钥,根据第三临时私钥与第二临时公钥产生第四临时密钥。

17、由此可见,当节点需要改变临时密钥时,只需要网关对第三签名数据验签即可,再通过第三临时私钥与第二临时公钥产生第四临时密钥。

18、进一步的方案中,节点发送第六命令至网关后,还执行:节点设置接收网关信息时,判断网关序列号是否在预设区间内,若是,节点使用第一临时密钥进行解密。

19、由此可见,由于网关可能在接收到第六命令前还发送消息至网关,此时网关还使用第二临时密钥进行通信,所以节点要判断网关序列号是否在预设区间内,若是,需要可使用第一临时密钥进行解密。

20、进一步的方案中,节点的节点标识、第一对称密钥、第二对称密钥以及网关的第一分散数据、第二分散数据均由同一安全设备生成。

21、由此可见,节点和网关在出厂前使用同一安全设备设置相关的信息。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1