Article de reference

module de sécurité matérielle

Un HSM au format PCIe Un module de sécurité matériel ( HSM ) est un dispositif informatique physique qui protège et gère les secrets (notamment les clés numériques ) et effectue...

Écoutez cet article
Un HSM au format PCIe

Un module de sécurité matériel ( HSM ) est un dispositif informatique physique qui protège et gère les secrets (notamment les clés numériques ) et effectue des opérations de chiffrement et de déchiffrement pour les signatures numériques , l'authentification forte et d'autres fonctions cryptographiques. Ces modules se présentent généralement sous la forme d'une carte enfichable ou d'un périphérique externe se connectant directement à un ordinateur ou à un serveur réseau . Un module de sécurité matériel contient une ou plusieurs puces de cryptoprocesseur sécurisées .

Conception

Les modules de sécurité matériels (HSM) peuvent comporter des fonctionnalités permettant de détecter les tentatives de falsification, telles que des signes visibles de falsification, la journalisation et l'envoi d'alertes, ou une résistance à la falsification rendant toute tentative difficile sans pour autant rendre le HSM inopérant, ou encore une réactivité à la falsification, comme la suppression des clés dès la détection d'une tentative. Chaque module contient une ou plusieurs puces de cryptoprocesseur sécurisées pour empêcher toute falsification et tout sondage du bus , ou une combinaison de puces dans un module protégé par un boîtier inviolable, résistant à la falsification ou réactif à la falsification. La grande majorité des HSM existants sont conçus principalement pour gérer des clés secrètes. De nombreux systèmes HSM disposent de moyens pour sauvegarder de manière sécurisée les clés qu'ils gèrent en dehors du HSM. Les clés peuvent être sauvegardées sous forme encapsulée et stockées sur un disque dur ou un autre support, ou encore en externe à l'aide d'un dispositif portable sécurisé tel qu'une carte à puce ou un autre jeton de sécurité .

Les HSM sont utilisés pour l'autorisation et l'authentification en temps réel dans les infrastructures critiques et sont donc généralement conçus pour prendre en charge les modèles de haute disponibilité standard, notamment le clustering , le basculement automatisé et les composants redondants remplaçables sur le terrain .

Certains modules HSM disponibles sur le marché permettent d'exécuter des modules spécifiques développés au sein de leur enceinte sécurisée. Cette fonctionnalité s'avère utile, par exemple, lorsque des algorithmes ou une logique métier particuliers doivent être exécutés dans un environnement sécurisé et contrôlé. Ces modules peuvent être développés en C natif , en .NET, en Java ou dans d'autres langages de programmation.

Certification

En raison de leur rôle essentiel dans la sécurisation des applications et des infrastructures, les modules HSM à usage général et/ou leurs modules cryptographiques sont généralement certifiés selon des normes internationalement reconnues telles que les Critères communs (par exemple, le profil de protection EN 419 221-5, « Module cryptographique pour services de confiance ») ou la norme FIPS 140 (actuellement la 3e version, souvent appelée FIPS 140-3). Bien que le niveau de certification de sécurité FIPS 140 le plus élevé soit le niveau 4, la plupart des modules HSM sont certifiés niveau 3. Dans le système des Critères communs, le niveau d’assurance d’évaluation (EAL) le plus élevé est EAL7 ; la plupart des modules HSM sont certifiés EAL4+. Lorsqu’ils sont utilisés dans des applications de paiement, la sécurité d’un module HSM est souvent validée par rapport aux exigences HSM définies par le Conseil des normes de sécurité de l’industrie des cartes de paiement (PCI SSC) .

Utilisations

Un module de sécurité matériel peut être utilisé dans toute application utilisant des clés numériques. Ces clés sont généralement de grande valeur ; leur compromission aurait donc des conséquences négatives importantes pour leur propriétaire.

Les fonctions d'un HSM sont les suivantes :

  • génération de clés cryptographiques sécurisées embarquées,
  • un système de stockage sécurisé des clés cryptographiques embarquées, au moins pour les clés de niveau supérieur et les plus sensibles, souvent appelées clés maîtresses,
  • gestion clé,
  • utilisation de données cryptographiques et sensibles, par exemple pour effectuer des opérations de décryptage ou de signature numérique,
  • suppression sécurisée embarquée des données cryptographiques et autres données sensibles qu'elle gérait.

Les HSM sont également déployés pour gérer les clés de chiffrement de données transparentes pour les bases de données et les clés pour les périphériques de stockage tels que les disques ou les bandes .

Certains systèmes HSM font également office d'accélérateurs cryptographiques matériels . Leurs performances sont généralement inférieures à celles des solutions purement matérielles pour les opérations à clé symétrique. Cependant, avec des performances allant de 1 à 10 000 signatures RSA 1024 bits par seconde, les HSM peuvent décharger significativement le processeur pour les opérations à clé asymétrique. Depuis que le National Institute of Standards and Technology (NIST) recommande l'utilisation de clés RSA 2048 bits à partir de 2010 , les performances avec des clés plus longues sont devenues cruciales. Pour répondre à ce besoin, la plupart des HSM prennent désormais en charge la cryptographie à courbe elliptique (ECC), qui offre un chiffrement plus robuste avec des clés plus courtes.

Environnement PKI (HSM d'autorité de certification)

Dans les environnements PKI , les modules de sécurité matériels (HSM) peuvent être utilisés par les autorités de certification (AC) et les autorités d'enregistrement (AR) pour générer, stocker et gérer des paires de clés asymétriques. Dans ce cas, un dispositif doit posséder certaines caractéristiques fondamentales, à savoir :

  • Protection logique et physique de haut niveau
  • Schéma d'autorisation utilisateur en plusieurs parties (voir partage de secrets )
  • Audit complet et traces de journalisation
  • Sauvegarde sécurisée des clés

En revanche, les performances des appareils dans un environnement PKI sont généralement moins importantes, tant pour les opérations en ligne que hors ligne, car les procédures de l'autorité d'enregistrement représentent le goulot d'étranglement des performances de l'infrastructure.

Systèmes de paiement par carte HSM (HSM bancaires)

Les modules HSM spécialisés sont utilisés dans le secteur des cartes de paiement. Ils prennent en charge à la fois les fonctions générales et les fonctions spécialisées nécessaires au traitement des transactions et à la conformité aux normes du secteur. Ils ne disposent généralement pas d' API standard .

Les applications typiques sont l'autorisation des transactions et la personnalisation des cartes de paiement, nécessitant des fonctions telles que :

  • vérifier que le code PIN saisi par l'utilisateur correspond au code PIN de référence connu de l'émetteur de la carte
  • Vérifier les transactions par carte de crédit/débit en contrôlant les codes de sécurité des cartes ou en effectuant le traitement hôte d'une transaction EMV en lien avec un contrôleur de guichet automatique ou un terminal de point de vente.
  • prendre en charge une API de cryptographie avec une carte à puce (telle qu'une carte EMV )
  • Réencrypter un bloc de code PIN pour l'envoyer à un autre hôte d'autorisation
  • effectuer une gestion sécurisée des clés
  • prise en charge d'un protocole de gestion de réseau de distributeurs automatiques de billets (DAB) de points de vente
  • Prise en charge des normes de facto en matière de clés hôte-hôte | API d'échange de données
  • générer et imprimer un « envoi postal contenant un code PIN »
  • générer des données pour une carte à bande magnétique (PVV, CVV )
  • générer un jeu de clés pour cartes et prendre en charge le processus de personnalisation des cartes à puce

Les principales organisations qui produisent et maintiennent des normes pour les HSM sur le marché bancaire sont le Payment Card Industry Security Standards Council , ANS X9 et ISO .

Établissement de la connexion SSL

Les applications critiques en termes de performances qui doivent utiliser HTTPS ( SSL / TLS ) peuvent tirer parti de l'utilisation d'un module de sécurité matériel (HSM) d'accélération SSL en déplaçant les opérations RSA, qui nécessitent généralement plusieurs multiplications de grands entiers, du processeur hôte vers le module HSM. Les modules HSM classiques peuvent effectuer environ 1 à 10 000 opérations RSA 1024 bits par seconde. L'amélioration des performances pour les clés de grande taille devient de plus en plus importante.

DNSSEC

De plus en plus de registres utilisent des modules HSM pour stocker les clés de signature des fichiers de zone DNS volumineux . OpenDNSSEC est un outil open source qui gère la signature des fichiers de zone DNS .

Le 27 janvier 2007, l'ICANN et Verisign , avec le soutien du département du Commerce des États-Unis , ont commencé le déploiement de DNSSEC pour les zones racine DNS . Les détails de la signature racine sont disponibles sur le site web de DNSSEC racine.

Blockchain et HSM

Un portefeuille matériel de cryptomonnaie compatible avec l'informatique quantique

La technologie blockchain repose sur des opérations cryptographiques. La protection des clés privées est essentielle pour garantir la sécurité des processus blockchain qui utilisent la cryptographie asymétrique. Ces clés sont généralement stockées dans un portefeuille de cryptomonnaies, comme le portefeuille matériel illustré.

La synergie entre les HSM et la blockchain est mentionnée dans plusieurs articles, soulignant leur rôle dans la sécurisation des clés privées et la vérification de l'identité, par exemple dans des contextes tels que les solutions de mobilité basées sur la blockchain.

HSM automobiles

Les modules de sécurité matériels automobiles (HSM) sont des coprocesseurs cryptographiques intégrés dans les unités de commande électroniques (ECU) pour protéger les systèmes embarqués et les bus de communication contre la manipulation et l'utilisation abusive.

Ils agissent comme une racine de confiance matérielle en générant et en stockant de manière sécurisée des clés cryptographiques et en déchargeant les opérations critiques pour la sécurité telles que le démarrage sécurisé , le chiffrement, le déchiffrement, l'authentification et l'attestation.

Dans les calculateurs embarqués modernes, les modules de sécurité matériels (HSM) font partie des éléments matériels de base permettant d'établir une racine de confiance matérielle, aux côtés des éléments sécurisés, des modules de plateforme de confiance (TPM) , des mémoires programmables une seule fois (OTP), des mémoires mortes (ROM) et des fonctions physiques non clonables (PUF). Leur utilisation offre un support matériel dédié aux opérations cryptographiques, mais induit des compromis en termes de surface de puce, de consommation d'énergie et de latence. C'est pourquoi ils sont généralement intégrés dans les contrôleurs de domaine automobiles de milieu et haut de gamme plutôt que dans les microcontrôleurs les plus petits.

Logiciel HSM

Les modules de sécurité matériels (HSM) automobiles sont généralement accompagnés de micrologiciels et de logiciels dédiés qui gèrent l'accès aux services cryptographiques. Il s'agit notamment du micrologiciel du HSM, des chargeurs de démarrage sécurisés, des bibliothèques cryptographiques et des intergiciels qui exposent les services de sécurité au système d'exploitation et aux applications. Dans les systèmes basés sur AUTOSAR , le micrologiciel du HSM peut s'interfacer avec des couches de services standardisées pour fournir des opérations cryptographiques aux applications. Des implémentations commerciales de micrologiciels pour HSM sont disponibles auprès de plusieurs fournisseurs de logiciels automobiles, souvent sous forme de composants intégrés aux plateformes AUTOSAR ou aux frameworks de sécurité des constructeurs automobiles.

Les implémentations commerciales comprennent :

  • wolfSSL – wolfHSM
  • ETAS – CycurHSM
  • Elektrobit – EB zentur