一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种区块链车联网中的隐私保护数据订阅方法

2022-07-10 03:20:05 来源:中国专利 TAG:

技术特征:
1.一种区块链车联网中的隐私保护数据订阅方法,其特征在于,包括以下步骤:步骤1:系统初始化;订阅服务商首先初始化数据订阅查询系统,生成一系列密钥,包括主密钥、用于产生数字签名的公私钥对,以及两个哈希链;步骤2:订阅服务商更新数据;在完成系统初始化后,订阅服务商定期将自己新产生的数据和对应的主题加密混淆,并发布到区块链上;步骤3:订阅服务商向用户分发订阅密钥;在用户进行订阅查询之前,要向订阅服务商发送订阅请求,并向订阅服务商付费;步骤4:用户订阅查询;在获得由步骤3中订阅服务商发来的订阅密钥后,用户执行订阅查询操作;步骤5:用户验证并解密查询结果;在收到由智能合约发来的密文形式的查询结果集合后,用户首先使用订阅密钥解密集合中的数据,之后批量验证数字签名,并移除签名有误的数据,最终恢复出原始数据,即为最终的查询结果。2.如权利要求1所述的一种区块链车联网中的隐私保护数据订阅方法,其特征在于,步骤1包括以下步骤:步骤1.1:订阅服务商生成一个主密钥k,和一个用于产生数字签名的公私钥对(pk,sk);pk表示公钥,sk表示私钥;步骤1.2:订阅服务商生成两个哈希链u、v,每个哈希链均由l个哈希构成,l代表系统可支持的最大更新次数,由订阅服务商自行设置;步骤1.3:设订阅数据中拟包含的所有主题集合为w,对w中的每个主题w,生成一个哈希链s
w
,由l个哈希构成,并将其加入哈希链集合s;步骤1.4:订阅服务商在区块链中部署车载数据订阅查询的智能合约,将pk公开发布到区块链,将k、u、v、s、sk秘密保存;步骤2包括以下步骤:设当前是订阅服务商的第c次更新,c为一个1到l之间的整数,更新的数据集合为d
c
,其中包含n个子集分别对应步骤1中主题集合w的主题w1,w2,...,w
n
,n代表集合w中的主题个数;步骤2.1:订阅服务商初始化一个更新字典;步骤2.2:对d
c
中的每个子集执行以下步骤:步骤2.2.1:使用两条哈希链u、v,和哈希链集合s计算加密密钥;步骤2.2.2:使用主密钥k和两条哈希链u、v,计算头索引;步骤2.2.3:设d是中的第j条数据,对中的每条数据d执行以下步骤:步骤2.2.3.1:若d为中的最后一条数据,且当前更新次数c>1,则利用主密钥k和集合s生成后继索引;否则,随机生成一串比特,作为后继索引;步骤2.2.3.2:得到当前索引;当j=1时,当前索引为步骤2.2.2中产生的头索引;否则,当前索引为第j-1次执行步骤2.2.3.1时产生的后继索引;步骤2.2.3.3:使用步骤2.2.3.2中产生的当前索引与哈希链集合s计算异或密钥,将异或密钥与步骤2.2.3.1中产生的后继索引进行异或操作,得到异或后的后继索引;步骤2.2.3.4:使用私钥sk计算对数据d的签名,将签名和使用哈希链集合s与步骤
2.2.3.2中产生的当前索引计算的密钥进行异或操作,得到异或后的数字签名;步骤2.2.3.5:使用步骤2.2.1中产生的加密密钥对d加密,得到加密后的密文数据;步骤2.2.3.6:将当前的更新次数c、异或后的后继索引、异或后的数字签名以及加密后的密文数据,进行拼接;以步骤2.2.3.2中产生的当前索引作为查询索引作为查询索引,以拼接后的数据所谓查询索引对应的值,构造键值对,并添加到更新字典中;步骤2.3:订阅服务商将更新字典上传到区块链;步骤3包括以下步骤:设用户订阅由第a次更新到第b次更新之间的主题为w的所有数据;订阅服务商在收到用户支付的相应费用后,根据用户的订阅请求,生成并分发订阅密钥;步骤3.1:从哈希链u中找到第a个哈希u
a
,从哈希链v中找到第b个哈希v
b
;步骤3.2:从哈希链集合s中找到和主题w相关的哈希链s
w
,并从s
w
中找到第b个哈希h
b
;步骤3.3:将u
a
、v
b
、h
b
和主密钥k通过安全信道发送给用户;步骤4包括以下步骤:设用户查询由第p次更新到第q次更新之间主题为w的所有数据,其中订阅查询需满足p<q、p≥a以及q≤b;用户首先生成订阅查询令牌,并发送到区块链网络,智能合约在收到查询令牌后,执行查询操作,向用户返回密文形式的查询结果;步骤4.1:用户使用从订阅服务商中获取的哈希h
b
,计算b-q次哈希值,得到哈希h
q
;步骤4.2:用户使用h
q
和步骤3获取的密钥k,计算头索引;步骤4.3:用户生成查询令牌,包括p、q、h
q
和步骤4.2中产生的头索引;步骤4.4:用户将查询令牌发送给区块链智能合约;步骤4.5:智能合约在收到用户的查询令牌后,解析令牌得到p、q、h
q
和头索引,并初始化查询结果集合;步骤4.6:智能合约将当前索引设置为步骤4.5中解析得到的头索引;步骤4.7:智能合约在区块链中查询当前索引对应的值,若值非空,执行步骤4.7.1-4.7.6;否则,执行步骤4.8:步骤4.7.1:将查询到的值解析为四部分,包括更新次数c、异或后的后继索引、异或后的数字签名、密文数据;步骤4.7.2:使用步骤4.3中解析得到的哈希h
q
,计算q-c次哈希值,得到哈希h
c
;步骤4.7.3:将从步骤4.7.1中解析得到的异或后的后继索引、步骤4.7.2中计算的哈希h
c
,与当前索引计算得到的异或密钥进行异或操作,恢复出后继索引;步骤4.7.4:将从步骤4.7.1中解析得到的异或后的数字签名、步骤4.7.2中计算的哈希h
c
,与当前索引计算得到的异或密钥进行异或操作,恢复出数字签名;步骤4.7.5:将从步骤4.7.1中解析得到的更新次数、从步骤4.7.4中得到的数字签名与从步骤4.7.1中解析得到的密文数据进行拼接,加入查询结果集合;步骤4.7.6:将当前索引设置为从步骤4.7.3中得到的后继索引;步骤4.8:智能合约向用户返回查询结果集合;步骤5包括以下步骤:步骤5.1:初始化一个签名集合与一个解密数据集合;步骤5.2:对于查询结果集合中的每个条目,用户将其解析为三部分,包括更新次数c、
数字签名、密文数据,并执行以下步骤:步骤5.2.1:使用步骤3中从订阅服务商中获取的哈希u
a
,计算c-a次哈希值,得到哈希u
c
;步骤5.2.2:使用步骤3中从订阅服务商中获取的哈希v
b
,计算b-c次哈希值,得到哈希v
c
;步骤5.2.3:使用步骤3中从订阅服务商中获取的哈希h
b
,计算b-c次哈希值,得到哈希h
c
;步骤5.2.4:使用步骤5.2.1-5.2.3中得到的u
c
、v
c
和h
c
计算解密密钥;步骤5.2.5:使用步骤5.2.4中得到的解密密钥,解密步骤5.2中解析得到的密文数据,得到解密后的数据;步骤5.2.6:将步骤5.2中解析得到的数字签名加入签名集合,将步骤5.2.5中得到的解密后的数据加入解密数据集合;步骤5.3:使用执行步骤5.2后得到的签名集合与解密数据集合,批量验证数字签名的合法性;若验证通过,则将解密数据集合视作订阅查询得到的查询结果;若不通过,则移除那些导致批量验证不通过的无效签名信息与解密数据信息,将移除无效数据后得到的解密数据集合视作订阅查询得到的查询结果。

技术总结
本发明涉及一种区块链车联网中的隐私保护数据订阅方法,属于区块链及隐私信息保护技术领域。本方法在区块链中存储密文形式的数据与索引,并将查询的主题进行混淆,在保证查询结果正确性的前提下,外部攻击者无法根据链上存储的密文数据推断出明文的内容,也无法推断出用户查询的主题。本方法采用的基于哈希链的订阅密钥管理与分配法,用户可以通过订阅密钥查询订阅期内指定主题的内容,并解密查询结果,用户无法查询和解密在其订阅期和订阅主题以外的内容。用户在解密查询结果后,可以批量认证查询结果的完整性,实现车联网订阅查询结果的高效可验证。果的高效可验证。果的高效可验证。


技术研发人员:祝烈煌 张璨 徐畅 丁瑶玲
受保护的技术使用者:北京理工大学
技术研发日:2022.03.30
技术公布日:2022/7/8
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献