Apprendre
Des guides courts et techniques sur le fonctionnement réel des signatures numériques : les algorithmes, les formats au niveau de l’octet et les erreurs de configuration qui font échouer la vérification. Écrits pour les moments où une signature refuse de se vérifier et où le message d’erreur ne vous apprend rien.
TLS
Certificats TLS de 47 jours : calendrier et automatisation
Vote SC-081 du CA/B Forum : certificats TLS publics à 200, 100 puis 47 jours, validation de domaine réutilisable 10 jours. Dates, profils ACME, ARI, alertes.
Chaîne d’approvisionnement
Schémas de signature APK v1 à v4, rotation de clé et Play
Signature des APK Android : schémas v1 à v4, rotation de clé avec v3 et v3.1, nouveau v3.2 hybride avec ML-DSA, Play App Signing et sortie d’apksigner verify.
Chaîne d’approvisionnement
Signature Authenticode : clés, horodatages, vérification
Signature de code Authenticode des exécutables Windows : règle HSM de 2023 pour les clés, horodatages qui survivent aux certificats, signtool et osslsigncode.
Bitcoin
Signer un message Bitcoin : BIP-137 et BIP-322 expliqués
Messages Bitcoin signés : en-têtes BIP-137, preuves BIP-322 simples et complètes, types d’adresse, portefeuilles compatibles, vérification testée en 2026.
Chaîne d’approvisionnement
C2PA Content Credentials : manifestes, signatures, limites
Content Credentials C2PA : manifestes, claims et signatures COSE, certificats et horodatages, états de validation, et pourquoi un réencodage les efface.
TLS
Épinglage de certificats en 2026 : quand et comment
Épinglage de certificats aujourd’hui : abandon de HPKP, empreintes SPKI pour Android, iOS et OkHttp, risque de blocage avec les certificats courts, rotation.
PKI
Certificate Transparency côté développeur : SCT et alertes
Fonctionnement de Certificate Transparency en 2026 : SCT et journaux, règles de Chrome, Apple et Firefox, recherche via Cert Spotter et crt.sh, surveillance.
Échec DKIM : condensat du corps, signature, clés et DNS
Pourquoi DKIM échoue : canonicalisation, condensat du corps, transfert, listes de diffusion, balise l=, taille de clé, DNS. Échecs reproduits et correctifs.
DNS
Chaîne de confiance DNSSEC : DS, DNSKEY, RRSIG et pannes
Comment la validation DNSSEC va de la racine à votre enregistrement : DS, DNSKEY, RRSIG, algorithmes 8, 13 et 15, dig et delv, échecs de roulement de clés.
DPoP
DPoP expliqué : lier les jetons OAuth à une clé client
DPoP (RFC 9449) lie les jetons d’accès OAuth à une clé client : JWT de preuve, jti, htm, htu, ath, nonces du serveur, cnf.jkt et serveur de ressources testé.
Algorithmes
Récupération de clé publique ECDSA : recid, v et ecrecover
Récupération de clé publique ECDSA : calcul, identifiant de récupération et v, ecrecover d’Ethereum, signatures compactes Bitcoin, EIP-2098 et bogues à éviter.
Ethereum
EIP-712 : ce que vous signez vraiment, et comment le lire
EIP-712 expliqué : données typées, domaine, types et hachage, permits ERC-2612, Permit2, approbations illimitées, lire une demande de signature avant de signer.
JWT
ES256 vs EdDSA pour les JWT : lequel choisir en 2026
ES256 vs EdDSA (Ed25519) pour les JWT : taille, déterminisme, malléabilité, vitesse, 13 bibliothèques testées, KMS et HSM, nouveau nom Ed25519, choix 2026.
Gestion des clés
Clés matérielles : Secure Enclave, StrongBox, TPM, PIV
Ce que garantit une clé matérielle : Secure Enclave d’Apple, TEE et StrongBox d’Android, TPM 2.0, YubiKey PIV, preuve par attestation et limites.
Signatures HTTP
HTTP Message Signatures (RFC 9421) pour API et bots
HTTP Message Signatures (RFC 9421) en pratique : composants couverts, Signature-Input, clés, rejeu, contrôles serveur, Web Bot Auth pour bots et agents d’IA.
JWT
Rotation des clés JWKS sans interruption de service
Rotation des clés de signature JWT sans requête en échec : règles du kid, fenêtres de chevauchement, Cache-Control, cache de 7 bibliothèques, retrait d’urgence.
JWT
Erreurs de vérification JWT : des jetons acceptés à tort
Erreurs de vérification JWT encore courantes : alg lu dans l’en-tête, confusion HS/RS, kid, aud, iss, exp, décalage d’horloge et cache JWKS, avec code corrigé.
Post-quantique
ML-DSA côté développeur : clés FIPS 204, signatures, code
ML-DSA (FIPS 204) en pratique : tailles 44/65/87, mode hedged ou déterministe, contexte, HashML-DSA, formats de clé, code testé pour OpenSSL, Go, Java, .NET.
TLS
TLS mutuel pour les API : certificats clients en pratique
TLS mutuel pour les API : certificats clients en TLS 1.3, AC privée, configurations nginx, Envoy, Go et Node.js, rotation et erreurs affichées par chacun.
PKI
OCSP et CRL en 2026 : comment se vérifie la révocation
Fin d’OCSP chez Let’s Encrypt, CRL obligatoires, CRLite et CRLSets. Ce que Java, .NET, Go, Python, Node.js et curl vérifient par défaut, et comment y remédier.
OpenID Connect
Validation du jeton d’ID OIDC, étape par étape
Valider un jeton d’ID OpenID Connect selon Core 3.1.3.7 : iss, aud, azp, signature, exp, nonce, at_hash et c_hash, et les pièges d’Entra ID, Google et Auth0.
Chaîne d’approvisionnement
OpenPGP en 2026 : RFC 9580, clés v6 et scission de GnuPG
OpenPGP aujourd’hui : RFC 9580 et clés v6, Ed25519 et X25519, RFC 9980 post-quantique, LibrePGP de GnuPG face à Sequoia, tests d’interopérabilité et conseils.
Clés d’accès
Passkeys côté développeur : WebAuthn sans tâtonner
Clés d’accès WebAuthn testées : enregistrement, connexion, attestation, synchronisation, vérification de l’utilisateur, algorithmes COSE, erreurs DOMException.
Documents
Signatures PDF expliquées : ByteRange, CMS, PAdES et LTV
Fonctionnement d’une signature PDF : ByteRange, CMS, niveaux PAdES, horodatages RFC 3161, LTV, pourquoi elle est valide mais non approuvée, comment la vérifier.
Java
PKIX path building failed en Java : causes et solutions
Pourquoi Java lève PKIX path building failed : AC privée, intermédiaire absent, mauvais magasin de confiance, racines obsolètes, SNI. Diagnostic et correctifs.
Post-quantique
Migration post-quantique en 2026 : plan pour développeurs
Échange de clés et signatures : ce qui est post-quantique par défaut en 2026, ce qu’il reste à faire, les vraies échéances (NIST IR 8547, CNSA 2.0, UE, R.-U.).
SAML
Validation des signatures SAML : que vérifier et pourquoi
Valider une signature SAML : références XMLDSig, canonicalisation, données à lire dans l’élément signé, contrôles d’Audience, de Recipient et de dates.
SD-JWT
SD-JWT & SD-JWT VC : divulgation sélective et EUDI Wallet
SD-JWT (RFC 9901) et SD-JWT VC : claims cachés derrière des condensats salés, liaison de clé contre le rejeu, lien avec l’EUDI Wallet et mdoc, état en 2026.
Algorithmes
secp256k1 expliquée : la courbe de Bitcoin et d’Ethereum
secp256k1 expliquée : paramètres, endomorphisme qui l’accélère, pourquoi Bitcoin et Ethereum l’utilisent, low-S, encodages des clés et adresses, plateformes.
Ethereum
Sign-In with Ethereum (EIP-4361) : vérifier côté serveur
Sign-In with Ethereum bien fait : message EIP-4361, nonce, domaine et URI, vérification serveur, ERC-1271 et ERC-6492 pour les portefeuilles intelligents.
Chaîne d’approvisionnement
Versions signées avec Sigstore : cosign, bundles, identité
Sigstore sans clé : certificats Fulcio, journal Rekor, bundles cosign, vérification de l’identité du signataire, provenance npm, attestations GitHub.
Gestion des clés
Signer avec un KMS cloud : AWS, Google Cloud et Azure
Signer avec AWS KMS, Google Cloud KMS et Azure Key Vault : types de clés, condensat ou message, ECDSA DER ou brut, JWT et fichiers, droits, journaux d’audit.
SSH
Certificats SSH vs authorized_keys : AC et principaux
Certificats OpenSSH au lieu d’authorized_keys : AC utilisateur et d’hôte, principaux, validité, ssh-keygen -s, config sshd, révocation KRL et erreurs réelles.
SSH
ssh-keygen en 2026 : types de clés, phrase de passe, agent
Quelle clé SSH générer en 2026 : Ed25519, clés FIDO -sk, nouvel hybride ML-DSA, RSA 3072 ; tours de KDF, risques du transfert d’agent, certificats, rotation.
TLS
X25519MLKEM768 expliqué : échange de clés hybride TLS 1.3
Le groupe hybride X25519MLKEM768 de TLS 1.3 : taille des key shares, point de code 0x11EC, qui l’active par défaut, comment le vérifier, ce qu’il peut casser.
PKI
Champs d’un certificat X.509 expliqués sur des cas réels
Champs X.509 de vrais certificats : sujet ou SAN, Key Usage et EKU, Basic Constraints, AKI et SKI, CRL, OCSP et AIA, SCT, et le sens actuel de chaque règle.
Modes de défaillance
Réutilisation de nonce ECDSA : comment un nombre répété révèle une clé privée
Pourquoi réutiliser le nonce k d’ECDSA révèle la clé privée : calcul, échecs de la PlayStation 3 et d’Android, r répétés sur Bitcoin, correctif RFC 6979.
Formats
Formats de signature ECDSA : DER ou brut (P1363), high-S et pièges entre bibliothèques
Pourquoi une signature ECDSA a deux encodages, ASN.1 DER et r‖s brut (IEEE P1363) : octets, high-S ou low-S, choix par défaut de Node.js, Go, Python et Java.
JWT
ES256 vs RS256 pour les JWT : comment choisir, et comment ne pas se brûler les doigts
ES256 vs RS256 pour les JWT : valeurs alg, taille des jetons, liste d’algorithmes épinglée, pourquoi ne jamais accepter alg none, signatures ES256 en r‖s brut.
Algorithmes
ECDSA vs RSA : quel algorithme de signature, et quand
ECDSA vs RSA : tailles de clé et de signature (P-256 vs RSA-3072), vitesse, usage dans TLS, SSH, JWT et blockchains, exigence du nonce, échéances PQC du NIST.
Vous préférez manipuler de vrais octets ? Les outils de Signature Lab s’exécutent entièrement dans votre navigateur.