一种基于区块链的跨域设备身份认证的方法

文档序号:35286213发布日期:2023-09-01 07:02阅读:56来源:国知局
一种基于区块链的跨域设备身份认证的方法

本发明属于物联网,涉及物联网设备跨域身份认证技术,具体涉及一种基于区块链的跨域设备身份认证方法。


背景技术:

1、近年来,随着互联网技术与无线通信技术的不断发展,物联网几乎参与进了人们生活的每个领域,如智慧城市、智慧工业、车联网等领域。与此同时,现有的物联网设备数量不断增加,规模不断扩大,物联网环境内已经形成了多种不同的管理域。现如今,随着互联网服务的多样化与复杂化,不同管理域之间往往需要跨域沟通与信息交换。由于域间通信带来的信任和安全问题,跨域身份认证成为了不同管理域之间实现敏感数据交换的首要保障。

2、传统的身份验证方法主要分为基于公钥基础设施(pki)的认证和基于身份密码学(ibc)的认证两大类。基于pki的认证系统依赖于名为证书颁发机构(ca)的可信第三方,来自外部域的设备通过出示由ca签名的证书实现身份的验证,然而证书的颁发,撤销与存储需要耗费巨大的管理成本。为了减轻基于pki方法的管理开销,基于身份的密码学(ibc)使用与设备身份相关的字符串作为公钥。私钥由另一个名为密钥生成中心(kgc)的可信第三方生成。此外,基于pki的认证和基于ibc的认证都依赖于一个可信第三方。因此,传统的认证方法面临着中心化与单点故障等问题。

3、近年来,区块链因其分布式存储、去中心化、可追溯、数据不可篡改等特点开始被研究者应用在身份认证领域,以达到去中心化的身份认证的目的。通过区块链改造传统的pki系统与ibc系统,并将认证信息上链存储,是目前常用的方法。但是大多数工作只是简单地使用区块链作为一个分布式存储的角色,没有充分挖掘区块链中交易这一主体的使用方法。还有一些工作则在区块链的基础上引入了复杂的密码学原语,使得认证过程中的计算复杂度和时间难以接受。因此,如何充分利用区块链交易的特点,设计安全、简洁且高效的认证方法,是物联网平台设备跨域认证的关键问题之一。


技术实现思路

1、针对基于公钥基础设施的认证和基于身份密码学的认证所面临的中心化与单点故障问题,本发明提出了一种基于区块链的跨域设备身份认证方法,实现了不同管理域的设备之间高效、安全、去中心化的跨域双向认证,并充分考虑了认证时的计算复杂度问题和链上设备身份的更新和撤销问题。

2、为了达到上述目的,本发明提供如下技术方案:

3、一种基于区块链的跨域设备身份认证方法,包括如下步骤:

4、s1,初始化安全参数:由各个域的管理者组成联盟链,协商确定安全的公共密码算法参数,以及完成分布式密钥生成,并将公共参数上链保存;

5、s2,域内注册和背书:根据设备递交的身份信息,由本域节点完成审查,并对审查通过的设备发起注册交易;

6、s3,跨域审核和背书:根据设备递交的身份信息,由组成联盟链的各个域节点进行审查,当为其背书的域节点个数达到门限阈值时,对设备发起跨域注册交易;

7、s4,域内设备认证:根据发起方设备携带的域内注册交易信息,验证方设备向本域节点发送质询请求,域节点根据注册交易信息返回验证结果;

8、s5,跨域设备认证:根据发起方设备携带的跨域注册交易信息,验证方设备向联盟链网络发送质询请求,根据交易的存在性、一致性和时效性,从而返回验证结果;

9、s6,域内身份更新和撤销:根据需求,设备可以更新自身的匿名地址,并对旧的匿名地址进行状态撤销;

10、s7,跨域身份更新和撤销:当设备更新自身的匿名地址后,如果旧地址参与了s3所述步骤,则需要对设备的新地址执行s3,并相应地撤销旧地址的跨域审核结果。

11、作为本发明的进一步技术方案,所述步骤s1中的初始化安全参数用于确定认证过程中所用密码学算法的公共参数,所属安全参数包括以下参数中的至少一种:选用的签名算法和哈希函数种类、椭圆曲线、门限阈值、域节点公钥、域节点地址、域节点聚合公钥、一次性随机公钥对列表。

12、进一步地,所述步骤s2中的注册交易主体格式为:

13、

14、其中,type表示交易类型,from和to分别表示交易发起方和交易接收方,adda和分别表示域节点地址和设备地址,sign表示交易发起方的签名,根据签名值和type值,一个注册交易表示域节点对设备身份的认可。

15、进一步地,所述步骤s3中的跨域审核与背书包括如下步骤:

16、a1:设备向本域节点发送跨域许可请求;

17、a2:收到请求后,本域节点首先验证设备在域内的合法性,通过验证后,由本域节点向组成联盟链的各个域节点发送跨域审核与背书请求;

18、a3:每个域节点在收到步骤a2中的请求后,验证消息格式与签名是否正确,验证通过后,审核设备的身份信息,审核通过后,向设备所在域节点返回响应信息;

19、a4:本域节点在收到步骤a3中的响应信息后,验证消息格式和签名是否正确,以及消息是否重放;当本域节点接收到门限阈值个数的响应信息后,为设备发起离线的跨域背书交易,交易的主体格式为:

20、

21、其中type表示交易类型,crossregister表示类型为跨域许可申请,from和to分别表示交易的发起方和接收方,addx表示组成联盟链的所有域节点的聚合公钥所对应的地址,表示发起方的设备地址;离线交易的签名字段会在后续步骤中填充;

22、a5:本域节点将离线交易与一次性公钥对列表发送给步骤a3中的响应者;

23、a6:在接收到步骤a5中的消息后,步骤a3中的响应者执行门限签名算法,用聚合私钥碎片生成步骤a4中离线交易的签名碎片,并将签名碎片返回给设备所在的域节点;

24、a7:本域节点对步骤a6中的签名碎片进行验证,验证通过后,将接收到的所有签名碎片聚合得到最终的门限签名,并将签名填充到步骤a4中的离线交易中,随后交易上链;

25、a8:最后交易经共识上链后,本域节点返回交易id和所在区块高度h给设备。

26、进一步的,所述步骤a4中,本域节点包含在门限阈值个数内。

27、进一步地,所述步骤s4中的本域节点需要根据发起方设备的地址,在本地检索对应的注册交易id;如果与发起方提供的签名后的交易id一致,且type字段的值为register或update,则认证通过;验证方设备执行相同步骤后,即可实现域内设备的双向认证。

28、进一步地,所述步骤s5中的跨域设备认证包括如下步骤:

29、b1:发起方设备向验证方设备发送跨域认证请求;

30、b2:验证方设备检验步骤b1中消息格式和签名正确后,向联盟链网络发送质询请求;

31、b3:在接收到步骤b2中的请求后,触发相应的智能合约以查询跨域注册交易的存在性;如果不存在,则认证失败,否则返回给验证方设备跨域注册交易的详细信息;

32、b4:验证方设备在接收到步骤b3中的响应消息后,对比跨域注册交易中from字段和聚合公钥地址的值、to和发起方设备地址的值、type字段的值是否为crossregister或crossupdate;在对比成功后,验证方设备继续查询交易id是否是发起方设备的最新状态,如果满足时效性,则认证通过,否则,认证失败;

33、b5:验证方设备执行相同步骤后,即可实现设备跨域的双向认证。

34、进一步地,所述步骤s6中设备更换自身的匿名地址时,通过旧地址发起对新地址的更新交易来确认新地址;随后由本域节点发起对设备新地址的更新交易,并将在链上和本地更新旧地址的状态以达到撤销的目的。

35、进一步地,所述步骤s7中当设备在完成域内身份的更新和撤销后,倘若该设备参与过跨域审核与背书,则旧地址对应的跨域身份也应该相应地执行更新和撤销。

36、与现有技术相比,本发明具有如下优点和有益效果:

37、1.与现有技术相比,本发明充分考虑了区块链中的交易的特点,不只是简单地将区块链当作一个分布式数据库使用,通过注册交易、更新交易和撤销交易等三种交易实现了区块链上设备的身份管理,减少了存储成本;通过可验证的秘密共享和分布式密钥生成方法实现了交易的分布式的门限签名,降低了交易长度和终端设备的运算量,提升了设备跨域审核与背书的安全性和运行效率。

38、2.本发明实现了面向跨域环境的去中心化设备认证和身份管理算法,解决了传统证书认证的单点故障和证书管理负担问题,以及基于区块链认证的计算复杂和链上身份撤销的问题。增强了设备跨域认证过程中的高效性和安全性。

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