一种基于区块链的工业物联网安全数据共享方法技术

技术编号:37361583 阅读:19 留言:0更新日期:2023-04-27 07:09
本发明专利技术公开了一种基于区块链的工业物联网安全数据共享方法,该方法为:首先数据拥有方计算原始数据哈希值,加密原始数据,并上传至工业物联网云平台,返回数据地址,将对称密钥分割为若干子密钥,并对子密钥进行加密,将加密后的子密钥和元数据上传至区块链系统,创建访问控制智能合约,并部署在区块链上;然后数据请求方调用请求数据智能合约,向区块链系统发起数据请求;接着区块链系统执行访问控制智能合约,判别通过后返回元数据和子密钥;最后数据请求方获得若干子密钥,恢复出解密密钥,向工业物联网云平台请求加密数据,并解密获得原始数据。本发明专利技术避免了单点故障和访问授权权限滥用,提高了工业物联网应用场景中多方数据共享的安全性。数据共享的安全性。数据共享的安全性。

【技术实现步骤摘要】
一种基于区块链的工业物联网安全数据共享方法


[0001]本专利技术涉及信息安全
,特别是一种基于区块链的工业物联网安全数据共享方法。

技术介绍

[0002]随着一系列国家战略的提出和实施,工业物联网成为全球工业体系创新驱动、转型升级的重要推手。在工业领域产业升级逐步推进的今天,产品的生产早已从企业独自制造转为产业供应链的协同制造,因此在产品制造的过程中各组织之间的数据共享是必不可少的。工业物联网将供应链上的众多制造商、供应商、销售商、物流服务商等紧密地连接在一起,共享工业系统中的各种数据,从而实现信息的互联互通、资源的合理配置,最终提高供应链的协同生产效率和智能化水平。
[0003]然而工业物联网中的数据常常包含重要的生产信息、企业机密和用户隐私,由于信任的缺失和对数据安全的担忧,相关参与方不愿参与数据共享。区块链具有去中心化、透明、不可篡改、可溯源等特点,能够在弱信任的环境中创建可信的执行环境,有助于实现工业物联网多个对等主体之间的安全数据共享。
[0004]传统的工业物联网数据共享方法存在以下问题:(1)集中式的访问授权机制:传统方法使用集中式的访问控制方式,容易发生单点故障,并且访问授权集中在一个节点,容易引发权限滥用和信任问题;(2)数据易遭恶意篡改:由于企业的自利性,当出现生产异常需要对生产数据进行追溯时,相关企业为了逃避责任会对数据进行恶意篡改。

技术实现思路

[0005]本专利技术的目的在于提供一种能够避免单点故障和访问授权权限滥用的安全性高的工业物联网应用场景中多方数据共享方法。
[0006]实现本专利技术目的技术解决方案:一种基于区块链的工业物联网安全数据共享方法,包括以下几个步骤:
[0007]步骤1、数据拥有方计算原始数据哈希值,然后使用AES对称加密算法加密原始数据,并将加密数据上传至工业物联网云平台,获得云平台返回的数据地址;
[0008]步骤2、数据拥有方使用Shamir秘密共享技术,将对称密钥分割为若干子密钥,并对子密钥进行加密,将加密后的子密钥和元数据上传至区块链系统;
[0009]步骤3、数据拥有方使用动态累加器技术创建访问控制智能合约,并部署在区块链上;
[0010]步骤4、数据请求方调用请求数据智能合约,向区块链系统发起数据请求;
[0011]步骤5、区块链系统执行访问控制智能合约,判别通过后返回元数据和子密钥;
[0012]步骤6、数据请求方通过访问控制后获得若干子密钥,并恢复出解密密钥;
[0013]步骤7、数据请求方向工业物联网云平台请求加密数据,并解密获得原始数据。
[0014]进一步地,步骤1中所述的数据拥有方计算原始数据哈希值,具体如下:
[0015]哈希值计算方法是SHA

256算法,用于检测数据是否经过篡改,具体来说,是在数据请求方获取原始数据后,重新计算哈希值并与初始哈希值进行对比,若相同则说明数据没有被篡改,若不同则说明数据已经被篡改。
[0016]进一步地,步骤l中的工业物联网云平台,是半可信的第三方云平台。
[0017]进一步地,步骤2中的Shamir秘密共享技术,具体如下:
[0018]一个t

1次多项式,如果获得t个不相同点的值,那么能够计算出此t

1次多项式的所有系数;设{(x1,y1),(x2,y2),...,(x
t
,y
t
)}是二维平面上的点集,由t个节点组成,其中x
i
,1≤i≤t互不相同,由于在二维平面上有且仅有一个确定的t

1次多项式f(x)通过点集中的所有点,因此将需要共享的秘密设置为f(0),从多项式中任取n个不同点x
i
计算出f(x
i
),将{x
i
,f(x
i
)}设定为子秘密,那么n个参与方中的任意t个即可合作计算出常数项参数f(0),即需要共享的秘密;
[0019]Shamir秘密共享所用的插值多项式构造方法如下:
[0020]步骤2.1、选取大素数P,在有限域GF(p)上构造一个t

1次多项式:
[0021]f(x)=c0+c1x+c2x2+

+c
t
‑1x
t
‑1mod P
[0022]则解密密钥设置为key
AES
=c0,其他所有系数{c1,c2,...,c
t
‑1}是t

1个从有限域GF(p)上随机选取的互不相通的数;
[0023]步骤2.2、分割解密密钥:对于n个工业物联网数据共享参与方,选取n个互不相同的整数{x1,x2,...,x
n
}代入f(x)中获得集合{(x1,f(x1)),(x2,f(x2),...,(x
n
,f(x
n
)},则(x
i
,f(x
i
))就是解密密钥分割出的子密钥,这些子密钥分别使用n个参与方的公钥进行加密,然后存储到区块链中;多项式f(x)由数据拥有方单独持有;
[0024]步骤2.3、恢复解密密钥:设n个工业物联网数据共享参与方持有的子密钥为(x
i
,f(x
i
)),其中t个参与方合作重构解密密钥key
AES
,其中t≤n,构造t

1次拉格朗日多项式,通过t

1次多项式的t个值求解多项式,通过构造t

1次拉格朗日插值多项式来完成;t

1次多项式P(x)=c0+c1x+c2x2+

+c
t
‑1x
t
‑1通过二维平面上t个互不相通的插值点(x
i
,f(x
i
)),i=1,2,...t,则P(x)满足P(x
i
)=f(x
i
),i=1,2,...t;对于t个互不相通的插值点x
i
构造插值基函数h
i
(x),1≤i≤t;根据构造要求,对于除了x
i
以外的所有点x1,x2,...,x
i
‑1,x
i+1
,...x
t
均为h
i
(x)的零点,故构造出的满足这些零点要求的多项式为h
i
(x)=c
i
(x

x1)(x

x2)

(x

x
i
‑1)(x

x
i+1
)...(x

x
t
);
[0025]由h
i
(x
i
本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种基于区块链的工业物联网安全数据共享方法,其特征在于,包括以下几个步骤:步骤1、数据拥有方计算原始数据哈希值,然后使用AES对称加密算法加密原始数据,并将加密数据上传至工业物联网云平台,获得云平台返回的数据地址;步骤2、数据拥有方使用Shamir秘密共享技术,将对称密钥分割为若干子密钥,并对子密钥进行加密,将加密后的子密钥和元数据上传至区块链系统;步骤3、数据拥有方使用动态累加器技术创建访问控制智能合约,并部署在区块链上;步骤4、数据请求方调用请求数据智能合约,向区块链系统发起数据请求;步骤5、区块链系统执行访问控制智能合约,判别通过后返回元数据和子密钥;步骤6、数据请求方通过访问控制后获得若干子密钥,并恢复出解密密钥;步骤7、数据请求方向工业物联网云平台请求加密数据,并解密获得原始数据。2.根据权利要求1所述的基于区块链的工业物联网安全数据共享方法,其特征在于,步骤1中所述的数据拥有方计算原始数据哈希值,具体如下:哈希值计算方法是SHA

256算法,用于检测数据是否经过篡改,具体来说,是在数据请求方获取原始数据后,重新计算哈希值并与初始哈希值进行对比,若相同则说明数据没有被篡改,若不同则说明数据已经被篡改。3.根据权利要求1所述的基于区块链的工业物联网安全数据共享方法,其特征在于,步骤1中的工业物联网云平台,是半可信的第三方云平台。4.根据权利要求1所述的基于区块链的工业物联网安全数据共享方法,其特征在于,步骤2中的Shamir秘密共享技术,具体如下:一个t

1次多项式,如果获得t个不相同点的值,那么能够计算出此t

1次多项式的所有系数;设{(x1,y1),(x2,y2),...,(x
t
,y
t
)}是二维平面上的点集,由t个节点组成,其中x
i
,1≤i≤t互不相同,由于在二维平面上有且仅有一个确定的t

1次多项式f(x)通过点集中的所有点,因此将需要共享的秘密设置为f(0),从多项式中任取n个不同点x
i
计算出f(x
i
),将{x
i
,f(x
i
)}设定为子秘密,那么n个参与方中的任意t个即可合作计算出常数项参数f(0),即需要共享的秘密;Shamir秘密共享所用的插值多项式构造方法如下:步骤2.1、选取大素数P,在有限域GF(p)上构造一个t

1次多项式:f(x)=c0+c1x+c2x2+

+c
t
‑1x
t
‑1mod P则解密密钥设置为key
AES
=c0,其他所有系数{c1,c2,...,c
t
‑1}是t

1个从有限域GF(p)上随机选取的互不相通的数;步骤2.2、分割解密密钥:对于n个工业物联网数据共享参与方,选取n个互不相同的整数{x1,x2,...,x
n
}代入f(x)中获得集合{(x1,f(x1)),(x2,f(x2),...,(x
n
,f(x
n
)},则(x
i
,f(x
i
))就是解密密钥分割出的子密钥,这些子密钥分别使用n个参与方的公钥进行加密,然后存储到区块链中;多项式f(x)由数据拥有方单独持有;步骤2.3、恢复解密密钥:设n个工业物联网数据共享参与方持有的子密钥为(x
i
,f(x
i
)),其中t个参与方合作重构解密密钥key
AES
,其中t≤n,构造t

1次拉格朗日多项式,通过t

1次多项式的t个值求解多项式,通过构造t

1次拉格朗日插值多项式来完成;t

1次多项式P(x)=c0+c1x+c2x2+

+c
t
‑1x
t
‑1通过二维平面上t个互不相通的插值点(x
i
,f(x
i
)),i=1,2,...t,则P...

【专利技术属性】
技术研发人员:俞研余丰旭邓芳伟张晗苏铓
申请(专利权)人:南京理工大学
类型:发明
国别省市:

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

1