WO2018084691A2 - Quaternion-based, efficient fully-homomorphic cryptosystem - Google Patents

Quaternion-based, efficient fully-homomorphic cryptosystem Download PDF

Info

Publication number
WO2018084691A2
WO2018084691A2 PCT/MA2018/050001 MA2018050001W WO2018084691A2 WO 2018084691 A2 WO2018084691 A2 WO 2018084691A2 MA 2018050001 W MA2018050001 W MA 2018050001W WO 2018084691 A2 WO2018084691 A2 WO 2018084691A2
Authority
WO
WIPO (PCT)
Prior art keywords
matrix
transform
cryptosystem
bittoquatern
lipschitz
Prior art date
Application number
PCT/MA2018/050001
Other languages
French (fr)
Other versions
WO2018084691A3 (en
Inventor
Dafir EL KETTANI MOHAMED
El Yahyaoui AHMED
Original Assignee
University Mohammed V In Rabat
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 University Mohammed V In Rabat filed Critical University Mohammed V In Rabat
Publication of WO2018084691A2 publication Critical patent/WO2018084691A2/en
Publication of WO2018084691A3 publication Critical patent/WO2018084691A3/en

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/008Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols involving homomorphic encryption

Definitions

  • the present invention relates to a fully homomorphous (EH) and probabilistic symmetric cryptosystem based on the use of quaternions, more particularly the use of the Lipschitz integer ring.
  • This cryptosystem uses a homomorphic transformation between the Z / 2Z ring (the clear space) and the Lipschitz integer ring (the space of the encrypted messages) to transform a binary number ⁇ 0,1 ⁇ into a quaternion of Lipschitz before encrypting it.
  • Homomorphic encryption is a great solution for this problem, its idea is very simple: do the calculation on encrypted data. If a cryptosystem allows a limited number of operations on the encrypted data, it is said to be partially homomorphic. If necessary a cryptosystem, to evaluate any treatment on the encrypted data, is said to be entirely homomorphic.
  • An EH cryptosystem is defined, in general, as being a quadruplet of algorithms (Gen, Enc, Dec, Eval), executing in polynomial time, such as:
  • Enc (m, pk) is an encryption algorithm, takes as input a clear message m and a so-called public key pk and outputs a cryptogram c.
  • Dec (c, sk) is a decryption algorithm, takes as input a cryptogram c and a so-called secret key sk and outputs the clear message.
  • Gentry After having withstood nearly three decades, the conjecture of Rivest et al was finally resolved in 2009 by Craig Gentry. This invention has been the subject of US20110110525. Indeed, Gentry gave a renaissance to homomorphic cryptography research by designing an EH encryption scheme considered semantically safe. Gentry's design can be summarized in three main steps: • Somewhat Homomorphic Encryption Scheme (SWHE): Gentry starts from a schema called SWHE or simply homomorphic which supports a limited number of homomorphic multiplication.
  • SWHE Homomorphic Encryption Scheme
  • Bootstrapping The bootstrap procedure invented by Gentry consists of the evaluation of the decryption circuit plus the NAND to obtain a so-called 'leveled' FHE scheme which makes it possible to evaluate any circuit with a depth of the circuit initially defined.
  • This first scheme is based on the addition of noise to clear to obtain rhomomorphic cryptosystem.
  • the major disadvantage of noisy schemes is the growth of noise after each manipulation of the cryptogram (addition and / or multiplication). Indeed, in order to keep the decryption capacity we must control and reduce the noise generated after each treatment. Noise control in this type of diagram increases their spatial and temporal complexity, which results in a slowness of calculations (especially during bootstrapping) and a greed for the storage space required for storing the results (noise amplification).
  • the MORE cryptosystem is a symmetric cryptosystem based on modular rarithmetic whose rhomomorphism derives from the usual matrix operations, its multiplication and its addition are matrix multiplication and addition.
  • the clear space is the ring Z / ⁇ Z (ring of the integer residuals modulo n) where n is a modulo chosen as in the famous RSA algorithm whereas the space of the cryptograms is the ring modular matrices M 2 (Z / nZ).
  • the secret key of this cryptosystem is an invertible matrix K 6 M 2 (Z / nZ) chosen randomly by the client and kept confidential with its inverse K -1 .
  • the MORE cryptosystem is not resistant to IND-CPA attacks (Indistinguishability under Chosen Plaintext Attack) and IND-KPA (Indistinguishability under Known Plaintext Attack). Indeed, if a third party of bad faith has access to only one clear and its cryptogram it will be able to decrypt any message encrypted thereafter without having found the secret key.
  • the cryptosystem MORE has been cryptanalyzed several times [http://eprint.iacr.org/2014/250.pdf, https://www.academia.edu/26297806/].
  • a noise-based construct that uses the bootstrap technique as described in the Gentry framework.
  • the advantage of this construction is its safety, since the schemas conceived so far (from this approach) are based on mathematical problems stemming from the theory of Euclidean networks, which nevertheless remains an immune and complex theory. While its major disadvantage lies in the slowness of its operations (especially the bootstrap) and the complexity of its algorithms.
  • a noiseless construction that uses raster operations as described in the MORE framework.
  • This construction has the advantage of being very simple, easy to implement and provides very fast operations for any processing on cryptograms.
  • the major disadvantage of this construction lies in the safety of the schemes designed so far.
  • the schemas based on the MORE framework have been attacked by IND-CPA and IND-KPA.
  • a second disadvantage resulting from the cryptosystem MORE is that it is just partially homomorphic even if its authors declare its complete homomorphism in the patent WO2014016795 A2. Indeed, this scheme is unable to handle any type of processing on cryptograms.
  • a first objective of the present invention is to improve the execution time of EH cryptosystems. For this reason we will adopt the MORE framework as a build basis instead of the Gentry framework which requires a very slow bootstrap step. Our second goal is to overcome the overwhelming obstruction of security in earlier cryptosystems. We offer a safer EH cryptosystem than its predecessors and resistant to IND-CPA and IND-KPA attacks. Finally we aim that our cryptosystem is completely homomorphic, that is to say it allows to execute any type of processing on messages encrypted antipodes MORE scheme. Therefore, the choice of a well adapted space of clear is essential to concretize the whole homomorphy of our cryptosystem.
  • Figure 1 represents, in general, the operation of a cryptosystem EH. It explains how the Eval algorithm can be used in an encrypted data context.
  • FIG. 2 shows the two encryption and decryption strings for our EH cryptosystem.
  • Figure 3 shows how we can use our cryptosystem in a computing delegation situation in a cloud.
  • a quaternion is a number in a generalized sense. Quaternions encompass real and complex numbers in a system of numbers where multiplication is no longer a commutative law.
  • a quaternion q is invertible if and only if its module is non-zero, and we have
  • H is a vector M-space of dimension 4, of which (l, i, j, Ji) constitutes a direct orthonormal basis.
  • q ⁇ l, q (o, u) with u vector of
  • a modular quaternion of Lipschitz q 6 is invertible if and only if its module is
  • the set of matrices M 2 (H (Z / nZ)) describes the matrices with four inputs (two rows and two columns) which are quaternions of H (Z / nZ). This set has a noncommutative ring structure.
  • the Hamiltonian product is defined as for all matrices with coefficients in a ring (not necessarily commutative). For example :
  • the octonionic product does not respect the order of the factors: on the main diagonal, there is switching of the second products and on the second diagonal there is switching of the first products.
  • the Schur complement method is a very powerful tool for calculating inverses of matrices in rings.
  • M ⁇ R nxn be a block matrix satisfying:
  • quaternToBit Re (q) [2].
  • bitToQuatern ( ⁇ ) + bitToQuatern (' ⁇ ) bitToQuatern (X ⁇ ORo J ).
  • bitToQuatern transform represents the bitToQuatern transform whose arrival set is H (Z / nZ) for an integer n that will be defined.
  • the secret key is (K, K -1 ).
  • patient data such as the biometric identifier, the social security number, the age and the state of health are personal data.
  • the use of these data for medical research and pharmacovigilance raises the question of confidentiality of this type of data, with the rules of ethics and respect for privacy.
  • our encryption scheme allows for processing on medical data and providing the requested results while preserving data privacy and patient privacy.
  • Private information retrieval In cryptography, private information retrieval (RIP) is a protocol that allows a user to retrieve an item from a database without revealing to the server which item has been retrieved. Homomorphic encryption makes it easy to perform such protocols. Our cryptosystem has the homomorphic property that allows it to easily perform the RIP protocol.
  • Multi-part calculation in multi-party computing systems, several parties are interested in computing a common function, without being able to disclose their private data.
  • the function to be calculated is publicly known, while the individual entries of the different users must remain unknown for the other parts of the system. This problem comes from the problem of computation with the encrypted data, from where the utility of the use of the homomorphic cryptography.
  • the asymmetric version of our cryptosystem allows to implement multiparty calculations.
  • the electronic voting is a special case of delegation of calculation to a third party able to calculate the result of the elections without disclosing the identities of the different candidates.
  • homomorphic encryption allows the electoral authorities to count the votes and present the final results without going through the process of deciphering the votes and counting them afterwards.
  • voters are just allowed to increment a counted count of 1 (indicating a vote for the candidate) where 0 (indicating the case of non-voting).
  • voters modify the encrypted scores by adding an £-bit vector, where exactly one entry is 1 and the rest are all 0. And they are unable to change the counters in any other way.
  • the asymmetric version of our cryptosystem allows to implement a secure electronic voting system.

Abstract

The present invention relates to an efficient fully-homomorphic cryptosystem based on a new homomorphic and probabilistic transform between ring ℤ⁄2ℤ (ring of the residual integers modulo 2) and the modular Lipschitz integer ring. The cryptosystem of the invention can process clear messages in the form of input bits and supply ciphertexts in the form of Lipschitz quaternion matrices modulo a large even natural number η in a non-deterministic manner. The security of the present cryptosystem is based on the difficulty of solving a system of multivariate polynomial equations in a non-commutative ring. The cryptosystem can be used to further reduce multiplication computation time in fully-homomorphic encryption algorithms, since it allows the size of a secret key to be minimised and the expansion of ciphertexts to be reduced.

Description

Titre : UN EFFICACE CRYPTOSYSTEME ENTIEREMENT HOMOMORPHE A BASE DES  Title: AN EFFECTIVE CRYPTOSYSTEM ENTIRELY HOMOLOGICAL BASED ON
QUATERNIONS. Quaternions.
Description ; Description;
Domaine technique Technical area
La présente invention concerne un cryptosystème symétrique entièrement homomorphe (EH) et probabiliste basé sur l'utilisation des quaternions, plus particulièrement l'utilisation de l'anneau des entiers de Lipschitz. Ce cryptosystème utilise une transformation homomorphe entre l'anneau Z/2Z (L'espace des clairs) et l'anneau des entiers de Lipschitz (l'espace des messages chiffrés) pour transformer un nombre binaire {0,1} en un quaternion de Lipschitz avant de le chiffrer. The present invention relates to a fully homomorphous (EH) and probabilistic symmetric cryptosystem based on the use of quaternions, more particularly the use of the Lipschitz integer ring. This cryptosystem uses a homomorphic transformation between the Z / 2Z ring (the clear space) and the Lipschitz integer ring (the space of the encrypted messages) to transform a binary number {0,1} into a quaternion of Lipschitz before encrypting it.
Etat antérieur Previous state
Après la conjecture de Rivest et al [R. Rivest, L. Adleman, and M. Dertouzos. "on data banks and privacy homomorphisms", Foundations of Secure Computation, pp 169-180, 1978], la conception d'un schéma de cryptage EH restait l'ambition de chaque cryptologue. L'apparition du cloud Computing dans la dernière décennie a excité les efforts des chercheurs pour réaliser ce rêve. En effet, le cloud permet de mutualiser les structures de conservation et de traitement des données. Le traitement des données est considéré comme une force majeure du cloud car ce dernier dispose de puissances de calcul illimitées. Pour bénéficier de ces privilèges on arrive souvent à déléguer aux serveurs du cloud d'effectuer des calculs complexes sur des données privées. Avec le cryptage usuel, le fournisseur du cloud doit décrypter les données avant de faire les calculs demandés. Cependant, l'un des inconvénients de ceci est la préservation de la confidentialité entre le client et le fournisseur. Le cryptage homomorphe est une solution géniale pour ce problème, son idée est très simple : faire le calcul sur des données chiffrées. Si un cryptosystème permet un nombre limité d'opérations sur les données chiffrées, il est dit partiellement homomorphe. Le cas échéant un cryptosystème, permettant d'évaluer n'importe quel traitement sur les données chiffrées, est dit entièrement homomorphe. After the conjecture of Rivest et al [R. Rivest, L. Adleman, and M. Dertouzos. "On data banks and privacy homomorphisms," Foundations of Secure Computation, pp 169-180, 1978], the design of an EH encryption scheme remained the ambition of each cryptologist. The emergence of cloud computing in the past decade has excited researchers' efforts to realize this dream. Indeed, the cloud makes it possible to pool the structures of conservation and data processing. Data processing is considered a major force of the cloud because it has unlimited computing power. To take advantage of these privileges, we often delegate to cloud servers to perform complex calculations on private data. With standard encryption, the cloud provider must decrypt the data before doing the requested calculations. However, one of the disadvantages of this is the preservation of confidentiality between the customer and the provider. Homomorphic encryption is a great solution for this problem, its idea is very simple: do the calculation on encrypted data. If a cryptosystem allows a limited number of operations on the encrypted data, it is said to be partially homomorphic. If necessary a cryptosystem, to evaluate any treatment on the encrypted data, is said to be entirely homomorphic.
Un cryptosystème EH est définit, en général, comme étant un quadruplet d'algorithmes (Gen, Enc, Dec, Eval), s'exécutant en temps polynomial, tels que : An EH cryptosystem is defined, in general, as being a quadruplet of algorithms (Gen, Enc, Dec, Eval), executing in polynomial time, such as:
• Gen(λ): est un algorithme de génération de clés, prend en entrée un paramètre de sécurité λ et donne en sortie un pair de clés (sk, pk). • Gen (λ): is a key generation algorithm, takes a security parameter λ as input and outputs a key pair (sk, pk).
• Enc(m, pk): est un algorithme de cryptage, prend en entrée un message clair m et une clé dite publique pk et donne en sortie un cryptogramme c.  • Enc (m, pk): is an encryption algorithm, takes as input a clear message m and a so-called public key pk and outputs a cryptogram c.
• Dec(c, sk): est un algorithme de décryptage, prend en entrée un cryptogramme c et une clé dite secrète sk et donne en sortie le message clair.  • Dec (c, sk): is a decryption algorithm, takes as input a cryptogram c and a so-called secret key sk and outputs the clear message.
• Eval(C, C1, .. , cn): est un algorithme d'évaluation, prend en entrée un circuit C et des cryptogrammes cx, .. , cn et vérifie Dec(Eval(C, cx, .. , cn), sk) = C(m1, ... , mn). • Eval (C, C 1 , .., c n ): is an evaluation algorithm, takes as input a circuit C and cryptograms c x , .., c n and verifies Dec (Eval (C, c x , .., c n), sk) = C (m1, ..., m n).
Après avoir résisté à peu près trois décennies, la conjecture de Rivest et al a été enfin résolue en 2009 par Craig Gentry. Cette invention a fait l'objet du brevet US20110110525. En effet, Gentry a donné une renaissance aux recherches de la cryptographie homomorphe par la conception d'un schéma de cryptage EH considéré sémantiquement sûr. La conception de Gentry peut être récapitulée en trois grandes étapes principales : • Somewhat Homomorphic Encryption Scheme (SWHE) : Gentry part d'un schéma dit SWHE ou simplement homomorphe qui supporte un nombre limité de multiplication homomorphe.After having withstood nearly three decades, the conjecture of Rivest et al was finally resolved in 2009 by Craig Gentry. This invention has been the subject of US20110110525. Indeed, Gentry gave a renaissance to homomorphic cryptography research by designing an EH encryption scheme considered semantically safe. Gentry's design can be summarized in three main steps: • Somewhat Homomorphic Encryption Scheme (SWHE): Gentry starts from a schema called SWHE or simply homomorphic which supports a limited number of homomorphic multiplication.
• Squashing du circuit de décryptage : Gentry réduit la complexité du circuit de déchiffrement en publiant un ensemble de vecteurs dont la somme d'une partie d'entre eux est égale à la clé secrète. Ce schéma dit 'squashé' peut évaluer, en plus de ses capacités SWHE, une porte NAND. • Squashing of the decryption circuit: Gentry reduces the complexity of the decryption circuit by publishing a set of vectors whose sum of a part of them is equal to the secret key. This 'squashed' pattern can evaluate, in addition to its SWHE capabilities, a NAND gate.
• Bootstrapping : la procédure du bootstrap inventée par Gentry consiste en l'avaluation du circuit de décryptage plus le NAND pour obtenir un schéma dit 'leveled' FHE qui permet d'évaluer n'importe quel circuit avec une profondeur du circuit définit au départ.  • Bootstrapping: The bootstrap procedure invented by Gentry consists of the evaluation of the decryption circuit plus the NAND to obtain a so-called 'leveled' FHE scheme which makes it possible to evaluate any circuit with a depth of the circuit initially defined.
Ce premier schéma est basé sur l'ajout de bruit au clair pour obtenir rhomomorphie du cryptosystème. L'inconvénient majeur des schémas bruités est la croissance du bruit après chaque manipulation du cryptogramme (addition et/ou multiplication). En effet, afin de garder la capacité de décryptage on doit contrôler et réduire le bruit généré après chaque traitement. Le contrôle du bruit dans ce type schémas augmente leur complexité spatiale et temporelle ce qui se traduit par une lenteur des calculs (surtout pendant le bootstrapping) et une gourmandise de l'espace mémoire demandé pour le stockage des résultats (amplification de bruit). Une chose qui influence la pratique et l'application du chiffrement EH à la vie quotidienne. Toutes ces causes ont encouragé les chercheurs de trouver d'autres frameworks de conception de schémas de cryptage EH afin de rendre applicable le chiffrement EH.  This first scheme is based on the addition of noise to clear to obtain rhomomorphic cryptosystem. The major disadvantage of noisy schemes is the growth of noise after each manipulation of the cryptogram (addition and / or multiplication). Indeed, in order to keep the decryption capacity we must control and reduce the noise generated after each treatment. Noise control in this type of diagram increases their spatial and temporal complexity, which results in a slowness of calculations (especially during bootstrapping) and a greed for the storage space required for storing the results (noise amplification). One thing that influences the practice and application of EH encryption to everyday life. All of these causes have encouraged researchers to find other EH encryption scheme frameworks to make EH encryption applicable.
Parmi les tentatives les plus éminentes de simplification des schémas de cryptage EH, on trouve le cryptosystème MORE. Ce dernier a fait l'objet du brevet WO2014016795 A2. C'est un cryptosystème symétrique basé sur rarithmétique modulaire dont rhomomorphie découle des opérations matricielles usuelles, sa multiplication et son addition sont la multiplication et l'addition matricielles. Dans le schéma de cryptage MORE, l'espace des clairs est l'anneau Z/ηZ (anneau des entiers résidus modulo n) où n est un modulo choisi comme dans le célèbre algorithme RSA alors que l'espace des cryptogrammes est l'anneau des matrices modulaires M2(Z/nZ). La clé secrète de ce cryptosystème est une matrice inversible K 6 M2(Z/nZ) choisie aléatoirement par le client et conservée confidentielle avec son inverse K-1. Among the most prominent attempts to simplify EH encryption schemes is the MORE cryptosystem. The latter was the subject of patent WO2014016795 A2. It is a symmetric cryptosystem based on modular rarithmetic whose rhomomorphism derives from the usual matrix operations, its multiplication and its addition are matrix multiplication and addition. In the MORE encryption scheme, the clear space is the ring Z / ηZ (ring of the integer residuals modulo n) where n is a modulo chosen as in the famous RSA algorithm whereas the space of the cryptograms is the ring modular matrices M 2 (Z / nZ). The secret key of this cryptosystem is an invertible matrix K 6 M 2 (Z / nZ) chosen randomly by the client and kept confidential with its inverse K -1 .
Toutefois, le cryptosystème MORE ne résiste pas aux attaques de types IND-CPA(Indistinguishability under Chosen Plaintext Attack) et IND-KPA(Indistinguishability under Known Plaintext Attack). En effet, si un tiers de mauvaise foi ait accès à un seul clair et à son cryptogramme il pourra déchiffrer tout message chiffré par la suite sans avoir trouvé la clé secrète. Le cryptosystème MORE a été cryptanalysé plusieurs fois [http://eprint.iacr.org/2014/250.pdf, https://www.academia.edu/26297806/]. However, the MORE cryptosystem is not resistant to IND-CPA attacks (Indistinguishability under Chosen Plaintext Attack) and IND-KPA (Indistinguishability under Known Plaintext Attack). Indeed, if a third party of bad faith has access to only one clear and its cryptogram it will be able to decrypt any message encrypted thereafter without having found the secret key. The cryptosystem MORE has been cryptanalyzed several times [http://eprint.iacr.org/2014/250.pdf, https://www.academia.edu/26297806/].
Une seconde tentative, pour pallier les failles de sécurité du schéma MORE et construire un cryptosystème EH, est récemment due à Wang et Li [http://eprint.iacr.org/2015/641.pdf]. Les deux auteurs ont gardé presque la même conception de MORE sauf qu'ils ont proposé de changer l'anneau Έ/ηΈ par un anneau R non commutatif et ils ont utilisé des matrices carrées d'ordre 3 au lieu des matrices d'ordre 2. Malgré l'utilisation d'un anneau non commutatif R, les messages clairs restent toujours des nombres qui commutent avec les éléments de R. A second attempt, to overcome the security vulnerabilities of the MORE scheme and build an EH cryptosystem, is recently due to Wang and Li [http://eprint.iacr.org/2015/641.pdf]. The two authors kept almost the same conception of MORE except that they proposed to change the ring Έ / ηΈ by a non-commutative ring R and they used square matrices of order 3 instead of matrices of order 2 Despite the use of a non-commutative ring R, the clear messages always remain numbers that commute with the elements of R.
Par conséquent une attaque du schéma de Wang et Li est donné par Kristian Gjosteen et Martin Strand dans [http://eprint.iacr.org/2016/105.pdf]. En effet, d'après ces auteurs: pour attaquer le cryptosystème de Wang-Li, nous avons seulement besoin de distinguer les cryptages de 0 à partir d'un cryptage aléatoire. Les deux auteurs ont observé que la diagonale de la matrice cryptogramme détermine complètement l'inversibilité de ladite matrice, car un cryptogramme de "0" ne peut être inversible. Donc, avec une grande probabilité, on peut distinguer les éléments inversibles de l'anneau R des éléments non- inversibles. Si l'anneau R est à division, alors il n'y a pas d'autres éléments non-inversibles que "0". Enfin, en utilisant une variante de la décomposition LU adaptée aux anneaux non commutatifs on peut calculer efficacement la matrice clé secrète de ralgorithme. Therefore an attack of the scheme of Wang and Li is given by Kristian Gjosteen and Martin Strand in [http://eprint.iacr.org/2016/105.pdf]. Indeed, according to these authors: to attack the cryptosystem of Wang-Li, we only need to distinguish the cryptography of 0 from a random encryption. The two authors have observed that the diagonal of the cryptogram matrix completely determines the invertibility of said matrix, since a cryptogram of "0" can not be invertible. Thus, with a high probability, the invertible elements of the ring R can be distinguished from the non-invertible elements. If the ring R is divisional, then there are no other non-invertible elements than "0". Finally, by using a variant of the LU decomposition adapted to the non commutative rings, the secret key matrix of the algorithm can be calculated efficiently.
D'après ce qui est venu avant, on peut signaler qu'il existe deux types de construction de cryptosystèmes EH :  From what has come before, it can be pointed out that there are two types of construction of EH cryptosystems:
Une construction à base de bruit qui utilise la technique du bootstrap comme elle est décrite dans le framework de Gentry. L'avantage de cette construction est sa sûreté, vu que les schémas conçu jusqu'à présent (à partir de cette démarche) sont basés sur des problèmes mathématiques issus de la théorie des réseaux euclidiens, qui demeure quand même une théorie immune et complexe. Alors que son inconvénient majeur réside dans la lenteur de ses opérations (surtout le bootstrap) et la complexité de ses algorithmes.  A noise-based construct that uses the bootstrap technique as described in the Gentry framework. The advantage of this construction is its safety, since the schemas conceived so far (from this approach) are based on mathematical problems stemming from the theory of Euclidean networks, which nevertheless remains an immune and complex theory. While its major disadvantage lies in the slowness of its operations (especially the bootstrap) and the complexity of its algorithms.
Une construction sans bruit qui utilise les opérations matricielles comme il est décrit dans le framework MORE. Cette construction a l'avantage d'être très simple, facile à implémenter et fournit des opérations très rapides pour tout traitement sur les cryptogrammes. L'inconvénient capital de cette construction réside dans la sûreté des schémas conçus jusqu'à présent. Les schémas conçus à base du framework MORE ont fait l'objet des attaques de type IND-CPA et IND-KPA. Un second désavantage issu du cryptosystème MORE c'est qu'il est juste partiellement homomorphe même si ses auteurs déclarent son entière homomorphie dans le brevet WO2014016795 A2. En effet, ce schéma est incapable de manipuler tout type de traitement sur les cryptogrammes. Prenons à titre d'exemple le cryptogramme C = MORE(m) du message clair m = N— 1, où N est le modulo utilisé dans ce cryptosystème, si on calcule C = C2 et on décrypte le résultat on obtient m' = 1≠ m2 = (N— l)2, car les opérations sont effectuées modulo N. A noiseless construction that uses raster operations as described in the MORE framework. This construction has the advantage of being very simple, easy to implement and provides very fast operations for any processing on cryptograms. The major disadvantage of this construction lies in the safety of the schemes designed so far. The schemas based on the MORE framework have been attacked by IND-CPA and IND-KPA. A second disadvantage resulting from the cryptosystem MORE is that it is just partially homomorphic even if its authors declare its complete homomorphism in the patent WO2014016795 A2. Indeed, this scheme is unable to handle any type of processing on cryptograms. Let us take as an example the cryptogram C = MORE (m) of the clear message m = N-1, where N is the modulo used in this cryptosystem, if we calculate C = C 2 and decrypt the result we obtain m '= 1 ≠ m 2 = (N-1) 2 , because the operations are carried out modulo N.
Un premier objectif de la présente invention est d'améliorer le temps d'exécution des cryptosystèmes EH. Pour cette raison nous allons adopter le framework MORE comme base de construction au lieu du framework de Gentry qui exige une étape de bootstrap très lente. Notre second objectif est de franchir l'entrave saisissante de la sécurité dans les cryptosystèmes antérieurs. Nous proposons un cryptosystème EH plus sûr que ses précédents et résistant aux attaques IND-CPA et IND-KPA. Finalement nous visons que notre cryptosystème soit entièrement homomorphe, c'est-à-dire il permet d'exécuter tout type de traitement sur les messages chiffrés aux antipodes du schéma MORE. Par conséquent, le choix d'un espace de clairs bien adapté est primordial pour concrétiser l'entière homomorphie de notre cryptosystème. Nous envisageons utiliser l'espace binaire, sanctionné par les deux opérations XOR et AND, (c'est l'anneauZ/2Z ) comme espace de clairs pour notre schéma de cryptage. En plus de çà, nous utilisons une transformée homomorphe qui convertit un bit en un quaternion de Lipschitz. Cela permet de randomiser les bits afin de garantir que la diagonale ne donne aucune information utile sur le clair (éviter l'attaque du cryptosystème de Li-Wang).  A first objective of the present invention is to improve the execution time of EH cryptosystems. For this reason we will adopt the MORE framework as a build basis instead of the Gentry framework which requires a very slow bootstrap step. Our second goal is to overcome the overwhelming obstruction of security in earlier cryptosystems. We offer a safer EH cryptosystem than its predecessors and resistant to IND-CPA and IND-KPA attacks. Finally we aim that our cryptosystem is completely homomorphic, that is to say it allows to execute any type of processing on messages encrypted antipodes MORE scheme. Therefore, the choice of a well adapted space of clear is essential to concretize the whole homomorphy of our cryptosystem. We plan to use the binary space, sanctioned by the two operations XOR and AND, (this is the ringZ / 2Z) as clear space for our encryption scheme. In addition, we use a homomorphic transform that converts a bit into a Lipschitz quaternion. This allows the bits to be randomized to ensure that the diagonal does not give any useful information about the clear (avoid attacking the Li-Wang cryptosystem).
Notre cryptosystème résiste aux attaques IND-CPA et IND-KPA par la non-commutativité de l'anneau des quaternions de Lipschitz et par l'utilisation d'un espace de clair plus réduit (l'anneau Z/2Z). Il hérite son homomorphie d'une part des opérations matricielles et d'autre part d'une nouvelle transformation homomorphe, entre l'anneau Z/2Z et l'anneau des entiers de Lipschitz, que nous avons inventée. Son entière homomorphie est obtenue par la manipulation de ces entiers de Lipschitz à l'aide d'un modulo pair (n = 2. p. q). Description des figures Our cryptosystem is resistant to IND-CPA and IND-KPA attacks by the non-commutative ring of Lipschitz quaternions and the use of a smaller clear space (the Z / 2Z ring). He inherits his homomorphy on the one hand from matrix operations and on the other hand from a new homomorphic transformation, between the Z / 2Z ring and the ring of Lipschitz integers, which we invented. Its entire homomorphism is obtained by manipulating these Lipschitz integers using an even modulo (n = 2. p. Description of figures
La figure 1 représente, en général, le fonctionnement d'un cryptosystème EH. Elle explique comment on peut utiliser l'algorithme Eval dans un contexte de calcul à données chiffrées.  Figure 1 represents, in general, the operation of a cryptosystem EH. It explains how the Eval algorithm can be used in an encrypted data context.
La figure 2 représente les deux chaînes de cryptage et de décryptage pour notre cryptosystème EH. Figure 2 shows the two encryption and decryption strings for our EH cryptosystem.
La figure 3 représente comment on peut utiliser notre cryptosystème dans une situation de délégation de calcul chez un cloud. Figure 3 shows how we can use our cryptosystem in a computing delegation situation in a cloud.
Le corps des quaternionsH  The body of quaternionsH
Un quaternion est un nombre dans un sens généralisé. Les quaternions englobent les nombres réels et complexes dans un système de nombres où la multiplication n'est plus une loi commutative.  A quaternion is a number in a generalized sense. Quaternions encompass real and complex numbers in a system of numbers where multiplication is no longer a commutative law.
Les quaternions furent introduits par le mathématicien irlandais William Rowan Hamilton en 1843. Ils trouvent aujourd'hui des applications en mathématiques, en physique, en informatique et en sciences de l'ingénieur. Quaternions were introduced by the Irish mathematician William Rowan Hamilton in 1843. They now find applications in mathematics, physics, computer science and engineering.
Mathématiquement, l'ensemble des quaternions H est une algèbre associative non-commutative sur le corps des nombres réelsH engendrée par trois éléments i,j et h satisfaisant les relations: i2 = j2 = k2 = i. j. k =— 1. Concrètement, tout quaternion q s'écrit de manière unique sous la forme : q = a + bi + cj + dJi où a, b, c et d sont des nombres réels. Mathematically, the set of quaternions H is a noncommutative associative algebra on the real number field H generated by three elements i, j and h satisfying the relations: i 2 = j 2 = k 2 = ij k = -1. all quaternion q is uniquely written as: q = a + bi + cj + dJi where a, b, c and d are real numbers.
Les opérations d'addition et de multiplication par un scalaire réel se font termes à termes, alors que La multiplication entre deux quaternions se fait termes à termes en respectant la non-commutativité et les
Figure imgf000006_0004
The operations of addition and multiplication by a real scalar are terms in terms, whereas the multiplication between two quaternions is term-terms respecting the non-commutativity and the
Figure imgf000006_0004
Le quaternion  The quaternion
module de q. q module.
Figure imgf000006_0001
Figure imgf000006_0001
bi + cj + dk.  bi + cj + dk.
Un quaternion q est inversible si et seulement si son module est non nulle, et on a A quaternion q is invertible if and only if its module is non-zero, and we have
Figure imgf000006_0002
Figure imgf000006_0002
Forme réduite d'un quaternion :  Reduced form of a quaternion:
On peut représenter un quaternion d'une manière plus économique, ce qui allège considérablement les calculs et met en valeur des résultats intéressants. En effet, il est aisé de voir que H est un M-espace vectoriel de dimension 4, dont (l,i,j ,Ji) constitue une base orthonormale directe. On peut donc séparer la composante réelle des composantes pures, et on a pour q∈l, q = (o, u) avec u vecteur de  We can represent a quaternion in a more economical way, which considerably simplifies the calculations and highlights interesting results. Indeed, it is easy to see that H is a vector M-space of dimension 4, of which (l, i, j, Ji) constitutes a direct orthonormal basis. We can thus separate the real component from the pure components, and we have for q∈l, q = (o, u) with u vector of
Figure imgf000006_0003
Anneau des entiers de Lipschitz
Figure imgf000006_0003
Ring of Lipschitz integers
L'ensemble des quaternions définit comme suit : = {q = a + bi + cj + dé/a, b, c, d 6 Z} possède une structure d'anneau appelé anneau des entiers de Lipschitz. Η(Ζ) est trivialement non- commutatif.  The set of quaternions defines as follows: = {q = a + bi + cj + dd / a, b, c, d 6 Z} has a ring structure called a ring of Lipschitz integers. Η (Ζ) is trivially non commutative.
Pour n 6 N*, l'ensemble des quaternions:
Figure imgf000007_0007
= {q = a + bi + cj + dé/a, b, c, d e Z/nZ} possède une structure d'anneau non-commutatif.
For n 6 N * , the set of quaternions:
Figure imgf000007_0007
= {q = a + bi + cj + d / a, b, c, of Z / nZ} has a non-commutative ring structure.
Un quaternion modulaire de Lipschitz q 6 est inversible si et seulement si son module est
Figure imgf000007_0006
A modular quaternion of Lipschitz q 6 is invertible if and only if its module is
Figure imgf000007_0006
premier avec n, c'est-à-dire \q\2 A n = 1. first with n, that is to say \ q \ 2 A n = 1.
Matrices quaternioniques de M2(H(Z/nZ)) : Quaternionic matrices of M 2 (H (Z / nZ)):
L'ensemble des matrices M2 (H (Z/nZ)) décrit les matrices à quatre entrées (deux lignes et deux colonnes) qui sont des quaternions de H(Z/nZ). Cet ensemble possède une structure d'anneau non commutatif. The set of matrices M 2 (H (Z / nZ)) describes the matrices with four inputs (two rows and two columns) which are quaternions of H (Z / nZ). This set has a noncommutative ring structure.
Il existe deux manières de multiplier les matrices quaternioniques : le produit hamiltonien, qui respecte l'ordre des facteurs, et le produit octonionique, qui ne le respecte pas.  There are two ways to multiply quaternionic matrices: the hamiltonian product, which respects the order of the factors, and the octonionic product, which does not respect it.
• Le produit hamiltonien est défini comme pour toutes les matrices à coefficients dans un anneau (non nécessairement commutatif). Par exemple :
Figure imgf000007_0001
• The Hamiltonian product is defined as for all matrices with coefficients in a ring (not necessarily commutative). For example :
Figure imgf000007_0001
• Le produit octonionique ne respecte pas l'ordre des facteurs : sur la diagonale principale, il y a commutation des deuxièmes produits et sur la deuxième diagonale il y a commutation des premiers produits.
Figure imgf000007_0002
• The octonionic product does not respect the order of the factors: on the main diagonal, there is switching of the second products and on the second diagonal there is switching of the first products.
Figure imgf000007_0002
Dans notre rapport nous allons adopter le produit hamiltonien comme opération de multiplication des matrices quaternioniques.  In our report we will adopt the Hamiltonian product as a multiplication operation of quaternionic matrices.
Complément de Schur et inversibilité des matrices quaternioniques  Schur complementation and invertibility of quaternionic matrices
Soit JZ un anneau associatif quelconque, une matrice M∈ R nxn est dite inversible si
Figure imgf000007_0008
tel que MN = NM = In où N est nécessairement unique.
Let JZ be any associative ring, a matrix M∈ R nxn is said to be invertible if
Figure imgf000007_0008
such that MN = NM = I n where N is necessarily unique.
La méthode du complément de Schur est un outil très puissant pour le calcul des inverses des matrices dans des anneaux. Soit M∈ R nxn une matrice par bloc vérifiant :The Schur complement method is a very powerful tool for calculating inverses of matrices in rings. Let M∈ R nxn be a block matrix satisfying:
Figure imgf000007_0004
Figure imgf000007_0004
Supposant A est inversible, on a : Supposing A is invertible, we have:
le complément de Schur de A dans
Figure imgf000007_0003
M.
the complement of Schur of A in
Figure imgf000007_0003
Mr.
L'inversibilité de A assure que la matrice M est inversible si est seulement si ^4S l'est. L'inverse de M
Figure imgf000007_0005
Pour une matrice quaternionique où le quaternion a est
Figure imgf000008_0002
The invertibility of A ensures that the matrix M is invertible if only if ^ 4 S is. The inverse of M
Figure imgf000007_0005
For a quaternionic matrix where the quaternion is
Figure imgf000008_0002
inversible ainsi que son complément de Schur as = d— ca~xb on a M est inversible et:
Figure imgf000008_0001
invertible as well as its complement of Schur has s = d- ca ~ x b we have M is invertible and:
Figure imgf000008_0001
Donc pour générer aléatoirement une matrice quaternionique inversible, il suffit de : (***) So to randomly generate an invertible quaternionic matrix, just: (***)
• Choisir aléatoirement trois quaternions a, b et c dont a est inversible. • Randomly choose three quaternions a, b and c of which a is invertible.
• Sélectionner aléatoirement le quatrième quaternion d de telle sorte que le complément de Schur as = d— ca~xb de a dans M soit inversible. • Randomly select the fourth quaternion d so that the Schur complement s = d- ca ~ x b of a in M is invertible.
Description de la transformée et du cryptosystème  Description of the transform and the cryptosystem
Transformée homomorphe entre (*) Homomorphic transform between (*)
Figure imgf000008_0004
Figure imgf000008_0004
Tout bit
Figure imgf000008_0003
peut être transformé en un quaternion de Lipschitz selon une transformée homomorphe dont les opérations sur les quaternions conservent celles sur les bits. On peut donner cette transformée comme suit :
All bit
Figure imgf000008_0003
can be transformed into a quaternion of Lipschitz according to a homomorphous transform whose operations on the quaternions preserve those on the bits. We can give this transform as follows:
bitToQuatern: σ 6 ΊZ/2Z <→ bitToQuatern ()σ = m + 2U + pj + qh 6 H(Z) tels que m, t,p, q sont des entiers relatifs choisis aléatoirement respectant les deux conditions: m≡ σ[2] et p≡ q[2]. La transformée inverse qui sera nommée quaternToBit est donnée par : quaternToBit(q) = Re(q)[2]. bitToQuatern: σ 6 ΊZ / 2Z <→ bitToQuatern () σ = m + 2U + pj + qh 6 H (Z) such that m, t, p, q are randomly selected relative integers satisfying the two conditions: m≡ σ [ 2] and p≡ q [2]. The inverse transform that will be named quaternToBit is given by: quaternToBit (q) = Re (q) [2].
On peut vérifier facilement rhomomorphie de la transformée bitToQuatern: We can easily check rhomomorphism of the bitToQuatern transform:
• pour l'addition on a bien : bitToQuatern ( σ) + bitToQuatern ('σ) = bitToQuatern (XσORoJ).• for addition we have: bitToQuatern (σ) + bitToQuatern ('σ) = bitToQuatern (XσORo J ).
• Pour la multiplication, en passant à la notation réduite des quaternions, on a bitToQuatern ()σ * bitToQuatern ( 'σ) = (m, u) * (m', v) = (mm'— u. v, mv + m'u + u A v),donc on peut vérifier facilement que mm'— u. v≡ (aANDa')[2] et que mv + m'u + u A v a bien la forme ( 2L, P, Q) tel que P≡ Q[2]. Alors bitToQuatern ()σ * bitToQuatern ( σ') = bitToQuatern(aANDa').• For multiplication, passing to the reduced notation of quaternions, we have bitToQuatern () σ * bitToQuatern ('σ) = (m, u) * (m', v) = (mm'-u, v, mv + u + u A v), so we can easily check that mm'- u. v≡ (aANDa ') [2] and that mv + m'u + u A v has the form (2L, P, Q) such that P≡ Q [2]. Then bitToQuatern () σ * bitToQuatern (σ ') = bitToQuatern (aANDa').
Le fait que la réduction modulo un nombre pair d'un entier relatif conserve sa parité (c'est-à-dire
Figure imgf000008_0005
, permet de changer l'ensemble d'arrivée H(Z) de la transformée bitToQuatern par l'ensemble H(Z/2nZ) en conservant son homomorphie et en obtenant les mêmes propriétés. Dans le reste de ce rapport la transformée bitToQuatern représente la transformée bitToQuatern dont l'ensemble d'arrivée est H(Z/nZ) pour un entier n qui sera définit.
The fact that the reduction modulo an even number of a relative integer retains its parity (that is,
Figure imgf000008_0005
, allows to change the set of arrival H (Z) of the bitToQuatern transform by the set H (Z / 2nZ) while preserving its homomorphism and obtaining the same properties. In the rest of this report the bitToQuatern transform represents the bitToQuatern transform whose arrival set is H (Z / nZ) for an integer n that will be defined.
Remarque : toute permutation σ du triplet (2-6, p, q) engendre une transformée bitToQuaterna ayant les même propriétés que la transformée bitToQuatern. La transformée inverse pour bitToQuaterna reste inchangeable. Note: Any permutation σ of the triplet (2-6, p, q) generates a transformed bitToQuatern who has the same properties as the transformed bitToQuatern. The inverse transform for bitToQuatern has remained unchangeable.
Cryptosystème entièrement homomorphe et efficace  Cryptosystem completely homomorphic and effective
On se place dans un contexte où Bob veut stocker des données confidentielles dans un cloud très puissant mais non confiant. Bob aura besoin plus tard de faire des traitements complexes, sur ses données, dont il ne dispose pas des puissances de calcul nécessaires pour les effectuer. A ce niveau il pense, à priori, au chiffrement de ses données sensibles pour éviter toute action frauduleuse. Mais le chiffrement usuel, qu'il connaisse, ne permet pas au cloud de traiter ses requêtes de calcul sans avoir déchiffré les données stockées au préalable, ce qui met en cause leur confidentialité. Bob demande s'il existe un type de chiffrement pratique et efficace permettant de traiter ses données sans les révéler au cloud. La réponse à la demande de Bob est favorable, en effet depuis 2009 il existe des cryptosystèmes dits entièrement homomorphes, dont le principe est assez simple : faire les calculs sur les données chiffrées sans penser à aucun préalable déchiffrement. We place ourselves in a context where Bob wants to store confidential data in a very powerful cloud but not confident. Bob will later need to do complex processing on his data, which he does not have the computing power to perform them. At this level he thinks, a priori, the encryption of its sensitive data to avoid any fraudulent action. But the usual encryption, which he knows, does not allow the cloud to process its computation requests without having decrypted the previously stored data, which puts into question their confidentiality. Bob asks if he There is a convenient and efficient type of encryption that allows you to process your data without revealing it to the cloud. The answer to the request of Bob is favorable, indeed since 2009 there are cryptosystems called entirely homomorphic, whose principle is quite simple: to make the calculations on the encrypted data without thinking of any preliminary deciphering.
Pour être entièrement homomorphe, il suffit qu'un cryptosystème permette de réaliser les deux opérations d'addition et de multiplication une multitude de fois sur les cryptogrammes. Depuis leur première apparition en 2009, les cryptosystèmes EH permettent de réaliser facilement les additions alors que la multiplication reste très coûteuse en terme du temps de calcul et épuisante en terme du bruit généré. Réellement, en moyen, une addition double le bruit d'un message chiffré alors qu'une multiplication l'enlève au carré.  To be completely homomorphic, it suffices that a cryptosystem makes it possible to carry out the two operations of addition and multiplication a multitude of times on the cryptograms. Since their first appearance in 2009, EH cryptosystems make it easy to make additions while multiplication remains very expensive in terms of computation time and exhausting in terms of noise generated. Actually, on average, an addition doubles the noise of an encrypted message while a multiplication removes it squared.
Afin de bénéficier agréablement de l'avancée technologique du cloud et externaliser ses calculs lourds confortablement, Bob a besoin d'un cryptosystème EH robuste en termes de sécurité, dont les opérations d'addition et de multiplication se font en un temps judicieux et dont le bruit généré lors d'un traitement est maîtrisable.  In order to benefit from the cloud's technological breakthrough and outsource its heavy computation comfortably, Bob needs a robust security EH cryptosystem, whose addition and multiplication operations are done in a timely manner and whose noise generated during a treatment is manageable.
Pour aider Bob à profiter pleinement des puissances du cloud, nous avons inventé un cryptosystème symétrique probabiliste EH sans bruit. Les opérations d'addition et de multiplication ne génèrent aucun bruit. La multiplication est très rapide et se fait en moins d'une milliseconde. La sécurité du cryptosystème est basée sur la difficulté de résoudre un système d'équations multi-variées dans un anneau non commutatif.  To help Bob take full advantage of the power of the cloud, we invented a probabilistic symmetric EH cryptosystem without noise. Addition and multiplication operations do not generate any noise. The multiplication is very fast and is done in less than a millisecond. Cryptosystem security is based on the difficulty of solving a system of multivariate equations in a noncommutative ring.
On peut décrire notre cryptosystème comme suit :  We can describe our cryptosystem as follows:
Génération de clé ; Key generation;
-Bob génère aléatoirement deux grands nombres premiers p et q.  -Bob randomly generates two large prime numbers p and q.
-puis, il calcule n = 2. p. q. then, it calculates n = 2. p. q.
-Bob génère aléatoirement une matrice inversible comme il est décrit dans (***).
Figure imgf000009_0001
-Bob randomly generates an invertible matrix as described in (***).
Figure imgf000009_0001
-Bob calcule l'inverse de K, qui sera noté K-1, comme il est décrit dans (**). -Bob calculates the inverse of K, which will be noted K -1 , as described in (**).
-la clé secrète est (K, K-1). the secret key is (K, K -1 ).
Chiffrement ; Encryption;
Soit σ 6 Z/2Z = {0,1} un message clair. Pour chiffrer σ Bob procède comme suit :  Let σ 6 Z / 2Z = {0,1} be a clear message. To encrypt σ Bob proceeds as follows:
-A l'aide de la transformée bitToQuatern , décrite dans (*), Bob transforme σ en un quaternion m = bitToQuatern(σ) 6 M(Z/nZ). Using the bitToQuatern transform described in (*), Bob transforms σ into a quaternion m = bitToQuatern (σ) 6 M (Z / nZ).
-Bob génère une matrice M Z) sont générés
Figure imgf000009_0002
-Bob generates a matrix MZ) are generated
Figure imgf000009_0002
aléatoirement. randomly.
-Le cryptogramme de σ est : C = Enc(σ) = KM K-1 6 M2(H(Z/nZ)) Déchiffrement ; -The cryptogram of σ is: C = Enc (σ) = KM K -1 6 M 2 (H (Z / nZ)) Decryption
Soit un cryptogramme
Figure imgf000010_0002
Pour déchiffrer C, Bob procède comme suit :
Either a cryptogram
Figure imgf000010_0002
To decipher C, Bob proceeds as follows:
-Il calcule M = K-1CK. -It calculates M = K -1 CK.
-Puis il prend la première entrée de la matrice m = (M)1,1.  -Then he takes the first entry of the matrix m = (M) 1,1.
-Enfin il retrouve son message clair en calculant σ = quaternToBit(m).  -Finally, he finds his clear message by calculating σ = quaternToBit (m).
Addition et multiplication ;  Addition and multiplication;
Soient σ1 et σ2 deux messages clairs et Cy = Enc( σ1)et C2 = Enc(σ2) leurs cryptogrammes respectivement. Let σ 1 and σ 2 be two clear messages and Cy = Enc (σ 1 ) and C 2 = Enc (σ 2 ) their cryptograms respectively.
On peut vérifier facilement, grâce à la transformée bitToQuatern, que :
Figure imgf000010_0001
One can easily check, thanks to the bitToQuatern transform, that:
Figure imgf000010_0001
Pour notre cryptosystème, la réduction de quaternions modulo un grand nombre n a l'avantage de donner un cryptosystème sans expansion de bruit. Mais si on utilise un modulo impair, l'entière homomorphie peut être mise en cause. En effet, un modulo impair ne préserve pas, en général, la parité des entiers après un traitement (additions et/ou multiplications) ce qui donne un cryptosystème partiellement homomorphe alors qu'un modulo pair préserve toujours la parité des entiers et donne un schéma entièrement homomorphe.  For our cryptosystem, the reduction of quaternions modulo a large number n has the advantage of giving a cryptosystem without expansion of noise. But if we use an odd modulo, the entire homomorphy can be questioned. Indeed, an odd modulo does not preserve, in general, the parity of the integers after a treatment (additions and / or multiplications) which gives a partially homomorphic cryptosystem whereas an even modulo always preserves the parity of the integers and gives a schema entirely homomorphic.
Version asymétrique ;  Asymmetrical version;
Notre cryptosystème admet une version asymétrique en lui appliquant la transformation de Rothblum [https://www.iacr.org/archive/tcc2011/65970216/65970216.pdf] .  Our cryptosystem admits an asymmetric version by applying the Rothblum transformation to it [https://www.iacr.org/archive/tcc2011/65970216/65970216.pdf].
Utilité de l'invention  Utility of the invention
Le champ d'application de notre cryptosystème est très vaste. Son utilité dans le domaine du cloud Computing est évidente. Parmi les applications de notre cryptosystème on trouve:  The scope of our cryptosystem is very wide. Its usefulness in the field of cloud computing is obvious. Among the applications of our cryptosystem we find:
1. En général, la délégation de calculs complexes sur des données sensibles à un cloud puissant mais non confiant. En effet, rexternalisation de calcul devient une solution efficace pour ceux qui possèdent des données gigantesques hébergées chez un sous-traitant. Ces données sont confidentielles dans la majorité des cas et nécessitent une manipulation particulière. Grâce aux alternatives de calcul qu'offre notre cryptosystème, les clients peuvent stocker leurs données chiffrées et demander aux sous-traitants de faire des calculs sur ces données à la demande. En particulier ce cryptosystème peut être très utile, en délégation de calcul, dans les deux cas suivants: ❖ Chiffrer des données d'un opérateur bancaire avant leur stockage dans un cloud. Assurément, le secteur bancaire est réputée pour le volume et la vitesse des données qu'il produit, transporte et stocke. La nature des données d'une banque telle que les numéros des comptes bancaires des clients, les sommes d'argent et les transactions effectuées sont d'une grande sensibilité alors que les fournisseurs du cloud ne fournissent aucune garantie sur la protection de la vie privée et sur la confidentialité de ce type de données. Le stockage des masses de données dans un cloud est d'un gain très important pour une banque. La possibilité de faire des traitements sur ces données, sans les divulguer, en un temps pratique en épuisant moins de ressources est très utile. Notre cryptosystème est une solution adéquate à cette problématique. Il permet, pour une banque, de stocker ses données chiffrées dans un cloud avec la possibilité d'effectuer n'importe quel traitement sans procéder à leur déchiffrement. 1. In general, the delegation of complex calculations on sensitive data to a powerful cloud but not confident. Indeed, rexternalisation of calculation becomes an effective solution for those who possess gigantic data hosted at a subcontractor. These data are confidential in most cases and require special handling. Thanks to the computing alternatives offered by our cryptosystem, customers can store their encrypted data and ask subcontractors to make calculations on these data on demand. In particular, this cryptosystem can be very useful, in calculation delegation, in the two following cases: ❖ To encrypt data of a banking operator before their storage in a cloud. Surely, the banking sector is known for the volume and speed of the data it produces, transports and stores. The nature of a bank's data, such as customer bank account numbers, sums of money, and transactions, is highly sensitive, while cloud providers provide no privacy guarantees. and the confidentiality of this type of data. Storing the masses of data in a cloud is a very important gain for a bank. The ability to do treatments on these data, without disclosing them, in a practical time while exhausting less resources is very useful. Our cryptosystem is an adequate solution to this problem. It allows a bank to store its encrypted data in a cloud with the ability to perform any processing without decryption.
❖ Chiffrer des données médicales des patients avant leur stockage dans un cloud. En effet dans un cloud médical, les données des patients tels que l'identifiant biométrique, le numéro de la sécurité sociale, l'âge et l'état de santé sont des données à caractère personnel. L'exploitation de ces données à des fins de recherches médicales et en pharmacovigilance lève la question de confidentialité de ce type de données, avec les règles de déontologie et de respect de la vie privée. Dans ce contexte, on n'est intéressé que par les résultats des traitements qu'on peut effectuer sur ces données. Notre schéma de cryptage permet de faire des traitements sur les données médicales et fournir les résultats demandés tout en préservant la confidentialité des données et la vie privée des patients.  ❖ Encrypt medical data of patients before they are stored in a cloud. In a medical cloud, patient data such as the biometric identifier, the social security number, the age and the state of health are personal data. The use of these data for medical research and pharmacovigilance raises the question of confidentiality of this type of data, with the rules of ethics and respect for privacy. In this context, we are interested only in the results of the treatments that can be performed on these data. Our encryption scheme allows for processing on medical data and providing the requested results while preserving data privacy and patient privacy.
2. Le retrait d'information privé : En cryptographie, le retrait d'informations privé (RIP) est un protocole qui permet à un utilisateur de récupérer un élément d'une base de données sans révéler au serveur quel élément a été récupéré. Le cryptage homomorphe permet facilement de réaliser tels protocoles. Notre cryptosystème possède la propriété homomorphique qui lui permet de réaliser facilement le protocole RIP.  2. Private information retrieval: In cryptography, private information retrieval (RIP) is a protocol that allows a user to retrieve an item from a database without revealing to the server which item has been retrieved. Homomorphic encryption makes it easy to perform such protocols. Our cryptosystem has the homomorphic property that allows it to easily perform the RIP protocol.
3. Le calcul multi-parties : dans les systèmes de calcul multi-parties, plusieurs parties sont intéressées à calculer une fonction commune, sans arriver à divulguer leurs données privées. La fonction qui doit être calculée est publiquement connue alors que les entrées individuelles des différents utilisateurs doivent rester inconnues pour les autres parties du système. Ce problème provient du problème de calcul avec les données chiffrées, d'où l'utilité de l'usage de la cryptographie homomorphe. La version asymétrique de notre cryptosystème permet de mettre en œuvre les calculs multipartis.  3. Multi-part calculation: in multi-party computing systems, several parties are interested in computing a common function, without being able to disclose their private data. The function to be calculated is publicly known, while the individual entries of the different users must remain unknown for the other parts of the system. This problem comes from the problem of computation with the encrypted data, from where the utility of the use of the homomorphic cryptography. The asymmetric version of our cryptosystem allows to implement multiparty calculations.
4. Le vote électronique : Le vote électronique est un cas spécial de délégation de calcul à un tiers capable de calculer le résultat des élections sans divulguer les identités des différents candidats. Dans cette situation le cryptage homomorphe permet aux autorités électorales de compter les votes et présenter les résultats définitifs sans passer par le processus du déchiffrement des votes et les compter après. Dans un système de vote basé sur le cryptage homomorphe les électeurs sont autorisés juste à incrémenter un décompte chiffré par 1 (indiquant un vote pour le candidat) où 0 (indiquant le cas du non vote). Lors des élections où chaque électeur vote pour un des candidats parmi £ candidats, les électeurs modifient les pointages cryptés en ajoutant un vecteur £ bits, où exactement une entrée est 1 et le reste sont tous des 0. Et ils sont incapables de modifier les compteurs de toute autre manière. La version asymétrique de notre cryptosystème permet de mettre en œuvre un système de vote électronique sécurisé.  4. Electronic voting: The electronic voting is a special case of delegation of calculation to a third party able to calculate the result of the elections without disclosing the identities of the different candidates. In this situation homomorphic encryption allows the electoral authorities to count the votes and present the final results without going through the process of deciphering the votes and counting them afterwards. In a voting system based on homomorphic encryption, voters are just allowed to increment a counted count of 1 (indicating a vote for the candidate) where 0 (indicating the case of non-voting). In elections where each voter votes for one of the candidates among candidates, voters modify the encrypted scores by adding an £-bit vector, where exactly one entry is 1 and the rest are all 0. And they are unable to change the counters in any other way. The asymmetric version of our cryptosystem allows to implement a secure electronic voting system.

Claims

Revendications claims
1. Une méthode de chiffrement symétrique probabiliste entièrement homomorphe et rapide dont l'espace des clairs est {0,1} muni des opérations XOR et AND alors que les cryptogrammes sont des matrices de quaternions de Lipschitz modulo un grand nombre entier naturel pair n caractérisée en ce que dans un mode de réalisation les messages en clair sont codés par une transformée homomorphe inversible bitToQuatern entre (Z/2Z, XOR, AND) et (H(Z/nZ), +,x), ladite transformée permet de conserver les deux opérations de XOR et AND sur les bits et de les remplacer par les opérations d'addition et de multiplication sur les quaternions de Lipschitz modulaires
Figure imgf000012_0004
pour coder un bit ff par un quaternion de Lipschitz modulaire on procède comme suit :
1. A fully homomorphic and fast probabilistic symmetric encryption method whose clear space is {0,1} provided with XOR and AND operations while the cryptograms are Lipschitz quaternions matrices modulo a large number of natural integers n characterized in that in one embodiment the plaintext messages are encoded by a homomorphous inverse transform bitToQuatern between (Z / 2Z, XOR, AND) and (H (Z / nZ), +, x), said transform makes it possible to preserve the two XOR and AND operations on the bits and replace them with the addition and multiplication operations on the modular Lipschitz quaternions
Figure imgf000012_0004
to code a bit ff by a modular Lipschitz quaternion, proceed as follows:
-Choisir aléatoirement un entier m
Figure imgf000012_0003
-Select randomly an integer m
Figure imgf000012_0003
-Choisir aléatoirement un entier -Select randomly an integer
Figure imgf000012_0002
Figure imgf000012_0002
-Choisir aléatoirement deux entiers p, q∈ Z/nZ tels que p≡ q[2].  -Select randomly two integers p, q∈ Z / nZ such that p≡ q [2].
-On a bitToQuatern -On a bitToQuatern
Figure imgf000012_0001
Figure imgf000012_0001
Ladite transformée se réalise, autrement, par toute permutation du triplet (2-6, p, q) et garde les mêmes propriétés d'homomorphie.  Said transform is realized, otherwise, by any permutation of the triplet (2-6, p, q) and keeps the same properties of homomorphism.
2. La méthode selon la revendication (1) se caractérise en ce que dans un mode de réalisation la transformée inverse quaternToBit permettant de retrouver un bit σ, randomisé à partir de la transformée bitToQuatern ou résultat d'un traitement (additions et/ou multiplications) de plusieurs bits randomisés à partir de la transformée bitToQuatern , la transformée inverse est calculée comme suit : σ = quaternToBit(jq) = Re(q)[2], Où q est un quaternion de Lipschitz obtenu selon la revendication (1) et Re est sa partie réelle.  2. The method according to claim 1, wherein in one embodiment the quaternToBit inverse transform makes it possible to recover a bit σ, randomized from the bitToQuatern transform or the result of a treatment (additions and / or multiplications). ) of several bits randomized from the bitToQuatern transform, the inverse transform is calculated as follows: σ = quaternToBit (jq) = Re (q) [2], where q is a Lipschitz quaternion obtained according to claim (1) and Re is his real part.
3. La méthode selon la revendication (1) se caractérise en ce que dans un mode de réalisation, le chiffrement d'un binaire (0 où 1) qui représente le message en clair se fait en la transformation de ce binaire en un quaternion en utilisant la transformée bitToQuatern, le résultat de cette transformation est inséré à la première entrée d'une matrice quaternionique triangulaire supérieure d'ordre deux dont les deux entrées restantes sont des quaternions choisies aléatoirement (c'est la matrice M), la continuation du chiffrement se fait en multipliant à gauche la matrice M par une matrice quaternionique inversible K choisie aléatoirement et par son inverse K-1 à droite (les matrices K et K-1 sont utilisées comme clé secrète pour le chiffrement et le déchiffrement). La matrice résultante du produit KMK -1 constitue le message chiffré. 3. The method according to claim 1 is characterized in that in one embodiment, the encryption of a bit (0 or 1) which represents the plaintext message is done by transforming this bit into a quaternion into using the bitToQuatern transform, the result of this transformation is inserted at the first input of a second order triangular quaternionic matrix whose two remaining entries are quaternions chosen randomly (it is the matrix M), the continuation of the encryption is done by multiplying on the left the matrix M by an invertible quaternionic matrix K chosen randomly and by its inverse K -1 on the right (matrices K and K -1 are used as secret key for the encryption and decryption). The resulting matrix of the product KMK -1 constitutes the encrypted message.
4. La méthode selon les revendications précédentes se caractérise en ce que dans un mode de réalisation, le déchiffrement d'un cryptogramme C (qui est une matrice quaternionique) se fait en multipliant la matrice C par la matrice K-1 à gauche et par la matrice K à droite, la continuation du déchiffrement se fait en prenant la première entrée de la matrice résultante du produit K-1CK et en lui appliquant la transformé inverse selon la revendication (2), le résultat de ces opérations constitue le message clair après déchiffrement. 4. The method according to the preceding claims is characterized in that in one embodiment, the decryption of a cryptogram C (which is a quaternionic matrix) is done by multiplying the matrix C by the matrix K -1 on the left and by the matrix K on the right, the continuation of the decryption is done by taking the first entry of the resulting matrix of the produces K -1 CK and applying the inverse transform according to claim (2), the result of these operations is the clear message after decryption.
5. La méthode selon les revendications précédente se caractérise en ce que dans un mode de réalisation la méthode de multiplication des cryptogrammes prend en entrée deux matrices C1 et C2 cryptogrammes de deux messages clairs et σ2 selon la revendication (3), fait une multiplication matricielle C1. C2 et donne en sortie une matrice quaternionique cryptogramme du clair σ = σ1. σ2, ledit produit matriciel peut se faire dans n'importe quel ordre (c'est-à-dire on peut calculer C1. C2 comme on peut calculer C2. C1). 5. The method according to the preceding claims is characterized in that in one embodiment the cryptogram multiplication method takes as input two matrices C 1 and C 2 cryptograms of two clear messages and σ 2 according to claim (3), makes a matrix multiplication C 1 . C 2 and gives a quaternionic cryptogram matrix of the light σ = σ 1 . σ 2 , said matrix product can be in any order (that is, C 1, C 2 can be calculated as C 2, C 1 can be calculated).
6. La méthode selon les revendications précédente se caractérise en ce que dans un mode de réalisation la méthode d'addition des cryptogrammes prend en entrée deux matrices C1 et C2 cryptogrammes de deux messages clairs et σ2 selon la revendication (3), fait une addition matricielle C1+C2 et donne en sortie une matrice quaternionique cryptogramme du clair σ = ( σ1 + σ2)mod 2. 6. The method according to the preceding claims is characterized in that in one embodiment the cryptogram addition method takes as input two matrices C 1 and C 2 cryptograms of two clear messages and σ 2 according to claim (3), makes a C 1 + C 2 matrix addition and outputs a cryptogram quaternionic matrix of the light σ = (σ 1 + σ 2 ) mod 2.
7. La méthode selon les revendications précédentes caractérisée en ce que si on lui applique la transformée de Rothblum elle devient asymétrique.  7. The method according to the preceding claims, characterized in that if the Rothblum transform is applied to it, it becomes asymmetrical.
PCT/MA2018/050001 2016-11-07 2018-01-02 Quaternion-based, efficient fully-homomorphic cryptosystem WO2018084691A2 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
MA39511 2016-11-07
MA39511A MA39511A1 (en) 2016-11-07 2016-11-07 An efficient homomorphic cryptosysteme based on quaternions.

Publications (2)

Publication Number Publication Date
WO2018084691A2 true WO2018084691A2 (en) 2018-05-11
WO2018084691A3 WO2018084691A3 (en) 2018-07-26

Family

ID=61972182

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/MA2018/050001 WO2018084691A2 (en) 2016-11-07 2018-01-02 Quaternion-based, efficient fully-homomorphic cryptosystem

Country Status (2)

Country Link
MA (1) MA39511A1 (en)
WO (1) WO2018084691A2 (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110418028A (en) * 2019-06-21 2019-11-05 首都师范大学 Image encryption method and device based on cascaded transformation
US11032061B2 (en) * 2018-04-27 2021-06-08 Microsoft Technology Licensing, Llc Enabling constant plaintext space in bootstrapping in fully homomorphic encryption

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20110110525A1 (en) 2009-11-10 2011-05-12 International Business Machines Corporation Fully homomorphic encryption method based on a bootstrappable encryption scheme, computer program and apparatus
WO2014016795A2 (en) 2012-07-26 2014-01-30 Nds Limited Method and system for homomorphicly randomizing an input

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20110110525A1 (en) 2009-11-10 2011-05-12 International Business Machines Corporation Fully homomorphic encryption method based on a bootstrappable encryption scheme, computer program and apparatus
WO2014016795A2 (en) 2012-07-26 2014-01-30 Nds Limited Method and system for homomorphicly randomizing an input

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
R RIVEST; L ADLEMAN; M. DERTOUZOS: "on data banks and pnvacy homomorphisms", FOUNDATIONS OF SECURE COMPUTATION, 1978, pages 169 - 180

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11032061B2 (en) * 2018-04-27 2021-06-08 Microsoft Technology Licensing, Llc Enabling constant plaintext space in bootstrapping in fully homomorphic encryption
CN110418028A (en) * 2019-06-21 2019-11-05 首都师范大学 Image encryption method and device based on cascaded transformation
CN110418028B (en) * 2019-06-21 2021-03-30 首都师范大学 Image encryption method and device based on cascade transformation

Also Published As

Publication number Publication date
MA39511A1 (en) 2018-05-31
WO2018084691A3 (en) 2018-07-26

Similar Documents

Publication Publication Date Title
WO2018124869A1 (en) Quaternion-based, efficient fully-homomorphic cryptosystem
CA2181299C (en) Cryptographic communication process
EP2415199B1 (en) Method for performing a cryptographic task in an electronic component
EP1611709B1 (en) Encryption method and system
EP2158720B1 (en) Method of authentication using a decoding of an error correcting code on the basis of a public matrix
Hart et al. A Practical Cryptanalysis of WalnutDSA^ TM TM
WO2012152607A1 (en) Device and method for generating keys with enhanced security for fully homomorphic encryption algorithm
Sharma Fully homomorphic encryption scheme with symmetric keys
WO2018084691A2 (en) Quaternion-based, efficient fully-homomorphic cryptosystem
EP2983083B1 (en) Elliptic curve encryption method comprising an error detection
EP2940922B1 (en) Symmetric cryptosystems with public key based on the symmetric group
WO2013024230A2 (en) Device and method for compressing public keys for a fully homomorphic encryption algorithm
WO2020070455A1 (en) Low latency calculation transcryption method applied to homomorphic encryption
EP2936302B1 (en) Chaotic sequence generator
Kumar et al. Image encryption using a novel hybrid chaotic map and dynamic permutation− diffusion
EP1438804B1 (en) Public key cryptographic method based on braid groups
Bonnetain Hidden structures and quantum cryptanalysis
Xu et al. Privacy-preserving outsourcing decision tree evaluation from homomorphic encryption
FR2988249A1 (en) METHOD OF ENCRYPTING A PLURALITY OF DATA INTO A SECURE SET
Mittal et al. Preserving privacy in clouds using fully homomorphic encryption
EP2274869B1 (en) White-box protection of cryptographical algorithms comprising a calculation in quadratic form
Barelli Étude de la sécurité de certaines clés compactes pour le schéma de McEliece utilisant des codes géométriques
Bitan et al. Randomly Choose an Angle from an Immense Number of Angles to Rotate Qubits, Compute and Reverse
Agrawal et al. On architecting fully homomorphic encryption-based computing systems
Kshiteesh et al. A review on challenges and latest trends on cyber security using text cryptography

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 18717716

Country of ref document: EP

Kind code of ref document: A2

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 18717716

Country of ref document: EP

Kind code of ref document: A2