要旨

Google Cloud Next ’23 Day 1、『機密データを安心してお使いいただける AMD が提供するコンフィデンシャルコンピューティング』という講演を聞いてきました。

こちらは AMD さまによるセッションで、AMD 小林さまからサーバーユースとしての AMD プロセッサと、コンフィデンシャルコンピューティングについて話がありました。

また、AMD がスポンサーする藤井聡太さんについても紹介がありました。
私は藤井聡太さんを応援しているので、 個人的にも AMD 製品を活用しています。

データの機密性を考えた際に、AMD なしの選択肢は現状考えることは出来ません。
その詳細を記載しますので、ご覧ください。

Confidential VM について

セッションの解説の前に、Confidential VM について話をさせてください。
Confidential VM という VM をご存知でしょうか?

Google Cloud の GCE などのコンピュートリソースの選択肢の一つとして、 Confidential VM という選択肢があります。

これは、お客様データの機密性を担保するための選択肢の一つです。
Cloud KMS を利用した CMEK によるデータ暗号化が担保するのは、保管時の暗号化です。

データの暗号化には、3つの段階があります。

  • At rest (保管中)
  • In transit (移動中)
  • In use (利用中)

これらが実際の Google Cloud 上では以下のような段階になります。

At rest (保管中)

Google Cloud Storage や Cloud SQL などの保存中データの暗号化。
ブロックストレージ暗号化など、保管中に暗号化する仕組み。
Cloud KMS の CMEK などにより暗号化が担保されます。

In transit (移動中)

HTTPS などの暗号化により、データ転送中の暗号化。

In use (利用中)

ここは、今まで保護されてこなかった領域です。
Virtualization により、利用者間の分離はされていますが、暗号化は担保されていませんでした。

ここを担保するのが、 Confidential VM であり、AMD から提供されている SEV (Secure Encrypted Virtualization) です。

講演内容

講演では、AMD のサーバー技術について説明されました。

AMD は、サーバー向けなどの最先端の半導体を製造している会社であり、Google Cloud の裏側の CPU として、AMD の CPU も利用されています。

互換性としても、今の Linux や Windows で利用されている x64 命令セットは AMD が開発したものです。
そのため、利用に当たり互換性の問題はないとのことでした。

AMD マシンシリーズの利用

N2D C2D T2D などが AMD 製の CPU を利用したマシンタイプとのことです。

機密データを安全に扱うマシンは N2D Confidential / C2D Confidential などのマシンタイプが利用できます。

AMD マシンシリーズの詳細

汎用 N2D はあらゆるユースケースに利用できるマシンタイプとのことです。
コストを抑えたいユースケースには最適の選択とのことで、 100Gbps の Tire 1 Networking なども利用できます。

演算特化 C2D は、半導体設計、自動車設計などコンピュート特化のユースケースに最適とのことです。
第3世代 CPU で 3.5GHz クロック周波数で動作し、大きなデータの処理が得意です。
ローカル 3TB の SSD も利用できます。

Security

今回の表題にもある、Confidential VM は AMD 独自の技術を利用しているとのことです。

AMD CPU のセキュリティ機能として以下のような機能が提供されています。

  • AMD セキュアプロセッサ (セキュリティ専用CPU)
  • メモリ暗号化 SEM (Secure Memory Encryption)
  • 仮想マシン暗号化 SEV (Secure Encrypted Virtualization)

Google Cloud の Confidential VM は、 SEV の技術を利用して提供されているとのことです。

技術的には、仮想マシンごとに暗号鍵を作成し、メモリなどを暗号化することで、仮想マシン上の安全性が担保できるとのことです。
実行中メモリの内容が他の VM によって読み出されたとしても、暗号化により安全を担保できるとのことです。
また、専用のサブシステムを利用しているため、処理速度に対する影響は 1.7% 未満であり、既存プログラムの改修なく利用できるとのことです。

AMD 小林さまから見て、データの安全性を担保する上で利用しない選択肢は無いとのことでした。

AMD のサーバーユース

AMD は、サーバー向けのシェアを伸ばしているとのことです。
今回の Confidential VM などは、AMD チップセットの機能を利用した革新的なサービスとのことです。

セッションまとめ

AMD のチップセットを利用する際のマシンタイプは以下のような選択が望ましいとのことです。

  • C3D 最新のワークロード、デフォルトサービス
  • N2D コスト最適
  • T2D シングルスレッド性能に特化
  • C2D ハイパフォーマンス

また、AMD 小林さまからのメッセージとして、以下のものがありました。

  • AMD64 命令セットの発祥は AMD
  • AMD 独自のセキュリティ機能を利用した SEV を採用した Confidential VM “N2D” “C2D” インスタンスがお客様のデータを保護

まとめ

データ転送時、データ保存時の暗号化というのは企業でよく検討されている事項かと思います。
しかし、実行時の安全性は見逃されている事項かと思います。

仮想化という技術で、利用者間の分離はされていますが、暗号化という方法でも分離するのは、機密情報を扱う上で必須としてもよい機能であると考えます。

データの暗号化を、Cloud KMS や CMEK といったキーワードで完結させず、すべてのフェーズで暗号化することを考えてみてください。