(19)国家知识产权局
(12)发明 专利申请
(10)申请公布号
(43)申请公布日
(21)申请 号 202210512310.6
(22)申请日 2022.05.11
(71)申请人 西安电子科技大 学
地址 710071 陕西省西安市太白南路2号
申请人 西安电子科技大 学广州研究院
顺丰科技有限公司
(72)发明人 刘景伟 姜威阳 孙蓉 裴庆祺
陈新江 吕寒冰 陈晓文 任亚坤
唐俊峰
(74)专利代理 机构 陕西电子 工业专利中心
61205
专利代理师 陈宏社 王品华
(51)Int.Cl.
H04L 9/08(2006.01)
H04L 9/30(2006.01)H04L 9/32(2006.01)
(54)发明名称
基于联盟链的云中物联网数据共享方法
(57)摘要
本发明提出了一种基于联盟链的云中物联
网数据共享方法, 实现步骤是: 1)初始化数据共
享系统; 2)数据拥有用户获取伪身份; 3)数据拥
有用户加密数据; 4)云服务器存储数据; 5)数据
拥有用户上传数据检索信息; 6)数据访问用户申
请访问数据; 7)数据拥有用户授权数据访问用户
访问数据; 8)数据访问用户获得数据。 本发明中
数据拥有用户的不同数据均使用自己的公钥加
密, 通过代理重加密算法对数据进行访问控制,
避免了复杂的密钥管理问题, 有效降低了存储开
销, 同时, 每一个数据拥有用户都会获得特定的
伪身份, 然后在数据共享时利用伪身份隐藏自己
的真实身份信息, 有效防止了数据拥有用户的身
份隐私泄 露, 进一步提高了数据共享的安全性。
权利要求书4页 说明书7页 附图1页
CN 114866236 A
2022.08.05
CN 114866236 A
1.一种基于联盟链的云中物联网数据共享方法, 其特 征在于, 包括如下步骤:
(1)初始化数据共享系统:
(1a)初始化包括联盟链管理节点MN、 L个数据拥有用户UO={UOl|1≤l≤L}、 M个数据访
问用户UA={UAm|1≤m≤M}、 N个联盟链共识节点CN={CNn|1≤n≤N }、 云服务器CS的数据共
享系统, 每一个数据拥有用户UOl拥有I条数据
其中, L≥1, UOl表示第l个
数据拥有用户, M≥1, UAm表示第m个数据访问用户, N≥1, CNn表示第n个联盟链共识节点, I≥
1,
表示第i条 数据;
(1b)联盟链管理节点MN根据 安全参数λ生成公共参数Param并公开, 然后在联盟链上部
署恶意用户身份追踪智能合约, 再然后从
选取一个随机数作为自己的私钥msk并保存, 根
据msk计算公钥pkM=gmsk并公开;
(1c)每个联盟链共识节点CNn从
选取一个随机数xn作为私钥skn并保存, 根据skn计算
公钥
并公开, 再根据Leader选取规则在联盟链共识节点集合CN={CNn|1≤n≤N}
中选举一个Leader, 然后Leader从G1选择一个随机数gz并公开;
(1d)每个数据拥有用户UOl、 每个数据访问用户UAm、 云服务器CS分别从
选取中选取一
个随机数xl、 xm、 xc作为私钥skl、 skm、 skc并保存, 然后分别计算公钥
并公开;
(2)数据拥有用户获取伪身份:
(2a)每一个数据拥 有用户UOl组织自己的信息{Name,ID,E ‑mail,Phone}并构造真实身
份信息Infol=I1||I2||I3||I4, 其中, I1、 I2、 I3、 I4分别为四个身份信息字段的字符串的二进
制字表示;
(2b)每一个数据拥有用户UOl从
中选取t个随机数a0,a1,a2,…,ak,…,at‑1并设秘密值
s=a0, 其中, ak表示第k个随机数, 然后构造 秘密S=gs, 然后计算真实身份保护 信息
然后构造一个t ‑1次多项式
然后计算份额{fl(1),fl
(2),…,fl(n),…,fl(N)}, 其中, fl(n)表示第n个份额, 然后计算每一个多项式系数ak的承
诺
和每一个 份额fl(n)的承诺
密文
验证辅助信息
最后广播 πl、
(2c)每个联盟链共识节点CNn根据多项式系数承诺
计算
然后验证
和
是否成立, 若是, 接受并保存属于自己的份额密文
并且向联盟链管理节点MN发送确认消息
否则, 终止注 册;
(2d)联盟链管理节点MN根据每个联盟链共识节点CNn的确认消息αn计算α =α1+α2+…+αN,
然后从
选取一个随机数β , 再然后为每一个数据拥有用户UOl计算伪身份
权 利 要 求 书 1/4 页
2
CN 114866236 A
2哈希值δ=H3(PIDl)和签名σ =α( β +H2( πl))+δ.msk, 并将消息组{PIDl, σ, δ}发送给UOl, 最后
发起上链请求将消息组{ πl,PIDl}上链;
(2e)每一个数据拥有用户UOl计算哈希值 δ*=H3(PIDl)并判断δ*= δ和
是否同时成立, 若是, UOl接收PIDl为自己的伪身份, 否则, 重新执 行步骤(2);
(3)数据拥有用户加密数据:
每一个数据拥有用户UOl从
中选取一个随机数rl, 根据当前Leader公开的随机数gz加
密数据
获得数据密文
然后计算哈希值
和签名
将消
息组
发送给云服 务器CS;
(4)云服务器存储数据:
云服务器CS计算
然后判断等式
和
是否成
立, 若是, 存储数据密文
和哈希值
生成数据密文
的下载地址
并发送给UOl, 否则,
丢弃密文;
(5)数据拥有用户上传数据检索信息:
每一个数据拥有用户UOl根据下载地址
每一条数据
的摘要信息
伪身份
PIDl和当前Leader公开的随机数gz构造
的检索信息
并发起上
链请求, 将
上链;
(6)数据访问用户申请访问数据:
每一个数据访问用户UAm在链上检索到想要访问 的数据
的检索信息
根据
中的
gz和自己的私钥xm计算
然后构造申请消息
并根据
中的伪身份PIDl
发送给数据拥有用户UOl;
(7)数据拥有用户授权数据访问用户访问数据:
(7a)数据拥有用户UOl判断数据访问用户UAm的身份, 若同意数据访问用户UAm访问数
据, 根据申请消息中的
加密数据时选择的随机数rl和自己的私钥xl计算重加密密钥
rkl→m, 然后构造消息组
并通过安全信道发送给云服务器CS, 否则, 忽略数据访问
用户UAm的申请消息;
(7b)云服 务器CS根据rkl→m计算解密辅助信息Rl→m, 将Rl→m作为数据密文
的一部分;
(8)数据访问用户获得 数据:
数据访问用户UAm通过下载地址
下载数据密文
哈希值h、 解密辅助信息Rl→m, 然后
解密数据密文
获得数据
然后判断数据
是否合法, 若是, 接受数据
否则申请联
盟链共识 节点追踪数据拥有用户UOl的真实身份。
2.根据权利要求1所述基于联盟链的云中物联网数据共享方法, 其特征在于, 步骤(1b)
中所述的根据安全参数 λ生成公共参数Param, 实现步骤为:
联盟链管理节点MN根据安全参数λ生成的大素数 q生成两个q阶的乘法循环群G1、 G2和群权 利 要 求 书 2/4 页
3
CN 114866236 A
3
专利 基于联盟链的云中物联网数据共享方法
文档预览
中文文档
13 页
50 下载
1000 浏览
0 评论
309 收藏
3.0分
温馨提示:本文档共13页,可预览 3 页,如浏览全部内容或当前文档出现乱码,可开通会员下载原始文档
本文档由 人生无常 于 2024-03-18 08:20:29上传分享