System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind() 数值转换方法及数值转换系统技术方案_技高网

数值转换方法及数值转换系统技术方案

技术编号:40824797 阅读:2 留言:0更新日期:2024-04-01 14:45
本发明专利技术公开了一种数值转换方法,包括根据第一数值,利用第一模数加法循环累加第一数值,以在达到第一预设循环次数后产生第二数值;根据第二数值,利用第二模数加法循环累加第二数值,以在达到第二预设循环次数后产生第三数值;将第三数值输入至蒙哥马利幂模运算函数,以产生蒙哥马利转换参数;及根据蒙哥马利转换参数,将整数定义域内的第一转换数值转换至在蒙哥马利定义域内的第二转换数值。

【技术实现步骤摘要】

本专利技术涉及一种数值转换方法及数值转换系统,特别是涉及一种能高速计算且低运算复杂度的数值转换方法及数值转换系统。


技术介绍

1、随着科技的日新月异,许多资料是了避免被盗用或是窃取,常会使用加密保护。因此,密码系统(cryptosystem)亦成为现在数据保护的重点。在密码学中,大致可区分为对称密钥加密法(symmetric-key algorithm)以及非对称密钥加密法(asymmetric-keyalgorithm)。非对称密钥加密法又称为公钥密码学(public-key cryptography)。对称密钥加密法在加密和解密时使用相同的密钥,或是使用两个可以简单地相互推算的密钥。然而,与公钥加密相比,要求双方取得相同的密钥是对称密钥加密的主要缺点其一。而在公钥加密法中需要两个密钥,一个是公开密钥,另一个是私有密钥。公开密钥用于加密,私有密钥则用于解密。使用公开密钥把明文加密后所得的密文,只能用相对应的私有密钥才能解密并得到原本的明文,故安全性较高。

2、而在公钥密码系统中,rsa加密算法是一种非常可靠的加密方式。在rsa加密算法中,只要密钥的长度够长,由于因子分解困难,因此几乎不会被破解。无论是在rsa加密算法或是公钥密码系统中,蒙哥马利算法(montgomery multiplication algorithm)是核心技术。蒙哥马利算法可以将整数定义域(integer domain)的数值转换为蒙哥马利定义域(montgomery domain)的数值。然而,常用的蒙哥马利算法进行数值转换时,其数值转换会被值域限制,如值域限制是2的次方数,故实际应用上的弹性仍不足。

3、因此,发展一种复杂度较低且没有值域限制的蒙哥马利数值转换方法,是公钥密码系统的重要设计议题。


技术实现思路

1、本专利技术实施例提出一种数值转换方法。种数值转换方法包含根据第一数值,利用第一模数加法循环累加第一数值,以在达到第一预设循环次数后产生第二数值,其中第二数值是2的幂次方模数于常数,根据第二数值,利用第二模数加法循环累加第二数值,以在达到第二预设循环次数后产生第三数值,其中第三数值是第二数值乘上2的幂次方后,模数于该常数,将第三数值输入至蒙哥马利幂模运算函数,以产生一蒙哥马利转换参数,其中蒙哥马利转换参数是第二数值的平方模数于常数,及根据蒙哥马利转换参数,将整数定义域内的第一转换数值转换为在蒙哥马利定义域内的第二转换数值。

2、本专利技术另一实施例提出一种数值转换系统。数值转换系统包含处理器以及运算电路。运算电路耦接于处理器。运算电路包含第一多任务器、第一缓存器、模数加法器、蒙哥马利乘法器。第一缓存器耦接于第一多任务器。模数加法器耦接于第一多任务器及第一缓存器。蒙哥马利乘法器耦接于第一多任务器及第一缓存器。处理器控制第一多任务器、第一缓存器及模数加法器以形成第一模数加法循环。在第一多任务器接收一第一数值后,根据第一数值,利用第一模数加法循环累加第一数值,以在达到第一预设循环次数后产生第二数值。第二数值是2的幂次方模数于常数。第二数值存于第一缓存器中。处理器控制第一多任务器、第一缓存器及模数加法器形成第二模数加法循环。并根据第二数值,利用第二模数加法循环累加第二数值,以在达到第二预设循环次数后产生第三数值。第三数值存于第一缓存器中。第三数值是第二数值乘上2的幂次方后,模数于常数,且处理器控制蒙哥执行蒙哥马利幂模运算函数,以根据第三数值而产生蒙哥马利转换参数。蒙哥马利转换参数是第二数值的平方模数于常数。处理器根据蒙哥马利转换参数,将整数定义域内的第一转换数值转换为在蒙哥马利定义域内的第二转换数值。

本文档来自技高网...

【技术保护点】

1.一种数值转换方法,其特征在于,包括:

2.如权利要求1所述的方法,其特征在于,所述第一数值、所述第二数值、所述第三数值以及所述蒙哥马利转换参数是正数,且所述常数是正奇数。

3.如权利要求1所述的方法,其特征在于,若以T表示所述第一数值,则所述第一模数加法循环表示为T=(T+T)mod N。

4.如权利要求3所述的方法,其特征在于,所述第一预设循环次数是K-m+1,所述第一数值是2m-1,m是顶函数(Ceiling Function)于log2N的输出,且K是第一预定正整数,N是所述常数,且当所述第一模数加法循环达到所述第一预设循环次数后,所述第二数值R表示为2Kmod N。

5.如权利要求4所述的方法,其特征在于,所述第二模数加法循环表示为R=(R+R)modN。

6.如权利要求5所述的方法,其特征在于,所述第二预设循环次数是λ,当所述第二模数加法循环达到所述第二预设循环次数后,所述第三数值表示为(2λ×R)mod N,λ是第二预定正整数。

7.如权利要求6所述的方法,其特征在于,所述蒙哥马利幂模运算函数表示为(SE×R-(E-1))mod N,S是函数输入,E是第三预定正整数,若所述函数输入是所述第三数值(2λ×R)mod N,则所述蒙哥马利幂模运算函数的输出是所述蒙哥马利转换参数,表示为(2λ×E×R)mod N。

8.如权利要求7所述的方法,其特征在于,还包括:

9.如权利要求1至8中任一项所述的方法,其特征在于,根据所述蒙哥马利转换参数将所述第一转换数值转换为所述第二转换数值的步骤包括:

10.一种数值转换系统,其特征在于,包括:

11.如权利要求10所述的系统,其特征在于,所述第一多任务器包括:

12.如权利要求11所述的系统,其特征在于,所述蒙哥马利乘法器的第一输入端耦接于所述第一缓存器的输出端,所述运算电路更包括:

13.如权利要求12所述的系统,其特征在于,在产生所述第三数值后,所述处理器控制所述第二多任务器的所述输出端电性连接其所述第一输入端,当执行所述蒙哥马利幂模运算函数时,所述处理器控制所述第一多任务器的所述输出端电性连接其所述第三输入端,且所述处理器控制所述第二多任务器的所述输出端电性连接其所述第二输入端,且所述处理器判断所述第三预定正整数的位是1或0,以控制所述第三多任务器的所述输出端电性连接其所述第一输入端或其所述第二输入端。

14.如权利要求10所述的系统,其特征在于,若以T表示所述第一数值,则所述第一模数加法循环表示为T=(T+T)mod N。

15.如权利要求14所述的系统,其特征在于,所述第一预设循环次数是K-m+1,所述第一数值是2m-1,m是一顶函数(Ceiling Function)于log2N的输出,且K是第一预定正整数,N是所述常数,且当所述第一模数加法循环达到所述第一预设循环次数后,所述第二数值R表示为2K mod N。

16.如权利要求15所述的系统,其特征在于,所述第二模数加法循环表示为R=(R+R)mod N。

17.如权利要求16所述的系统,其特征在于,所述第二预设循环次数是λ,当所述第二模数加法循环达到所述第二预设循环次数后,所述第三数值表示为(2λ×R)mod N,λ是第二预定正整数。

18.如权利要求17所述的系统,其特征在于,所述蒙哥马利幂模运算函数表示为(SE×R-(E-1))mod N,S是函数输入,E是所述第三预定正整数,若所述函数输入是所述第三数值(2λ×R)mod N,则所述蒙哥马利幂模运算函数的输出是所述蒙哥马利转换参数,表示为(2λ×E×R)mod N。

19.如权利要求18所述的系统,其特征在于,所述处理器设定K=λ×E,使所述第四数值表示为R2 mod N。

20.如权利要求10至19任一项所述的系统,其特征在于,所述处理器藉由转换函式将所述第一转换数值转换至所述第二转换数值,所述转换函式表示为(A×(R2)×R-1)mod N,A是所述第一转换数值、所述蒙哥马利转换参数是R2mod N,且所述第二数值的倒数是R-1,N是所述常数,其中所述A小于所述常数(A<N)。

...

【技术特征摘要】

1.一种数值转换方法,其特征在于,包括:

2.如权利要求1所述的方法,其特征在于,所述第一数值、所述第二数值、所述第三数值以及所述蒙哥马利转换参数是正数,且所述常数是正奇数。

3.如权利要求1所述的方法,其特征在于,若以t表示所述第一数值,则所述第一模数加法循环表示为t=(t+t)mod n。

4.如权利要求3所述的方法,其特征在于,所述第一预设循环次数是k-m+1,所述第一数值是2m-1,m是顶函数(ceiling function)于log2n的输出,且k是第一预定正整数,n是所述常数,且当所述第一模数加法循环达到所述第一预设循环次数后,所述第二数值r表示为2kmod n。

5.如权利要求4所述的方法,其特征在于,所述第二模数加法循环表示为r=(r+r)modn。

6.如权利要求5所述的方法,其特征在于,所述第二预设循环次数是λ,当所述第二模数加法循环达到所述第二预设循环次数后,所述第三数值表示为(2λ×r)mod n,λ是第二预定正整数。

7.如权利要求6所述的方法,其特征在于,所述蒙哥马利幂模运算函数表示为(se×r-(e-1))mod n,s是函数输入,e是第三预定正整数,若所述函数输入是所述第三数值(2λ×r)mod n,则所述蒙哥马利幂模运算函数的输出是所述蒙哥马利转换参数,表示为(2λ×e×r)mod n。

8.如权利要求7所述的方法,其特征在于,还包括:

9.如权利要求1至8中任一项所述的方法,其特征在于,根据所述蒙哥马利转换参数将所述第一转换数值转换为所述第二转换数值的步骤包括:

10.一种数值转换系统,其特征在于,包括:

11.如权利要求10所述的系统,其特征在于,所述第一多任务器包括:

12.如权利要求11所述的系统,其特征在于,所述蒙哥马利乘法器的第一输入端耦接于所述第一缓存器的输出端,所述运算电路更包括:

13.如权利要求12所述的系统,其特征在于,在产生所述第三数值后,所述处理器控制所述第二多任务器的所述输出端电性连接其所...

【专利技术属性】
技术研发人员:林文景
申请(专利权)人:熵码科技股份有限公司
类型:发明
国别省市:

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

1