密文解密方法及相关设备技术

技术编号:37631396 阅读:13 留言:0更新日期:2023-05-20 08:52
本发明专利技术公开了一种密文解密方法及相关设备,应用于根据RSA算法加密的密文,该方法包括:获取密文及所述密文的公钥中的大数;选取小于所述大数的数字作为离散对数问题的底数,选取1作为对应于所述底数的模幂运算结果,并将所述底数与所述模幂运算结果转化为初始量子态;将所述初始量子态输入执行求解离散对数问题的量子计算模块,得到存储有所述离散对数问题的求解结果的第一目标量子态;从所述第一目标量子态提取所述求解结果,并基于所述求解结果计算所述密文的私钥;基于所述私钥解密所述密文得到所述密文的明文。通过该技术方案,可以在私钥未公开的情况下,根据已经公开的信息恢复出私钥,进而对密文进行解密,填补了相关技术空白。关技术空白。关技术空白。

【技术实现步骤摘要】
密文解密方法及相关设备


[0001]本专利技术属于量子计算
,特别是涉及一种密文解密方法及相关设备。

技术介绍

[0002]为了确保信息传输的安全性,信息在发送端经过密钥加密后发送至接收端,信息加密后本身为杂乱无章的数据,无法直接读取有用信息,并且加密过程多基于难解决数学问题如大素数分解问题、离散对数问题等建立,在这些数学问题当前难以解决的情况下,保证了加密信息的安全性。Rivest

Shami r

Ad leman算法(RSA算法)由三位专利技术人名字命名,是一种建立公开密钥加密的算法,基于大数分解问题建立,即难以在有效时间内,将较大的合数分解为两个素数的乘积,而只有在知道对应私钥的情况下,才能顺利解密得到明文。
[0003]相关技术中,需要在不知道解密密钥的情况下,根据已经公开的信息解密密文,例如密钥遗忘丢失时,以恢复相应明文,基于此,提出一种密文解密方法及相关设备。

技术实现思路

[0004]本专利技术的目的是提供一种密文解密方法及相关设备,旨在解决相关技术中密钥未知的情况下,难以对密文进行解密恢复明文的技术问题。
[0005]为了实现上述目的,本专利技术实施例的第一方面,提供一种密文解密方法,应用于根据RSA算法加密的密文,所述方法包括:
[0006]获取密文及所述密文的公钥中的大数;
[0007]选取小于所述大数的数字作为离散对数问题的底数,选取1作为对应于所述底数的模幂运算结果,并将所述底数与所述模幂运算结果转化为初始量子态;
[0008]将所述初始量子态输入执行求解离散对数问题的量子计算模块,得到存储有所述离散对数问题的求解结果的第一目标量子态;
[0009]从所述第一目标量子态提取所述求解结果,并基于所述求解结果计算所述密文的私钥;
[0010]基于所述私钥解密所述密文得到所述密文的明文。
[0011]可选地,所述基于所述求解结果计算所述密文的私钥,包括:
[0012]基于所述求解结果分解所述大数,得到第一素数和第二素数;
[0013]根据所述第一素数和所述第二素数计算所述大数的欧拉函数;
[0014]计算所述密文的公钥中的第一模乘逆元关于模数为所述欧拉函数的第二模乘逆元,得到所述第二模乘逆元作为所述密文的私钥。
[0015]可选地,所述基于所述求解结果分解所述大数,得到第一素数和第二素数,包括:
[0016]在所述求解结果为偶数时,计算指数为所述求解结果的二分之一时所述底数的幂运算结果作为中间结果,并以所述大数为模数对所述中间结果进行取模运算得到第一运算结果;
[0017]在所述第一运算结果不等于

1时,计算所述中间结果加1之和与所述大数的最大公约数作为第一素数,计算所述中间结果减1之差与所述大数的最大公约数作为第二素数。
[0018]可选地,所述方法还包括:
[0019]在所述第一运算结果为

1时,重新选取小于所述大数的数字作为离散对数问题的底数,并返回执行所述将所述底数与所述模幂运算结果转化为初始量子态的步骤。
[0020]可选地,所述基于所述私钥解密所述密文得到所述密文的明文,包括:
[0021]以所述大数为模数,计算指数为所述第二模乘逆元时所述密文的模幂运算的第二运算结果,并将所述第二运算结果作为所述密文的明文。
[0022]可选地,所述方法还包括:
[0023]在所述求解结果为奇数时,重新选取小于所述大数的数字作为离散对数问题的底数,并返回执行所述将所述底数与所述模幂运算结果转化为初始量子态的步骤。
[0024]可选地,所述将所述底数与所述模幂运算结果转化为初始量子态之前,所述方法还包括:
[0025]确定所述底数与所述大数的最大公约数为1。
[0026]可选地,所述初始量子态由包括第一数量量子比特的信息量子寄存器制备得到,所述量子计算模块包括量子傅里叶变换模块和模幂乘法模块,所述将所述初始量子态输入执行求解离散对数问题的量子计算模块,得到存储有所述离散对数问题的求解结果的第一目标量子态,包括:
[0027]获取包括第二数量量子比特的参数量子寄存器,并将所述参数量子寄存器制备至等振幅的量子子态形成的叠加态;
[0028]将所述初始量子态和所述叠加态输入所述模幂乘法模块,得到第二目标量子态,处于所述第二目标量子态时,所述信息量子寄存器的量子态和所述参数量子寄存器的量子态满足预设的模幂乘法运算对应的纠缠关系;
[0029]将所述第二目标量子态中所述参数量子寄存器的量子态输入所述量子傅里叶变换模块,得到第一目标量子态。
[0030]可选地,所述模幂乘法模块包括级联的第一模幂运算模块和第二模幂运算模块,所述信息量子寄存器包括第一信息量子寄存器和第二信息量子寄存器,所述参数量子寄存器包括第一参数量子寄存器和第二参数量子寄存器,所述将所述初始量子态和所述叠加态输入所述模幂乘法模块,得到第二目标量子态,包括:
[0031]将所述初始量子态中所述第一信息量子寄存器的量子态,以及所述叠加态中所述第一参数量子寄存器的量子态输入所述第一模幂运算模块,得到中间量子态;
[0032]将所述初始量子态中所述第二信息量子寄存器的量子态、所述叠加态中所述第二参数量子寄存器的量子态,以及所述中间量子态输入所述第二模幂运算模块,得到第二目标量子态。
[0033]可选地,所述第一模幂运算模块与所述第二模幂运算模块均包括级联的模乘运算模块。
[0034]可选地,所述量子傅里叶变换模块包括用于实现正向量子傅里叶变换的模块和/或用于实现逆向量子傅里叶变换的模块。
[0035]可选地,所述从所述第一目标量子态提取所述求解结果,包括:
[0036]测量处于所述第一目标量子态的参数量子寄存器,得到测量结果;
[0037]基于所述测量结果构建矩阵L,所述矩阵L满足以下形式:
[0038][0039]其中,A:=diag(u,

,u),u为所述第一参数量子寄存器的最大本征态数量,向量中的元素为所述第一参数量子寄存器对应的所述测量结果;
[0040]基于所述矩阵L的行向量得到所述矩阵L的生成子空间;
[0041]对所述生成子空间中的任一向量,获取该向量的最后一个元素作为待验证的待求解对数;
[0042]确定所述待验证的待求解对数满足所述离散对数问题的对数关系;
[0043]确定所述待验证的待求解对数为所述求解结果。
[0044]可选地,所述测量结果为多个,所述基于所述测量结果构建矩阵L,包括:
[0045]从所有的所述测量结果中获取预设数量的测量结果构建矩阵L。
[0046]可选地,所述对所述生成子空间中的任一向量,获取该向量的最后一个元素作为待验证的待求解对数之前,所述方法还包括:
[0047]计算所述生成子空间中的每一向量与参考向本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种密文解密方法,其特征在于,应用于根据RSA算法加密的密文,所述方法包括:获取密文及所述密文的公钥中的大数;选取小于所述大数的数字作为离散对数问题的底数,选取1作为对应于所述底数的模幂运算结果,并将所述底数与所述模幂运算结果转化为初始量子态;将所述初始量子态输入执行求解离散对数问题的量子计算模块,得到存储有所述离散对数问题的求解结果的第一目标量子态;从所述第一目标量子态提取所述求解结果,并基于所述求解结果计算所述密文的私钥;基于所述私钥解密所述密文得到所述密文的明文。2.如权利要求1所述的方法,其特征在于,所述基于所述求解结果计算所述密文的私钥,包括:基于所述求解结果分解所述大数,得到第一素数和第二素数;根据所述第一素数和所述第二素数计算所述大数的欧拉函数;计算所述密文的公钥中的第一模乘逆元关于模数为所述欧拉函数的第二模乘逆元,得到所述第二模乘逆元作为所述密文的私钥。3.如权利要求2所述的方法,其特征在于,所述基于所述求解结果分解所述大数,得到第一素数和第二素数,包括:在所述求解结果为偶数时,计算指数为所述求解结果的二分之一时所述底数的幂运算结果作为中间结果,并以所述大数为模数对所述中间结果进行取模运算得到第一运算结果;在所述第一运算结果不等于

1时,计算所述中间结果加1之和与所述大数的最大公约数作为第一素数,计算所述中间结果减1之差与所述大数的最大公约数作为第二素数。4.如权利要求3所述的方法,其特征在于,所述方法还包括:在所述第一运算结果为

1时,重新选取小于所述大数的数字作为离散对数问题的底数,并返回执行所述将所述底数与所述模幂运算结果转化为初始量子态的步骤。5.如权利要求2所述的方法,其特征在于,所述基于所述私钥解密所述密文得到所述密文的明文,包括:以所述大数为模数,计算指数为所述第二模乘逆元时所述密文的模幂运算的第二运算结果,并将所述第二运算结果作为所述密文的明文。6.如权利要求1所述的方法,其特征在于,所述方法还包括:在所述求解结果为奇数时,重新选取小于所述大数的数字作为离散对数问题的底数,并返回执行所述将所述底数与所述模幂运算结果转化为初始量子态的步骤。7.如权利要求1所述的方法,其特征在于,所述将所述底数与所述模幂运算结果转化为初始量子态之前,所述方法还包括:确定所述底数与所述大数的最大公约数为1。8.如权利要求1所述的方法,其特征在于,所述初始量子态由包括第一数量量子比特的信息量子寄存器制备得到,所述量子计算模块包括量子傅里叶变换模块和模幂乘法模块,所述将所述初始量子态输入执行求解离散对数问题的量子计算模块,得到存储有所述离散对数问题的求解结果的第一目标量子态,包括:
获取包括第二数量量子比特的参数量子寄存器,并将所述参数量子寄存器制备至等振幅的量子子态形成的叠加态;将所述初始量子态和所述叠加态输入所述模幂乘法模块,得到第二目标量子态,处于所述第二目标量子态时,所述信息量子寄存器的量子态和所述参数量子寄存器的量子态满足预设的模幂乘法运算对应的纠缠关系;将所述第二目标量子态中所述参数量子寄存器的量子态输入所述量子傅里叶变换模块,得到第一目标量子态。9.如权利要求8所述的方法,其特征在于,所述模幂乘法模块包括级联的第一模幂运算模块和第二模幂运算模块,所述信息量子寄存器包括第一信息量子寄存器和第二信息量子寄存器,所述参数量子寄存器包括第一参数量子寄存器和第二参数量子寄存器,所述将所述初始量子态和所述叠加态输入所述模幂乘法模块,得到第二目标量子态,包括:将所述...

【专利技术属性】
技术研发人员:刘焱李叶窦猛汉
申请(专利权)人:合肥本源量子计算科技有限责任公司
类型:发明
国别省市:

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

1