Titre: Et paf le SHA-1! Auteur: gouttegd Date: Thu 23 Feb 2017 19:12:58 +0100 Lien: https://linuxfr.org/users/gouttegd/journaux/et-paf-le-sha-1 Un journal bookmark pour annoncer la première collision SHA-1[1]. Concrètement, des chercheurs du Centrum Wiskunde & Informatica[2] (institut néerlandais de recherche en mathématiques et informatique) et de Google sont parvenus à fabriquer deux fichiers PDF dont le contenu diffère mais dont le condensat SHA-1 est identique. Si les auteurs expliquent brièvement en quoi Git (qui repose sur SHA-1 pour l’identification des blobs et des commits contenus dans un dépôt) est impacté, ils ne s’attardent pas en revanche sur OpenPGP, ce que je vais donc faire ici. SHA-1 est actuellement utilisé au « cœur » de OpenPGP, pour le calcul des empreintes des clefs en version v4. Ce dont on a besoin pour ce type d’utilisation est la résistance aux attaques sur la seconde pré-image (étant donné le condensat d’une clef, trouver une autre clef donnant un condensat identique). La résistance aux collisions n’est pas critique ici et vos clefs OpenPGP ne sont donc pas menacées par le résultat rapporté ci-dessus. Notez qu’une mise à jour du standard OpenPGP est nécessaire pour changer l’algorithme utilisé pour les empreintes de clef, ce n’est pas une décision qu’une implémentation peut prendre unilatéralement. Et le groupe de travail OpenPGP à l’IETF travaille précisément en ce moment sur une nouvelle version du RFC 4880, qui devrait probablement déboucher sur un nouveau format de clef v5 utilisant un autre algorithme de condensation (de la même façon que le format v4, utilisant SHA-1, avait remplacé le format v3, utilisant MD-5). L’autre utilisation possible de SHA-1 dans le monde OpenPGP est bien entendu les signatures (de clefs, de messages, de documents). Là, la résistance aux collisions est nécessaire, faute de quoi un attaquant pourrait vous faire signer un document A et faire valoir la signature sur un autre document B (comme les deux fichiers PDF générés par l’équipe de recherche). À ce sujet, je tiens à rappeler que toutes les versions de GnuPG publiées depuis 2010 utilisent par défaut, pour les signatures, SHA-256 et non plus SHA-1. Vous n’avez donc pas besoin, contrairement à ce qu’on peut lire sur des tutos obsolètes, d’ajouter d’options du style cert-digest-algo ou personal-digest-preferences à votre fichier ~/.gnupg/gpg.conf. Ce que vous pouvez avoir à faire en revanche, c’est mettre à jour la liste des algorithmes de condensation préférés associé à votre clef : si vous l’avez générée avec une version de GnuPG d’avant 2010, SHA-1 figure probablement toujours en tête de cette liste. Éditez votre clef OpenPGP et utilisez la commande showpref pour afficher les listes d’algorithmes préférés : $ gpg2 --edit-key alice@example.org[...] gpg> showpref[ultimate](1). Alice <>alice@example.org> Cipher: Cipher: AES, AES192, AES256, TWOFISH, CAST5, 3DES Digest: SHA256, SHA512, SHA224, SHA384, SHA1 Compression: ZLIB, BZIP2, ZIP, Uncompressed Features: MDC, Keyserver no-modify Ici, SHA-1 (dans la liste Digest) est en queue de liste, tout va bien. Si jamais SHA-1 apparaît en tête de liste, utilisez simplement la commande setpref (sans arguments) pour mettre à jour les préférences en utilisant les algorithmes par défaut recommandés par les versions récentes de GnuPG. Télécharger ce contenu au format Epub[3] Lire les commentaires[4] Liens: [1]: https://shattered.io/ (lien) [2]: https://www.cwi.nl/ (lien) [3]: https://linuxfr.org/users/gouttegd/journaux/et-paf-le-sha-1.epub (lien) [4]: https://linuxfr.org/users/gouttegd/journaux/et-paf-le-sha-1#comments (lien)