J’ai récemment fait l’acquisition d’un nouveau PC portable équipé entre autres choses d’un Trusted Platform Module (TPM) — comme la plupart des PC portables de nos jours, puisqu’à ce qu’il me semble la présence d’un TPM est un pré-requis pour vendre un PC avec une version récente de Windows). Je n’ai pas encore étudié tout ce qu’il serait possible de faire avec ce TPM, mais dans ce journal je vais décrire comment l’utiliser pour s’authentifier auprès d’un serveur SSH.
SHA-mbles : une collision à préfixes choisis sur SHA-1
Au début de l’année 2020, alors que l’on commençait à entendre parler de quelques cas de pneumonie atypique dans la ville chinoise de Wuhan, deux chercheurs français, Gaëtan Leurent (Inria) et Thomas Peyrin (Nanyang Technological University, Singapour), publiaient la première collision à préfixes choisis sur l’algorithme de condensation cryptographique SHA-1, et démontraient la faisabilité d’une attaque contre la toile de confiance OpenPGP.
L’attaque, dénommée SHA-mbles (« chaos », « désordre »), est de toute beauté et son étude fournit une excellente occasion, en cette période de confinement, de se pencher sur diverses notions comme le format des certifications OpenPGP ou le fonctionnement des algorithmes de condensation.
Gnuk, NeuG, FST-01 : entre cryptographie et matériel libre
Depuis quelques années, la Free Software Initiative of Japan (FSIJ, association de promotion des logiciels libres au Japon) travaille sur un ensemble de projets à la croisée des chemins entre cryptographie, informatique embarquée et matériel libre.
Ces projets sont l’œuvre de Niibe Yutaka (Gniibe ou g新部), qui, entre autres casquettes, est président de la FSIJ, coordinateur des traductions japonaises du projet GNU, développeur Debian et contributeur à GnuPG (où il travaille notamment sur la cryptographie à courbes elliptiques et la gestion des cartes à puce — deux aspects qui sont directement liés aux projets dont il va être question dans cette dépêche).
Votre serviteur avait déjà très brièvement évoqué l’existence de deux de ces projets (Gnuk et le FST-01) dans une dépêche précédente consacrée à la carte OpenPGP (dont la lecture est recommandée avant de poursuivre), mais sans donner aucun détail, ce que la présente dépêche va corriger.
Journal Scorepw, un évaluateur de mots de passe
Un petit journal promotionnel pour annoncer mon dernier projet libre (qui ne devait initialement être qu’un petit de bout de code jamais supposé sortir de chez moi…) : scorepw, un outil permettant d’évaluer la « qualité » d’un mot de passe.
Pour ceux que la théorie intéresse, je les déçois immédiatement : il n’y a rien de novateur dans scorepw — pas de nouvelle méthode d’évaluation révolutionnaire à laquelle personne n’aurait encore jamais pensé. Au contraire, scorepw n’est qu’un peu d’enrobage (…)
Journal GnuPG 2.2, la nouvelle branche stable de GnuPG
Après GnuPG 2.1.23 il y a trois semaines, les développeurs de GnuPG viennent de sortir la version 2.2.0.
Il n’y a pas beaucoup de différences entre ces deux versions vu que GnuPG 2.1.23 (dont j’ai parlé ici) était en fait une release candidate pour la version 2.2.0.
À part quelques corrections de bug, la principale différence est que l’option --auto-key-retrieve
n’est de nouveau plus activée par défaut : elle avait été rendue active par défaut dans GnuPG 2.1.23 (…)
Journal GnuPG lance une nouvelle campagne de financement
Après s’être sorti d’une mauvaise passe il y a quelques années grâce à une campagne de financement réussie et aux contributions de quelques grosses entreprises, GnuPG cherche aujourd’hui à pérenniser ses ressources et lance à cette fin une nouvelle campagne de financement où l’accent est mis sur la récurrence des dons et l’importance des donateurs individuels.
PGP, OpenPGP, GnuPG : petit rappel des faits
Au début des années 1990, Phil Zimmerman écrivit PGP (Pretty Good Privacy), un logiciel (…)
Journal De la distribution des clefs OpenPGP
Introduction
Un problème fréquemment rencontré avec OpenPGP est celui de la distribution des clefs publiques : comment Alice peut-elle transmettre sa clef publique à Bob, étape préalable indispensable à toute communication sécurisée ?
Depuis les premières versions de PGP, plusieurs méthodes ont été élaborées pour tenter de résoudre ce problème. Cet article les passe en revue.
Les serveurs de clefs
La première méthode, la plus connue et celle historiquement associée au monde OpenPGP, consiste à enregistrer la clef auprès d’un serveur (…)
Journal Et paf, le SHA-1 !
Un journal bookmark pour annoncer la première collision SHA-1.
Concrètement, des chercheurs du Centrum Wiskunde & Informatica (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 (…)
Journal De la confiance dans le monde OpenPGP
Introduction
La confiance est l’un des concepts à la fois les plus importants et les plus mal compris d’OpenPGP. Derrière ce terme peuvent se cacher en réalité deux notions bien distinctes, illustrées par les propositions suivantes :
- Alice est confiante que la clef 0xB4902A74 appartient à Bob ;
- Alice fait confiance à Bob quand celui-ci lui dit que la clef 0x4B493BB7 appartient à Charlie.
La première proposition fait référence à la validité de la clef 0xB4902A74, tandis que la seconde fait (…)
Journal Gestion des erreurs d’allocation mémoire en C
Chaque fois que je commence un nouveau projet en C, je me pose toujours la même question : que faire en cas d’échec d’allocation de mémoire ?
C’est une question qu’on ne se pose pas dans la plupart des autres langages plus récents, où l’allocation de mémoire est généralement une opération cachée loin de la vue du programmeur. Mais en C, la question se pose chaque fois que l’on doit appeler malloc()
ou toute autre fonction allouant de la mémoire : que faire (…)
Journal Gfsecret, le secret réparti en pratique
Jour’Nal,
Dans un précédent journal sur la gestion des clefs OpenPGP, je mentionnais en passant la possibilité « d’utiliser une méthode de secret réparti pour partager la clef privée en m fragments, dont n sont nécessaires pour reconstituer la clef complète ».
J’aimerais revenir sur cette méthode pour présenter les outils que j’ai développé pour la mettre en œuvre.
Un peu de théorie : le partage de secret d’Adi Shamir
Il existe plusieurs méthodes de partage de secret, celle qui nous intéresse (…)
Reparlons de Let’s Encrypt
Let’s Encrypt est une autorité de certification fournissant gratuitement des certificats de type X.509 pour TLS. Dans le dernier journal où il était question de Let’s Encrypt, des commentateurs ont demandé des retours d’expérience :
On est sur LinuxFr.org, moi je t’aurais surtout demandé « Comment ? ». J’ai l’intention de m’y mettre aussi, mais je n’ai pas encore franchi le pas et j’aimerais avoir des retours d’expérience.
En effet, y a largement matière à s’étendre sur l’utilisation de Let’s Encrypt. Cette dépêche est donc un ensemble pas forcément cohérent de réflexions sur des points divers et variés (sans aucune prétention à l’exhaustivité), agrémentées d’un peu de « retours d’expérience » et de conseils (qui valent ce qu’ils valent).
Convention : « Let’s Encrypt » (en deux mots) désignera l’autorité de certification délivrant des certificats par l’intermédiaire du protocole ACME (« Automatic Certificate Management Environment »), tandis que « Letsencrypt » (en un seul mot) désignera le client ACME officiel.
Journal Reparlons de Let’s Encrypt
Dans le dernier journal où il était question de Let’s Encrypt, des commentateurs ont demandé des retours d’expérience :
On est sur Linuxfr, moi je t'aurais surtout demandé "Comment ?". J'ai l'intention de m'y mettre aussi mais j'ai pas encore franchi le pas et j'aimerais avoir des retours d'expérience.
L’auteur du journal a répondu que Let’s Encrypt était « suffisamment simple d’utilisation pour qu’il ne soit pas nécessaire [de s’]étendre sur le sujet. »
Je disconviens respectueusement. Questions à se poser, pièges (…)
Quelques brèves sur OpenPGP
NdM : gouttegd livre régulièrement des journaux traitant d'OpenPGP. Il vient de réaliser une petit tour d'horizon de quelques brèves à ce propos.
Au sommaire :
- La reprise d'activité sur OpenPGP ;
- Une nouvelle version de la carte OpenPGP ;
- Facebook se met à OpenPGP.
Bonne lecture !
Journal Quelques brèves sur OpenPGP
Un petit journal bookmark pour annoncer quelques nouvelles intéressantes dans le monde OpenPGP.
La reformation du groupe de travail OpenPGP
Le groupe de travail OpenPGP à l’IETF s’était dissous en 2008 peu après la publication du RFC 4880, la version actuelle du standard OpenPGP. Depuis, il n’y avait pas eu grand’chose de nouveau dans OpenPGP, le plus gros changement étant l’introduction des algorithmes Camellia (RFC 5581) et ECDSA/ECDH (RFC 6637).
Maintenant, suite à un regain (…)