#341 chiffrement et cryptographie [podcast NoLimitSecu 2021]

Puisque l’épisode #327 du podcast NoLimitSecu du 5 juillet 2021 traite directement du sujet, soyons efficace et (re)voyons les notions de chiffrement et de cryptographie. 

Oui, vous aurez peine à comprendre les explications de Timothée REBOURS, CEO de SEALD, si vous ne maitrisez pas les bases de cette science (un peu occulte) qu’est le chiffrement.

Attention : les quelques lignes qui suivent ne sont pas une reprise des propos de l’invité ou des contributeurs du podcast NoLimitSecu, mais des explications complémentaires principalement à destinations des… non-scientifiques qui souhaiteraient comprendre certains concepts techniques (pas forcément évidents).

Ce post ne traitera pas non plus de la législation applicable en France au chiffrement. Si le sujet vous intéresse, je vous invite à cliquer sur ce lien pour accéder à ma présentation de 2018 sur le sujet, qui reste d’actualité dans la mesure où la législation française n’a pas bougé depuis (ouffffff).

Si c’est la cryptographie appliquée aux protocoles blockchain qui vous intéresse, cliquez sur ce lien-ci.

[mis à jour le 13/07/2021] Je tiens ici à remercier tout particulièrement Islim Goktas pour son aide dans la réalisation des slides et du présent post et Jean-Philippe GAULIER pour sa relecture… comment dire… impactante… (ce coquin m’interdit d’écrire qu’il a fait un M1 en crypto).

PS : si vous aimez la BD, le chapitre « authentification et identification » est entièrement illustré avec « Sur les terres d’Horus » aux éditions Delcourt et les chapitres « chiffrement et cryptographie » pour la première fois avec « Excalibur Chroniques » aux éditions Soleil.

chiffrement et cryptographie : intro (très très) rapide ?

chiffrement et cryptographie : on revoit IDENTIFICATION vs AUTHENTIFICATION ?

L’identification, c’est la vérification de l’identité d’une personne physique.

L’authentification, c’es la vérification de la légitimité du droit d’accès d’un terminal à un système d’information.

Si je vous propose de commencer par ce point, c’est que l’une des trois fonctions de la crypto est… l’authentification. Nous allons y venir.

chiffrement ? cryptographie ? cryptanalyse ? cryptologie ? décryptage ? STOP ! C'est quoi et à quoi ça sert ?

Officiellement, la science du « chiffrement » s’appelle la cryptologie.

La cryptologie regroupe d’une part la cryptographie (l’art de « brouiller » un message) et d’autre part, la cryptanalyse (l’art pour les attaquants d’accéder à un message chiffré sans détenir la clé de déchiffrement).

Dans le vocabulaire courant, les professionnels utiliseront plus volontiers le terme de « chiffrement » à la place de celui de « cryptographie », et le terme « décryptage » plutôt que celui de « cryptanalyse ».

Les 3 fonctions "pratiques" du chiffrement

La première fonction, la plus lourdement règlementée en France, est d’assurer la confidentialité des échanges. Cette fonction est traditionnelle utilisée par les militaires et les diplomates depuis des siècles.

La seconde fonction de la cryptographie est d’assurer, surtout dans notre univers numérique, l’authentification des terminaux qui s’échangent des informations, pour répondre à la question « qui » écrit à « qui ». C’est à ce stade que nous parlerons de crypto  asymétrique (dite « à clé publique »).

La troisième fonction de la cryptographie est de permettre le contrôle de l’intégrité de fichiers numériques lors de leur transport sur les réseaux de communications électroniques. Cette fonction de la crypto fait appel aux mécanismes de hachage (cryptographique, ai-je besoin de le préciser ?). Nous allons en parler plus loin.

chiffrement et cryptographie : la crypto SYMETRIQUE à clé unique

Lorsque vous rentrez chez vous, vous ouvrez votre porte avec une clé. Lorsque vous sortez de chez vous, vous refermez votre porte avec la même clé.

Le chiffrement symétrique, c’est la même chose : avec une seule et même clé, vous chiffrez un message ou vous le déchiffrez.

Si vous souhaitez plus de détails sur les avantages et les inconvénients du chiffrement symétrique, c’est dans les slides ci-dessous qu’il faut aller voir…

chiffrement et cryptographie : la crypto ASYMETRIQUE dite "à clé publique"

La crypto asymétrique (merci Jean-Philippe…), c’est déjà un peu plus barbare…

Le concept est le suivant : 

  • vous devez d’abord créer votre clé « publique » (note d’un cryptographe : d’abord, paramétrer votre clé publique). Dans l’univers du numérique, une « clé » n’est jamais qu’un fichier numérique (une phrase, des notes de musique, un extrait de film…)
  • à partir des paramètres de votre clé publique, une fonction mathématique va  générer une clé dite « privée » unique.

Une fois que vous disposez de votre paire de clés, vous pouvez chiffrer (« signer » précise un cryptographe) avec votre clé privée et déchiffrer avec votre clé publique.

Vous pouvez également chiffrer avec votre clé publique, et déchiffrer avec votre clé privée…

En réalité, le sens d’usage chiffrement/déchiffrement de la clé privée/publique va dépendre de la fonction que vous attendez :

  • si vous souhaitez être authentifié(e) comme expéditeur d’un message, c’est-à-dire permettre à votre destinataire d’être certain que c’est bien vous qui lui avez écrit, vous allez « signer » votre message avec votre clé privée (hachage par signature cryptographique, nous y viendrons en fin de ce post).
  • si vous souhaitez que votre message soit confidentiel et ne puisse être lu que par votre destinataire, vous allez chiffrer votre message avec la clé publique de votre destinataire, laquelle/lequel pourra donc seul(e) le déchiffrer avec sa clé privée secrète.

Vous trouvez ça bizarre ? Pour mieux comprendre, allez parcourir les slides en BD que vous trouverez juste ci-dessous. 

chiffrement et cryptographie : n'oublions pas notre ami, le HACHAGE cryptographique...

Il est rare pour un juriste de pouvoir parler de « hash » sans faire l’apologie d’une substance prohibée par le code de la santé publique… C’est pourtant le cas des quelques explications que vous trouverez ci-dessous à propos du hachage cryptographique.

Lorsque vous envoyez un message sur un réseau de communications électroniques vous pourriez souhaiter vous assurer que, pendant son transport, le message n’a pas été modifié (de manière involontaire, ou de manière intentionnelle par un malveillant quelconque).

L’intérêt du hachage cryptographique est de s’assurer de l’intégrité d’un message entre son point de départ (le terminal de l’expéditeur) et son point d’arrivé (le terminal du destinataire).

Le concept est le suivant : 

  • une fois que votre « message » est prêt vous « calculez » une « empreinte » de ce message (un « résumé » mathématique, également appelé « condensat« , « checksum« , « empreinte » ou « hash » qui se symbolise par le signe #).
  • vous envoyez à votre destinataire votre message et le hash de votre message.
  • votre destinataire reçoit votre message et le hash que vous avez réalisé de votre message; le destinataire réalise à nouveau un hash du message que vous lui avez adressé, et compare le hash que vous lui avez adressé avec celui qu’il a réalisé lui-même.

Vous pouvez hacher votre message en clair, ou une version chiffrée de votre message, le contrôle d’intégrité fonctionnera à l’identique.

Si votre destinataire dispose de deux « hash » identiques, il/elle est donc certain(e) que le message n’a pas été modifié pendant son transport.

Si les deux « hash » sont différents, alors… il y a eu un problème…

Pour mieux comprendre la technique du hachage cryptographique, je vous ai préparé quelques schémas (simples) illustrés en BD dans le slider ci-dessous. Vous allez voir, ce n’est pas si compliqué que cela.

chiffrement et cryptographie : synthèse AUTHENTIFICATION + CONFIDENTIALITE + contrôle d'INTEGRITE dans un seul et même message ???

Pour celles et ceux d’entre vous qui auraient survécu aux explications précédentes, je vous propose ci-dessous trois slides de synthèse sur la méthode qui permet, dans un même message numérique, d’appliquer les fonctions d’authentification, de confidentialité et de contrôle d’intégrité.

Et pour vous rendre les opérations successives compréhensibles, nous les envisagerons d’abord coté expéditeur, puis coté destinataire.

vous avez aimé "chiffrement et cryptographie" ? voici ce qui vous attend dans un prochain épisode (probablement après les vacances estivales)

et si vous avez été sage (???), vous pourrez bientôt vous régaler avec une analyse détaillée technique + juridique des protocoles blockchain de traçabilité et de certification.

Depuis plusieurs années, je tente de perfectionner ma compréhension des techniques numériques afin que mes contrats soient toujours pertinents.

Aujourd’hui, il n’est pas possible de concevoir un contrat de blockchain de traçabilité/certification sans traiter l’ensemble des problématiques utilisant les techniques du chiffrement. 

Il m’a donc fallu beaucoup travailler pour cela, moi qui ne suis pas scientifique de formation. Et je remercie celles et ceux qui m’ont consacré du temps pour que j’y arrive… Je leur devais bien au moins une slide, non ?

chiffrement et cryptographie : MERCI aux éditions Delcourt / Soleil et tout particulièrement à Alain Brion, dessinateur de la très remarquable série en 5 tomes "Excalibur Chroniques"

Derniers articles