The present disclosure generally relates to a method of quotient algebra partition-based homomorphic encryption (QAPHE), particularly, to a method extending the scheme of public-key or the scheme of semi-public-key system in QAPHE to their corresponding models of multi-party homomorphic encryption.
Homomorphic Encryption (HE) is deemed to be the most important technology in cryptology and information security that permits users to perform computations on encrypted data without first decrypting it. It highly improves the security of data processing.
Secure Multi-Party Computation (SMPC) is a subfield of cryptology with the goal of creating methods for each party to jointly compute a function over their inputs while keeping those inputs private. In traditional, cryptology is about hiding content, yet SMPC is about hiding partial information of data while computing with the data from multiple sources and producing outputs correctly.
Depending on different situations of security requirement, the known extended schemes of HE, combined with SMPC, have been developed, such as the threshold HE and multi-key HE.
However, the current model of multi-party homomorphic encryption is designed according to the requirements of the traditional unitary model, which has a limited security level.
Therefore, how to extend the scheme of public-key or semi-public-key system in QAPHE to the model of multi-party homomorphic encryption directly by algorithm of QAP and thereby providing a commercial multi-party information security infrastructure becomes an urgent problem to be solved.
The present inventive concept provides a method of designing a multi-party system in QAP-based homomorphic encryption which may be applied to multi-party QAPHE depending on different situations of security requirement at the same time.
In light of achieving the foregoing desired result, the present inventive concept provides a method of designing a multi-party system in quotient algebra partition-based homomorphic encryption (QAPHE), wherein the method comprises:
S1. increasing a single model provider A to multiple ones, wherein the number of the multiple model providers is L and let A1≤i≤L and L≥2;
S2. increasing a single data provider B to multiple ones, wherein the number of the multiple data providers is R and let B1≤j≤R and R≥2; and for the kj-qubit plaintext of each of the data providers, encoding this plaintext into a ciphertext |ψj;
S3. aggregating the number R of ciphertexts by a form of tensor product and generating an encoded state
for computation; and
S4. preparing a model operation to conduct the computation, Uen|ψen, of an encoded operator Uen and the encoded state |ψen in a cloud.
In an embodiment of the present inventive concept, the multi-party system of public-key scheme designed by the method executes its function by extending a single public-key in QAPHE.
In an embodiment of the present inventive concept, the step of S1 of the method further comprises: choosing a partition [ni, ki, Ci] by each of the model providers and one public-key Keypub,i and one private-key are generated by each of the partition.
In an embodiment of the present inventive concept, the public-key Keypub,i is composed of ni-qubit modified encoding and a random error generator.
In an embodiment of the present inventive concept, the step of S2 of the method further comprises: choosing a public-key Keypub,j by each of the data providers and each of the data providers encodes its own kj-qubit plaintext into a ciphertext |ψj.
In an embodiment of the present inventive concept, the multi-party system of semi-public-key scheme designed by the method executes its function by extending a single semi-public-key in QAPHE.
In an embodiment of the present inventive concept, the step of S1 of the methods further comprises: generating semi-public-key Keys-pub employed by all the A1≤i≤L together.
In an embodiment of the present inventive concept, the semi-public-key is composed of encoding generators.
In an embodiment of the present inventive concept, the step of S2 of the method further comprises: choosing an encoding QP(j) by each of the data providers and each of the data providers encodes its own kj-qubit plaintext into a ciphertext |ψj.
In an embodiment of the present inventive concept,
in the step of S2.
In an embodiment of the present inventive concept, after the step of S3, the method further comprises: sending encoded message En(ζP(j)) to Aσ(j) by the data providers, wherein σ(j) is a permutation.
In an embodiment of the present inventive concept, the cloud maintains single due to the consideration of parallel computation.
The present inventive concept provides a method of designing of multi-party system in QAP-based homomorphic encryption. This method is able to improve the security of public-key/semi-public-key system; under proper conditions, the common designs of multi-party HE, such as threshold HE or multi-key HE, may be included to be immediately applied to practical scenarios.
The present inventive concept is described by the following specific embodiments. Those with ordinary skills in the arts can readily understand other advantages and functions of the present inventive concept after reading the disclosure of this specification. Any changes or adjustments made to their relative relationships, without modifying the substantial technical contents, are also to be construed as within the range implementable by the present inventive concept.
Moreover, the word “exemplary” or “embodiment” is used herein to mean serving as an example, instance, or illustration. Any aspect or design described herein as exemplary or an embodiment is not necessarily to be construed as preferred or advantageous over other aspects or designs. Rather, use of the word “exemplary” or “embodiment” is intended to present concepts and techniques in a concrete fashion.
As used in this application, the term “or” is intended to mean an inclusive “or” rather than an exclusive “or.” That is, unless specified otherwise or clear from context, “X employs A or B” is intended to mean any of the natural inclusive permutations. That is, if X employs A; X employs B; or X employs both A and B, then “X employs A or B” is satisfied under any of the foregoing instances. In addition, the articles “a” and “an” as used in this application and the appended claims should generally be construed to mean “one or more,” unless specified otherwise or clear from context to be directed to a singular form.
Please refer to
S1. increasing a single model provider A to multiple ones, wherein the number of the multiple model providers is L and let A1≤i≤L and L≥2;
S2. increasing a single data provider B to multiple ones, wherein the number of the multiple data providers is R and let B1≤j≤R and R≥2; and for the kj-qubit plaintext from each of the data providers, encoding this plaintext into a ciphertext |ψj;
S3. aggregating the number R of ciphertexts by a form of tensor product and generating an encoded state
for computation; and
S4. preparing a model operation to conduct the computation, Uen|ψen, of an encoded operator Uen and the encoded state |ψen in a cloud.
In an embodiment of the present inventive concept, the cloud maintains single due to considering the parallel computation.
Please refer to
Please refer to
According to the present inventive concept, as shown in
In an embodiment of the present inventive concept, the step of S1 of the method may further comprise: choosing a partition [ni, ki, Ci] by each of the model providers and one public-key Keypub,i and one private-key may be generated by each of the partition.
In an embodiment of the present inventive concept, the public-key may be composed of ni-qubit modified encoding and a random error generator. The modified encoding may be represented as V(j)Qen(j) and the random error generator may be represented as Genε
In an embodiment of the present inventive concept, the step of S2 of the method may further comprise: choosing a public-key Keypub,j by each of the data providers and each of the data providers may encode its own kj-qubit plaintext into a ciphertext |ψj. In this embodiment, the ciphertext may be denoted as |ψj=Ē(j)V(j)Qen(j)|0⊗|xj.
According to the present inventive concept, as shown in
may be defined as
may be defined as
and the private key may be defined as Keypriv=+P+.
Please refer to
Please refer to
According to the present inventive concept, as shown in
In an embodiment of the present inventive concept, the step of S1 of the method may further comprise: generating the semi-public-key Keys-pub by all the A1≤i≤L together.
In an embodiment of the present inventive concept, the semi-public-key may be composed of encoding generators. The encoding generators may be, for example, but not limited to k-qubit permutations.
In an embodiment of the present inventive concept, the step of S2 of the method may further comprise: choosing an encoding QP(j) by each of the data providers and each of the data providers encodes its own kj-qubit plaintext into a ciphertext |ψj. In this embodiment, the ciphertext may be denoted as |ψj=Qp(j)|xj.
In an embodiment of the present inventive concept,
in the step of S2.
In an embodiment of the present inventive concept, after the step of S3, the method may further comprise: sending encoded message En(ζP(j)) to Aσ(j) by the data providers, wherein σ(j) is a permutation.
According to the present inventive concept, as shown in
may be defined as
and the private key may be defined as Keypriv=+P+.
According to the present inventive concept, a stabilizer code [n, k, C] with a stabilizer C⊂su(2n) is a quotient algebra partition {Q(C)}. The quotient algebra partition is generated by the k-th maximal bi-subalgebra C=[k] of a Cartan subalgebra in su(2n). Specifically, there exists an isomorphism between the stabilizer C of [n, k, C] under the multiplication and the k-th maximal bi-subalgebra [k], i.e. C=[k]. Therefore, the stabilizer code [n, k, C] inherits the partition structure from the QAP {Q(C)}. There is a duality between the n-qubit encrypted state in the Hilbert space and the partition structure [n, k, C] have duality, which verifies the orthogonality connecting spinors and the codewords. A significant concept of the coset spinor is illustrated in the QAP structure, which implies the n-s condition for the error-correctability in a QAP.
In the partition structure [n, k, C], an error set ε is correctable iff two arbitrary spinors of ε are either in different blocks or in a same coset of a block within this partition structure. Besides, there are two implications of the concept of the coset spinor, the correction equivalence and the code degeneracy. The former one indicates that an error may be corrected by any operator in the same coset and the latter one expresses that a correctable error set allows spinors in a same coset, thereby obtaining two immediate results. One is that if there is no spinor of the error set, ε, in the subspace, Γ0−C, [n, k, C] may detect the error set ε; and the other one is that if two errors exist in different cosets of the same block, then the two errors in [n, k, C] are not correctable. Consequently, the n-s condition for the error-correctability is affirmed.
The partition structure [n, k, C] is regarded as a quantum version of the classical Hamming code [n, k]. For every classical linear code, [n, k], there exists an only partition structure [n, k, C] determined by the code. For every partition structure [n, k, C], there exists an only symplectic linear code [2n, n+k] determined by the partition structure. In the partition structure [n, k, C], it requires an encoding built by the partition structure in the intrinsic coordinate to encode a k-qubit state into an n-qubit codeword.
In the partition structure [n, k, C], an encoding Qen∈SU(2n) is an n-qubit spinor-to-spinor mapping transforming [n, k, C] into an intrinsic coordinate [n, k, Ĉ] generated by the intrinsic bi-subalgebra Ĉ={S0ζ⊗S00:ζ∈Z2n−k}=Qen†CQen. In the intrinsic coordinate, the partition structure [n, k, Ĉ] is generated by the intrinsic bi-subalgebra Ĉ={S0ζ⊗S00:ζ∈Z2n−k} that is the k-th maximal bi-subalgebra of the intrinsic Cartan subalgebra, [0]. In this partition structure, cosets of a block, =∪μ∈Z
To correct an error set ε⊂su(2n) with an encoding Qen∈SU(2n) in the partition structure [n, k, C], a fault tolerant encode of the k-qubit operator M∈SU(2k) may be denoted as the form, Uen=QenQen†, where is a tensor product of M and the (n−k)-qubit identity I2
Quantum Circuit
Basic arithmetic, such as addition and multiplication, are illustrated in the following details of quantum circuit.
Every finite field Fq=Fpm is composed of elements q=pm for a prime number p and a positive integer m. The finite field is isomorphic to the quotient ring Zp[x]/ƒ(x) of a polynomial ring Zp[x] and an irreducible polynomial function ƒ(x) of degree m.
Currently, major post-quantum cryptosystems, such as lattice-based code system, code-based system and multivariate-based system, are described by polynomial rings, rather than linear operations. The QAP structure may be composed of operates dual to states of a Hilbert space and allows applications of invertible linear transformations to these states inherently. This reveals essential differences between the solution of QAP-based HE and that based on a polynomial ring.
A quantum circuit exists to perform an addition Σi=1Nmi of a number N of l-bit message mi∈Z2l. For the addition of two l-bit numbers, there is a more effective space-time implementation. For example, build a circuit with its linear size of O(l) in depth O(l) with O(l) ancilla qubit. Then, provide a circuit with its size of O(l) in logarithmic depth O(log l) with O(l/log l) ancilla qubit.
A quantum circuit exists to conduct a multiplication of two 1-bit numbers, which permits the circuit design of multiplying two numbers with lower cost. For example, the Karatsuba-based multiplication requires a circuit size O(llog
Construction of Public-Key Scheme
The solution based on the QAPHE in a public key system is illustrated as follows.
The scheme of QAPHE is a dual process of QAP-based Fault Tolerance Quantum Computation, QAPFTQC. Assuming that a number of N of plaintexts, {xi∈Z2k
Three stages of a QAPHE over [n, k, C] are illustrated as follows, i.e., the encryption, the computation, and the decryption. In the stage of encryption, a message is going to be encoded by the public key. Every partition structure [n, k, C] makes the encrypted public key, Keypub, transform a k-qubit plaintext into an n-qubit ciphertext. In the partition structure [n, k, C]. The cost of encryption via a public key Keypub has an upper bound O(n2). The complexity of breaking the encryption via the public key Keypub has a lower bound O(2L) and an upper bound O(22n), where δ<L≤n−k, and δ is a postquantum security level.
A k-qubit encoded state |x is transformed to an n-qubit codeword |ψen by a given public key Keypub in a partition structure, where |ψen=ĒVQen|0⊗|x, x∈Z2k. The homomorphic computation of a k-qubit computation M|x with an action M is realized by the fault tolerant encode Uen, where M∈SU(2k).
Uen=PQen†V†
=(PW1P1)(P1†W1†1W1P1)(P1†P0)(P0†W1†2W1P0)(P0†W2) Eq. 1
In the above Eq. 1, =I2
The practical application of Uen is performed by the mixed composition of 2nd line of Eq. 1. Specifically, each of , P, P1 and P0 is a composition of spinor-to-spinor s-rotations. Initially, the correction operator =12 is written as a product of two unitary actions, 1 and 2. The operator is chosen to mix up the composition . By factorizing Qen†V† into two actions, W1 and W2, let the operator W1 be conducted as in the 2nd line of Eq. 1 and W2 stays. The two unitary actions P1 and P0 are inserted into the components of Eq. 1 to further mingle quantum gates. P0†W1†2W1P0 is a modified action of 2 by absorbing the spinor-to-spinor operation W1P0. Similarly, P1†W1†1W1P1 is a modified action of 1 by absorbing the spinor-to-spinor operation W1P1.
It is worthy to note that the computation of Uen admits optimized design according to the problem-dependent operation M.
The cost of encoding and the security of encryption will be shown as follows. In a partition structure [n, k, C], the cost of a homomorphic computation given by a public key has the upper bound O(np) for an integer p∈N and the complexity of breaking the encryption via the public key Keypub has a lower bound O(2L).
The decryption of an encoded computation Uen|ψ is accomplished by the operation of a private key. In the present inventive concept, a fault tolerant encode Uen=PQen†V†∈SU(2n) of a k-qubit arithmetic operation, M∈SU(2k), and an n-qubit state |ψen=ĒVQen|0⊗|x encoded by the public key Keypub are given. =I2
Notice that the scheme of public-key can be extended to the model of multi-party homomorphic encryption by appropriately increasing the numbers of data receivers, date providers, public keys, and computation providers.
Construction of Semi-Public-Key Scheme
The semi-public key scheme based on a QAPHE is illustrated in detail, which is almost the same as the public-key scheme except that a small resource of communication are allowed in the semi-public key scheme between the data receiver and data owner.
A k-qubit plaintext is encoded into a k-qubit cyphertext via the semi-public key Keys-pub. The cost of encoding a k-qubit state via the semi-public key Keys-pub is O(k). The encryption of a k-qubit plaintext through a semi-public key is more efficient than that of the same plaintext via a public key because it is not necessary to add a random error in the semi-public key scheme. The complexity of breaking the encryption by a semi-public key Keys-pub is identical to that of finding the encoding operation from the encrypted message of this operation. It allows a very high level of post-quantum security with the cryptosystem chosen for Qp, the semi-public-key scheme is more secure than the public-key scheme.
An encoding operator Qp∈SU(2k) generated by a k-qubit semi-public key Keys-pub. The homomorphic computation of a k-qubit evaluation conducted by an arithmetic operation M∈SU(2k) is realized by a fault tolerant encode Uen.
Uen=PMQp†
=(P0†W1†MW1P0)(P0†W2) Eq. 2
where Qp† is a product of two operators W1 and W2W1 and W2∈SU(2k) and can be written as Qp†=W1W2. The three operators , P and P0∈SU(2n) are used to mix up the encode and PW1P0=I2
The cost of a homomorphic computation by a semi-public key of k qubits has the upper bound O(kt) for an integer t∈N. An overhead of error-correction is no need in the semi-public-key scheme, which implies a computational cost lower than that in the public-key setting. The complexity of breaking a homomorphic computation by a semi-public key of k qubits is limited by v(k)=(ke/(r−d))r−d+k2d, d, e and r∈N.
An encoded operation Uen=PQp†∈SU(2n) of a k-qubit arithmetic operation M∈SU(2k) and n k-qubit state |ψen=Qp|x encoded by a semi-public key Keys-pub are given. The homomorphic computation Uen|ψed is decrypted to M|x by the private key Keypriv=†P†.
Similar to the public-key scheme, the concept of multi-party is applicable to the semi-public-key by increasing the numbers of data receivers, data providers, and computation providers, where a single semi-public key is adopted to produce multiple encoding operators for multiple users.
Example of the Public Key Encryption
The following illustrates that the feature “every partition structure [n, k, C] makes the encrypted public key, Keypub, transform a k-qubit plaintext into an n-qubit ciphertext. In the partition structure [n, k, C]” of the present inventive concept is feasible. Various types of designs of public-key encryptions are permitted in the framework of QAP according to distinct difficult problems. In the following, two designs of encryptions are demonstrated.
In a partition structure [n, k, C] with an encoding Qen, it allows a public key of encryption consisting of an operation VQen and an error generator Gen(
Keypub(1)=(VQen,Gen(
Supposed that a number of l-qubit message xi∈Z2l is N, an l0-qubit blank state |x0 is expressed into a k-qubit basis state by k=l0+lN, which is |x=|x1⊗|x2 . . . |xN⊗|x. The form of the encoded state is |ψen=ĒVQen|0⊗|x by writing the tensor product state |0⊗|x for the n−k qubit basic state |0.
The cost of encoding a plaintext x to the ciphertext |ψen equals |V∥Qen|+1, where |V|˜O(nk) and |Qen|˜O(n(n−k)) are the numbers of 1- and 2-qubit s-rotations, respectively, in V and Qen, and the number 1 is counted with the application of Ē.
The complexity of breaking the encryption by the public key Keypub(1) is the number of the steps to find the error Ē=(
In the known cryptosystem in code-based cryptography, the Muceliece cryptosystem, adopts a Goppa code [n, k] to corrects errors of weight
In this system, given a public key Ĝ∈Z2k×n, t, a message x∈Z2k is encrypted to a cyphertext c=xĜ+e by multiplying Ĝ and adding a randomly chosen error e of weight t. Through a generic attack called information-set decoding, the complexity of restoring x from c is approximately yn/log n, y=(1−k/n)1−k/n.
In a partition structure [n, k, C] with an encoding Qen, a public key of encryption is allowed to be composed of the operation VQen and an error generator Gen(R1, R2; J), where V∈SU(2n) is s spinor-to-spinor transformation. Gen(R1, R2; J) can generate an error Ē=Sγξ∈su(2n) randomly that is a solution of two sets of relations Rq=1,2={ξ·ζq,u
Keypub(2)=(VQen,Gen(R1,R2;J)) Eq. 4
The cost of encoding a plaintext x to the ciphertext |ψen equals |V∥Qen|+1, where |V|˜O(nk) and |Qen|˜O(n(n−k)) are the numbers of 1- and 2-qubit s-rotations, respectively, in V and Qen, and the number 1 is counted with the application of Ē. The complexity of the security of this encryption is the number of the steps to solve the group intersection problem, which has a lower bound O(2(J)/2) and an upper bound O(2J).
The present inventive concept provides a method of designing of multi-party system in QAP-based homomorphic encryption. This method is able to improve the security of public-key/semi-public-key system; under proper conditions, the common designs of multi-party HE, such as threshold HE or multi-key HE, may be included to be immediately applied to actual problems.
The foregoing descriptions of the detailed embodiments are only illustrated to disclose the features and functions of the present inventive concept and not restrictive of the scope of the present inventive concept. It should be understood to those in the art that all modifications and variations according to the spirit and principle in the disclosure of the present inventive concept should fall within the scope of the appended claims.
The present application claims the priority of U.S. Provisional Patent Application No. 63/288,541 filed on Dec. 11, 2021, the disclosure of which is hereby incorporated by reference herein in its entirety.
Number | Name | Date | Kind |
---|---|---|---|
10116437 | Krendelev | Oct 2018 | B1 |
20190036678 | Ahmed | Jan 2019 | A1 |
20200136797 | Yu | Apr 2020 | A1 |
20200151356 | Rohloff | May 2020 | A1 |
20210319098 | Pogorelik | Oct 2021 | A1 |
20230325529 | Sav | Oct 2023 | A1 |
Number | Date | Country | |
---|---|---|---|
20230188343 A1 | Jun 2023 | US |
Number | Date | Country | |
---|---|---|---|
63288541 | Dec 2021 | US |