Ce que la cryptographie protège vraiment
Dans une chaîne de paiement, la cryptographie sert trois objectifs distincts, dont aucun ne garantit les deux autres. La confidentialité rend la donnée illisible pour qui l'intercepte ; l'intégrité rend détectable toute altération d'un message ; l'authentification établit l'origine d'un message et l'authenticité de la carte. Un même dispositif remplit souvent les trois fonctions à la fois.
Le HSM et la hiérarchie de clés
Le HSM (Hardware Security Module) est un coffre-fort cryptographique matériel, résistant aux intrusions physiques, où les clés sont générées et utilisées sans jamais en sortir en clair. On le retrouve chez les banques, les acquéreurs, les certificateurs et dans le cloud (CloudHSM). Les modèles utilisés en paiement sont certifiés FIPS 140-2 / 140-3 niveau 3 et PCI HSM / PCI PIN.
Les clés d'un système de paiement s'organisent en hiérarchie de rangs. Une clé maîtresse locale (LMK) protège toutes les autres clés stockées à l'extérieur du HSM. En dessous viennent des clés d'échange de zone, des clés de PIN, des clés de vérification de carte, etc. Aucune clé ne circule en clair, chacune étant transmise chiffrée sous la clé du rang supérieur.
LMK (Local Master Key) -- ne quitte jamais le HSM, protege tout le reste
|
+-- ZMK (Zone Master Key) -- clef partagee avec une banque partenaire
| |
| +-- ZPK (Zone PIN Key) -- chiffre les blocs PIN echanges dans la zone
| +-- ZAK (Zone Auth Key) -- authentifie les messages (MAC)
|
+-- TMK (Terminal Master Key) -- protege les clefs telechargees vers un terminal
|
+-- PVK (PIN Verification Key) -- verifie le PIN (methode IBM 3624 / VISA PVV)
+-- CVK (Card Verification Key) -- calcule et verifie le CVV / CVCDUKPT et P2PE : une clé par transaction
DUKPT (Derived Unique Key Per Transaction) désigne un procédé de dérivation dans lequel chaque transaction d'un terminal est chiffrée sous une clé unique dérivée, effacée après usage. Un terminal de point de vente ne doit pas réutiliser la même clé pour chiffrer le PIN et les données carte, puisque la fuite de cette clé rendrait déchiffrables toutes les transactions passées. La compromission d'une transaction chiffrée en DUKPT n'expose ni les précédentes ni les suivantes.
Le P2PE (Point-to-Point Encryption) désigne un dispositif où la donnée carte est chiffrée dès la lecture, dans un terminal durci pourvu de la fonction SRED (Secure Reading and Exchange of Data). Elle ne redevient lisible que dans l'environnement de déchiffrement du prestataire, hors des systèmes du marchand. Ce dernier ne manipule donc aucune donnée en clair. Son périmètre PCI s'en trouve fortement réduit (SAQ P2PE).
Cryptogrammes EMV : l'ARQC, preuve d'authenticité
Les cryptogrammes d'application sont des valeurs que la puce EMV calcule à chaque paiement, avec une clé de session dérivée de sa clé maîtresse (MDK) et les données de la transaction. Le cryptogramme prouve à l'émetteur que la carte est authentique et que ces données n'ont pas été modifiées. Le mécanisme a rendu la contrefaçon de carte quasi impossible, la copie des données visibles ne reproduisant pas la clé enfermée dans la puce.
| Sigle | Nom | Rôle |
|---|---|---|
| ARQC | Authorization Request Cryptogram | Généré par la carte, envoyé à l'émetteur pour demander l'autorisation en ligne |
| ARPC | Authorization Response Cryptogram | Réponse cryptographique de l'émetteur (MAC), vérifiée par la carte |
| TC | Transaction Certificate | Cryptogramme d'acceptation finale (transaction approuvée et finalisée) |
| AAC | Application Authentication Cryptogram | Cryptogramme de refus (transaction déclinée) |
Le même principe gouverne le CVV / CVC imprimé et le CVV dynamique de la tokenisation. Dans les deux cas, un code de vérification est calculé cryptographiquement à partir du PAN, de la date d'expiration et d'une clé secrète (CVK). Sans cette clé, un fraudeur ne peut pas produire de code valide pour un numéro donné. Le cryptogramme statique conserve donc une utilité, malgré ses limites en e-commerce, où il est transmis à chaque paiement.
Chiffrement en transit et menace post-quantique
Sur les réseaux ouverts, l'exigence 4 de PCI DSS impose un chiffrement fort en transit, soit en pratique TLS 1.2 ou 1.3, avec des suites cryptographiques robustes et le forward secrecy. Le SSL et les premières versions de TLS sont interdits depuis le 30 juin 2018. L'acceptation de ces protocoles par un serveur constitue une non-conformité et expose les sessions aux attaques de déchiffrement connues contre ces versions.
Un ordinateur quantique suffisamment puissant casserait, via l'algorithme de Shor, les cryptographies asymétriques actuelles (RSA, courbes elliptiques) qui protègent TLS et les certificats. Aucune machine de cette capacité n'existe à ce jour. Le risque est pourtant déjà présent sous forme de « récolter maintenant, déchiffrer plus tard », un attaquant capturant aujourd'hui du trafic chiffré pour le déchiffrer le jour venu.
Le NIST a finalisé le 13 août 2024 ses premiers standards post-quantiques, soit FIPS 203 (ML-KEM) pour l'échange de clés, FIPS 204 (ML-DSA) et FIPS 205 (SLH-DSA) pour la signature. EMVCo et le PCI SSC suivent le dossier. La crypto-agilité désigne la conception de systèmes dans lesquels un algorithme cryptographique se remplace sans reconstruire l'ensemble de la chaîne. La migration du paiement vers ces standards s'étalera sur la décennie 2030.