Des signatures faites pour durer

On parle surtout de confidentialité quand on évoque l'ordinateur quantique. L'authenticité est menacée de la même façon. Une signature RSA ou ECDSA pourra être contrefaite le jour où ces algorithmes tomberont, et avec elle tout document signé qu'on croyait inaltérable. Un contrat, un procès-verbal, une archive probante ou une mise à jour logicielle doivent pouvoir être vérifiés longtemps après leur signature.

Pourquoi SLH-DSA

Feranor PQC Suite signe par défaut avec SLH-DSA, normalisé par le NIST en 2024 (FIPS 205). Sa sécurité ne repose que sur des fonctions de hachage, l'hypothèse la plus prudente que la cryptographie connaisse. C'est aussi pourquoi le guide des mécanismes cryptographiques de l'ANSSI l'admet seul, sans hybridation obligatoire.

La suite ajoute malgré tout, par défaut, une cosignature ECDSA P-384. Les deux signataires figurent dans un même message CMS, chacun avec son certificat, et la vérification suit trois règles.

  • Les deux ou rien. Une signature hybride n'est valide que si les deux signatures le sont, chaînes de certification comprises.
  • Jamais classique seule. Un message dont tous les signataires sont classiques est refusé, quel que soit le profil.
  • Une seule identité. Le certificat du cosignataire doit nommer le même sujet que le signataire post-quantique, si bien qu'un tiers ne peut pas greffer sa propre signature classique.

Signer un fichier, le vérifier

Une signature détachée laisse le document intact et produit un fichier .p7s à côté de lui. La ligne de commande lit le fichier une seule fois, quelle que soit sa taille, et la signature pèse environ 50 Ko, certificats en plus.

fpqc sign contract.pdf --detached
fpqc verify contract.pdf.p7s --content contract.pdf --trust alice-signer.pem --require-hybrid

Ces signatures sont du CMS standard. OpenSSL 3.5 les vérifie, attachées comme détachées, ce que nos tests d'interopérabilité contrôlent à chaque version.

Ce que cela coûte

SLH-DSA est lente à signer par construction, c'est le prix de sa robustesse. Sur un poste récent (Intel Core Ultra 9, Linux, OpenSSL 3.5), une signature SLH-DSA-SHA2-256f prend 43 ms, 45 ms avec la cosignature par le magasin de clés, et 11 ms par signature quand quatre fils signent en parallèle. Sur une machine virtuelle partagée de 2 vCPU, comptez 163 ms. La vérification, elle, prend 1,4 ms sur le poste récent.

Pour des contrats, des archives ou des versions de logiciel, c'est négligeable. Pour des volumes de signatures très élevés, le ML-DSA composite, bien plus rapide, rejoindra le profil ANSSI dès que .NET le prendra en charge dans CMS.

Une signature doit rester vérifiable aussi longtemps que le document qu'elle protège. Le choix de l'algorithme se fait pour cette durée, pas pour aujourd'hui.

Nous appliquons d'ailleurs ce principe à nous-mêmes. Chaque version de la suite est livrée avec des empreintes signées en SLH-DSA-SHA2-256s par le certificat de version de Feranor, dont l'empreinte est publiée sur ce site.


Les composants, les algorithmes, les performances et les tarifs de la suite, sur une seule page.

Chiffrer en post-quantique avec Feranor PQC Suite ➔