Cryptographie pour les néophytes : les fondamentaux

 

Data securityLaisser moi vous présenter le premier article d’une longue série pour tout savoir sur la cryptographie dans le monde de l’entreprise. Pas besoin d’être un expert en mathématiques ! L’objectif est ici de connaitre les bases de gestion des systèmes cryptographiques. Cet article s’adresse donc à tous les manager en sécurité informatique ainsi qu’aux gens du droit afin d’aborder la cryptographie l’oeil serein et l’esprit clair.

Niveau Management et Législatif : Indispensable !
Niveau Technique : Fortement conseillé pour la culture générale.

 Un peu d’histoire

Revenons à l’époque de la Rome Antique où Cesar (Julius de son prénom) est empereur.
Dans ses projets de conquêtes, il veut pouvoir envoyer des ordres à ses généraux au nez et à la barbe de ses adversaires. En effet, l’interception de ces information par un espion adverse pourrait avoir des conséquences désastreuses lors d’une attaque.
Après des nuits de réflexion, il imagine le “Chiffre de César” qui consiste à décaler l’alphabet d’un certain nombre. Par exemple pour 3 :  A devient D, B devient E, etc. Il donne ensuite un nombre  à chaque général. Ainsi, lorsqu’il souhaite donner un ordre au général possédant le chiffre 3, il décale toute les lettres du message de 3 et pour le général possédant le chiffre 13, il décale toutes les lettre du message de 13, etc. Les espions de l’époque peuvent aller se rhabiller.

La cryptographie est donc née de besoins militaires. Tout comme la cryptanalyse qui consistait à déchiffrer les messages sans connaitre la clé secrète. La cryptologie (cryptographie et cryptanalyse) n’a cessé de s’améliorer au fil du temps, c’est ainsi que les allemands créèrent la machine Enigma, que les anglais créèrent les bombes logiques et que Turing créa la Machine de Turing soit le premier ordinateur.

Un excellent livre, Histoire des codes secrets, vous permettra de connaitre les événements historiques de la cryptographie. Je vous le conseille, ça se lit très vite et c’est très intéressant.

Dans la suite de cet article, je vous laisse un petit dictionnaire très simple afin que nous soyons sur la même longueur d’onde :

Expression Définition
Un clair C’est le message d’origine, que tout le monde peut lire.
Un chiffré C’est le message chiffré
Un message C’est l’information que nous souhaitons transmettre
Le(s) secret(s) C’est ce qui ne doit JAMAIS être découvert par les adversaires

Alors attention !! moi ch’uis pas cryptomachin !

Et vous avez raison de me le faire remarquer. Ce qui va vous intéresser, c’est la valeur d’un système cryptographique au niveau de la sécurité et au niveau de la loi (Française pour notre part). Notre beau pays possède un merveilleux document le RGS (Référentiel Général de Sécurité)! C’est le document étatique référent et le seul qui fait foi au niveau de la sécurité en cryptolographie.

Un petit exemple

Imaginons que vous êtes un savant et que vous avez découvert le moyen de transformer l’eau en pétrole et vis versa. Votre fortune est faite !! La société SecuCloud vous propose de sauvegarder vos travaux en ligne et de manière complètement sécurisée. Magnifique !…Cependant vous vous rendez compte, quelques jours plus tard, qu’un autre savant publie vos travaux et s’accapare votre découverte. Nom d’une pipe en bois ! Vous savez pourtant que ces données proviennent de SecuCloud.

Leur défense : “Oui mais on a chiffré vos données avec une clé que, seul, vous possédez, nous avons donc rempli notre part du contrat.”

Votre avocat et l’expert qui l’assistera devront, alors, se référer au divin RGS ainsi qu’aux textes de loi afin de savoir si l’algorithme utilisé correspond à une mesure de sécurité efficace, si le service réponds aux exigences française, etc.

Sachez ceci : Si vous offrez des services de cryptologie, vous devez vous référer au texte sur la sécurité dans l’économie numérique.  Les experts en droit y verront surement des failles et des flous dans certains articles.

Ici, le problème concernant un service de chiffrement par une société, l’article qui va nous concerner est l’Arcticle 32 du texte de loi pour la confiance dans l’économie numérique.

Sauf à démontrer qu’elles n’ont commis aucune faute intentionnelle ou négligence, les personnes fournissant des prestations de cryptologie à des fins de confidentialité sont responsables au titre de ces prestations, nonobstant toute stipulation contractuelle contraire, du préjudice causé aux personnes leur confiant la gestion de leurs conventions secrètes en cas d’atteinte à l’intégrité, à la confidentialité ou à la disponibilité des données transformées à l’aide de ces conventions.

Le choix d’une clé faible peut-il être considéré comme une “faute intentionnelle”, une “négligence” ?  Quels étaient les éléments exacts du contrat ? La société respecte-t-elle le décret sur les prestations de cryptologie ? Sous quelle législation sont les serveurs hébergeant les données ? Autant de questions auxquelles devront répondre les avocats de chaque parti.

En terme de service de cryptologie, vous pouvez décider de certifier votre produit ou votre service par l’État Français. Vos clients seront alors (r)assurés d’être protégés par un système fiable et que leurs droits sur la propriété intellectuelle et la vie privée en France, voir même dans la communauté Européenne -mais c’est à vérifier, sont respectés.

Entre certification et incertitude…

Une certification coûtant (assez) cher, beaucoup de produits ne sont pas certifiés ou ont une certification qui n’a pas de valeur légale en France. Du coup, comment évaluer une solution de chiffrement qui vous assure un certain seuil de sécurité ?

Quelques principes qui devraient vous aider à y voir plus clair

1 – Où est le secret ?

Ce sera LA question à vous poser à chaque fois et de manière récurrente.
Cela revient à savoir : Qui possède la clé secrète ? Par où passe-t-elle ? Où est elle stocker ? Où sont les messages en clair ?

2 – Évaluer la durée de validité de vos messages

En cryptographie l’objectif n’est pas d’assurer une sécurité absolue (ça n’existe pas) mais de faire en sorte que lorsque votre adversaire aura déchiffré votre message, il ne lui sera plus d’aucune utilité.

Pour vous donner une idée :
L’algorithme DES peut, aujourd’hui, être brisé en 24h. Si votre message est un ordre d’attaque qui doit être exécuté dans 2h, vous pouvez utiliser du DES. Au delà de 24h vous pourrez être sûr que le reste de vos messages seront clairement lus par les espions ennemis. Inutile, donc, d’utiliser des clés de 75000 bits pour chiffrer un devis qui va être valable 6 mois.

3 – Taille de clé > taille du message 

La taille de la clé secrète doit être au moins aussi élevée que la taille du clair, c’est le principe de Shannon. Cela revient à dire qu’une clé est utilisée une et une seule fois par message.

Pour vous donner une idée :
Supposons que notre clé “302” représente une suite de décalage (rappelez vous, le chiffre de césar tout ça)

Je suis un poisson
30 2
Me u

Si je répète cette clé sur tout mon message cela me donne :

Je suis un poisson
30 2302 30 2302302
Me uxiu xn rriuvop

Nous voyons qu’il y a plusieurs répétitions, or les répétitions sont autant d’indices pour deviner la clé secrète.
Les algorithmes actuels tel que AES ou 3DES chiffrent des blocs de données dont la taille est calculée en bit. Par exemple, AES-256 signifie normalement que la clé utilisée est basée sur une clé de 256 bits. Vous pouvez donc chiffrer des blocs inférieurs ou égaux à 256 bits (on verra plus tard comment on chiffre un gros volume de données).

 Voilà

Avec ces 3 principes vous êtes en mesure de comprendre n’importe quel cryptosystème indépendamment de l’algorithme utilisé et sans être un expert en la matière. Mieux ! Vous pourrez vous attaquer en toute sérénité aux prochains articles un tout petit peu plus spécialisés.