FR3101979A1 - Procédé de chiffrement de données - Google Patents

Procédé de chiffrement de données Download PDF

Info

Publication number
FR3101979A1
FR3101979A1 FR1911404A FR1911404A FR3101979A1 FR 3101979 A1 FR3101979 A1 FR 3101979A1 FR 1911404 A FR1911404 A FR 1911404A FR 1911404 A FR1911404 A FR 1911404A FR 3101979 A1 FR3101979 A1 FR 3101979A1
Authority
FR
France
Prior art keywords
binary word
binary
bits
data
equal
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
FR1911404A
Other languages
English (en)
Other versions
FR3101979B1 (fr
Inventor
Joan Daemen
Gilles Van Assche
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Proton World International NV
Original Assignee
Proton World International NV
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 Proton World International NV filed Critical Proton World International NV
Priority to FR1911404A priority Critical patent/FR3101979B1/fr
Priority to US17/067,510 priority patent/US11354428B2/en
Publication of FR3101979A1 publication Critical patent/FR3101979A1/fr
Application granted granted Critical
Publication of FR3101979B1 publication Critical patent/FR3101979B1/fr
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/602Providing cryptographic facilities or services
    • 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/06Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
    • H04L9/0618Block ciphers, i.e. encrypting groups of characters of a plain text message using fixed encryption transformation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/70Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
    • G06F21/71Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure computing or processing of information
    • G06F21/72Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure computing or processing of information in cryptographic circuits

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Mathematical Physics (AREA)
  • Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • General Health & Medical Sciences (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Storage Device Security (AREA)

Abstract

Procédé de chiffrement de données La présente description concerne un procédé de chiffrement, exécuté par un circuit électronique, comprenant une première opération, appliquée à une première donnée comprenant un nombre n de premiers mots binaires, comprenant un nombre m de bits, et fournissant une deuxième donnée comprenant un même nombre n de deuxièmes mots binaires de m bits, dans laquelle chaque deuxième mot binaire, est égal à la somme : - du premier mot binaire de même rang,; et - du produit du complémentaire du premier mot binaire de rang suivant modulo n dont les bits ont subi un décalage d'un premier nombre de positions, avec le premier mot binaire d'un rang égal au rang supérieur du rang suivant modulo n, dont les bits ont subi un décalage d'un deuxième nombre de positionsdans lequel n est supérieur ou égal à 3, m est premier avec n, et n ou m est pair. Figure pour l'abrégé : Fig. 1

Description

Procédé de chiffrement de données
La présente description concerne de façon générale la protection de données, et de façon plus particulière un procédé de chiffrement et/ou de déchiffrement de données, un procédé de hachage, ou encore un procédé de calcul de code d'authentification de message (MAC, message authentification code). La présente description concerne, en outre, des modules adaptés à mettre en oeuvre un procédé de chiffrement et de déchiffrement de données.
Il existe de nombreuses techniques permettant de protéger des données utilisées par des dispositifs électroniques. Les techniques cryptographiques, comme le chiffrement de données, sont tout particulièrement utilisées à cet effet.
Le chiffrement de données est une opération par laquelle des données utilisables et lisibles sont transformées, à l'aide d'un algorithme, en des données qui ne peuvent être lues que par des personnes ou machines connaissant cet algorithme. Cet algorithme peut utiliser, par exemple, une clé de chiffrement et/ou de déchiffrement. Des personnes cherchant à connaître ces données, appelées attaquants, peuvent connaître l'algorithme, sans toutefois connaître la clé.
Il existe un besoin pour des procédés de chiffrement de données toujours plus performants, et pour des circuits électroniques mettant en oeuvre ces procédés toujours plus résistants.
Un mode de réalisation pallie tout ou partie des inconvénients des procédés de chiffrement de données connus.
Un mode de réalisation prévoit un procédé de chiffrement, exécuté par un circuit électronique, comprenant une première opération, appliquée à une première donnée comprenant un nombre n de premiers mots binaires de m bits chacun, et fournissant une deuxième donnée comprenant un même nombre n de deuxièmes mots binaires de m bits chacun, dans laquelle chaque deuxième mot binaire est égal à la somme :
- du premier mot binaire de même rang ; et
- du produit du complémentaire du premier mot binaire de rang suivant modulo n dont les bits ont subi un décalage d'un premier nombre de positions, avec le premier mot binaire d'un rang égal au rang supérieur du rang suivant modulo n, dont les bits ont subi un décalage d'un deuxième nombre de positions,
dans lequel n est supérieur ou égal à 3, m est premier avec n, et n ou m est pair.
Selon un mode de réalisation, m est pair.
Selon un mode de réalisation, le premier nombre est égal à 1.
Selon un mode de réalisation, le deuxième nombre est égal à 2.
Selon un mode de réalisation, n est égal à 5.
Selon un mode de réalisation, m est égal à 4 ou à 64.
Selon un mode de réalisation :
- la somme de la première opération est une somme bit à bit ;
- le produit de la première opération est un produit bit à bit ; 
- et le complémentaire d'un mot binaire de la première opération est le complémentaire bit à bit d'un mot binaire.
Selon un mode de réalisation, le procédé comprend, en outre, au moins une deuxième opération linéaire.
Selon un mode de réalisation, ladite deuxième opération est une opération de diffusion linéaire.
Selon un mode de réalisation, le procédé comprend, en outre, une opération de rotation de mots binaires dans une donnée.
Selon un mode de réalisation, le procédé comprend, en outre, une opération d'ajout d'une constante de tour.
Selon un mode de réalisation, le procédé comprend, en outre, une opération de décalage de décalage de bits dans les mots binaires.
Un autre mode de réalisation prévoit un circuit de chiffrement adapté à mettre en oeuvre le procédé de chiffrement décrit ci-dessus.
Un autre mode de réalisation prévoit une mémoire comprenant un premier ensemble de données à chiffrer et un deuxième ensemble de données représentant les données du premier ensemble chiffrées par le procédé de chiffrement décrit ci-dessus.
Ces caractéristiques et avantages, ainsi que d'autres, seront exposés en détail dans la description suivante de modes de réalisation particuliers faite à titre non limitatif en relation avec les figures jointes parmi lesquelles :
la figure 1 illustre, schématiquement, le fonctionnement d'un mode de réalisation d'une opération de chiffrement ;
la figure 2 illustre, schématiquement et sous forme de blocs, un mode de réalisation d'un algorithme de chiffrement de données ;
la figure 3 illustre, schématiquement et sous forme de blocs, un mode de réalisation d'un module de chiffrement ; et
la figure 4 illustre, schématiquement et sous forme de blocs, un autre mode de réalisation d'un module de chiffrement.
De mêmes éléments ont été désignés par de mêmes références dans les différentes figures. En particulier, les éléments structurels et/ou fonctionnels communs aux différents modes de réalisation peuvent présenter les mêmes références et peuvent disposer de propriétés structurelles, dimensionnelles et matérielles identiques.
Par souci de clarté, seuls les étapes et éléments utiles à la compréhension des modes de réalisation décrits ont été représentés et sont détaillés.
Sauf précision contraire, lorsque l'on fait référence à deux éléments connectés entre eux, cela signifie directement connectés sans éléments intermédiaires autres que des conducteurs, et lorsque l'on fait référence à deux éléments reliés entre eux, cela signifie que ces deux éléments peuvent être connectés ou être reliés par l'intermédiaire d'un ou plusieurs autres éléments.
Dans la description qui suit, lorsque l'on fait référence à des qualificatifs de position absolue, tels que les termes "avant", "arrière", "haut", "bas", "gauche", "droite", etc., ou relative, tels que les termes "dessus", "dessous", "supérieur", "inférieur", etc., ou à des qualificatifs d'orientation, tels que les termes "horizontal", "vertical", etc., il est fait référence sauf précision contraire à l'orientation des figures.
Sauf précision contraire, les expressions "environ", "approximativement", "sensiblement", et "de l'ordre de" signifient à 10 % près, de préférence à 5 % près.
La figure 1 illustre le fonctionnement, schématiquement et sous forme de blocs, d'une opération de chiffrement F pouvant être utilisée dans un procédé de chiffrement.
L'opération F est une fonction prenant en entrée une donnée a comprenant un nombre n de mots binaires a(0), a(1), ..., a(n-1). Chaque mot binaire a(0), a(1), ..., a(n-1) est composé d'un nombre m de bits.
L'opération F fournit en sortie une donnée b du même type de la donnée a, c'est-à-dire comprenant un même nombre n de mots binaires b(0), b(1), ... b(n-1), chaque mot binaire b(0), b(1), ..., b(n-1) étant composé du même nombre m de bits. Dans l'exemple illustré en figure 1, chaque donnée a, respectivement b, comprend n = 5 mots binaires a(0) à a(4), respectivement b(0) à b(4).
Chaque mot binaire b(i), i variant de 0 à n-1, est défini comme étant la somme du mot binaire a(i) et d'un mot binaire c(i). L'opération somme est une somme bit à bit modulo deux, et est désignée en figure 1 par une porte 10 (+). Le mot binaire b(i) est donc défini par la formule suivante :
où  :
- le signe "+" désigne une somme bit à bit, ou une porte OU exclusif logique ; et
- "mod" désigne l'opération modulo.
Chaque mot binaire c(i) comprend ledit nombre m de bits, et est le résultat d'un produit de deux nombres binaires d(i) et e(i). L'opération produit est un produit bit à bit, et est désignée en figure 1 par une porte 20 de type ET. Le mot binaire c(i) est donc défini par la formule suivante :
où le signe "." désigne un produit bit à bit, ou une porte ET logique.
Le mot binaire d(i) comprend ledit nombre m de bits, et est le résultat du complémentaire du mot binaire de rang suivant au mot binaire a(i) dont les bits ont été décalés de p positions. Par l'expression "mot binaire de rang suivant au mot binaire a(i)", il est entendu que le mot binaire de rang suivant du mot a(i) est le mot binaire a(i+1), et que le mot binaire de rang suivant du mot a(n-1) est le mot binaire a(0). On notera donc que la mot binaire de rang suivant au mot binaire a(i) est le mot binaire a(i+1 [n]). L'opération complémentaire fournit le complémentaire bit à bit, ou complément bit à bit, d'un mot binaire, et est désignée en figure 1 par une porte 30 de type inverseuse. L'opération permettant de décaler la position des bits d'un mot binaire de p positions est désignée en figure 1 par un bloc 40 (<<p). L'opération de décalage de bits dans un mot binaire est par exemple une opération de décalage de bits vers la gauche. Le mot binaire d(i) est donc défini par la formule suivante :
où le signe "[n]" signifie modulo n ;
la fonction "COMP()" désigne le complémentaire bit à bit ; et
le signe "<<p" désigne le décalage de p positions d'un bit dans un mot binaire.
Le mot binaire e(i) comprend ledit nombre m de bits, et est égal au mot binaire de rang supérieur au rang suivant du mot binaire a(i), noté a(i+2 [n]), dont les bits ont été décalés de q positions. L'opération permettant de décaler la position des bits d'un mot binaire de q positions est désignée en figure 1 par un bloc 50 (<<q). Le mot binaire e(i) est donc défini par la formule suivante :
p et q sont des constantes fixées à partir d'analyses de propagation. Une analyse de propagation étudie notamment l'influence de la modification d'un bit dans un algorithme de chiffrement de données binaires. Un exemple de méthode d'analyse de propagation est donné dans l'article "The design of Xoodoo and Xoofff" de Daemen, J., Hoffert, S., Van Assche, G., & Van Keer, R. (2018). Selon un mode de réalisation, le nombre p est égal à un et le nombre q est égal à deux.
Autrement dit, chaque mot binaire b(i) est le résultat de l'application, au mot binaire a(i), de l'opération F définie par la formule suivante :
L'opération F est une opération réversible si et seulement si le produit du nombre de mots binaires n dans une donnée et de la longueur m d'un mot binaire est impair. Dans ces conditions, l'opération F peut être utilisée comme une permutation dans un algorithme de chiffrement.
Selon un mode de réalisation, le nombre n est supérieur ou égal à 3. Les nombres m et n sont premiers entre eux. Le nombre m ou le nombre n est pair. L'opération F n'est, dans ce cas, pas réversible. Cependant, la probabilité que deux données aient le même antécédent est donnée par la formule suivante :
A titre d'exemple, pour une donnée a comprenant n=5 mots binaires de m=4 bits, cette probabilité est de l'ordre de 9,5*10^(-7). Selon un autre exemple, pour une donnée a comprenant n=5 mots binaires de m=64 bits, cette probabilité est de l'ordre de 4,7*10^(-97). Ces probabilités sont très faibles. Un avantage de cette opération F est donc qu'elle peut être utilisée comme une permutation dans les conditions évoquées plus haut.
La figure 2 illustre, schématiquement et sous forme de blocs, un exemple de réalisation d'un algorithme 100 utilisant l'opération F décrite en relation avec la figure 1. A titre d'exemple, l'opération F peut être utilisée dans une fonction cyclique, ou dans une permutation. Cette fonction cyclique, ou cette permutation, peut être utilisée dans un algorithme, par exemple, un algorithme de chiffrement, de hachage, ou de calcul, ou dans un schéma de chiffrement authentifié (authenticated encryption scheme). A titre d'exemple, l'algorithme 100 est un algorithme de chiffrement.
L'algorithme de chiffrement 100 est appliqué pour chiffrer une donnée A comprenant n mots binaires A(0), A(1), ..., A(n-1) de m bits chacun. A titre d'exemple, la donnée A comprend n=5 mots binaires comprenant chacun m=64 bits.
A une étape 110, l'opération F est appliquée à la donnée A, comme décrit en relation avec la figure 1, pour fournir une donnée B. Comme dit précédemment, la donnée B comprend n mots binaires B(0), B(1), ..., B(n-1) de m bits chacun.
A une étape 120, une opération de diffusion linéaire G est appliquée à la donnée B pour fournir une donnée C comprenant n mots binaires C(0), C(1), ..., C(n-1) de m bits chacun. Chaque mot binaire C(i), i variant de 0 à n-1, est le résultat de la somme bit à bit modulo deux du mot binaire B(i) et d'une constante K définie par la formule suivante :
r et s sont, comme les constants p et q, des constantes fixées à partir d'analyses de propagation. Selon un mode de réalisation, r est égal à 12 et s est égal à 17.
A une étape 130, une opération de rotation H est appliquée à la donnée C pour fournir une donnée D comprenant n mots binaires D(0), D(1), ..., D(n-1) de m bits chacun. Chaque mot binaire D(i) est égal au mot binaire de la donnée C de rang supérieur, c'est-à-dire le mot binaire C(i+1 [n]).
A une étape 140, une opération I d'ajout de constante de tour est appliquée à la donnée D pour fournir une donnée E comprenant n mots binaires E(0), E(1), ..., E(n-1) de m bits chacun. Chaque mot binaire E(i) est égal à la somme modulo deux du mot binaire D(i) et d'une constante de tour T(j), avec j variant entre 0 et le nombre de tours de l'algorithme 100, c'est-à-dire le nombre de fois que l'algorithme est appliqué à une donnée. La constante de tour T(j) est, par exemple, définie par l'entier immédiatement inférieur au chiffre défini par la formule suivante :
A une étape 150, une opération J de décalage de bits est appliquée à la donnée E pour fournir une donnée F comprenant n mots binaires F(0), F(1), ..., F(n-1) de m bits chacun. Chaque mot binaire F(i) est défini par la formule suivante :
où v(i) est une composante d'un vecteur v comprenant n composantes v(0), v(1), ..., v(n-1), chacune de ces composantes étant un entier.
Selon un mode de réalisation, quand n=5, v est, par exemple, égal à (0, 2, 10, 19, 33).
La donnée F est donc le résultat du chiffrement de la donnée A par le procédé de chiffrement 100.
La figure 3 illustre, schématiquement et sous forme de blocs, un mode de réalisation d'un dispositif électronique de chiffrement 200 comprenant un circuit de chiffrement 201 (PU).
Le circuit de chiffrement 201 est adapté à mettre en oeuvre l'algorithme de chiffrement décrit en relation avec la figure 2. Pour cela, le circuit de chiffrement 201 comprend, en autres, une entrée 203 et une sortie 205. L'entrée 203 est adaptée à recevoir la donnée A décrite en relation avec la figure 2. La sortie 205 est adaptée à fournir la donnée F décrite en relation avec la figure 2.
Le circuit de chiffrement 201 comprend, par exemple, une unité de traitement numérique de type processeur de traitement numérique (DSP) ou microprocesseur.
La figure 4 illustre, schématiquement et sous forme de blocs, un autre mode de réalisation d'un module de chiffrement 300 comprenant une mémoire 301 (MEM).
La mémoire 301 comprend une table de correspondance associant un ensemble de données du type de la donnée A décrite en relation avec la figure 2, à un ensemble comprenant l'ensemble des images de ces données par l'algorithme décrit en relation avec la figure 2.
Divers modes de réalisation et variantes ont été décrits. L’homme de l’art comprendra que certaines caractéristiques de ces divers modes de réalisation et variantes pourraient être combinées, et d’autres variantes apparaitront à l’homme de l’art. En particulier, l'opération F peut être appliquée à d'autres algorithmes de chiffrement que celui décrit en relation avec la figure 2.
Enfin, la mise en oeuvre pratique des modes de réalisation et variantes décrits est à la portée de l’homme du métier à partir des indications fonctionnelles données ci-dessus.

Claims (14)

  1. Procédé de chiffrement, exécuté par un circuit électronique (201, 301), comprenant une première opération (F), appliquée à une première donnée (a ; A) comprenant un nombre n de premiers mots binaires (a(0), a(1), ..., a(n-1) ; A(0), A(1), ..., A(n-1)) comprenant un nombre m de bits chacun, et fournissant une deuxième donnée (b, B) comprenant un même nombre n de deuxièmes mots binaires (b(0), b(1), ..., b(n-1) ; B(0), B(1), ..., B(n-1)) de m bits, dans laquelle chaque deuxième mot binaire (b(i), B(i)) est égal à la somme :
    - du premier mot binaire de même rang (a(i), A(i)) ; et
    - du produit du complémentaire du premier mot binaire de rang suivant modulo n (a(i+1 [n]) ; A(i+1 [n])) dont les bits ont subi un décalage d'un premier nombre de positions (p), avec le premier mot binaire d'un rang égal au rang supérieur du rang suivant modulo n (a(i+2 [n]) ; A(i+2 [n])), dont les bits ont subi un décalage d'un deuxième nombre de positions (q),
    dans lequel n est supérieur ou égal à 3, m est premier avec n, et n ou m est pair.
  2. Procédé de chiffrement selon la revendication 1, dans lequel m est pair.
  3. Procédé selon la revendication 1 ou 2, dans lequel le premier nombre (p) est égal à 1.
  4. Procédé selon l'une quelconque des revendications 1 à 3, dans lequel le deuxième nombre (q) est égal à 2.
  5. Procédé selon l'une quelconque des revendications 1 à 4, dans lequel n est égal à 5.
  6. Procédé selon l'une quelconque des revendications 1 à 5, dans lequel m est égal à 4 ou à 64.
  7. Procédé selon l'une quelconque des revendications 1 à 6, dans lequel :
    - la somme (+) de la première opération est une somme bit à bit ;
    - le produit (.) de la première opération est un produit bit à bit ; 
    - et le complémentaire d'un mot binaire de la première opération est le complémentaire bit à bit d'un mot binaire.
  8. Procédé selon l'une quelconque des revendications 1 à 7, comprenant, en outre, au moins une deuxième opération linéaire (G, H, I, J).
  9. Procédé selon la revendication 8, dans lequel ladite deuxième opération (G) est une opération de diffusion linéaire.
  10. Procédé selon l'une quelconque des revendications 1 à 9, comprenant, en outre, une opération (H) de rotation de mots binaires dans une donnée.
  11. Procédé selon l'une quelconque des revendications 1 à 10, comprenant, en outre, une opération (I) d'ajout d'une constante de tour.
  12. Procédé selon l'une quelconque des revendications 1 à 11, comprenant, en outre, une opération (J) de décalage de bits dans les mots binaires.
  13. Circuit de chiffrement adapté à mettre en oeuvre le procédé de chiffrement selon l'une quelconque des revendications 1 à 12.
  14. Mémoire comprenant un premier ensemble de données à chiffrer et un deuxième ensemble de données représentant les données du premier ensemble chiffrées par le procédé de chiffrement selon l'une quelconque des revendications 1 à 12.
FR1911404A 2019-10-14 2019-10-14 Procédé de chiffrement de données Active FR3101979B1 (fr)

Priority Applications (2)

Application Number Priority Date Filing Date Title
FR1911404A FR3101979B1 (fr) 2019-10-14 2019-10-14 Procédé de chiffrement de données
US17/067,510 US11354428B2 (en) 2019-10-14 2020-10-09 Data values encryption method

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
FR1911404A FR3101979B1 (fr) 2019-10-14 2019-10-14 Procédé de chiffrement de données
FR1911404 2019-10-14

Publications (2)

Publication Number Publication Date
FR3101979A1 true FR3101979A1 (fr) 2021-04-16
FR3101979B1 FR3101979B1 (fr) 2021-09-24

Family

ID=69903250

Family Applications (1)

Application Number Title Priority Date Filing Date
FR1911404A Active FR3101979B1 (fr) 2019-10-14 2019-10-14 Procédé de chiffrement de données

Country Status (2)

Country Link
US (1) US11354428B2 (fr)
FR (1) FR3101979B1 (fr)

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20190222421A1 (en) * 2018-01-16 2019-07-18 Proton World International N.V. Encryption function and authentication of a replaceable printer component

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20190222421A1 (en) * 2018-01-16 2019-07-18 Proton World International N.V. Encryption function and authentication of a replaceable printer component

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
"Chapter 7: Block Ciphers ED - Menezes A J; Van Oorschot P C; Vanstone S A", 1 October 1996 (1996-10-01), XP001525007, ISBN: 978-0-8493-8523-0, Retrieved from the Internet <URL:http://www.cacr.math.uwaterloo.ca/hac/> *
DAEMEN, J.HOFFERT, S.VAN ASSCHE, G.VAN KEER, R., THE DESIGN OF XOODOO AND XOOFFF, 2018

Also Published As

Publication number Publication date
US11354428B2 (en) 2022-06-07
US20210110050A1 (en) 2021-04-15
FR3101979B1 (fr) 2021-09-24

Similar Documents

Publication Publication Date Title
EP1757009B1 (fr) Procédé et dispositif d&#39;exécution d&#39;un calcul cryptographique
EP0800691A1 (fr) Procede pour la mise en uvre d&#39;un protocole de communication a cle secrete entre deux dispositifs de traitement
FR3001315A1 (fr) Procede de cryptographie comprenant une operation de multiplication par un scalaire ou une exponentiation
WO2014131546A1 (fr) Procede d&#39;encodage de donnees sur une carte a puce par des codes de poids constant
EP2020773B1 (fr) Masquage d&#39;une donnée dans un calcul
EP3300292B1 (fr) Procédé de chiffrement ou de déchiffrement protégé contre des attaques par canaux cachés
EP3545641A1 (fr) Procédé de chiffrement cherchable
FR2906665A1 (fr) Systemes cryptographiques pour chiffrer des donnees d&#39;entree en utilisant une adresse aux donnees d&#39;entree, circuits de detection d&#39;erreur et procedes pour les faire fonctionner
FR3101981A1 (fr) Extraction et insertion de mots binaires
FR2960728A1 (fr) Procede de determination d&#39;une representation d&#39;un produit et procede d&#39;evaluation d&#39;une fonction
FR2892583A1 (fr) Procede de transmission securisee de donnees
FR3101979A1 (fr) Procédé de chiffrement de données
EP0935858B1 (fr) Procede de decorrelation de donnees
EP2983083A1 (fr) Procede de cryptographie sur courbe elliptique comprenant une detection d&#39;erreur
FR3101982A1 (fr) Détermination d&#39;un bit indicateur
FR3101983A1 (fr) Détermination d&#39;un bit indicateur
WO2014096363A1 (fr) Generateur de sequences chaotiques
FR3076151A1 (fr) Procede de determination d’une somme d’integrite, programme d’ordinateur et entite electronique associes
FR3111440A1 (fr) Protection d&#39;un algorithme de chiffrement
EP3716044B1 (fr) Protection d&#39;un calcul itératif
EP4024753B1 (fr) Procédé et module électronique de calcul d&#39;une quantité cryptographique avec multiplications sans retenue, procédé et dispositif électronique de traitement d&#39;une donnée et programme d&#39;ordinateur associés
FR3045883A1 (fr) Procede de traitement cryptographique de donnees, programme d&#39;ordinateur et entite electronique associes
EP3699793A1 (fr) Procédé d&#39;authentification
FR3141261A1 (fr) Protection de données masquées
WO2009068658A1 (fr) Procedes et dispositifs de cryptage et de decryptage d&#39;un message de donnees a cle secrete aleatoire

Legal Events

Date Code Title Description
PLFP Fee payment

Year of fee payment: 2

PLSC Publication of the preliminary search report

Effective date: 20210416

PLFP Fee payment

Year of fee payment: 3

PLFP Fee payment

Year of fee payment: 4

PLFP Fee payment

Year of fee payment: 5