Référence🔐 Sécurité & donnéesAvancé⏱ 15 min de lecture

🔐 Cryptographie du paiement

HSM, hiérarchies de clés, DUKPT et P2PE, cryptogrammes EMV (ARQC), chiffrement TLS en transit et menace post-quantique : la machinerie qui rend la donnée carte inexploitable

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.

🔒
Symétrique
Une seule clé partagée (AES, 3DES en fin de vie). Rapide, idéale pour chiffrer des volumes, à condition de distribuer la clé de façon sûre. Cœur du monde carte (PIN, cryptogrammes).
🔑
Asymétrique
Une paire clé publique / clé privée (RSA, courbes elliptiques). Résout la distribution de clés et permet la signature. Base de TLS, des certificats et de l'authentification de puce.
🧮
Empreintes
Fonctions de hachage (SHA-256) et codes d'authentification (MAC). Ils ne chiffrent pas mais garantissent l'intégrité d'un message ou d'un mot de passe.
🔑
Le vrai problème, c'est la clé
Un algorithme public et éprouvé comme AES ou RSA n'est jamais le maillon faible d'un dispositif. La gestion des clés couvre leur génération, leur distribution, leur stockage, leur rotation et leur destruction, et chacune de ces étapes ouvre une possibilité de fuite. C'est elle qui fait ou défait la sécurité. Les dispositifs propres au paiement, HSM, DUKPT et cérémonies de clés, répondent tous à ce seul problème.

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.

Puce EMVMDK (clé maîtresse carte)TPE / SREDIPEK + compteur (DUKPT)HSM acquéreur / PSPLMK · BDK · ZPK · ZAKHSM émetteurLMK · MDK · PVK · CVKClé de session1 par transaction, dérivée de l'ATCClé par transactionla BDK n'est jamais dans le TPETraduction de zonebloc PIN rechiffré sous ZPKVérificationsARQC, PIN (PVV), CVV/CVCARQC (tag 9F26)PIN chiffré DUKPTISO 8583 champs 52 / 55ARPC + code réponseARQC + données de transactionbloc PIN traduit sous ZPKautorisation en ligneARPC : la carte authentifie la réponse de l'émetteurAucune clé ne voyage en clair : elle circule chiffrée sous la clé du rang supérieur,et change de zone par traduction dans un HSM, jamais par déchiffrement en mémoire.Compromettre une transaction n'en compromet aucune autre : c'est tout l'objet de DUKPT.Clé dans la puce (MDK)Dérivée par transactionClé sous LMK, dans un HSMVérification émetteur
Hiérarchie de clés simplifiée d'un HSM de paiement
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 / CVC
ℹ️
Cérémonie de clés : connaissance partagée et double contrôle
La génération d'une clé maîtresse suit une procédure formalisée, conduite en présence de plusieurs porteurs qui détiennent chacun un fragment de la clé (split knowledge). Aucune opération sensible ne s'exécute sans deux personnes présentes (dual control). Aucun individu ne connaît jamais la clé complète, principe fondateur exigé par PCI PIN.

DUKPT 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.

Principe de DUKPT
Fabricant / injecteur
Dérive une clé initiale (IPEK) depuis la BDK
La clé de base (BDK) reste dans le HSM, jamais dans le terminal
Terminal
Stocke l'IPEK et un compteur de transactions
La BDK n'est jamais présente dans l'appareil
Terminal
Dérive une clé unique à chaque transaction
Clé fonction du compteur, utilisée une seule fois puis effacée
Serveur / HSM
Recalcule la même clé pour déchiffrer
À partir de la BDK et du numéro de série + compteur reçus

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).

✅
DUKPT protège le secret des clés dans le temps, tandis que P2PE sort le marchand du circuit de la donnée en clair. Réunis dans une solution PCI P2PE validée, les deux mécanismes ramènent les exigences applicables au point de vente physique à celles du 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.

SigleNomRôle
ARQCAuthorization Request CryptogramGénéré par la carte, envoyé à l'émetteur pour demander l'autorisation en ligne
ARPCAuthorization Response CryptogramRéponse cryptographique de l'émetteur (MAC), vérifiée par la carte
TCTransaction CertificateCryptogramme d'acceptation finale (transaction approuvée et finalisée)
AACApplication Authentication CryptogramCryptogramme de refus (transaction déclinée)
Les cryptogrammes d'application EMV

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.

MDK · clé maîtresse de l'émetteurelle ne sort jamais du HSM, et n'entre jamais dans une cartepersonnalisationelle reste iciDans la puceDans le HSM de l'émetteurUDK · clé de la cartediversifiée par le PAN et le PSNClé de sessiondérivée de l'UDK et du compteur ATCARQCMAC des données de l'opérationLa carte vérifie l'ARPCelle authentifie la réponse reçueUDK redérivéeMDK + PAN + PSN reçus dans le messageClé de sessionmême dérivation, même compteur ATCARQC recalculéil doit être identique à celui reçuARPCsigne le code réponse pour la carteDonnées de l'opérationmontant, devise, pays, dateATC · compteur de la pucenombre imprévisible du TPEARQC · tag 9F26, champ 55ARPC · la réponse cryptographique de l'émetteurla MDK ne quitte pas le HSMseul un résultat voyage, jamais un secretidentique ⇒ carte authentiqueLa puce et le HSM refont le même calcul chacun de leur côté : seul le résultat traverse le réseau.Une clé maîtresse, une clé de carte, une clé de session : chaque rang ne sert qu'à fabriquer le suivant.
ℹ️
Authentifier la carte ≠ authentifier le porteur
L'ARQC établit l'authenticité de la carte auprès de l'émetteur, sans porter d'information sur l'identité du porteur. La vérification du PIN, en ligne ou hors ligne, et la SCA obtenue par 3-D Secure portent sur la personne. La sécurité d'un paiement repose sur la superposition de ces couches, carte authentique et porteur authentifié.

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.

30 juin 2018
date limite d'interdiction du SSL et des versions anciennes de TLS
PCI SSC
FIPS 203/204/205
premiers standards de cryptographie post-quantique publiés le 13 août 2024
NIST
Shor
algorithme quantique qui menace RSA et les courbes elliptiques

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.

⚠️
Ne pas attendre le jour J
Les données de longue durée (identifiants, secrets) captées aujourd'hui resteront exploitables le jour où le déchiffrement deviendra possible. L'inventaire des usages cryptographiques et le choix de solutions agiles se conduisent pour cette raison en 2026, et non en 2032, sans attendre l'existence d'une machine capable de casser RSA. Un système conçu sans cette agilité imposerait une refonte complète au moment de la bascule.