Le merveilleux monde des Hardware Security Modules

Aujourd’hui, nous allons vous parler d’un équipement informatique très utilisé dans le domaine de la monétique et pourtant méconnu : la boîte noire transactionnelle (BNT), aussi connu sous son sigle anglais HSM (hardware security module).  Rentrons dans le tréfonds de l’écosystème monétique.

Quel est l’intérêt des HSM ?

Une rapide analyse des risques nous amène à plusieurs questions tels que :

  • Comment assurer la confidentialité des données sensibles lors d’un paiement sur internet ?
  • Comment détecter l’altération des données dans une demande d’autorisation ?
  • Comment prouver qu’une carte est authentique ?

Les réponses sont apportées par la cryptographie. En effet, elle a ceci de fantastique qu’elle assure confidentialité, intégrité et non-répudiation. Et ce, que ce soit sur des messages en transit ou sur des données stockées dans un système.

Toutefois, l’implémentation d’un système cryptographique nécessite quelques prérequis. Il faut, en effet, avoir la garantie qu’aucun tiers ne connaisse les clés secrètes utilisées par la carte bancaire, les banques, etc.

La sécurité des transactions est donc bâtie sur quelques secrets qu’il convient de protéger autant que faire se peut. En effet, en cas de fuite de ces secrets, les fraudeurs pourraient fabriquer de vraies fausses cartes, d’altérer les données de l’autorisation sans se faire repérer, etc. Inconcevable !

De ce besoin de sécurité émerge l’idée d’un boîtier cryptographique stockant des secrets en lieu sûr. Il s’agit bien sûr du HSM.

Note : les HSM peuvent être de simples cartes électroniques mises au dos d’un ordinateur. Mais, cela est moins sécurisé. Aussi sont-elles moins utilisées chez les acteurs monétiques.

Par ailleurs, étant donnée la forte cadence des transactions, il est nécessaire d’avoir un dispositif cryptographique performant. Les HSM sont généralement capables d’encaisser de très grosses charges transactionnelles.

Finissons ce chapitre par quelques exemples d’utilisation monétique.

Demande d’autorisation

Lors d’une demande d’autorisation on-line (appel de l’émetteur), un cryptogramme applicatif (ARQC) est généré, protégeant ainsi les données importantes (numéro de carte, montant, …). La clé secrète utilisée pour le calcul de l’ARQC est stockée dans la puce lors de la personnalisation. Cette même clé est stockée également dans le HSM de l’émetteur.

Contrôle ARQC grâce au HSM

Note : chaque carte possède une clé différente, dérivée d’une clé maître stockée sur le HSM. Ce mécanisme de dérivation a volontairement été omis pour ne pas compliquer le schéma.

Carte à piste

Il est aisé de reconstituer la piste d’une carte à partir des différentes données la composant (numéro de carte, date d’expiration, …). Heureusement, un cryptogramme est présent et empêche la falsification des données. Pour plus de détail, vous pouvez consulter cet article.

Note : la cinématique est la même que celle exposée ci-dessus.

Contrôle du code confidentiel (PIN)

Dans le cas d’un retrait bancaire, le code confidentiel est contrôlé par l’émetteur. On parle alors de PIN-Online, par opposition au PIN-Offline (contrôle en local par la carte comme pour un paiement sur un TPE). Pour cela, le distributeur chiffre le PIN et l’envoie à l’émetteur. Ce dernier s’appuiera sur un HSM pour le déchiffrer.

Note : la cinématique est la même que celle exposée ci-dessus.

Personnalisation

Un HSM peut générer les données piste et puce à l’aide des clés secrètes afin de réaliser la personnalisation de la carte. Il peut également générer le code confidentiel. Relié à une imprimante, il pourra alors en demander l’impression. Ce process, connu sous le nom de PIN Mailer, s’achève par l’envoi du pli. C’est le fameux courrier que vous recevez quelques jours après votre carte par la poste.

Personnalisation

Note : cette cinématique n’est qu’une possibilité parmi tant d’autres.

Qui fabriquent de tels boîtiers ?

Sans être exhaustif, les principaux constructeurs, tout du moins les plus connus, sont :

  • ARX, avec son HSM baptisé : PrivateServer
  • Bull, avec son HSM baptisé : CRYPT2Pay
  • Safenet, avec son HSM baptisé : Luna EFT
  • Thales, avec son HSM baptisé : payShield
  • Wordline, avec son HSM baptisé : Crypton

Bull étant le leader en France, trustant 95 % des parts de marché, nous alignerons la présentation du HSM sur celle de sa CRYPT2Pay.

Note : les noms de produit susmentionnés sont les HSM dédiés aux transactions financières. Ces marques proposent également des HSM génériques.

À quoi ressemble un HSM ?

Un HSM est un boîtier cryptographique sécurisé. Il est composé de :

  • un processeur principal ;
  • un processeur cryptographique ;
  • détecteurs de sécurité (cf. paragraphe suivant) ;
  • plusieurs types de mémoires (SRAM, flash, …).

La mémoire flash contient principalement le système d’exploitation embarqué et le paramétrage de l’administrateur (configuration réseau, gestion des comptes, traces, etc.) .

La mémoire SRAM est sécurisée. Elle a, en effet, la capacité de s’autoeffacer dans certaines circonstances. Elle contient notamment les clés secrètes.

Face avant de la CRYPT2Pay
Face avant de la CRYPT2Pay

Ces boîtiers sont-ils vraiment sécurisés ?

Outre le fait que ces boîtiers sont très performants dans la réalisation de calculs cryptographiques, ils sont dotés de dispositifs de sécurité permettant de détecter :

  • l’ouverture du HSM ;
  • les mouvements (tilt) ;
  • les variations de températures ;
  • les effractions ;
  • les anomalies de tensions.

Note : selon l’installation du HSM et sa génération, de simples vibrations conduisent parfois au déclenchement du détecteur de mouvement. Par ailleurs, une anecdote couramment racontée dans le milieu est l’histoire d’un personnel de ménage, soucieux de bien tout nettoyer, qui dépoussiéra le HSM et in fine enclencha le mécanisme de sécurité. Cette histoire souligne l’importance de stocker le sur un support stable et dans un local sécurisé.

Bien sûr, chacun de ces mécanismes n’ont pas les mêmes impacts sécuritaires. Une variation de température n’est pas aussi grave qu’une effraction. La riposte est donc graduée allant d’un effacement partiel des données sensibles à un effacement complet. Si dans le 1er cas, un simple reboot du HSM peut suffire à tout remettre en ordre, dans le 2nd cas, c’est plus problématique. En effet, cela nécessite la restauration des secrets dans le HSM. C’est ce qu’on appelle la cérémonie des clés.

La cérémonie des clés

 clé secrète maître du HSM se situe dans sa mémoire sécurisée. Bien évidemment, si celle-ci est perdue, il faut la recharger en mémoire. Il est donc nécessaire que cette clé soit stockée sur des supports externes comme des cartes à puce, protégées par des codes confidentiels. Les cartes et codes associés sont appelés « secrets ».

Il va sans dire que ces secrets doivent être stockés dans un lieu sécurisé (coffre, mis sous scellé, etc.). Et pour éviter tout risque, le partage de connaissance est de mise (split knowledge). Chaque carte contient ainsi une partie seulement de la clé. Ces différents cartes et codes seront attribués soigneusement à différents porteurs de secrets. Ainsi, le risque de fraude interne ne peut pas être le fait d’une seule personne.

La cérémonie des clés consiste en la réunion des différents porteurs de secrets afin de réintroduire la clé maître en mémoire.

Note : le chargement de la clé maître n’est pas le seul type de cérémonie. Il en existe d’autres comme la signature du logiciel du HSM. Mais, le principe reste le même.

Par ailleurs, ces boîtiers sont souvent certifiés PCI PTS HSM (Payment Card Industry PIN Transaction Security) qui atteste d’un certain niveau de sécurité. Recourir au service d’un HSM est donc un bon moyen de simplifier la certification PCI-DSS sur la partie « cryptographie ».

16 Replies to “Le merveilleux monde des Hardware Security Modules”

  1. Bel article 🙂

    Par contre, petit détail:

    « La mémoire flash contient principalement le système d’exploitation embarqué, le paramétrage de l’administrateur (configuration réseau, gestion des comptes, traces, etc.) et les clés secrètes. »

    « et les clés secrètes »…. ? Je ne pense pas 😉

    « La mémoire SRAM est sécurisée. Elle a, en effet, la capacité de s’autoeffacer dans certaines circonstances. »

    🙂

    Bonne continuation !

    • Merci pour votre vigilance.
      Effectivement, les clés secrètes sont stockées en mémoire sécurisé. Sinon aucun intérêt.
      La mémoire flash, en revanche, contient les clés publiques correspondantes aux clés privées de signature du logiciel applicatif.
      Article rectifié :-).
      Kévin

  2. Il fut un temps où j’ai plus que connu les premières générations (avec TSM) de la BNT, la BNR, de l’ECB, et les différentes variantes de CGDC et d’outils de personnalisation. En ce sens (entres autres) votre article est rafraichissant en plus d’être intéressant.
    François78 – François Bonnenfant

    • Bonjour,
      La communication se fait de manière classique via :
      HTTP/HTTPS pour l’administration
      des protocoles d’échange pour les services cryptographiques
      Cordialement,
      Kévin

      • Merci infiniment pour votre réponse .
        ce que je cherche vraiment c le processus des clés .
        depuis le tpe ,banque acquéreur, banque émetteur,hsm.
        les clés :lmk ,tmk,zmk,tpk,zpk ….

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *

*