SSE(サーバーサイド暗号化)について
SSE-KMS・SSE-S3・SSE-Cの違いを、簡単に理解できるように説明しますね。
まず、SSE-KMSとSSE-S3は、どちらもAWS(Amazon Web Services)が提供するデータの暗号化の方法です。
データを暗号化することで、悪い人がそのデータを勝手に見たり使ったりできないようにします。
SSE-S3(サーバーサイド暗号化 - S3管理のキー)
- 簡単な説明
- S3バケットに保存するデータをAWSが自動的に暗号化してくれる方法です。
- 暗号化に使う鍵(キー)はAWSが管理します。 - 詳しい説明
- データをS3にアップロードすると、AWSがそのデータを自動的に暗号化します。
- AWSが暗号化に使う鍵(キー)を全部管理してくれるので、自分で鍵を作ったり管理したりする必要がありません。
- データを取り出すときも、AWSが自動でデータを復号(暗号を解くこと)してくれます。
SSE-KMS(サーバーサイド暗号化 - KMS管理のキー)
- 簡単な説明
- こちらもS3バケットに保存するデータを暗号化する方法ですが、鍵(キー)の管理を少し細かく自分でコントロールできるようにします。
- AWSのKMS(Key Management Service)というサービスを使って鍵を管理します。 - 詳しい説明
- データをS3にアップロードするとき、暗号化に使う鍵(キー)はKMSが管理します。
- KMSを使うことで、どのキーを使うか、自分で選んだり、鍵の使用状況を追跡したりすることができます。
- 鍵の管理が細かくできるので、セキュリティをより強化したいときに使います。
- データを取り出すときも、KMSが暗号を解くのに必要な鍵を提供してくれます。
ここまでのまとめ
SSE-S3
- 簡単に使える。
- 鍵の管理は全部AWSがしてくれる。
- 自分で鍵の管理をする必要がない。
SSE-KMS
- 少し高度な管理ができる。
- KMSを使って鍵を自分で管理したり、使用状況を追跡したりできる。
- セキュリティをより強化したい場合に便利。
どちらもデータを安全に保つための方法ですが、どれだけ細かく管理したいかによって選ぶことができます。
SSE-S3は簡単で便利、SSE-KMSはより細かく管理したいときに使います。
SSE-C(Server-Side Encryption with Customer-Provided Keys)も、AWSでデータを暗号化する方法の一つです。
SSE-Cは、SSE-KMSやSSE-S3とは異なるアプローチを取っています。
それぞれの違いをわかりやすく説明します。
SSE-C(サーバーサイド暗号化 - 顧客提供のキー)
- 簡単な説明
- あなた自身が暗号化のための鍵(キー)を用意して、AWSに渡してデータを暗号化する方法です。
- 鍵の管理は自分で行います。 - 詳しい説明
- データをS3にアップロードする際、自分で作った鍵(キー)をAWSに渡します。
- AWSはその鍵を使ってデータを暗号化しますが、鍵自体はAWSに保存しません。
- データを取り出すときも、同じ鍵をAWSに渡す必要があります。その鍵を使ってAWSがデータを復号します。
- 鍵の管理は全部自分で行うので、鍵が失われるとデータを復号することができなくなります。
SSE-S3との違い
SSE-S3
- 鍵の管理をAWSがすべて行います。
- 鍵を自分で用意する必要はありません。
- 鍵の管理についてあまり考えなくてもいいので簡単。
SSE-C
- 鍵を自分で用意して管理します。
- データをアップロードするたびに、その鍵をAWSに渡します。
- 鍵の管理が必要なので、鍵を安全に保管する責任があります。
SSE-KMSとの違い
SSE-KMS
- 鍵はAWSのKMSサービスが管理します。
- KMSを使って鍵の管理や使用状況の追跡ができます。
- セキュリティを強化しつつも、AWSに鍵の管理を任せられる。
SSE-C
- 鍵を自分で用意して管理します。
- AWSに鍵の管理を任せず、自分で全ての鍵の管理を行います。
- 鍵を失うとデータの復号ができなくなるため、鍵の保管が非常に重要です。
ここまでのまとめ
SSE-S3
- AWSがすべての鍵管理を行う。
- 簡単で便利。
SSE-KMS
- AWSのKMSを使って鍵を管理。
- セキュリティを強化したい場合に便利。
SSE-C
- 鍵を自分で用意して管理。
- 鍵の安全な保管が必要。
それぞれの方法は、どれだけ自分で鍵の管理をしたいか、どれだけセキュリティを強化したいかによって選べます。
SSE-Cは、自分で鍵を管理したい場合に使う方法です。
コスト面について、それぞれの暗号化方法(SSE-S3、SSE-KMS、SSE-C)には異なる費用がかかります。
これを簡単に理解できるように説明しますね。
SSE-S3のコスト
- 簡単な説明
- データを保存するときにかかる通常のストレージ費用に加えて、暗号化のための追加費用はかかりません。 - 詳しい説明
- SSE-S3を使う場合、S3の通常のストレージ料金だけが発生します。
- 暗号化にかかる追加の料金はありません。
SSE-KMSのコスト
- 簡単な説明
- KMSを使うことで追加の費用が発生します。 - 詳しい説明
- SSE-KMSを使う場合、次のような追加費用が発生します
- KMSキーの利用料金: KMSでキーを作成し、管理するための費用。
- KMSリクエスト料金: データを暗号化・復号するためにキーを使用するリクエストの費用。
- これらの料金は、データの量や利用頻度に応じて変わります。
SSE-Cのコスト
- 簡単な説明
- 特別な追加費用はかかりませんが、自分で鍵を管理するための努力やコストがかかります。 - 詳しい説明
- SSE-Cを使う場合、S3の通常のストレージ料金のみが発生します。
- 暗号化のための追加費用はありません。
- ただし、自分で鍵を安全に保管・管理するためのシステムや手間が必要です。それが間接的なコストとなります。
まとめ
SSE-S3
- 通常のストレージ料金のみ。
- 暗号化に追加費用はかからない。
SSE-KMS
- KMSの利用料金とリクエスト料金が追加でかかる。
- より高度な鍵管理機能を利用するための費用。
SSE-C
- 通常のストレージ料金のみ。
- 鍵管理のための追加費用はかからないが、自分で鍵を管理するための労力やシステムが必要。
各方法のコストは、どれだけ手間をかけずに済ませたいか、どれだけセキュリティを強化したいかによって異なります。
SSE-S3は簡単で追加費用がかからず、SSE-KMSは高度な機能のために追加の費用が発生し、SSE-Cは鍵の管理が自分の責任になる代わりに追加費用はかかりません。