(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公表特許公報(A)
(11)【公表番号】
(43)【公表日】2024-10-10
(54)【発明の名称】信頼できる測定方法、装置、コンピュータデバイスおよび読み取り可能な媒体
(51)【国際特許分類】
G06F 21/57 20130101AFI20241003BHJP
【FI】
G06F21/57 350
【審査請求】有
【予備審査請求】未請求
(21)【出願番号】P 2024522336
(86)(22)【出願日】2022-10-12
(85)【翻訳文提出日】2024-04-12
(86)【国際出願番号】 CN2022124804
(87)【国際公開番号】W WO2023061397
(87)【国際公開日】2023-04-20
(31)【優先権主張番号】202111186512.8
(32)【優先日】2021-10-12
(33)【優先権主張国・地域又は機関】CN
(81)【指定国・地域】
(71)【出願人】
【識別番号】511151662
【氏名又は名称】中興通訊股▲ふん▼有限公司
【氏名又は名称原語表記】ZTE CORPORATION
【住所又は居所原語表記】ZTE Plaza,Keji Road South,Hi-Tech Industrial Park,Nanshan Shenzhen,Guangdong 518057 China
(74)【代理人】
【識別番号】110001195
【氏名又は名称】弁理士法人深見特許事務所
(72)【発明者】
【氏名】張 敏
(72)【発明者】
【氏名】王 亮
(72)【発明者】
【氏名】談 虎
(72)【発明者】
【氏名】劉 建 軍
(72)【発明者】
【氏名】蔡 衢
(72)【発明者】
【氏名】周 佳
(72)【発明者】
【氏名】薛 志 宏
(57)【要約】
本願は、信頼できる測定装置が信頼できる起動をした場合、コンピューティングサーバに接続して、コンピューティングサーバの第1ブートローダプログラムの起動モードを特定し、第1ブートローダプログラムが信頼できるブートモードであることに応答して、コンピューティングサーバに記憶された第1グループの信頼できる測定結果を取得し、第1グループの信頼できる測定結果が、予め記憶された第1グループの信頼できる測定期待値と同一であることに応答して、コンピューティングサーバが信頼できる起動をしたと特定し、第1グループの信頼できる測定期待値はセキュリティ統括制御サーバにより信頼できる測定装置に送信されるものである、信頼できる測定方法を提供する。本願は信頼できる測定装置、コンピュータデバイスおよび読み取り可能な媒体をさらに提供する。
【特許請求の範囲】
【請求項1】
信頼できる測定装置に適用される信頼できる測定方法であって、
前記信頼できる測定装置が信頼できる起動をした場合、コンピューティングサーバに接続して、前記コンピューティングサーバの第1ブートローダプログラムの起動モードを特定するステップと、
前記第1ブートローダプログラムが信頼できるブートモードであることに応答して、前記コンピューティングサーバに記憶された第1グループの信頼できる測定結果を取得するステップと、
前記第1グループの信頼できる測定結果が、予め記憶された第1グループの信頼できる測定期待値と同一であることに応答して、前記コンピューティングサーバが信頼できる起動をしたと特定するステップであって、前記第1グループの信頼できる測定期待値はセキュリティ統括制御サーバにより前記信頼できる測定装置に送信されるものであるステップと、を含む
信頼できる測定方法。
【請求項2】
前記コンピューティングサーバに記憶された第1グループの信頼できる測定結果を取得した後に、
前記第1グループの信頼できる測定結果における少なくとも1つが、前記第1グループの信頼できる測定期待値における少なくとも1つと異なることに応答して、第1セキュリティ管理制御ポリシーを実行するステップをさらに含む
請求項1に記載の方法。
【請求項3】
前記第1セキュリティ管理制御ポリシーは、
予め設定されたサーバに第1セキュリティ警告を送信すること、
前記コンピューティングサーバの操作システムアップグレードを前記コンピューティングサーバに指示すること、
前記コンピューティングサーバの信頼できる測定範囲を調整するよう前記コンピューティングサーバに指示することのうちの少なくとも1つを含む
請求項2に記載の方法。
【請求項4】
前記信頼できる測定装置が信頼できる起動をした場合、
予め設定された第1条件を満たしたことに応答して、第2セキュリティ管理制御ポリシーを実行することをさらに含み、
前記予め設定された第1条件は、
予め設定された第1時間長さを超えており前記コンピューティングサーバへの接続に成功していないこと、
前記コンピューティングサーバに記憶された第1グループの信頼できる測定結果を取得していないこと、
前記第1グループの信頼できる測定結果の数が前記第1グループの信頼できる測定期待値の数を下回ること、
前記第1ブートローダプログラムが信頼できるブートモードではないことのうちの1つを少なくとも含む
請求項1に記載の方法。
【請求項5】
前記第2セキュリティ管理制御ポリシーは、
予め設定されたサーバに第2セキュリティ警告を送信すること、
前記コンピューティングサーバにシャットダウンを指示して起動をロックすることのうちの1つを少なくとも含む
請求項4に記載の方法。
【請求項6】
前記コンピューティングサーバが信頼できる起動をしたと特定した後に、
前記コンピューティングサーバの仮想化動作環境が信頼できるものであると特定したことに応答して、仮想マシンライフサイクルを維持するための操作を前記コンピューティングサーバが実行するよう指示するステップであって、
仮想マシンのライフサイクルに変化が生じたときに、前記コンピューティングサーバが前記仮想マシンに対して信頼できる測定を行うステップをさらに含む
請求項1に記載の方法。
【請求項7】
仮想マシンライフサイクルを維持するための操作を前記コンピューティングサーバが実行するよう指示した後に、
前記仮想マシンにアクセスし、前記仮想マシンの第2ブートローダプログラムの起動モードを特定するステップと、
前記第2ブートローダプログラムが信頼できるブートモードであることに応答して、前記仮想マシンに記憶された第2グループの信頼できる測定結果を取得するステップと、
前記第2グループの信頼できる測定結果が、予め記憶された第2グループの信頼できる測定期待値と同一であることに応答して、前記仮想マシンが信頼できる起動をしたと特定するステップであって、前記第2グループの信頼できる測定期待値はセキュリティ統括制御サーバにより前記信頼できる測定装置に送信されるものであるステップと、をさらに含む
請求項6に記載の方法。
【請求項8】
仮想マシンライフサイクルを維持するための操作を前記コンピューティングサーバが実行するよう指示した後に、
予め設定された第2条件を満たしたことに応答して、第3セキュリティ管理制御ポリシーを実行することをさらに含み、
前記予め設定された第2条件は、
予め設定された時間長さを超えており前記仮想マシンへのアクセスに成功していないこと、
前記仮想マシンの第2ブートローダプログラムが信頼できるブートモードではないこと、
前記仮想マシンが信頼できる起動をしていないと特定されたことのうちの1つを少なくとも含む
請求項7に記載の方法。
【請求項9】
前記第3セキュリティ管理制御ポリシーは、
予め設定されたサーバに第3セキュリティ警告を送信すること、
前記仮想マシンの中央処理装置CPUの動作を一時停止するよう前記コンピューティングサーバに指示することのうちの1つを少なくとも含む
請求項8に記載の方法。
【請求項10】
前記仮想マシンに記憶された第2グループの信頼できる測定結果を取得した後に、
前記第2グループの信頼できる測定結果における少なくとも1つが、前記第2グループの信頼できる測定期待値における少なくとも1つと異なることに応答して、第4セキュリティ管理制御ポリシーを実行するステップをさらに含む
請求項7に記載の方法。
【請求項11】
前記第4セキュリティ管理制御ポリシーは、
予め設定されたサーバに第4セキュリティ警告を送信すること、
仮想マシンの操作システムアップグレードを前記コンピューティングサーバに指示すること、
前記仮想マシンのアプリケーションプログラムの信頼できる測定範囲を調整するよう前記コンピューティングサーバに指示すること、
前記コンピューティングサーバが前記仮想マシンに記憶された測定期待値を更新するための測定期待値更新指令を前記コンピューティングサーバに送信することのうちの1つを少なくとも含む
請求項10に記載の方法。
【請求項12】
前記セキュリティ統括制御サーバが送信した少なくとも1つのグループの信頼できる測定期待値を、暗号化されたネットワークを介して受信して、前記少なくとも1つのグループの信頼できる測定期待値をローカルに記憶することをさらに含む
請求項1~11のいずれか一項に記載の方法。
【請求項13】
第1通信モジュールと第1処理モジュールを備え、
前記第1通信モジュールは、
前記信頼できる測定装置が信頼できる起動をした場合、コンピューティングサーバに接続することと、
前記コンピューティングサーバに記憶された第1グループの信頼できる測定結果を取得することに用いられ、
前記第1処理モジュールは、
前記コンピューティングサーバの第1ブートローダプログラムの起動モードを特定し、前記第1ブートローダプログラムが信頼できるブートモードである場合、前記コンピューティングサーバに記憶された第1グループの信頼できる測定結果を取得するよう前記第1通信モジュールに指示することと、前記第1グループの信頼できる測定結果が、予め記憶された第1グループの信頼できる測定期待値と同一であることに応答して、前記コンピューティングサーバが信頼できる起動をしたと特定することに用いられ、前記第1グループの信頼できる測定期待値はセキュリティ統括制御サーバにより前記信頼できる測定装置に送信されるものである
信頼できる測定装置。
【請求項14】
1つまたは複数のプロセッサと、
1つまたは複数のプログラムが記憶された記憶装置と、を備え、
前記1つまたは複数のプログラムが前記1つまたは複数のプロセッサに実行されたときに、前記1つまたは複数のプロセッサに請求項1~12のいずれか一項に記載の信頼できる測定方法を実現させる
コンピュータデバイス。
【請求項15】
コンピュータプログラムが記憶されたコンピュータ読み取り可能な媒体であって、前記コンピュータプログラムが実行されたときに、前記プロセッサに請求項1~12のいずれか一項に記載の信頼できる測定方法を実現させる
コンピュータ読み取り可能な媒体。
【発明の詳細な説明】
【技術分野】
【0001】
[関連出願の相互参照]
本願は2021年10月12日に提出された、名称を「信頼できる測定方法、装置、コンピュータデバイスおよび読み取り可能な媒体」とする中国特許出願CN202111186512.8号の優先権を主張し、その全ての内容を参照により本願に援用する。
[技術分野]
本願はクラウドコンピューティング技術分野に関するものであり、具体的に信頼できる測定方法、装置、コンピュータデバイスおよび読み取り可能な媒体に関するものである。
【背景技術】
【0002】
クラウドコンピューティングは仮想化レイヤにより下位レイヤハードウェアを統一管理および遮蔽し、需要に応じてユーザにコンピューティングサービスを提供し、リソース共有を実現し、リソースの利用率を高めている。しかし、クラウドプラットフォーム管理プログラムはサーバに配置され、一般的にサーバ性能の損失を招くのに加え、クラウドプラットフォーム管理プログラムとサービス仮想マシンは同一のサーバに配置され、物理的に隔離されておらず、セキュリティ上のリスクがある。
【0003】
上記の課題を解決するために、業界での先駆的な方案は、クラウドプラットフォーム制御、計算、ネットワーク、記憶などのモジュールをサーバからコントロールドーターカードにオフロードし、サーバ性能のゼロ損失を実現し、物理的マシンの全ての計算能力をみなユーザの仮想マシンに使用するように供出できるというものである。仮想化ソフトウェアがインテリジェントネットワークカードにオフロードされると、ユーザの計算リソースと完全に隔離され、性能のゼロ干渉が確保される。このような状況において、コンピューティングサーバの信頼できる測定について効果的に監視して、クラウドプラットフォーム全体のセキュリティ信頼性を保証するということを如何にして実現するかということは解決しなければならない課題となっている。
【発明の概要】
【課題を解決するための手段】
【0004】
本願は信頼できる測定方法、装置、コンピュータデバイスおよび読み取り可能な媒体を提供する。
【0005】
第1の態様において、本願実施例は信頼できる測定装置に適用される信頼できる測定方法を提供し、前記方法は、前記信頼できる測定装置が信頼できる起動をした場合、コンピューティングサーバに接続して、前記コンピューティングサーバの第1ブートローダプログラムの起動モードを特定するステップと、前記第1ブートローダプログラムが信頼できるブートモードであることに応答して、前記コンピューティングサーバに記憶された第1グループの信頼できる測定結果を取得するステップと、前記第1グループの信頼できる測定結果が、予め記憶された第1グループの信頼できる測定期待値と同一であることに応答して、前記コンピューティングサーバが信頼できる起動をしたと特定するステップであって、前記第1グループの信頼できる測定期待値はセキュリティ統括制御サーバにより前記信頼できる測定装置に送信されるものであるステップと、を含む。
【0006】
さらなる態様において、本願実施例は第1通信モジュールと第1処理モジュールを備える信頼できる測定装置をさらに提供し、前記第1通信モジュールは、前記信頼できる測定装置が信頼できる起動をした場合、コンピューティングサーバに接続することと、前記コンピューティングサーバに記憶された第1グループの信頼できる測定結果を取得することに用いられ、前記第1処理モジュールは、前記コンピューティングサーバの第1ブートローダプログラムの起動モードを特定し、前記第1ブートローダプログラムが信頼できるブートモードである場合、前記コンピューティングサーバに記憶された第1グループの信頼できる測定結果を取得するよう前記第1通信モジュールに指示することと、前記第1グループの信頼できる測定結果が、予め記憶された第1グループの信頼できる測定期待値と同一であることに応答して、前記コンピューティングサーバが信頼できる起動をしたと特定することに用いられ、前記第1グループの信頼できる測定期待値はセキュリティ統括制御サーバにより前記信頼できる測定装置に送信されるものである。
【0007】
さらなる態様において、本願実施例は、1つまたは複数のプロセッサと、1つまたは複数のプログラムが記憶された記憶装置と、を備え、前記1つまたは複数のプログラムが前記1つまたは複数のプロセッサに実行されたときに、前記1つまたは複数のプロセッサに前記の信頼できる測定方法を実現させる、コンピュータデバイスをさらに提供する。
【0008】
さらなる態様において、本願実施例は、コンピュータプログラムが記憶されたコンピュータ読み取り可能な媒体であって、前記コンピュータプログラムが実行されたときに、前記プロセッサに前記の信頼できる測定方法を実現させる、コンピュータ読み取り可能な媒体をさらに提供する。
【図面の簡単な説明】
【0009】
【
図1】本願実施例によるシステムアーキテクチャの概略図である。
【
図2】本願実施例が提供する信頼できる測定方法のフローチャートである。
【
図3】本願実施例が提供する信頼できる測定方法のさらなるフローチャートである。
【
図4】本願実施例が提供する信頼できる測定方法のさらなるフローチャートである。
【
図5】本願実施例が提供する、仮想マシンが信頼できる起動かどうか特定する際のフローチャートである。
【
図6】本願実施例が提供する、仮想マシンが信頼できる起動かどうか特定する際のさらなるフローチャートである。
【
図7】本願実施例が提供する具体的な実施例のシステムアーキテクチャの概略図である。
【
図8】本願実施例が提供する信頼できる測定装置の構造概略図である。
【
図9】本願実施例が提供する信頼できる測定装置のさらなる構造概略図である。
【
図10】本願実施例が提供する信頼できる測定装置のさらなる構造概略図である。
【発明を実施するための形態】
【0010】
以下では図面を参照して例示的な実施例についてより十分に説明するが、前記例示的な実施例は異なる形態で具体化されてよく、本明細書にて説明された実施例に限定されると解釈すべきではない。むしろ、これらの実施例を提供するのは、本願を詳らかで十全なものにするとともに、当業者に本願の範囲を十分に理解させることを目的とする。
【0011】
本明細書にて使用する、「および/または」という用語は1つまたは複数の関連列挙アイテムの任意のおよび全ての組み合わせを含む。
【0012】
本明細書にて使用する用語は特定の実施例を説明するためにのみ用いられ、本願を限定する意図はない。本明細書にて使用する単数形の「1つ」および「当該」という用語は、文脈が別途明らかに示さない限り複数形も含むことを意図する。さらに、本明細書にて「含む」および/または「……からなる」という用語を使用する場合は、前記特徴、全体、ステップ、操作、要素および/またはコンポーネントが存在することを指すが、1つまたは複数のその他の特徴、全体、ステップ、操作、要素、コンポーネントおよび/またはそのグループが存在すること、または追加することを排除しない。
【0013】
本明細書に記載の実施例は、本願の理想的な概略図により平面図および/または断面図を参照して説明することができる。よって、製造技術および/または許容範囲に応じて例示的な図面を修正できる。このため、実施例は図面に示した実施例に限定されず、製造工程により形成された配置の修正を含む。したがって、図面における例示的な領域は概略的な属性を有するほか、図面に示した領域の形状は要素の領域の具体的な形状を例示しているが、限定的なものではない。
【0014】
別途限定しない限り、本明細書にて使用する全ての用語(技術および科学用語を含む)の意味は当業者が一般的に理解する意味と同じである。さらに、一般的な辞書において限定されたこれらの用語は、関連技術および本願の背景でのその意味と一致する意味を有すると解釈されるべきであり、本明細書にて明確にそのように限定しない限り、理想化された、または過度の形式上の意味を有すると解釈されない。
【0015】
本願実施例が提供する信頼できる測定方法は、
図1に示すようなシステムに適用することができる。
【0016】
図1に示すように、システムは信頼できる測定装置1と、コンピューティングサーバ2と、セキュリティ統括制御サーバ3と、を備える。信頼できる測定装置1はコントロールドーターカードであり、ペリフェラルバスインターフェースを用いてコンピューティングサーバ2と接続されて、デジタル証明書で暗号化されたセキュリティネットワークを介してセキュリティ統括制御サーバ3と接続される。信頼できる測定装置1はCPU(Central Processing Unit、中央処理装置)と、内部メモリと、操作システムと、安全性測定モジュールと、を備える。ペリフェラルバスインターフェースはネットワークインターフェース、PCI(Peripheral Component Interconnect、周辺機器相互接続規格)インターフェース、PCIE(peripheral component interconnect express、高速シリアルコンピュータ拡張バス規格)インターフェース、SPI(Serial Peripheral Interface、シリアルペリフェラルインターフェース)、I2C(Inter-Integrated Circuit、2線式シリアルバス)インターフェース、SCSI(Small Computer System Interface、スモールコンピュータシステムインターフェース)などを含んでよいが、これらに限定されない。コンピューティングサーバ2は仮想マシンに計算リソース(CPU、内部メモリ、記憶、ネットワークなど)を提供する物理的サーバであり、これが提供する計算リソースは自らのボードカードに付帯してよく、各種バスまたはネットワークにより提供してもよい。コンピューティングサーバ2と信頼できる測定装置1はともに各自のハードウェア安全性測定モジュールを付帯しており、安全性測定モジュールは業界で一般的に使用される受動測定のセキュリティチップ(TPM)または自発測定のセキュリティチップ(TCM、TPCMボードカードなど)を含むがこれらに限定されず、安全性測定モジュールに信頼の基点と暗号学アルゴリズムを内蔵しており、システム全体に対し静的または動的測定を行うことができる。セキュリティ統括制御サーバ3はクラウドプラットフォーム全体の信頼の基点として、信頼できる測定装置1と、コンピューティングサーバ2と、仮想マシンの信頼できる測定期待値を全て記憶している。
【0017】
信頼できる測定装置1は仮想化制御モジュールとクラウドプラットフォーム制御プロキシモジュールを備える。仮想化制御モジュールは信頼できる測定装置1に常駐するプログラムであり、ペリフェラルインターフェースチャネルを介してコンピューティングサーバ2における仮想化制御プロキシモジュールに接続し、コンピューティングサーバ2のタイプと構成情報に応じて、セキュリティ統括制御サーバ3の仮想化管理に関する命令を命令変換でき、仮想化制御プロキシモジュールによりコンピューティングサーバ2と仮想マシン信頼できる測定過程の監視を実現して、仮想マシンのライフサイクルを制御し、IPMI(Intelligent Platform Management Interface,インテリジェントプラットフォーム管理インターフェース)のような専用回線により、電源管理モジュールに接続してコンピューティングサーバ2の電源状態を制御する。クラウドプラットフォーム制御プロキシモジュールは信頼できる測定装置1に常駐するプログラムであり、信頼できる測定装置1の起動に伴い動的に信頼できる測定をなすことができ、クラウドプラットフォーム制御プロキシモジュールは、デジタル証明書で認証した後の暗号化されたセキュリティネットワークを介してセキュリティ統括制御サーバ3が送信した、信頼できる測定装置1、コンピューティングサーバ2、そこで動作する仮想マシンの信頼できる測定期待値を受信して記憶する。信頼できる測定期待値はセキュリティ統括制御サーバ3の唯一の秘密鍵で暗号化され、信頼できる測定装置1の安全性測定モジュールに記憶され、使用時にはセキュリティ統括制御サーバ3のデジタル証明書の公開鍵を使用して暗号解読でき、改ざんされるのを防ぐ。
【0018】
コンピューティングサーバ2は仮想化制御プロキシモジュールと仮想マシンモニタ(virtual machine monitor、VMM)を備える。仮想化制御プロキシモジュールはコンピューティングサーバ2に常駐するプログラムであり、コンピューティングサーバ2の起動に伴い信頼できる測定をなすことができ、ペリフェラルバスインターフェースにより信頼できる測定装置1における仮想化制御モジュールと通信する。仮想マシンモニタはhypervisorとも言い、仮想マシンの構築と実行に用いられるソフトウェア、ファームウェアまたはハードウェアであり、virtioチャネル技術により仮想マシン内部の操作システムにアクセスして相応の命令を実行することができる。
【0019】
図2に示すように、本願実施例が提供する信頼できる測定方法は信頼できる測定装置に適用でき、前記方法は以下のステップS21からS23を含む。
【0020】
ステップ21、信頼できる測定装置が信頼できる起動をした場合、コンピューティングサーバに接続して、コンピューティングサーバの第1ブートローダプログラムの起動モードを特定する。
【0021】
信頼できる測定装置1とコンピューティングサーバ2は前後して通電し、起動過程において、信頼できる測定装置1とコンピューティングサーバ2はそれぞれ自らの安全性測定モジュールにより信頼できるブートを行う。信頼できる測定装置1はそこのbootloader(ブートローダプログラム)および操作システム、仮想化制御モジュール、クラウドプラットフォームプロキシモジュールの動的測定を完了する。コンピューティングサーバ2はそこのbootloaderおよび操作システム、仮想化制御プロキシモジュールの動的測定を完了する。
【0022】
本ステップにおいて、信頼できる測定装置1が信頼できる起動をした後、そこの仮想化制御モジュールはハードウェアチャネルを介して、コンピューティングサーバ2で動作する仮想化制御プロキシモジュールに接続して、仮想化制御プロキシモジュールにより安全性測定モジュールに関連する照会命令を実行し、コンピューティングサーバ2のbootloader(つまり、第1ブートローダプログラム)の起動モードが信頼できる起動モードであるかどうか特定する。
【0023】
ステップ22、第1ブートローダプログラムが信頼できるブートモードであることに応答して、コンピューティングサーバに記憶された第1グループの信頼できる測定結果を取得する。
【0024】
本ステップにおいて、信頼できる測定装置1が第1ブートローダプログラムは信頼できるブートモードであると特定した場合、信頼できる測定装置1の仮想化制御モジュールはコンピューティングサーバ2の仮想化制御プロキシモジュールにより、コンピューティングサーバ2における安全性測定モジュールのPCR(プラットフォーム構成レジスタ)内に保存された測定結果(つまり、第1グループの信頼できる測定結果)を読み取る。第1グループの信頼できる測定結果は、例えば安全性測定モジュールの測定値、仮想化制御プロキシモジュールの測定値など複数の測定値を含む。
【0025】
ステップ23、第1グループの信頼できる測定結果が、予め記憶された第1グループの信頼できる測定期待値と同一であることに応答して、コンピューティングサーバが信頼できる起動をしたと特定するステップであって、第1グループの信頼できる測定期待値はセキュリティ統括制御サーバにより信頼できる測定装置に送信されるものである。
【0026】
本ステップにおいて、信頼できる測定装置1は第1グループの信頼できる測定結果における各測定値を、予め記憶された第1グループの信頼できる測定期待値における各期待値とそれぞれ比較し、各測定値が対応する期待値とそれぞれ同一であれば、コンピューティングサーバ2は信頼できる起動であると判断する。
【0027】
セキュリティ統括制御サーバ3は、暗号化されたネットワークを介して信頼できる測定装置1の信頼できる測定期待値とコンピューティングサーバ2の信頼できる測定期待値(つまり、第1グループの信頼できる測定期待値)を事前に信頼できる測定装置1に送信する。いくつかの実施例において、信頼できる測定期待値は信頼できる測定装置1の自発的なリクエストに応じて送信してよい。信頼できる測定期待値はデジタル証明書で認証した暗号化されたネットワークを介し伝送して、信頼できる測定装置1の安全性測定モジュールに暗号化して保存してよく、使用時にはセキュリティ統括制御サーバ3のデジタル証明書の公開鍵を使用して暗号解読する。
【0028】
本願実施例が提供する信頼できる測定方法は信頼できる測定装置に適用でき、前記方法は、信頼できる測定装置が信頼できる起動をした場合、コンピューティングサーバに接続して、コンピューティングサーバの第1ブートローダプログラムの起動モードを特定するステップと、第1ブートローダプログラムが信頼できるブートモードであることに応答して、コンピューティングサーバに記憶された第1グループの信頼できる測定結果を取得するステップと、第1グループの信頼できる測定結果が、予め記憶された第1グループの信頼できる測定期待値と同一であることに応答して、コンピューティングサーバが信頼できる起動をしたと特定するステップであって、第1グループの信頼できる測定期待値はセキュリティ統括制御サーバにより信頼できる測定装置に送信されるものであるステップと、を含む。本願実施例はセキュリティ統括制御サーバにより信頼できる測定装置に第1グループの信頼できる測定期待値を送信し、信頼できる測定装置が第1グループの信頼できる測定期待値をローカルにキャッシュした後、さらにコンピューティングサーバの信頼できる起動過程について動的測定監視を行うため、セキュリティ統括制御サーバは常にオンラインである必要がなく、侵入、攻撃を受ける可能性が低い。本願実施例は信頼できる測定監視とセキュリティ管理の機能をコンピューティングサーバから信頼できる測定装置に最大限オフロード(Offload)しているため、信頼できる測定は計算リソースを占有せず、セキュリティ管理制御を実施できるだけでなく、計算リソースを最大限残すこともできる。
【0029】
いくつかの実施例では、
図3に示すように、コンピューティングサーバに記憶された第1グループの信頼できる測定結果を取得した(つまり、ステップ22)後に、前記方法は以下のステップS23’をさらに含む。
【0030】
S23’、第1グループの信頼できる測定結果における少なくとも1つが、第1グループの信頼できる測定期待値における少なくとも1つと異なることに応答して、第1セキュリティ管理制御ポリシーを実行する。
【0031】
第1グループの信頼できる測定結果が、信頼できる測定装置1にキャッシュされた第1グループの信頼できる測定期待値と完全には同一でなければ、コンピューティングサーバ2は不法に改ざんされた可能性がある、またはコンピューティングサーバ2の操作システムおよびソフトウェアが更新アップグレードを要する、またはコンピューティングサーバ2の測定の範囲が調整を要するということを表すため、このような場合、予め設定されたセキュリティ管理制御ポリシーを実行する。
【0032】
いくつかの実施例において、前記第1セキュリティ管理制御ポリシーは、予め設定されたサーバに第1セキュリティ警告を送信すること、コンピューティングサーバの操作システムアップグレードをコンピューティングサーバに指示すること、コンピューティングサーバの信頼できる測定範囲を調整するようコンピューティングサーバに指示することのうちの少なくとも1つを含む。
【0033】
なお、第1セキュリティ警告を受信する予め設定されたサーバはセキュリティ統括制御サーバ3であってよく、その他のクラウドサーバであってもよい。
【0034】
いくつかの実施例において、信頼できる測定装置1が信頼できる起動をした場合、前記信頼できる測定方法は、予め設定された第1条件を満たしたことに応答して、第2セキュリティ管理制御ポリシーを実行することをさらに含む。前記予め設定された第1条件は、予め設定された第1時間長さを超えておりコンピューティングサーバへの接続に成功していないこと、コンピューティングサーバに記憶された第1グループの信頼できる測定結果を取得していないこと、第1グループの信頼できる測定結果の数が第1グループの信頼できる測定期待値の数を下回ること、第1ブートローダプログラムが信頼できるブートモードではないことのうちの1つを少なくとも含む。
【0035】
いくつかの実施例において、コンピューティングサーバ2の信頼できる起動が不完全である、または信頼できる測定装置1の仮想化制御モジュールがタイムアウトしコンピューティングサーバ2の仮想化制御プロキシモジュールに接続できない、または信頼できる測定装置1が仮想化制御プロキシモジュールによりコンピューティングサーバ2の安全性測定モジュール内の測定結果(つまり、第1グループの信頼できる測定結果)を読み取ることができない場合、信頼できる測定装置1は予め設置された第2セキュリティ管理制御ポリシーを実行することができる。第1グループの信頼できる測定結果の数が第1グループの信頼できる測定期待値の数を下回ると信頼できる測定装置1が判断した場合、コンピューティングサーバ2の信頼できる起動は不完全であることを表す。
【0036】
いくつかの実施例において、前記第2セキュリティ管理制御ポリシーは、予め設定されたサーバに第2セキュリティ警告を送信すること、コンピューティングサーバにシャットダウンを指示して起動をロックすることのうちの1つを少なくとも含む。
【0037】
なお、第2セキュリティ警告を受信する予め設定されたサーバはセキュリティ統括制御サーバ3であってよく、その他のクラウドサーバであってもよい。コンピューティングサーバ2にシャットダウンを指示して起動をロックした場合、信頼できる測定装置1はコンピューティングサーバ2の電源管理モジュールによりシャットダウンしてコンピューティングサーバ2の起動をロックする。
【0038】
クラウドコンピューティング制御プレーンと計算リソースが分離されたシーンにおいて、仮想マシンはコンピューティングサーバに配置され、コンピューティングサーバはリソースの提供者にすぎず、信頼できる証明と各仮想マシンを統一管理制御するに足る情報を備えていない。よって、従来の仮想マシンの信頼できる測定は仮想セキュリティチップを用いてバックエンドの仮想マシンに信頼できる起動を行うというもので、サービス仮想マシンの自律性に依存したものである。しかし、仮想マシンそのものに悪意あるプログラムが存在する場合、信頼できる測定は行わず、仮想マシンが信頼できる測定を行うかどうかは監視することができず、信頼できる測定の有効性を保証することは困難である。このような状況において、如何にして仮想マシン操作システムおよび内部で動作する要となるアプリケーションプログラムに対して動的な信頼できる測定を行い、クラウドエンド全体のセキュリティ信頼性を保証するかということは解決しなければならない課題となっている。
【0039】
本願実施例において、コンピューティングサーバ2が通電して信頼できる起動を完了した後に、仮想マシンライフサイクルを維持する操作をさらに行うために、コンピューティングサーバ2の仮想化動作環境が信頼できるものであるかどうかさらに監視する必要がある。
【0040】
いくつかの実施例では、
図4に示すように、コンピューティングサーバが信頼できる起動をしたと特定した(つまり、ステップ23)後に、前記信頼できる測定方法は以下のステップS24をさらに含んでもよい。
【0041】
ステップ24、コンピューティングサーバの仮想化動作環境が信頼できるものであると特定したことに応答して、仮想マシンライフサイクルを維持するための操作をコンピューティングサーバが実行するよう指示するステップであって、仮想マシンのライフサイクルに変化が生じたときに、コンピューティングサーバが仮想マシンに対して信頼できる測定を行う。
【0042】
本ステップにおいて、信頼できる測定装置1がコンピューティングサーバ2は信頼できる起動をしたと特定し、かつコンピューティングサーバ2が信頼できる起動過程において操作システムとVMMを既に測定していた場合、コンピューティングサーバ2の仮想化動作環境は信頼できるものであると判断できる。したがって、信頼できる測定装置1の仮想化制御モジュールはクラウドプラットフォーム制御管理モジュールの制御指令をコンピューティングサーバ2の仮想化制御プロキシモジュールに送信することができる。当該制御指令はセキュリティ統括制御サーバ3による送信を含むがこれに限定されず、仮想マシンライフサイクルを維持するための操作の制御指令であり、例えば仮想マシンを構築、削除、再起動、スナップショット、復元、移動する制御指令である。なお、コンピューティングサーバ2が当該制御指令を受信して実行した後、仮想マシンのライフサイクルには相応の変化が生じ、このとき、コンピューティングサーバ2の仮想マシンに対する信頼できる測定がトリガされる。ここで、信頼できるVMMは仮想マシンを構築すると同時に信頼できる仮想安全性測定モジュール(例えば、vTPM)を生成して、仮想マシンに使用させることができる。
【0043】
いくつかの実施例では、
図5に示すように、仮想マシンライフサイクルを維持するための操作をコンピューティングサーバが実行するよう指示した(つまり、ステップ24)後に、前記信頼できる測定方法は以下のステップS25からS27をさらに含む。
【0044】
ステップ25、仮想マシンにアクセスし、仮想マシンの第2ブートローダプログラムの起動モードを特定する。
【0045】
本ステップにおいて、信頼できる測定装置1は仮想化制御モジュールとコンピューティングサーバ2の仮想化制御プロキシモジュールによりVMMに接続し、仮想マシン監視チャネル(例えば、virtio consoleなど)を介して仮想マシン内部にアクセスして、仮想化制御プロキシモジュールにより仮想安全性測定モジュールに関連する照会命令を実行し、仮想マシンのbootloader(つまり、第2ブートローダプログラム)の起動モードが信頼できる起動モードであるかどうか特定する。
【0046】
ステップ26、第2ブートローダプログラムが信頼できるブートモードであることに応答して、仮想マシンに記憶された第2グループの信頼できる測定結果を取得する。
【0047】
本ステップにおいて、信頼できる測定装置1が第2ブートローダプログラムは信頼できるブートモードであると特定した場合、信頼できる測定装置1の仮想化制御モジュールはコンピューティングサーバ2の仮想化制御プロキシモジュールにより、コンピューティングサーバ2から安全性測定モジュールのPCR(プラットフォーム構成レジスタ)内に保存された測定結果(つまり、第2グループの信頼できる測定結果)を読み取り、当該第2グループの信頼できる測定結果は仮想マシンに対する信頼できる測定結果である。第2グループの信頼できる測定結果は、例えば安全性測定モジュールの測定値、仮想マシンアプリケーションプログラムの測定値など複数の測定値を含む。
【0048】
ステップ27、第2グループの信頼できる測定結果が、予め記憶された第2グループの信頼できる測定期待値と同一であることに応答して、仮想マシンが信頼できる起動をしたと特定するステップであって、第2グループの信頼できる測定期待値はセキュリティ統括制御サーバにより信頼できる測定装置に送信されるものである。
【0049】
本ステップにおいて、信頼できる測定装置1は第2グループの信頼できる測定結果における各測定値を、予め記憶された第2グループの信頼できる測定期待値における各期待値とそれぞれ比較し、各測定値が対応する期待値とそれぞれ同一であれば、仮想マシンは信頼できる起動であると判断する。ここで、セキュリティ統括制御サーバ3は、暗号化されたネットワークを介してコンピューティングサーバ2で動作する仮想マシンの信頼できる測定期待値(つまり、第2グループの信頼できる測定期待値)を事前に信頼できる測定装置1に送信する。いくつかの実施例において、信頼できる測定期待値は信頼できる測定装置1の自発的なリクエストに応じて送信してよい。信頼できる測定期待値はデジタル証明書で認証した暗号化されたネットワークを介して伝送し、信頼できる測定装置1の安全性測定モジュールに暗号化して保存してよく、使用時にはセキュリティ統括制御サーバ3のデジタル証明書の公開鍵を使用して暗号解読する。
【0050】
いくつかの実施例において、仮想マシンライフサイクルを維持するための操作をコンピューティングサーバが実行するよう指示した(つまり、ステップ24)後に、前記信頼できる測定方法は、予め設定された第2条件を満たしたことに応答して、第3セキュリティ管理制御ポリシーを実行することをさらに含む。前記予め設定された第2条件は、予め設定された時間長さを超えており仮想マシンへのアクセスに成功していないこと、仮想マシンの第2ブートローダプログラムが信頼できるブートモードではないこと、仮想マシンが信頼できる起動をしていないと特定されたことのうちの1つを少なくとも含む。
【0051】
いくつかの実施例において、信頼できる測定装置1の仮想化制御モジュールがタイムアウトし仮想マシンにアクセスできない、または仮想マシンが信頼できる起動をしていない、または仮想マシンのbootloaderが信頼できるブートモードではない場合、信頼できる測定装置1は予め設置された第3セキュリティ管理制御ポリシーを実行することができる。
【0052】
いくつかの実施例において、前記第3セキュリティ管理制御ポリシーは、予め設定されたサーバに第3セキュリティ警告を送信すること、仮想マシンの中央処理装置CPUの動作を一時停止するようコンピューティングサーバに指示することのうちの1つを少なくとも含む。
【0053】
なお、第3セキュリティ警告を受信する予め設定されたサーバはセキュリティ統括制御サーバ3であってよく、その他のクラウドサーバであってもよい。
【0054】
いくつかの実施例では、
図6に示すように、仮想マシンに記憶された第2グループの信頼できる測定結果を取得した(つまり、ステップ26)後に、前記信頼できる測定方法は以下のステップS27’をさらに含む。
【0055】
ステップS27’、第2グループの信頼できる測定結果における少なくとも1つが、第2グループの信頼できる測定期待値における少なくとも1つと異なることに応答して、第4セキュリティ管理制御ポリシーを実行する。
【0056】
第2グループの信頼できる測定結果が信頼できる測定装置1にキャッシュされた第2グループの信頼できる測定期待値と完全には同一でなければ、仮想マシンは不法に改ざんされた可能性がある、または仮想マシンの操作システムおよびソフトウェアが更新アップグレードを要する、または仮想マシンのアプリケーションプログラムの測定の範囲が調整を要するということを表すため、このような場合、予め設定された第4セキュリティ管理制御ポリシーを実行する。
【0057】
いくつかの実施例において、前記第4セキュリティ管理制御ポリシーは、予め設定されたサーバに第4セキュリティ警告を送信すること、仮想マシンの操作システムアップグレードをコンピューティングサーバに指示すること、仮想マシンのアプリケーションプログラムの信頼できる測定範囲を調整するようコンピューティングサーバに指示すること、コンピューティングサーバが仮想マシンに記憶された測定期待値を更新するための測定期待値更新指令をコンピューティングサーバに送信することのうちの1つを少なくとも含む。
【0058】
なお、第4セキュリティ警告を受信する予め設定されたサーバはセキュリティ統括制御サーバ3であってよく、その他のクラウドサーバであってもよい。
【0059】
本願実施例は、信頼できる測定装置1から技術サーバの仮想化動作環境に対して信頼できる測定を行って、仮想マシンの起動に対して測定を行うことを発起し、ホストマシン仮想化環境と、仮想マシン操作システムおよびアプリケーションプログラムの動的測定の有効性、信頼性を保証することができる。
【0060】
いくつかの実施例において、前記信頼できる測定方法は、セキュリティ統括制御サーバが送信した少なくとも1つのグループの信頼できる測定期待値を、暗号化されたネットワークを介して受信して、前記少なくとも1つのグループの信頼できる測定期待値をローカルに記憶することをさらに含む。
【0061】
本ステップにおいて、信頼できる測定装置1、コンピューティングサーバ2またはそこの仮想マシンの信頼できる測定期待値の更新を要する場合、セキュリティ統括制御サーバ3は更新の際にのみ通電することができ、更新対象の信頼できる測定期待値をデジタル証明書で認証したセキュリティネットワークを介して信頼できる測定装置1に送信してキャッシュするため、セキュリティ統括制御サーバ3は常にオンラインである必要がなく、侵入、攻撃を受ける可能性が低い。
【0062】
本願実施例は、信頼できる測定装置1から発起する動的な信頼できる測定メカニズムを導入しており、セキュリティ統括制御サーバ3の信頼できる測定期待値を信頼できる測定装置1により受信してからキャッシュし、その後、コンピューティングサーバ2の通信インターフェースを用いて監視し、コンピューティングサーバ2がそのbootloader、操作システム、hypervisor、仮想化制御プロキシモジュールを測定し、信頼できる起動を完了することを確保する。またさらにコンピューティングサーバ2で動作する仮想マシンに対して信頼できる測定監視を行い、それが信頼できる起動方式を用い、かつ仮想マシン操作システムおよび要となるアプリケーションプログラムの測定結果が予期のものと合致することを確保する。
【0063】
本願の技術案をより好適に説明するために、以下に具体的な実施例により本願実施例についてさらに説明する。
【0064】
図7に示すように、コンピューティングサーバはx86コンピューティングサーバ71を用い、信頼できる測定装置はarm64コントロールドーターカード72を用いて、PCI endpointインターフェースを介してx86コンピューティングサーバ71に接続する。
【0065】
x86コンピューティングサーバ71は仮想マシンに計算リソース(CPU、内部メモリ、記憶、ネットワークなど)を提供する物理的サーバであり、そのCPUはx86アーキテクチャを用い、そのうちの1つのPCIスロットがTPCM(Trust Platform Control Module、信頼できるプラットフォーム制御モジュール)にアクセスし、ボードカードは安全性測定モジュールとして、CPUが通電する前に優先的に通電でき、BIOSおよびその他のハードウェアに対して自発的に測定を行う。x86コンピューティングサーバ71はIPMIプロトコルをサポートするリモート電源管理モジュールをさらに備え、独立した電源管理インターフェースを介してアクセスすることができる。
【0066】
arm64コントロールドーターカード72はPCIバスインターフェースによりx86コンピューティングサーバ71に接続し、arm64コントロールドーターカード72はPCIのendpoint端として動作し、自らのCPU(arm64アーキテクチャ)、内部メモリ、linux(登録商標)操作システムおよび独立したセキュリティチップ(TPM)を同様に備えて安全性測定モジュールとする。当該TPMチップはI2Cバスとシステムを接続し、またarm64コントロールドーターカード72はセキュリティ統括制御サーバ73のデジタル証明書を保存し、証明書で認証したssh(Secure Shell、セキュアシェルプロトコル)暗号化セキュリティネットワークを介してセキュリティ統括制御サーバ73に接続する。
【0067】
arm64コントロールドーターカード72におけるクラウドプラットフォーム制御プロキシモジュールはopenstack-nova-computeサービスプログラムを用い、arm64コントロールドーターカード72の起動に伴い信頼できる測定をなすことができ、ネットワークインターフェースを介してその他のクラウドプラットフォームメインマシンのopenstackコンポーネントと通信し、クラウドプラットフォーム管理者の管理情報を受信するとともに、暗号化されたネットワークを介してセキュリティ統括制御サーバ73が送信したx86コンピューティングサーバ71およびそこで動作する仮想マシンの信頼できる測定期待値を、デジタル証明書で認証することで受信して記憶することができる。当該信頼できる測定期待値はセキュリティ統括制御サーバ73の秘密鍵で暗号化してarm64コントロールドーターカード72のセキュリティハードウェア(TPMチップ)に記憶し、使用時にはデジタル証明書の公開鍵を使用して暗号解読する。
【0068】
VMC(Virtual Machine Controller)モジュールはarm64コントロールドーターカード72で動作する仮想化制御モジュールであり、PCIインターフェースを介してx86コンピューティングサーバ71のVMC agent(仮想化制御プロキシ)モジュールに接続し、例えば、CPUタイプ、セキュリティモジュールタイプ、hypervisorタイプなどx86コンピューティングサーバ71のタイプと構成情報を取得し、セキュリティ統括制御サーバ73が送信した仮想化管理の指令を相応の適合する命令に変換して、x86コンピューティングサーバ71と仮想マシンの信頼できる測定監視を実行し、QEMU(仮想操作システムシミュレータ)が送信した命令により仮想マシンのライフタイムサイクルを制御して、IPMIインターフェースを介してx86コンピューティングサーバ71のIPMI電源管理モジュールによりその電源状態を制御することができる。
【0069】
VMC agentモジュールはx86コンピューティングサーバ71に常駐して仮想化制御プロキシプログラムとなり、x86コンピューティングサーバ71の起動に伴い信頼できる測定をなすことができ、PCIバスインターフェースを介してarm64コントロールドーターカード72のVMCモジュールと通信し、VMCモジュール指令の送信を実行する。
【0070】
仮想マシンモニタ(VMM)はQEMU+KVM(Kernel-based Virtual Machine、カーネルに基づく仮想マシン)を用い、仮想マシンライフタイムサイクルを構築および維持するhypervisorの基礎設備として、virtio console技術を備え仮想マシン内部操作システムにアクセスして相応の命令を実行することができる。
【0071】
セキュリティ統括制御サーバ73はクラウドプラットフォーム全体の信頼の基点として、arm64コントロールドーターカード72と、x86コンピューティングサーバ71と、仮想マシンの信頼できる測定期待値を全て記憶している。侵入に遭遇するのを防ぐために、普段は非通電状態であり、信頼できる測定期待値の更新を要するときにのみ通電し、デジタル証明書で認証したssh暗号化セキュリティネットワークを介して更新後の信頼できる測定期待値を各arm64コントロールドーターカード72に送信してキャッシュするか、各arm64コントロールドーターカード72により自発的にリクエストしてから送信する。
【0072】
当該具体的な実施例の信頼できる測定方法の実施過程は次の通りである。
セキュリティ統括制御サーバ73は、事前にデジタル証明書により認証したssh暗号化セキュリティネットワークの最新の信頼できる測定期待値を各arm64コントロールドーターカード72に送信して暗号化キャッシュする。
【0073】
x86コンピューティングサーバ71が通電した後、TPCMボードカードが先に動作を開始し、内蔵された信頼の基点に基づきbios、bootloaderの信頼性を測定し、信頼できると確認した後、CPUが通電を開始し、信頼できるbiosが動作してTPCMボードカード内に事前に配置された信頼できる測定期待値を読み取ってから、Linux(登録商標)カーネルを測定し、測定値と期待値が一致すれば、Linux(登録商標)カーネルは信頼できるということを表し、さらに引き続き動的に期待値を測定して、QEMUとVMC agentに信頼できるかどうか検証する。
【0074】
arm64コントロールドーターカード72も同時に通電し、起動過程と同時にTPMチップ内の測定期待値を読み取り、bootloader、arm Linux(登録商標)カーネル、VMCモジュールに対して、openstack-nova-computeの動的な信頼できる測定を順次完了し、測定値が、セキュリティ統括制御サーバ72が送信したものと一致していれば起動過程を終了する。
【0075】
VMCモジュールはPCIチャネルを介して、x86コンピューティングサーバ71で動作するVMC agentに接続し、まずbootloaderに対して信頼できる測定を行い、それが信頼できる起動方式を用いていることを確認してから、VMC agentによりTPCMボードカードのPCR値を読み取り、arm64コントロールドーターカード72にキャッシュされた信頼できる測定期待値と一致するかどうか比較し、一致すればx86コンピューティングサーバ71は信頼できる起動を行ったと判断する。
【0076】
x86コンピューティングサーバ71の起動が完全ではないと判断された、またはVMCモジュールがタイムアウトしVMC agentに接続できない、またはVMC agentによりx86コンピューティングサーバ71のTPCM内のPCR値を読み取ることができない場合、予め設定されたセキュリティ管理制御ポリシーを実行し、例えば、IPMI電源管理モジュールによりシャットダウンしてx86コンピューティングサーバ71の起動をロックして、セキュリティ警告を生成する。
【0077】
VMCモジュールがVMC agentにより読み取ったx86コンピューティングサーバ71のTPCM内のPCR期待値がarm64コントロールドーターカード72にキャッシュされた信頼できる測定期待値と一致しなければ、x86コンピューティングサーバ71は不法に改ざんされた可能性がある、またはx86コンピューティングサーバ71の操作システムおよびソフトウェアが更新アップグレードを要する、またはx86コンピューティングサーバ71の測定の範囲が調整を要するということを表し、このときarm64コントロールドーターカード72はopenstack-nova-computeによりクラウドプラットフォームにセキュリティ警告を送信する、またはクラウドプラットフォームのポリシーに従ってシステムをアップグレードしてアプリケーションプログラムの動的な測定範囲を調整し、調整時にVMCモジュールはVMC agentが送信したTPCM関連指令により、TPCMボードカード内の測定期待値(PCR)を更新できる。
【0078】
x86コンピューティングサーバ71が信頼できる起動であることを確認し、かつ信頼できる起動過程に操作システム、QEMU、VMC agentの測定を含む場合、x86コンピューティングサーバ71の仮想化動作環境は信頼できるものであると判断する。VMCモジュールはopenstack-nova-computeの制御を受信し、VMC agentが送信した指令によりx86コンピューティングサーバ71に仮想マシンを構築、削除、再起動、スナップショット、復元、移動し、つまり、仮想マシンのライフサイクルを制御する。信頼できるQEMUは仮想マシン構築時に信頼できる仮想セキュリティモジュール(vTPM)をシミュレートし、仮想マシンに使用させる。
【0079】
VMCモジュールはVMC agentにより、QEMUが提供するvirtio consoleチャネルをさらに経て仮想マシン内部で仮想セキュリティモジュール(vTPM)に関連する照会指令を実行する。具体的に、vTPMのPCR内に保存された測定値を読み取り、arm64コントロールドーターカード72にキャッシュされた信頼できる測定期待値と比較し、仮想マシンbootloaderが、クラウドプラットフォームが予期する仮想マシンの信頼できる起動bootloaderであるかどうか測定することで、仮想マシン内部操作システムが信頼できるブートであるかどうか、仮想マシン内の要となるアプリケーションプログラム(本実施例ではRedisデータベースサービスプログラムとする)が信頼できる起動過程において動的な測定を経ているかどうかを取得する。
【0080】
VMCモジュールがタイムアウトし仮想マシン内部にアクセスできない、またはアクセス後に仮想マシン内部操作システムbootloaderが信頼できるものではないことが判明したもしくはまたは信頼できるブートを経ていないことが判明した場合、VMCモジュールはVMC agentによりQEMU指令を実行してもよく、QEMU指令により仮想マシンの仮想CPUの動作を一時停止すること、セキュリティ警告を生成するなどセキュリティ管理制御手段を含むがこれらに限定されない。
【0081】
VMCモジュールがVMC agentにより仮想マシン内部にアクセスした後に読み取った仮想マシン内のvTPMのPCRがarm64コントロールドーターカード72にキャッシュされた信頼できる測定期待値と一致しなければ、仮想マシンは不法に改ざんされた可能性がある、または当該仮想マシンの操作システムあるいは仮想マシン内のアプリケーションプログラムが更新アップグレードを要する可能性がある、または仮想マシン内のアプリケーションプログラムの動的測定の範囲が調整を要するということを表す。このとき、セキュリティ警告を生成してクラウドプラットフォーム管理者と仮想マシン使用者の確認を経てから、仮想マシンの操作システムまたはアプリケーションプログラムのアップグレードができ、またはクラウドプラットフォームのポリシーに従って仮想マシン内のアプリケーションプログラムの動的測定範囲を調整する。その後、VMCモジュールはVMC agentにより、QEMUが提供するvirtio consoleチャネルをさらに経て仮想マシン内部でvTPMに関連する指令を実行し、仮想マシンのvPMデバイス内の測定期待値(PCR)を更新する。
【0082】
セキュリティ統括制御サーバ73がarm64コントロールドーターカード72、x86コンピューティングサーバ71またはその仮想マシンの信頼できる測定期待値の更新を要するとき、更新を要する際にのみ通電することができ、デジタル証明書で認証した暗号化されたネットワークを介して各arm64コントロールドーターカード72に更新した信頼できる測定期待値を送信してキャッシュする。
【0083】
同一の技術思想に基づき、本願実施例は信頼できる測定装置をさらに提供し、
図8に示すように、前記信頼できる測定装置は第1通信モジュール101と第2処理モジュール102を備える。
【0084】
第1通信モジュール101は、前記信頼できる測定装置が信頼できる起動をした場合、コンピューティングサーバに接続することと、コンピューティングサーバに記憶された第1グループの信頼できる測定結果を取得することに用いられる。
【0085】
第1処理モジュール102は、コンピューティングサーバの第1ブートローダプログラムの起動モードを特定し、第1ブートローダプログラムが信頼できるブートモードである場合、コンピューティングサーバに記憶された第1グループの信頼できる測定結果を取得するよう第1通信モジュールに指示することと、第1グループの信頼できる測定結果が、予め記憶された第1グループの信頼できる測定期待値と同一であることに応答して、コンピューティングサーバが信頼できる起動をしたと特定することに用いられ、前記第1グループの信頼できる測定期待値はセキュリティ統括制御サーバにより前記信頼できる測定装置に送信されるものである。
【0086】
いくつかの実施例において、第1処理モジュール102は、前記コンピューティングサーバに記憶された第1グループの信頼できる測定結果を取得した後に、前記第1グループの信頼できる測定結果における少なくとも1つが、前記第1グループの信頼できる測定期待値における少なくとも1つと異なることに応答して、第1セキュリティ管理制御ポリシーを実行することにさらに用いられる。
【0087】
いくつかの実施例において、第1セキュリティ管理制御ポリシーは、予め設定されたサーバに第1セキュリティ警告を送信すること、前記コンピューティングサーバの操作システムアップグレードを前記コンピューティングサーバに指示すること、前記コンピューティングサーバの信頼できる測定範囲を調整するよう前記コンピューティングサーバに指示することのうちの少なくとも1つを含む。
【0088】
いくつかの実施例において、第1処理モジュール102は、前記信頼できる測定装置が信頼できる起動をした場合、予め設定された第1条件を満たしたことに応答して、第2セキュリティ管理制御ポリシーを実行することにさらに用いられ、前記予め設定された第1条件は、予め設定された第1時間長さを超えておりコンピューティングサーバへの接続に成功していないこと、コンピューティングサーバに記憶された第1グループの信頼できる測定結果を取得していないこと、第1グループの信頼できる測定結果の数が第1グループの信頼できる測定期待値の数を下回ること、第1ブートローダプログラムが信頼できるブートモードではないことのうちの1つを少なくとも含む。
【0089】
いくつかの実施例において、前記第2セキュリティ管理制御ポリシーは、予め設定されたサーバに第2セキュリティ警告を送信すること、コンピューティングサーバにシャットダウンを指示して起動をロックすることのうちの1つを少なくとも含む。
【0090】
いくつかの実施例では、
図9に示すように、前記信頼できる測定装置は第2処理モジュール103をさらに備える。
【0091】
第2処理モジュール103は、コンピューティングサーバが信頼できる起動をしたと特定した後に、コンピューティングサーバの仮想化動作環境が信頼できるものであると特定したことに応答して、仮想マシンライフサイクルを維持するための操作をコンピューティングサーバが実行するよう指示することに用いられ、仮想マシンのライフサイクルに変化が生じたときに、コンピューティングサーバが前記仮想マシンに対して信頼できる測定を行う。
【0092】
いくつかの実施例において、第2処理モジュール103は、仮想マシンライフサイクルを維持するための操作をコンピューティングサーバが実行するよう指示した後に、仮想マシンにアクセスし、仮想マシンの第2ブートローダプログラムの起動モードを特定し、第2ブートローダプログラムが信頼できるブートモードであることに応答して、仮想マシンに記憶された第2グループの信頼できる測定結果を取得し、第2グループの信頼できる測定結果が、予め記憶された第2グループの信頼できる測定期待値と同一であることに応答して、仮想マシンが信頼できる起動をしたと特定することにさらに用いられ、第2グループの信頼できる測定期待値はセキュリティ統括制御サーバにより信頼できる測定装置に送信されるものである。
【0093】
いくつかの実施例において、第2処理モジュール103は、仮想マシンライフサイクルを維持するための操作をコンピューティングサーバが実行するよう指示した後に、予め設定された第2条件を満たしたことに応答して、第3セキュリティ管理制御ポリシーを実行することにさらに用いられ、前記予め設定された第2条件は、予め設定された時間長さを超えており仮想マシンへのアクセスに成功していないこと、仮想マシンの第2ブートローダプログラムが信頼できるブートモードではないこと、仮想マシンが信頼できる起動をしていないと特定されたことのうちの1つを少なくとも含む。
【0094】
いくつかの実施例において、前記第3セキュリティ管理制御ポリシーは、予め設定されたサーバに第3セキュリティ警告を送信すること、仮想マシンの中央処理装置CPUの動作を一時停止するようコンピューティングサーバに指示することのうちの1つを少なくとも含む。
【0095】
いくつかの実施例において、第2処理モジュール103は、仮想マシンに記憶された第2グループの信頼できる測定結果を取得した後に、第2グループの信頼できる測定結果における少なくとも1つが、第2グループの信頼できる測定期待値における少なくとも1つと異なることに応答して、第4セキュリティ管理制御ポリシーを実行することにさらに用いられる。
【0096】
いくつかの実施例において、前記第4セキュリティ管理制御ポリシーは、予め設定されたサーバに第4セキュリティ警告を送信すること、仮想マシンの操作システムアップグレードをコンピューティングサーバに指示すること、仮想マシンのアプリケーションプログラムの信頼できる測定範囲を調整するようコンピューティングサーバに指示すること、コンピューティングサーバが仮想マシンに記憶された測定期待値を更新するための測定期待値更新指令をコンピューティングサーバに送信することのうちの1つを少なくとも含む。
【0097】
いくつかの実施例では、
図10に示すように、前記信頼できる測定装置は第2通信モジュール104をさらに備える。
【0098】
第2通信モジュール104は、セキュリティ統括制御サーバが送信した少なくとも1つのグループの信頼できる測定期待値を、暗号化されたネットワークを介して受信して、前記少なくとも1つのグループの信頼できる測定期待値をローカルに記憶することに用いられる。
【0099】
本願実施例はコンピュータデバイスをさらに提供し、当該コンピュータデバイスは、1つまたは複数のプロセッサおよび記憶装置を備え、記憶装置に1つまたは複数のプログラムが記憶され、前記1つまたは複数のプログラムが前記1つまたは複数のプロセッサに実行されたときに、前記1つまたは複数のプロセッサに前記の各実施例が提供する信頼できる測定方法を実現させる。
【0100】
本願実施例は、コンピュータプログラムが記憶されたコンピュータ読み取り可能な媒体であって、当該コンピュータプログラムが実行されたときに、前記プロセッサに前記の各実施例が提供する信頼できる測定方法を実現させる、コンピュータ読み取り可能な媒体をさらに提供する。
【0101】
上記に開示した方法のうちの全てまたはいくつかのステップ、装置における機能モジュール/ユニットはソフトウェア、ファームウェア、ハードウェアおよびその適切な組み合わせとして実施されてよいと当業者は理解できる。ハードウェアの実施形態において、以上の説明で言及した機能モジュール/ユニットの間の区分は必ずしも物理的なコンポーネントの区分に対応せず、例えば、1つの物理的コンポーネントは複数の機能を有してよく、または1つの機能またはステップは若干の物理的コンポーネントが連携して実行することができる。ある物理的モジュールまたは全ての物理的モジュールは、中央処理装置、デジタル信号プロセッサまたはマイクロプロセッサのようなプロセッサにより実行されるソフトウェアとして実施されてよく、またはハードウェアとして、あるいは専用集積回路のような集積回路として実施されてもよい。このようなソフトウェアはコンピュータ読み取り可能な媒体に配置することができ、コンピュータ読み取り可能な媒体はコンピュータ記憶媒体(または非一時的な媒体)および通信媒体(または一時的な媒体)を含んでよい。当業者に知られているように、コンピュータ記憶媒体という技術用語は(コンピュータ読み取り可能な命令、データ構造、プログラムモジュールまたはその他のデータのような)情報を記憶するための任意の方法または技術において実施される揮発性および不揮発性、リムーバブルなおよび非リムーバブルな媒体を含む。コンピュータ記憶媒体はRAM、ROM、EEPROM、フラッシュメモリまたはその他のメモリ技術、CD-ROM、デジタル多機能ディスク(DVD)またはその他の光ディスクメモリ、磁気ボックス、磁気テープ、磁気ディスクメモリまたはその他の磁気記憶装置、または所望の情報を記憶しかつコンピュータによりアクセス可能な任意のその他の媒体を含むがこれらに限定されない。また、当業者であれば、通信媒体は一般的にコンピュータ読み取り可能な命令、データ構造、プログラムモジュールまたは搬送波あるいはその他の伝送機構のような変調データ信号におけるその他のデータを含み、また任意の情報伝送媒体を含むことができるということは公知の事項である。
【0102】
本明細書では実施例を開示し、かつ具体的な用語を採用しているが、これらは単に一般的な例示的な意味としてのみ使用され、またそのように解釈されるべきであり、制限の目的に用いられない。いくつかの実施例において、別途明示しない限り、特定の実施例と組み合わせて説明された特徴、特性および/または要素を単独で使用することができ、またはその他の実施例と組み合わせて説明された特徴、特性および/または要素と組み合わせて使用することができるということは当業者にとって自明である。したがって、添付の請求項により説明された本願の範囲から逸脱しなければ、様々な形式および詳細において変更を加えることができると当業者は理解できる。
【手続補正書】
【提出日】2024-04-12
【手続補正1】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項1】
信頼できる測定装置に適用される信頼できる測定方法であって、
前記信頼できる測定装置が信頼できる起動をした場合、コンピューティングサーバに接続して、前記コンピューティングサーバの第1ブートローダプログラムの起動モードを特定するステップと、
前記第1ブートローダプログラムが信頼できるブートモードであることに応答して、前記コンピューティングサーバに記憶された第1グループの信頼できる測定結果を取得するステップと、
前記第1グループの信頼できる測定結果が、予め記憶された第1グループの信頼できる測定期待値と同一であることに応答して、前記コンピューティングサーバが信頼できる起動をしたと特定するステップであって、前記第1グループの信頼できる測定期待値はセキュリティ統括制御サーバにより前記信頼できる測定装置に送信されるものであるステップと、を含む
信頼できる測定方法。
【請求項2】
前記コンピューティングサーバに記憶された第1グループの信頼できる測定結果を取得した後に、
前記第1グループの信頼できる測定結果における少なくとも1つが、前記第1グループの信頼できる測定期待値における少なくとも1つと異なることに応答して、第1セキュリティ管理制御ポリシーを実行するステップをさらに含む
請求項1に記載の方法。
【請求項3】
前記第1セキュリティ管理制御ポリシーは、
予め設定されたサーバに第1セキュリティ警告を送信すること、
前記コンピューティングサーバの操作システムアップグレードを前記コンピューティングサーバに指示すること、
前記コンピューティングサーバの信頼できる測定範囲を調整するよう前記コンピューティングサーバに指示することのうちの少なくとも1つを含む
請求項2に記載の方法。
【請求項4】
前記信頼できる測定装置が信頼できる起動をした場合、
予め設定された第1条件を満たしたことに応答して、第2セキュリティ管理制御ポリシーを実行することをさらに含み、
前記予め設定された第1条件は、
予め設定された第1時間長さを超えており前記コンピューティングサーバへの接続に成功していないこと、
前記コンピューティングサーバに記憶された第1グループの信頼できる測定結果を取得していないこと、
前記第1グループの信頼できる測定結果の数が前記第1グループの信頼できる測定期待値の数を下回ること、
前記第1ブートローダプログラムが信頼できるブートモードではないことのうちの1つを少なくとも含む
請求項1に記載の方法。
【請求項5】
前記第2セキュリティ管理制御ポリシーは、
予め設定されたサーバに第2セキュリティ警告を送信すること、
前記コンピューティングサーバにシャットダウンを指示して起動をロックすることのうちの1つを少なくとも含む
請求項4に記載の方法。
【請求項6】
前記コンピューティングサーバが信頼できる起動をしたと特定した後に、
前記コンピューティングサーバの仮想化動作環境が信頼できるものであると特定したことに応答して、仮想マシンライフサイクルを維持するための操作を前記コンピューティングサーバが実行するよう指示するステップであって、
仮想マシンのライフサイクルに変化が生じたときに、前記コンピューティングサーバが前記仮想マシンに対して信頼できる測定を行うステップをさらに含む
請求項1に記載の方法。
【請求項7】
仮想マシンライフサイクルを維持するための操作を前記コンピューティングサーバが実行するよう指示した後に、
前記仮想マシンにアクセスし、前記仮想マシンの第2ブートローダプログラムの起動モードを特定するステップと、
前記第2ブートローダプログラムが信頼できるブートモードであることに応答して、前記仮想マシンに記憶された第2グループの信頼できる測定結果を取得するステップと、
前記第2グループの信頼できる測定結果が、予め記憶された第2グループの信頼できる測定期待値と同一であることに応答して、前記仮想マシンが信頼できる起動をしたと特定するステップであって、前記第2グループの信頼できる測定期待値はセキュリティ統括制御サーバにより前記信頼できる測定装置に送信されるものであるステップと、をさらに含む
請求項6に記載の方法。
【請求項8】
仮想マシンライフサイクルを維持するための操作を前記コンピューティングサーバが実行するよう指示した後に、
予め設定された第2条件を満たしたことに応答して、第3セキュリティ管理制御ポリシーを実行することをさらに含み、
前記予め設定された第2条件は、
予め設定された時間長さを超えており前記仮想マシンへのアクセスに成功していないこと、
前記仮想マシンの第2ブートローダプログラムが信頼できるブートモードではないこと、
前記仮想マシンが信頼できる起動をしていないと特定されたことのうちの1つを少なくとも含む
請求項7に記載の方法。
【請求項9】
前記第3セキュリティ管理制御ポリシーは、
予め設定されたサーバに第3セキュリティ警告を送信すること、
前記仮想マシンの中央処理装置CPUの動作を一時停止するよう前記コンピューティングサーバに指示することのうちの1つを少なくとも含む
請求項8に記載の方法。
【請求項10】
前記仮想マシンに記憶された第2グループの信頼できる測定結果を取得した後に、
前記第2グループの信頼できる測定結果における少なくとも1つが、前記第2グループの信頼できる測定期待値における少なくとも1つと異なることに応答して、第4セキュリティ管理制御ポリシーを実行するステップをさらに含む
請求項7に記載の方法。
【請求項11】
前記第4セキュリティ管理制御ポリシーは、
予め設定されたサーバに第4セキュリティ警告を送信すること、
仮想マシンの操作システムアップグレードを前記コンピューティングサーバに指示すること、
前記仮想マシンのアプリケーションプログラムの信頼できる測定範囲を調整するよう前記コンピューティングサーバに指示すること、
前記コンピューティングサーバが前記仮想マシンに記憶された測定期待値を更新するための測定期待値更新指令を前記コンピューティングサーバに送信することのうちの1つを少なくとも含む
請求項10に記載の方法。
【請求項12】
前記セキュリティ統括制御サーバが送信した少なくとも1つのグループの信頼できる測定期待値を、暗号化されたネットワークを介して受信して、前記少なくとも1つのグループの信頼できる測定期待値をローカルに記憶することをさらに含む
請求項
1に記載の方法。
【請求項13】
第1通信モジュールと第1処理モジュールを備え、
前記第1通信モジュールは、
前記信頼できる測定装置が信頼できる起動をした場合、コンピューティングサーバに接続することと、
前記コンピューティングサーバに記憶された第1グループの信頼できる測定結果を取得することに用いられ、
前記第1処理モジュールは、
前記コンピューティングサーバの第1ブートローダプログラムの起動モードを特定し、前記第1ブートローダプログラムが信頼できるブートモードである場合、前記コンピューティングサーバに記憶された第1グループの信頼できる測定結果を取得するよう前記第1通信モジュールに指示することと、前記第1グループの信頼できる測定結果が、予め記憶された第1グループの信頼できる測定期待値と同一であることに応答して、前記コンピューティングサーバが信頼できる起動をしたと特定することに用いられ、前記第1グループの信頼できる測定期待値はセキュリティ統括制御サーバにより前記信頼できる測定装置に送信されるものである
信頼できる測定装置。
【請求項14】
1つまたは複数のプロセッサと、
1つまたは複数のプログラムが記憶された記憶装置と、を備え、
前記1つまたは複数のプログラムが前記1つまたは複数のプロセッサに実行されたときに、前記1つまたは複数のプロセッサに請求項1~12のいずれか一項に記載の信頼できる測定方法を実現させる
コンピュータデバイス。
【請求項15】
コンピュータプログラムが記憶されたコンピュータ読み取り可能な媒体であって、前記コンピュータプログラムが実行されたときに、前記プロセッサに請求項1~12のいずれか一項に記載の信頼できる測定方法を実現させる
コンピュータ読み取り可能な媒体。
【国際調査報告】