Cryptographie, algorithmes et secrets

Dans un climat général de tentative des Etats de mise au pas des GAFA qui se croiraient au dessus des lois, l’affaire FBI contre Apple a des retentissements jusqu’en France où Yann Galut, Eric Ciotti et Philippe Goujon ont déposé des amendements à la loi de réforme pénale en prévision d’un cas similaire en France ; en l’état actuel de la discussion à l’Assemblée, c’est celui de M. Goujon qui a été adopté, et il pose un très gros problème sans répondre exactement au cas américain, ce que je vais exposer ici.

La cryptographie pour les nuls

Les systèmes de cryptographie non triviaux sont tous composés de deux éléments : d’une part, un algorithme de transformation des données avec un pendant cryptage et un pendant décryptage, et d’autre part un secret utilisé pendant l’exécution de l’algorithme qui est partagé entre les parties concernées par la communication.

Par exemple, considérons l’algorithme suivant : pour chaque lettre d’un message, à la place de la lettre, on met trois chiffres qui correspondent respectivement à un numéro de page dans un livre, un numéro de ligne dans la page, et un numéro de caractère dans la ligne. Pour crypter, lettre à lettre, on choisit une page au hasard, puis une ligne au hasard, et on y cherche la lettre à transformer, puis on écrit le triplet déterminé. Pour décrypter, triplet par triplet, on ouvre le livre à la page du premier chiffre, on se place à la ligne du deuxième chiffre, puis au caractère du troisième chiffre, et on en déduit la lettre.

Si je veux envoyer un message crypté avec cet algorithme à un tiers, je m’entends avec lui sur un secret partagé, qui sera par exemple l’édition J’ai lu de 2003 de Lumière des jours enfuis d’Arthur C. Clarke – excellent livre qui sur fond d’utilisation des trous de ver nous parle en filigrane entre autres choses de la société des réseaux sociaux publics où plus rien n’est privé. Sans savoir quel est le livre employé, il est très difficile de décrypter le message, surtout si on utilise des triplets différents à chaque fois qu’on retrouve la même lettre, et en particulier, le créateur de l’algorithme n’a pas plus de moyen de décrypter le message que n’importe qui d’autre, il peut juste fournir le principe de cryptage.

L’amendement Goujon

L’amendement du député Philippe Goujon est ainsi rédigé : « Le fait, pour un organisme privé, de refuser de communiquer à l’autorité judiciaire requérante enquêtant sur des crimes ou délits terroristes définis au chapitre Ier du titre II du livre IV du code pénal des données protégées par un moyen de cryptologie dont il est le constructeur, est puni de cinq ans d’emprisonnement et 350 000 € d’amende. » Or, comme on l’a vu, le constructeur d’un moyen de cryptologie connait l’algorithme mais n’est pas sensé connaitre le secret qui est l’affaire du propriétaire des données et des personnes à qui il veut les communiquer ; pour complaire à la loi ainsi rédigée, le constructeur doit inclure d’une façon ou d’une autre dans son algorithme une porte dérobée lui permettant d’accéder au secret. Et si l’histoire de l’informatique prouve quelque chose, c’est que si une porte dérobée existe, elle sera exploitée par des personnes malveillantes tôt ou tard. De fait, l’amendement Goujon rend totalement inopérante la cryptographie.

La loi sur le renseignement

Comme je l’ai écrit dans un billet précédent, la loi sur le renseignement ajoutait une obligation de décryptabilité aux fournisseurs de communication électronique, dont les hébergeurs font partie. Les deux articles semblent similaires, puisque le législateur demande dans les deux cas un moyen d’accès à des données cryptées, mais les différences sont de taille :

  • dans le cas de la loi renseignement, l’autorité administrative demande le secret, que par définition l’hébergeur connait et est fondé à connaitre puisqu’il fait partie de la communication ; le risque est qu’une fois le secret connu des autorités, toute donnée cryptée par ce secret, qu’elle fasse ou non l’objet d’une problématique terroriste, peut leur être connue – typiquement, une fois que vous avez la clé privée d’un serveur https et via les fameuses boites noires, toutes les communications effectuées vers ce serveur https, elles peuvent toutes être décryptées
  • dans le cas de l’amendement Goujon, le législateur demande les données elles-mêmes non plus à une des parties de la communication, mais à un fournisseur de technologie, ce qui implique comme on l’a vu une forme de porte dérobée, qui peut rendre visible à un hacker toute donnée cryptée à l’aide de la technologie, ce qui est bien plus grave à deux points de vue : d’une part, malgré toutes mes préventions contre un Etat trop puissant, je préfère que mes données soient potentiellement accessibles à une autorité administrative constituée et un tant soit peu contrôlable plutôt qu’à un hacker anonyme, et d’autre part, toute donnée cryptée avec l’algorithme est potentiellement lisible, pas uniquement un serveur utilisant une clé privée https sur un temps limité !

Le cas San Bernardino

L’affaire en cours entre le FBI et Apple est différente de l’amendement Goujon et de la loi renseignement, car dans le cas des données stockées cryptées dans un smartphone, le secret est physiquement présent dans le téléphone. Le FBI ne demande à Apple ni les données, ni le secret, mais un outil pour l’aider à obtenir le secret.

En très résumé, le cryptage de l’iPhone fonctionne de la façon suivante : le secret est composé d’une donnée physiquement présente dans le processeur et d’un mot de passe créé par l’utilisateur. Si on sort les données cryptées du téléphone, le processeur n’étant pas là, une partie de la clé est manquante ; si on change le mot de passe utilisateur, erreur que le FBI a faite, une partie de la clé est manquante. Le FBI se retrouve donc obligé de faire une attaque brute force, c’est-à-dire d’essayer tous les mots de passe un par un comme des bourrins. Or le micrologiciel de l’iPhone empêche de telles attaques par deux moyens : on peut activer sur le téléphone une suppression automatique des données au bout de dix erreurs de mot de passe – et le FBI n’a aucun moyen de savoir si la fonctionnalité est activée ou pas sur le téléphone du terroriste, et plus on se trompe de mot de passe, plus le téléphone met longtemps à répondre aux demandes d’authentification. Cerise sur le gâteau : pour qu’un micrologiciel soit accepté par le téléphone, il faut qu’il soit signé par la clé privée d’Apple, il est donc impossible au FBI d’intégrer une version à eux sans intervention d’Apple.

Pour accéder aux données, le FBI a donc besoin d’un des éléments suivants :

  • une version créée par Apple du micrologiciel qui lève les restrictions empêchant une attaque en force brute ;
  • la clé privée qu’Apple utilise pour signer ses micrologiciels pour en intégrer une version à eux dans le téléphone

La deuxième option est inimaginable car elle conduit immédiatement à ce que le FBI puisse faire ce qu’il veut de tout téléphone Apple ; le FBI ne le demande d’ailleurs pas. La première option fait débat : le FBI assure qu’Apple pourrait créer une version qui ne fonctionnerait que sur ce téléphone précis, et de son côté Apple affirme qu’une fois le logiciel créé, il n’y a aucun moyen d’empêcher les personnes mettant la main dessus de l’utiliser sur tous les iPhone, ce qui ouvrirait une porte dérobée sur des centaines de millions de terminaux. Toujours est-il que même possédant ce logiciel, le FBI mettrait en moyenne 3 ans à forcer le mot de passe par force brute, et qu’il s’est de lui-même privé d’un moyen trivial d’y accéder facilement en changeant le mot de passe existant ; de plus, à l’aide des relevés téléphoniques, des informations de son ordinateur et de son fournisseur d’accès à internet, le FBI connait déjà les personnes avec lesquelles il communiquait et en grande partie ce qu’il a pu leur dire.

On peut alors se demander légitimement pourquoi on ouvrirait un précédent aussi majeur, et pourquoi on prendrait un tel risque pour la sécurité d’un nombre gigantesque de personnes, tout ça pour obtenir au mieux dans 3 ans quelques informations complémentaires, et au pire dupliquer des données que l’on a déjà.

Conclusion

Dès que j’ai lu l’amendement Goujon, j’ai contacté personnellement le député pour lui expliquer les problèmes qu’il posait ; son attachée parlementaire m’a répondu que lors de la discussion sur celui-ci, le député avait dit que le gouvernement pourrait améliorer les aspects techniques mais qu’il constituait une base de discussion qui rassemblait gauche et droite autour de la nécessité qu’elles ressentent toutes les deux de faire collaborer les sociétés technologiques avec les autorités.

Au cours de mes aventures dans la fabrique de la loi – loi renseignement, loi pour une république numérique, cet amendement et enfin ce cas amusant sur le sujet du principe pollueur – payeur où la secrétaire d’Etat s’est retrouvée à présenter un article qu’elle ne connaissait pas et qui vidait la loi de sa substance initiale, j’ai rencontré un motif récurrent qui commence à m’inquiéter pour l’état de notre démocratie.

Les projets de loi sont majoritairement rédigés dans les cabinets ministériels par des conseillers techniques qui ont une légitimité sur leur sujet de prédilection mais aucune légitimité démocratique, ne sont pas comptables devant les citoyens et sont la cible de tous les lobbys imaginables, associations, grandes entreprises, ONG, etc. Ils sont ensuite présentés par des ministres, qui eux en répondent directement au citoyen, ce qui leur donne une forme de légitimité, quoi qu’on pense de la démocratie représentative, mais qui ne comprennent pas toujours les enjeux techniques et s’appuient pour cela sur leurs équipes de conseillers. A l’Assemblée Nationale, ils passent ensuite dans les mains de députés ayant également reçu un mandat du peuple, mais qui ne peuvent être spécialistes de tous les sujets, et qui manifestement n’ont pas les ressources en conseil technique pour bien appréhender tous les enjeux ou alors ne les sollicitent pas toujours – l’exemple de cet amendement cryptographie ne fait que renforcer l’impression ressentie sur l’amendement système d’exploitation souverain. Mis au pied du mur, ils semblent s’en remettre à nouveau aux conseillers techniques du gouvernement, et on revient à la case départ. Même l’expérimentation intéressante de consultation citoyenne de loi pour une République numérique n’a pas eu l’air de faire dérailler le train-train législatif puisque seuls des articles mineurs ont été repris de celle-ci, et les articles des lobbys ont remplacé les propositions citoyennes tout en douceur et dans le feutré de la salle des 4 colonnes.

Sommes-nous alors condamnés à errer d’articles de lois mal écrits par des députés non spécialistes et sans aide technique en articles rédigés dans des cabinets fermés au public et sans aucune transparence démocratique ?

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *