基于伊辛模型的大整数分解问题映射方法及系统技术方案

技术编号:36076742 阅读:9 留言:0更新日期:2022-12-24 10:48
本发明专利技术提供了一种基于伊辛模型的大整数分解问题映射方法及系统,包括:对二进制乘法竖式构建辅助块,对每块所得到的损失函数进行形式上的等价替换,满足伊辛模型的形式要求,将得到伊辛模型的哈密顿量表达式;根据不同自旋状态下哈密顿量的取值及其范围的分布特征,使其能够跳出局部最优解,直至伊辛模型到达自旋基态;获取两个素因子信息,实现大整数分解,进一步由欧拉公式和密码系统中开放的公钥得到RSA加密算法中的私钥,使用私钥将密文信息转换为原始明文信息,实现对RSA密码系统的破解。本发明专利技术完整地表现了一种将大整数分解问题映射为伊辛模型求解问题的一般流程。映射为伊辛模型求解问题的一般流程。映射为伊辛模型求解问题的一般流程。

【技术实现步骤摘要】
基于伊辛模型的大整数分解问题映射方法及系统


[0001]本专利技术涉及密码破解
,具体地,涉及基于大整数分解的RSA密码破解
,更为具体地,涉及一种基于伊辛模型的大整数分解问题映射方法及系统。

技术介绍

[0002]尽管目前计算机的运算能力能够很轻松地计算出任意两个有限大整数的乘积,但它的逆向过程仍然是极为困难的,在有限时间内很难准确计算出一个大整数的因数。因此,大整数分解的困难性被广泛应用在了加密领域,尤其是1977年由Ron Rivest、Adi Shamir和Leonard Adleman共同提出的一种非对称加密算法,简称RSA算法,这种加密算法的安全性正是依靠分解两个大素数之积的困难性实现的。虽然破解RSA算法存在极高的理论难度,但许多研究者一直在探寻有效实现大整数分解的方法,这关系着当今密码体系乃至信息安全的完善与更新。试除法是最早被记录的整数分解方法,但是对于应用在密码体系中的大整数,试除法所需的时间远远超过了一般密码的有效期。数域筛法(NFS)是目前分解较大整数最好的方法,但其过程较为繁琐,包括多项式选择、数对筛选、矩阵生成、矩阵求解、平方根求解五个步骤,并且具有一定的随机性。除此之外,近些年还出现了量子算法对整数进行分解,但由于目前无法做到大量量子比特的稳定控制,量子算法的实际应用还有相当长的距离。
[0003]伊辛模型最初是一种描述物质铁磁性的物理模型,现在已经发展为有着诸多应用场景的数学计算模型,它包含许多自旋状态为“+1”或“-1”的自旋节点。该模型中,自旋节点间存在两体相互作用,以及外部磁场的作用,从而改变自旋节点的自旋状态,基于这种特性,伊辛模型系统的哈密顿量会逐步降低,直至到达基态。伊辛模型是解决组合优化问题的有效方法,可以将问题参数转化为相互作用强度和外部磁场强度,进而利用求解伊辛模型获取最优解。目前,许多由物理信号(如电信号或光信号等)表征自旋节点的伊辛模型已经被提出,具有计算速度快、能耗低等特性。虽然将大整数分解问题转化为伊辛模型的例子已经有所报道,但现有的方法只有数学上的推导,未形成一般的程序流程,并且需要将多体相互作用转化为二体相互作用,同时对于更大整数的转化,还面临着模型系数过大、精度要求过高等问题。另外,将大整数分解问题转化为伊辛模型后,没有更进一步地分析模型特性,未对迭代过程做出针对性的改进。
[0004]专利文献CN101814109A(申请号:CN200910078286.4)公开了一种基于DNA自组装计算的分解大整数的方法,所述方法包括以下步骤:基于DNA自组装技术构建分解整数的逻辑运算架构;形成初始的运算TILE,包括起始TILE、计算TILE和数据传递TILE;在预先设定的实验条件下,控制温度以及溶液的浓度,保证DNA自组装顺利完成组装;解的检测,寻找出运算完整的自组装结构,分离并提取其中的报告链,根据编码原则读取结果。但该专利技术没有引入特定的计算模型,没有构建只含有二次项、一次项和常数项的损失函数。

技术实现思路

[0005]针对现有技术中的缺陷,本专利技术的目的是提供一种基于伊辛模型的大整数分解问题映射方法及系统。
[0006]根据本专利技术提供的一种基于伊辛模型的大整数分解问题映射方法,包括:
[0007]步骤S1:对二进制乘法竖式中的每个中间项引入辅助变量,构建辅助块,对每块所得到的损失函数进行形式上的等价替换,使其满足伊辛模型的形式要求,将各块的损失函数相加并作变量代换,化简得到伊辛模型的哈密顿量表达式;
[0008]步骤S2:根据不同自旋状态下哈密顿量的取值及其范围的分布特征,采取由少到多地更新自旋状态的技术方案,并在特定情况下改变判别条件,使其能够跳出局部最优解,直至伊辛模型到达自旋基态;
[0009]步骤S3:获取两个素因子信息,实现大整数分解,进一步由欧拉公式和密码系统中开放的公钥得到RSA加密算法中的私钥,使用私钥将密文信息转换为原始明文信息,实现对RSA密码系统的破解。
[0010]优选地,在所述步骤S1中:
[0011]针对每个辅助块产生特定形式的损失函数,代入边界条件,并对每个损失函数进行形式上的等价替换,使其不包含二次项以上的高次项,满足伊辛模型的形式要求,进而将全部的损失函数相加、变量代换、化简,得到伊辛模型的哈密顿量表达式,提取出相互作用矩阵J和外部磁场向量h,将大整数分解问题转化为寻找该伊辛模型自旋基态的求解问题;
[0012]所述的转化过程是通过固定流程实现的,适用于任意大整数,在计算机内程序化完成,针对特定的大整数,不需要单独分析或推导中间过程,能够直接得到对应的伊辛模型;
[0013]所述的辅助变量是依据两个因数的二进制乘法竖式中的每个中间项a
i
b
j
逐个引入的,即y
i,j
和z
i,j
,其中y
i,j
为上方辅助块中的二进制变量相加所得的最低位结果,z
i,j
为右方辅助块中的二进制变量相加所得的进位,a
i
b
j
、y
i,j
、z
i,j
三项构成一个辅助块,产生损失函数;
[0014]所述的损失函数的形式为F
i,j
=(a
i
b
j
+y
i,j
+z
i,j

y
i+1,j
‑1‑
2z
i

1,j
)2,等价替换后的形式为
[0015]所述的等价替换后的损失函数不含有二次以上的项,无需降次操作,并且将其全部相加、化简、变量代换后所得哈密顿量表达式中,变量的系数大小被限制在预设范围,所得伊辛模型的相互作用矩阵J和外部磁场向量h的元素大小也是有限范围的。
[0016]优选地,步骤S1.1:将所要分解的目标大整数表示为二进制形式,记录位数为w;
[0017]步骤S1.2:假设目标大整数的两个因数的二进制位数分别是k和h,二进制形式从高位到低位分别为a1,a2,

,a
k
和b1,b2,

,b
h

[0018]步骤S1.3:对于两个因数的二进制乘法竖式中的每个中间项a
i
b
j
,逐个引入辅助变量y
i,j
和z
i,j
,并将a
i
b
j
、y
i,j
、z
i,j
三项作为一个辅助块;
[0019]步骤S1.4:每个辅助块产生一个损失函数,对于边界上的辅助块,根据损失函数的形式引入额外的辅助变量,并代入边界条件;
[0020]步骤S1.5:对每块得到的损失函数进行形式上的等价替换,使其只包含二次项;
[0021]步骤S1.6:将各个替换后的损失函数相加并进行变量代换,本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种基于伊辛模型的大整数分解问题映射方法,其特征在于,包括:步骤S1:对二进制乘法竖式中的每个中间项引入辅助变量,构建辅助块,对每块所得到的损失函数进行形式上的等价替换,使其满足伊辛模型的形式要求,将各块的损失函数相加并作变量代换,化简得到伊辛模型的哈密顿量表达式;步骤S2:根据不同自旋状态下哈密顿量的取值及其范围的分布特征,采取由少到多地更新自旋状态的技术方案,并在特定情况下改变判别条件,使其能够跳出局部最优解,直至伊辛模型到达自旋基态;步骤S3:获取两个素因子信息,实现大整数分解,进一步由欧拉公式和密码系统中开放的公钥得到RSA加密算法中的私钥,使用私钥将密文信息转换为原始明文信息,实现对RSA密码系统的破解。2.根据权利要求1所述的基于伊辛模型的大整数分解问题映射方法,其特征在于,在所述步骤S1中:针对每个辅助块产生特定形式的损失函数,代入边界条件,并对每个损失函数进行形式上的等价替换,使其不包含二次项以上的高次项,满足伊辛模型的形式要求,进而将全部的损失函数相加、变量代换、化简,得到伊辛模型的哈密顿量表达式,提取出相互作用矩阵J和外部磁场向量h,将大整数分解问题转化为寻找该伊辛模型自旋基态的求解问题;所述的转化过程是通过固定流程实现的,适用于任意大整数,在计算机内程序化完成,针对特定的大整数,不需要单独分析或推导中间过程,能够直接得到对应的伊辛模型;所述的辅助变量是依据两个因数的二进制乘法竖式中的每个中间项a
i
b
j
逐个引入的,即y
i,j
和z
i,j
,其中y
i,j
为上方辅助块中的二进制变量相加所得的最低位结果,z
i,j
为右方辅助块中的二进制变量相加所得的进位,a
i
b
j
、y
i,j
、z
i,j
三项构成一个辅助块,产生损失函数;所述的损失函数的形式为F
i,j
=(a
i
b
j
+y
i,j
+z
i,j

y
i+1,j
‑1‑
2z
i

1,j
)2,等价替换后的形式为所述的等价替换后的损失函数不含有二次以上的项,无需降次操作,并且将其全部相加、化简、变量代换后所得哈密顿量表达式中,变量的系数大小被限制在预设范围,所得伊辛模型的相互作用矩阵J和外部磁场向量h的元素大小也是有限范围的。3.根据权利要求2所述的基于伊辛模型的大整数分解问题映射方法,其特征在于:步骤S1.1:将所要分解的目标大整数表示为二进制形式,记录位数为w;步骤S1.2:假设目标大整数的两个因数的二进制位数分别是k和h,二进制形式从高位到低位分别为a1,a2,

,a
k
和b1,b2,

,b
h
;步骤S1.3:对于两个因数的二进制乘法竖式中的每个中间项a
i
b
j
,逐个引入辅助变量y
i,j
和z
i,j
,并将a
i
b
j
、y
i,j
、z
i,j
三项作为一个辅助块;步骤S1.4:每个辅助块产生一个损失函数,对于边界上的辅助块,根据损失函数的形式引入额外的辅助变量,并代入边界条件;步骤S1.5:对每块得到的损失函数进行形式上的等价替换,使其只包含二次项;步骤S1.6:将各个替换后的损失函数相加并进行变量代换,然后化简得到伊辛模型的哈密顿量表达式;步骤S1.7:表达式中的各个变量作为自旋节点,分别提取二元二次项系数和一次项系
数组成伊辛模型的相互作用矩阵J和外部磁场向量h,并将其余的不变量部分的和记为C。4.根据权利要求1所述的基于伊辛模型的大整数分解问题映射方法,其特征在于,在所述步骤S2中:步骤S2.1:随机产生初始自旋状态,根据得到的伊辛模型计算出哈密顿量;步骤S2.2:每次改变x个自旋,x的初始值为1,随着同一个自旋状态的改变次数增多,使x逐渐增大;步骤S2.3:若改变后的哈密顿量减小,则接受这次对自旋状态的改变,并将x重置为1,否则继续保持改变前的自旋状态;步骤S2.4:若x到达一定值仍未被重置,则降低接受自旋状态改变的判别标准,直到x被重置;步骤S2.5:重复流程步骤S2.2

步骤S2.4,直到自旋状态对应的哈密顿量为

C,说明此时伊辛模型已到达自旋基态,包含目标大整数的两个素因子信息,则实现大整数分解。5.根据权利要求4所述的基于伊辛模型的大整数分解问题映射方法,其特征在于:所述的降低接受自旋状态改变的判别标准,通过设置一个跳出局部最优解所需的判别能量E_jump,使当前自旋状态所对应的哈密顿量不再是计算得到的,而是将其直接设为E_jump,然后重复迭代过程,直至再次更新哈密顿量得以实现。6.一种...

【专利技术属性】
技术研发人员:张文甲何祖源王绍萌
申请(专利权)人:上海交通大学
类型:发明
国别省市:

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

1