[go: up one dir, main page]

CN103457726B - Multi-variable public key ciphering method based on matrix - Google Patents

Multi-variable public key ciphering method based on matrix Download PDF

Info

Publication number
CN103457726B
CN103457726B CN201310377035.2A CN201310377035A CN103457726B CN 103457726 B CN103457726 B CN 103457726B CN 201310377035 A CN201310377035 A CN 201310377035A CN 103457726 B CN103457726 B CN 103457726B
Authority
CN
China
Prior art keywords
matrix
public key
finite field
user
ciphertext
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.)
Expired - Fee Related
Application number
CN201310377035.2A
Other languages
Chinese (zh)
Other versions
CN103457726A (en
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.)
South China University of Technology SCUT
Original Assignee
South China University of Technology SCUT
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 South China University of Technology SCUT filed Critical South China University of Technology SCUT
Priority to CN201310377035.2A priority Critical patent/CN103457726B/en
Publication of CN103457726A publication Critical patent/CN103457726A/en
Application granted granted Critical
Publication of CN103457726B publication Critical patent/CN103457726B/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Storage Device Security (AREA)

Abstract

本发明公开了一种基于矩阵的多变量公钥加密方法,包括以下步骤:步骤1、用户生成系统参数;步骤2、生成用户的公钥和用户的私钥;步骤3、对信息进行加密得到密文;步骤4、对收到的密文进行解密得到明文。具有加密和解密的计算效率很高、安全性能好且能抵御未来量子计算机的攻击、可应用于计算和存储能力有限的设备(如智能卡、无线传感器网络、RFID标签)等优点。

The invention discloses a matrix-based multi-variable public key encryption method, comprising the following steps: step 1, the user generates system parameters; step 2, generates the user's public key and the user's private key; step 3, encrypts the information to obtain Ciphertext; step 4, decrypting the received ciphertext to obtain the plaintext. It has the advantages of high computational efficiency of encryption and decryption, good security performance and can resist future quantum computer attacks, and can be applied to devices with limited computing and storage capabilities (such as smart cards, wireless sensor networks, RFID tags).

Description

基于矩阵的多变量公钥加密方法Matrix-based Multivariate Public Key Encryption Method

技术领域technical field

本发明涉及一种安全通信技术,特别涉及一种基于矩阵的多变量公钥加密方法。The invention relates to a safe communication technology, in particular to a matrix-based multivariable public key encryption method.

背景技术Background technique

公钥密码系统在安全通信领域扮演着重要的角色,Diffie和Hellman首先提出公钥密码系统的思想,Rivest、Shamir和Adleman首先设计了实际可用的公钥密码系统——著名的RSA密码系统(美国专利:4,405,829,1983)。Public key cryptography plays an important role in the field of secure communication. Diffie and Hellman first proposed the idea of public key cryptography, and Rivest, Shamir and Adleman first designed a practical public key cryptography system—the famous RSA cryptography system (USA Patent: 4,405,829,1983).

目前,基于数论理论的密码系统,如RSA,DSA和ECC,广泛的应用于安全通信领域。但是,Shor的算法表明:未来的具有大量子位的量子计算机可以攻破基于数论理论的密码系统[21],量子计算机的最新进展使得量子计算机对RSA,DSA和ECC等基于数论理论的密码系统的威胁越来越近。此外,基于数论理论的密码系统的计算效率是有限的,这就要求密码研究者设计能够抵御量子计算机的且在计算上更有效的公钥密码系统,通常称这样的密码系统为后量子密码系统。At present, cryptographic systems based on number theory, such as RSA, DSA and ECC, are widely used in the field of secure communication. However, Shor's algorithm shows that future quantum computers with a large number of qubits can break cryptosystems based on number theory [21]. The threat is getting closer. In addition, the computational efficiency of cryptographic systems based on number theory is limited, which requires cryptographic researchers to design public-key cryptosystems that can resist quantum computers and are more computationally efficient. Such cryptosystems are usually called post-quantum cryptosystems. .

多变量公钥密码系统属于后量子密码系统,多变量公钥密码系统的公钥为有限域上的一组多变量多项式,通常是二次多项式,它的安全性基于已经被证明的事实:求有限域上的多变量多项式方程组的解的问题通常是NP困难问题[9].并且量子计算机不能有效的解决这一问题,从计算效率的角度看,多变量密码系统要比RSA,DSA和ECC等基于数论理论的密码系统有效得多。Multivariate public-key cryptosystems belong to post-quantum cryptosystems. The public key of multivariate public-key cryptosystems is a set of multivariate polynomials on finite fields, usually quadratic polynomials. Its security is based on proven facts: find The problem of solving multivariable polynomial equations on finite fields is usually NP-hard problem [9]. And quantum computers cannot effectively solve this problem. From the perspective of computational efficiency, multivariable cryptosystems are better than RSA, DSA and Cryptosystems based on number theory, such as ECC, are much more efficient.

早期的多变量公钥密码系统设计都是失败的,如Diffie和Fell在文献[27]中设计的密码系统,Shamir在文献[28]中设计的密码系统。Early designs of multivariate public-key cryptosystems failed, such as the cryptosystem designed by Diffie and Fell in [27] and the cryptosystem designed by Shamir in [28].

1988年,Matsumoto和Imai设计了新的多变量公钥加密方法,即C或MI加密系统[16]。但是,Patarin在1995年用线性化方程攻破这个系统[18],在文献[5]中,Ding(丁津泰)指出,C的中心映射多项式所对应的二次型矩阵矩阵的秩很小,事实上它的秩只有2,因而可以用极小秩攻击方法攻破C加密系统。In 1988, Matsumoto and Imai designed a new multivariate public-key encryption method, the C * or MI encryption system [16]. However, Patarin used the linearization equation to break this system in 1995 [18]. In the literature [5], Ding (Ding Jintai) pointed out that the rank of the quadratic matrix matrix corresponding to the central mapping polynomial of C * is very small, and the fact On the other hand, its rank is only 2, so the C * encryption system can be broken by the minimum rank attack method.

1996年,Patarin扩展了C加密系统,设计出隐藏域加密系统(HFE)[19],HFE加密系统拥有欧洲和美国专利(5,790,675,1996),但是,Kipnis和Shamir利用极小秩攻击方法和重线性化方法将HFE加密系统攻破[13]。In 1996, Patarin expanded the C * encryption system and designed the hidden field encryption system (HFE) [19]. The HFE encryption system has European and American patents (5,790,675,1996), but Kipnis and Shamir use the minimum rank attack method and The relinearization method breaks the HFE encryption system [13].

1998年,T.T.Moh提出了一个多变量公钥加密方法,称为TTM加密系统(美国专利:5,740,250,1998)[15],但是TTM系统仍然被极小秩攻击方法攻破[3]。[9]2008年D.Gligoroski等提出MQQ多变量加密系统[29],2011年,Gao等提出了基于丢潘图方程的多变量加密系统[30],但均被攻破。In 1998, T.T.Moh proposed a multi-variable public key encryption method called TTM encryption system (US Patent: 5,740,250,1998) [15], but the TTM system is still broken by the minimum rank attack method [3]. [9] In 2008, D.Gligoroski et al. proposed the MQQ multivariable encryption system [29]. In 2011, Gao et al. proposed a multivariable encryption system based on the Dipanto equation [30], but both were broken.

在过去的三十年里,许多多变量公钥加密方法被提出,但绝大部分都是不安全的,这些被攻破的多变量公钥加密方法中,部分是因为中心映射多项式对应的二次型矩阵的秩相对较小,因而容易遭受极小秩攻击。部分是因为当用代数攻击时,公钥多项式方程组的正则度不高,因而容易遭受F4算法或Mutant XL算法攻击。In the past three decades, many multivariate public-key encryption methods have been proposed, but most of them are insecure. Some of these broken multivariate public-key encryption methods are due to the fact that the central map polynomial corresponds to the quadratic The rank of the type matrix is relatively small, so it is vulnerable to the minimal rank attack. Partly because the regularity of public key polynomial equations is not high when attacking algebraically, so it is vulnerable to F4 algorithm or Mutant XL algorithm attack.

本发明的背景文献:Background documents of the present invention:

[1]Bosma W.,Cannon J.J.,Playoust C.:The Magma algebra system I:theuser language.J.Symb.Comput.24(3-4),235-265(1997)。[1] Bosma W., Cannon J.J., Playoust C.: The Magma algebra system I: the user language. J. Symb. Comput. 24(3-4), 235-265 (1997).

[2]Bettale L.,Faugère J.C.,Perret L.:Cryptanalysis of multivariateand odd-characteristic hfe variants.In:Public Key Cryptography-PKC2011.Lecture Notes in Computer Science,vol.6571,pp.441-458.Springer,Berlin(2011)。[2] Bettale L., Faugère J.C., Perret L.: Cryptanalysis of multivariate and odd-characteristic hfe variants. In: Public Key Cryptography-PKC2011. Lecture Notes in Computer Science, vol.6571, pp.441-458. Springer, Berlin (2011).

[3]Courtois N.,Goubin L.:Cryptanalysis of the TTM cryptosystem.In:Advances in Cryptology-ASIACRYPT'00,Lecture Notes in Computer Science,vol.1976,pp.44-57.Springer,Berlin(2000)。[3] Courtois N., Goubin L.: Cryptanalysis of the TTM cryptosystem. In: Advances in Cryptology-ASIACRYPT'00, Lecture Notes in Computer Science, vol.1976, pp.44-57. Springer, Berlin (2000).

[4]Ding J.,Schmidt D.,Werner F.:Algebraic attack on HFE revisited.In:Information Security,Lecture Notes in Computer Science,vol.5222,pp.215-227.Springer,Berlin(2008)。[4] Ding J., Schmidt D., Werner F.: Algebraic attack on HFE revisited. In: Information Security, Lecture Notes in Computer Science, vol.5222, pp.215-227. Springer, Berlin (2008).

[5]Ding J.,Gower J.,Schmidt D.:Multivariate Public KeyCryptography.Advances in Information Security series.Springer,Heidelberg(2006)。[5] Ding J., Gower J., Schmidt D.: Multivariate Public KeyCryptography. Advances in Information Security series. Springer, Heidelberg (2006).

[6]Ding J.,Yang B.Y.,Chen C.H.O.,Chen M.S.,Cheng C.M.:NewDifferential-Algebraic Attacks and Reparametrization of Rainbow.In:BellovinS.M.,Gennaro R.,Keromytis A.D.,Yung M.(ed.)ACNS2008.LNCS,vol.5037,pp.242-257.Springer,Heidelberg(2008)。[6] Ding J., Yang B.Y., Chen C.H.O., Chen M.S., Cheng C.M.: New Differential-Algebraic Attacks and Reparametrization of Rainbow. In: Bellovin S.M., Gennaro R., Keromytis A.D., Yung M. (ed.) ACNS2008 . LNCS, vol. 5037, pp. 242-257. Springer, Heidelberg (2008).

[7]Ding J.,Hu L.,Nie X.,et al.:High Order Linearization Equation(HOLE)Attack on Multivariate Public Key Cryptosystems.In:Okamoto T.,Wang X.(ed.)PKC2007.LNCS,vol.4450,pp.233-248.Springer,Heidelberg(2007)。[7] Ding J., Hu L., Nie X., et al.: High Order Linearization Equation (HOLE) Attack on Multivariate Public Key Cryptosystems. In: Okamoto T., Wang X. (ed.) PKC2007.LNCS, vol. 4450, pp. 233-248. Springer, Heidelberg (2007).

[8]Ding J.,Hodges T.J.:Inverting HFE systems is quasi-polynomial forall fields.In:Rogaway P.(ed.)CRYPTO2011,Lecture Notes in Computer Science,vol.6841,pp.724-742.Springer,Berlin(2011)。[8] Ding J., Hodges T.J.: Inverting HFE systems is quasi-polynomial forall fields. In: Rogaway P. (ed.) CRYPTO2011, Lecture Notes in Computer Science, vol.6841, pp.724-742. Springer, Berlin (2011).

[9]Faugère J.C.:A new efficient algorithm for computing bases(F4).J.Pure Appl.Algebra139,61-88(1999)。[9] Faugère JC: A new efficient algorithm for computing bases (F4). J. Pure Appl. Algebra 139, 61-88 (1999).

[10]Faugère J.C.,Levy-dit-Vehel F.,Perret L.:Cryptanalysis ofMinRank.In:Advances in Cryptology-CRYPTO2008,Lecture Notes in ComputerScience,vol.5157,pp.280-296.Springer,Berlin(2008)。[10] Faugère J.C., Levy-dit-Vehel F., Perret L.: Cryptanalysis of MinRank. In: Advances in Cryptology-CRYPTO2008, Lecture Notes in ComputerScience, vol.5157, pp.280-296. Springer, Berlin (2008) .

[11]Kipnis A.,Shamir A.:Crypranalysis of the Oil and VinegarSignature Scheme.In:Stern,J.(ed.)CRYPTO1998.LNCS,vol.1462,pp,257-267.Springer,Heidelberg(1998)。[11] Kipnis A., Shamir A.: Crypranalysis of the Oil and Vinegar Signature Scheme. In: Stern, J. (ed.) CRYPTO 1998. LNCS, vol. 1462, pp, 257-267. Springer, Heidelberg (1998).

[12]Kipnis A.,Patarin J.,Goubin L.,Unbalance Oil and VinegarSignature Scheme.In:J.Stern,(ed.)EUROCRYPT1999,LNCS,vol.1592,pp.206-222.Springer,Heidelberg(1999)。[12] Kipnis A., Patarin J., Goubin L., Unbalance Oil and Vinegar Signature Scheme. In: J. Stern, (ed.) EUROCRYPT1999, LNCS, vol.1592, pp.206-222. Springer, Heidelberg (1999 ).

[13]Kipnis A.,Shamir A.:Cryptanalysis of the HFE public keycryptosystem by relinearization.In:Advances in Cryptology-CRYPTO'99,LectureNotes in Computer Science,vol.1666,pp.19-30.Springer,Berlin(1999)。[13] Kipnis A., Shamir A.: Cryptanalysis of the HFE public keycryptosystem by relinearization. In: Advances in Cryptology-CRYPTO'99, Lecture Notes in Computer Science, vol.1666, pp.19-30. Springer, Berlin (1999 ).

[14]Lidl R.,Niederreiter H.:Finite Fields.Encyclopedia of Mathematicsand its applications,Volume20,Cambridge University Press。[14] Lidl R., Niederreiter H.: Finite Fields. Encyclopedia of Mathematics and its applications, Volume 20, Cambridge University Press.

[15]Moh T.T.:A fast public key system with signature and master keyfunctions,in Proceedings of CrypTEC'99,International Workshop onCryptographic Techniques and E-commerce,Hong-Kong City University Press,pp.63-69,July1999.Available at http://www.usdsi.com/cryptec.ps。[15]Moh T.T.: A fast public key system with signature and master key functions, in Proceedings of CrypTEC'99, International Workshop on Cryptographic Techniques and E-commerce, Hong-Kong City University Press, pp.63-69, July1999. Available at http://www.usdsi.com/cryptec.ps.

[16]Matsumoto T.,Imai H.:Public quadratic polynomial-tuples forefficient signature-verification and message-encryption.In:Advances inCryptology EUROCRYPT'88,Lecture Notes in Computer Science,vol.330,pp.419-453.Springer,Berlin(1988)。[16] Matsumoto T., Imai H.: Public quadratic polynomial-tuples efficient signature-verification and message-encryption. In: Advances in Cryptology EUROCRYPT'88, Lecture Notes in Computer Science, vol.330, pp.419-453. Springer , Berlin (1988).

[17]Patarin J.:The Oil and Vinegar Signature Scheme,presented at theDagstuhl Workshop on Cryptography,September1997(transparencies)。[17] Patarin J.: The Oil and Vinegar Signature Scheme, presented at the Dagstuhl Workshop on Cryptography, September 1997 (transparencies).

[18]Patarin J.:Cryptoanalysis of the Matsumoto and Imai public keyscheme ofEurocrypt'88.In:Advances in Cryptology-CRYPTO'95,pp.248-261.Springer,Berlin(1995)。[18] Patarin J.: Cryptoanalysis of the Matsumoto and Imai public key scheme of Eurocrypt'88. In: Advances in Cryptology-CRYPTO'95, pp.248-261. Springer, Berlin (1995).

[19]Patarin J.:Hidden fields equations(HFE)and isomorphisms ofpolynomials(IP):two new families of asymmetric algorithms.In:Advances inCryptology-EUROCRYPT'96,Lecture Notes in Computer Science,vol.1070,pp.33-48.Springer,Berlin(1996)。[19] Patarin J.: Hidden fields equations (HFE) and isomorphisms of polynomials (IP): two new families of asymmetric algorithms. In: Advances in Cryptology-EUROCRYPT'96, Lecture Notes in Computer Science, vol.1070, pp.33- 48. Springer, Berlin (1996).

[20]Rivest R.,Shamir A.,Adleman L.M.:A method for obtaining digitalsignatures and public-key cryptosystems.Communications of the ACM,21(2):120-126。[20] Rivest R., Shamir A., Adleman L.M.: A method for obtaining digital signatures and public-key cryptosystems. Communications of the ACM, 21(2):120-126.

[21]Shor P W.Polynomial-time algorithms for prime factorization anddiscrete logarithms on a quantum computer[J].SIAM journal on computing,1997,26(5):1484-1509。[21] Shor P W. Polynomial-time algorithms for prime factorization and discrete logarithms on a quantum computer [J]. SIAM journal on computing, 1997, 26(5): 1484-1509.

[22]Wang L.,Yang B.,Hu Y.,et al.:A Medium-Field Multivariate Publickey Encryption Scheme.In:Pointcheval,D.(ed.)CT-RSA2006.LNCS,vol.3860,pp.132-149.Springer,Heidelberg(2006)。[22]Wang L., Yang B., Hu Y., et al.: A Medium-Field Multivariate Publickey Encryption Scheme. In: Pointcheval, D. (ed.) CT-RSA2006.LNCS, vol.3860, pp. 132-149. Springer, Heidelberg (2006).

[23]Ding J,Yang B Y,Chen C H O,et al.New differential-algebraicattacks and reparametrization of rainbow[C].Applied Cryptography and NetworkSecurity.Springer Berlin Heidelberg,2008:242-257。[23] Ding J, Yang B Y, Chen C H O, et al. New differential-algebraic attacks and reparametrization of rainbow [C]. Applied Cryptography and Network Security. Springer Berlin Heidelberg, 2008: 242-257.

[24]Buchmann J A,Ding J,Mohamed M S E,et al.MutantXL:Solvingmultivariate polynomial equations for cryptanalysis[J].SymmetricCryptography,2009(09031)。[24] Buchmann J A, Ding J, Mohamed M S E, et al. MutantXL: Solving multivariate polynomial equations for cryptanalysis [J]. Symmetric Cryptography, 2009 (09031).

[25]Mohamed M S E,Mohamed W S A E,Ding J,et al.MXL2:Solvingpolynomial equations over GF(2)using an improved mutant strategy[M].Post-Quantum Cryptography.Springer Berlin Heidelberg,2008:203-215。[25] Mohamed M S E, Mohamed W S A E, Ding J, et al. MXL2: Solving polynomial equations over GF(2) using an improved mutant strategy [M]. Post-Quantum Cryptography. Springer Berlin Heidelberg, 2008: 203-215.

[26]Mohamed M S E,Cabarcas D,Ding J,et al.MXL3:An efficient algorithmfor computing bases of zero-dimensional ideals[M].Information,Securityand Cryptology–ICISC2009.Springer Berlin Heidelberg,2010:87-100。[26]Mohamed MSE, Cabarcas D, Ding J, et al. MXL3: An efficient algorithm for computing bases of zero-dimensional ideals[M]. Information, Security and Cryptology–ICISC2009. Springer Berlin Heidelberg, 2010:87-100.

[27]Fell H,Diffie W.Analysis of a public key approach based onpolynomial substitution[C].Advances in Cryptology—CRYPTO’85Proceedings.Springer Berlin Heidelberg,1986:340-349。[27] Fell H, Diffie W. Analysis of a public key approach based on polynomial substitution [C]. Advances in Cryptology—CRYPTO’85 Proceedings. Springer Berlin Heidelberg, 1986:340-349.

[28]Shamir A.Efficient signature schemes based on birationalpermutations[C].Advances in Cryptology—CRYPTO’93.Springer Berlin Heidelberg,1994:1-12。[28] Shamir A. Efficient signature schemes based on biological permutations [C]. Advances in Cryptology—CRYPTO'93. Springer Berlin Heidelberg, 1994:1-12.

[29]Gligoroski D,Samardjiska S.The Multivariate ProbabilisticEncryption Scheme MQQ-ENC[J].2012。[29] Gligoroski D, Samardjiska S. The Multivariate Probabilistic Encryption Scheme MQQ-ENC [J]. 2012.

[30]Gao S,Heindl R.Multivariate public key cryptosystems fromdiophantine equations[J].Designs,Codes and Cryptography,2013,67(1):1-18。[30] Gao S, Heindl R. Multivariate public key cryptosystems from diophantine equations [J]. Designs, Codes and Cryptography, 2013, 67(1): 1-18.

发明内容Contents of the invention

本发明的目的在于克服现有技术的缺点与不足,提供一种基于矩阵的多变量公钥加密方法,该方法是一种采用矩阵乘法运算建立新的多变量加密方法,其加密和解密的计算效率很高,安全性能好且能抵御未来量子计算机的攻击,可应用于计算和存储能力有限的设备,如智能卡、无线传感器网络、RFID标签等。The purpose of the present invention is to overcome the shortcomings and deficiencies of the prior art, and to provide a matrix-based multivariable public key encryption method, which is a new multivariable encryption method that uses matrix multiplication operations, and its encryption and decryption calculations It has high efficiency, good security performance and can resist future quantum computer attacks. It can be applied to devices with limited computing and storage capabilities, such as smart cards, wireless sensor networks, RFID tags, etc.

本发明的目的通过下述技术方案实现:基于矩阵的多变量公钥加密方法,包括以下步骤:The object of the present invention is achieved through the following technical solutions: the matrix-based multivariate public key encryption method comprises the following steps:

步骤1、用户生成系统参数;Step 1, the user generates system parameters;

步骤2、生成用户的公钥和用户的私钥;Step 2, generating the user's public key and the user's private key;

步骤3、对信息进行加密得到密文;Step 3, encrypting the information to obtain the ciphertext;

步骤4、对收到的密文进行解密得到明文。Step 4: Decrypt the received ciphertext to obtain plaintext.

所述步骤2包括以下步骤:Described step 2 comprises the following steps:

(2-1)输入系统的安全参数λ;(2-1) Input the security parameter λ of the system;

(2-2)随机生成有限域k上的两个可逆的线性变换S,T,其中S:kn→kn,T:km→km(2-2) Randomly generate two reversible linear transformations S, T on the finite field k, where S:k n →k n , T:k m →k m ;

(2-3)随机生成矩阵A,B,C,其中矩阵A是s×t矩阵,矩阵B是t×u矩阵,矩阵,C是t×v矩阵,它们的元素为(x1,x2,…,xn)的线性组合;(2-3) Randomly generate matrices A, B, C, where matrix A is s×t matrix, matrix B is t×u matrix, matrix, C is t×v matrix, and their elements are (x 1 ,x 2 ,…,x n ) linear combination;

(2-4)计算E1=AB,E2=AC,分别记矩阵E1,E2的(i,j)元素为:(2-4) Calculate E 1 =AB, E 2 =AC, respectively record the (i, j) elements of the matrix E 1 and E 2 as:

f(i-1)u+j,fsu+(i-1)v+j∈k[x1,x2,…,xn];f (i-1)u+j , f su+(i-1)v+j ∈ k[x 1 ,x 2 ,…,x n ];

(2-5)记映射F(x1,x2,…,xn)=(f1(x1,x2,…,xn),…,fm(x1,x2,…,xn));(2-5) Denote the mapping F(x 1 ,x 2 ,…,x n )=(f 1 (x 1 ,x 2 ,…,x n ),…,f m (x 1 ,x 2 ,…, x n ));

(2-6)计算复合运算P(x1,x2,…,xn)=TоFоS=(p1(x1,x2,…,xn)…,pm(x1,x2,…,xn));(2-6) Calculation of compound operation P(x 1 , x 2 ,…, x n )=TоFоS=(p 1 (x 1 , x 2 ,…, x n )…, p m (x 1 , x 2 , ..., x n ));

(2-7)用户的公钥为二次多项式p1(x1,x2,…,xn)…,pm(x1,x2,…,xn);(2-7) The user's public key is a quadratic polynomial p 1 (x 1 ,x 2 ,…,x n )…,p m (x 1 ,x 2 ,…,x n );

(2-8)用户的私钥为可逆线性变换S,T以及矩阵A,B,C。(2-8) The user's private key is the reversible linear transformation S, T and matrix A, B, C.

相对于已有的公钥加密方案而言,步骤2中运用简单的矩阵运算来生成公钥和密钥,从而使得公钥和密钥的生成速度比较快。相对于已有的多变量公钥加密方案而言,本发明的中心映射多项式对应的二次型的秩较大,交叉项十分稠密,能够抵御秩攻击以及其他已知攻击。因此,本发明是安全高效的加密方案。此外,可以证明,在公钥生成中,去掉可逆线性变换S:kn→kn并不影响系统的安全性。Compared with the existing public key encryption scheme, in step 2, simple matrix operations are used to generate the public key and the secret key, so that the generation speed of the public key and the secret key is relatively fast. Compared with the existing multi-variable public-key encryption scheme, the rank of the quadratic form corresponding to the central map polynomial of the present invention is relatively large, and the intersection items are very dense, which can resist rank attacks and other known attacks. Therefore, the present invention is a safe and efficient encryption scheme. In addition, it can be proved that removing the reversible linear transformation S: k n → k n does not affect the security of the system in public key generation.

所述步骤3中,设定Alice加密信息M,并将加密后的信息发送给Bob,所述Alice加密信息M的过程包括以下步骤:In the step 3, Alice encrypts the information M, and sends the encrypted information to Bob, and the process of Alice encrypting the information M includes the following steps:

1)Alice获得Bob认证的公钥多项式pB1(x1,x2,…,xn),…,pBm(x1,x2,…,xn);1) Alice obtains the public key polynomial p B1 (x 1 ,x 2 ,…,x n ),…,p Bm (x 1 ,x 2 ,…,x n ) certified by Bob;

2)将信息M表示成有限域k的n元组(m1,m2,…,mn);2) Express the information M as an n-tuple (m 1 ,m 2 ,...,m n ) of the finite field k;

3)计算(c1,…,cm)=(pB1(m1,m2,…,mn),…,pBm(m1,m2,…,mn)),得到密文(c1,c2,…,cm);3) Calculate (c 1 ,…,c m )=(p B1 (m 1 ,m 2 ,…,m n ),…,p Bm (m 1 ,m 2 ,…,m n )), and get the ciphertext (c 1 ,c 2 ,...,c m );

4)Alice将密文(c1,c2,…,cm)发送给Bob。4) Alice sends the ciphertext (c 1 ,c 2 ,…,c m ) to Bob.

步骤3中,本发明的加密过程是有限域上的二次多变量多项式的运算,所以,相对于目前广泛应用的基于数论的加密方案,加密速度较快。In step 3, the encryption process of the present invention is a quadratic multivariate polynomial operation on a finite field, so compared with the currently widely used encryption scheme based on number theory, the encryption speed is faster.

所述步骤4包括以下步骤:Described step 4 comprises the following steps:

(4-1)Bob收到密文(c1,c2,…,cm)后,计算(y1,…,ym)=T-1(c1,…,cm);(4-1) After receiving the ciphertext (c 1 ,c 2 ,…,c m ), Bob calculates (y 1 ,…,y m )=T -1 (c 1 ,…,c m );

(4-2)计算 ( y ‾ 1 , . . . , y ‾ m ) = F - 1 ( y 1 , . . . , y n ) ; (4-2) Calculation ( the y ‾ 1 , . . . , the y ‾ m ) = f - 1 ( the y 1 , . . . , the y no ) ;

(4-3)计算 ( m 1 , . . . , m n ) = T - 1 ( y ‾ 1 , . . . , y ‾ m ) , 得到明文。(4-3) Calculation ( m 1 , . . . , m no ) = T - 1 ( the y ‾ 1 , . . . , the y ‾ m ) , get plaintext.

步骤4中,本发明的解密过程仍然是用简单的矩阵运算来完成,所以,相对于目前广泛应用的基于数论的加密方案,本发明的解密速度是十分快的。通过利用循环矩阵等方法,可以减少公钥和密钥的大小,从而本发明可以用到资源受限的计算设备。In step 4, the decryption process of the present invention is still completed with simple matrix operations, so, compared with currently widely used encryption schemes based on number theory, the decryption speed of the present invention is very fast. By using methods such as circulant matrices, the size of the public key and the secret key can be reduced, so that the present invention can be used on resource-constrained computing devices.

所述步骤1包括以下步骤:Described step 1 comprises the following steps:

(1-1)设s,t,u,v为正整数,其中s≥t,n=st,m=su+sv,m表示多变量二次方程的个数,n表示变量的个数;(1-1) Let s, t, u, and v be positive integers, where s≥t, n=st, m=su+sv, m represents the number of multivariable quadratic equations, and n represents the number of variables;

(1-2)设k=Fq为q个元素的有限域,其中q=pe,p是素数,e是正整数;(1-2) Let k=F q be a finite field of q elements, where q=p e , p is a prime number, and e is a positive integer;

(1-3)设kn表示有限域k上的所有n元组;(1-3) Let k n denote all n-tuples on the finite field k;

(1-4)k[x1,x2,…,xn]为有限域k上的n个变量的多项式环;(1-4) k[x 1 ,x 2 ,…,x n ] is a polynomial ring of n variables over a finite field k;

(1-5)设λ表示系统的安全参数。(1-5) Let λ denote the security parameters of the system.

本发明相对于现有技术具有如下的优点及效果:Compared with the prior art, the present invention has the following advantages and effects:

1、本公钥加密方法克服了以往的多变量公钥加密方法的弱点,如中心映射多项式对应的二次型矩阵的秩小,公钥方程组在遭受代数攻击时正则度小等,本发明的中心映射多项式对应的二次型矩阵的秩随明文分组长度的变化而变化,公钥多项式方程组在遭受代数攻击时的正则度也是随明文分组长度的变化而变化,因此,极小秩攻击和代数攻击对本发明无效。1, this public key encryption method overcomes the weakness of previous multivariable public key encryption methods, such as the rank of the quadratic matrix corresponding to the central map polynomial is small, and the regularity of the public key equation group is small when suffering algebraic attacks, etc., the present invention The rank of the quadratic matrix corresponding to the central mapping polynomial of , varies with the length of the plaintext block, and the regularity of the public key polynomial equations under algebraic attacks also changes with the change of the plaintext block length. Therefore, the minimum rank attack and algebraic attacks are ineffective against the present invention.

2、由于本发明只用简单的矩阵乘法运算,因此,本发明的计算效率非常高。2. Since the present invention only uses simple matrix multiplication, the calculation efficiency of the present invention is very high.

3、本发明可以抵御量子计算机的攻击。3. The present invention can resist the attack of quantum computer.

4、本发明可应用于计算和存储能力有限的设备,如智能卡、无线传感器网络、RFID标签等。4. The present invention can be applied to devices with limited computing and storage capabilities, such as smart cards, wireless sensor networks, RFID tags, and the like.

附图说明Description of drawings

图1是本发明的多变量公钥加解密过程图;在不安全的通信信道中,Alice利用Bob的公钥加密信息M,Bob的公钥是对所有人公开的,Bob利用自己的密钥解密信息,在不安全的通信信道中,如互联网,窃听者可以截获Alice发送给Bob的密文和Bob的公钥;本发明的目的在于,在窃听者不知道Bob的密钥的情况下,即使窃听者截获了密文并知道Bob的公钥,窃听者也无法得到明文信息M。Fig. 1 is the multivariable public key encryption and decryption process diagram of the present invention; in an insecure communication channel, Alice uses Bob's public key to encrypt information M, Bob's public key is open to everyone, and Bob uses his own key To decrypt information, in an unsafe communication channel, such as the Internet, an eavesdropper can intercept the ciphertext and Bob's public key that Alice sends to Bob; Even if the eavesdropper intercepts the ciphertext and knows Bob's public key, the eavesdropper cannot get the plaintext information M.

具体实施方式detailed description

下面结合实施例及附图对本发明作进一步详细的描述,但本发明的实施方式不限于此。The present invention will be further described in detail below in conjunction with the embodiments and the accompanying drawings, but the embodiments of the present invention are not limited thereto.

实施例1Example 1

如图1所示,基于矩阵的多变量公钥加密方法,包括以下三种情形:As shown in Figure 1, the matrix-based multivariate public key encryption method includes the following three situations:

1、矩阵A,B,C都是方阵的情形,包括以下步骤:1. The matrix A, B, and C are all square matrices, including the following steps:

步骤1、用户生成系统参数:Step 1. User generates system parameters:

1)设s为正整数n=s2,m=2n;1) Let s be a positive integer n=s 2 , m=2n;

2)设k=Fq为q个元素的有限域,其中q=pe,p是素数,e是正整数;2) Let k=F q be a finite field of q elements, where q=p e , p is a prime number, and e is a positive integer;

3)设kn表示有限域k上的所有n元组.k[x1,x2,…,xn]为有限域k上的n个变量的多项式环;3) Let k n denote all n-tuples on finite field k. k[x 1 ,x 2 ,…,x n ] is the polynomial ring of n variables on finite field k;

4)设λ为系统安全参数。4) Let λ be the system security parameter.

步骤2、用户生成公钥和私钥:Step 2. The user generates a public key and a private key:

对于给定的系统安全参数λ,用户生成公钥和私钥的方法如下:For a given system security parameter λ, the method for users to generate public and private keys is as follows:

1)随机生成有限域k上的两个可逆的线性变换S,T,其中S:kn→kn,T:km→km1) Randomly generate two reversible linear transformations S, T on the finite field k, where S:k n →k n , T:k m →k m ;

2)随机生成矩阵 矩阵A,B,C都是s×s方阵,其中aij bij和cij是xi的线性组合,i=1,2,…,n.;2) Randomly generate matrix The matrices A, B, and C are all s×s square matrices, where a ij b ij and c ij are linear combinations of x i , i=1,2,...,n.;

3)计算E1=AB,E2=AC.记多变量二次多项式f(i-1)s+j,分别是矩阵E1,E2的(i,j)元(i,j=1,2,…,s),于是我们可以得到m个多变量二次多项式f1,f2,…,fm,从而定义中心映射为:3) Calculate E 1 =AB, E 2 =AC. Record the multivariate quadratic polynomial f (i-1)s+j , are the (i,j) elements (i,j=1,2,…,s) of the matrices E 1 and E 2 respectively, so we can get m multivariate quadratic polynomials f 1 , f 2 ,…,f m , thus defining the center map as:

F(x1,x2,…,xn)=(f1(x1,x2,…,xn),…,fm(x1,x2,…,xn));F(x 1 ,x 2 ,…,x n )=(f 1 (x 1 ,x 2 ,…,x n ),…,f m (x 1 ,x 2 ,…,x n ));

4)计算复合运算P(x1,x2,…,xn)=TоFоS=(p1(x1,x2,…,xn)…,pm(x1,x2,…,xn));4) Calculation of compound operation P(x 1 , x 2 ,…, x n )=TоFоS=(p 1 (x 1 , x 2 ,…, x n )…, p m (x 1 , x 2 ,…, x n ));

5)用户的公钥为二次多项式p1(x1,x2,…,xn)…,pm(x1,x2,…,xn);5) The user's public key is a quadratic polynomial p 1 (x 1 ,x 2 ,…,x n )…,p m (x 1 ,x 2 ,…,x n );

6)用户的私钥为可逆线性变换S,T以及矩阵A,B,C。6) The user's private key is the reversible linear transformation S, T and matrix A, B, C.

步骤3、加密过程:Step 3, encryption process:

假设Alice试图加密信息M,并将加密后的信息发送给Bob。Alice加密信息步骤如下:Suppose Alice tries to encrypt a message M and sends the encrypted message to Bob. Alice encrypts information as follows:

1)Alice获得Bob认证的公钥多项式pB1(x1,x2,…,xn),…,pBm(x1,x2,…,xn);1) Alice obtains the public key polynomial p B1 (x 1 ,x 2 ,…,x n ),…,p Bm (x 1 ,x 2 ,…,x n ) certified by Bob;

2)将信息M表示成有限域k的n元组(m1,m2,…,mn);2) Express the information M as an n-tuple (m 1 ,m 2 ,...,m n ) of the finite field k;

3)计算(c1,…,cm)=(pB1(m1,m2,…,mn),…,pBm(m1,m2,…,mn)),得到密文(c1,c2,…,cm);3) Calculate (c 1 ,…,c m )=(p B1 (m 1 ,m 2 ,…,m n ),…,p Bm (m 1 ,m 2 ,…,m n )), and get the ciphertext (c 1 ,c 2 ,...,c m );

4)最后Alice将密文(c1,c2,…,cm)发送给Bob。4) Finally Alice sends the ciphertext (c 1 ,c 2 ,…,c m ) to Bob.

步骤4、解密过程:Step 4. Decryption process:

1)Bob收到密文(c1,c2,…,cm)后,计算(y1,…,ym)=T-1(c1,…,cm);1) After receiving the ciphertext (c 1 ,c 2 ,…,c m ), Bob calculates (y 1 ,…,y m )=T -1 (c 1 ,…,c m );

2)记 2) note

因为E1=AB,E2=AC,考虑以下情况:Since E 1 =AB,E 2 =AC, consider the following:

(i)如果E1可逆,那么,因此,可得关于未知数x1,x2,…,xn的n个线性方组;(i) If E +1 is invertible, then , therefore, n linear square groups of unknowns x 1 , x 2 ,…, x n can be obtained;

(ii)如果E1不可逆,但是E2可逆,那么因此,也可得到关于未知x1,x2,…,xn的n个线性方程组;(ii) If E 1 is not reversible, but E 2 is reversible, then Therefore, n linear equations about unknown x 1 , x 2 ,…, x n can also be obtained;

(iii)如果E1,E2都不可逆,但是A可逆,则有A-1E1=B,A-1E2=C.将A-1的元素看成新变量z1,z2,…,zn,得到关于2n个未知数x1,x2,…,xn,z1,z2,…,zn的2n个线性方程组;(iii) If both E 1 and E 2 are irreversible, but A is reversible, then A -1 E 1 = B, A -1 E 2 = C. Consider the elements of A -1 as new variables z 1 , z 2 , …,z n , get 2n linear equations about 2n unknowns x 1 , x 2 ,…,x n ,z 1 ,z 2 ,…,z n ;

用高斯消元法消去未知数z1,z2,…,zn,得到关于未知数x1,x2,…,xn的大约n个线性方程组;Use Gaussian elimination method to eliminate unknowns z 1 , z 2 ,…, z n to get about n linear equations about unknowns x 1 , x 2 ,…, x n ;

关于未知数x1,x2,…,xn的线性方程组的解空间的维数是非常小的,用高斯消元法解The dimension of the solution space of the system of linear equations with respect to unknowns x 1 , x 2 ,…,x n is very small, and it can be solved by Gaussian elimination method

这些线性方程组,消去绝大部分的未知数,假设消去了Z个未知数,则有n-Z个自由未知数,将被消去的Z个未知数用n-Z个自由未知数表示并代入中心映射多项式中。就得到了m个关于n-Z个未知数的二次方程,由于自由未知数的个数非常少,因此很容易地求得方程的解。从而求得未知数x1,x2,…,xn的线性方程组的解,有时会得到多个解。为此在明文中添加一些Hash值,设求得的解为 ( x ‾ 1 , x ‾ 2 , · · · , x ‾ n ) ; These linear equations eliminate most of the unknowns, assuming that Z unknowns are eliminated, then there are nZ free unknowns, and the eliminated Z unknowns are represented by nZ free unknowns and substituted into the central mapping polynomial. Then m quadratic equations about nZ unknowns are obtained. Since the number of free unknowns is very small, it is easy to obtain the solution of the equations. Thereby, the solution of the linear equation system of the unknown x 1 , x 2 ,...,x n can be obtained, and sometimes multiple solutions can be obtained. To this end, some Hash values are added to the plaintext, and the obtained solution is assumed to be ( x ‾ 1 , x ‾ 2 , · · &Center Dot; , x ‾ no ) ;

3)对应的明文为 ( m 1 , m 2 , · · · , m n ) = S - 1 ( x ‾ 1 , x ‾ 2 , · · · , x ‾ n ) . ; 3) The corresponding plaintext is ( m 1 , m 2 , · · · , m no ) = S - 1 ( x ‾ 1 , x ‾ 2 , · · &Center Dot; , x ‾ no ) . ;

当矩阵A不可逆时,解密可能失败,解密失败的概率大约为因此有限域必需选择大一些的域,例如q=232,从中心映射多项式的构造可知,中心映射多项式对应的二次型矩阵的秩接近2s,因此本系统可以抵御极小秩攻击,此外,可以用循环矩阵等形式减少公钥和密钥的大小。When matrix A is irreversible, decryption may fail, and the probability of decryption failure is approximately Therefore, the finite field must choose a larger field, such as q=2 32 . From the construction of the central mapping polynomial, the rank of the quadratic matrix corresponding to the central mapping polynomial is close to 2s, so this system can resist the minimal rank attack. In addition, The size of the public key and secret key can be reduced in the form of a circulant matrix, etc.

2、矩阵A,B,C的形成过程包括以下步骤:2. The formation process of matrices A, B, and C includes the following steps:

步骤1、用户生成系统参数:Step 1. User generates system parameters:

1)设s,t,u,v为正整数,其中s≥t,设n=st,m=su+sv;1) Let s, t, u, v be positive integers, where s≥t, let n=st, m=su+sv;

2)设k=Fq为q个元素的有限域,其中q=pe,p是素数,e是正整数;2) Let k=F q be a finite field of q elements, where q=p e , p is a prime number, and e is a positive integer;

3)设kn表示有限域k上的所有n元组;3) Let k n denote all n-tuples on the finite field k;

4)设k[x1,x2,…,xn]为有限域k上的n个变量的多项式环;4) Let k[x 1 ,x 2 ,…,x n ] be a polynomial ring of n variables over a finite field k;

5)设设λ为系统安全参数。5) Let λ be the system security parameter.

步骤2、用户生成公钥和私钥:Step 2. The user generates a public key and a private key:

对于给定的系统安全参数λ,用户生成公钥和私钥的方法如下:For a given system security parameter λ, the method for users to generate public and private keys is as follows:

1)随机生成有限域k上的两个可逆的线性变换S,T,其中S:kn→kn,T:km→km1) Randomly generate two reversible linear transformations S, T on the finite field k, where S:k n →k n , T:k m →k m ;

2)随机生成矩阵 矩阵A是s×t矩阵,矩阵B是t×u矩阵,矩阵C是t×v矩阵,其中aij,bij和cij是xi的线性组合,i=1,2,…,n.;2) Randomly generate matrix Matrix A is an s×t matrix, matrix B is a t×u matrix, and matrix C is a t×v matrix, where a ij , b ij and c ij are linear combinations of x i , i=1,2,…,n. ;

3)计算E1=AB,E2=AC.记多变量二次多项式:f(i-1)u+j,fsu+(i-1)v+j∈k[x1,x2,…,xn]分别是矩阵E1,E2的(i,j)元素,于是得到m个多变量二次多项式f1,f2,…,fm,从而定义中心映射为:F(x1,x2,…,xn)=(f1(x1,x2,…,xn),…,fm(x1,x2,…,xn));3) Calculate E 1 =AB, E 2 =AC. Record the multivariate quadratic polynomial: f (i-1)u+j ,f su+(i-1)v+j ∈k[x 1 ,x 2 ,… , x n ] are the (i, j) elements of matrices E 1 , E 2 respectively, so m multivariate quadratic polynomials f 1 , f 2 ,…,f m are obtained, and the central map is defined as: F(x 1 ,x 2 ,…,x n )=(f 1 (x 1 ,x 2 ,…,x n ),…,f m (x 1 ,x 2 ,…,x n ));

4)计算复合运算P(x1,x2,…,xn)=TоFоS=(p1(x1,x2,…,xn)…,pm(x1,x2,…,xn));其中p1,p2,…pm∈k[x1,x2,…,xn]为二次多变量多项式;4) Calculation of compound operation P(x 1 , x 2 ,…, x n )=TоFоS=(p 1 (x 1 , x 2 ,…, x n )…, p m (x 1 , x 2 ,…, x n )); where p 1 ,p 2 ,…p m ∈k[x 1 ,x 2 ,…,x n ] is a quadratic multivariate polynomial;

5)用户的公钥为二次多项式p1(x1,x2,…,xn)…,pm(x1,x2,…,xn);5) The user's public key is a quadratic polynomial p 1 (x 1 ,x 2 ,…,x n )…,p m (x 1 ,x 2 ,…,x n );

6)用户的私钥为可逆线性变换S,T以及矩阵A,B,C。6) The user's private key is the reversible linear transformation S, T and matrix A, B, C.

步骤3、加密过程:Step 3, encryption process:

假设Alice试图加密信息M,并将加密后的信息发送给Bob,Alice加密信息M的加密过程包括以下步骤:Assuming that Alice tries to encrypt a message M and sends the encrypted message to Bob, the encryption process of Alice's encrypted message M includes the following steps:

1)Alice获得Bob认证的公钥多项式pB1(x1,x2,…,xn),…,pBm(x1,x2,…,xn);1) Alice obtains the public key polynomial p B1 (x 1 ,x 2 ,…,x n ),…,p Bm (x 1 ,x 2 ,…,x n ) certified by Bob;

2)将信息M表示成有限域k的n元组(m1,m2,…,mn);2) Express the information M as an n-tuple (m 1 ,m 2 ,...,m n ) of the finite field k;

3)计算(c1,…,cm)=(pB1(m1,m2,…,mn),…,pBm(m1,m2,…,mn)),得到密文(c1,c2,…,cm);3) Calculate (c 1 ,…,c m )=(p B1 (m 1 ,m 2 ,…,m n ),…,p Bm (m 1 ,m 2 ,…,m n )), and get the ciphertext (c 1 ,c 2 ,...,c m );

4)最后Alice将密文(c1,c2,…,cm)发送给Bob。4) Finally Alice sends the ciphertext (c 1 ,c 2 ,…,c m ) to Bob.

步骤4、解密过程:Step 4, decryption process:

1)Bob收到密文(c1,c2,…,cm)后,计算(y1,…,ym)=T-1(c1,…,cm);1) After receiving the ciphertext (c 1 ,c 2 ,…,c m ), Bob calculates (y 1 ,…,y m )=T -1 (c 1 ,…,c m );

2)记 2) note

如果矩阵A的秩为t,则存在一个s×s可逆矩阵W,使得 WA = I 0 , ,其中I是t×t单位矩阵,0表示(s-t)×t零矩阵,因为E1=AB,E2=AC,所以有:WE1=WAB,WE2=WAC,即WE1=B,WE2=C,将W的元素看成新变量,得到s2+n个未知数su+sv个线性方程组,消去s2个W的元素变量,最终可得关于未知数x1,x2,…,xn的大约su+sv-s2个线性方程组,当u,v与s相近时,关于未知数x1,x2,…,xn的线性方程组的解空间的维数是非常小的,用高斯消元法解线性方程组,消去绝大部分的未知数,假设消去了Z个未知数,则有n-Z个自由未知数,将被消去的Z个未知数用n-Z个自由未知数表示并代入中心映射多项式中,就得到了m个关于n-Z个未知数的二次方程,由于自由未知数的个数非常少,我们可以很容易地求得方程的解。从而求得未知数x1,x2,…,xn的线性方程组的解,有时我们得到多个解,为此我们可以在明文中添加一些Hash值,设求得的解为 If matrix A has rank t, then there exists an s×s invertible matrix W such that WA = I 0 , , where I is the t×t identity matrix, 0 means (st)×t zero matrix, because E 1 =AB, E 2 =AC, so there are: WE 1 =WAB, WE 2 =WAC, that is, WE 1 =B, WE 2 =C, regard the elements of W as new variables, get s 2 +n unknowns su+sv linear equations, eliminate s 2 elements of W, and finally get the unknowns x 1 , x 2 ,… , about su+sv-s 2 linear equations of x n , when u, v are close to s, the dimension of the solution space of the linear equations of unknowns x 1 , x 2 ,…, x n is very small Yes, use the Gaussian elimination method to solve linear equations and eliminate most of the unknowns. Suppose Z unknowns are eliminated, then there are nZ free unknowns, and the eliminated Z unknowns are represented by nZ free unknowns and substituted into the central map In the polynomial, m quadratic equations about nZ unknowns are obtained. Since the number of free unknowns is very small, we can easily find the solution of the equation. So as to obtain the solution of the linear equation system of the unknown x 1 , x 2 ,…,x n , sometimes we get multiple solutions, so we can add some Hash values in the plaintext, and the obtained solution is

3)对应的明文为 ( m 1 , m 2 , · · · , m n ) = S - 1 ( x ‾ 1 , x ‾ 2 , · · · , x ‾ n ) . ; 3) The corresponding plaintext is ( m 1 , m 2 , &Center Dot; · &Center Dot; , m no ) = S - 1 ( x ‾ 1 , x ‾ 2 , &Center Dot; &Center Dot; &Center Dot; , x ‾ no ) . ;

当矩阵A的秩小于t时,解密可能失败,解密失败的概率为从中心映射多项式的构造可知,中心映射多项式对应的二次型矩阵的秩接近2s,因此本系统可以抵御极小秩攻击;此外,可以用循环矩阵等形式减少公钥和密钥的大小。When the rank of matrix A is less than t, decryption may fail, and the probability of decryption failure is From the construction of the central mapping polynomial, it can be known that the rank of the quadratic matrix corresponding to the central mapping polynomial is close to 2s, so the system can resist the minimal rank attack; in addition, the size of the public key and the secret key can be reduced in the form of a cyclic matrix.

实施例2Example 2

本实施例除以下特征外,同实施例1:This embodiment is the same as Embodiment 1 except the following features:

步骤1、用户生成系统参数:Step 1. User generates system parameters:

1)设s,t,u,v为正整数,其中s≥t,设n=st,m=su+sv;1) Let s, t, u, v be positive integers, where s≥t, let n=st, m=su+sv;

2)设k=Fq为q个元素的有限域,其中q=pe,p是素数,e是正整数;2) Let k=F q be a finite field of q elements, where q=p e , p is a prime number, and e is a positive integer;

3)设kn表示有限域k上的所有n元组;3) Let k n denote all n-tuples on the finite field k;

4)设k[x1,x2,…,xn]为有限域k上的n个变量的多项式环;4) Let k[x 1 ,x 2 ,…,x n ] be a polynomial ring of n variables over a finite field k;

5)设设λ为系统安全参数。5) Let λ be the system security parameter.

步骤2、用户生成公钥和私钥:Step 2. The user generates a public key and a private key:

对于给定的系统安全参数λ,用户生成公钥和私钥的方法如下:For a given system security parameter λ, the method for users to generate public and private keys is as follows:

1)随机生成有限域k上的两个可逆的线性变换T,其中T:km→km1) Randomly generate two reversible linear transformations T on the finite field k, where T:k m →k m ;

2)随机生成矩阵 矩阵A是s×t矩阵,矩阵B是t×u矩阵,矩阵C是t×v矩阵,其中aij,bij和cij是xi的线性组合,i=1,2,…,n.;2) Randomly generate matrix Matrix A is an s×t matrix, matrix B is a t×u matrix, and matrix C is a t×v matrix, where a ij , b ij and c ij are linear combinations of x i , i=1,2,…,n. ;

3)计算E1=AB,E2=AC,记多变量二次多项式:f(i-1)u+j,fsu+(i-1)v+j∈k[x1,x2,…,xn]分别是矩阵E1,E2的(i,j)元素,于是得到m个多变量二次多项式f1,f2,…,fm,从而定义中心映射为:F(x1,x2,…,xn)=(f1(x1,x2,…,xn),…,fm(x1,x2,…,xn));3) Calculate E 1 =AB, E 2 =AC, record the multivariate quadratic polynomial: f (i-1)u+j ,f su+(i-1)v+j ∈k[x 1 ,x 2 ,… , x n ] are the (i, j) elements of matrices E 1 , E 2 respectively, so m multivariate quadratic polynomials f 1 , f 2 ,…,f m are obtained, and the central map is defined as: F(x 1 ,x 2 ,…,x n )=(f 1 (x 1 ,x 2 ,…,x n ),…,f m (x 1 ,x 2 ,…,x n ));

4)计算复合运算P(x1,x2,…,xn)=FоS=(p1(x1,x2,…,xn)…,pm(x1,x2,…,xn)),其中p1,p2,…pm∈k[x1,x2,…,xn]为二次多变量多项式;4) Calculation of the compound operation P(x 1 , x 2 ,...,x n )=FоS=(p 1 (x 1 ,x 2 ,...,x n )...,p m (x 1 ,x 2 ,...,x n )), where p 1 ,p 2 ,…p m ∈k[x 1 ,x 2 ,…,x n ] is a quadratic multivariate polynomial;

5)用户的公钥为二次多项式p1(x1,x2,…,xn)…,pm(x1,x2,…,xn);5) The user's public key is a quadratic polynomial p 1 (x 1 ,x 2 ,…,x n )…,p m (x 1 ,x 2 ,…,x n );

6)用户的私钥为可逆线性变换T以及矩阵A,B,C。6) The user's private key is a reversible linear transformation T and matrices A, B, and C.

步骤3、加密过程:Step 3, encryption process:

假设Alice试图加密信息M,并将加密后的信息发送给Bob。Alice加密信息步骤如下:Suppose Alice tries to encrypt a message M and sends the encrypted message to Bob. Alice encrypts information as follows:

1)Alice获得Bob认证的公钥多项式pB1(x1,x2,…,xn),…,pBm(x1,x2,…,xn);1) Alice obtains the public key polynomial p B1 (x 1 ,x 2 ,…,x n ),…,p Bm (x 1 ,x 2 ,…,x n ) certified by Bob;

2)将信息M表示成有限域k的n元组(m1,m2,…,mn);2) Express the information M as an n-tuple (m 1 ,m 2 ,...,m n ) of the finite field k;

3)计算(c1,…,cm)=(pB1(m1,m2,…,mn),…,pBm(m1,m2,…,mn)),得到密文(c1,c2,…,cm);3) Calculate (c 1 ,…,c m )=(p B1 (m 1 ,m 2 ,…,m n ),…,p Bm (m 1 ,m 2 ,…,m n )), and get the ciphertext (c 1 ,c 2 ,...,c m );

4)最后Alice将密文(c1,c2,…,cm)发送给Bob。4) Finally Alice sends the ciphertext (c 1 ,c 2 ,…,c m ) to Bob.

步骤4、解密过程:Step 4. Decryption process:

2)Bob收到密文(c1,c2,…,cm)后,计算(y1,…,ym)=T-1(c1,…,cm);2) After receiving the ciphertext (c 1 ,c 2 ,…,c m ), Bob calculates (y 1 ,…,y m )=T -1 (c 1 ,…,c m );

2)记 2) note

如果矩阵A的秩为t,则存在一个s×s可逆矩阵W,使得 WA = I 0 , ,其中I是t×t单位矩阵,0表示(s-t)×t零矩阵,因为E1=AB,E2=AC,所以有:WE1=WAB,WE2=WAC,即WE1=B,WE2=C,将W的元素看成新变量,得到s2+n个未知数su+sv个线性方程组,消去s2个W的元素变量,最终可得关于未知数x1,x2,…,xn的大约su+sv-s2个线性方程组,当u,v与s相近时,关于未知数x1,x2,…,xn的线性方程组的解空间的维数是非常小的,用高斯消元法解线性方程组,消去绝大部分的未知数,假设消去了Z个未知数,则有n-Z个自由未知数,将被消去的Z个未知数用n-Z个自由未知数表示并代入中心映射多项式中,这样就得到了m个关于n-Z个未知数的二次方程,由于自由未知数的个数非常少,很容易地求得方程的解,从而求得未知数x1,x2,…,xn的线性方程组的解,有时得到多个解,为此在明文中添加一些Hash值,设求得的解为 If matrix A has rank t, then there exists an s×s invertible matrix W such that WA = I 0 , , where I is the t×t identity matrix, 0 means (st)×t zero matrix, because E 1 =AB, E 2 =AC, so there are: WE 1 =WAB, WE 2 =WAC, that is, WE 1 =B, WE 2 =C, regard the elements of W as new variables, get s 2 +n unknowns su+sv linear equations, eliminate s 2 elements of W, and finally get the unknowns x 1 , x 2 ,… , about su+sv-s 2 linear equations of x n , when u, v are close to s, the dimension of the solution space of the linear equations of unknowns x 1 , x 2 ,…, x n is very small Yes, use the Gaussian elimination method to solve linear equations and eliminate most of the unknowns. Suppose Z unknowns are eliminated, then there are nZ free unknowns, and the eliminated Z unknowns are represented by nZ free unknowns and substituted into the central map In the polynomial, in this way, m quadratic equations about nZ unknowns are obtained. Since the number of free unknowns is very small, it is easy to obtain the solution of the equation, and thus obtain the unknowns x 1 , x 2 ,…,x n The solution of the linear equation system of , sometimes get multiple solutions, so add some Hash values in the plain text, let the obtained solution be

当矩阵A的秩小于t时,解密可能失败,解密失败的概率为从中心映射多项式的构造可知,中心映射多项式对应的二次型矩阵的秩接近2s,因此本系统可以抵御极小秩攻击,此外,可以用循环矩阵等形式减少公钥和密钥的大小;When the rank of matrix A is less than t, decryption may fail, and the probability of decryption failure is From the construction of the center map polynomial, it can be seen that the rank of the quadratic matrix corresponding to the center map polynomial is close to 2s, so the system can resist the minimal rank attack. In addition, the size of the public key and the key can be reduced in the form of a cyclic matrix;

本实施例中的方案不需要可逆线性变换S,因为矩阵A,B,C的元素是xi的随机线性组合,i=1,2,…,n,去掉可逆变换S并不影响系统的安全性。The scheme in this embodiment does not require the reversible linear transformation S, because the elements of the matrices A, B, and C are random linear combinations of x i , i=1, 2,...,n, removing the reversible transformation S does not affect the security of the system sex.

值得注意的是:公钥为P=TоF的这种多变量公钥加密结构是前所未有的,在此之前的所有多变量公钥加密结构都是P=TоFоS,其中S,T为可逆的线性变换,F为中心映射。It is worth noting that this kind of multivariable public key encryption structure with the public key P=TоF is unprecedented. All previous multivariate public key encryption structures are P=TоFоS, where S and T are reversible linear transformations , F is the center map.

上述实施例为本发明较佳的实施方式,但本发明的实施方式并不受上述实施例的限制,其他的任何未背离本发明的精神实质与原理下所作的改变、修饰、替代、组合、简化,均应为等效的置换方式,都包含在本发明的保护范围之内。The above-mentioned embodiment is a preferred embodiment of the present invention, but the embodiment of the present invention is not limited by the above-mentioned embodiment, and any other changes, modifications, substitutions, combinations, Simplifications should be equivalent replacement methods, and all are included in the protection scope of the present invention.

Claims (3)

1. multi-variable public key ciphering method based on matrix, it is characterised in that comprise the following steps:
Step 1, user generate systematic parameter;
Step 2, the PKI generating user and the private key of user;
Step 3, information is encrypted obtains ciphertext;
Step 4, the ciphertext received is decrypted obtains in plain text;
Described step 2 comprises the following steps:
(2-1) the security parameter λ of input system;
(2-2) linear transformation S, the T that two on stochastic generation finite field k are reversible, wherein S:kn→kn, T:km→km;knRepresent All n tuples on finite field k, kmRepresent all m tuples on finite field k;
(2-3) stochastic generation matrix A, B, C, wherein matrix A is s × t matrix, and matrix B is t × u matrix, and Matrix C is t × v square Battle array, their element is (x1,x2,…,xn) linear combination;
(2-4) E is calculated1=AB, E2=AC, respectively note matrix E1,E2(i, j) element is:
f(i-1)u+j,fsu+(i-1)v+j∈k[x1,x2,…,xn];
(2-5) note maps F (x1,x2,…,xn)=(f1(x1,x2,…,xn),…,fm(x1,x2,…,xn));
(2-6) compound operation P (x is calculated1,x2,…,xn)=T ο F ο S=(p1(x1,x2,…,xn)…,pm(x1,x2,…,xn));
(2-7) PKI of user is quadratic polynomial p1(x1,x2,…,xn)…,pm(x1,x2,…,xn);
(2-8) private key of user is Reversible Linear Transformation S, T and matrix A, B, C;
Step 1 comprises the following steps:
(1-1) setting s, t, u, v are positive integer, wherein s >=t, and n=st, m=su+sv, m represent the number of multivariate quadratic equation, N represents the number of variable;
(1-2) k=F is setqFor the finite field of q element, wherein q=pe, p is prime number, and e is positive integer;
(1-3) k is setnRepresent all n tuples on finite field k;
(1-4)k[x1,x2,…,xn] it is the polynomial ring of n variable on finite field k;
(1-5) set λ and represent the security parameter of system.
Multi-variable public key ciphering method based on matrix the most according to claim 1, it is characterised in that in described step 3, Set Alice and add confidential information M, and the information after encryption is sent to Bob, described Alice adds the process of confidential information M and include following Step:
1) Alice obtains the public key polynomial p of Bob certificationB1(x1,x2,…,xn),…,pBm(x1,x2,…,xn);
2) information M is expressed as the n tuple (m of finite field k1,m2,…,mn);
3) (c is calculated1,...,cm)=(pB1(m1,m2,…,mn),…,pBm(m1,m2,…,mn)), obtain ciphertext (c1,c2,..., cm);
4) Alice is by ciphertext (c1,c2,...,cm) it is sent to Bob.
Multi-variable public key ciphering method based on matrix the most according to claim 1, it is characterised in that described step 4 is wrapped Include following steps:
(4-1) Bob receives ciphertext (c1,c2,...,cmAfter), calculate (y1,...,ym)=T-1(c1,...,cm);
(4-2) calculate
(4-3) calculateObtain in plain text.
CN201310377035.2A 2013-08-26 2013-08-26 Multi-variable public key ciphering method based on matrix Expired - Fee Related CN103457726B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201310377035.2A CN103457726B (en) 2013-08-26 2013-08-26 Multi-variable public key ciphering method based on matrix

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201310377035.2A CN103457726B (en) 2013-08-26 2013-08-26 Multi-variable public key ciphering method based on matrix

Publications (2)

Publication Number Publication Date
CN103457726A CN103457726A (en) 2013-12-18
CN103457726B true CN103457726B (en) 2016-12-28

Family

ID=49739722

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201310377035.2A Expired - Fee Related CN103457726B (en) 2013-08-26 2013-08-26 Multi-variable public key ciphering method based on matrix

Country Status (1)

Country Link
CN (1) CN103457726B (en)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103780382B (en) 2014-01-13 2017-01-18 华南理工大学 Multivariable public-key encryption/decryption system and method based on hypersphere
CN103780383B (en) 2014-01-13 2017-05-31 华南理工大学 One kind is based on hyperspherical multivariable public key signature/checking system and method
EP3287859B1 (en) * 2016-08-25 2023-01-25 Ningbo Geely Automobile Research & Development Co., Ltd. Methods and systems for detecting faults in vehicle control systems
CN108877003A (en) * 2018-06-25 2018-11-23 深圳市嘉泊智慧城市运营管理有限公司 The garage access control system of intelligence
US11991271B2 (en) 2018-07-31 2024-05-21 International Business Machines Corporation System and method for quantum resistant public key encryption
CN109003314B (en) * 2018-08-14 2023-03-21 长春理工大学 Image encryption and decryption method based on four-dimensional quantum Dicke mapping
CN110266481B (en) * 2019-06-14 2022-05-20 深圳职业技术学院 Post-quantum encryption and decryption method and device based on matrix
CN110278206B (en) * 2019-06-19 2021-10-08 董玺 BWE encryption algorithm based on double private keys

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1314040A (en) * 1999-04-29 2001-09-19 布尔Cp8公司 Public-key signature methods and systems
CN1870499A (en) * 2005-01-11 2006-11-29 丁津泰 Method for generating multiple variable commom key password system

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2918525A1 (en) * 2007-07-06 2009-01-09 France Telecom ASYMMETRICAL ENCRYPTION OR SIGNATURE VERIFICATION PROCESS.
US8086854B2 (en) * 2008-04-01 2011-12-27 Apple Inc. Content protection information using family of quadratic multivariate polynomial maps

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1314040A (en) * 1999-04-29 2001-09-19 布尔Cp8公司 Public-key signature methods and systems
CN1870499A (en) * 2005-01-11 2006-11-29 丁津泰 Method for generating multiple variable commom key password system

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
多变量密码体制下大型布尔矩阵生成算法;陈勤;《计算机工程与应用》;20091231;第45卷(第19期);全文 *

Also Published As

Publication number Publication date
CN103457726A (en) 2013-12-18

Similar Documents

Publication Publication Date Title
CN103457726B (en) Multi-variable public key ciphering method based on matrix
Yi et al. Homomorphic encryption
CN103023637B (en) Encryption and search method for revocable keyword search public keys in cloud storage
Meshram An efficient ID-based cryptographic encryption based on discrete logarithm problem and integer factorization problem
KR20150032928A (en) New cryptographic systems using pairing with errors
Gaithuru et al. A comprehensive literature review of asymmetric key cryptography algorithms for establishment of the existing gap
Yang et al. Certificateless proxy re-encryption without pairings
Valluri Cryptanalysis of Xinyu et al.'s NTRU-lattice based key exchange protocol
Bhadada et al. Montgomery implantation of ECC over RSA on FPGA for public key cryptography application
Gaithuru et al. Insight into the operation of NTRU and a comparative study of NTRU, RSA and ECC public key cryptosystems
Chatterjee et al. Mutual Authentication Protocol Using Hyperelliptic Curve Cryptosystem in Constrained Devices.
Huang et al. Two-party authenticated multiple-key agreement based on elliptic curve discrete logarithm problem
Zheng et al. A strong provably secure IBE scheme without bilinear map
Tsai et al. A Publicly Verifiable Authenticated Encryption Scheme Based on Factoring and Discrete Logarithms.
Amounas et al. An efficient signcryption scheme based on the elliptic curve discrete logarithm problem
Baena et al. Square-vinegar signature scheme
Nagesh et al. Comparative analysis of MOD-ECDH algorithm and various algorithms
Nayak A secure ID-based signcryption scheme based on elliptic curve cryptography
Wahid et al. Implementation of certificateless signcryption based on elliptic curve using Javascript
Verma et al. An efficient signcryption algorithm using bilinear mapping
Dogan et al. Storage and communication security in cloud computing using a homomorphic encryption scheme based Weil pairing
Küsmüş et al. A novel public-key encryption scheme based on Bass cyclic units in integral group rings
Baba et al. A non-abelian factorization problem and an associated cryptosystem
Tomar et al. Implementation of elliptic–curve cryptography
Thadvai et al. A novel authenticated encryption scheme with convertibility

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20161228

Termination date: 20210826

CF01 Termination of patent right due to non-payment of annual fee