说明:收录25万 73个行业的国家标准 支持批量下载
(19)国家知识产权局 (12)发明 专利申请 (10)申请公布号 (43)申请公布日 (21)申请 号 202210374329.9 (22)申请日 2022.04.11 (71)申请人 江苏大学 地址 212013 江苏省镇江市京口区学府路 301号 (72)发明人 谢晴晴 杨念民 郑嘉泓 冯霞  李长阔  (74)专利代理 机构 南京华恒专利代理事务所 (普通合伙) 32335 专利代理师 宋方园 (51)Int.Cl. H04L 9/40(2022.01) H04L 9/32(2006.01) H04L 9/08(2006.01) H04L 67/10(2022.01)G06F 21/62(2013.01) G06F 21/64(2013.01) (54)发明名称 基于区块链的数据搜索细粒度访问控制方 法及系统 (57)摘要 本发明公开一种基于区块链的数据搜索细 粒度访问控制方法, 包括系统初始化、 密钥生成、 加密阶段、 上传数据、 查询密文、 下载数据和解密 数据。 本发明将区块链系统部署于雾计算节点, 让雾节点承担主要计算和存储任务, 本发明还通 过密文策略属性基加密算法的部分加解密计算 任务外包给雾节点, 以减少用户端的计算负担; 再次, 本发 明利用智能合约来实现密文之上的搜 索操作, 预防了恶意服务器的非法操作, 实现了 高效、 安全且透明可信的可搜索类数据分享功 能。 权利要求书4页 说明书9页 附图2页 CN 114826703 A 2022.07.29 CN 114826703 A 1.一种基于区块链的数据搜索 细粒度访问控制方法, 其特 征在于: 包括以下步骤: S1、 系统初始化 授权中心TA根据安全参数1λ和系统属性集L, 输出系统公钥PK, 主密钥MSK和搜索密钥 QK; S2、 密钥生成 用户通过非对称加密算法生成用于申请注册的公钥pku和私钥sku, 并向授权中心TA发 送身份属性集合S和pku以请求属性私钥; 授权中心TA根据用户身份属性集合S和系统主密 钥MSK, 为用户生 成属性私钥<skm,ska>, 并将属性私钥<skm,ska> 发送给用户; skm为属性主 私钥, ska为属性副私钥; 此处用户包括数据拥有者和数据使用者; S3、 加密阶段 数据拥有者先使用搜索密钥QK对 关键词集kwsF加密生成关键词 密文集CkF, 然后使用其 对称密钥fkey将文件F加密生成数据密文CfF和相应数据密文的哈希值HCfF; 数据拥用者向 雾节点FP发送计算访问策略密文的请求; 雾节点FP收到计算请求后, 为数据拥有者生成访 问策略密文Cp; 数据拥有者接收到访问策 略密文Cp后, 对对称密钥fkey进行加密生成文件 密钥密文Cfkfkey; S4、 上传数据 数据拥有者构造上传数据请求<CkF,CfF,HCfF,Cfkfkey>发送给雾节点FP; 雾节点FP将数 据密文CfF上传至星 际文件系统IPFS中并获得对应的文件存储地址FaddrF, 接着将<CkF, FaddrF,HCfF,Cfkfkey>发送给数据链智能合约SCdc; SCdc构造交易<FaddrF,HCfF,Cfkfkey>写 入区块链中并获得交易号TidF, 然后将当前文件F的关键词密文集CkF和其在区块链上的交 易号TidF加密存储在查询集CQM; 此处, Fad drF表示数据密文CfF在IPFS中的存 储地址, H CfF表示数据密文CfF的哈希值; S5、 查询密文 当数据使用者要查询关键词集为kws ′的文件时, 数据使用者使用搜索密钥QK加密查询 关键词集kw s′获得查询关键词密文集Ckkws′, 然后将搜索请求<Ckkws′, pku>发送给雾节点; 雾 节点一旦收到用户的搜索请求, 首先向授权中心TA查询获取pku对应的属性副私钥ska, 然 后把关键词密文集Ckkws′发送给数据链智能合约SCdc; SCdc在查询集CQM中查找以关键词 密 文为键的集合TidSetkw; 若未找到, 则说明不存在以kw ′为关键词的数据文件; 若找到, 返回 交易号TidF, 并获取交易信息<FaddrF, HCfF, Cfkfkey>; 数据链智能合约检索完成后, 将搜索 结果CResultkws′按照文件出现频率的高低排序并发送给雾节点; CResultkws′={<FaddrF1, HCfF1, Cfkfkey1>, <FaddrF2, HCfF2, Cfkfkey2>, ..., <FaddrFn, HCfFn, Cfkfkeyn>}; 其中FaddrFn表示数据密文C fFn在IPFS中的存储地址, HC fFn表示数据密文 CfFn的哈希值, Cfkfkeyn表示与数据密文CfFn相对应的文件密钥密文, CfFn表示与搜索关键词 相匹配的第n个数据密文; S6、 下载数据, 即雾节点FP依次遍历搜索结果CResultkws′; 并构造下载密文信息 MCResultkws′, 发送给数据使用者; MCResultkws′={<CpT1, C11, C21, CfF1>, <CpT2, C12, C22, CfF2>, ..., <CpTn, C1n, C2n, CfFn>}; 其中CpTn表示数据密文CfFn所对应的中间密钥密文, C1n表示与数据密文CfFn所对应的文 件密钥密文Cfkfkeyn的第一分量, C2n表示与数据密文CfFn所对应的文件密钥密文Cfkfkeyn的权 利 要 求 书 1/4 页 2 CN 114826703 A 2第二分量, CfFn表示返回的第n个数据密文; S7、 解密数据 数据使用者使用属性主私钥skm解密密文密钥集{CpTi, C1i, C2i}得到明文的对称密钥集 {fkeyi}, 根据对称密钥集{fkeyi}解密返回的数据密文集{CfFi}得到明文集{Fi}; 2.根据权利要求1所述的基于区块链的数据搜索细粒度访问控制方法, 其特征在于: 所 述授权中心TA中相关参数构如下: 主密钥MSK={α, β, {ri|li∈L}}; 搜索密钥QK=F1({0, 1}λ, l1||l2||…||ln); 系统公钥 其中G0和GT是p阶乘法循环群, g是群G0的生成元, e是双线性映射: G0*G0→GT, h是G0的元 素; α, β,ri为随机数且都∈Zp; L={l1,l2,l3,…ln}是系统属性 集; F1表示伪随机化算法1: F1:{0,1}λ×{0,1}λ→{0,1}λ, F2表示伪随机算法2: F2:{0,1}λ× {0,1}λ→{0,1}*, 其中{0,1}λ是随机生成的字符串; 所述用户生成属性私钥<skm,ska>中, skm表示属性主私钥: skm=g( α +γ)β, ska表示属性 副私钥: γ, ε∈ZP为随机数, Sj为S中 的一个属性, D1表示属性副私钥第一分量, D2表示属性副私钥第二分量, Dj表示属性副私钥 第三分量。 3.根据权利要求2所述的基于区块链的数据搜索细粒度访问控制方法, 其特征在于: 所 述步骤S3中具体过程 为: S3 .1、 数据拥有者使用搜索密钥QK对关键词集kwsF加密生成关键词密文集 其中kw表示关键词集中 的一关键词, Kkw表示关键词 密文, 表示关键词密文分量1: 表示关键词密文分量2: S3.2、 数据拥有者基于AES算法使用对称密钥fkey来加密数据F得到密文CfF=EncAES (fkey,F), 并根据单向抗碰撞哈希函数计算密文哈希值 为HCfF=H(CfF); S3.3、 雾节点计算访问策略密文 雾节点首先为访问策略树T中的每个节点x选择一个阶数为dx的多项式qx, 其中阶数dx =kx‑1, 1≤kx≤numx是节点x的门限值, numx表示节点x的子节点数量; 多项式qx的生成方式 自上而下: 从根节点R出发, 选择一个随机数s∈Zp并设置qR(0)=s, 随机选择另外dR个点以 完整定义多项式qR; 对于其他节点x, 设置qx(0)=qparent(x)(index(x))并同样随机选择另外 dx个点来确定多项式qx, 其中parent(x)表示节点x的父节点, index(x)表示节点x的索引值; 最后, 生成的访问策略密文为 T表示 访问策略树, X表示访问策略树的叶节点集合, C ′3表示访问策略密文第一分量, C ′4表示访问权 利 要 求 书 2/4 页 3 CN 114826703 A 3

PDF文档 专利 基于区块链的数据搜索细粒度访问控制方法及系统

文档预览
中文文档 16 页 50 下载 1000 浏览 0 评论 0 收藏 3.0分
温馨提示:本文档共16页,可预览 3 页,如浏览全部内容或当前文档出现乱码,可开通会员下载原始文档
专利 基于区块链的数据搜索细粒度访问控制方法及系统 第 1 页 专利 基于区块链的数据搜索细粒度访问控制方法及系统 第 2 页 专利 基于区块链的数据搜索细粒度访问控制方法及系统 第 3 页
下载文档到电脑,方便使用
本文档由 SC 于 2024-02-07 12:39:41上传分享
站内资源均来自网友分享或网络收集整理,若无意中侵犯到您的权利,敬请联系我们微信(点击查看客服),我们将及时删除相关资源。