Keywords
Post-Quantum Cryptography, PQC, Public-Key Cryptography, Multivariate Polynomial Public Key, MPPK, Key Encapsulation Mechanism, KEM, Multivariate Cryptography
This article is included in the Cybersecurity collection.
Post-Quantum Cryptography, PQC, Public-Key Cryptography, Multivariate Polynomial Public Key, MPPK, Key Encapsulation Mechanism, KEM, Multivariate Cryptography
In 1978, Rivest et al. proposed homomorphic encryption, a technique for performing computations on encrypted data without knowledge of the decryption key or procedure.1 This was just one year after filing the patent for Rivest-Shamir-Adleman (RSA) public key cryptography.2 Homomorphic encryption is distinct from the cryptographic algorithms used for secure communication or storage with public key mechanisms like RSA,2 Diffie-Hellman,3 and elliptic curve cryptography,4,5 which are used to establish shared keys for symmetric encryption with algorithms like Advanced Encryption Standard (AES).
Homomorphic encryption can be divided into two categories: partially homomorphic and fully homomorphic. Partially homomorphic encryption supports either multiplicative or additive homomorphic operations. Examples of multiplicatively homomorphic systems include RSA6 and ElGamal cryptosystems,7 while additively homomorphic systems include Goldwasser-Micali,8 Benaloh,9 and Paillier.10 The first milestone for fully homomorphic encryption was achieved by Gentry in 2009 using lattice-based cryptography11 to support both addition and multiplication operators in the encrypted mode. Additionally, Chan proposed a symmetric homomorphic scheme based on an improved Hill Cipher12 in 2009, while Kipnis and Hibshoosh proposed their symmetric homomorphic scheme in 201213 with a randomization function for non-deterministic encryption. Gupta and Sharma proposed their symmetric homomorphic scheme based on linear algebraic computation in 2013.14 More recently, Li et al. proposed a new symmetric homomorphic scheme in 2016, called Li-Scheme, for outsourcing databases.15 Their scheme involves two finite fields: a secret small field and a big public field . It uses modular exponentiation with its secret base followed by modular multiplication with plaintext message . Li-Scheme supports both additive and multiplicative operations, making it a fully homomorphic encryption. However, in 2018, Wang et al. performed a cryptoanalysis of the Li-Scheme16 and broke the scheme with certain known plaintext-ciphertext pairs. They further improved their cryptoanalysis in 2019 and successfully recovered the secret key with the ciphertext-only attack using lattice reduction algorithm.17
Homomorphic encryption is a technique that enables performing mathematical operations on encrypted data without decrypting it first, thus providing data privacy. However, it would be interesting to extend this technique from data privacy to public key schemes. Specifically, it would be beneficial to explore cases where the public keys can provide privacy with variables that can take user inputs in a public key scheme. Some research in this area has yielded fruitful results,18,19 but there is still room for further research. Motivated by this need, we introduce a new asymmetric key encapsulation scheme called Homomorphic Polynomial Public Key (HPPK), which uses partial homomorphic encryption to encrypt public keys. The HPPK algorithm leverages multivariate polynomials to not only take advantage of the homomorphic properties of addition and scalar multiplication, but also to allow for the encryption of the input of the encrypting party during the creation of the ciphertext. In other words, the coefficients of the public key polynomial are encrypted using a homomorphic function to ensure that they are not truly public and to hide the structure of the public key. At the same time, treating the variables of the public key polynomials as user input allows for greater flexibility during the encryption process.
The HPPK cryptosystem possesses two distinct features. Firstly, it employs homomorphic encryption of the public key, which enables the inclusion of user input during ciphertext creation. Secondly, it utilizes a hidden ring. However, HPPK is not the first cryptosystem to employ hidden structure. For instance, Li et al. developed a cryptosystem that utilizes a hidden prime ring.15 Hidden Field Equations (HFE) cryptosystems are another notable example. Several asymmetric multivariate encryption schemes based on HFE have been proposed.20–23 Additionally, various signature schemes based on HFE have been developed.24–28 In HFE, both the private polynomials and the structure they are defined over, a field extension, are concealed using affine transformations.
The aforementioned algorithms based on HFE fall under the category of quantum-safe algorithms, specifically multivariate quantum-safe algorithms. With the advent of quantum computing, quantum-resistant cryptography has gained significant attention from both academia and industry leaders. The National Institution of Standards and Technology (NIST) played a pivotal role in this arena by initiating the post-quantum cryptography (PQC) standardization process in November 2017.29–31 Recently, the NIST announced the third-round finalists, which include four key encapsulation mechanism schemes (KEM) and three digital signature finalists.29 The four KEM finalists include Classic McEliece, which is code-based32; CRYSTALS-KYBER, which is lattice-based33; NTRU, which is based on lattices34,35; and Saber.36 NIST has selected CRYSTALS-KYBER as the standardized algorithm for KEM. Besides the aforementioned finalists, Multivariate Public Key Cryptosystems (MPKC) are noteworthy for their simplicity and efficiency.37,38,27,28 Algorithms based on multivariate polynomial problems are considered quantum-safe and can also serve as excellent candidates for homomorphic encryption due to the use of multivariate polynomials.
The framework of MPKC is based on a system of quadratic polynomials, with the public key represented by a central map , where variables and polynomials are used.39 Since its introduction by Matsumoto and Imai in 1988,40 numerous variants of MPKC central map constructions have been proposed, including single field systems and mixed field systems.41 Single field MPKC comprises several triangular systems and the Oil and Vinegar system, which were first introduced by Patarin and Goubin in 1997,42 as well as the unbalanced Oil and Vinegar scheme proposed by Kipnis et al. in 1999.20 Mixed field MPKC refers to the Matsumoto-Imai system40 and the HFE.43 Moreover, Wang et al. proposed a Medium-Field MPKC scheme in 2006,44 which was improved upon in 2008.45 Additionally, Ding and Schmidt proposed Rainbow as a MPKC digital signature scheme in 2005.27
Attacks on MPKC cryptosystems are mainly classified into two categories: algebraic solving attacks and linear algebra attacks. Algebra solving attacks attempt to solve the MPKC multivariate equation system from the public key with ciphertext to recover the pre-image . Faugére reported his first attack on MPKC in 199946 and in 200247 using Gröber bases (), later in 2003 Faugére and Antoine reported their attack on HFE Gröber bases (). Ding et al. proposed their new Zhuang-Zi algorithm to solve the multivariate system in 2006.48 In linear algebra attacks, Courtois et al. reported their attack on MPKC using the relinearization technique, aclled XL in 2000.49 The Minrank attack has been successfully applied by Goubin and Courtois on the single field system in 200050 and by Kipnis and Patarin on the mixed field system in 1999.51
A novel type of polynomial public key has recently been proposed by Kuang in 2021,52 based on univariate polynomial multiplications. Additionally, Kuang and Barbeau have further proposed a related public key in 2021,53,54,55 which utilizes multivariate polynomial multiplications with two noise functions to improve public key security against potential attacks. Recently, Kuang, Perepechaenko, and Barbeau have proposed a majorly improved Key Encapsulation Mechanism (KEM),56 where modular multiplication encryption over a hidden ring was applied for both noise functions. Building on top of this previous work,56 this paper investigates the potential benefits of combining a new homomorphic encryption with key construction to further enhance the security of MPPK cryptography for KEM and reduce the cipher size. Furthermore, a digital signature scheme based on the multivariate polynomial public key, or MPPK, has been introduced by Kuang, Perepechaenko, and Barbeau in 2022.57
In contrast to conventional homomorphic cryptography used for data privacy, in this paper we propose homomorphic encryption to be applied to the public key in the framework of multivariate asymmetric cryptography. This will allow for an asymmetric scheme with encrypted public keys. Moreover, by construction, homomorphic encryption allows for user’s input during the ciphertext generation procedure. That is, the ciphertext can be created with the input of the encrypting party, however, the public key used for encryption is itself encrypted using a homomorphic operator. The decrypting party is the only party that has knowledge of the private key associated with the homomorphic encryption operator as well as the asymmetric scheme private key. Essentially, the homomorphic encryption defined in this paper provides a round-trip envelope for a public key encryption.
In a way, such approach combines three main areas of cryptography, namely, asymmetric cryptography, homomorphic cryptography, and symmetric cryptography with the self-shared key. This phenomenon is illustrated in Figure 1. In the figure, the traditional public key derived from a given asymmetric algorithm is called plain public key (PPK), the homomorphically encrypted PPK is called cipher public key or CPK. The cipher is produced by evaluating the public key polynomial values using a user-selected secret together with the random noise variables. The decryption would perform in two stages: homomorphic decryption and then secret extraction.
We begin by introducing the homomorphic encryption operator. In order to allow for the user’s input during ciphertext creation, and leverage additive and scalar multiplicative homomorphic features, the homomorphic encryption is applied to polynomials. We discuss the reason for this further. Hence, when introducing the said operator we assume that it will be applied to polynomials.
Let be a positive integer, and be a randomly chosen value such that and We propose a homomorphic encryption operator , with a secret homomorphic key being a tuple . The values and are never shared. In its general form, the encryption operator is defined as a multiplicative operation modulo a hidden value as
Such operator decrypts the coefficients of the polynomial . That is, it successfully decrypts the cipher coefficients back to the plain coefficients. More precisely,
for any The above defined homomorphic operator holds following homomorphic properties:• is additively homomorphic: if and are two plain constants, then ;
• is scalar multiplicatively homomorphic: if is a plain constant and is a variable, then .
Thus, the operator offers partially homomorphic encryption. We leave it to the reader to verify that the same properties hold true for the proposed homomorphic decryption operator . Note that these homomorphic properties come from linearity, and thus are natural to polynomials. Indeed, polynomials hold additive and scalar multiplicative properties through their coefficients. Moreover, polynomials can be defined and evaluated with coefficients in a field or a ring, different from a field or a ring for variables. We leverage this property, and thus, apply the homomorphic encryption to public key cryptosystems with polynomial public keys.
As we have previously stated, the proposed homomorphic encryption is applicable to all polynomials over a ring or finite field characterized by a prime . In this work, when we refer to polynomials, we imply that the plain polynomials, to be encrypted, are considered modulo , unless stated otherwise. A generic multivariate polynomial has the following form
Alternatively, let denote the monomials of such polynomial, then
• The monomials are to be computed as . The values of monomials reduced modulo are used to compute the value of the polynomial .
• The homomorphic secret key value should satisfy the bit length condition: .
The first condition ensures that polynomial is evaluated as if the monomials are new variables over , Indeed, the operator is applied to the polynomial in the following way
Such encrypted polynomial can be computed as
Note that the computed value was not reduced modulo any integer, nor is the arithmetic performed modulo any integer. Thus, the user’s input through monomials remains intact and can be decrypted correctly. Let the plain value of the polynomial with user’s input, that is, if the polynomial was not encrypted with be
To ensure successful decryption, the second condition must be met. If the size of is sufficiently large, the values of coefficients and variables remains the same after decryption, and it is possible to recover Indeed,
Linear polynomials
Recall, that we encrypt the coefficients of the polynomials defined over , which successfully maps polynomials from to , leaving A generic linear multivariate polynomial over a finite field has form
Conventionally, in the asymmetric encryption schemes, the public key inherits mathematical logic from the private key, making it vulnerable. Hence, if public key consists of polynomials, we wish to encrypt the coefficients of the said polynomials using homomorphic operator, to hide the mathematical logic. In this case we share the cipher public key, encrypted using homomorphic operator. To ensure that the ciphertext can be still created in the framework of asymmetric public key scheme, the variables in the public key polynomials are used for user’s input. They are not encrypted using homomorphic encryption, but only using the encryption procedure from the asymmetric scheme. Such variable values can consist of the plaintext only, or plaintext and noise used for obscurity.
Applying homomorphic encryption operator to the above linear polynomial, defined in Equation (6), produces a cipher linear polynomial with coefficients in a hidden ring , and variables in
While the plain coefficients, , are encrypted into cipher coefficients, , the cipher polynomial can still be evaluated with a set of chosen values to produce value
Let the value be the original ciphertext of the asymmetric scheme. However, it is encrypted into the value using homomorphic encryption. To recover the plain polynomial value, that is, decrypt the cipher coefficients, into the plain coefficients and evaluate polynomial modulo , we first apply the homomorphic decryption operator to get and then reduce this value modulo . More precisely,
which reduced modulo isIn a framework of asymmetric scheme with homomorphic encryption element, polynomials such as in Equation (6) are associated with plain coefficients, that is, the original public keys. The cipher polynomials have form as in Equation (7), with coefficients being encrypted from the plain public keys, using homomorphic encryption. Such cipher public keys are shared, and the plain public keys are stored securely and never shared. The ciphertext in this combined algorithm is of the form as in Equation (8). The decrypting party first needs to decrypt the ciphertext to nullify the homomorphic encryption of the public key, as shown in Equation (8). Afterwards, the decryption party can perform decryption procedure that corresponds to the given asymmetric scheme.
Quadratic polynomials
Multivariate quadratic polynomials serve as the foundation of Multivariate Public Key Cryptosystem or MPKC.39,58–60 Thus, we want to pay special attention on applications of homomorphic encryption on multivariate quadratic polynomials. A general quadratic multivariate polynomial over a finite field has the following form
Here, the encrypted coefficients are defined over the hidden ring , however, all the variables are still elements of the field . As we have previously mentioned, we refer to the coefficients as plain coefficients, and are referred to as cipher coefficients. Similarly, and are referred to as cipher and plain polynomials respectively. While coefficients are encrypted with homomorphic encryption operator, the polynomial still accepts user’s input. That is, the cipher polynomial value can be still calculated with a chosen set of from the field as follows
Note that the computed value is an integer. The arithmetic to compute such value was not performed modulo any integer. The plain polynomial values are securely hidden through the hidden ring . To recover the plain polynomial equation, decryption operator can be applied to the cipher polynomial value , followed by reduction :
The value is the plain polynomial value for the chosen values of variables by the encrypting party.
Similar to the linear case, the public key of the asymmetric scheme consist of quadratic polynomials of the form (9), to be encrypted using homomorphic encryption operators. The cipher public keys are of the form (10). Such cipher public keys are the ones shared, while the plain public keys are not. The ciphertext in the combined scheme is of the form (13), which needs to be decrypted back to the plain value. For that a homomorphic decryption operator is applied, as in Eq. (14), and the plain ciphertext value is recovered.
The Homomorphic Polynomial Public Key Cryptosystem or HPPK for short is a variant of a MPKC scheme with public keys encrypted using homomorphic encryption operator. We feel it is valuable to provide the reader with a brief summary of MPKC to facilitate better understanding of the HPPK scheme.
An interested reader can find the detail description of MPKC schemes by Ding and Yang.39 In this section, we briefly outline the basic mechanism of MPKC algorithms. The framework mainly consists of quadratic multivariate polynomials
in variables over finite field . Each polynomial can be written in its expanded form asThe MPKC encryption procedure simply evaluates polynomials over the field as
The major step to use MPKC is to construct the invertible central map over a finite field to perform a map: .
There may be a potential way to enhance the security of MPKC cryptosystem by applying the proposed homomorphic encryption on its map: . The homomorphic encryption effectively hides the public key construction logic over a hidden ring . In this case, an encryption key is required for each quadratic polynomial , with value chosen over the hidden ring for all . Hence, there are a total of encryption keys for MPKC. The MPKC encryption in this case is almost the same as the original MPKC encryption. The ciphertext is to be homomorphically decrypted to create original multivariate equation system, as illustrated in Equation (18). This means, Equation (18) is hidden under the hidden ring . On one hand, applying the homomorphic encryption would increase the public key size for MPKC, however, the number of variables can be reduced due to the homomorphic encryption.
In this paper, we are not going to further explore this variant of MPKC schemes but we will focus on another variant of MPKC, called HPPK which we propose in the new section.
We propose a new variant of an MPKC scheme, called the Homomorphic Polynomial Public Key or HPPK, with the following considerations:
• The vector on the left hand side of the map is treated as and the vector on the right hand side as ;
• The vector is replaced with , considering as a message vector in a polynomial vector space represented by a basis for a message variable and as a noise vector for noise variables ;
• The proposed homomorphic encryption is applied to the central map , mapping the elements from :
and the decryption is de-mapping from :
• The number of polynomials is reduced to ;
• The decryption mechanism is changed from inverting maps to modular division, which automatically cancels the noise used for obscurity.
Key construction
Without loss of generality, we change the notation of the unencrypted central map to . Under the above considerations, the central map consists of two multivariate polynomials
Note that the matrix maps and are of size , thus, no longer square. The construction of and can alternatively be achieved with polynomial multiplications
Here, and are orders of base multivariate polynomial and univariate polynomials with respect to message variable respectively. Without loss of generality, we assume that the univariate polynomials and are solvable, in other words . Using Equations (21) and (22), we can express
We set public key to be the cipher central map , while private key consists of the homomorphic operators, the hidden ring, together with univariate polynomials:
Security parameters: , and the prime finite field which is agreed on before the key generation procedure.
Private key:
• hidden ring with a randomly selected for the required bit length;
• homomorphic encryption key values and chosen from ;
• univariate polynomials and with coefficients randomly selected from ;
Public key: the map , consisting of
Encryption
Encryption is straightforward, by determining the value for the secret and randomly choosing values for the noise variables over the field and evaluating ciphertext integer values and . That is, the ciphertext consists of two integer values where
Here, and denote the cipher coefficients encrypted with the homomorphic encryption operators. Note that the cipher polynomials have coefficients in the hidden ring , and all monomial calculations are performed , the rest of the arithmetic is performed over integers. The values , and are integers forming the ciphertext .
Decryption
It is easy to verify that the HPPK map as in Equation (19) and Equation (20), under construction as shown in Equation (21), holds a division invariant property on the multiplicand or the base multivariate polynomial . Indeed,
The first step in the decryption process is to apply the homomorphic decryption operator to the ciphertext to recover plain polynomial values and , which are evaluation results of plain multivariate polynomials and at the chosen message and noises respectively. This can be done as
These values are used to compute the ratio modulo of the form
Note that the noise vector is automatically eliminated through the division. The secret can then be found from Equation (27) by radicals if and are solvable such as linear or quadratic polynomials. The optimal choice of is in the framework of the HPPK algorithm. This division invariant property is the foundation for the HPPK encapsulation to be indistinguishable under chosen plaintext attacks.
We demonstrate how HPPK works with a toy example.
Key pair generation
Considering a prime field with the prime and two noise variables for the simplicity of the demonstration purpose only, we can choose the hidden ring characterized by an integer of length bits. The private key consists of the following values:
•
•
•
• (note: just for key pair construction procedure; this polynomial is not stored in the memory)
The PPK is simply constructed as
The PPK polynomials are encrypted with the self-shared key over the ring
to create the so-called CPK and .Encryption
We randomly choose variables from : We, then, pre-calculate values
Now we can calculate the ciphertext as follows
Decryption
We first perform the homomorphic decryption to rebuild the plain polynomial equations
then we can eliminate the noise introduced by the base multivariate polynomialwhere the secret can be easily extracted as . The encryption can be done with any possible values for and at a given secret , which would produce different ciphertext , but the decryption would reveal the same secret. This simple toy example demonstrates its capability of randomized encryption.In this section, we analyze the security of the proposed HPPK algorithm. The security of HPPK relies on the computational hardness of the Modular Diophantine Equation, introduced in Definition 0.1, and Hilbert’s tenth Problem, introduced in Definition 0.7. We begin by proving that HPPK satisfies the IND-CPA indistinguishability property. These results are then extended to prove that the task of recovering plaintext from the ciphertext in the framework of HPPK is NP-complete, and state its classical and quantum complexity. Afterward, we focus on the private key attack and prove that the problem of obtaining the private key from the public key is NP-complete. Here we also provide classical and quantum complexities of obtaining private key from the public key.
An attentive reader will notice that the evaluated ciphertext as illustrated in Equation (26) has not been reduced modulo any integer. Thus, an adversary looking to perpetrate an attack to recover the plaintext can treat the coefficients of the polynomials in Equation (26) and evaluated ciphertext as integers. The plaintext values, sought after by the adversary, are elements of the field , thus the malicious party can reduce the public values of the ciphertext modulo to solve for plaintext variables in the Equation (26). We formally phrase it in the following remark.
For the purpose of obtaining the plaintext, the ciphertext and cipher coefficients as illustrated in the Equation (26) can be considered modulo as follows
(Modular Diophantine Equation). The Modular Diophantine Equation asks whether an integer solution exists to the equation
given as an input of a polynomial and a primeA positive answer to this question would include a solution.
Let . Note that the system in the Equation (28) can be normalized as
A naive way of solving such a normalized system is to solve each equation and find a common solution. Each such equation is an instance of a Modular Diophantine Equation. The more obvious way to solve the system in Equation (28) would be to use Gaussian elimination and transform the system into a single equation. Indeed, since the coefficients of the ciphertext are publicly known, and the noise variables are linear in the ciphertext, the adversary can express any noise variable using the remaining terms of the equation and reduce the system to a single equation of the form
Let . The ciphertext in its normalized reduced form is a single equation
Note that even in its normalized reduced form the ciphertext is an instance of a Modular Diophantine Equation. Since we can argue that the adversary does not benefit much by reducing the system in Equation (29) to a single equation (31), and eliminating one variable. The number of expected solutions to the Equation (31) remains , and the adversary is facing with the problem of deciding which solution is the correct one. That is, a brute-force search algorithm can find a list of solutions to the Equation (31) by trying all the possible variables values over . The adversary is interested in a particular solution from the list.
One might argue that the attacker is interested only in the plaintext variable . Thus, the adversary can simply guess the value . The complexity of this guess is . This is a probabilistic attack. For a deterministic result, this guess has to be tested for correctness. This will require coming up with values for the noise variables and testing whether the guess is correct. Moreover, NIST requires the size of the actually communicated secret to be bytes.61 Thus, the secret that is transferred between two parties consists of blocks, where each block is bits. Each block corresponds to the HPPK secret . The secret message is then different values concatenated together to form a 32 byte secret. Each such block is encrypted separately using HPPK. The complexity of correctly guessing the transferred secret message is then , where comparing with the complexity of attacking all blocks.
The Modular Diophantine Equation Problem is NP-complete.
The proof, using the Boolean Satisfiability Problem, is given by Moore and Meterns [,62 Section 5.4.4]. □
Theorem 0.1 states that a brute-force search algorithm can find a solution to the Modular Diophantine Equation by trying all the possible solutions. Thus, without loss of generality, we treat the ciphertext-only attack on a ciphertext in its normal reduced form as a Modular Diophantine Problem. Indeed, by Theorem 0.1 the algorithm to find a solution to a Modular Diophantine Equation does not simply terminate to give a solution, it is a brute-force search algorithm that considers every possible solution before producing a result. In other words, it goes through all the possibilities to choose the correct one.
We suppose that the adversary will choose to perpetrate the attack on the ciphertext in its normal reduced form as in Equation (31), for its easier to attack. In the framework of HPPK, the public key elements are the coefficients of the ciphertext polynomials.
(HPPK has IND-CPA property). Let , where is the total number of variables in the normalized reduced form of the ciphertext as in Equation (31). If the Modular Diophantine Equation is NP-complete, the HPPK encryption system is provably secure in the IND-CPA security model with a reduction loss of .
Assume that there exists an adversary that -breaks the HPPK encryption system in the IND-CPA security model. We construct a simulator that solves the Modular Diophantine Equation. Given as input, a Modular Diophantine Equation instance , where is of the form Equation (31) and , the simulator runs as follows. The simulator sets the normalized public key over to the coefficients of the polynomial . The challenge consists of the following game. The adversary generates two distinct messages and , and submits them to the simulator. The simulator randomly chooses in as well as random values for the noise variables, and sets the ciphertext to be the value
The challenge for the adversary then consists of the following equation to be solved for :
over . Here,This equation remains to meet the definition of the Modular Diophantine Equation , since the value can be pushed to the noise variables, which are random and do not influence the plaintext. Indeed, let be the coefficients of the polynomial for any and , then
where The challenge in this case is correct, as it corresponds to the challenged plaintext and remains in the form of a Diophantine equation chosen by the simulator.The coefficients of the challenge equation come from the submitted Diophantine equation, and thus, from the point of view of the adversary are random. The values are selected at random. The adversary does not have knowledge of the values and they can not be calculated from the other parameters given to the adversary. So the noise variables for all are random. Hence, the simulation holds randomness property. By construction, the simulation is indistinguishable from a real attack. That is, the adversary is challenged with solving the equation as in the Equation (30), which is HPPK ciphertext in its normalized reduced form.
The simulator does not abort in the simulation while interacting with the adversary. The adversary outputs a random guess of . When is equal to , the adversary wins. Otherwise, the adversary looses. The probability of simply guessing the value for is . We will calculate the probability of solving the IND-CPA challenge with the advantage of the adversary, that is . The advantage comes from the assumption that the adversary can break the HPPK cryptosystem.
The challenge has a general form as in the Equation (31), thus, the equation is expected to have distinct solutions, considering all variables. On the other hand, it is known that the variable . Assuming , there are now possible solutions to choose the correct solution from. The same is true for . That is, the probability of finding correct solution of the equation is
where denotes probability of finding the correct solution to the equation . Then by the law of total probability, the probability of solving the challenge equation isAccounting for the advantage that the adversary has, the probability is . The total probability of solving the IND-CPA challenge is then
The simulation is indistinguishable from a real attack. So the adversary who can break the challenge ciphertext will uncover the solution to the given Modular Diophantine Equation problem. The probability of breaking the ciphertext is .
The advantage of solving the Diophantive Equation problem is then Let denote the time cost of the simulation. We have . The simulator solves the Modular Diophantine Equation with time cost and advantage . Thus, contradicting the Theorem 0.1 so the initial assumption is wrong. □
The framework of the IND-CPA challenge entails known plaintext, in other words, the adversary knows that the secret We now state the complexity of the unknown plaintext ciphertext-only attack.
(Ciphertext-only attack). Let . The classical complexity of finding the plaintext from the ciphertext is
Let the adversary favour the ciphertext in its reduced normal form (31). Without any knowledge about the plaintext, the adversary will need to solve the Equation (31) to obtain the plaintext along with the noise variables. A single equation over with variables is expected to have possible solutions over . The correct one is among them. That is, the plaintext encapsulated in a single variable is not the sole variable in the ciphertext equation. However, it is the only unknown of interest. The adversary can try and simply guess , the complexity of the guess is . However, they have to test whether their guess is correct. Moreover, the secret transferred between the communicating parties consist of 32 bytes as required by NIST. Thus, the adversary will have to guess many values for , where . In this case, the complexity is We expect Quantum complexity of the described attack due to Grover’s search algorithm is □
Let . There exists a polynomial time algorithm to find coefficients of univariate polynomials and given the plain central maps and .
Note that all the plain coefficients of the polynomials and as defined in Equation (22) are defined over the prime field . Thus, for any fixed , it is possible to use Gaussian elimination to reduce the system of equations formed by the plain coefficients of and of the form
Let . Finding private key from the cipher public key in the framework of HPPK reduces to finding the homomorphic encryption key and
The private key consists of the coefficients of the univariate polynomials as well as values used to encrypt the plain public key to the cipher public key. By Lemma 0.4 once the values and are known, the coefficients of can be found in polynomial time. □
(Diophantine set). The Diophantine set is a set associated with a Diophantine equation where such that
(MRDP Theorem). The Matiyasevich–Robinson–Davis–Putnam (MRDP) theorem states that every computably enumerable set is Diophantine, and every Diophantine set is computably enumerable.
The result has been proven in various works, for instance.65 □
(Hilbert's tenth problem) Hilbert’s tenth problem asks whether the general Diophantine Problem is solvable. Due to MRDP, Hilbert’s tenth problem is undecidable.
For proof see.65 □
Private key attack is non-deterministic and has complexity of at least , where is the largest number with bit-length.
By Lemma 0.4 and 0.5 the attack on public key reduces to finding the values , and From the perspective of the attacker, the values , and could be treated as a one-time pad keys as they have been chosen at random, and can not be calculated from other parameters given to the attacker. An obvious attack would be a brute force search for all the three values, , and The direct brute force search classical complexity would be greater than for the three values together, where is the largest -bit number. Due to Grover’s algorithm, the quantum complexity is greater than Note however, because of the condition , once is found the search span for and reduces. Brute force search entails a non-deterministic result, however, we provide a more formal argument below.
For each fixed chose of , each public key coefficient can be written in the integer domain as follows
Solving such equation by Theorem 0.6 and 0.7 is an NP-complete task. For each , we can generate one such equation. Considering them all together, the adversary will arrive at an underdetermined system as the variables in the system depend on . Each equation in such a system is a multivariate Diophantine equation. One way to solve this system is to solve each equation separately and search for common solutions. However, by Theorem 0.6 and 0.7 this is an NP-complete problem. Reducing the system to a single polynomial still produces a multivariate Diophantine equation, solving which is an NP-complete problem by Theorem 0.6 and 0.7. □
Recall, that the homomorphic operator is defined by the two secret values . These values are known only to the decrypting party and are never shared. Thus, we assume that the adversary can not simply access the homomorphic encryption oracle. Indeed, if the adversary were to have access to such oracle, they could pass to be encrypted, resulting in the output value Thus, the adversary would learn half of the homomorphic secret key. In order to find the value , the adversary can pass values to be encrypted, producing mod The values can be chosen to determine . For instance, with public knowledge of the bit-size of , the adversary can consider an interval between the smallest number of that bit-size and the largest number of that bit-size, and divide that interval in half, where is the mark at the half. If then must be smaller than . If , then is larger than . In the first case, take the interval between the smallest number of bit-size and , and consider the halfway mark. Repeat the experiment, each time decreasing the interval until the value is “trapped” in a small interval and can be determined. Similarly for the latter case, take the interval between and the largest number of bit-size , mark a halfway and use that mark value to repeat the experiment. Based on whether or not the value changes, decrease the interval and repeat the experiment. This is only but one way to find , while is known.
Since the operation is deterministic, after the values of and are fixed, it is important that they remain secret and the adversary does not have access to the homomorphic encryption oracle. Note that in the framework of HPPK, the adversary has access to the public key polynomials which are essentially randomly chosen values encrypted using the homomorphic operator with secret values Without the knowledge of the values before they were acted on with , finding can be considered a brute force search problem.
At large, the security of the HPPK cryptosystem relies on the problem of solving undetermined system of equations over . Such system is expected to have possible solutions, where is the number of variables and is the number of equations in the system. The attacker can solve this system to find all possible solutions, however, it is the problem of determining the correct solution from all the possible solutions that makes HPPK secure.
The ciphertext attack requires the adversary to solve an underdetermined system of equations over , which can be reduced to a single Modular Diophantine equation. Solving this equation is an NP-complete problem.
The public key attack aimed to unveil the plaintext reduces to a brute force search for three unknown values To find these values, the attacker can either use brute-force search or solve an underdetermined system of equations over the integers. The former yields non-deterministic results and the latter is an NP-complete problem.
We conclude that from the point of view of the adversary, the following is true.
The best classical complexity to attack HPPK is .
We assume that the malicious party will take the most advantageous path for them. Thus, by Lemma 0.3, Lemma 0.4, Lemma 0.5, and Theorem 0.8 we can conclude that the best attack is to obtain the plaintext from the ciphertext. Such attack is non-deterministic with classical complexity of □
In this paper, we introduce a new homomorphic encryption scheme intended to secure public keys of multivariate asymmetric cryptosystems. Unlike conventional homomorphic encryption, our scheme uses encrypted plain public keys or CPK that can be published for anyone to use to establish a secret sharing between two parties. Our homomorphic encryption is applied to polynomials, leveraging homomorphic properties and allowing for user input through variables. The homomorphic encryption and decryption operators are modular multiplication operators modulo a hidden value , with values and chosen uniformly at random from the hidden ring under certain conditions. We propose using this homomorphic encryption in conjunction with Multivariate Polynomial Public-key Cryptosystem (MPKC) to secure polynomial public keys, called Homomorphic Polynomial Public Key (HPPK). We describe the HPPK algorithm in detail, drawing from the framework of MPKC. HPPK public keys are product polynomials of a multivariate and univariate polynomials, encrypted with a homomorphic encryption operator. The ciphertext is created by the encrypting party through the input of plaintext and random noise as public polynomial variables. The decryption procedure involves first homomorphic decryption of the ciphertexts to produce plain polynomial values for a division of two plain polynomials. By construction, such division cancels the base multiplicand polynomial with the noise variable and retains a single equation in one variable. This variable is the plaintext, which can be found by radicals. We provide a thorough security analysis of the HPPK cryptosystem, proving that the hardness of breaking the HPPK algorithm comes from the NP-completeness problem of the Modular Diophantine Equation. We also show that HPPK holds the IND-CPA property. In the future work, we will perform a detailed benchmarking study with variety of configurations as well as a more extensive security analysis, considering attacks that have not been described in the work.
R.K. provided the core ideas. M.P. developed the security analysis. All authors reviewed the manuscript and approved its publication.
All authors acknowledge Professor Michel Barbeau for his contributions to the MPPK algorithm and discussions regarding security reductions included in this work.
Views | Downloads | |
---|---|---|
F1000Research | - | - |
PubMed Central
Data from PMC are received and updated monthly.
|
- | - |
Is the work clearly and accurately presented and does it cite the current literature?
Partly
Is the study design appropriate and is the work technically sound?
Yes
Are sufficient details of methods and analysis provided to allow replication by others?
Partly
If applicable, is the statistical analysis and its interpretation appropriate?
Yes
Are all the source data underlying the results available to ensure full reproducibility?
Partly
Are the conclusions drawn adequately supported by the results?
Yes
Competing Interests: No competing interests were disclosed.
Reviewer Expertise: Cryptography, Post quantum cryptography
Is the work clearly and accurately presented and does it cite the current literature?
Yes
Is the study design appropriate and is the work technically sound?
Yes
Are sufficient details of methods and analysis provided to allow replication by others?
Yes
If applicable, is the statistical analysis and its interpretation appropriate?
Yes
Are all the source data underlying the results available to ensure full reproducibility?
Yes
Are the conclusions drawn adequately supported by the results?
Yes
Competing Interests: No competing interests were disclosed.
Reviewer Expertise: Quantum information and quantum algorithm.
Alongside their report, reviewers assign a status to the article:
Invited Reviewers | ||
---|---|---|
1 | 2 | |
Version 1 17 Oct 23 |
read | read |
Provide sufficient details of any financial or non-financial competing interests to enable users to assess whether your comments might lead a reasonable person to question your impartiality. Consider the following examples, but note that this is not an exhaustive list:
Sign up for content alerts and receive a weekly or monthly email with all newly published articles
Already registered? Sign in
The email address should be the one you originally registered with F1000.
You registered with F1000 via Google, so we cannot reset your password.
To sign in, please click here.
If you still need help with your Google account password, please click here.
You registered with F1000 via Facebook, so we cannot reset your password.
To sign in, please click here.
If you still need help with your Facebook account password, please click here.
If your email address is registered with us, we will email you instructions to reset your password.
If you think you should have received this email but it has not arrived, please check your spam filters and/or contact for further assistance.
Comments on this article Comments (0)