本文へスキップ

エンベロープ暗号化とは?

えんべろーぷあんごうか

エンベロープ暗号化とは、データを暗号化する鍵をさらに別の鍵で暗号化する二重鍵管理方式で、大量データの安全な暗号化に使われます。

エンベロープ暗号化(Envelope Encryption)とは、実際のデータを暗号化するための「データ暗号化鍵(DEK:Data Encryption Key)」と、そのDEK自体を暗号化するための「鍵暗号化鍵(KEK:Key Encryption Key)またはマスター鍵」の2層構造で暗号化を管理する手法です。封筒(エンベロープ)の中に手紙を入れるイメージから名付けられています。

仕組みを順を追うと以下のようになります。

  1. 暗号化したいデータに対して、一意のDEKを生成して暗号化する
  2. 生成したDEKをKEK(マスター鍵)で暗号化し、暗号化されたDEKをデータと一緒に保存する
  3. 復号時は、KEKで暗号化DEKを復号してDEKを取得し、そのDEKでデータを復号する

この方式の主な利点は以下のとおりです。

  • マスター鍵はAWS KMS・Azure Key Vault・Google Cloud KMSなどのHSMハードウェアセキュリティモジュール)上に安全に保管でき、平文では扱われない
  • 鍵をローテーション(更新)する際に全データを再暗号化する必要がなく、DEKを暗号化し直すだけで済む
  • 大量データを高速な共通鍵暗号(AESなど)で暗号化しつつ、鍵管理は安全な非対称暗号や専用KMSに委ねられる

クラウドサービスではS3やRDS、Secrets Managerなど多くのサービスが透過的にエンベロープ暗号化を採用しており、現代のセキュリティ設計において標準的な鍵管理方式となっています。

使い方・例文

AWSでS3バケット内のファイルを暗号化する際、KMSのカスタマーマスターキー(CMK)でDEKを暗号化するエンベロープ暗号化が自動的に使われます。これにより、マスター鍵を外部に露出させることなく大量のオブジェクトを安全に保護できます。

この用語をシェア

𝕏 でポスト LINE

最終更新:

関連用語