基于私钥池和Elgamal的抗量子计算签密方法和系统技术方案

技术编号:21166518 阅读:30 留言:0更新日期:2019-05-22 09:31
本发明专利技术涉及基于私钥池和Elgamal的抗量子计算签密方法和系统,参与方配有密钥卡,密钥卡内存储有非对称密钥池、公钥指针随机数和私钥,密钥卡内还存储有k池和K池,其中k池中存储己方k值,K池存储所有参与方的K值,且同一方的k值与K值相关。本发明专利技术中使用密钥卡对密钥池和Elgamal算法对签密过程中的重要数据进行加密。密钥卡是独立的硬件隔离设备,被恶意软件或恶意操作窃取密钥可能性大大降低。由于量子计算机无法获得签密数据,或通过加密签密数据计算出用户私钥,因此该签密方案不容易被量子计算机破解。

Anti-quantum Computing Signcryption Method and System Based on Private Key Pool and Elgamal

The present invention relates to an anti-quantum computation signcryption method and system based on private key pool and Elgamal. Participants are equipped with a key card, which stores asymmetric key pool, random number of public key pointers and private key. There are also K pools and K pools in the key card, where k pools store their own K values, K pools store K values of all participants, and K values of the same party are related to K values. The key card is used to encrypt the key pool and Elgamal algorithm to encrypt the important data in the signcryption process. The key card is an independent hardware isolation device, and the possibility of stealing key by malicious software or malicious operations is greatly reduced. Because the quantum computer can not obtain the signcryption data or calculate the user's private key by encrypting the signcryption data, the signcryption scheme is not easy to be cracked by the quantum computer.

【技术实现步骤摘要】
基于私钥池和Elgamal的抗量子计算签密方法和系统
本专利技术涉及安通信领域,尤其是一种使用密钥卡技术手段实现抗量子计算的签密方法。
技术介绍
密码学是信息安全学科的核心。密码学中用来提供信息安全服务的密码学原语称为密码系统(cryptosystem)。密码系统提供的基本安全服务有机密性(condentiality)、完整性(Integrity)、认证(Authentication)和不可否认性(Non—repudiation)。机密性是指信息只为授权用户使用,不能泄露给未授权的用户。完整性是指信息在传输或存储过程中,不能被偶然或蓄意地删除、修改、伪造、重放、插入等破坏和丢失的特性。认证是确保通信方身份是真实的。确认一个实体的身份称为实体认证,确认一个信息的来源称为消息认证。不可否认性是防止通信方对以前的许诺或者行为的否认。在密码学中,机密性可以通过一种基本的密码原语称为加密(Encryption)来取得。加密可以看成是一种变换,这种变换将可读的明文信息变换成不可读的密文信息。数字签名(Digitalsignature)也是一种基本的密码原语,它可以取得完整性、认证和不可否认性。数字签名可以看成是对数据所做的一种密码变换,这种密码变换可以使数据的接收者确认签名者的身份和数据的完整性。如果我们需要同时取得机密性、完整性、认证和不可否认性,一个传统的方法是先对消息进行签名,然后再进行加密,称为“先签名后加密”方法。这种方法的计算量和通信成本是加密和签名代价之和,效率较低。1997年,zheng提出了一种新的密码原语来同时取得这四种安全性质,他称这一密码原语为数字签密(Digitalsigncryption)。比起传统的“先签名后加密”,签密具有以下优点:1)签密在计算量和通信成本上都要低于传统的“先签名后加密”方法;2)签密允许并行计算一些昂贵的密码操作;3)合理设计的签密方案可以取得更高的安全水平;4)签密可以简化同时需要保密和认证的密码协议的设计。对于当前推荐的最小安全参数(模数=512比特),签密比使用基于离散对数困难问题的“先签名后加密”方法节省了58%的计算量和70%的通信成本。对于比较大的安全参数(模数=1536比特),签密比使用RSA密码体制的“先签名后加密”方法节省了50%的计算量和9l%的通信成本。成本上的节省随着安全参数的增大而增大。随着密码分析理论与技术的进步,将来我们的密码体制需要更大的安全参数,签密体制将更具有实际意义。基于以上原因,许多密码学研究者对签密的工作原理进行了深入研究,设计出了许多高效且安全的签密方案。自zheng提出签密原语以来,签密已得到了广泛的应用,如电子支付、移动代理安全、密钥管理和AdHoc网络路由协议等。自1997年以来,几个有效的签密方案相继被提出。根据公钥认证方法,我们可以将签密体制分为基于PKI的签密体制、基于身份的签密体制和无证书签密体制。如果一个签密方案与一个具有特殊性质的签名或者加密方案相结合,就可以设计出具有特殊性质的签密方案,比如签密与代理签名相结合,称为代理签密;签密与环签名相结合,称为环签密;签密与广播加密相结合,称为广播加密。如果一个签密是利用混合加密的思想来构造,我们称为混合签密。混合签密将整个算法分成了独立的两块,一块是签密密钥封装机制(KeyEncapsulationMechanism,KEM),另一块是数据封装机制(DataEncapsulationMechanism,DEM)。这两块通过某种方式相结合就构造出完整的签密方案。因此,我们又可以将签密体制分为基本签密体制、具有特殊性质的签密体制和混合签密体制。在密码学中,ElGamal加密算法是一个基于迪菲-赫尔曼密钥交换的非对称加密算法。它在1985年由塔希尔·盖莫尔提出。GnuPG和PGP等很多密码学系统中都应用到了ElGamal算法。ElGamal加密算法可以定义在任何循环群G上。它的安全性取决于G上的离散对数难题。ElGamal加密系统通常应用在混合加密系统中。例如:用对称加密体制来加密消息,然后利用ElGamal加密算法传递密钥。这是因为在同等安全等级下,ElGamal加密算法作为一种非对称密码学系统,通常比对称加密体制要慢。对称加密算法的密钥和要传递的消息相比通常要短得多,所以相比之下使用ElGamal加密密钥然后用对称加密来加密任意长度的消息,这样要更快一些。量子计算机在密码破解上有着巨大潜力。当今主流的非对称(公钥)加密算法,如RSA加密算法,大多数都是基于大整数的因式分解或者有限域上的离散对数的计算这两个数学难题。它们的破解难度也就依赖于解决这些问题的效率。传统计算机上,要求解这两个数学难题,花费时间为指数时间(即破解时间随着公钥长度的增长以指数级增长),这在实际应用中是无法接受的。而为量子计算机量身定做的秀尔算法可以在多项式时间内(即破解时间随着公钥长度的增长以k次方的速度增长,其中k为与公钥长度无关的常数)进行整数因式分解或者离散对数计算,从而为RSA、离散对数加密算法的破解提供可能。现有技术存在的问题:现有技术中,由于量子计算机的强大计算能力可以计算破解签密,因此基于公私钥的签密方法并不够安全。
技术实现思路
本专利技术提供一种安全性更高的抗量子计算签密方法。本专利技术基于私钥池和Elgamal的抗量子计算签密方法,参与方配有密钥卡,密钥卡内存储有非对称密钥池、公钥指针随机数和私钥,密钥卡内还存储有k池和K池,其中k池中存储己方k值,K池存储所有参与方的K值,且同一方的k值与K值相关;所述抗量子计算签密方法包括在签密方:获取验密方公钥指针随机数、并利用密钥卡内的非对称密钥池验密方的签密公钥和加密公钥;利用随机数从k池中取k值,该k值结合验密方的签密公钥计算得到第一、第二中间参数;利用第一中间参数加密原文得到密文;利用哈希函数作用于原文和第二中间参数得到参数r;利用验密方的加密公钥和k值生产共享密钥;利用k值、参数r和签密方的签密私钥计算得到参数s,再利用共享密钥加密所述参数s得到参数se;将所述随机数,所述密文,所述参数r以及所述参数se作为签密发送给验密方用以进行验密。可选的,同一方的k值与K值符合如下关系:Ki=gekimodqe;其中Ki为K值,ki为k值,ge、qe为Elgamal算法的系统参数。3、如权利要求2所述的基于私钥池和Elgamal的抗量子计算签密方法,其特征在于,所述利用随机数从k池中取k值包括:用指针函数作用于所述随机数得到k池指针;利用所述k池指针在k池的相应位置获取k值。可选的,利用k值结合验密方的签密公钥计算得到第一、第二中间参数,具体步骤包括:依据公式ks=ybkimodps计算ks的值,其中ki为k值,yb为验密方的签密公钥,ps为签密算法的系统参数;将ks拆分得到所述第一、第二中间参数。可选的,所述利用验密方的加密公钥和k值生产共享密钥包括:ke=ebkimodqe;其中ke为共享密钥,ki为k值,eb为验密方的加密公钥,qe为Elgamal算法的系统参数。可选的,所述利用k值、参数r和签密方的签密私钥计算得到参数s采用如下公式:s=ki/(r+xa);其中ki为k值,xa为签密方的签密私钥,r为参数r。可选的,所述利用本文档来自技高网
...

【技术保护点】
1.基于私钥池和Elgamal的抗量子计算签密方法,其特征在于,参与方配有密钥卡,密钥卡内存储有非对称密钥池、公钥指针随机数和私钥,密钥卡内还存储有k池和K池,其中k池中存储己方k值,K池存储所有参与方的K值,且同一方的k值与K值相关;所述抗量子计算签密方法包括在签密方:获取验密方公钥指针随机数、并利用密钥卡内的非对称密钥池验密方的签密公钥和加密公钥;利用随机数从k池中取k值,该k值结合验密方的签密公钥计算得到第一、第二中间参数;利用第一中间参数加密原文得到密文;利用哈希函数作用于原文和第二中间参数得到参数r;利用验密方的加密公钥和k值生产共享密钥;利用k值、参数r和签密方的签密私钥计算得到参数s,再利用共享密钥加密所述参数s得到参数se;将所述随机数,所述密文,所述参数r以及所述参数se作为签密发送给验密方用以进行验密。

【技术特征摘要】
1.基于私钥池和Elgamal的抗量子计算签密方法,其特征在于,参与方配有密钥卡,密钥卡内存储有非对称密钥池、公钥指针随机数和私钥,密钥卡内还存储有k池和K池,其中k池中存储己方k值,K池存储所有参与方的K值,且同一方的k值与K值相关;所述抗量子计算签密方法包括在签密方:获取验密方公钥指针随机数、并利用密钥卡内的非对称密钥池验密方的签密公钥和加密公钥;利用随机数从k池中取k值,该k值结合验密方的签密公钥计算得到第一、第二中间参数;利用第一中间参数加密原文得到密文;利用哈希函数作用于原文和第二中间参数得到参数r;利用验密方的加密公钥和k值生产共享密钥;利用k值、参数r和签密方的签密私钥计算得到参数s,再利用共享密钥加密所述参数s得到参数se;将所述随机数,所述密文,所述参数r以及所述参数se作为签密发送给验密方用以进行验密。2.如权利要求1所述的基于私钥池和Elgamal的抗量子计算签密方法,其特征在于,同一方的k值与K值符合如下关系:Ki=gekimodqe;其中Ki为K值,ki为k值,ge、qe为Elgamal算法的系统参数。3.如权利要求2所述的基于私钥池和Elgamal的抗量子计算签密方法,其特征在于,所述利用随机数从k池中取k值包括:用指针函数作用于所述随机数得到k池指针;利用所述k池指针在k池的相应位置获取k值。利用k值结合验密方的签密公钥计算得到第一、第二中间参数,具体步骤包括:依据公式ks=ybkimodps计算ks的值,其中ki为k值,yb为验密方的签密公钥,ps为签密算法的系统参数;将ks拆分得到所述第一、第二中间参数。4.如权利要求3所述的基于私钥池和Elgamal的抗量子计算签密方法,其特征在于,所述利用验密方的加密公钥和k值生产共享密钥包括:ke=ebkimodqe;其中ke为共享密钥,ki为k值,eb为验密方的加密公钥,qe为Elgamal算法的系统参数。5.如权利要求4所述的基于私钥池和Elgamal的抗量子计算签密方法,其特征在于,所述利用k值、参数r和签密方的签密私钥计算得到参数s采用如下公式:s=ki/(r+xa);其中ki为k值,xa为签密方的签密私钥,r为参数r。6.如权利要求4所述的基于私钥池和Elgamal的抗量子计算签密方法,其特征在于,所述利用k值、参数r和签密方的签密私钥计算得到参数s采用如下公式:s=ki/(1+xa*r);其中ki为k值,xa为签密方的签密私钥,r为参数r。7.如权利要求5或6所述的基于私钥池和Elgama...

【专利技术属性】
技术研发人员:富尧钟一民汪仲祥
申请(专利权)人:如般量子科技有限公司
类型:发明
国别省市:浙江,33

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1