[发明专利]基于DAG区块链的物联网设备轻量级认证和访问授权方法在审

专利信息
申请号: 202111161079.2 申请日: 2021-09-30
公开(公告)号: CN113949544A 公开(公告)日: 2022-01-18
发明(设计)人: 王尚平;李欢;张亚玲 申请(专利权)人: 西安理工大学
主分类号: H04L9/40 分类号: H04L9/40;H04L9/32;H04L67/10;H04L67/1097;H04L67/12;G06F16/27;G06F21/60;G06F21/62;G06F21/64
代理公司: 西安弘理专利事务所 61214 代理人: 王敏强
地址: 710048 陕*** 国省代码: 陕西;61
权利要求书: 查看更多 说明书: 查看更多
摘要:
搜索关键词: 基于 dag 区块 联网 设备 轻量级 认证 访问 授权 方法
【权利要求书】:

1.基于DAG区块链的物联网设备轻量级认证和访问授权方法,其特征在于,具体按照以下步骤实施:

步骤1、设备身份管理;

步骤2、资源发布;

步骤3、访问控制。

2.根据权利要求1所述的基于DAG区块链的物联网设备轻量级认证和访问授权方法,其特征在于,所述步骤1具体按照以下步骤实施:

步骤1.1、设备身份注册:

步骤1.1.1、自签名证书的生成:首先,物联网设备a生成自己的公私钥对PKa/SKa、设备唯一标识符IDa;然后宣称其代理节点为雾节点A,记作FA;最后,设备a用自己的私钥对这些信息签名,并生成有效期为Ta的自签名证书Certa,即:Certa={IDa,PKa,Fa,Ta,μ},该自签名证书可用作设备a注册到雾节点A时的身份证明材料,其中,μ=sig(SKa,(IDa,PKa,Fa,Ta)),这表示设备a用其私钥SKa签名消息{IDa,PKa,Fa,Ta};

步骤1.1.2、自签名证书的提交:雾节点A生成自己的公私钥对:PKA/SKA,并在网络上公开自己的公钥PKA,设备a将其自签名证书Certa使用雾节点A的公钥PKA加密后发给雾节点A,向雾节点A宣称自己的身份,雾节点A收到该身份宣称后对其进行解密;

Dec(SKA,Enc(PKA,Certa))=Certa (1)

其中,Enc(PKA,Certa)表示用雾节点A的公钥PKA加密Cera;Dec(SKA,Enc(PKA,Certa))表示用雾节点的私钥SKA解密Enc(PKA,Certa);

步骤1.1.3、自签名证书的验证:雾节点A对解密得到的自签名证书Certa进行审查,即:用设备a的公钥PKa验证Certa的签名是否正确;审查通过后,雾节点A生成设备a的身份属性集:ATTa={atta1,atta2,…,attai,…},其中,ATTa表示设备a所有属性的集合;attai表示设备a的第i个属性,属性以名值对的形式存储,即(att_name,att_value);

步骤1.1.4、设备注册交易的发布:雾节点A在分布式账本tangle中查看IDa是否被注册,若未被注册,雾节点A则用自己的私钥SKA签名该设备IDa、属性集及设备公钥信息,以生成有效期为EXa的注册信息,并将其作为注册交易Treg广播到IOTA网络的分布式账本tangle上,

Treg={IDa,FA,register,PKa,ATTa,EXa1} (2)

其中,σ1=sig(SKA,(IDa,FA,register,PKa,ATTa,EXa)),表示雾节点A用其私钥SKA签名消息{IDa,FA,register,PKa,ATTa,EXa};FA作为雾节点A的标识,表示雾节点A作为设备a的代理节点代替设备a完成注册工作;register作为该交易的一个标签,表示该交易目的是用于设备注册;

步骤1.1.5、雾节点A利用马尔科夫蒙特卡洛tip选择算法选出两个tip交易进行验证,该tip选择算法首先在tangle上选择出权重在[w,2w]之间的交易;然后独立地将N个节点放置在所选择的交易处;最后分别独立地向右随机游走,最先完成游走并到达的两个tip交易就是被选定要去验证的交易;其中每一步游走都选择累计权重较大的交易;

步骤1.1.6、雾节点A首先检查两个tip交易的签名;然后做轻量级的PoW以防止某些参与者恶意发起很多交易从而阻塞整个网络;最后验证与其直接或间接相连的交易是否存在冲突,若存在冲突则重新选择tip交易;

步骤1.1.7、以上步骤1.1.6中的验证全部通过后,通过引用两个tip交易将新交易Treg附加到tangle账本上,雾节点A将其广播到整个IOTA网络中,此时该交易状态为“待确认”,雾节点A只能验证有效交易,若它验证通过的任一个交易被证明是无效的,那么雾节点A发出的交易也将被视为无效,并且这些交易在tip选择阶段也不会被选择,这也帮助保护了网络的安全性;

步骤1.1.8、当添加到tangle中的交易Treg确认置信度达到95%以上时,即全网有95%以上的tips确认了交易Treg时,交易Treg状态变为“完全确认”,此时IOTA中的节点对该交易达成共识,设备a注册成功;

步骤1.1.9、雾节点A将该注册交易对应的设备唯一标识符IDa及交易哈希地址FA,register,PKa,ATTa,EXa1>一起保存至本地,用于设备a注册信息的查询,通过获取雾节点A本地保存的其他参与方可从tangle账本中查找设备a以验证其合法性;由于物联网设备在注册时将设备属性写入了注册交易,并将其记录在了tangle账本上,因此也可通过查询该注册交易的完整信息以获取设备属性,用于后续访问控制策略的评估;

步骤1.1.10、公钥证书的发布:设备a注册成功后,雾节点A将用自己的私钥SKA签名设备a的身份IDa及公钥PKa信息,并将这些信息作为公钥证书Certa′发送给设备a;

Certa′={IDa,PKa,FA,EXa1} (3)

其中,μ1=sig(SKA,(IDa,PKa)),该公钥证书Certa′可用于验证设备a公钥PKa的真实性以及合法性,并且该公钥具有不可否认性;

步骤1.2、设备身份更新:

步骤1.2.1、设备a则生成新的公私钥对PKa′/SKa′,并通过雾节点A将更新交易Tupd广播到IOTA网络的分布式账本tangle上,

Tupd={IDa,FA,update,AATa,PKa,PKa′,EXa,EXa′,σ23} (4)

其中,EXa′为新生成的公钥证书的有效期;FA为雾节点A的标识符;σ2=sig(SKa,(IDa,FA,PKa′,EXa′)),这用于证明设备有权更改密钥;σ3=sig(SKA,(IDa,FA,update,ATTa,PKa′,EXa′)),这用于交易合法性验证;update作为该交易的一个标签,表示该交易目的是用于设备身份更新;

步骤1.2.2、IOTA网络上的节点对该交易达成共识之后,设备身份更新成功,新的身份为{IDa,PKa′,EXa′};

步骤1.2.3、雾节点A将设备唯一标识符IDa与更新的交易哈希地址FA,update,ATTa,PKa,PKa′,EXa,EXa′,σ23>一起保存至本地,用于设备a身份更新信息的查询,同时,雾节点A将设备a新的公钥证书Certa″返回给设备a,其中:

Certa″={IDa,FA,PKa′,EXa′,μ2} (5)

其中,μ2=sig(SKA,(IDa,PKa′)),该证书用于验证设备a新公钥PKa′的真实性以及合法性;之后,若继续使用旧身份参与网络活动将不会被接受;

步骤1.3、设备身份更新:

步骤1.3.1、若检测到设备a频繁地产生恶意行为,管理设备a的雾节点A将撤销交易Trev广播到IOTA网络的分布式账本tangle上,

Trev={IDa,FA,revoke,PKa,ATTa,EXa4} (6)

其中,σ4=sig(SKA,(IDa,FA,revoke,ATTa,PKa,EXa)),这表示雾节点A用其私钥SKA对该撤销信息的签名;revoke作为该交易的一个标签,表示该交易目的是用于设备身份撤销;

步骤1.3.2、IOTA网络上的节点对该交易达成共识之后,设备a身份撤销成功;

步骤1.3.3、雾节点A将设备唯一标识符IDa与该撤销交易的哈希值FA,revoke,PKa,ATTa,EXa4>一起保存至本地,用于设备a身份撤销信息的查询;

步骤1.4、设备相互认证:

步骤1.4.1、设备a即请求者发送询问交易Task到雾节点A;

Task={IDa,IDb5,certa′} (7)

其中,σ5=sig(SKa,(IDa,IDb)),这表示物联网设备a用其私钥对想要通信的两个设备(IDa,IDb)的签名;Certa′={IDa,FA,PKa,EXa1},表示设备a的公钥证书;

步骤1.4.2、雾节点A在收到该询问交易之后,通过以下两个步骤验证该消息确实由设备a发出:

1)验证设备a公钥证书Certa′的签名有效性,以确保设备a公钥PKa的真实性及合法性,

2)使用设备a的公钥PKa验证交易Task的签名,用以证明该询问信息确实由设备a发出,

步骤1.4.3、以上步骤1.4.2中的验证全部通过后,雾节点A通过设备b的标识符IDb从IOTA网络中其它雾节点处检索IDb对应的最新创建的交易哈希值或只有设备b的代理节点雾节点B会返回相应的交易哈希值,若在某一段时间后所有雾节点都没有返回相应的交易哈希值,则说明设备b还未在网络中注册,其身份不合法,设备a则拒绝与其通信;

步骤1.4.4、雾节点A收到雾节点B返回的设备b交易哈希值或后,通过该哈希值在tangle账本中查找相应的交易,若检索到的交易包含{IDb,revoke}字段,则证明设备b的身份已被撤销,于是通知设备a拒绝与设备b进行通信;若检索到的交易包含{IDb,update}字段,则比较设备b公开的公钥是否与更新交易中的公钥PKb′相等,若不相等,则证明该设备还在使用旧身份参与网络活动,于是通知设备a拒绝与设备b进行通信,否则说明设备b身份合法;若检索到的交易包含{IDb,register}字段,则证明设备b已在IOTA网络中注册成功,身份合法、可信,雾节点A通知设备a可以与设备b进行通信;

设备b也可用类似的方法验证设备a,若互相验证通过后,两个设备便在无信任的物联网环境中建立了信任,即可进行安全通信。

下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。

该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于西安理工大学,未经西安理工大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服

本文链接:http://www.vipzhuanli.com/pat/books/202111161079.2/1.html,转载请声明来源钻瓜专利网。

×

专利文献下载

说明:

1、专利原文基于中国国家知识产权局专利说明书;

2、支持发明专利 、实用新型专利、外观设计专利(升级中);

3、专利数据每周两次同步更新,支持Adobe PDF格式;

4、内容包括专利技术的结构示意图流程工艺图技术构造图

5、已全新升级为极速版,下载速度显著提升!欢迎使用!

请您登陆后,进行下载,点击【登陆】 【注册】

关于我们 寻求报道 投稿须知 广告合作 版权声明 网站地图 友情链接 企业标识 联系我们

钻瓜专利网在线咨询

周一至周五 9:00-18:00

咨询在线客服咨询在线客服
tel code back_top