【技术实现步骤摘要】
一种基于区块链的物联网密钥分配及设备认证方法
[0001]本专利技术涉及区块链
,特别涉及一种基于区块链的物联网密钥分配及设备认证方法。
技术介绍
[0002]物联网技术的发展对社会的公共和私人方面都产生了重大影响,给人们的日常生活带来许多好处。但与此同时,物联网技术也带来诸多挑战,其中最重要的是设备间数据交换的安全性问题。例如,在远程医疗物联网应用中,可穿戴和可植入的生物医学传感器可以从患者处收集健康信息,并将其转发给对应医生。由于健康数据是敏感的,第三方可能会以窃取数据为目标来获取经济利益,所以必须防止对这种对传感器进行未经授权和未经认证的控制行为。因此,安全和隐私是物联网中各种技术和应用发展的关键问题。
[0003]在物联网环境中,公钥分发和设备认证仍然是最重要的安全挑战。为了验证物联网设备的真实性,现有的解决方案依赖于由证书颁发机构支持的公钥基础设施,然而基于证书颁发机构的公钥基础设施在单点故障和证书透明度方面存在缺陷。由于物联网设备的处理能力和内存有限,为无数物联网设备中的每一个分发和提供证书是不切实 ...
【技术保护点】
【技术特征摘要】
1.一种基于区块链的物联网密钥分配及设备认证方法,其特征在于,该方法包括以下步骤:步骤1)构建基于区块链的物联网设备自主公钥基础设施系统,以下简称为系统,该系统结构包括物联网设备所有者(IoTDOs)、授权预言机(AO)、去中心化密钥服务器(DKSB)、智能合约、物联网设备和边缘服务器;该系统使用椭圆曲线数字签名算法(ECDSA)为用户生成公私钥对,系统首先确定一个椭圆曲线,椭圆曲线C定义在F
p
上,其中,F
p
是一个有限域,由系统确定,p为一个素数;然后生成一组全局参数(p,a,b,G,n,h)供系统中所有用户共享使用:a,b为椭圆曲线C的参数;G为椭圆曲线C上的一个基点,表示为(xG,yG),xG、yG分别代表G的横、纵坐标;n为G在F
p
中规定的序号;h为余因数,系统为用户生成公私钥对的方法为:
①
选择随机整数SK,SK∈[1,n
‑
1];
②
计算PK=SK*G,其中*表示相乘;该用户的公钥是PK,私钥是SK;步骤2)访问授权:为了访问区块链网络,用户将其身份标识和公钥发送到区块链网络上的授权预言机进行验证,成功验证后,授权预言机调用相应的智能合约函数将新用户的身份标识和公钥的摘要添加到系统中;若验证不成功,则拒绝该用户访问区块链网络;步骤3)物联网设备注册:给定具有标识符为δ1,δ2,...,δ
m
的m个物联网设备列表的用户,所述系统中的物联网设备所有者使用以下算法:(1)选取P∈C,对于每一个δ
i
,i=1,2,...,m,设置以下内容:
①
选取选取为阶为p的乘法群,为阶为p的乘法群,为δ
i
的私钥;
②②
为δ
i
的公钥;(2)计算MerkleTree是一个函数,其根据输入构造一棵Merkle树并将该树的根节点赋值给M
root
,M
root
记为公钥的累积;(3)返回M
root
给用户;通过该算法用户分别得到了这m个物联网设备的一对公钥和私钥以及经过认证的公钥的累积M
root
,用户通过调用智能合约函数addOwnershipProof(ID,M
root
),将M
root
添加到区块链网络中,其中ID表示用户的身份标识;步骤4)身份密钥请求:某物联网设备要向目标物联网设备...
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。