Pour la première fois, j'ai utilisé un HSM, et c'était dans le cloud

Pour la première fois cette semaine, j’ai utilisé moi-même (configuré, interfacé) un “HSM”.

De quoi s’agit-il ? Un HSM est un “hardware security module”, un module de sécurité matériel qui sert à protéger des clés de chiffrement. L’idée est toute simple, dans l’informatique beaucoup d’élements de sécurité reposent sur des mécanismes de cryptographie (qu’il s’agisse de chiffrer les données pour des besoins de confidentialité, qu’il s’agisse de s’assurer de l’authenticité d’un document, qu’il s’agisse de vérifier l’identité d’un système distant, …) et il est important de protéger les clés contre toute utilisation par une personne ou un système non autorisé. Aussi, la clé est stockée dans un module matériel spécifique, et tous les calculs cryptographiques utilisant cette clé sont également exécutés dans ce module spécifique, de sorte que la clé ne sort jamais en clair de ce module. Evidemment, pour raffiner, ce module est conçu pour se protéger de toutes sortes d’attaques (par exemple : si on essaye d’ouvrir physiquement le module, la clé est effacée, si on mesure la consommation électrique, on ne devine aucune information sur la clé, …). Généralement, les fabriquants de ces boîtiers ont à coeur de faire auditer leurs solutions et de les soumettre à des batteries de test, de sorte que les clients puissent avoir confiance dans la technologie proposée (évaluation FIPS 140-2, évaluations critères communs, …). En France, notamment, Atos-Bull commercialise la gamme Proteccio, et Gemalto la gamme Safenet.

Dans mon parcours professionnel, j’ai eu à plusieurs reprises l’occasion d’avoir ce type d’engins dans le système d’information. Et à chaque fois, ça a été un long calvaire pour mes équipes, parce que, le matériel étant coûteux, difficile d’avoir la possibilité d’expérimenter pour apprendre, et parce que fondamentalement c’est difficile et complexe à mettre en oeuvre et à configurer dans des conditions de sécurité et de disponibilité compatibles avec les besoins d’une production informatique opérationnelle (en cluster, avec des sauvegardes, …).

Et j’ai découvert… cloudHSM ! CloudHSM, c’est une partition d’un HSM (un vrai, un physique), dans le cloud, avec donc toutes les caractéristiques de sécurité décrites précédemment. Et donc des clés de chiffrement protégées par un module matériel qui empêche toute récupération, exportation, utilisation des clés, y compris par AWS. En utilisant cloudHSM, vous avez le niveau de maîtrise de la sécurité d’un matériel en propre ayant un haut niveau de certification et d’audit (et donc de quoi répondre à des enjeux spécifiques de conformité également, comme dans le domaine bancaire), et la commodité de son utilisation et de son intégration dans le cloud.