加密、解密、电子签章、验证签章的方法及装置制造方法及图纸

技术编号:15867347 阅读:86 留言:0更新日期:2017-07-23 16:41
本公开提供了一种加密方法、解密方法、电子签章方法、验证签章方法及对应的装置。所述加密方法利用解密者的公钥证明因子进行加密,其中解密者的公钥证明因子等于所述解密者的私钥与所述预设椭圆曲线的基点B的乘积。所述解密方法获取利用解密者的公钥证明因子加密过的数据,并利用解密者的私钥进行解密,同时验证公钥的有效性。所述验证签章方法生成签署者的公钥证明因子,并利用该签署者的公钥证明因子使得验证电子签章的真实性和公钥的有效性可以同时进行。

Method and device for encrypting, decrypting, electronic signature and verifying signature

The present invention provides an encryption method, a decryption method, an electronic signature method, a verification signature method, and a corresponding device. The encryption method encrypts the public key authentication factor of the decrypted person, in which the decryption public key authentication factor is equal to the product of the decryption private key and the base line B of the predetermined elliptic curve. The decryption method obtains the encrypted data by using the public key authentication factor of the decrypted person, and decrypts the secret key of the decrypted person, and verifies the validity of the public key at the same time. The authentication signature method generates a signer's public key authentication factor, and uses the signer's public key authentication factor to make the authenticity of the authentication electronic signature and the validity of the public key at the same time.

【技术实现步骤摘要】
加密、解密、电子签章、验证签章的方法及装置
本公开总体上涉及计算机安全
,尤其涉及一种加密、解密和电子签章、验证签章的方法以及相应的装置。
技术介绍
目前的公开金钥密码算法主要有RSA公钥加密算法(简称RSA算法)和ECC椭圆曲线密码算法(简称ECC算法)。但是,现有的密码算法,无论是RSA算法还是ECC算法,在解密或者验证签章时都需要较多运算量的凭证基础公钥密码系统,即需要给解密者或者验证签章者在发送文件的同时还要发送验证公钥有效性的凭证,这样增加了系统运算量以及信息传输和维护风险。此外,ECC算法系统160位密钥长度的安全性,同等于RSA算法系统的1024位密钥长度,极大的降低了运算量,大大降低了系统维护管理的成本。
技术实现思路
本公开的一个方面提供了一种加密方法,包括:利用第一随机整数对预设椭圆曲线上的基点B随机加密生成第一加密参数C1,利用公钥证明因子以及所述第一随机整数对明文数据M加密,生成第二加密参数C2,提供所述第一加密参数C1和第二加密参数C2给解密者。其中,所述公钥证明因子等于所述解密者的私钥与所述基点B的乘积,且能够通过如下公式计算得到:Vi=Pi+h(IDi本文档来自技高网...
加密、解密、电子签章、验证签章的方法及装置

【技术保护点】
一种加密方法,包括:利用第一随机整数对预设椭圆曲线上的基点B随机加密生成第一加密参数C1;利用公钥证明因子以及所述第一随机整数对明文数据M加密,生成第二加密参数C2;提供所述第一加密参数C1和第二加密参数C2给解密者;其中,所述公钥证明因子等于所述解密者的私钥与所述基点B的乘积,且能够通过如下公式计算得到:Vi=Pi+h(IDi)·B+(X(Pi)+h(IDi))·PSA(mod p);其中,Pi为解密者的公钥,h()为单向哈希函数,IDi为解密者的用户标识,X(Pi)为Pi在所述椭圆曲线上的X坐标值,PSA为加密者的公钥,p为所述椭圆曲线的有限域特征。

【技术特征摘要】
1.一种加密方法,包括:利用第一随机整数对预设椭圆曲线上的基点B随机加密生成第一加密参数C1;利用公钥证明因子以及所述第一随机整数对明文数据M加密,生成第二加密参数C2;提供所述第一加密参数C1和第二加密参数C2给解密者;其中,所述公钥证明因子等于所述解密者的私钥与所述基点B的乘积,且能够通过如下公式计算得到:Vi=Pi+h(IDi)·B+(X(Pi)+h(IDi))·PSA(modp);其中,Pi为解密者的公钥,h()为单向哈希函数,IDi为解密者的用户标识,X(Pi)为Pi在所述椭圆曲线上的X坐标值,PSA为加密者的公钥,p为所述椭圆曲线的有限域特征。2.如权利要求1所述的加密方法,其中:C1=z·B(modp);C2=M+z·Vi(modp);其中z为所述第一随机整数。3.如权利要求1所述的方法,其中,在对所述明文数据M进行加密之前,还包括:获取解密者的用户标识IDi以及基于椭圆曲线离散对数问题运算得出的所述用户标识IDi在所述预设椭圆曲线上对应的点Oi;计算所述解密者的公钥Pi以及公钥验证参数Wi:Pi=Oi+(ki-h(IDi))·B(modp),Wi=ki+sSA·(X(Pi)+h(IDi))(modq),其中ki为第二随机整数,sSA为加密者私钥,q为p-1的最大质因子;提供所述解密者的公钥Pi以及公钥验证参数Wi给所述解密者,以使所述解密者根据所述公钥Pi以及公钥验证参数Wi计算得到解密者的私钥。4.一种解密方法,包括:获取第一加密参数以及第二加密参数,所述第一加密参数为加密者利用第一随机整数对预设椭圆曲线上的基点B随机加密生成,所述第二加密参数为加密者利用公钥证明因子以及所述第一随机整数对明文数据M加密而得到的;所述公钥证明因子等于解密者的私钥与所述基点B的乘积;利用如下公式对所述第二加密参数进行解密得到明文数据M:M=C2-si·C1(modp)其中,C2为第二加密参数,C1为第一加密参数,p为所述椭圆曲线的有限域特征,si为解密者私钥,如下计算:si=Wi+h(xi,IDi)(modq)其中,h()为单向哈希函数,IDi为解密者的用户标识,xi为第三随机整数,p为所述椭圆曲线的有限域特征,Wi从为加密者获取得到的公钥验证参数。5.如权利要求4所述的解密方法,其中,在解密所述明文数据M之前,还包括:利用第三随机整数xi和解密者的用户标识IDi,基于椭圆曲线离散对数问题运算得出的所述用户标识IDi在所述预设椭圆曲线上对应的点Oi;将所述Oi和用户标识IDi提供给加密者;接收加密者根据所述Oi和用户标识IDi计算得到的解密者的公钥Pi及公钥验证参数Wi;利用所述公钥验证参数Wi计算得到解密者的私钥si,并且利用所述解密者的私...

【专利技术属性】
技术研发人员:何健豪
申请(专利权)人:联想北京有限公司
类型:发明
国别省市:北京,11

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

1