Un nouveau standard international vient d’être attribué à l’algorithme Keccak. Il sera une brique de base pour les signatures digitales.
Par Frédéric Prost.
Au début du mois d’octobre Keccak a été désigné vainqueur de la compétition ouverte en 2007 pour SHA-3 par le NIST. J’imagine que pour la plus grande partie des lecteurs la phrase précédente ne signifie pas grand chose. Le NIST est l’institut national des standard technologiques américains qui est de facto l’institut qui produit les standards mondiaux dans les domaines des TIC (Technologies de l’Information et des Communications). On lui doit par exemple l’algorithme de cryptage ‘standard’ recommandé pour l’administration américaine : AES. En l’occurrence SHA-3 est un nouveau standard qui porte également sur la sécurité informatique mais dont le but n’est pas de crypter des informations mais de fournir une brique de base pour authentifier l’information.
En effet rien ne ressemble plus à un fichier informatique qu’un autre fichier informatique comportant les mêmes informations : ce n’est pas une analyse de l’écriture qui pourra vous apporter une quelconque information. Un ’0′ dans un fichier n’a pas d’identité, c’est une information pure. On ne peut pas ‘signer’ un fichier comme on le fait d’un contrat (ce qui est une modification physique du support de l’information que vous êtes réputez être seul à savoir faire). D’ailleurs, à l’inverse de ce qui se passe dans le monde matériel, il n’est pas non possible de savoir si quelqu’un a changé ce qui était un ’1′ en ’0′ que vous êtes en train de lire sur un fichier : là encore ce n’est pas comme ce qui se passe sur une feuille de papier où l’on peut toujours trouver des traces de gommage ou autres manipulations physiques ayant permis de modifier l’information. Les questions de l’intégrité (suis-je certain que l’information que je consulte n’a pas été modifiée ?) et de la signature (suis-je bien certain que l’information que je consulte a bien été produite par la personne qui est supposée l’avoir produite ?) ne sont pas évidentes et paraissent même impossibles à résoudre quand on y songe sérieusement.
Ces questions ont de multiple implications dans la vie de tous les jours. Sans que vous le sachiez, en permanence votre ordinateur quand il met à jour des programmes, par exemple, vérifie que ces derniers sont bien les bons (pour éviter qu’ils n’aient été modifiés par l’intégration de virus par exemple) : cela se fait au moyen d’un protocole de vérification de signature dont le constituant fondamental est une fonction mathématique ayant certaines spécificités et propriétés. SHA-3 est une de ces fonctions.