CN109905232B - 一种签解密方法、系统、设备及计算机可读存储介质 - Google Patents

一种签解密方法、系统、设备及计算机可读存储介质 Download PDF

Info

Publication number
CN109905232B
CN109905232B CN201910180573.XA CN201910180573A CN109905232B CN 109905232 B CN109905232 B CN 109905232B CN 201910180573 A CN201910180573 A CN 201910180573A CN 109905232 B CN109905232 B CN 109905232B
Authority
CN
China
Prior art keywords
information
sender
random number
public key
encryption
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201910180573.XA
Other languages
English (en)
Other versions
CN109905232A (zh
Inventor
崔文军
贾志娟
胡明生
王利朋
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Zhengzhou Normal University
Original Assignee
Zhengzhou Normal University
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Zhengzhou Normal University filed Critical Zhengzhou Normal University
Priority to CN201910180573.XA priority Critical patent/CN109905232B/zh
Publication of CN109905232A publication Critical patent/CN109905232A/zh
Application granted granted Critical
Publication of CN109905232B publication Critical patent/CN109905232B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Abstract

本申请公开了一种签解密方法、系统、设备及计算机可读存储介质,应用于信息发送方时包括:选取第一随机数,对第一随机数和预先选取的椭圆曲线上的点G进行运算得到R,点G的阶为满足安全要求的素数n;获取待传输信息,采用加密方法对待传输信息进行加密,得到加密结果c;对加密结果c进行哈希运算,得到哈希值e1;任选与哈希值e1等长的哈希值e2,计算哈希值e1和哈希值e2的汉明距离d;选取正整数t,t<n,对第一随机数、汉明距离d、信息发送方的发送方私钥、正整数t、加密结果c及n进行运算,得到α;将(c,R,e2,t,α)作为签密结果发送至信息接收方,安全性高,且运算速度快。本申请提供的一种签解密系统、设备及计算机可读存储介质也解决了相应技术问题。

Description

一种签解密方法、系统、设备及计算机可读存储介质
技术领域
本申请涉及信息加解密技术领域,更具体地说,涉及一种签解密方法、系统、设备及计算机可读存储介质。
背景技术
当今社会,互联网极速发展,现实生活中越来越多的交流需要利用网络来解决,而其中一些信息不能暴露在公共的网络环境中,如电子商务、电子政务、军事等涉及到的一些敏感资源都需要传输时能够保证信息的安全性,所以如何确保敏感信息可靠的传输成为了我们亟待解决的问题。为了阻止传输的信息被未授权者获得,除了要加强传输线路的安全性外,重要的便是使信息本身具有安全性,使其即便被截获,非法用户也只能看到信息的表象而无法得知信息真正的含义。这就要求信息不能以自己的面貌进行传输而是在经过了一系列变化之后才能输运,即要用到密码学上的加密、签名等技术手段对信息进行处理。
现有的对信息进行保护的方法是采用签密方法对信息进行加密,然而,由于现有的签密方法在签名的同时完成了消息的加密,因此无法像一般签名那样进行公开验证;另一方面,由于任何得到签密者密钥的人都可以解密本次及此前的签密密文,从而恢复出相应消息,签密方案的前向安全性难以保证。也就是说,现有的签密方法大多数不能同时满足前向安全性和可公开验证性两个性质,安全性较差。
综上所述,如何提高签密方法的安全性是目前本领域技术人员亟待解决的问题。
发明内容
本申请的目的是提供一种签解密方法,其能在一定程度上解决如何提高签密方法的安全性的技术问题。本申请还提供了一种签解密系统、设备及计算机可读存储介质。
为了实现上述目的,本申请提供如下技术方案:
一种签密方法,应用于信息发送方,包括:
选取第一随机数,对所述第一随机数和预先选取的椭圆曲线上的点G进行运算得到R,所述点G的阶为满足安全要求的素数n;
获取待传输信息,采用加密方法对所述待传输信息进行加密,得到加密结果c;
对所述加密结果c进行哈希运算,得到哈希值e1
任选与所述哈希值e1等长的哈希值e2,计算所述哈希值e1和所述哈希值e2的汉明距离d;
选取正整数t,t<n,对所述第一随机数、所述汉明距离d、所述信息发送方的发送方私钥、所述正整数t、所述加密结果c及n进行运算,得到α;
将(c,R,e2,t,α)作为签密结果发送至信息接收方。
优选的,所述选取第一随机数,包括:
任取
Figure BDA0001991199020000022
作为所述第一随机数r;
所述对所述第一随机数和预先选取的椭圆曲线上的点G进行运算得到R,包括:
将所述第一随机数和所述点G相乘,得到R。
优选的,所述采用加密方法对所述待传输信息进行加密,包括:
获取所述信息接收方生成的接收方公钥,所述接收方公钥包括基于公式wB=xBG生成的公钥,其中,wB表示所述接收方公钥;xB表示所述接收方私钥,且
Figure BDA0001991199020000021
基于所述第一随机数和所述接收方公钥得到坐标点(k1,k2);
采用与k1对应的加密方法对所述待传输信息进行加密;
所述对所述加密结果c进行哈希运算,包括:
对所述加密结果c和k2进行哈希运算。
优选的,所述基于所述第一随机数和所述接收方公钥得到坐标点(k1,k2),包括:
将所述第一随机数和所述接收方公钥相乘,得到所述坐标点(k1,k2)=rwB
优选的,所述对所述第一随机数、所述汉明距离d、所述信息发送方的发送方私钥、所述正整数t、所述加密结果c及n进行运算,得到α,包括:
采用第一运算公式,对所述第一随机数、所述汉明距离d、所述信息发送方的发送方私钥、所述正整数t、所述加密结果c及n进行运算,得到α;
所述第一运算公式包括:α=(r+d+xA-tc)modn;
其中,r表示所述第一随机数;xA表示所述发送方私钥,且
Figure BDA0001991199020000031
一种解密方法,应用于如上所述的所述信息接收方,包括:
接收所述信息发送方发送的所述签密结果(c,R,e2,t,α);
采用对应的解密方法对所述加密结果c进行解密,得到解密结果m;
对接收的c进行哈希运算,得到所述哈希值e1
计算所述哈希值e1与接收的e2的所述汉明距离d;
基于所述汉明距离d、预先获取的n及接收的α、t、c计算得到β;
获取所述信息发送方的发送方公钥,所述发送方公钥包括基于发送方私钥及所述点G生成的公钥;
验证β、所述点G、所述发送方公钥及接收的R、α是否满足预设验证条件,若是,则判定所述解密结果m为所述待传输信息。
优选的,所述基于所述汉明距离d、预先获取的所述n及接收的α、t、c计算得到β,包括:
采用第二运算公式,基于所述汉明距离d、预先获取的所述n及接收的α、t、c计算得到β;
所述第二运算公式包括:β=(α-d+tc)modn;
所述验证β、所述点G、所述发送方公钥及接收的R、α是否满足预设验证条件,包括:
验证等式βG-wA=R是否成立,若是,则判定β、所述点G、所述发送方公钥及接收的R、α满足所述预设验证条件,其中,wA表示所述发送方公钥,且wA=xAG。
一种签密系统,应用于信息发送方,包括:
第一选取模块,用于选取第一随机数,对所述第一随机数和预先选取的椭圆曲线上的点G进行运算得到R,所述点G的阶为满足安全要求的素数n;
第一加密模块,用于获取待传输信息,采用加密方法对所述待传输信息进行加密,得到加密结果c;
第一运算模块,用于对所述加密结果c进行哈希运算,得到哈希值e1
第二运算模块,用于任选与所述哈希值e1等长的哈希值e2,计算所述哈希值e1和所述哈希值e2的汉明距离d;
第三运算模块,用于选取正整数t,t<n,对所述第一随机数、所述汉明距离d、所述信息发送方的发送方私钥、所述正整数t、所述加密结果c及n进行运算,得到α;
第一发送模块,用于将(c,R,e2,t,α)作为签密结果发送至信息接收方。
一种签密设备,应用于信息发送方,包括:
存储器,用于存储计算机程序;
处理器,用于执行所述计算机程序时实现如上任一所述签密方法的步骤。
一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机程序,所述计算机程序被处理器执行时实现如上任一所述签密方法的步骤。
本申请提供的一种签密方法,应用于信息发送方,包括:选取第一随机数,对第一随机数和预先选取的椭圆曲线上的点G进行运算得到R,点G的阶为满足安全要求的素数n;获取待传输信息,采用加密方法对待传输信息进行加密,得到加密结果c;对加密结果c进行哈希运算,得到哈希值e1;任选与哈希值e1等长的哈希值e2,计算哈希值e1和哈希值e2的汉明距离d;选取正整数t,t<n,对第一随机数、汉明距离d、信息发送方的发送方私钥、正整数t、加密结果c及n进行运算,得到α;将(c,R,e2,t,α)作为签密结果发送至信息接收方。本申请提供的一种签密方法,将签密过程与求解椭圆曲线离散对数的困难性和哈希函数的单向性相结合,能够同时满足前向安全性和可公开验证性,安全性高,且签密过程中仅用到了模乘运算,签密长度仅为4n,运算速度快。本申请提供的一种签解密系统、设备及计算机可读存储介质也解决了相应技术问题。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
图1为本申请实施例提供的一种签密方法的第一流程图;
图2为本申请实施例提供的一种签密系统的结构示意图;
图3为本申请实施例提供的一种签密设备的结构示意图;
图4为本申请实施例提供的一种签密设备的另一结构示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
请参阅图1,图1为本申请实施例提供的一种签密方法的第一流程图。
本申请实施例提供的一种签密方法,应用于信息发送方,可以包括以下步骤:
步骤S101:选取第一随机数,对第一随机数和预先选取的椭圆曲线上的点G进行运算得到R,点G的阶为满足安全要求的素数n。
实际应用中,信息发送方可以先选取第一随机数,然后对选取的第一随机数和预先选取的椭圆曲线上的点G进行运算得到R,且点G的阶为满足安全要求的素数n,也即nG=O,其中O是无穷远点。预先选取的椭圆曲线可以为有限域GF(p)上的椭圆曲线。
具体应用场景中,选取第一随机数的过程可以具体为:任取
Figure BDA0001991199020000052
作为第一随机数r;对第一随机数和预先选取的椭圆曲线上的点G进行运算得到R的过程可以具体为:将第一随机数和点G相乘,得到R。
步骤S102:获取待传输信息,采用加密方法对待传输信息进行加密,得到加密结果c。
实际应用中,信息发送方在得到R后,便可以获取待传输信息m,并采用加密方法对待传输信息m进行加密,得到加密结果c。
具体应用场景中,采用加密方法对待传输信息进行加密的过程可以具体为:获取信息接收方生成的接收方公钥,接收方公钥包括基于公式wB=xBG生成的公钥,其中,wB表示接收方公钥;xB表示接收方私钥,且
Figure BDA0001991199020000051
基于第一随机数和接收方公钥得到坐标点(k1,k2);采用与k1对应的加密方法对待传输信息进行加密。
具体的,基于第一随机数和接收方公钥得到坐标点(k1,k2)的过程可以具体为:将第一随机数和接收方公钥相乘,得到坐标点(k1,k2)=rwB
步骤S103:对加密结果c进行哈希运算,得到哈希值e1
实际应用中,信息发送方在得到加密结果c后,便可以对对加密结果c进行哈希运算,得到哈希值e1
具体应用场景中,在采用与k1对应的加密方法对待传输信息进行加密时,对加密结果c进行哈希运算的过程可以为:对加密结果c和k2进行哈希运算;其运算公式可以为:e1=h(c,k2),其中,h表示选取的哈希运算函数。
步骤S104:任选与哈希值e1等长的哈希值e2,计算哈希值e1和哈希值e2的汉明距离d。
实际应用中,信息发送方在得到哈希值e1后,便可以任选与哈希值e1等长的哈希值e2,计算哈希值e1和哈希值e2的汉明距离d,其运算公式可以为:d=f(e1,e2),f表示相应的汉明距离运算函数。任选也即哈希值e2长度与哈希值e1的长度相等即可,而无需对哈希值e2的值进行限定。汉明距离是使用在数据传输差错控制编码里面的,汉明距离是一个概念,它表示两个(相同长度)字对应位不同的数量,以d(x,y)表示两个字x,y之间的汉明距离,对两个字符串进行异或运算,并统计结果为1的个数,那么这个数就是汉明距离。
步骤S105:选取正整数t,t<n,对第一随机数、汉明距离d、信息发送方的发送方私钥、正整数t、加密结果c及n进行运算,得到α。
实际应用中,信息发送方在得到汉明距离d后,便可以选取正整数t,对第一随机数、汉明距离d、信息发送方的发送方私钥、正整数t、加密结果c及n进行运算,得到α。
具体应用场景中,t的值应小于n,,对第一随机数、汉明距离d、信息发送方的发送方私钥、正整数t、加密结果c及n进行运算,得到α的过程可以具体为:采用第一运算公式,对第一随机数、汉明距离d、信息发送方的发送方私钥、正整数t、加密结果c及n进行运算,得到α;第一运算公式包括:α=(r+d+xA-tc)modn;其中,r表示第一随机数;xA表示发送方私钥,且
Figure BDA0001991199020000061
步骤S106:将(c,R,e2,t,α)作为签密结果发送至信息接收方。
实际应用中,信息发送方可以将(c,R,e2,t,α)作为签密结果发送至信息接收方。
前向安全性指的是任何人都不能利用发送者的私钥解密经该用户私钥加密后的密文信息,即私钥加密后的密文不能再由该私钥解密成明文,由前向安全性及本申请提供的签密方法可知,本申请满足前向安全性,且满足可公开验证性,理由如下:若信息发送方的发送方私钥xA被攻击者获取,本申请保证了信息接收方可以得到消息明文m外,其余攻击者均无法恢复m,这主要体现在获取解密密钥k1上,而获取k1的途径有两种:第一种,由(k1,k2)=rwB可知,需要知道r,而R=rG,想要解出r等同于求解椭圆曲线离散对数问题;第二种,由(k1,k2)=xBR可知,需要知道接收方私钥xB;综上,无论是获得r还是xB,对于攻击者均是不可能的,故而具有前向安全性。而当信息发送方否认签密时,信息接收方可将签密(c,R,e2,t,α)提供给第三方可信中心进行解签密证实,第三方在安全可信的基础上证实信息发送方确实发送过该信息,这样便达到了不可否认的目的,验证过程中只是对密文c进行验证,保护了明文信息m,因而具有公开验证性。
本申请提供的一种签密方法,应用于信息发送方,包括:选取第一随机数,对第一随机数和预先选取的椭圆曲线上的点G进行运算得到R,点G的阶为满足安全要求的素数n;获取待传输信息,采用加密方法对待传输信息进行加密,得到加密结果c;对加密结果c进行哈希运算,得到哈希值e1;任选与哈希值e1等长的哈希值e2,计算哈希值e1和哈希值e2的汉明距离d;选取正整数t,t<n,对第一随机数、汉明距离d、信息发送方的发送方私钥、正整数t、加密结果c及n进行运算,得到α;将(c,R,e2,t,α)作为签密结果发送至信息接收方。本申请提供的一种签密方法,将签密过程与求解椭圆曲线离散对数的困难性和哈希函数的单向性相结合,能够同时满足前向安全性和可公开验证性,安全性高,且签密过程中仅用到了模乘运算,签密长度仅为4n,运算速度快。
本申请还提供了一种与签密方法相配合的解密方法,应用于如上任一实施例中的信息接收方,该方法可以包括以下步骤:
接收信息发送方发送的签密结果(c,R,e2,t,α);
采用对应的解密方法对加密结果c进行解密,得到解密结果m;
对接收的c进行哈希运算,得到哈希值e1
计算哈希值e1与接收的e2的汉明距离d;
基于汉明距离d、预先获取的n及接收的α、t、c计算得到β;
获取信息发送方的发送方公钥,发送方公钥包括基于发送方私钥及点G生成的公钥;
验证β、点G、发送方公钥及接收的R、α是否满足预设验证条件,若是,则判定解密结果m为待传输信息,若否,则判定解密结果m不是待传输信息。
关于本实施例中相应参数的描述请参阅上述实施例。具体应用场景中,当采用与k1对应的加密方法对待传输信息进行加密时,采用对应的解密方法对加密结果c进行解密的过程可以具体为:将接收方私钥和R相乘得到坐标点(k1,k2),采用与k1对应的解密方法对加密结果c进行解密。
本申请提供的一种解密方法,信息接收方基于汉明距离d、预先获取的n及接收的α、t、c计算得到β的步骤可以具体为:采用第二运算公式,基于汉明距离d、预先获取的n及接收的α、t、c计算得到β;第二运算公式包括:β=(α-d+tc)modn;
相应的,验证β、点G、发送方公钥及接收的R、α是否满足预设验证条件的过程可以具体为:验证等式βG-wA=R是否成立,若是,则判定β、点G、发送方公钥及接收的R、α满足预设验证条件,若否,则判定β、点G、发送方公钥及接收的R、α不满足预设验证条件,其中,wA表示发送方公钥,且wA=xAG。
本申请还提供了一种签密系统,其具有本申请实施例提供的一种签密方法具有的对应效果。请参阅图2,图2为本申请实施例提供的一种签密系统的结构示意图。
本申请实施例提供的一种签密系统,应用于信息发送方,可以包括:
第一选取模块101,用于选取第一随机数,对第一随机数和预先选取的椭圆曲线上的点G进行运算得到R,点G的阶为满足安全要求的素数n;
第一加密模块102,用于获取待传输信息,采用加密方法对待传输信息进行加密,得到加密结果c;
第一运算模块103,用于对加密结果c进行哈希运算,得到哈希值e1
第二运算模块104,用于任选与哈希值e1等长的哈希值e2,计算哈希值e1和哈希值e2的汉明距离d;
第三运算模块105,用于选取正整数t,t<n,对第一随机数、汉明距离d、信息发送方的发送方私钥、正整数t、加密结果c及n进行运算,得到α;
第一发送模块106,用于将(c,R,e2,t,α)作为签密结果发送至信息接收方。
本申请实施例提供的一种签密系统,应用于信息发送方,第一选取模块可以包括:
第一选取单元,用于任取
Figure BDA0001991199020000091
作为第一随机数r;
第一运算单元,用于将第一随机数和点G相乘,得到R。
本申请实施例提供的一种签密系统,应用于信息发送方,第一加密模块可以包括:
第一获取单元,用于获取信息接收方生成的接收方公钥,接收方公钥包括基于公式wB=xBG生成的公钥,其中,wB表示接收方公钥;xB表示接收方私钥,且
Figure BDA0001991199020000092
第二运算单元,用于基于第一随机数和接收方公钥得到坐标点(k1,k2);
第一加密单元,用于采用与k1对应的加密方法对待传输信息进行加密;
第一运算模块可以包括:
第三运算单元,用于对加密结果c和k2进行哈希运算。
本申请实施例提供的一种签密系统,应用于信息发送方,第二运算单元可以包括:
第一运算子单元,用于将第一随机数和接收方公钥相乘,得到坐标点(k1,k2)=rwB
本申请实施例提供的一种签密系统,应用于信息发送方,第三运算模块可以包括:
第四运算单元,用于采用第一运算公式,对第一随机数、汉明距离d、信息发送方的发送方私钥、正整数t、加密结果c及n进行运算,得到α;
第一运算公式包括:α=(r+d+xA-tc)modn;
其中,r表示第一随机数;xA表示发送方私钥,且
Figure BDA0001991199020000093
本申请还提供了一种解密系统,其具有本申请实施例提供的一种解密方法具有的对应效果。本申请实施例提供的一种解密方法,应用于上述信息接收方,可以包括:
第一接收模块,用于接收信息发送方发送的签密结果(c,R,e2,t,α);
第一解密模块,用于采用对应的解密方法对加密结果c进行解密,得到解密结果m;
第一计算模块,用于对接收的c进行哈希运算,得到哈希值e1
第二计算模块,用于计算哈希值e1与接收的e2的汉明距离d;
第三计算模块,用于基于汉明距离d、预先获取的n及接收的α、t、c计算得到β;
第一获取模块,用于获取信息发送方的发送方公钥,发送方公钥包括基于发送方私钥及点G生成的公钥;
第一验证模块,用于验证β、点G、发送方公钥及接收的R、α是否满足预设验证条件,若是,则判定解密结果m为待传输信息。
本申请实施例提供的一种解密方法,应用于上述信息接收方,第三计算模块可以包括:
第一计算单元,用于采用第二运算公式,基于汉明距离d、预先获取的n及接收的α、t、c计算得到β;
第二运算公式包括:β=(α-d+tc)modn;
第一验证模块可以包括:
第一验证单元,用于验证等式βG-wA=R是否成立,若是,则判定β、点G、发送方公钥及接收的R、α满足预设验证条件,其中,wA表示发送方公钥,且wA=xAG。
本申请还提供了一种签密设备及计算机可读存储介质,其均具有本申请实施例提供的一种签密方法具有的对应效果。请参阅图3,图3为本申请实施例提供的一种签密设备的结构示意图。
本申请实施例提供的一种签密设备,应用于信息发送方,可以包括:
存储器201,用于存储计算机程序;
处理器202,用于执行计算机程序时实现如上任一实施例所描述的签密方法的步骤。
请参阅图4,本申请实施例提供的另一种签密设备中还可以包括:与处理器202连接的输入端口203,用于传输外界输入的命令至处理器202;与处理器202连接的显示单元204,用于显示处理器202的处理结果至外界;与处理器202连接的通信模块205,用于实现签密设备与外界的通信。显示单元204可以为显示面板、激光扫描使显示器等;通信模块205所采用的通信方式包括但不局限于移动高清链接技术(HML)、通用串行总线(USB)、高清多媒体接口(HDMI)、无线连接:无线保真技术(WiFi)、蓝牙通信技术、低功耗蓝牙通信技术、基于IEEE802.11s的通信技术。
本申请实施例提供的一种计算机可读存储介质,计算机可读存储介质中存储有计算机程序,计算机程序被处理器执行时实现如上任一实施例所描述的签密方法的步骤。
本申请所涉及的计算机可读存储介质包括随机存储器(RAM)、内存、只读存储器(ROM)、电可编程ROM、电可擦除可编程ROM、寄存器、硬盘、可移动磁盘、CD-ROM、或技术领域内所公知的任意其它形式的存储介质。
本申请实施例提供的一种签解密系统、设备及计算机可读存储介质中相关部分的说明请参见本申请实施例提供的一种签解密方法中对应部分的详细说明,在此不再赘述。另外,本申请实施例提供的上述技术方案中与现有技术中对应技术方案实现原理一致的部分并未详细说明,以免过多赘述。
还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
对所公开的实施例的上述说明,使本领域技术人员能够实现或使用本申请。对这些实施例的多种修改对本领域技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本申请的精神或范围的情况下,在其它实施例中实现。因此,本申请将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。

Claims (5)

1.一种签密方法,其特征在于,应用于信息发送方,包括:
选取第一随机数,对所述第一随机数和预先选取的椭圆曲线上的点G进行运算得到R,所述点G的阶为满足安全要求的素数n;
获取待传输信息,采用加密方法对所述待传输信息进行加密,得到加密结果c;
对所述加密结果c进行哈希运算,得到哈希值e1
任选与所述哈希值e1等长的哈希值e2,计算所述哈希值e1和所述哈希值e2的汉明距离d;
选取正整数t,t<n,对所述第一随机数、所述汉明距离d、所述信息发送方的发送方私钥、所述正整数t、所述加密结果c及n进行运算,得到α;
将(c,R,e2,t,α)作为签密结果发送至信息接收方;
其中,所述选取第一随机数,包括:
任取
Figure FDA0003503236760000011
作为所述第一随机数r;
所述对所述第一随机数和预先选取的椭圆曲线上的点G进行运算得到R,包括:
将所述第一随机数和所述点G相乘,得到R;
其中,所述采用加密方法对所述待传输信息进行加密,包括:
获取所述信息接收方生成的接收方公钥,所述接收方公钥包括基于公式wB=xBG生成的公钥,其中,wB表示所述接收方公钥;xB表示所述接收方私钥,且
Figure FDA0003503236760000012
基于所述第一随机数和所述接收方公钥得到坐标点(k1,k2);
采用与k1对应的加密方法对所述待传输信息进行加密;
所述对所述加密结果c进行哈希运算,包括:
对所述加密结果c和k2进行哈希运算;
其中,所述基于所述第一随机数和所述接收方公钥得到坐标点(k1,k2),包括:
将所述第一随机数和所述接收方公钥相乘,得到所述坐标点(k1,k2)=rwB
其中,所述对所述第一随机数、所述汉明距离d、所述信息发送方的发送方私钥、所述正整数t、所述加密结果c及n进行运算,得到α,包括:
采用第一运算公式,对所述第一随机数、所述汉明距离d、所述信息发送方的发送方私钥、所述正整数t、所述加密结果c及n进行运算,得到α;
所述第一运算公式包括:α=(r+d+xA-tc)modn;
其中,r表示所述第一随机数;xA表示所述发送方私钥,且
Figure FDA0003503236760000021
2.一种解密方法,其特征在于,应用于权利要求1中的所述信息接收方,包括:
接收所述信息发送方发送的所述签密结果(c,R,e2,t,α);
采用对应的解密方法对所述加密结果c进行解密,得到解密结果m;
对接收的c进行哈希运算,得到所述哈希值e1
计算所述哈希值e1与接收的e2的所述汉明距离d;
基于所述汉明距离d、预先获取的n及接收的α、t、c计算得到β;
获取所述信息发送方的发送方公钥,所述发送方公钥包括基于发送方私钥及所述点G生成的公钥;
验证β、所述点G、所述发送方公钥及接收的R、α是否满足预设验证条件,若是,则判定所述解密结果m为所述待传输信息;
其中,所述基于所述汉明距离d、预先获取的所述n及接收的α、t、c计算得到β,包括:
采用第二运算公式,基于所述汉明距离d、预先获取的所述n及接收的α、t、c计算得到β;
所述第二运算公式包括:β=(α-d+tc)modn;
所述验证β、所述点G、所述发送方公钥及接收的R、α是否满足预设验证条件,包括:
验证等式βG-wA=R是否成立,若是,则判定β、所述点G、所述发送方公钥及接收的R、α满足所述验证条件,其中,wA表示所述发送方公钥,且wA=xAG。
3.一种签密系统,其特征在于,应用于信息发送方,包括:
第一选取模块,用于选取第一随机数,对所述第一随机数和预先选取的椭圆曲线上的点G进行运算得到R,所述点G的阶为满足安全要求的素数n;
第一加密模块,用于获取待传输信息,采用加密方法对所述待传输信息进行加密,得到加密结果c;
第一运算模块,用于对所述加密结果c进行哈希运算,得到哈希值e1
第二运算模块,用于任选与所述哈希值e1等长的哈希值e2,计算所述哈希值e1和所述哈希值e2的汉明距离d;
第三运算模块,用于选取正整数t,t<n,对所述第一随机数、所述汉明距离d、所述信息发送方的发送方私钥、所述正整数t、所述加密结果c及n进行运算,得到α;
第一发送模块,用于将(c,R,e2,t,α)作为签密结果发送至信息接收方;
其中,所述第一选取模块包括:
第一选取单元,用于任取
Figure FDA0003503236760000031
作为所述第一随机数r;
第一运算单元,用于将所述第一随机数和所述点G相乘,得到R;
其中,所述第一加密模块包括:
第一获取单元,用于获取所述信息接收方生成的接收方公钥,所述接收方公钥包括基于公式wB=xBG生成的公钥,其中,wB表示所述接收方公钥;xB表示所述接收方私钥,且
Figure FDA0003503236760000032
第二运算单元,用于基于所述第一随机数和所述接收方公钥得到坐标点(k1,k2);
第一加密单元,用于采用与k1对应的加密方法对所述待传输信息进行加密;
所述第一运算模块包括:
第三运算单元,用于对所述加密结果c和k2进行哈希运算;
其中,所述第二运算单元包括:
第一运算子单元,用于将所述第一随机数和所述接收方公钥相乘,得到所述坐标点(k1,k2)=rwB
其中,所述第三运算模块包括:
第四运算单元,用于采用第一运算公式,对所述第一随机数、所述汉明距离d、所述信息发送方的发送方私钥、所述正整数t、所述加密结果c及n进行运算,得到α;
所述第一运算公式包括:α=(r+d+xA-tc)modn;
其中,r表示所述第一随机数;xA表示所述发送方私钥,且
Figure FDA0003503236760000033
4.一种签密设备,其特征在于,应用于信息发送方,包括:
存储器,用于存储计算机程序;
处理器,用于执行所述计算机程序时实现如权利要求1所述签密方法的步骤。
5.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求1所述签密方法的步骤。
CN201910180573.XA 2019-03-11 2019-03-11 一种签解密方法、系统、设备及计算机可读存储介质 Active CN109905232B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910180573.XA CN109905232B (zh) 2019-03-11 2019-03-11 一种签解密方法、系统、设备及计算机可读存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910180573.XA CN109905232B (zh) 2019-03-11 2019-03-11 一种签解密方法、系统、设备及计算机可读存储介质

Publications (2)

Publication Number Publication Date
CN109905232A CN109905232A (zh) 2019-06-18
CN109905232B true CN109905232B (zh) 2022-04-15

Family

ID=66946754

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910180573.XA Active CN109905232B (zh) 2019-03-11 2019-03-11 一种签解密方法、系统、设备及计算机可读存储介质

Country Status (1)

Country Link
CN (1) CN109905232B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112133386A (zh) * 2020-09-29 2020-12-25 深圳壹账通智能科技有限公司 一种基于区块链的信息处理方法、装置、设备及介质

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107181852A (zh) * 2017-07-19 2017-09-19 维沃移动通信有限公司 一种信息发送方法、信息显示方法及移动终端
WO2018226665A1 (en) * 2017-06-06 2018-12-13 Analog Devices, Inc. System and device employing physical unclonable functions for tamper penalties

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2018226665A1 (en) * 2017-06-06 2018-12-13 Analog Devices, Inc. System and device employing physical unclonable functions for tamper penalties
CN107181852A (zh) * 2017-07-19 2017-09-19 维沃移动通信有限公司 一种信息发送方法、信息显示方法及移动终端

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
基于双线性对的可证明安全公钥密码方案研究;杨旸;《CNKI中国博士学位论文全文数据库信息科技辑》;20130530;全文 *

Also Published As

Publication number Publication date
CN109905232A (zh) 2019-06-18

Similar Documents

Publication Publication Date Title
US10785019B2 (en) Data transmission method and apparatus
US20220141038A1 (en) Method of rsa signature or decryption protected using a homomorphic encryption
WO2018236908A1 (en) SECURE COMMUNICATIONS PROVIDING PERSISTENT CONFIDENTIALITY
CN111989891A (zh) 数据处理方法、相关装置及区块链系统
WO2021120871A1 (zh) 认证密钥协商方法、装置、存储介质及设备
US20160204944A1 (en) Private electronic signature service for electronic documents
CN115580396B (zh) 匿踪查询系统及匿踪查询方法
CN113411345A (zh) 一种安全会话的方法和装置
CN111555880B (zh) 数据碰撞方法、装置、存储介质及电子设备
JP6041864B2 (ja) データの暗号化のための方法、コンピュータ・プログラム、および装置
CN114095170B (zh) 数据处理方法、装置、系统及计算机可读存储介质
CN111565108B (zh) 签名处理方法、装置及系统
CN109905232B (zh) 一种签解密方法、系统、设备及计算机可读存储介质
CN110324357B (zh) 数据发送方法及装置、数据接收方法及装置
CN112350820A (zh) 多接收者签密方法、发送端、接收端、系统及存储介质
CN109361506B (zh) 信息处理方法
KR101793528B1 (ko) 무인증서 공개키 암호 시스템
US20130058483A1 (en) Public key cryptosystem and technique
KR20070003292A (ko) 타원곡선 알고리즘을 이용한 원격제어 방법
CN115378588B (zh) 不经意传输方法、设备和存储介质
CN113141249B (zh) 一种门限解密方法、系统及可读存储介质
CN115134093B (zh) 数字签名方法及计算设备
CN115065470B (zh) 数据传输方法和设备
CN109889330B (zh) 基于非对称密钥池的抗量子计算盲签名方法和系统
CN114240428A (zh) 数据传输方法及装置、数据交易终端、数据供方

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant