[发明专利]一种无证书公钥可搜索加密方法和系统有效
申请号: | 202010212306.9 | 申请日: | 2020-03-24 |
公开(公告)号: | CN111464292B | 公开(公告)日: | 2023-04-18 |
发明(设计)人: | 王勇;李磊;马强;管荑;李慧聪;田大伟;耿玉杰;刘勇;林琳;马米米;何德彪;罗敏 | 申请(专利权)人: | 国网山东省电力公司;武汉大学 |
主分类号: | H04L9/08 | 分类号: | H04L9/08;H04L9/06;H04L9/30;H04L9/40 |
代理公司: | 武汉智正诚专利代理事务所(普通合伙) 42278 | 代理人: | 熊远 |
地址: | 250000 山东省*** | 国省代码: | 山东;37 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 证书 公钥可 搜索 加密 方法 系统 | ||
1.一种无证书公钥可搜索加密方法,其特征在于,所述方法包括以下步骤:
步骤10:云服务器获取由密钥生成中心通过安全信道发送的部分公钥TC和部分私钥dC,所述部分公钥TC和所述部分私钥dC由所述密钥生成中心基于所述云服务器的身份信息生成;
步骤20:所述云服务器随机创建一秘密值xC,根据所述秘密值xC生成部分公钥XC,并基于所述部分公钥XC、所述部分公钥TC、所述部分私钥dC、所述秘密值xC和一随机点创建公钥PKC和私钥SKC;
步骤30:发送端获取由所述密钥生成中心通过安全信道发送的部分公钥TS和部分私钥dS,所述部分公钥TS和所述部分私钥dS由所述密钥生成中心基于所述发送端的身份信息生成;
步骤40:所述发送端随机创建一秘密值xS,根据所述秘密值xS生成部分公钥XS,并基于所述部分公钥XS、所述部分公钥TS、所述部分私钥dS和所述秘密值xS创建公钥PKS和私钥SKS;
步骤50:接收端获取由所述密钥生成中心通过安全信道发送的部分公钥TR和部分私钥dR,所述部分公钥TR和所述部分私钥dR由所述密钥生成中心基于所述接收端的身份信息生成;
步骤60:所述接收端随机创建一秘密值xR,并根据所述秘密值xR生成部分公钥XR,并基于所述部分公钥XR、所述部分公钥TR、所述部分私钥dR、所述秘密值xR、多个随机数和基于随机数生成的部分公钥创建公钥PKR和私钥SKR;
步骤70:所述发送端确定关键字w;通过所述云服务器的身份信息确定所述云服务器的公钥PKC;通过所述接收端的身份信息确定所述接收端的公钥PKR;并根据所述关键字w、系统主公钥Ppub、所述公钥PKR的部分公钥XR、部分公钥TR、所述公钥PKC的部分公钥XC、所述部分公钥TC、以及所述私钥SKS对目标数据进行加密,生成密文Cw;将所述密文Cw传输至所述云服务器,其中,所述系统主公钥Ppub由所述密钥生成中心公开;
步骤80:所述接收端通过所述云服务器的身份信息确定所述云服务器的公钥PKC;通过所述发送端的身份信息确定所述发送端的公钥PKS;并基于所述公钥PKC、所述公钥PKS、所述私钥SKR生成所述关键字w的陷门Tw;将所述陷门Tw传输至所述云服务器;
步骤90:所述云服务器通过预设匹配算法将所述密文Cw与陷门Tw进行匹配,并输出匹配结果;
其中,所述步骤70中,所述发送端还执行以下子步骤方法通过对所述关键字w加密来对目标数据进行加密,所述子步骤包括:
子步骤E1:计算β=h6(IDS,IDR,XS,XR,TS,TR,Ppub),
其中,IDR表示所述接收端的身份信息,IDS表示所述发送端的身份信息,αR由单向哈希函数公式αR=h0(IDR,TR)生成;h0(·)、h1(·)和h6(·)表示单向哈希函数;
子步骤E2:计算W=h2(w,ψ),η=h4(W);
子步骤E3:计算βC=h5(IDC,XC,TC,Ppub),
其中,h2(·)、h3(·)、h4(·)和h5(·)表示单向哈希函数;IDC表示所述云服务器的身份信息,αC由单向哈希函数公式αC=h0(IDC,TC)生成;为一随机点,用于表示所述云服务器的公钥PKC中的部分公钥;
子步骤E4:产生一个签名密钥对(ssk,svk),并设置签名公钥c0=svk;
子步骤E5:随机选择两个整数r,
其中,为由1,2,…,p-1组成的整数集合,p为素数;所述秘密值属于集合
子步骤E6:计算中间值C1=gr′;
子步骤E7:计算中间值
子步骤E8:计算中间值
子步骤E9:计算中间值
子步骤E10:计算中间值
子步骤E11:计算签名值σ=Sign(ssk,(C1,C2,C3,C4,C5));
子步骤E12:输出密文Cw=(σ,c0,C1,C2,C3,C4,C5);
其中,G1,G2,GT表示阶为p的循环群;g,分别为群G1和G2的生成元;表示群G2中的元素;gu,表示群G1,G2中元素g和的u次幂;e表示从G1×G2到GT的双线性对映射;sig=(KeyGen,Sign,Verify)表示一个签名方案,计算σ=Sign(·)作为对消息的签名;表示所述接收端的公钥PKR中的部分公钥,表示所述接收端的公钥PKR中的部分公钥。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于国网山东省电力公司;武汉大学,未经国网山东省电力公司;武汉大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202010212306.9/1.html,转载请声明来源钻瓜专利网。