Chiffrement denveloppe avec des clés asymétriques vs KMS
On février 18, 2021 by adminDans le chiffrement denveloppe, une clé secrète symétrique est utilisée pour signer les données, puis une autre clé est utilisée pour chiffrer le secret à produire une clé secrète cryptée. Les messages chiffrés sont emballés avec la clé secrète chiffrée et envoyés au client / consommateur qui a ensuite déchiffré la clé secrète chiffrée pour obtenir la clé secrète, qui à son tour est utilisée pour déchiffrer le message
Il y a 2 façons pour limplémenter:
- Chiffrement asymétrique: le producteur crypte la ou les clés secrètes avec la clé publique des consommateurs. Le consommateur utilise une clé privée pour déchiffrer le secret chiffré
- KMS (comme AWS KMS): la clé secrète est chiffrée par le KMS, et le client qui a besoin daccéder à la clé secrète doit demander au KMS de le décrypter
Lavantage de lapproche KMS est que la gestion des clés est centralisée et que la révocation des autorisations dun client peut être effectuée en supprimant le client du KMS et en tournant la clé.
Y a-t-il de bonnes raisons dutiliser des clés asymétriques au lieu de KMS?
Commentaires
- Outre le fait quun KMS est un service distinct à maintenir, gérer et devenir un point de défaillance unique dans un environnement distribué? Votre question est-elle une question de " cryptage " ou une " logistique " question?
Réponse
Si le KMS contient la clé, il peut lire le message. Si le KMS est violé, alors un attaquant peut lire tous les messages associés à toutes les clés quil a volées. Les clés asymétriques où la clé privée est uniquement détenue par le destinataire permettent uniquement au destinataire de lire le message. Ainsi, il ny a pas de souci de voir les systèmes KMS. Si la clé privée est volée, ce nest que pour les e-mails à cet utilisateur qui ont utilisé cette clé , pas tout le monde dans le système.
Réponse
Il sagit de savoir où vous stockez le secret et qui y a accès .
Tout dabord une clarification: vous êtes confus. KMS nutilise pas de cryptage asymétrique (également appelé cryptage à clé publique). Il utilise le cryptage par clé privée pour activer le cryptage de lenveloppe. Ce sont deux choses différentes.
Dans le cryptage asymétrique, le producteur du cryptage na jamais à accéder au secret, il a juste besoin de la clé publique. Le producteur utilise la clé publique pour chiffrer, le consommateur utilise la clé privée correspondante pour déchiffrer. Afin de faciliter la rotation des clés, le producteur ajoute parfois la clé publique qui a été utilisée pour chiffrer afin que le consommateur sache quelle clé privée utiliser pour déchiffrer. Quelle que soit la quantité de données chiffrées, il ny a aucune indication sur la clé privée. Lalgorithme de déchiffrement est généralement plus intensif en calcul que le chiffrement à clé privée.
Dans le chiffrement denveloppe, le producteur et le consommateur doivent être identiques (ou tous les deux ont accès à la clé principale). Vous utilisez une clé principale pour générer une clé secondaire appelée clé de données. Vous cryptez ensuite la clé de données à laide de la clé principale et les données elles-mêmes à laide de la clé de données, puis vous ajoutez la clé de données cryptée aux données cryptées. Lorsque vous déchiffrez, vous utilisez la clé principale pour déchiffrer la clé de données ajoutée, puis utilisez la clé de données déchiffrée pour déchiffrer les données.
Lavantage de ceci est que vous pouvez stocker votre clé principale de manière rentable à des fins précises. construit le module de sécurité matériel et ne lexposez jamais à autre chose sans avoir à transmettre toutes les données que vous cryptez dans le HSM. Vous pouvez même générer la clé à lintérieur du HSM et ne pas la retirer afin quil ny ait aucune chance quelle ait jamais été exposée à quoi que ce soit de lextérieur. KMS vous fournit un HSM basé sur le cloud et il est soutenu par des HSM physiques dAmazon.
Si vous ne vous souciez pas de conserver votre clé principale dans un HSM, vous pouvez faire le même type de chiffrement en utilisant votre propre clé que vous essayez de protéger en mettant sur un serveur de saut ou quelque chose. comme ça. Aussi longtemps que vous ne cryptez pas plus de 250 millions de To, vous pouvez sauter l’enveloppe.
Si vous cherchez un exemple de code, vous pouvez vous en procurer pour implémenter un simple chiffrement AES ou chiffrement denveloppe, vous voudrez peut-être vérifier notre projet open-source. Il a une implémentation pour chaque que vous pouvez exploiter …
Laisser un commentaire