一种基于区块链与边缘辅助的物联网设备认证方法及系统技术方案

技术编号:30784242 阅读:18 留言:0更新日期:2021-11-16 07:45
本发明专利技术公开了一种基于区块链与边缘辅助的物联网设备认证方法及系统。该系统包括边缘节点、物联网设备、用户、管理员、区块链。边缘节点通过对用户、物联网设备与边缘节点之间映射是否存在进行判断实现身份认证;物联网设备通过智能合约加入边缘节点管理设备列表;用户可对拥有权限的设备访问;管理员对物联网设备、边缘节点与用户之间的映射进行管理,添加或删除设备与用户权限等;区块链通过智能合约实现管理员对设备、用户权限的管理工作以及用户对设备的访问。本发明专利技术实现基于区块链与边缘辅助的物联网设备安全认证,利用区块链去中心化等特性,避免了第三方中心认证带来的安全隐患,在保证安全性的同时降低了系统实现成本。在保证安全性的同时降低了系统实现成本。在保证安全性的同时降低了系统实现成本。

【技术实现步骤摘要】
一种基于区块链与边缘辅助的物联网设备认证方法及系统


[0001]本专利技术涉及网络安全
,特别是一种基于区块链与边缘辅助的物联网设备认证方法及系统。

技术介绍

[0002]在网络安全中,安全认证作为第一道也可以看作是最重要的一道防线,对于整个网络安全环境极其重要。安全认证的作用在于必须做到能够准确无误地将对方辨认出来,同时还应该提供双向认证,确保信息只会被正确的人所访问。身份认证可分为用户与系统间的认证以及系统与系统之间的认证。目前使用比较多的是用户与系统间的身份认证,只由系统对用户进行单向的身份验证。近年来,由于互联网的开放性,如何在通信过程中保证合法可信的身份成为互联网安全的重要组成部分,基于区块链的安全认证技术成为炙手可热的技术热点。
[0003]在物联网中,事物在没有人类干预的情况下处理和交换数据,由于这种充分的自主权,这些实体需要相互承认和认证,并确保其交换数据的完整性。与端点设备不同,物联网设备是资源受限的设备,无法保护自己,而且很容易被黑客攻击和破坏,如果无法提供有效保护措施,它们将成为恶意用户和恶意使用的目标。因此,对于物联网中用户与设备等参与实体进行身份认证势在必行。而现有技术中心化认证的方式不仅所具有的成本高、单点故障、黑客攻击和隐私规避等种种问题,还会导致物联网设备在短时间内生成大量的数据,当大量物联网设备同时启动通过全球互联网将数据传输到云数据中心时,发生严重的网络拥塞,因此物联网设备和云数据中心之间的高延迟交互是不可接受的,并且会大大降低服务质量。

技术实现思路

>[0004]本专利技术的目的在于提供一种安全性高、认证效率高并且去中心化的基于区块链与边缘辅助的物联网设备认证方法及系统。
[0005]实现本专利技术目的的技术解决方案为:
[0006]第一方面,本专利技术提出一种基于区块链与边缘辅助的物联网设备认证方法,包括以下内容:
[0007]1)系统初始化:部署智能合约,默认智能合约部署者作为管理员;
[0008]2)用户访问:用户通过已知设备地址进行发起访问,访问成功后通过对设备EA、edge EA、用户EA以及时间戳使用散列函数进行散列,获得用户唯一标识符UID并产生令牌Token;
[0009]3)管理设备:管理员对设备进行管理,添加物联网设备与边缘节点之间的映射,或删除边缘节点管理设备列表中已存在的物联网设备;
[0010]4)管理用户权限:管理员对用户权限进行管理,包括添加用户权限和删除用户权限,添加用户权限是指添加用户、物联网设备与边缘节点三者之间的映射;
[0011]5)添加管理员:合约部署者作为管理员,能够添加新的管理员;
[0012]6)用户认证:通过对物联网设备与边缘节点之间的映射以及用户权限进行遍历,判断用户是否拥有访问权限。
[0013]进一步地,管理设备、管理用户权限以及添加管理员的过程中,通过修饰符判断任务发起者是否为管理员进行身份限定,只能够由管理员进行操作。
[0014]进一步地,智能合约中设置有两个映射:用户设备映射和边缘设备映射;边缘设备映射指物联网设备与边缘节点之间的映射,一个边缘节点关联多个物联网设备;用户设备映射指用户权限,用户设备映射存在的前提条件为该映射中的物联网设备与边缘节点存在于边缘设备映射中。
[0015]进一步地,所述用户访问,具体如下:
[0016]步骤11、用户输入访问物联网设备区块链地址,点击发起访问;
[0017]步骤12、监听智能合约中事件event的产生,智能合约中事件包括设备不存在事件、访问失败事件、添加设备成功事件、访问成功事件;若监听到设备不存在事件则说明物联网设备地址不存在于已知边缘设备映射中;若触发访问失败事件则说明该用户没有访问该物联网设备的权限;监听到上述两个事件则说明访问失败,否则进行步骤13;
[0018]步骤13、监听到访问成功事件之后用户界面反馈提示访问建立成功,访问成功后对设备EA、edge EA、用户EA以及时间戳使用keccak256散列函数进行散列,得到用户唯一标识符UID并产生令牌Token;由于keccak256哈希函数是Ether gas消耗中最有效的函数,因此,我们的方法与系统采用keccak256哈希函数。
[0019]进一步地,所述管理设备,具体如下:
[0020]管理员使用添加设备边缘映射函数addDeviceEdgeMapping(address edge,address device)其中参数address edge为边缘节点地址,address device为物联网设备地址,通过输入边缘节点地址和设备地址将物联网设备加入边缘设备映射,加入成功触发添加设备成功事件;管理员通过删除设备函数delDev删除边缘节点管理设备列表中已存在的物联网设备,通过onlyadmin修饰符判断任务发起者是否为管理员身份即判断是否存在于管理员数组中,实现只能够由管理员进行操作。
[0021]进一步地,所述管理用户权限,具体如下:
[0022]管理员使用添加用户设备映射函数addUserDeviceMapping(address user,address device,address edge),其中参数address user为用户地址,address device为物联网设备地址,address edge为边缘节点地址,通过对用户地址、设备地址以及边缘地址进行输入从而添加新的用户权限,在添加的时候对物联网设备是否存在于边缘设备映射中进行判断,若存在则允许添加并触发添加用户设备成功事件;若所添加物联网设备地址与边缘节点设备地址不存在于已知映射中,则触发设备不存在事件,提示添加失败。
[0023]进一步地,所述添加管理员,具体如下:
[0024]在智能合约建立时,将建立智能合约的地址作为首位管理员加入管理员数组,管理员通过使用添加管理员函数addAdmin(address newAdmin)输入新的管理员地址添加新的管理员,其中参数address newAdmin为新管理员的地址;添加成功则触发添加成功事件;在删除管理员时,判断管理员数组长度,管理员经过删除数量小于2时则不能够再进行删除。
[0025]进一步地,所述用户认证,具体如下:
[0026]步骤21、对用户地址与用户输入的物联网设备地址进行遍历智能合约中的映射,首先遍历边缘设备映射,判断物联网设备是否存在于边缘节点中,若存在则进行步骤22,不存在则产生设备不存在事件并反馈提示该设备不存在;
[0027]步骤22、遍历用户设备映射,即遍历用户权限,判断用户是否拥有访问该设备的权限,若存在则进行步骤23,不存在则反馈访问失败;
[0028]步骤23、用户拥有访问权限则触发访问成功事件并提示访问成功,并通过散列函数keccak256(device,edge,msg.sender,block.timestamp)对设备EA、edge EA、用户EA以及时间戳使用keccak256本文档来自技高网...

【技术保护点】

【技术特征摘要】
1.一种基于区块链与边缘辅助的物联网设备认证方法,其特征在于,包括以下内容:1)系统初始化:部署智能合约,默认智能合约部署者作为管理员;2)用户访问:用户通过已知设备地址进行发起访问,访问成功后通过对设备EA、edge EA、用户EA以及时间戳使用散列函数进行散列,获得用户唯一标识符UID并产生令牌Token;3)管理设备:管理员对设备进行管理,添加物联网设备与边缘节点之间的映射,或删除边缘节点管理设备列表中已存在的物联网设备;4)管理用户权限:管理员对用户权限进行管理,包括添加用户权限和删除用户权限,添加用户权限是指添加用户、物联网设备与边缘节点三者之间的映射;5)添加管理员:合约部署者作为管理员,能够添加新的管理员;6)用户认证:通过对物联网设备与边缘节点之间的映射以及用户权限进行遍历,判断用户是否拥有访问权限。2.根据权利要求1所述的基于区块链与边缘辅助的物联网设备认证方法,其特征在于,管理设备、管理用户权限以及添加管理员的过程中,通过修饰符判断任务发起者是否为管理员进行身份限定,只能够由管理员进行操作。3.根据权利要求1或2所述的基于区块链与边缘辅助的物联网设备认证方法,其特征在于,智能合约中设置有两个映射:用户设备映射和边缘设备映射;边缘设备映射指物联网设备与边缘节点之间的映射,一个边缘节点关联多个物联网设备;用户设备映射指用户权限,用户设备映射存在的前提条件为该映射中的物联网设备与边缘节点存在于边缘设备映射中。4.根据权利要求3所述的基于区块链与边缘辅助的物联网设备认证方法,其特征在于,所述用户访问,具体如下:步骤11、用户输入访问物联网设备区块链地址,点击发起访问;步骤12、监听智能合约中事件event的产生,智能合约中事件包括设备不存在事件、访问失败事件、添加设备成功事件、访问成功事件;若监听到设备不存在事件则说明物联网设备地址不存在于已知边缘设备映射中;若触发访问失败事件则说明该用户没有访问该物联网设备的权限;监听到上述两个事件则说明访问失败,否则进行步骤13;步骤13、监听到访问成功事件之后用户界面反馈提示访问建立成功,访问成功后对设备EA、edge EA、用户EA以及时间戳使用keccak256散列函数进行散列,得到用户唯一标识符UID并产生令牌Token;由于keccak256哈希函数是Ether gas消耗中最有效的函数,因此,我们的方法与系统采用keccak256哈希函数。5.根据权利要求3所述的基于区块链与边缘辅助的物联网设备认证方法,其特征在于,所述管理设备,具体如下:管理员使用添加设备边缘映射函数addDeviceEdgeMapping(address edge,address device)其中参数address edge为边缘节点地址,address device为物联网设备地址,通过输入边缘节点地址和设备地址将物联网设备加入边缘设备映射,加入成功触发添加设备成功事件;管理员通过删除设备函数delDev删除边缘节点管理设备列表中已存在的物联网设备,通过onlyadmin修饰符判断任务发起者是否为管理员身份即判断是否存在于管理员数组中,实现只能够由管理员进行操作。6.根据权利要求3所述的基于区块链与边缘辅助的物联网设备认证方法,其特征在于,
所述管理用户权限,具体如下:管理员使用添加用户设备映射函数addUserDeviceMapping(address user,address...

【专利技术属性】
技术研发人员:黄婵颖胡莹熏许全义颜克冬尹丹肖杉
申请(专利权)人:南京理工大学
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1