FR2912020A1 - Procede pour securiser la transmission d'informations. - Google Patents

Procede pour securiser la transmission d'informations. Download PDF

Info

Publication number
FR2912020A1
FR2912020A1 FR0700555A FR0700555A FR2912020A1 FR 2912020 A1 FR2912020 A1 FR 2912020A1 FR 0700555 A FR0700555 A FR 0700555A FR 0700555 A FR0700555 A FR 0700555A FR 2912020 A1 FR2912020 A1 FR 2912020A1
Authority
FR
France
Prior art keywords
information
matrix
address
network
code
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
FR0700555A
Other languages
English (en)
Other versions
FR2912020B1 (fr
Inventor
Cedric Tavernier
Herve Aiache
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.)
Thales SA
Original Assignee
Thales SA
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 Thales SA filed Critical Thales SA
Priority to FR0700555A priority Critical patent/FR2912020B1/fr
Priority to PCT/EP2008/050831 priority patent/WO2008095788A1/fr
Priority to US12/524,608 priority patent/US8347084B2/en
Priority to EP08708170A priority patent/EP2119096A1/fr
Priority to KR1020097015692A priority patent/KR101527979B1/ko
Publication of FR2912020A1 publication Critical patent/FR2912020A1/fr
Application granted granted Critical
Publication of FR2912020B1 publication Critical patent/FR2912020B1/fr
Active legal-status Critical Current
Anticipated expiration legal-status Critical

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/30Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy
    • 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/30Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy
    • H04L9/304Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy based on error correction codes, e.g. McEliece
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0407Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the identity of one or more communicating identities is hidden
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0428Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/18Network architectures or network communication protocols for network security using different networks or channels, e.g. using out of band channels
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/02Protecting privacy or anonymity, e.g. protecting personally identifiable information [PII]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/42Anonymization, e.g. involving pseudonyms

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computing Systems (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Mobile Radio Communication Systems (AREA)
  • Error Detection And Correction (AREA)

Abstract

Procédé permettant de sécuriser la transmission d'informations dans un réseau de communications comportant plusieurs noeuds, caractérisé en ce qu'il comporte en combinaison au moins les étapes suivantes:o Un noeud émetteur de l'information encode l'information avec un code donné,o Une erreur de poids donné est ajoutée à l'information chiffrée,o L'information chiffrée et l'erreur sont fractionnées en un nombre de portions qui est sensiblement égal à un nombre r choisi de routes possibles pour transmettre de l'information dans le réseau,o On chiffre l'adresse de destination,o Pour chaque portion, on associe une information de contrôle permettant la reconstruction du message au niveau de la destination et l'adresse chiffrée du noeud de destination,Les différents ensembles composés chacun d'une portion d'information chiffrée, d'une information de contrôle et de l'adresse chiffrée du noeud destinataire sont envoyés en parallèle sur les r routes choisies.

Description

PROCEDE POUR SECURISER LA TRANSMISSION D'INFORMATIONS
La présente invention concerne la sécurité dans les réseaux.
Les champs d'application de la présente invention concernent, notamment, le protocole de routage, l'anonymat et la protection de l'information, dans les réseaux de communication filaire et les réseaux sans fils.
Dans les réseaux sans fil, les contraintes sont élevées, il y a une faible capa-cité de calcul, des problèmes de transmission (canaux bruités) et des flux faibles (weak flow). Un des problèmes est de trouver une solution efficace qui pourrait être voisine du temps réel (faible latence) avec de la protection de l'information, c'est-à-dire qu'un attaquant ne peut comprendre l'information lorsqu'il par- 15 vient à l'intercepter, une garantie d'anonymat, c'est-à-dire qu'un attaquant ne peut savoir qui parle avec qui et la conservation du secret ou privacy sans affecter la qualité du trafic c'est-à-dire sans trop ajouter de latence. Les systèmes classiques de chiffrement avec des clés publiques permettant de chiffrer l'adresse du noeud destinataire et l'information elle-même, sont en 20 général très lents par rapport aux besoins des applications. L'art antérieur divulgue plusieurs solutions qui utilisent des systèmes de chiffrement à clé privé. Toutefois, ces solutions n'offrent pas une sécurité suffisante, car chaque noeud du réseau doit connaître la clé privée des autres. Ainsi, lorsqu'un noeud est corrompu, la sécurité du réseau s'écroule. 25 Le document de William Luh, Deepa Kundur, "Distributed Privacy for Visual Sensor Networks via Markov Shares". ln Proceedings of the Second IEEE Workshop on Dependability and Security in Sensor Networks and Systems, 2006 divulgue une méthode qui divise l'information avant de la transmettre. Cette solution protège l'information, uniquement si on fait l'hypothèse que 30 l'attaquant peut intercepter une petite fraction de l'information, et cette hypothèse est peu probable dans un contexte sans fil. Le second inconvénient est
l'anonymat : celui-ci n'est pas garanti puisque les auteurs ne donnent aucune solution pour cacher les adresses des noeuds. Le document de V. M. Sidel'nikov. "A public-key cryptosystem based on Reed-Muller codes Discrete Mathematics and Applications, 4(3):191-207, 1994 décrit aussi un système de chiffrement à clé publique qui utilise la propriété des codes de Muller et conserve le principe d'ajouter une erreur aléatoire de poids fixée. La performance d'un tel algorithme est encore faible lorsque l'on considère des applications temps réel ou proches du temps réel. Cet article divulgue un algorithme qui est plus restrictif. La longueur de la clé io est toujours importante et la complexité de chiffrement d'un message est encore importante si l'on souhaite conserver une sécurité élevée. Le dernier point est que ce système de chiffrement à clé publique est probabiliste. II existe une probabilité non nulle que le destinataire du message ne réussisse à déchiffrer le message. 15 A l'heure actuelle, les systèmes décrits dans l'art antérieur ne résolvent pas de façon suffisante les problèmes de protection de la transmission dans un réseau de transmission d'informations sans fil et ne s'intéressent pas au problème de l'anonymat de l'émetteur et du récepteur. 20 L'objet de l'invention concerne un procédé permettant de sécuriser la transmission d'informations dans un réseau de communication comportant plu-sieurs noeuds, caractérisé en ce qu'il comporte au moins en combinaison les étapes suivantes : 25 - transmettre une information codée à laquelle une erreur est ajoutée, en plu-sieurs fractions sur plusieurs chemins indépendants au sein du réseau, chaque fraction étant associée à l'adresse chiffrée du noeud destinataire et à une information de contrôle permettant de reconstituer l'information transmise.
30 Le procédé selon l'invention peut se résumer notamment par les étapes sui-vantes :
o coder l'information, par exemple, avec un code de Reed Solomon de longueur n et de dimension k, ou tout autre code présentant des propriétés semblables (distance minimale et difficulté de reconstruire un mot émis trop bruité) à ce dernier. L'information chiffrée comprend aussi l'adresse du noeud du destinataire et des informations utiles pour la reconstruction du message, o partager l'information et la distribuer dans plusieurs paquets différents avant de la transmettre. Le nombre de portions ou fractions distribuées dépend des paramètres de sécurité, des routes possibles pour io transmettre des informations dans le réseau. Le protocole de division utilisé génère plusieurs portions composées d'une partie de l'information chiffrée et d'une information de contrôle comprenant au moins la position de cette partie ou portion dans l'information initiale chiffrée et de l'adresse chiffrée du noeud destinataire de l'information. 15 Selon un mode de réalisation, le procédé ajoute une erreur dépendant no- tamment de la capacité du canal et des paramètres de sécurité visés par une application donnée. Le procédé peut aussi ajouter du trafic supplémentaire ne comprenant pas d'informations utiles afin d'optimiser la protection de l'information. Cette information supplémentaire rend plus difficile l'interception des parties de l'information chiffrées car elle rend non distinguable une vraie communication entre 2 utilisateurs des fausses communications du réseau.
Le procédé selon l'invention présente notamment les avantages suivants: 25 o Une solution qui est compatible avec un canal bruité, qui protège l'information puisqu'il n'est pas possible de différencier l'information utile du trafic supplémentaire introduit, o L'anonymat de l'utilisateur émetteur et de l'utilisateur récepteur, les adresses des noeuds étant chiffrées, 30 o L'utilisation d'un nombre de chemins différents pour transmettre les différentes parties de l'information chiffrées augmente la difficulté pour un attaquant d'intercepter toutes les parties et de remonter à l'information initiale. o Le procédé selon l'invention peut être implémenté au niveau le plus bas, à savoir le signal porteur de l'information échangée entre les noeuds,
D'autres caractéristiques et avantages de la présente invention apparaîtront mieux à la lecture de la description qui suit d'un exemple de réalisation don-né à titre illustratif et nullement limitatif annexé des figures qui représentent : io o La figure 1, un schéma de rappel du codage par le code de Reed- Solomon, o La figure 2, un synoptique de la division de l'information codée avant transmission et de la répartition des portions d'information ainsi obtenues dans les trames à transmettre, 15 o La figure 3, l'ajout d'une erreur aléatoire de poids de Hamming fixé, o La figure 4, un exemple de mise en oeuvre du procédé dans le cas d'une transmission d'information entre deux noeuds d'un réseau com- prenant des noeuds intermédiaires, o La figure 5, la génération d'un exemple de matrice de codage, 20 o La figure 6, la génération de la clé publique et de la clé privée à partir de la matrice décrite en figure 5, o La figure 7, un schéma permettant la réduction de la longueur de la clé publique générée à la figure 6, o Les figures 8 et 9, un exemple de structure de codage et de décodage 25 avec utilisation de la clé trouvée à la figure 6.
Afin de mieux faire comprendre les principes mis en oeuvre dans l'invention, la description est donnée pour un réseau de communication comprenant plu-sieurs noeuds Mi reliés entre eux par des arêtes, tel que celui décrit à la fi- 30 gure 4.
En résumé, l'idée de la présente invention concerne un procédé permettant de transmettre de l'information en toute sécurité dans un réseau comprenant plusieurs noeuds, chacun des noeuds étant pourvu d'un processeur adapté à mettre en oeuvre les étapes décrites ci-après.
L'information devant être transmise d'un noeud source A vers un noeud destinataire B, elle peut passer par plusieurs noeuds appelés noeuds intermédiaires Mi dans la description. L'information INF à transmettre se présente sous le format d'une trame de données. Le noeud source ou émetteur A code l'information, par exemple, en io utilisant un code de Reed-Solomon, ou tout autre code présentant des propriétés similaires à ce dernier (en terme de distance minimale et de difficulté de décoder un mot du code trop bruité). La figure 1 résume le codage de Reed-Solomon connu de l'Homme du métier. La figure 1 schématise un code non systématique de Reed-Solomon de Ion- 15 gueur N et dimension k, RS[N,k,N-k+1], défini sur un alphabet de dimension 8 (le corps de Galois GF(2,8), chaque élément de cet alphabet peut être représenté par un octet). Code de Reed-Solomon = RS[longueur = N,dimension = k, distance minimale = N-k+1 ]. 20 Ce code est défini sur un corps fini GF(p,l), où p est un nombre premier, dans l'exemple p=2 et 1=8. Pour coder un message m, le procédé exécute un produit entre le message qui est une matrice comprenant une rangée et k colonnes par une matrice génératrice de RS[N,k,N-k+1], le résultat est un vecteur codé de longueur N 25 octets. Le message est égal a0P0(X)+a1 PI (X)+ .. + ak-1 Pk-1(X) = P(X). Ainsi, le message codé est: (P(0),P(1),P(2), P(N-1)) Le procédé additionne une erreur aléatoire de poids de Hamming Tb à ce vecteur codé. L'étape d'ajout d'erreur est illustrée, par exemple, en figure 3. Finalement, on obtient le nouveau message codé que l'on va diviser de façon 30 à le transmettre sur plusieurs chemins du réseau indépendants les uns des autres.
L'information codée après cette première étape est divisée en plusieurs fractions de message. Le procédé utilise une procédure de fractionnement au-dessus du protocole de routage. Ceci permet, notamment, d'augmenter la difficulté qu'un attaquant reconstruise la totalité de l'information. Le nombre de fractions ou portions d'information est déterminé, par exemple, de la manière suivante : un noeud émetteur détermine au moyen d'un algorithme de calcul connu de l'Homme du métier, toutes les routes possibles pour ache-miner des informations dans le réseau. Le nombre de portions d'information peut être égal au nombre de routes possibles ainsi trouvées. Le nombre de portions peut aussi tenir compte du nombre de routes possibles, de la qualité de trafic, des routes trop empruntées, de la bande passante, etc. L'algorithme de calcul de route est connu de l'Homme du métier et ne sera donc pas détaillé. Le nombre de portions est dans tous les cas inférieur à une valeur donnée. is Un algorithme de calcul de route est par exemple décrit dans le document de E. Dijkstra: "A Note on Two Problems in Connexion with Graphs", Numerische Mathematik, Vol. 1, 1959, pp. 269-271 ou dans le document de Richard Bellman: On a Routing Problem, in Quarterly of Applied Mathematics, 16(1), pp.87-90, 1958. 20 Le procédé selon l'invention utilise une procédure de fractionnement au-dessus du protocole de routage. Ainsi, chaque noeud Si qui appartient à un chemin entre la source A et la destination B doit déchiffrer l'adresse du noeud de destination et chiffrer avec l'adresse du noeud, le noeud suivant de ce chemin. La configuration où toutes les routes entre l'émetteur et le desti- 25 nataire sont disjointes, garantit une plus grande sécurité dans les communications. La figure 4 donne un exemple de transmission d'un message codé entre un utilisateur A et un destinataire B. La structure d'une trame utilisée pour transmettre les messages est représentée dans le tableau ci-dessous. Elle possède, par exemple, une longueur 30 de N octets.
Ainsi, si le procédé peut envoyer l'information en utilisant t chemins différents, alors il doit coder t messages m qui appartiennent à une seule communication de façon à transmettre t trames sur les t chemins déterminés.
Dans le cas où le message total émis par l'émetteur S possède une longueur qui est différente d'un multiple du nombre de chemins t déterminé, le procédé utilise une technique connue de l'Homme du métier dite de bourrage (en anglais padding). io Cette technique permet de compléter le message en ajoutant plusieurs octets égaux à zéro. Le procédé additionne cette information à la place réservée pour le contrôle d'information. Le champ de contrôle d'information peut être complété en fonction des besoins de l'application, par exemple, si l'information doit être insérée à un niveau très bas de l'application, alors is l'information de contrôle devrait être plus importante que si l'implémentation est faite à un niveau très élevé. Cette information de contrôle comporte, par exemple, les informations de synchronisation, de manière plus générale, toute information pouvant être utile à la reconstruction du message. Ces in-formations de contrôle étant connues de l'Homme du métier, ne seront pas 20 détaillées de manière exhaustive. chiffrement de l'information de contrôle et de l'adresse du noeud Le procédé utilise ici un système de chiffrement à clé publique. Ce chiffre-ment peut chiffrer des messages de taille dim = u F(i=o _> i=r) Binomial(i,m) N octets d'information codée. Ces N octets représentent t paquets de Nit octets. Chaque paquet possède une place déterminée dans le message initial L'adresse chiffrée noeud destinateur. Information de contrôle: un entier qui représente la place des paquets dans chaque message code d'origine m et le nombre de messages codés consécutifs. Ces informations sont chiffrées avec un système de clé publique. puisqu'il est exactement la dimension de la clé publique du système de chiffrement publique Mceliece-Sidelnikov. Par exemple, si m = 9, u = 4 alors la dimension est égal à184; si m = 10 et u = 2, alors la dimension est égal à 112.
Ces paramètres permettent de garantir une bonne sécurité. Dans ce mes-sage de dim bits le procédé chiffre l'adresse du noeud de destination D, l'information de contrôle et une variable aléatoire de taille R. La valeur de R dépend de la fréquence mobile (moving) des clés privée et publique de façon à conserver un niveau de sécurité élevé. Typiquement, pour R fixé, le pro- lo cédé chiffre 2R fois sans altérer le niveau de sécurité. Ainsi, le message chiffré aura une longueur L = u (2m-E) où E est le nombre d'effacements à considérer comme il est décrit ci-après à la figure 7. Par exemple, si m = 9, u = 4, E = 200, alors dim = 184, L = 1248 et il est possible de considérer un nombre d'erreurs égal à 220. Ces paramètres 15 permettent d'obtenir une sécurité plus grande que 280.
Le procédé comprend une étape au cours de laquelle on ajoute une erreur de poids déterminée notamment en tenant compte de la capacité du canal. Cette étape est représentée à la figure 3. Le procédé évalue de façon dynamique la capacité du canal (décodage adaptatif), puis en fonction de la qualité du canal, le procédé additionne des erreurs aléatoires de poids fixé afin de fixer la sécurité d'un point de vue de la reconstruction de l'information. Par exemple, le message codé ayant une longueur n et la capacité du canal s'exprimant C= '/2 + c, on ajoute au message une erreur aléatoire de poids 25 fixé n-sgrt(kn)-(1/2- E)n où sqrt représente la racine carrée, k est la dimension du code de Reed-Solomon. Des algorithmes efficaces de décodage par liste existent pour les codes Reed-Solomon et peuvent corriger n-sqrt(kn) erreurs avec une complexité de l'ordre de n2log(n) opérations dans le corps Fq, Il en existe aussi qui assure 30 un décodage souple.
Le chiffrement est un chiffrement à clé publique, connu de l'Homme du métier dont les principes sont rappelés ci-après. Chaque noeud Si possède une adresse Ai, une clef publique Kpvi et une clef privée associée Kpri. Soit fun, la fonction de chiffrement à clef publique. Si S1 est le noeud émetteur d'une information INF et S4 est le destinataire. La route est alors composée des noeuds S2 et S3, S1 envoie donc le message chiffré suivant (fun(Kpv4,(INF,A1)),fun(Kpv3,A4),fun(Kpv2,A3)) à S2. Le noeud S2 effectue alors l'opération fun(Kpr2,fun(Kpv2,A3)) = A3, S2 peut donc envoyer le message (fun(Kpv4,(INF,A1)),fun(Kpv3,A4)) à S3. De même io S3 déduit l'adresse de destination finale A4 = fun(Kpr3,fun(Kpv3,A4)). Finalement S4 reçoit l'information fun(Kpv4,(INF,A1)) de S3, S4 effectue l'opération finale fun(Kpr4,fun(Kpv4,(INF,A1))) = (INF,A1). S4 reçoit donc l'information et l'adresse de la source. Le protocole de routage utilisé est adapté pour déterminer plusieurs chemins 15 entre une source S et une destination D. Ainsi, basé sur la connaissance d'un routage global, il utilise un algorithme de décision efficace pour offrir une meilleure gestion des ressources, ceci dans le but d'augmenter les performances de la transmission de flux.
20 La figure 4 schématise un exemple de mise en oeuvre du procédé selon l'invention dans le cas de deux utilisateurs dans un réseau Alice et Bob souhaitant communiquer. Alice A veut transmettre un message m à Bob B. Alice a besoin de trouver des chemins différents pour transmettre l'information, elle code le message en utilisant sa clé publique. Après codage et à l'aide d'un 25 algorithme adapté, elle transmet les portions de message accompagnées de l'adresse codée du noeud destinataire et de l'information de contrôle, ces deux dernières étant codées. Chaque noeud qui appartient au chemin entre A et B doit déchiffrer l'adresse de B avec sa clé privée et coder l'adresse avec la clé publique du noeud sui-30 vant, ensuite l'information peut être transmise à ce noeud suivant. i0
Lorsque Bob reçoit un message, il déchiffre avec sa clé privée l'information de contrôle et l'adresse du noeud, lorsqu'il recevra tous les paquets du mes-sage unitaire, m, il le décodera en mettant en oeuvre un algorithme connu de l'Homme du métier, par exemple, celui décrit dans le document de Venkate- san Guruswami and Madhu Sudan ,"Improved decoding of Reed-Solomon codes and algebraic-geometry codes" , IEEE Transactions on Information Theory, 45(6): 1757--1767, September 1999 ou bien pour une implémentation très bas niveau, proche du signal dans le document de Ralf Koetter, Alexander Vardy: "Algebraic soft-decision decoding of Reed-Solomon codes" io IEEE Transactions on Information Theory 49(11): 2809-2825 (2003). Sans sortir du cadre de l'invention, le procédé selon l'invention peut être utilisé dans tout système de transmission sans fil qui demande un niveau de sécurité dans la transmission. Tout système de communication demandant des contraintes de sécurité élevées peut l'implémenter. 15 Selon un mode de réalisation, le procédé selon l'invention utilise une clé privée spécifique et obtenue en relation aux figures 5 et 6. La figure 5 représente la matrice de génération NG utilisée pour le chiffre-ment ou codage de l'information à transmettre. 20 Soit C un code linéaire q-aire t-correcteur de longueur n, de dimension k, CWq(n, t) l'ensemble des mots de F"q de poids de Hamming t. (Cryptosystèmes à clé publique basés sur les codes correcteurs d'erreurs de Nicolas Sendrier dans le cadre d'un Mémoire d'habilitation à diriger des recherches, spécialité informatique, Université Paris 6, mars 2002.) 25 G est une matrice génératrice de clé publique, x appartenant à F"q le chiffre-ment est défini de la manière suivante : y=xG+e ; wH(e)=t y est un vecteur, e correspond à une erreur de poids t qui sera choisie au moment du chiffrement, w correspond au poids de Hamming, l'indice H au 30 mot Hamming et t à l'erreur. 2912020 Il
La matrice de génération de code désignée NG selon l'invention est une matrice comprenant u lignes et v colonnes, avec u=v, un élément de la matrice étant constitué d'un bloc G correspondant à la matrice initiale de génération de clé publique. NG comprend donc n blocs G selon une ligne de la matrice 5 et aussi b blocs G selon une colonne de la matrice. La matrice du code G est une concaténation et un produit de codes connus de Reed-Muller, par exemple. Donc comme RM(r,m) a une dimension = k = E(;=o -, ;_r) binom(i,m) (avec binom(i,m) = m !/(i !(m-i) !) et une longueur N = 2m, la clef publique sera de dimension (u*k)*(u*N). io Pour le déchiffrement, le procédé exécute u décodages di alors que les procédés connus de l'art antérieur n'en faisaient qu'un: (d_1,d_2,...,d_u). L'intérêt de cette nouvelle technique réside dans les performances obtenues et dans le choix des paramètres. En effet comme cela le crypto système selon l'invention est davantage paramétrable puisqu'il existe un grand choix de is paramètres tandis qu'avec les procédés selon l'art antérieur, ces choix sont imposés par la structure du code. Par exemple, pour les codes de Goppa: longueur N = 2m, dimension k = 2m -m-t. La complexité de l'algorithme de décodage dépend quadratiquement de la longueur du code, donc la complexité pour effectuer u décodage est plus faible que d'effectuer un décodage 20 en longueur 2(m'g-2( ). A partir de cette nouvelle matrice NG, le procédé construit des clés publiques et des clés privées qui vont être utilisées lors de la transmission du message pour chiffrer et déchiffrer. La construction de ces clés est illustrée à la figure 6. 25 La clé publique PUK permettant de chiffrer les informations transmises est construite en utilisant une matrice inversible aléatoire RI, la nouvelle matrice NG et une matrice de permutation aléatoire RP. La multiplication de RI avec NG est une multiplication par bloc. La multiplication à gauche du code concaténé par une matrice inversible est une multipli- 30 cation par bloc permettant d'obtenir une matrice de rang uk. On a le schéma suivant : RI (multiplication matricielle par bloc) NG (multiplication classique matricielle) RP = clé publique PUK utilisé dans le procédé pour déchiffrer l'information reçue par un noeud. La clé privée PRK utilisée pour chiffrer l'information à transmettre au niveau 5 d'un noeud dans le procédé est composée de RI et de RP. Dim(RI) = u2 •(z(;_o_>i=r) Binomial(i,m))2 ; où Binomial(i, m) est une fonction définie de la manière suivante (m!/(i !(m-i) !)) avec m le nombre de variables pour le code de Reed-muller, r l'ordre du code de Reed-Muller RM(r,m). Dim(RP) = u2 .(2m)2 ; lo Dim(NG) = Dim(PUK) = (u E(;_o i=r) Binomial(i,m)).(u2m). Tout autre type de code peut être utilisé.
Selon une variante de réalisation, le procédé comporte une étape illustrée à la figure 7 permettant de réduire la longueur de la clé publique générée en 15 figure 6. Elle consiste à éliminer certaines colonnes de la matrice. Le nombre de colonnes effacées est déterminé, par exemple, en fonction de l'algorithme de décodage utilisé à la réception de l'information transmise. Par exemple, pour un algorithme de décodage tolérant t erreurs maximum, on a t = a erreurs 20 construites + 2(effacements E) de colonnes. La valeur du nombre d'effacements de colonnes e est déterminée à partir de t et de la sécurité de la transmission souhaitée. II est ainsi possible d'envisager un même nombre d'effacements pour tous les blocs de la matrice NG. 25 La figure 8 représente un exemple de codage ou chiffrement de l'information à transmettre en utilisant la clé générée en figure 5. Le message est codé en utilisant la clé PUK, puis on ajoute une erreur aléatoire de poids fixé, selon le schéma de la figure 3, par exemple. 30 Pour optimiser la sécurité de la transmission des informations, le procédé ajoute, par exemple, un trafic supplémentaire non utile ou dummy traffic
avant de chiffrer l'information. Un noeud du réseau génère du flux trafic en fonction de la place dans la bande passante.
Selon un mode de réalisation, une partie de l'information non chiffrée, par exemple, peut être mise dans l'erreur ajoutée comme décrit dans : Cryptosystèmes à clé publique basés sur les codes correcteurs d'erreurs , Nicolas Sendrier, Mémoire d'habilitation à diriger des recherches, spécialité informatique. Université Paris 6, mars 2002. Cette technique figure encode dans le document de V. M. Sidel'nikov, A public-key cryptosystem based on Reed-Muller codes , Discrete Mathematics and Applications, 4(3):191-207. La figure 9 représente un schéma de décodage de l'information chiffrée selon l'invention. Le message codé est décodé dans un premier temps par la clé privée en 15 utilisant la matrice inverse de RP, on a u messages m, puis le procédé utilise u fois l'algorithme de décodage, pour tous les messages m[i] où i est un indice variant de 1 à u (u étant la taille de la matrice), décoder (m[i]). Pour les positions effacées, le procédé exécute les étapes suivantes 20 Si I est une position effacée, faire M[i]=0 sinon, faire M[i] = (-1 )Tab[tj; t := t+1; avec Tab[t] qui correspond au vecteur y défini précédemment, t est par exemple la position d'un bit dans un message à chiffrer. De manière plus générale t correspond à la position d'une composante du 25 vecteur y t=t+1 ; la boucle est exécutée pour i compris dans [0 u2m-1] où m est le paramètre du code de Reed-Muller, 2m est la longueur du code de Reed-Muller. Le message obtenu est isomorphe IM de longueur (en bits): 30 u.(E(;=0 ;=r) Binomial(i,m)).
Le procédé applique ensuite la clé privée RI, en utilisant sa matrice inverse (RI)-1 pour obtenir le message final décodé.
Le procédé selon l'invention fait appel à des techniques connues de l'Homme du métier pour transmettre les clés publiques et les clés privées générées. Ces techniques de gestion des clés ne seront donc pas détaillées. Les étapes du procédé décrites précédemment peuvent être mises en oeuvre dans tous les systèmes de transmission sans fil et filaire qui demandent un lo niveau de sécurité dans la transmission. Tout système de communication demandant des contraintes de sécurité élevées peut utiliser l'invention. 15

Claims (1)

REVENDICATIONS
1 û Procédé permettant de sécuriser la transmission d'informations dans un réseau de communication comportant plusieurs noeuds, caractérisé en ce qu'il comporte au moins en combinaison les étapes suivantes : -transmettre une information codée, à laquelle on a ajouté une erreur, en plusieurs fractions, sur plusieurs chemins indépendants dans le réseau, chaque fraction étant associée à l'adresse chiffrée du noeud destina- taire et à une information de contrôle. i0 2 û Procédé selon la revendication 1, permettant de sécuriser la transmission d'informations dans un réseau de communications comportant plusieurs noeuds, caractérisé en ce qu'il comporte en combinaison au moins les étapes suivantes: 15 o Un noeud émetteur de l'information encode l'information avec un code donné, o Une erreur de poids donné est ajoutée à l'information chiffrée, o L'information chiffrée et l'erreur sont fractionnées en un nombre de portions qui est sensiblement égal à un nombre r choisi de routes 20 possibles pour transmettre de l'information dans le réseau, o On chiffre l'adresse de destination, o Pour chaque portion, on associe une information de contrôle permet-tant la reconstruction du message au niveau de la destination et l'adresse chiffrée du noeud de destination, 25 o Les différents ensembles composés chacun d'une portion d'information chiffrée, d'une information de contrôle et de l'adresse chiffrée du nceud destinataire sont envoyés en parallèle sur les r routes choisies. 30 3 û Procédé selon la revendication 2, caractérisé en ce que l'on utilise un code de Reed-Solomon pour chiffrer l'information initiale à transmettre.4 û Procédé selon la revendication 2, caractérisé en ce que l'on évalue la capacité du canal de transmission, puis en fonction de la qualité de ce canal, on ajoute une erreur aléatoire de poids fixé. û Procédé selon la revendication 2, caractérisé en ce que l'on utilise un système de chiffrement à clé publique pour chiffrer les adresses du noeud destinataire. 6 û Procédé selon la revendication 5, caractérisé en ce qu'il utilise une clé publique et une clé privée générées de la façon suivante : • générer une clé publique en utilisant une matrice de génération de clé publique NG constituée de u colonnes et u lignes, un élément d'une colonne ou d'une ligne étant un bloc formé par la matrice G de géné-15 ration de code, et en exécutant l'opération suivante : soit RI une matrice inversible aléatoire constituant une clé privée et RP une matrice obtenue par permutation aléatoire constituant une clé privée NG, la matrice la clé publique est donnée par la matrice PUK = RI(multiplication matri-20 cielle par bloc) NG(multiplication matricielle)RP • utiliser la clé privée et la clé publique obtenue pour coder et décoder les informations transmises dans le réseau. 7 û Procédé selon la revendication 6, caractérisé en ce qu'elle comporte une 25 étape de réduction de la taille de la matrice de génération de la clé publique en éliminant certaines colonnes de la matrice. 8 û Procédé selon la revendication 7, caractérisé en ce que le nombre de colonnes effacées clans la matrice est la même dans tous les blocs consti- 30 tuant la matrice NG et en ce que le nombre de colonnes à effacer est déterminé à partir de l'algorithme de décodage. 59 û Procédé selon l'une des revendications précédentes, caractérisé en ce qu'une partie de l'information à chiffrer est incorporée dans l'erreur ajoutée avant de coder l'information. û Procédé selon la revendication 7, en ce qu'il comporte une étape de décodage de l'information codée mettant en oeuvre les étapes suivantes : io Le message codé est décodé dans un premier temps par la clé privée en utilisant la matrice inverse de RP, puis le procédé utilise u fois l'algorithme de décodage pour les u messages m, pour tous les messages m[i] où i est un indice variant de 1 à u, décoder (m[i]). is Pour les positions effacées, exécuter les étapes suivantes : Si I est une position effacée, faire M[i]=0 sinon, faire M[i] = (-1,ITab[cl;; t := t+1; t=t+1 ; la boucle est exécutée pour i compris dans [0 u2m-1] où m est le paramètre du code de Reed-Muller, 2m est la longueur du code de ReedMuller. Appliquer ensuite la clé privée RI, en utilisant sa matrice inverse (RI)-' pour obtenir le message final décodé. 25 30
FR0700555A 2007-01-26 2007-01-26 Procede pour securiser la transmission d'informations. Active FR2912020B1 (fr)

Priority Applications (5)

Application Number Priority Date Filing Date Title
FR0700555A FR2912020B1 (fr) 2007-01-26 2007-01-26 Procede pour securiser la transmission d'informations.
PCT/EP2008/050831 WO2008095788A1 (fr) 2007-01-26 2008-01-24 Procede pour securiser la transmission d'informations
US12/524,608 US8347084B2 (en) 2007-01-26 2008-01-24 Information transmission security method
EP08708170A EP2119096A1 (fr) 2007-01-26 2008-01-24 Procede pour securiser la transmission d'informations
KR1020097015692A KR101527979B1 (ko) 2007-01-26 2008-01-24 정보 송신 보안 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
FR0700555A FR2912020B1 (fr) 2007-01-26 2007-01-26 Procede pour securiser la transmission d'informations.

Publications (2)

Publication Number Publication Date
FR2912020A1 true FR2912020A1 (fr) 2008-08-01
FR2912020B1 FR2912020B1 (fr) 2009-03-06

Family

ID=38462361

Family Applications (1)

Application Number Title Priority Date Filing Date
FR0700555A Active FR2912020B1 (fr) 2007-01-26 2007-01-26 Procede pour securiser la transmission d'informations.

Country Status (5)

Country Link
US (1) US8347084B2 (fr)
EP (1) EP2119096A1 (fr)
KR (1) KR101527979B1 (fr)
FR (1) FR2912020B1 (fr)
WO (1) WO2008095788A1 (fr)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2011131950A1 (fr) * 2010-04-22 2011-10-27 Martin Tomlinson Système de cryptageà clé publique reposant sur des codes goppa et génération aléatoire basée sur puf
WO2012066328A1 (fr) * 2010-11-16 2012-05-24 Martin Tomlinson Chiffrement à clé publique utilisant des codes correcteurs d'erreur
DE102014207026A1 (de) * 2014-04-11 2015-10-15 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Codierer, Decodierer, System und Verfahren zum Übertragen verschlüsselter Daten
EP2963853A1 (fr) * 2014-06-30 2016-01-06 Quantum Trains International B.V. Procédé pour le transport de grandes quantités de données électroniques

Families Citing this family (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1825412A1 (fr) 2004-10-25 2007-08-29 Rick L. Orsini Systeme analyseur syntaxique de donnees securise et procede correspondant
US8745372B2 (en) 2009-11-25 2014-06-03 Security First Corp. Systems and methods for securing data in motion
WO2011123699A2 (fr) 2010-03-31 2011-10-06 Orsini Rick L Systèmes et procédés pour sécuriser des données en mouvement
US20150163060A1 (en) * 2010-04-22 2015-06-11 Martin Tomlinson Methods, systems and apparatus for public key encryption using error correcting codes
EP2577936A2 (fr) 2010-05-28 2013-04-10 Lawrence A. Laurich Système accélérateur destiné à être utilisé avec un dispositif de stockage de données sécurisé
US8797966B2 (en) 2011-09-23 2014-08-05 Ofinno Technologies, Llc Channel state information transmission
US8885569B2 (en) 2011-12-19 2014-11-11 Ofinno Technologies, Llc Beamforming signaling in a wireless network
US8588416B2 (en) * 2012-01-12 2013-11-19 The Boeing Company System and method for secure communication
US9866532B2 (en) 2015-10-07 2018-01-09 International Business Machines Corporation Anonymization of traffic patterns over communication networks
CN105450653A (zh) * 2015-12-07 2016-03-30 中国电子科技集团公司第十研究所 减少空间信息网络中tcp报文丢失的方法
CN105681296A (zh) * 2016-01-11 2016-06-15 中国电子科技集团公司第十研究所 减少空间信息网络中tcp报文丢失的方法
US20180176015A1 (en) * 2016-12-16 2018-06-21 Yongge Wang Method and Apparatus for Public Key Encryption Scheme RLCE and IND-CCA2 Security
US11368436B2 (en) * 2018-08-28 2022-06-21 Bae Systems Information And Electronic Systems Integration Inc. Communication protocol
KR101984297B1 (ko) * 2019-04-01 2019-05-31 국방과학연구소 메시지 인코딩 방법, 메시지 암호화 방법 및 장치
KR102384761B1 (ko) * 2020-07-23 2022-04-11 국방과학연구소 보안 메시지의 송신 방법 및 송신 장치, 그리고 수신 방법 및 수신 장치

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO1997048207A1 (fr) * 1996-06-14 1997-12-18 Finley Phillip S Procede et dispositif de chiffrement dynamique
US20040068647A1 (en) * 2002-10-04 2004-04-08 International Business Machines Corporation Anonymous peer-to-peer networking

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100393618B1 (ko) * 2000-08-18 2003-08-02 삼성전자주식회사 부호분할다중접속 이동통신시스템의 채널 부호화/복호화장치 및 방법
US7058796B2 (en) * 2002-05-20 2006-06-06 Airdefense, Inc. Method and system for actively defending a wireless LAN against attacks
US7184551B2 (en) * 2002-09-30 2007-02-27 Micron Technology, Inc. Public key cryptography using matrices

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO1997048207A1 (fr) * 1996-06-14 1997-12-18 Finley Phillip S Procede et dispositif de chiffrement dynamique
US20040068647A1 (en) * 2002-10-04 2004-04-08 International Business Machines Corporation Anonymous peer-to-peer networking

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
ALABBADI M ET AL: "Integrated security and error control for communication networks using the McEliece cryptosystem", SECURITY TECHNOLOGY, 1992. CRIME COUNTERMEASURES, PROCEEDINGS. INSTITUTE OF ELECTRICAL AND ELECTRONICS ENGINEERS 1992 INTERNATIONAL CARNAHAN CONFERENCE ON ATLANTA, GA, USA 14-16 OCT. 1992, NEW YORK, NY, USA,IEEE, US, 14 October 1992 (1992-10-14), pages 172 - 178, XP010060284, ISBN: 0-7803-0568-X *
JIANG ET AL: "A novel mix-based location privacy mechanism in Mobile IPv6", COMPUTERS & SECURITY, ELSEVIER SCIENCE PUBLISHERS. AMSTERDAM, NL, vol. 24, no. 8, November 2005 (2005-11-01), pages 629 - 641, XP005184775, ISSN: 0167-4048 *

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2011131950A1 (fr) * 2010-04-22 2011-10-27 Martin Tomlinson Système de cryptageà clé publique reposant sur des codes goppa et génération aléatoire basée sur puf
US8958553B2 (en) 2010-04-22 2015-02-17 Martin Tomlinson Public key cryptosystem based on goppa codes and puf based random generation
WO2012066328A1 (fr) * 2010-11-16 2012-05-24 Martin Tomlinson Chiffrement à clé publique utilisant des codes correcteurs d'erreur
US8891763B2 (en) 2010-11-16 2014-11-18 Martin Tomlinson Public key encryption system using error correcting codes
DE102014207026A1 (de) * 2014-04-11 2015-10-15 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Codierer, Decodierer, System und Verfahren zum Übertragen verschlüsselter Daten
WO2015155221A3 (fr) * 2014-04-11 2016-01-14 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Codeur, décodeur, système et procédé de transmission de données codées
DE102014207026B4 (de) 2014-04-11 2017-02-09 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Codierer, Decodierer, System und Verfahren zum Übertragen verschlüsselter Daten
US10904228B2 (en) 2014-04-11 2021-01-26 Fraunhofer-Gesellschaft Zur Foerderung Der Angewandten Forschung E.V. Encoder, decoder, system and method for transmitting encrypted data
EP2963853A1 (fr) * 2014-06-30 2016-01-06 Quantum Trains International B.V. Procédé pour le transport de grandes quantités de données électroniques
WO2016000856A1 (fr) * 2014-06-30 2016-01-07 Quantum Trains International B.V. Procédé pour transporter de grandes quantités de données électroniques

Also Published As

Publication number Publication date
US8347084B2 (en) 2013-01-01
KR20090108052A (ko) 2009-10-14
WO2008095788A1 (fr) 2008-08-14
US20100088511A1 (en) 2010-04-08
FR2912020B1 (fr) 2009-03-06
EP2119096A1 (fr) 2009-11-18
KR101527979B1 (ko) 2015-06-12

Similar Documents

Publication Publication Date Title
FR2912020A1 (fr) Procede pour securiser la transmission d'informations.
EP2119095B1 (fr) Procede de chiffrement a l'aide de codes correcteurs d'erreurs
EP2232765B1 (fr) Procede et entite de chiffrement symetrique probabiliste
CA2466704A1 (fr) Procede et systeme de stockage et de transmission de donnees securises par application d'une cle bloc une fois
EP1802022A1 (fr) Code correcteur d'erreur sécurisé
EP1759482A1 (fr) Procede et dispositif de chiffrement ou dechiffrement de donnees
CN111404672A (zh) 量子密钥分发方法及装置
EP2457344B1 (fr) Procede de conversion d'un premier chiffre en un deuxieme chiffre
CN112997448A (zh) 具有减小的公钥大小的公钥/私钥系统
KR101377455B1 (ko) 브로드캐스트 암호화를 위한 암호화 키 생성 방법 및 장치
FR3029719A1 (fr) Methode de chiffrement a couches de confusion et de diffusion dynamiques
EP1455478A1 (fr) Procédé de cryptage d'un mot comportant N digits
WO2011083232A1 (fr) Procede de chiffrement et de dechiffrement
WO2009027447A2 (fr) Procede de distribution de cles cryptographiques dans un reseau de communication
US8161166B2 (en) Information communication using numerical residuals
FR2899748A1 (fr) Schema de diffusion hybride efficace, adapte a une faible bande passante
FR2925244A1 (fr) Procede pour echanger des cles par indexation dans un reseau multi chemin
WO2007074296A1 (fr) Transmission securisee avec code correcteur d'erreur
US20210126906A1 (en) Communication device, server device, concealed communication system, methods for the same, and program
Velasco et al. Secure Optical Communications Based on Fast Cryptography
Velasco Esteban et al. Secure optical communications based on fast cryptography
WO2019206949A1 (fr) Procede et systeme pour assurer l'integrite de donnees confidentielles diffusees
Kavcic et al. Light-weight secrecy system using channels with insertion errors: Cryptographic implications
Kamel Security for wireless communications
Capraro et al. Implementation of a real time high level protocol software for quantum key distribution

Legal Events

Date Code Title Description
PLFP Fee payment

Year of fee payment: 10

PLFP Fee payment

Year of fee payment: 11

PLFP Fee payment

Year of fee payment: 12

PLFP Fee payment

Year of fee payment: 14

PLFP Fee payment

Year of fee payment: 15

PLFP Fee payment

Year of fee payment: 16

PLFP Fee payment

Year of fee payment: 17

PLFP Fee payment

Year of fee payment: 18