Amazonが自社のre:invent 2014ショーでAWS Key Management Service(KMS)をローンチした。“データ暗号化で使用する暗号化キーの生成と管理を容易にするとともに,ハードウェアセキュリティモジュール(HSM)を使用してキーのセキュリティを保護するマネージドサービス”である。ローンチ時点では,EBS, S3, Redshiftがサポート対象だったが,11月下旬にElastic Transcoderのサポートが追加されている。
KMSは対称鍵を利用するサービスに対して,ストレージとライフサイクル管理の機能を提供する。Jeff Barr氏のブログ記事‘New AWS Key Management Service (KMS)’には,多数の利用サンプルが公開されている。その基盤となるシステム(“Cryptographic Details White Paper”に説明がある)は,楕円曲線デジタル署名アルゴリズム(ECDSA)とRSAを使用するものだが,API経由の署名については未提供だ。
KMSはAmazonのIdentity and Access Management(IAM)サービスに組み込まれる。IAMコンソールには,新たなエントリがいくつか追加されている。これはつまり,キーへのアクセスや操作を,AWSの各所で使用されているものと同じロールタイプやポリシによってコントロールできるということだ。さらに監視,ログ,監査を目的として,Amazon CloudWatchにも統合されている。
KMSではHSMをトラストアンカとして使用するが,処理の大部分はソフトウェアベースの‘HSA(Hardened Security Appliances)’によって行っている。このためにAmazonでは,KMSを既存のCloudHSMよりも,大幅に安くすることができた (専用のSafeNet Lunaセキュリティアプライアンスを使用するには,前払で5,000ドル,時間あたり1.88ドルの料金が必要)。KMSユーザにはキーのバージョンあたり月額1ドル,10,000キーリクエストあたり0.3ドルが課金される。無料使用枠では,月間20,000リクエストまで利用できる。KMSをEBSおよびS3で使用する場合の価格については,“Service Pricing Guide”に説明がある。
サービスはオプションとして,自動キーローテーション(年次ベース)にも対応する。この場合,時間の経過に伴って,新たなバージョンのキーが生成されて課金される毎に,サービスユーザの費用も高くなる。ただしそのコストは,キーローテーションに関わる通常の運用管理の問題に比較すれば,些細な問題であると言えるだろう。
このシステムでは,‘クォーラムベースのアクセス’を使用する。そのため,
Amazonの社員は誰一人として,ユーザのマスターキーにアクセスすることはできません。暗号化キーの機密性は何よりも重要なのです。
AWS契約上の標準的な“ユーザのコンテント”の章を越えて,法執行の要請や(FISA/外国情報監視法)裁判所令状を満たすために,キーへアクセスする方法は不明である。
あなたを含む任意のエンドユーザに対してサービスを提供するため,あるいは政府ないし規制機関による任意の要求(出頭命令や裁判所要請などを含む)に応じるために,ユーザのコンテンツを開示する場合があります。
KMSはこれまで,Amazonのサーバ側の暗号化機能が貧弱すぎる(しかしHSMソリューションはあまりにも高価だ)と感じていたユーザに対して,魅力的な妥協点を提供するサービスである。ただし米国政府(あるいはその他の政府)による介入を防ぐために暗号化を利用したいユーザにとっては,役に立たないものだろう。