首页 专利交易 科技果 科技人才 科技服务 商标交易 会员权益 IP管家助手 需求市场 关于龙图腾
 /  免费注册
到顶部 到底部
清空 搜索

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

申请/专利权人:北京理工大学

申请日:2022-03-30

公开(公告)日:2024-06-18

公开(公告)号:CN114726503B

主分类号:H04L9/06

分类号:H04L9/06;H04L9/08;H04L9/32;H04L9/40;H04L67/1097;H04W4/40

优先权:

专利状态码:有效-授权

法律状态:2024.06.18#授权;2022.07.26#实质审查的生效;2022.07.08#公开

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

主权项:1.一种区块链车联网中的隐私保护数据订阅方法,其特征在于,包括以下步骤:步骤1:系统初始化;订阅服务商首先初始化数据订阅查询系统,生成一系列密钥,包括主密钥、用于产生数字签名的公私钥对,以及两个哈希链;步骤1.1:订阅服务商生成一个主密钥k,和一个用于产生数字签名的公私钥对pk,sk;pk表示公钥,sk表示私钥;步骤1.2:订阅服务商生成两个哈希链U、V,每个哈希链均由L个哈希构成,L代表系统可支持的最大更新次数,由订阅服务商自行设置;步骤1.3:设订阅数据中拟包含的所有主题集合为W,对W中的每个主题w,生成一个哈希链Sw,由L个哈希构成,并将其加入哈希链集合S;步骤1.4:订阅服务商在区块链中部署车载数据订阅查询的智能合约,将pk公开发布到区块链,将k、U、V、S、sk秘密保存;步骤2:订阅服务商更新数据;在完成系统初始化后,订阅服务商定期将自己新产生的数据和对应的主题加密混淆,并发布到区块链上;设当前是订阅服务商的第c次更新,c为一个1到L之间的整数,更新的数据集合为Dc,其中包含n个子集分别对应步骤1中主题集合W的主题w1,w2,…,wn,n代表集合W中的主题个数;步骤2.1:订阅服务商初始化一个更新字典;步骤2.2:对Dc中的每个子集执行以下步骤:步骤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个哈希ua,从哈希链V中找到第b个哈希vb;步骤3.2:从哈希链集合S中找到和主题w相关的哈希链Sw,并从Sw中找到第b个哈希hb;步骤3.3:将ua、vb、hb和主密钥k通过安全信道发送给用户;步骤4:用户订阅查询;在获得由步骤3中订阅服务商发来的订阅密钥后,用户执行订阅查询操作;设用户查询由第p次更新到第q次更新之间主题为w的所有数据,其中订阅查询需满足p<q、p≥a以及q≤b;用户首先生成订阅查询令牌,并发送到区块链网络,智能合约在收到查询令牌后,执行查询操作,向用户返回密文形式的查询结果;步骤4.1:用户使用从订阅服务商中获取的哈希hb,计算b-q次哈希值,得到哈希hq;步骤4.2:用户使用hq和步骤3获取的密钥k,计算头索引;步骤4.3:用户生成查询令牌,包括p、q、hq和步骤4.2中产生的头索引;步骤4.4:用户将查询令牌发送给区块链智能合约;步骤4.5:智能合约在收到用户的查询令牌后,解析令牌得到p、q、hq和头索引,并初始化查询结果集合;步骤4.6:智能合约将当前索引设置为步骤4.5中解析得到的头索引;步骤4.7:智能合约在区块链中查询当前索引对应的值,若值非空,执行步骤4.7.1-4.7.6;否则,执行步骤4.8:步骤4.7.1:将查询到的值解析为四部分,包括更新次数c、异或后的后继索引、异或后的数字签名、密文数据;步骤4.7.2:使用步骤4.3中解析得到的哈希hq,计算q-c次哈希值,得到哈希hc;步骤4.7.3:将从步骤4.7.1中解析得到的异或后的后继索引、步骤4.7.2中计算的哈希hc,与当前索引计算得到的异或密钥进行异或操作,恢复出后继索引;步骤4.7.4:将从步骤4.7.1中解析得到的异或后的数字签名、步骤4.7.2中计算的哈希hc,与当前索引计算得到的异或密钥进行异或操作,恢复出数字签名;步骤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中从订阅服务商中获取的哈希ua,计算c-a次哈希值,得到哈希uc;步骤5.2.2:使用步骤3中从订阅服务商中获取的哈希vb,计算b-c次哈希值,得到哈希vc;步骤5.2.3:使用步骤3中从订阅服务商中获取的哈希hb,计算b-c次哈希值,得到哈希hc;步骤5.2.4:使用步骤5.2.1-5.2.3中得到的uc、vc和hc计算解密密钥;步骤5.2.5:使用步骤5.2.4中得到的解密密钥,解密步骤5.2中解析得到的密文数据,得到解密后的数据;步骤5.2.6:将步骤5.2中解析得到的数字签名加入签名集合,将步骤5.2.5中得到的解密后的数据加入解密数据集合;步骤5.3:使用执行步骤5.2后得到的签名集合与解密数据集合,批量验证数字签名的合法性;若验证通过,则将解密数据集合视作订阅查询得到的查询结果;若不通过,则移除那些导致批量验证不通过的无效签名信息与解密数据信息,将移除无效数据后得到的解密数据集合视作订阅查询得到的查询结果。

全文数据:

权利要求:

百度查询: 北京理工大学 一种区块链车联网中的隐私保护数据订阅方法

免责声明
1、本报告根据公开、合法渠道获得相关数据和信息,力求客观、公正,但并不保证数据的最终完整性和准确性。
2、报告中的分析和结论仅反映本公司于发布本报告当日的职业理解,仅供参考使用,不能作为本公司承担任何法律责任的依据或者凭证。