FR2845542A1 - Procede securise de transmission de donnees numeriques - Google Patents
Procede securise de transmission de donnees numeriques Download PDFInfo
- Publication number
- FR2845542A1 FR2845542A1 FR0212429A FR0212429A FR2845542A1 FR 2845542 A1 FR2845542 A1 FR 2845542A1 FR 0212429 A FR0212429 A FR 0212429A FR 0212429 A FR0212429 A FR 0212429A FR 2845542 A1 FR2845542 A1 FR 2845542A1
- Authority
- FR
- France
- Prior art keywords
- polynomial
- ring
- bijection
- determining
- initial
- 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
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/30—Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy
- H04L9/3093—Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy involving Lattices or polynomial equations, e.g. NTRU scheme
Landscapes
- Engineering & Computer Science (AREA)
- Pure & Applied Mathematics (AREA)
- Computing Systems (AREA)
- Mathematical Analysis (AREA)
- Mathematical Optimization (AREA)
- Mathematical Physics (AREA)
- Physics & Mathematics (AREA)
- Algebra (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Error Detection And Correction (AREA)
- Storage Device Security (AREA)
Abstract
L'invention concerne un procédé sécurisé de transmission de données numériques consistant à transformer les données numériques à transmettre en une suite de nombres entiers initiaux dont chacun est inférieur à pd où p et d sont des entiers déterminés, et, pour chacun des nombres entiers initiaux, comportant les étapes consistant à déterminer des coefficients initiaux d'un polynôme initial de degré inférieur à d correspondants à l'expression du nombre entier initial en base p ; déterminer des nouveaux coefficients d'un nouveau polynôme de degré inférieur à d, image du polynôme initial par une bijection de chiffrage, ladite bijection de chiffrage correspondant à la combinaison de bijections intermédiaires, au moins une desdites bijections intermédiaires étant définie à partir d'un module de Drinfeld associé à une clé de chiffrage ; définir un nouveau nombre entier à partir des nouveaux coefficients ; et transmettre le nouveau nombre entier.
Description
PROCEDE S CURIS DE TRANSMISSION DE DONN ES NUMERIQUES
La présente invention concerne un procédé sécurisé de transmission de données numériques utilisant un chiffrage à clé publique. Dans des domaines tels que les télécommunications, le 5 réseau Internet, les communications de téléphones cellulaires, les communications sans fil, les données transmises sont véhiculées sur des canaux de transmission non sécurisés auxquels peuvent accéder des tiers non autorisés. Pour empêcher un tiers d'accéder aux données et éventuellement de les modifier, les 10 données transmises sur un canal non sécurisé sont généralement
codées avant leur transmission.
Il est connu de coder des données numériques en utilisant deux clés, une clé publique et une clé privée. Les clés sont liées de façon qu'une donnée codée au moyen de la clé 15 publique ne puisse être décodée qu'avec la clé privée. La clé publique peut alors être mise à la disposition de tous, seul le détenteur de la clé privée, qui est maintenue secrète, peut décoder les messages codés avec la clé publique. L'élaboration d'un chiffrage à clé publique revient à trouver une fonction 20 bijective de chiffrage rendue publique qui est facile à mettre en oeuvre mais dont la réciproque est difficile à calculer sans connaître certains paramètres secrets, c'est-à-dire la clé privée. De telles fonctions sont difficiles à obtenir et sont généralement basées sur des équations mathématiques qui sont 5 difficiles à résoudre. Les procédés de chiffrage les plus connus sont basés sur des opérations mathématiques de factorisation d'entiers et de calcul de logarithmes discrets sur un groupe
fini cyclique.
Un exemple de chiffrage, actuellement très utilisé et 10 basé sur le problème de la factorisation d'entiers, est le chiffrage RSA décrit par exemple dans le brevet US 4405829. Le chiffrage consiste à multiplier deux entiers premiers p et q pour fournir un entier n, et à déterminer un entier e premier avec (p-l) (q-1). Les entiers e et n correspondent aux clés 15 publiques. La clé privée d secrète est un entier tel que le produit ed est congruent à 1, modulo (p-l)(q-1). Le cryptogramme F associé à un message M à envoyer correspond à la puissance eième de M modulo n. Le message initial est retrouvé à partir du cryptogramme F en calculant la puissance dième du cryptogramme F 20 modulo n. La sécurité de ce procédé de chiffrage repose sur le fait que, pour calculer la clé privée d, il faut connaître les entiers p et q et donc être à même de factoriser l'entier n, ce qui est un problème qui, en général, est difficile à résoudre
lorsque p et q sont grands.
Le problème du calcul de logarithmes discrets, mis en oeuvre par exemple dans des chiffrages du type ElGamal, consiste à déterminer une valeur x d'un groupe G cyclique et fini tel que aX=b, o a et b sont des éléments de G. La valeur x est appelée logarithme de b sur la base a. La difficulté à déterminer x 30 dépend de la représentation de G. En particulier, le problème
est difficile à résoudre si l'ordre de G est divisible par un grand nombre premier. En pratique, le groupe G peut être le groupe multiplicatif d'un corps fini Fp comprenant les entiers modulo p, ou le groupe E(Fp) des points d'une courbe elliptique 35 E sur le corps fini Fp.
Pour estimer la sécurité apportée par un procédé de transmission de données numériques utilisant un chiffrage déterminé, on utilise généralement un ou plusieurs paramètres de référence du chiffrage. Pour un chiffrage du type RSA, le 5 paramètre de référence s utilisé est la taille en bits de l'entier n. Pour un procédé de chiffrage du type ElGamal, le paramètre de référence s utilisé est par exemple le plus petit nombre entier divisant l'ordre du groupe G. Une attaque à l'encontre d'un chiffrage consiste à retrouver un message envoyé 10 à partir du cryptogramme du message sans connaître la clé privée. Pour estimer l'efficacité d'une attaque, on détermine le nombre T d'opérations "élémentaires" maximales qui doivent être réalisées par un calculateur lors de la mise en oeuvre de l'attaque. L'efficacité de l'attaque, ou sa complexité, est 15 appréciée en déterminant l'évolution du nombre T en fonction du paramètre de référence s. On distingue essentiellement trois types de complexité: l'attaque est dite de complexité polynomiale si, T étant le nombre d'opérations maximales nécessaires pour un 20 décryptage pirate quand le paramètre de référence à une valeur s, et T' le nombre d'opérations maximales nécessaires quand le paramètre de référence a une valeur 2s, T' est inférieur à T multiplié par une constante C indépendante de s; l'attaque est dite de complexité exponentielle si T' 25 est supérieure à T élevé à une puissance ax strictement supérieure à zéro et indépendante de s; et l'attaque est dite de complexité sous- exponentielle
s'il n'est pas possible de trouver les constantes C ou a définies précédemment. Une telle complexité est intermédiaire 30 entre une complexité polynomiale et une complexité exponentielle.
Un chiffrage pour lequel il existe une attaque de complexité polynomiale ne présente pas une garantie de sécurité suffisante. En effet, pour prévenir des attaques futures, il est 35 nécessaire de choisir un paramètre de référence de très grande taille qui doit être augmenté très fréquemment. Ceci, en pratique, entraîne des durées de calcul et des espaces de mémorisation incompatibles avec une utilisation courante du
procédé de chiffrage.
Un chiffrage pour lequel il existe une attaque de
complexité sous-exponentielle présente une garantie de sécurité suffisante si le paramètre de référence est choisi suffisamment grand. Ceci peut en pratique être compatible avec une utilisation courante du chiffrage lors de la transmission de données 10 sur un canal de transmission non sécurisé.
Le cas le plus favorable est, bien sr, le cas d'un chiffrage pour lequel il n'existe que des attaques de complexité exponentielle puisqu'il permet l'utilisation d'un paramètre de
référence plus petit.
Pour les chiffrages du type RSA et ElGamal sur le groupe multiplicatif d'un corps fini Fp, il existe actuellement seulement des attaques de complexités sous-exponentielles. Pour les chiffrages du type ElGamal sur le groupe E(Fp) des points d'une courbe elliptique E sur le corps fini Fp, il n'existe 20 actuellement que des attaques exponentielles sur des courbes bien choisies. Un procédé de transmission utilisant un tel chiffrage présente donc a priori une sécurité supérieure aux autres types de chiffrage. Toutefois, un tel chiffrage demeure relativement plus difficile à mettre en oeuvre. De plus, il est 25 souhaitable de prévoir des procédés de chiffrage de divers types
pour compliquer la tâche d'éventuels pirates.
La présente invention propose un procédé sécurisé
original de transmission de données qui, par rapport aux attaques actuellement utilisées, ne présente que des attaques 30 exponentielles.
Pour atteindre cet objet, la présente invention prévoit un procédé sécurisé de transmission de données numériques consistant à transformer les données numériques à transmettre en une suite de nombres entiers initiaux dont chacun est 35 inférieur à pd o p et d sont des entiers déterminés, et, pour chacun des nombres entiers initiaux, comportant les étapes consistant à déterminer des coefficients initiaux d'un polynôme initial de degré inférieur à d correspondant à l'expression du nombre entier initial en base p; déterminer des nouveaux 5 coefficients d'un nouveau polynôme de degré inférieur à d, image du polynôme initial par une bijection de chiffrage, ladite bijection de chiffrage correspondant à la combinaison de bijections intermédiaires, au moins une desdites bijections intermédiaires étant définie à partir d'un module de Drinfeld associé 10 à une clé de chiffrage; définir un nouveau nombre entier à partir des nouveaux coefficients; et transmettre le nouveau
nombre entier.
Selon un mode de réalisation de l'invention, la détermination de la bijection intermédiaire définie à partir 15 d'un module de Drinfeld comprend les étapes consistant à déterminer la clé de chiffrage correspondant à un premier polynôme de degré inférieur à d sélectionné dans un premier anneau de polynômes, ces polynômes étant des polynômes d'une première variable à coefficients dans le corps fini des entiers 20 modulo p; sélectionner un second polynôme dans un second anneau de polynômes d'une seconde variable à coefficients dans le premier anneau, ce second anneau étant tel que, dans ce second anneau, la multiplication de la seconde variable par un élément du premier anneau est égale à la multiplication dudit élément 25 élevé à la puissance p par la seconde variable; déterminer le module de Drinfeld associé à la clé de chiffrage comme étant un troisième polynôme du second anneau égal à la somme de puissances du second polynôme multipliées par les coefficients du premier polynôme; déterminer une fonction intermédiaire du 30 premier anneau dans lui-même consistant pour un élément du
premier anneau à remplacer dans le troisième polynôme la seconde variable par ledit élément élevé à la puissance p; et déterminer ladite bijection intermédiaire comme étant égale au reste de la division de ladite fonction intermédiaire par un 35 quatrième polynôme irréductible du premier anneau de degré d.
Selon un mode de réalisation de l'invention, le second polynôme est non constant et de terme constant égal à la
première variable.
Selon un mode de réalisation de l'invention, la 5 bijection de chiffrage correspond à la combinaison d'une première bijection intermédiaire définie à partir d'un module de Drinfeld associé à une première clé de chiffrage, d'une bijection intercalaire et d'une seconde bijection intermédiaire définie à partir d'un module de Drinfeld associé à une seconde 10 clé de chiffrage.
Selon un mode de réalisation de l'invention, le second
polynôme sélectionné correspond au module de Carlitz.
Selon un mode de réalisation de l'invention, la bijection intercalaire associe à un polynôme du premier anneau 15 la somme du polynôme élevé à une puissance déterminée et d'un
polynôme déterminé dudit premier anneau de degré inférieur à d.
La présente invention prévoit également un procédé pour décoder des données numériques transmises par le procédé sécurisé de transmission de données précédemment décrit, 20 comprenant les étapes consistant à déterminer la bijection réciproque de la bijection de chiffrage à partir de la bijection réciproque intermédiaire de la bijection intermédiaire définie à partir du module de Drinfeld associé à la clé de chiffrage; déterminer, pour chaque nombre entier codé reçu, des 25 coefficients d'un polynôme codé de degré inférieur à d
correspondant à l'expression du nombre entier codé en base p; déterminer les coefficients initiaux du polynôme initial associé au polynôme codé en appliquant la bijection réciproque au polynôme codé; et définir le nombre entier initial associé au 30 nombre entier codé à partir des coefficients initiaux.
Selon un mode de réalisation de l'invention, la détermination de la bijection réciproque intermédiaire de la bijection intermédiaire définie à partir du module de Drinfeld associé à la clé de chiffrage comprend les étapes consistant à 35 déterminer une première fonction du premier anneau dans lui-même consistant pour un élément du premier anneau à remplacer dans le deuxième polynôme la seconde variable par ledit élément élevé à la puissance p; déterminer une deuxième fonction du premier anneau dans lui-même correspondant au reste de la division de 5 ladite première fonction par le quatrième polynôme; déterminer un cinquième polynôme du premier anneau correspondant au polynôme caractéristique de la deuxième fonction; déterminer une clé de décryptage correspondant à un sixième polynôme de degré inférieur à d du premier anneau tel que le produit de la 10 clé de décryptage et de la clé de chiffrage soit congruent à l'unité modulo le cinquième polynôme; déterminer le module de Drinfeld associé à la clé de décryptage comme étant un septième polynôme du second anneau égal à la somme de puissances du second polynôme multipliées par les coefficients du sixième 15 polynôme; déterminer une troisième fonction du premier anneau dans lui-même consistant pour un élément du premier anneau à remplacer dans le septième polynôme la seconde variable par ledit élément élevé à la puissance p; et déterminer ladite bijection réciproque intermédiaire comme étant égale au reste de 20 la division de ladite troisième fonction intermédiaire par le
quatrième polynôme.
Cet objet, ces caractéristiques et avantages, ainsi
que d'autres de la présente invention seront exposés en détail dans la description suivante de modes de réalisation parti25 culiers faite à titre non-limitatif en relation avec la figure
unique jointe représentant un schéma de la transmission d'un
message codé d'un émetteur vers un récepteur.
Comme cela est représenté sur la figure unique, un émetteur 10 (TRANSMITTER) souhaite envoyer un message vers un 30 récepteur 12 (RECEIVER) par l'intermédiaire d'un canal de communication 14. L'émetteur 10 dispose d'un codeur 16 (ENCRYPT) relié au canal de transmission 14. Le récepteur 12 dispose d'un
décodeur 18 (DECRYPT) relié au canal de transmission 14.
Le procédé de transmission d'un message selon 35 l'invention sera illustré par un exemple simple. Un exemple plus réaliste adapté à la transmission de données pour des systèmes de transmission de données habituels est présenté en fin de
description.
On note p un nombre premier et = Fp [T] l'anneau des polynômes à une variable T et à coefficients dans le corps Fp. Le corps Fp est le corps fini comprenant les entiers {0, 1, 2,... p-l} sur lequel les opérations arithmétiques sont réalisées modulo p. On note 1 le quotient de 4 par un polynôme f de degré d strictement supérieur à 1. Un élément de 1 est donc un 10 polynôme de degré inférieur à d qui correspond au reste de la division d'un polynôme quelconque par f. Le cardinal de 9 est pd. Dans le présent exemple, on choisit f égal à: f(T)= T3 +2T2 +l (1) Le procédé selon l'invention permet de transmettre de 15 façon sécurisée des entiers variant de 0 à pd-_. A titre d'exemple, on prendra p et d égaux à 3, ce qui permet de coder
les entiers de 0 à 26.
Le message à transmettre est converti en un ou plusieurs nombres entiers qui sont alors divisés en blocs de 20 messages M correspondant chacun à un entier inférieur à pd-1.
Le nombre M est transformé en un polynôme t élément de 2en utilisant l'écriture de M en base p. A titre d'exemple, on choisit un bloc de message M égal à 17. On obtient alors: M=1x32 +2x3+2 (2) et donc:
= T2 +2T +2 (3)
Le procédé de transmission selon l'invention utilise une fonction de chiffrage y de 1 dans lui-même définie de la façon suivante: /(Z) =(c1 ol Goc2)(Z) (3) Nous allons maintenant décrire l'obtention des fonctions 9c1 et c2 On note 4{i} l'anneau des polynômes à une variable T et à coefficients dans l'anneau A pour lequel on utilise la 35 règle de commutation suivante: k aapk k (5) On définit un module de Drinfeld comme un morphisme s de Fp-algèbre de A dans A{} telle que p(T) est un polynôme non constant et de terme constant T. Pour un élément a de A tel que: m a = aiTi (6) i=O o m est un entier quelconque, on obtient: m m q(a) = aip(T') = - ap(T)i (7) i=o i=o Le module de Drinfeld p est donc complètement défini 10 une fois que 9(T) a été choisi. L'expression de p(T) est donnée par la relation suivante: t (p(T) = lk (8) k=0 O k est un élément de A, et par définition 0 est égal à T. Il existe une définition plus générale des modules de Drinfeld 15 comme des morphismes d'un anneau commutatif dans un anneau non
commutatif formé par des endomorphismes d'un objet de la géométrie algébrique.
A titre d'exemple, on choisit comme module de Drinfeld le module de Carlitz défini par: p(T) = T+T (9) A l'élément 9(a) de _A{}, on associe la fonction 9a de dans lui-même de la façon suivante: m ?(a) = (hiT' (10) i=O m (pa (Z) = ZhizP (11) i=O
A ça correspond la fonction (a de L dans lui-même.
On peut montrer qu'il existe un polynôme unitaire f tel que a1 _=9a2 si et seulement si a1 -a2 modulo f. Une application qa est alors bijective si et seulement si a est premier avec fm et dans ce cas l'application inverse est qa' O
a' appartient à d et est tel que aa'- 1 modulo fi.
On peut montrer que le polynôme fm est égal au polynôme caractéristique de la matrice Am de l'application (T exprimée dans l'espace vectoriel { 1, ,...,Td}. Dans le présent exemple, à partir des équations (9) et (11), on obtient:
9T(1) =T+1 (12)
___ - 3 2 2 ( 3
(T(T)=T3 +T2 =2T +2 (13)
T(T2)= T6 +T3 =2T+2 (14)
On en déduit la matrice de l'application PT dans l'espace vectoriel {,T, T2}: l 2 2" Am = 1 0 2 (15) 0 2 0 Le polynôme f', égal au polynôme caractéristique de la 15 matrice Am, est donné par: l-T 2 2 fm =-det 1 -T 2 =T3 +2T2 (16)
0 2 -T
k - Y On choisit alors des polynômes c1 et c2 de d premiers avec fr, par exemple: c1 =T2+T+2 (17) c2 =2T2+T+l (18) Pour calculer (cp et (c2, on utilise le fait que pour un polynôme a de degré strictement inférieur à d, on peut écrire d'après l'équation (7): d-1 9a(Z) = Eai(pT (z) (19) i=0 Les termes WTi(z) sont reliés par la relation de récurrence:
91 (Z) = Z
qTi (Z) = T(PTi_1 (Z)) (20) (21) pour i>0 A partir des équations (9) et (11), on peut calculer
les expressions des polynômes dans L de (pc et (Pc2.
1Pl(z) = z (22) (pT(Z)=z3 +Tz (23) 3p (z)= (T(z3 +Tz)=z9 +(T2 +T+2)z3 + T2z (24) D'après l'équation (19), on en déduit: (pcl(Z) =(pT2 (z) + T 2p(z)2 (25) =z9 +(T2 + T)z3 +(T2 +T+2)z (pc2 (z) =2(pT2 (z) + (PT(Z) + (Pl (Z26) (26) 109 23 2 = 2z 9+(2T2 +2T+2)z3 +(2T2 +T+1)z D'après l'équation (8), et pour tout polynôme de P(z) de /[z] du type: m P(z)= =Eciz' (27) i=O on peut écrire: t m_ k k 9(PT(P(Z))= Z EZkIp zip (28) k=0i=0 On peut alors déterminer la fonction de chiffrage y donnée par l'équation (3) en prenant conmme fonction 6 une fonction bijective simple et rapide à calculer donnée sous la forme d'un polynôme. A titre d'exemple, en choisissant un entier 20 e inférieur à pd-1, non divisible par p et premier avec pd-1, la fonction 6 peut être de la forme: CY(z) = Ze + (29) o 6 est un élément pris au hasard dans E. A partir des expressions de (Pcl(z), c2(z) données par 25 les équations (25), (26), on obtient l'expression de G(qc2)(Z)
puis l'expression de y(z). On notera que dans ce calcul on remplace chaque terme de la forme yzm, o m est supérieur à pd, par le terme yzr, o r est le reste de la division euclidienne de m par pd-1. Le polynôme y finalement obtenu est donc de 30 degré borné par pd.
D'après ce qui précède, en prenant dans l'expression de 6, donnée par l'équation (29), e est égal à 7 et 6 égal à T2+ T +1, on obtient: 2 2 1 1 9 1 5 2 1 l (z) = (T2 + T +2)z + (T +2)z9 + (T +2)z5 +(2T2 +2T)z_
2 9 2 7 2 5 3 2 2
+2T z +(T +T)z +2T2z5 +(T+2)z +(T +T)z+T +2T (30) Dans le présent exemple, pour transmettre le message M, on détermine i le polynôme de l'équation (3), puis on détermine le polynôme codé X à partir du polynôme t de la façon 10 suivante: X =,() = W(T2 + 2T + 2) = 2T2 +T +l1 (31) ce qui correspond au message codé C suivant: C=1+1x3+2x3 =22 (32)
Le message C est alors transmis au récepteur 12 par le 15 canal de transmission 14.
La clé publique correspond à la fonction w qui est rendue publique. De façon classique dans les procédés sécurisés de transmission de données par chiffrage, l'émetteur 10 qui souhaite transmettre le message M peut se procurer le polynôme 20 y auprès d'une autorité de confiance. Au moyen du codeur 16, l'émetteur 10 peut alors transmettre au récepteur 12 par l'intermédiaire du canal de transmission 14 le message codé C. Les clés privées détenues uniquement par le récepteur
12 correspondent aux expressions des polynômes c1, c2, 6 et de 25 l'entier e.
Pour décoder le message codé C, le récepteur 12 a besoin de déterminer la fonction - 1 réciproque de la fonction y La réciproque de la fonction a est obtenue en 30 déterminant un entier h tel que eh-1 modulo pd-1. La réciproque c-1 de c est alors donnée par: C -1(z) = (z - 6)h (33) Comme cela a été expliqué précédemment, les réciproques des fonctions c, c2 sont obtenues à partir des polynômes c1 et c2 de degré strictement inférieur à d tels que clc =1 modulo f, et c2c2 1 modulo fi. On obtient: cl =2T+2 (34) c2 =T2 +2T+1 (35) i= ( c2 CI
1 2 2
(p, o -)(2T +1) =p, (2T+I)=T +2T+2 c2 C2 En pratique, l'entier p est choisi très grand par rapport à d. Toutefois, afin d'optimiser l'efficacité des calculs, il est souhaitable que p soit inférieur à 232 afin que 10 les entiers modulo p utilisés par le présent procédé puissent être mémorisés sur un "mot long" de 32 bits. La taille du polynôme R(z) augmentant avec l'exposant e apparaissant dans l'expression de C donnée par l'équation (29), il est préférable que l'exposant e soit petit. En outre, e devant être premier 15 avec pd-1, e est impair. Des choix raisonnables sont e=5 ou
e=7. Pour une utilisation compatible avec d'autres procédés sécurisés de transmission par chiffrage à clé secrète, notamment le procédé AES (Advanced Encryption Standard), il est souhaitable que pd soit supérieur à 2160 c'est-à-dire 20 sensiblement 1018.
Un exemple réaliste du procédé de transmission selon l'invention est le suivant: p = 1073741477 d=6 f(T)= T5 + 13775595T4 + 788683423T3 + 305120033T2
+ 585880735T + 686097596
e = 5 e=5
9(T) = +T
c1 =437605822Ts +392755332T4 +925212769T3 30 +890100049T2 +541320556T + 287847229 c2 = 246570738T5 +49624932T4 +883670503T3 + 909401730T2 + 64842034T + 732002645 ô =842509909Ts +193124111T4 +551953889T3
+843139803T2 +188647249T +872485075
Avec de tels paramètres, y(z) est un polynôme comportant 235 termes et le stockage des données de chiffrage
nécessite environ 26 kilooctets.
La présente invention propose un procédé de transmis5 sion de données particulièrement sr. En effet, les attaques actuellement connues sont des attaques de complexité exponentielle par rapport au procédé de transmission selon la présente invention. Bien entendu, la présente invention est susceptible de 10 diverses variantes et modifications qui apparaîtront à l'homme de l'art. En particulier, des traitements numériques supplémentaires peuvent être réalisés sur les messages codés avant leur transmission.
Claims (8)
1. Procédé sécurisé de transmission de données numériques consistant à: transformer les données numériques à transmettre en une suite de nombres entiers initiaux dont chacun est inférieur 5 à pd o p et d sont des entiers déterminés, et, pour chacun des nombres entiers initiaux, comportant les étapes suivantes: déterminer des coefficients initiaux d'un polynôme initial de degré inférieur à d correspondant à l'expression du nombre entier initial en base p; déterminer des nouveaux coefficients d'un nouveau polynôme de degré inférieur à d, image du polynôme initial par une bijection de chiffrage, ladite bijection de chiffrage correspondant à la combinaison de bijections intermédiaires, au moins une desdites bijections intermédiaires étant définie à 15 partir d'un module de Drinfeld associé à une clé de chiffrage; définir un nouveau nombre entier à partir des nouveaux coefficients; et
transmettre le nouveau nombre entier.
2. Procédé selon la revendication 1, dans lequel la 20 détermination de la bijection intermédiaire définie à partir d'un module de Drinfeld comprend les étapes suivantes: déterminer la clé de chiffrage correspondant à un premier polynôme de degré inférieur à d sélectionné dans un premier anneau de polynômes, ces polynômes étant des polynômes 25 d'une première variable à coefficients dans le corps fini des entiers modulo p; sélectionner un second polynôme dans un second anneau de polynômes d'une seconde variable à coefficients dans le premier anneau, ce second anneau étant tel que, dans ce second 30 anneau, la multiplication de la seconde variable par un élément du premier anneau est égale à la multiplication dudit élément élevé à la puissance p par la seconde variable; déterminer le module de Drinfeld associé à la clé de chiffrage comme étant un troisième polynôme du second anneau égal à la somme de puissances du second polynôme multipliées par les coefficients du premier polynôme; déterminer une fonction intermédiaire du premier anneau dans lui-même consistant pour un élément du premier 5 anneau à remplacer dans le troisième polynôme la seconde variable par ledit élément élevé à la puissance p; et déterminer ladite bijection intermédiaire comme étant
égale au reste de la division de ladite fonction intermédiaire par un quatrième polynôme irréductible du premier anneau de 10 degré d.
3. Procédé selon la revendication 2, dans lequel le second polynôme est non constant et de terme constant égal à la
première variable.
4. Procédé selon la revendication 2, dans lequel la 15 bijection de chiffrage correspond à la combinaison d'une
première bijection intermédiaire définie à partir d'un module de Drinfeld associé à une première clé de chiffrage, d'une bijection intercalaire et d'une seconde bijection intermédiaire définie à partir d'un module de Drinfeld associé à une seconde 20 clé de chiffrage.
5. Procédé selon la revendication 2, dans lequel le
second polynôme sélectionné correspond au module de Carlitz.
6. Procédé selon la revendication 4, dans lequel la bijection intercalaire associe à un polynôme du premier anneau 25 la somme du polynôme élevé à une puissance déterminée et d'un
polynôme déterminé dudit premier anneau de degré inférieur à d.
7. Procédé pour décoder des données numériques transmises par un procédé selon l'une des revendications 2 à 6,
comprenant les étapes suivantes: déterminer la bijection réciproque de la bijection de chiffrage à partir de la bijection réciproque intermédiaire de la bijection intermédiaire définie à partir du module de Drinfeld associé à la clé de chiffrage; déterminer, pour chaque nombre entier codé reçu, des coefficients d'un polynôme codé de degré inférieur à d correspondant à l'expression du nombre entier codé en base p; déterminer les coefficients initiaux du polynôme 5 initial associé au polynôme codé en appliquant la bijection réciproque au polynôme codé; et définir le nombre entier initial associé au nombre
entier codé à partir des coefficients initiaux.
8. Procédé selon la revendication 7, dans lequel la 10 détermination de la bijection réciproque intermédiaire de la bijection intermédiaire définie à partir du module de Drinfeld associé à la clé de chiffrage comprend les étapes suivantes: déterminer une première fonction du premier anneau dans lui-même consistant pour un élément du premier anneau à 15 remplacer dans le deuxième polynôme la seconde variable par ledit élément élevé à la puissance p; déterminer une deuxième fonction du premier anneau dans lui-même correspondant au reste de la division de ladite première fonction par le quatrième polynôme; déterminer un cinquième polynôme du premier anneau correspondant au polynôme caractéristique de la deuxième fonction; déterminer une clé de décryptage correspondant à un sixième polynôme de degré inférieur à d du premier anneau tel 25 que le produit de la clé de décryptage et de la clé de chiffrage soit congruent à l'unité modulo le cinquième polynôme; déterminer le module de Drinfeld associé à la clé de décryptage comme étant un septième polynôme du second anneau égal à la somme de puissances du second polynôme multipliées par 30 les coefficients du sixième polynôme; déterminer une troisième fonction du premier anneau dans lui- même consistant pour un élément du premier anneau à remplacer dans le septième polynôme la seconde variable par ledit élément élevé à la puissance p; et
déterminer ladite bijection réciproque intermédiaire comme étant égale au reste de la division de ladite troisième fonction intermédiaire par le quatrième polynôme.
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
FR0212429A FR2845542B1 (fr) | 2002-10-07 | 2002-10-07 | Procede securise de transmission de donnees numeriques |
PCT/FR2003/002974 WO2004032412A1 (fr) | 2002-10-07 | 2003-10-07 | Procede securise de transmission de donnees numeriques |
AU2003299160A AU2003299160A1 (en) | 2002-10-07 | 2003-10-07 | Secure method for digital data transmission |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
FR0212429A FR2845542B1 (fr) | 2002-10-07 | 2002-10-07 | Procede securise de transmission de donnees numeriques |
Publications (2)
Publication Number | Publication Date |
---|---|
FR2845542A1 true FR2845542A1 (fr) | 2004-04-09 |
FR2845542B1 FR2845542B1 (fr) | 2004-12-24 |
Family
ID=32011468
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
FR0212429A Expired - Fee Related FR2845542B1 (fr) | 2002-10-07 | 2002-10-07 | Procede securise de transmission de donnees numeriques |
Country Status (3)
Country | Link |
---|---|
AU (1) | AU2003299160A1 (fr) |
FR (1) | FR2845542B1 (fr) |
WO (1) | WO2004032412A1 (fr) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
GB2480260A (en) * | 2010-05-10 | 2011-11-16 | Etsem Ltd | An algorithm for compressing and decompressing a data sequence using polynomials |
-
2002
- 2002-10-07 FR FR0212429A patent/FR2845542B1/fr not_active Expired - Fee Related
-
2003
- 2003-10-07 WO PCT/FR2003/002974 patent/WO2004032412A1/fr not_active Application Discontinuation
- 2003-10-07 AU AU2003299160A patent/AU2003299160A1/en not_active Abandoned
Non-Patent Citations (1)
Title |
---|
THOMAS SCANLON: "Public key cryptosystems based on Drinfeld modules are insecure", JOURNAL OF CRYPTOLOGY, no. 14, 2001, pages 225 - 230, XP002245785 * |
Also Published As
Publication number | Publication date |
---|---|
FR2845542B1 (fr) | 2004-12-24 |
AU2003299160A1 (en) | 2004-04-23 |
WO2004032412A1 (fr) | 2004-04-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP2232765B1 (fr) | Procede et entite de chiffrement symetrique probabiliste | |
US7221762B2 (en) | Authenticated ID-based cryptosystem with no key escrow | |
EP3091689A1 (fr) | Procédé de génération d'une signature de message à partir d'un jeton de signature chiffré à l'aide d'une fonction de chiffrement homomorphique | |
FR2788650A1 (fr) | Procede cryptographique a cles publique et privee | |
EP2377268B1 (fr) | Codage de points d'une courbe elliptique | |
EP1611709B1 (fr) | Procede et systeme de cryptage | |
WO2011101598A1 (fr) | Procede cryptographique de communication d'une information confidentielle | |
FR2737370A1 (fr) | Procede de communication cryptographique | |
WO2008095784A1 (fr) | Procede de codage de donnees | |
EP2179535B1 (fr) | Procede asymetrique de chiffrement ou de verification de signature | |
FR2892583A1 (fr) | Procede de transmission securisee de donnees | |
CN110912673B (zh) | 具有双解密机制的加性同态加解密方法 | |
FR2773027A1 (fr) | Procede de signature numerique | |
EP0935858A1 (fr) | Procede de decorrelation de donnees | |
FR2845542A1 (fr) | Procede securise de transmission de donnees numeriques | |
EP3840282A1 (fr) | Procédé de traitement cryptographique, dispositif électronique et programme d'ordinateur associés | |
EP1639451A2 (fr) | Procédé de contre-mesure par masquage de l'accumulateur | |
Apau et al. | Data hiding in audio signals using elliptic curve cryptography, huffman code algorithm and low-bit encoding | |
WO2007057610A1 (fr) | Systeme et procede cryptographique d'authentification ou de signature | |
Park et al. | On the security of reduced versions of 3-pass HAVAL | |
KR20070049823A (ko) | 전력공격에 안전한 모듈라 지수승 연산 및 상수배 곱셈연산방법 | |
Xu et al. | Threshold homomorphic encryption from provably secure NTRU | |
WO2004111833A1 (fr) | Procede de contre-mesure dans un composant electronique | |
Alexandrova et al. | Secret images sharing scheme using two-variable one-way functions | |
EP3929726A1 (fr) | Procede de traitement cryptographique,dispositif electronique et programme d'ordinateur associes |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
ST | Notification of lapse |
Effective date: 20060630 |