CN1258051A - 一种公开密钥加密体制和装置 - Google Patents
一种公开密钥加密体制和装置 Download PDFInfo
- Publication number
- CN1258051A CN1258051A CN 99125712 CN99125712A CN1258051A CN 1258051 A CN1258051 A CN 1258051A CN 99125712 CN99125712 CN 99125712 CN 99125712 A CN99125712 A CN 99125712A CN 1258051 A CN1258051 A CN 1258051A
- Authority
- CN
- China
- Prior art keywords
- key
- integer
- program
- public
- algorithm
- 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.)
- Pending
Links
Images
Landscapes
- Storage Device Security (AREA)
Abstract
本发明利用数学规划中整数不定方程组求解的困难提出了一种全新的公开密钥加密体制,该体制防止破译与伪造的依据是整数不定方程组的求解在计算上是强NP问题。本发明的加密过程只简单地做一个矩阵向量积,而加密过程则需要经过一系列矩阵初等变换,再求解二元整数不定方程组。本发明是一种非数论体系,使用32位或64位的算术运算即可完成,这对硬件开发是相当有利的。经特殊处理,本发明可以只涉及算术加法和乘法运算,因此特别适宜于数字信号处理器DSP上的开发。本发明的一个重要应用是可以象RSA或DH那样,承担网络安全中的密钥交换分量。
Description
发明背景:本发明属于密码技术和计算机安全等技术领域,是一种利用数学上的困难问题实现公开密钥数据加密的数据处理方法及其器件。背景描述:1976年,美国密码学家戴费和海尔曼首次提出了公开密码体系。与一般对称加密技术不同的是该体系使用两个在数学上配对的密钥。一个可以公开,用于数据加密,因此称为公开密钥。另一个是秘密的,用于数据解密,因此成为私有密钥。如附图1所示,该体系特别适宜于网络加密。由于公开密钥体系速度较慢且对明文是扩散的,因此并不常用于直接加密明文,而是与对称密码配合用于网络加密中的密钥传输。
第一个切实可行的公开密钥算法是由芮沃斯特,沙米尔和阿当蔓提出的,这就是著名的RSA公开密钥体制,该体制基于数学中的大数分解困难。精确地说,假设p,q是二素数,n=pq。当n足够大时,由n得出p和q在数学上是困难的,因此p和q是该体制中的秘密。一旦我们找到了快速的大数分解方法,该体制将完全崩溃。该体制的特点是其签名与加密是对称的互逆过程,即既可用于签名又可用于加密。该算法的专利权由RSA数据安全公司所持有,其终止期限为2000年末。事实上目前的很多商业产品均基于该算法。但是,该体制有一些致命的缺陷:由于大数因子分解的新成就,导致该体制所采用的数学运算位数越来越长。数学运算的位数过长导致硬件开发的困难,并且硬件产品的开发寿命大大降低。另外其签名和加密的对称性一直是密码学家争论的焦点,这也是导致美国政府未能将其纳入数字签名标准的原因。
能够取代RSA并在公开网络中传送密钥的是由戴费和海尔曼提出的密钥交换算法,简称为DH密钥交换体制,它虽然不是一种加密算法,但可用于在公开网络中交换密钥。该体制保证安全的手段在于数论中离散对数问题的困难。精确地说,假设p是一个位数很长的素数,a是数域p中的本元素,通过执行如下协议就可以在用户二端产生一把共亨密钥。A选择一个大于零小于p的随机数vA;A计算uA=exp(vA).B选择一个大于零小于p的随机数vB B计算uB=exp(vB).A传送uA给B:B传送uB给A;A计算K=exp(uB);B计算K=exp(uA).这里exp(x)表示ax mod p。容易验证:A和B最后一步所得到的K值是相同的,因此该数可以成为A和B之间的共享密钥。著名的软件产品PGP的最新版就是采用了这种策略,以取代RSA,来实现Email用户之间的数据传送。该算法被认为比RSA更安全。
近年来,在公开密钥系统的研究中,人们采用背包问题,椭圆曲线方法以及LUCAS函数。但是几乎所有基于背包问题的公开密钥系统都被破译了,而后二者似乎比RSA方法更安全。目前大部份安全公开密钥系统都是基于数论的NP问题,但这些系统的公有特点是:所使用的数学运算位数过长(1024或2048位加减乘除),从而导致软件运行速度缓慢,硬件开发困难的不利局面。发明简要:本发明基于整数线性不定方程Ax=b求解的困难。在特定的约束下,该问题被证明是强NP问题,也就是说不存在能在多项式时间内找出它的解的任何算法。基于这个前题,我们从对角阵出发利用矩阵的初等变换构造整数矩阵A,其大小为N行M列;公开A作为的公开密钥,而保留构造A的对角阵和初等变换为私有密钥不公开。对于一个大小为M的明文信息x,其密文为Ax=y。解密密文y需要首先做一系列矩阵的初等变换,再求解二元整数不定方程得到x。
本发明所涉及的运算都可以使用32位或64位的整数运算,如果采用更加精巧的构造,甚至可以避免整数除法运算,因此可以非常方便地开发硬件产品。
无论使用32位或64位运算,该加密体制都必须有一个强有力的位溢出控制算法,该算法将对所有的数学运算实行位溢出检测。
本发明还给出了产生密钥的算法,该算法从对角阵出发,经一系列矩阵初等变换得到公开密钥和私有密钥。发明细节:为描述方便,本部分总假设M=2N。这样作有助于把矩阵分解成同样尺寸的块,而方阵形式是最容易处理的。根据矩阵论的基本原理,任何一个整数矩阵都可利用初等变换转化为对角阵,因此构造合适的矩阵作为以上描述的加密矩阵,可以从对角阵出发,经一系列初等变换得到。
为了构造加密矩阵A(公开密钥),我们首先将A划成块(A1,A2),这里A1和A2都是N行N列的方阵,于是可以利用对角阵和初等变换构造A1和A2。
假设从对角阵D1和D2经过了s个N阶左初等变换,记为PL 1,PL 2, …PL s,和t个2N阶右初等变换PR 1,PR 2,…,PR t得到了A1和A2。则
A=PL 1PL 2…PL w(D1,D2)PR 1PR 2…PR t (1)
由此算出的A可以公开做为公开密钥,但是我们需要存储A的所有初等变换和对角阵,以便解密方便。由此得到如下的密钥生成算法
密钥生成算法
1.适当选取对角阵A1和A2,令A=(A1,A2)
2.随机选取N阶初等阵PL,计算A=PLA
3.溢出检测A,若产生溢出转2,否则继续
4.重复2和3多次
5.随机选取2N阶初等阵PR,计算A=APR
6.溢出检测A1和A2,若产生溢出转5,否则继续
7.重复5和6多次
有了加密矩阵(公开密钥)A,加密过程是相当容易的。若是x明文数据,则y=Ax就是x所对应的密文信息。本发明的困难在于如何把x从y中解出。这个问题必须借助构造公开密钥的细节,即构造A所使用的初等阵PL 1PL 2…PL w和PR 1PR 2…PR t以及相应的对角阵。精确地说,假设
PL 1PL 2…PL sAPR 1PR 2…PR t=(D1,D2), (2)其中D1和D2是对角阵,则解密过程需要执行如下的运算。
解密算法:
1.计算T=PL 1PL 2…PL sy
2.求解(D1,D2)v=T
3.计算y=PR 1PR 2…PR tv
上述解密算法的步1)和步3)是一系列简单的矩阵变换,可很容易通过算术乘加运算实现。但步2)的求解需要一定的技巧和限制,该问题可以简单地划为二元一次不定方程的求解,即从如下整数方程
ax+by=z (3)求解x和y。如果a和b互素,则对任意,我们可以得到(3)在一定范围的解,因此在本加密体制对角矩阵D1和D2中对角元的选取要有一定限制。
总之,解密过程需要首先做一系列矩阵的初等变换,然后求解一个对角整数方程组,再做一系列矩阵的初等变换,得到明文信息。这里对角矩阵的选取要有一定的限制,否则无法得到问题的解。硬件描述:该发明的实现需要借助于一个物理实体,该实体可能是一台PC机或者是一个专用芯片。如附图1所示,这个实体至少包含三个部件,即加密器①,解密器②和密钥生成器③。该实体的置动需执行如下操作:密钥生成器产生两个在数学上配对的密钥,一把公开密钥⑥,一把私有密钥⑦。明文信息④和公开密钥⑥同时输入加密器①,经过简单地计算向量和矩阵的积,就可以得到密文信息⑤。密文信息⑤经过公开信道⑧传送到解密器②,结合私有密钥⑦恢复出明文信息④。
如附图2所示,密钥生成器至少包含三个部件,即随机数发生器①,矩阵变换装置③和溢出控制装置②。矩阵变换装置③可以有独立的存储单元和处理单元,也可以与其它部件共享这些单元。密钥生成器的置动需执行如下操作:随机数发生器①传送随机数到矩阵变换装置③,矩阵变换装置③利用随机数形成随机初等阵,同时做矩阵积,在运算过程中需要通过溢出控制装置②的检测,最后输出矩阵积作为公开密钥⑥,随机初等阵作为私有密钥⑦。
加密器至少包含二个部件存储器①和中央处理器②,如附图3所示。存储器①用来存储该加密体制的处理代码和运算过程中的动态数据。中央处理器②则执行该密码体制的运算代码。因此它必须包含至少一个累加器,至少一个乘法器,至少一个移位寄存器和多个其他功能的寄存器,同时还应有一个与外存交换数据的物理接口。加密器的置动需执行如下操作:明文信息④和公开密钥⑥同时输入中央处理器②,经过简单地计算向量和矩阵的积,就可以得到密文信息⑤。
解密器也至少包含二个部件存储器①和中央处理器②,如附图4所示。存储器①用来存储该解密体制的处理代码和运算过程中的动态数据。中央处理器②则执行该密码体制的运算代码。因此它必须包含至少一个累加器,至少一个乘法器,至少一个移位寄存器和多个其他功能的寄存器,同时还应有一个与外存交换数据的物理接口。解密器的置动需执行如下操作:密文信息⑤和私有密钥⑦同时输入中央处理器②,经过一系列矩阵的初等变换积,然后求解一个对角整数方程组,再做一系列矩阵的初等变换,得到明文信息④。
上述加密器,解密器和密钥生成器可以组合为一体,以共享存储器和处理器,降低成本;也可分体工作,使用各自独立的存储器和处理器,完成不同的任务要求。
本装置可以做密钥交换工具,以取代DH应用于网络中数据的安全传输。由于其算法简单,硬件易于实现,必将成为电子商务安全中一个有竟争力的候选者。
Claims (12)
1.一种公开密钥加解密体制,使用户把明文信息转换为密文信息,同时也可把密文转化为明文。其特征在于该体制基于整数不定方程组求解的困难,它包含一个公开密钥,一个私有密钥,一个产生密钥的算法,一个加密算法和一个解密算法。
2.如上述权利要求1所述之体制,包含一个加密算法与解密算法,其特征在于加密算法只要计算一个整数矩阵向量积,解密算法则需要首先做一系列矩阵的初等变换,然后求解一个对角整数方程组,再做一系列矩阵的初等变换,得到明文。
3.如上述权利要求1所述之体制,包含一个产生密钥的算法,其特征在于该算法从对角阵出发,执行一系列随机的初等变换,输出相应初等变换作为私有密钥,同时输出一个整数矩阵作为公开密钥。
4.如上述权利要求3所述之算法,所有运算都是有限位整数,更包含一个伪随机数生成算法和溢出控制系统,其特征在于伪随机数生成算法控制产生初等变换的随机性,溢出控制系统对所有算术运算做溢出检测。
5.一种公开密钥加解密程序,使用户把明文信息转换为密文信息,同时也可把密文转化为明文。其特征在于该程序基于整数不定方程组求解的困难,它包含一个公开密钥,一个私有密钥,一个产生密钥的程序,一个加密程序和一个解密程序。
6.如上述权利要求5所述之程序,包含一个加密程序与解密程序,其特征在于加密程序只要计算一个整数矩阵向量积,解密程序则需要首先做一系列矩阵的初等变换,然后求解一个对角整数方程组,再做一系列矩阵的初等变换,得到明文。
7.如上述权利要求5所述之程序,包含一个产生密钥的程序,其特征在于该程序从对角阵出发,执行一系列随机的初等变换,输出相应初等变换作为私有密钥,同时输出一个整数矩阵作为公开密钥。
8.如上述权利要求7所述之程序,所有运算都是有限位整数,更包含一个伪随机数生成程序和溢出控制程序,其特征在于伪随机数生成程序控制产生初等变换的随机性,溢出控制程序对所有算术运算做溢出检测。
9.一种公开密钥加解密装置,使用户把明文信息转换为密文信息,同时也可把密文转化为明文。其特征在于该装置基于整数不定方程组求解的困难,它包含一个公开密钥,一个私有密钥,一个产生密钥的装置,一个加密装置和一个解密装置。
10.如上述权利要求9所述之装置,包含一个加密装置与解密装置,其特征在于加密装置只要计算一个整数矩阵向量积,解密装置则需要首先做一系列矩阵的初等变换,然后求解一个对角整数方程组,再做一系列矩阵的初等变换,得到明文。
11.如上述权利要求9所述之装置,包含一个产生密钥的装置,其特征在于该装置从对角阵出发,执行一系列随机的初等变换,输出相应初等变换作为私有密钥,同时输出一个整数矩阵作为公开密钥。
12.如上述权利要求11所述之装置,所有运算都是有限位整数,更包含一个伪随机数生成装置和溢出控制装置,其特征在于伪随机数生成装置控制产生初等变换的随机性,溢出控制装置对所有算术运算做溢出检测。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN 99125712 CN1258051A (zh) | 1999-12-23 | 1999-12-23 | 一种公开密钥加密体制和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN 99125712 CN1258051A (zh) | 1999-12-23 | 1999-12-23 | 一种公开密钥加密体制和装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN1258051A true CN1258051A (zh) | 2000-06-28 |
Family
ID=5284123
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN 99125712 Pending CN1258051A (zh) | 1999-12-23 | 1999-12-23 | 一种公开密钥加密体制和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN1258051A (zh) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN100431294C (zh) * | 2002-11-05 | 2008-11-05 | 管海明 | 基于亚群上离散对数问题的密钥分配及加解密协议的方法 |
CN1773905B (zh) * | 2004-11-10 | 2010-08-18 | 日电(中国)有限公司 | 在安全通信系统中生成匿名公钥的方法、设备和系统 |
CN1645791B (zh) * | 2003-11-12 | 2010-09-01 | 松下电器产业株式会社 | Rsa公开密钥生成装置、rsa解密装置及rsa署名装置 |
CN101847427A (zh) * | 2010-03-08 | 2010-09-29 | 深圳市同洲电子股份有限公司 | 录音机及其加密、解密单元,录音文件加密、解密方法 |
CN110147678A (zh) * | 2019-05-21 | 2019-08-20 | 湖南大学 | 一种用于工控系统的数据加密方法和系统 |
CN110419194A (zh) * | 2017-02-15 | 2019-11-05 | 皇家飞利浦有限公司 | 密钥交换设备和方法 |
-
1999
- 1999-12-23 CN CN 99125712 patent/CN1258051A/zh active Pending
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN100431294C (zh) * | 2002-11-05 | 2008-11-05 | 管海明 | 基于亚群上离散对数问题的密钥分配及加解密协议的方法 |
CN1645791B (zh) * | 2003-11-12 | 2010-09-01 | 松下电器产业株式会社 | Rsa公开密钥生成装置、rsa解密装置及rsa署名装置 |
CN1773905B (zh) * | 2004-11-10 | 2010-08-18 | 日电(中国)有限公司 | 在安全通信系统中生成匿名公钥的方法、设备和系统 |
US7873169B2 (en) | 2004-11-10 | 2011-01-18 | Nec (China) Co., Ltd. | Methods, devices and systems for generating anonymous public keys in a secure communication system |
CN101847427A (zh) * | 2010-03-08 | 2010-09-29 | 深圳市同洲电子股份有限公司 | 录音机及其加密、解密单元,录音文件加密、解密方法 |
CN110419194A (zh) * | 2017-02-15 | 2019-11-05 | 皇家飞利浦有限公司 | 密钥交换设备和方法 |
CN110147678A (zh) * | 2019-05-21 | 2019-08-20 | 湖南大学 | 一种用于工控系统的数据加密方法和系统 |
CN110147678B (zh) * | 2019-05-21 | 2020-10-27 | 湖南大学 | 一种用于工控系统的数据加密方法和系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Zhang et al. | A novel image encryption scheme based on a linear hyperbolic chaotic system of partial differential equations | |
US5271061A (en) | Method and apparatus for public key exchange in a cryptographic system | |
Almaiah et al. | A new hybrid text encryption approach over mobile ad hoc network | |
EP1467512B1 (en) | Encryption process employing chaotic maps and digital signature process | |
US5159632A (en) | Method and apparatus for public key exchange in a cryptographic system | |
CN109039640B (zh) | 一种基于rsa密码算法的加解密硬件系统及方法 | |
US7912213B2 (en) | Device, system and method for fast secure message encryption without key distribution | |
WO2009026771A1 (fr) | Procédé pour négocier une clé, chiffrer et déchiffrer des informations, signer et authentifier les informations | |
Agrawal et al. | Elliptic curve cryptography with hill cipher generation for secure text cryptosystem | |
Jeng et al. | An efficient key-management scheme for hierarchical access control based on elliptic curve cryptosystem | |
WO2013021360A1 (en) | Encryption and decryption method | |
Sood et al. | A literature review on rsa, des and aes encryption algorithms | |
CN109756335A (zh) | 一种阶为梅森素数的有限域乘法群的公钥加密解密方法 | |
KR100457177B1 (ko) | 유한체 상의 두 원소의 곱을 구하는 직렬-병렬 곱셈기 | |
CN110912673B (zh) | 具有双解密机制的加性同态加解密方法 | |
CN102246456A (zh) | 用于对抗对基于循环群的加密的侧通道攻击的系统和方法 | |
CN1258051A (zh) | 一种公开密钥加密体制和装置 | |
Reddy | RM-RSA algorithm | |
KR20010067016A (ko) | 알에스에이 공개키 암호 고속화 장치 및 방법 | |
Wardlaw | The RSA public key cryptosystem | |
CN112770140B (zh) | 陈氏定理和rsa深度结合的流加密方法和系统 | |
Ahmed et al. | A public key cryptosystem using cyclotomic matrices | |
WO2022172041A1 (en) | Asymmetric cryptographic schemes | |
KR100326226B1 (ko) | 행렬그룹공개키생성방법 | |
Raharinirina | Use of signed permutations in cryptography |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C02 | Deemed withdrawal of patent application after publication (patent law 2001) | ||
WD01 | Invention patent application deemed withdrawn after publication |