Cliquez pour atteindre la page correspondante...

La sécurité sur le Net

 

La cryptologie à clés secrètes

Introduction

Législation
réglementation française
lois françaises
certification

Cryptologie :
à clés secrètes
à clés publiques

Stéganographie

Algorithme
 
RSA

Signature électronique

 

Un système de chiffrement à clé secrète, dit aussi symétrique, repose sur le partage entre deux personnes en communication, d'une même clé secrète utilisée à la fois pour le chiffrement des données et pour son déchiffrement.

Par exemple, pour transmettre un message, on réalise au préalable le chiffrement d message avec un algorithme avec deux paramètres, le message et la clé ce qui va donner un fichier incompréhensible pour quelqu'un qui l'intercepte. Dans un second temps, le récepteur du message qui lui a l'algorithme et la clé correspondant au fichier va obtenir les données en clair.

 

Principe de chiffrement à clés secrètes.
 


Émetteur 

Moyen de communication (Internet, disquettes...)


Destinataire 

L'ordinateur crypte le message grâce à un algorithme symétrique à l'aide de la clé.

Le message crypté est communiquer par un moyen quelconque, les données sont illisibles.

Le destinataire à l'aide de la clé retrouve le message clair.

 

Le cryptage à clé symétrique possède des inconvénients dont le principal est le problème posé par  la transmission de la clé au destinataire, en effet si la clé est intercepté par un pirate par exemple, celui-ci peut lire les messages mais également en écrire et se faire passer pour un des correspondants. Deuxième problème important, dans le cas d'échange entre N personnes susceptibles de communiquer, il faut distribuer N*(N-1)/2 clés, en outre il faut considérer les temps de chiffrement pour chaque clé qui implique un temps global important.

La clé doit être échangée préalablement à la communication par un canal sûr autre que le canal à protéger, téléphone, courrier, échange direct. Pour le stockage de message, le principe est le même avec un seul interlocuteur. En plus, du partage de la clé, les interlocuteurs choisissent un algorithme permettant le cryptage des données, cet algorithme peut constitue de lui-même le secret à partager pour les anciens système particulièrement (voir "le chiffrement de César").

 

Le chiffrement de César et chiffrement à substitution simple.

Ce code de chiffrement est un des plus anciens, est attribué à Jules César qui l'utilisait selon la légende pour communiquer avec ses généraux sans que le messager ne puisse connaître le message réel. Le principe de codage repose sur le décalage de trois lettres dans l'écriture du message et pour le lire il suffit de réaliser l'opération inverse pour reconstituer le message.

Ce système rentre dans la méthode plus générale de chiffrement par substitution, à chaque lettre correspond une autre lettre ou un groupe de lettre. Ce système peut être à substitution simple ou mono alphabétique comme la système de César, voir le tableau ci-dessous.
 

Lettre normale

A

B

C

D

E

F

G

H

I

J

K

L

M

N

O

P

Q

R

S

T

U

V

W

X

Y

Z

Lettre crypté

D

E

F

G

H

I

J

K

L

M

N

O

P

Q

R

S

T

U

V

W

X

Y

Z

A

B

C

 

Pour compliquer la tâche, au lieu de procéder à un décalage, on peut par convention attribuer à une lettre une valeur qui consistera alors en la clé, comme dans le tableau suivant.
 

Lettre normale

A

B

C

D

E

F

G

H

I

J

K

L

M

N

O

P

Q

R

S

T

U

V

W

X

Y

Z

Lettre crypté

Y

F

I

N

A

J

T

P

M

B

X

W

U

O

Z

Q

C

D

R

K

E

G

L

V

H

S


Ce système de cryptage est certes simple à mettre en oeuvre, mais il a pour inconvénient d'être totalement symétrique, cela signifie qu'il suffit de faire une soustraction pour connaître le message initial. Une méthode primaire peut consister à une bête soustraction des nombres 1 à 26 pour voir si l'un de ces nombres donne un message compréhensible.

Une méthode plus évoluée consiste à calculer les fréquences d'apparition des lettres dans le message codé (cela est d'autant plus facile à faire que le message est long). Effectivement, selon la langue, certaines lettres reviennet plus couramment que d'autres (en français, par exemple, la lettre E est la plus utilisée), ainsi la lettre apparaissant le plus souvent dans un texte crypté par le chiffrage de César correspondra vraisemblablement à la lettre H, une simple soustraction donne alors la clé de cryptage...

Les techniques d'attaque statistique consistent à analyser statistiquement les textes cryptés pour déterminer les fréquences d'apparition des symboles, puis comparer avec les fréquences types caractéristiques de la langue. Une analyse statistique d'un texte suffisamment long permet de casser un code mono ou même poly-alphabétique. Il suffit de disposer de puissance de calcul et de suffisamment de texte en regard de la clés utilisés.

Le chiffrage ROT13

Dans le cas spécifique de ce type de chiffrement où la clé de cryptage est le décalage de 13 lettres, on appelle ce cryptage ROT13 (le nombre 13, la moitié de 26) a été choisi pour pouvoir crypter et décrypter facilement les messages sans difficulté, par exemple pour cacher une réponse à une question dans un email, ce chiffrage implique une action volontaire de connaître une information et non pas une action par erreur.

Chiffrement à substitution poly-alphabétique

Ce système, connut sous le nom de le chiffre de Vigenere, consiste non plus à substituer une lettre à une autre mais à partir d'une clé importante qui constitue une suite de chiffres mono alphabétiques, on réalise un décalage de la valeur d'un chiffre de la clé. Par exemple, pour chiffrer "cryptologie" avec la clé "abc", on commence par décaler de une lettre le "c" soit "d" car "a" correspond à un décalage de une lettre, puis à partir de "r", on obtient "t" et ainsi de suite.

Au final "cryptologie" est devenu "dtaqvrmqjjg", cette méthode résiste à l'analyse statistique, car comme on peut le voir deux lettres codés identiques ne correspondent pas à deux lettres identiques. Ainsi, si la clé choisit est suffisamment longue (cela peut être une phrase, un texte même un livre entier) ce système est relativement robuste. Mais il subsiste le problème de l'échange de la clé qui peut être longue, et un nouveau problème se pose celui de la synchronisation, en effet si une donnée est perdue (par exemple si la connexion est momentanément coupée) toutes les données le sont car on ne peut savoir où la clé est rendu.

Pour anecdote, le téléphone rouge reliant le Kremlin à la Maison Blanche utiliserait un tel système pour chiffrer les communications, avec des clés de la longueur des messages c'est à dire que la clé ne se répète jamais ce qui rend se système presque inviolable, à savoir également que les clés sont échangés grâce aux diplomates donc leur transmission totalement sécurisé.

 DES

Au début des années 70, la NBS (National Bureau of Standards) a lancé un appel dans le Federal Register pour la création d'un algorithme de cryptage répondant aux critères suivants:

  • ayant un haut niveau de sécurité lié à une clé compréhensible
  • ne devant pas dépendre de la confidentialité de l'algorithme
  • adaptable et économique
  • efficace et exportable

Fin 1974, IBM propose Lucifer, qui grâce à la NSA (National Security Agency) est modifié pour donner le DES (Data Encryption Standard) le 23 novembre 1976. Le DES a finalement été approuvé en 1978 par le NBS.  DES est un système de cryptage toujours utilisé aujourd'hui en France pour certaines banques sous la forme de 3DES c'est à dire que l'algorithme est exécuté trois fois en série pour augmenter la sécurité. DES est réactualisé tous les 5 ans.

C'est un système de chiffrement par blocs de 64 bits, dont le dernier octet (8 bits) sert de test de parité (pour vérifier l'intégrité des données) ce qui implique que seulement 56 bits servent réellement à chiffrer, ce qui représente 256 possibilités, c'est-à-dire 72*1015 soit 73080 clés possibles. La clé est codée sur 16 bits et formée de 16 blocs de 4 bits, généralement notés k0 à k15.

DES consiste à faire des combinaisons, des substitutions et des permutations entre le texte à chiffrer et la clé, dans la mesure où les opérations puissent se faire dans les deux sens (pour le décryptage). Les grandes lignes de l'algorithme sont les suivantes:

  • fractionnement du texte en blocs de 64 bits
  • permutation des blocs
  • découpage des blocs en deux parties
  • étapes de permutation et de substitution répétées 16 fois (appelées rondes)
  • recollement des deux parties puis permutation initiale inverse

Problèmes rencontrés.

En 1990 Eli Biham et Adi Shamir ont mis au point la cryptanalyse différentielle qui recherche des paires de texte en clair et des paires de texte chiffrées (cette méthode marche jusqu'à un nombre de rondes inférieur à 15 d'où un nombre de 16 rondes dans l'algorithme présenté ci-dessus).

D'autre part, même si une clé de 56 bits donne un nombre énorme de possibilités, de processeurs permettent de calculer plus de 106 clés par seconde, ainsi, utilisés parallèlement sur un très grand nombre de machines, il peut être possible à un grand organisme (un Etat par exemple) de trouver la bonne clé...

Pour cela, maintenant le triple DES est utilisé ce qui permet d'augmenter le nombre de clés à tester et d'augmenter la sécurité, ce système est notamment utilisé dans le système bancaire. Persiste toujours le problème de l'échange des clés qui reste vulnérable.

Retour haut

Contact : securinet@free.fr

Dernière mise à jour :