[发明专利]基于私钥池和Elgamal的抗量子计算签密方法和系统有效
申请号: | 201910032270.3 | 申请日: | 2019-01-14 |
公开(公告)号: | CN109787773B | 公开(公告)日: | 2023-04-14 |
发明(设计)人: | 富尧;钟一民;汪仲祥 | 申请(专利权)人: | 如般量子科技有限公司 |
主分类号: | H04L9/32 | 分类号: | H04L9/32;H04L9/08 |
代理公司: | 杭州君度专利代理事务所(特殊普通合伙) 33240 | 代理人: | 解明铠;刘静静 |
地址: | 312030 浙江*** | 国省代码: | 浙江;33 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 基于 私钥池 elgamal 量子 计算 方法 系统 | ||
1.基于私钥池和Elgamal的抗量子计算签密方法,其特征在于,参与方配有密钥卡,密钥卡内存储有非对称密钥池、公钥指针随机数和私钥,密钥卡内还存储有k池和K池,其中k池中存储己方k值,K池存储所有参与方的K值,且同一方的k值与K值相关,同一方的k值与K值符合如下关系:
Ki=geki mod qe;其中Ki为K值,ki为k值,ge、qe为Elgamal算法的系统参数;
所述抗量子计算签密方法包括在签密方:
获取验密方公钥指针随机数、并利用密钥卡内的非对称密钥池生成验密方的签密公钥和加密公钥;
利用随机数从k池中取k值,该k值结合验密方的签密公钥计算得到第一、第二中间参数;
利用第一中间参数加密原文得到密文;
利用哈希函数作用于原文和第二中间参数得到参数r;
利用验密方的加密公钥和k值生产共享密钥,包括:
ke=ebkimod qe;其中ke为共享密钥,ki为k值,eb为验密方的加密公钥,qe为Elgamal算法的系统参数;
利用k值、参数r和签密方的签密私钥计算得到参数s,再利用共享密钥加密所述参数s得到参数se;
将所述随机数,所述密文,所述参数r以及所述参数se作为签密发送给验密方用以进行验密。
2.如权利要求1所述的基于私钥池和Elgamal的抗量子计算签密方法,其特征在于,所述利用随机数从k池中取k值包括:
用指针函数作用于所述随机数得到k池指针;
利用所述k池指针在k池的相应位置获取k值;
利用k值结合验密方的签密公钥计算得到第一、第二中间参数,具体步骤包括:
依据公式ks=ybkimod ps计算ks的值,其中ki为k值,yb为验密方的签密公钥,ps为签密算法的系统参数;
将ks拆分得到所述第一、第二中间参数。
3.如权利要求1所述的基于私钥池和Elgamal的抗量子计算签密方法,其特征在于,所述利用k值、参数r和签密方的签密私钥计算得到参数s采用如下公式:
s=ki/(r+xa);其中ki为k值,xa为签密方的签密私钥,r为参数r。
4.如权利要求1所述的基于私钥池和Elgamal的抗量子计算签密方法,其特征在于,所述利用k值、参数r和签密方的签密私钥计算得到参数s采用如下公式:
s=ki/(1+xa*r);其中ki为k值,xa为签密方的签密私钥,r为参数r。
5.如权利要求3或4所述的基于私钥池和Elgamal的抗量子计算签密方法,其特征在于,所述抗量子计算签密方法还包括在验密方:
从签密方接收所述随机数,所述密文,所述参数r以及所述参数se;
利用所述随机数从K池中取K值,利用K值,验密方的加密私钥计算得到共享密钥;
利用共享密钥解密所述参数se得到参数s;
利用签密方的签密公钥ya、参数r、s参数和验密方的签密私钥计算得到第一、第二中间参数;
利用第一中间参数解密所述密文得到原文;
用哈希函数作用于所述原文和所述第二中间参数得到参数r;
将己方得到的参数r与来自签密方的参数r进行对比得到相应的验密结果。
6.如权利要求5所述的基于私钥池和Elgamal的抗量子计算签密方法,其特征在于,所述利用签密方的签密公钥、参数r、参数s和验密方的签密私钥计算得到第一、第二中间参数包括:
利用公式ks=(ya*gsr)s*xb mod ps,或ks=(gs*yar)s*xb mod ps计算ks值;其中ya为签密方的签密公钥,gs、ps为签密算法的系统参数,r为参数r,xb为验密方的签密私钥,ya签密方的签密公钥,s为参数s;
将ks拆分得到所述第一、第二中间参数。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于如般量子科技有限公司,未经如般量子科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201910032270.3/1.html,转载请声明来源钻瓜专利网。