JP5809362B2 - 仮想トラステッドランタイムbiosとの通信 - Google Patents

仮想トラステッドランタイムbiosとの通信 Download PDF

Info

Publication number
JP5809362B2
JP5809362B2 JP2014527137A JP2014527137A JP5809362B2 JP 5809362 B2 JP5809362 B2 JP 5809362B2 JP 2014527137 A JP2014527137 A JP 2014527137A JP 2014527137 A JP2014527137 A JP 2014527137A JP 5809362 B2 JP5809362 B2 JP 5809362B2
Authority
JP
Japan
Prior art keywords
bios
virtual
trusted runtime
runtime bios
virtual trusted
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2014527137A
Other languages
English (en)
Other versions
JP2014529130A (ja
Inventor
アリ,ヴァリウディン,ワイ
ピリス,ホセ,パウロ,ザビエル
マン,ジェイムス,エム
ダルトン,クリス,アイ
バラシェフ,ボリス
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hewlett Packard Development Co LP
Original Assignee
Hewlett Packard Development Co LP
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Priority claimed from PCT/US2011/049677 external-priority patent/WO2013032442A1/en
Application filed by Hewlett Packard Development Co LP filed Critical Hewlett Packard Development Co LP
Publication of JP2014529130A publication Critical patent/JP2014529130A/ja
Application granted granted Critical
Publication of JP5809362B2 publication Critical patent/JP5809362B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/57Certifying or maintaining trusted computer platforms, e.g. secure boots or power-downs, version controls, system software checks, secure updates or assessing vulnerabilities
    • G06F21/572Secure firmware programming, e.g. of basic input output system [BIOS]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/57Certifying or maintaining trusted computer platforms, e.g. secure boots or power-downs, version controls, system software checks, secure updates or assessing vulnerabilities
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/57Certifying or maintaining trusted computer platforms, e.g. secure boots or power-downs, version controls, system software checks, secure updates or assessing vulnerabilities
    • G06F21/575Secure boot
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/4401Bootstrapping
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45541Bare-metal, i.e. hypervisor runs directly on hardware
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0428Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
    • H04L63/0435Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload wherein the sending and receiving network entities apply symmetric encryption, i.e. same key used for encryption and decryption
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0428Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
    • H04L63/0442Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload wherein the sending and receiving network entities apply asymmetric encryption, i.e. different keys for encryption and decryption
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/0823Network architectures or network communication protocols for network security for authentication of entities using certificates
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0861Generation of secret information including derivation or calculation of cryptographic keys or passwords
    • H04L9/0877Generation of secret information including derivation or calculation of cryptographic keys or passwords using additional device, e.g. trusted platform module [TPM], smartcard, USB or hardware security module [HSM]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • G06F2009/45587Isolation or security of virtual machine instances

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computing Systems (AREA)
  • Stored Programmes (AREA)
  • Storage Device Security (AREA)
  • Debugging And Monitoring (AREA)

Description

コンピュータ又はその他のタイプの装置等の電子装置は、該電子装置の起動を責務とする基本入出力システム(BIOS)を含むことが可能である。起動中に、BIOSは、該電子装置の各構成要素の初期化及び設定を行い、及び該電子装置にオペレーティングシステムをロードする。更に、BIOSは、電力管理サービス、熱管理サービス、及びBIOS更新サービスといった他のサービスを提供することも可能である。
仮想トラステッドランタイムBIOSとのセキュアな通信の一実施形態によるコンピューティングシステムのブロック図である。 仮想トラステッドランタイムBIOSとのセキュアな通信の一実施形態によるコンピューティングシステムのブロック図である。 一実施形態による仮想トラステッドランタイムBIOSとの通信をセキュアにする方法のフローチャートである。 一実施形態による仮想トラステッドランタイムBIOSとの通信をセキュアにする方法のフローチャートである。 一実施形態による仮想トラステッドランタイムBIOSとの通信をセキュアにする方法のフローチャートである。 コンピュータ読み取り可能媒体の一実施形態によるコンピューティングシステムのブロック図である。
基本入出力システム(BIOS)は、通常は電子装置が始動する際に該電子装置により実行される最初のコードである。該電子装置の例として、コンピュータ(例えば、デスクトップコンピュータ、ノートブックコンピュータ、タブレットコンピュータ、サーバコンピュータ等)、ハンドヘルド装置(例えば、携帯情報端末(PDA)、スマートフォン等)、電子アプライアンス、ゲーム機、又はその他のタイプの電子装置が挙げられる。BIOSは、電子装置の様々なハードウェア構成要素を初期化し設定することが可能であり、及び該電子装置のオペレーティングシステム(OS)をロードし開始させることが可能である。BIOSのためのコードは通常は、フラッシュメモリ装置又はその他のタイプのプログラマブルリードオンリーメモリ(ROM)といった不揮発性メモリに格納される。
様々な例示的なBIOS機能について上述したが、他の実施形態では他の又は代替的なBIOS機能を使用することが可能であることに留意されたい。
実施形態によっては、特権ドメイン内に存在することが可能な電子装置の仮想トラステッドランタイムBIOSにおいて、一層ローバストなシステム挙動及びBIOS機能を提供することが可能である。ここで、該特権ドメインとは、比較的セキュアであり且つ該電子機器内の他のエンティティに対して利用可能とならない特定の所定の特権を有する、該電子装置の一ドメインである。一般に、「特権ドメイン」とは、該ドメイン内の特定のエンティティが、他のエンティティ(例えば、OS、アプリケーションプログラム等)が実行することが許可されない該電子装置の機能を実行することを許可する、所定の1つ以上の特権を有するドメインを意味する。また、特権ドメインは、権限のないアクセス又は攻撃から該特権ドメインを保護するためのセキュリティ機構を有する。該仮想トラステッドランタイムBIOSを用いた通信は、ウェブベースのプロトコルによるものとすることが可能である。ウェブベースのプロトコルは、セキュアではなく、セキュリティの脆弱性に通じ得るものである。一実施形態では、通信は、SSL(Secure Socket Layer)等の公開鍵・秘密鍵式暗号化によってセキュアにすることが可能である。仮想トラステッドランタイムBIOSに対する通信のセキュア化は、システム管理モード(SMM)により扱われるシステム管理命令をセキュアにするために使用することが可能である。
特権ドメインの例として、以下に示すものの何れか1つ又はそれらの幾つかの組み合わせが挙げられる。ドメイン0(管理タスクを実行するために仮想マシンモニタ(ハイパーバイザとも呼ばれる)により開始される最初のドメインであることが多い)、仮想マシンモニタ(又はハイパーバイザ)の一部、強化された特権及び/又はセキュリティをゲスト仮想マシンに提供する所定の設定を有するゲスト仮想マシン、又は所定の特殊な特権及び/又はセキュリティ機構を有する電子装置内のその他のタイプのドメイン。セキュアな特権ドメインは、仮想高特権モードを他のドメインから分離させセキュアにするためにシステム管理モード転送モニタ等の仮想マシンモニタとピアレベルでコンポーネントを有することを必要とすることなく、システム管理命令をセキュアに扱うための仮想高特権モードを含むことができる仮想トラステッドランタイムBIOSを含むことが可能である。
「仮想マシン」(「仮想アプライアンス」又は「仮想パーティション」とも呼ばれる)とは、物理マシンを仮想化し又はエミュレートするために提供される物理マシンの幾つかのパーティション又はセグメントを称するものである。ユーザ又はアプリケーションの観点からすると、仮想マシンは物理マシンのように見える。仮想マシンは、(ゲストオペレーティングシステムと呼ばれる)オペレーティングシステム及び少なくとも1つのアプリケーションプログラムを含む。
仮想マシンモニタ(VMM)(ハイパーバイザとも呼ばれる)は、電子装置の物理リソース(ハードウェア構成要素を含む)の仮想マシンによる共有を管理する。VMMは、該物理リソースを仮想化する。各仮想マシンは、該VMMにより管理される関連する仮想化された物理リソースを有する。VMMは物理リソースのための要求を処理する。
一実施形態では、コンピューティングシステムは、ハードウェア及び仮想マシンモニタを含む。仮想トラステッドランタイムBIOSは、該仮想マシンモニタにより生成することが可能である。通信チャネルは、該仮想トラステッドランタイムBIOSと通信することが可能である。該通信チャネルはSSLによりセキュアにされる。
別の実施形態では、所与の方法が、コンピューティングシステムにおける仮想トラステッドランタイムBIOSとの通信をセキュアにすることが可能である。該方法は、仮想トラステッドランタイムBIOSの管理及び該仮想トラステッドランタイムBIOSに対するセキュアな通信チャネルの確立を含むことが可能である。セキュアな通信チャネルが確立された後、SSLを用いて該セキュアな通信チャネルを介して該仮想トラステッドランタイムBIOSとの通信が行われる。
図面を参照すると、図1は、仮想トラステッドランタイムBIOSとのセキュアな通信の一実施形態によるコンピューティングシステムのブロック図を示している。コンピューティングシステム100は、プロセッサ110を含むことが可能である。該プロセッサ110は、該コンピューティングシステム100のハードウェア105の一部である。該プロセッサ110は、汎用プロセッサ又は専用プロセッサとすることが可能である。一例として、ハードウェア105は、I/O装置、揮発性メモリ、二次記憶装置、フラッシュメモリ、ネットワークインタフェイスコントローラ、及びグラフィクスアダプタ等も含むことが可能である。該システムは、ハードウェア構成要素の物理リソースを管理し及び該物理リソースを仮想化するための仮想マシンモニタ115を含むことが可能である。該コンピューティングシステムは、ゲストドメイン130に属する仮想基本入出力システム(vBIOS)135を含む。該ゲストドメイン130は、Microsoft Windows(登録商標)、Linux(登録商標)、Unix(登録商標)、又はその他のオペレーティングシステム等のオペレーティングシステムを実行することが可能な仮想マシンである。
実施形態によっては、特権ドメイン120は、システム起動時にVMM102によって開始される管理ドメインである「ドメイン0」であり、該ドメイン0は、強化された特権及びセキュリティ機構を有する。ドメイン0により実行されるタスクの例として、ゲストドメインの生成及び設定が挙げられる。ドメイン0及びゲストドメインの各々は、対応する仮想マシンとみなされる。特権ドメイン120は、VMM115から分離させることが可能である。代替的な実施形態では、特権ドメイン120は、VMM115の一部とすることが可能である。かかる代替的な実施形態では、仮想トラステッドランタイムBIOS機能125はVMM115の一部となる。特権ドメイン120は、トラステッドVMM115により生成され又は管理されるため、トラステッドドメインとすることが可能である。
仮想TPM(Trusted Platform Module)、前記BIOS、又はその他の装置を初期化時に含むことが可能なTPM又はその他の装置によって鍵を生成し又は非封印状態にすることが可能であるため、VMM115は信頼する(trust)ことが可能である。該鍵は、特権ドメイン120を信頼するために使用することが可能である。該鍵は、VMMひいては特権ドメイン120及び仮想トラステッドランタイムBIOSを信頼するために使用される証明書の一部とすることが可能である。該鍵は、SSL通信を生成するための証明書の一部とすることが可能である。該鍵は、コンピューティングシステムの製造時に該コンピューティングシステム上に格納することが可能であり、又は該鍵は、ランタイム(実行時)に生成することが可能である。該鍵は、公開鍵又は秘密鍵等の非対称暗号鍵とすることが可能である。
特権ドメイン120内でのBIOS機能125の提供は、「仮想トラステッドランタイムBIOS 125」又はBIOS.vとも呼ばれる「クラウド内BIOS」を実施する。該「クラウド」とは、特権ドメイン120(又は何らかの他のトラステッドドメイン)を称することが可能なものである。該クラウドは、コンピューティングシステム100内、又は該コンピューティングシステム100の外部に配置することが可能である。例えば、仮想トラステッドランタイムBIOS 125機能を含むクラウドは、ネットワークを介してコンピューティングシステム100によりアクセスすることが可能なものである。該ネットワークは、例えば、LAN、WAN、又は世界規模のネットワークとすることが可能である。
実施形態によっては、ウェブベースネットワーク通信機能により提供されるウェブベースインタフェイスは、要求側(例えばドメイン)がネットワークを介して提供側(例えばサーバコンピュータ)からのサービス(例えばBIOSサービス)を要求することを可能にするサービス要求側-サービス提供側モデルの一部である。一例として、ウェブベースインタフェイスは、ウェブサービスインタフェイスとすることが可能である。ウェブサービスとは、ネットワークを介した仮想マシン同士の対話とすることが可能な協働可能なマシン・ツー・マシン(Machine-to-Machine)をサポートするよう設計された機構を称するものである。ウェブサービスインタフェイスは、W3C(World Wide Web Consortium)によって規定されたウェブサービス記述言語(WSDL)により記述されたフォーマットに従うものとすることが可能である。代替的に、ウェブサービスインタフェイスは、ネットワークを介したウェブサービスの実施において構造化情報を交換するためのプロトコルであるSOAP(Simple Object Access Protocol)(これもまたW3Cにより規定されたものである)に従うものとすることが可能である。
更に別の代替策として、ウェブベースインタフェイスは、クライアント及びサーバを含むREST(Representational State Transfer)アーキテクチャに従うものとすることが可能であり、この場合、クライアントはサーバに要求を提示することが可能であり、サーバはクライアントに応答を提供することが可能である。要求及び応答は、リソースの表現の転送を中心に構築される。リソースは、アドレス指定することが可能な任意の一貫した有意義な概念とすることが可能である。リソースの表現は、典型的には、リソースの現在の又は意図された状態を捕捉したドキュメントである。RESTアーキテクチャでは、クライアント(例えば電子装置)により提示された要求は、実施形態によっては、HTTP(Hypertext Transfer Protocol)Get要求とすることが可能である。サーバ(例えばサーバコンピュータ)は、HTTP Get要求に対するHTTP応答を提供することが可能である。HTTPは、セキュアHTTP(HTTPs)を含むことが可能である。
ウェブベースインタフェイスでは、リソース(例えば内部的な仮想トラステッドランタイムBIOS機能又は外部的な仮想トラステッドランタイムBIOS機能)には、要求されたリソースのアドレスを含む仮想トラステッドランタイムBIOSアクセス要求を発行することによりアクセスすることが可能である。該アドレスは、URL(Uniform Resource Locator)、IP(Internet Protocol)アドレス、SMTP(Simple Mail Transfer Protocol)、又は要求されたリソースを一意に識別することができる他の何らかのアドレス等のウェブアドレスとすることが可能である。
ウェブベースインタフェイスで受信されるアドレスを含む仮想トラステッドランタイムBIOSアクセス要求に応じて、ウェブベースネットワーク通信機能は、該要求を、内部的及び外部的な仮想トラステッドランタイムBIOS機能のうちの適当な1つへ送ることが可能である。場合によっては、ウェブベースネットワーク通信機能は、該要求を、内部的及び外部的な仮想トラステッドランタイムBIOS機能の両方へ送ることが可能である。
仮想トラステッドランタイムBIOSとのウェブベースネットワーク通信は、例えば、インターネット上のメッセージ送信のセキュリティを管理するプロトコルであるSSL(Secure Sockets Layer)によってセキュアにされる。該BIOSとの通信が、インターネットで使用されるようなウェブベース通信であるため、セキュア通信チャネル185を生成することにより、仮想トラステッドランタイムBIOSとの通信をSSLを使用してセキュアにすることが可能となる。SSLは、ウェブベース通信をセキュアにするためのTLS(Transport Layer Security)その他の任意のセキュリティプロトコルもまた意味する。
ソケット法は、ネットワーク内のクライアントとサーバプログラムとの間又は同一コンピュータ内の複数のプログラムレイヤ間でデータを往復させるものであり、それ故、例えば仮想トラステッドランタイムBIOSが特権ドメインによりホストされている場合又はネットワーク上の別の場所でホストされている場合には、SSLを使用して該仮想トラステッドランタイムBIOSとの通信をセキュアにすることが可能である。SSLは公開及び秘密鍵暗号化システムを使用し、該システムはディジタル証明書の使用を含むことも可能である。
セキュアな通信チャネルの確立の一例として、ゲストドメイン130等のドメインがそれ自体を識別するために仮想トラステッドランタイムBIOS 125に対して要求を行うことが挙げられる。該仮想トラステッドランタイムBIOS 125は次いで、SSL証明書のコピーを該ドメインへ送信することが可能である。該ドメインは、該ドメインが該SSLを信頼するか否かをチェックし、該ドメインが該証明書を信頼する場合には該ゲストドメインが該仮想トラステッドランタイムBIOSへメッセージを送信する。該ゲストドメインから該仮想トラステッドランタイムBIOSへのメッセージは、SSL公開鍵で暗号化されたセッション鍵シードを含むことが可能である。該仮想トラステッドランタイムBIOS 125は次いで、該ドメインへディジタル署名された肯定応答を送信して、SSL暗号化セッションを開始させることが可能である。以後、該ドメインと該仮想トラステッドランタイムBIOS 125との間で暗号化データを共有することが可能となる。
セキュアな通信チャネルの確立の別の例では、前記ドメインがSSL証明書を含み、該ドメイン自体を識別すべきことが該ドメインに求められ、該ドメインがSSL証明書のコピーを送信することによりこれに応答し、前記仮想トラステッドランタイムBIOSが該証明書を信頼するか否かを判定して該ドメインへメッセージを送る、ということが可能である。該仮想トラステッドランタイムBIOS 125からのメッセージは、SSL公開鍵で暗号化されたセッション鍵を含むことが可能である。該ドメインは、ディジタル署名された肯定応答を該仮想トラステッドランタイムBIOSへ返信してSSL暗号化セッションを開始させることが可能であり、その結果として該ドメインと該仮想トラステッドランタイムBIOSとの間で暗号化データを共有することが可能となる。
図2は、仮想高特権モードの一実施形態によるコンピューティングシステムのブロック図である。コンピューティングシステム200は、プロセッサ210を含むことが可能である。該プロセッサ210は、コンピューティングシステム200のハードウェア205の一部である。該ハードウェアはファームウェア245を含むことが可能であり、該ファームウェア245は、基本入出力システム(BIOS)250及びEFI(Extensible Firmware Interface)255を含むことが可能である。BIOS 250は、物理BIOSと称することが可能である。「物理BIOS」とは、フラッシュメモリその他のプログラマブルリードオンリーメモリ等の不揮発性メモリ内に存在するBIOSコードであって、コンピューティングシステム200の起動時に実行されるべきものを意味する。実施形態によっては、物理BIOSは、縮小版(簡素化)BIOSとすることが可能である。これは、システム管理モードのうちの少なくとも一部が仮想トラステッドランタイムBIOS 225に移されるからである。仮想トラステッドランタイムBIOS 225が実施される場合には、物理BIOS 250は、仮想トラステッドランタイムBIOS 225に置かれた信頼が故に、変更を許可するようアンロック状態に維持することが可能である。前記プロセッサ210は、汎用プロセッサ又は専用プロセッサとすることが可能である。該システムは、ハードウェア構成要素の物理リソースを管理し及び該物理リソースを仮想化するために、仮想マシンモニタVMM215を含むことが可能である。コンピューティングシステム200は、ゲストドメイン230に配設された仮想基本入出力システム(vBIOS)235を含む。該ゲストドメイン230は、Microsoft Windows(登録商標)、Linux(登録商標)、Unix(登録商標)、又はその他のオペレーティングシステム等のオペレーティングシステムを実行することが可能な仮想マシンである。
実施形態によっては、特権ドメイン220は、システム起動時にVMM215によって開始される管理ドメインである「ドメイン0」であり、該ドメイン0は、強化された特権及びセキュリティ機構を有する。ドメイン0により実行されるタスクの例として、ゲストドメインの生成及び設定が挙げられる。ドメイン0及びゲストドメインの各々は、対応する仮想マシンとみなされる。特権ドメイン220は、VMM215から分離させることが可能である。代替的な実施形態では、特権ドメイン220は、VMM215の一部とすることが可能である。かかる代替的な実施形態では、仮想トラステッドランタイムBIOS225はVMM215の一部となる。
セキュアな通信チャネル285は、システム管理要求等の通信をセキュアにするために使用することが可能である。システム管理要求は、ウェブサービスのアプリケーションプログラミングインタフェイス(API)により送信することが可能である。別の実施形態では、システム管理要求は、WMM(Windows Management Instrumentation)ラッパー内にパッケージ化することが可能である。別の実施形態として、リモートプロシージャコール(RPC)を使用してシステム管理要求を仮想システム管理モードへ送ることが挙げられる。
実施形態によっては、クラウド内BIOSは、VMMベースアーキテクチャの以下に示す前提に基づくものとなる:物理BIOSがブートしているメインランタイムエンティティ(VMM215)を該物理BIOSが認識し信頼している、及び該BIOSにより信頼されているVMMが特権ドメインから到来したI/O要求以外の(BIOS機能にアクセスするための)I/O要求を全てトラップしターンオフする能力を有する。実施形態によっては、コンピューティングシステムによりブートされることになるVMMの出所を認証するためにBIOS検証機構を配設することが可能である。かかる検証機構は、権限のあるVMMのみがコンピューティングシステムでブートすることができることを管理者その他のユーザが指定することを可能にする。該検証機構は、コンピューティングシステム内にあるVMMイメージが不正に変更されていないこと及び該VMMが信頼できるものであることを確実にする。物理BIOSは、該VMMイメージを視覚的に検証することが可能であり、及び以前に指定された既知の一組の制御された動作設定を用いて該VMMがブートされることを確実にすることが可能である。
権限のあるVMMがブートされたことを確認した後、物理BIOSは次いで、権限のない又は悪意のあるコードによる破壊を防止するために該物理BIOSが通常実行することになる様々なセキュリティ対策を延期し又は省略することが可能である。例えば、物理BIOSは、BIOSフラッシュレジスタ及び/又はフラッシュメモリの一部をロックしないことを選択することが可能である。
実施形態によっては、仮想トラステッドランタイムBIOS 225は、コンピューティングシステム200内に内部的に配設される。ゲスト仮想マシン又はBIOSサービスへのアクセスを所望する該コンピューティングシステムの他のエンティティの観点からすると、該BIOSサービスを含むクラウドは、該コンピューティングシステムの外部である場所を含むあらゆる場所に位置することが可能なものである。
仮想トラステッドランタイムBIOSを用いた一実施形態では、特権ドメインその他の信頼できるドメイン以外のドメインは、BIOSと通信することはできない。これは、ゲストドメインからBIOSへの全ての通信をその受信及び処理を行うための適当なフィルタにトラップしてから特権ドメインへ経路指定することにより行うことが可能である。特権ドメインにおける仮想高特権モードは、次いで要求を処理してフラッシュ又はBIOSに対する直接的又は間接的なコールを行うことが可能である。この特権ドメインからBIOSへのコールは、次いでその通過がハイパーバイザにより許可される。これは、ハイパーバイザが、ゲストドメインではなく特権ドメインから発せられたコールを検出することができるからである。物理BIOSに対するオープン且つ排他的なアクセスが提供されると、特権ドメインから物理BIOSへの通信がセキュアになり、特権ドメインはBIOSの全ての設定をその実行時に読み書きすることが可能となり、これにより、プロセッサがシステム管理モードに入るという状況をなくすことが可能となる。
仮想トラステッドランタイムBIOSがセキュアであるとしても、該仮想トラステッドランタイムBIOSとの通信がセキュアであるとは限らない。仮想トラステッドランタイムBIOSとのウェブベース通信をセキュアにするために、該仮想トラステッドランタイムBIOSと要求側ドメイン(例えば、ゲストドメイン230)との間でSSLハンドシェイクを実施することが可能である。この例では、仮想トラステッドランタイムBIOSは、ウェブサーバが有しているようなSSL証明書を含むことが可能であり、要求側ドメインは、該証明書を使用して、該要求側ドメインがセキュアウェブサイトに対するウェブブラウザのように動作することにより、該仮想トラステッドランタイムBIOSとの通信をセキュアにすることが可能である。
図3は、一実施形態による仮想トラステッドランタイムBIOSとの通信をセキュアにする方法のフローチャートを示している。ゲストドメイン301と仮想トラステッドランタイムBIOS 302との間のSSL通信を開始するために、ステップ305で、ゲストドメインが「Hello」と言う。次いで、ステップ310で、仮想トラステッドランタイムBIOSが「Hello」と言う。ステップ315で、仮想トラステッドランタイムBIOSがその証明書をゲストドメインに送る。
実施形態によっては、仮想トラステッドランタイムBIOSは、ゲストドメインに公開鍵を送ることが可能である。仮想トラステッドランタイムBIOSは、クライアント証明書を要求することが可能である。
ステップ320で、仮想トラステッドランタイムBIOSは、Helloが完了したことをゲストドメインに通知する。次いでステップ325で、ゲストドメインが鍵交換を行い、すなわち、仮想トラステッドランタイムBIOSにより提供された証明書からの公開鍵を使用してセッション鍵を交換する。セッション鍵は、対称暗号化を構成するために使用され、非対称暗号化を使用して仮想トラステッドランタイムBIOSへ通信される。仮想トラステッドランタイムBIOSが証明書を要求し、ゲストドメインが証明書を有している場合には、該ゲストドメインは証明書を提供することが可能である。
ステップ330で、ゲストドメインは、Cipher Specに変更があること及び該ゲストドメインからの次の通信がセッション鍵を使用して暗号化されることを、仮想トラステッドランタイムBIOSに通知することが可能である。ステップ335で、ゲストドメインは、処理が完了したことを通知し、該通知はセッション鍵を使用して暗号化される。ステップ340で、仮想トラステッドランタイムBIOSは、Cipher Specを変更して、次のメッセージがセッション鍵を使用して暗号化されることを示すことが可能である。ステップ345で、暗号化された完了メッセージが仮想トラステッドランタイムBIOSにより送信される。ステップ350,355で、ゲストドメインと仮想トラステッドランタイムBIOSとの間で暗号化データを送受信することが可能である。
図4は、一実施形態による仮想トラステッドランタイムBIOSとの通信をセキュアにする方法のフローチャートである。該方法は、ステップ405で、仮想トラステッドランタイムBIOSを管理することにより開始することができる。仮想トラステッドランタイムBIOS125は、仮想マシンモニタ115により管理することが可能である。ステップ410で、仮想トラステッドランタイムBIOSに対するセキュアな通信チャネルを確立することが可能である。
セキュアな通信チャネルの確立の一例として、ゲストドメイン130等のドメインが仮想トラステッドランタイムBIOS 125にそれ自体を識別するよう要求を行うことが挙げられる。該仮想トラステッドランタイムBIOS 125は次いで、SSL証明書のコピーを該ドメインへ送ることが可能である。該ドメインは、該SSL証明書を信頼するか否かをチェックし、該ドメインが該証明書を信頼する場合には、該ゲストドメインは仮想トラステッドランタイムBIOSへメッセージを送る。該ゲストドメインから該仮想トラステッドランタイムBIOSへの該メッセージは、SSL公開鍵で暗号化されたセッション鍵シードを含むことが可能である。仮想トラステッドランタイムBIOS 125は次いでディジタル署名された肯定応答を該ドメインへ返信してSSLを開始させることが可能である。次いで該ドメインと該仮想トラステッドランタイムBIOS 125との間で暗号化データを共有することが可能となる。
セキュアな通信を確立する別の一例では、前記ドメインがSSL証明書を含み、該ドメイン自体を識別すべきことが該ドメインに求められ、該ドメインが該SSL証明書のコピーを送信することによりこれに応答し、前記仮想トラステッドランタイムBIOSが該証明書を信頼するか否かを判定して該ドメインへメッセージを送る、ということが可能である。該仮想トラステッドランタイムBIOS 125からのメッセージは、SSL公開鍵で暗号化されたセッション鍵を含むことが可能である。該ドメインは、ディジタル署名された肯定応答を該仮想トラステッドランタイムBIOSへ返信してSSL暗号化セッションを開始させることが可能であり、その結果として該ドメインと該仮想トラステッドランタイムBIOSとの間で暗号化データを共有することが可能となる。
該セキュアな通信チャネルは、例えば、ウェブベース通信プロトコルとすることが可能である。ステップ415において、仮想トラステッドランタイムBIOSとの通信は、SSLを使用したセキュアな通信チャネルを介したものである。
図5は、一実施形態による仮想トラステッドランタイムBIOSとの通信をセキュアにする方法のフローチャートである。該方法は、ステップ502で、ウェブベースのプロトコルを使用して仮想トラステッドランタイムBIOSと通信することにより開始することができる。ステップ505で、仮想トラステッドランタイムBIOSがコンピューティングシステム100の信頼できる構成要素となるように該仮想トラステッドランタイムBIOSを管理することが可能である。仮想トラステッドランタイムBIOS 125は、仮想マシンモニタ115により管理することが可能である。ステップ510で、仮想トラステッドランタイムBIOSとのセキュアな通信チャネルを確立することが可能である。該セキュアな通信チャネルは、例えば、ウェブベース通信プロトコルとすることが可能である。ステップ512で、公開鍵及び秘密鍵を用いたハンドシェイクを使用して通信をセキュアにすることが可能である。仮想トラステッドランタイムBIOSとの通信をセキュアにするために、ステップ515で、SSLを用いたセキュア通信チャネルを仮想トラステッドランタイムBIOSとの通信に使用する。ステップ518で、仮想トラステッドランタイムBIOSは、例えばシステム構成を変更するために、物理BIOSと通信することが可能である。実施形態によっては、仮想トラステッドランタイムBIOSは、コンピューティングシステムから離れた場所に配設することが可能であり、仮想マシンモニタは、該仮想トラステッドランタイムBIOSが配設されている場所にかかわらず該仮想トラステッドランタイムBIOSへと通信を経路指定することが可能である。
図6は、コンピュータ読み取り可能媒体615-616の一実施形態によるコンピューティングシステム600のブロック図である。該コンピュータ読み取り可能媒体615-616は、プロセッサ605により実行された際に、仮想トラステッドランタイムBIOSとの通信をコンピューティングシステムに管理させることができるコードを含むことが可能である。該コンピューティングシステムは、コントローラハブ610及びグラフィクスコントローラ620等のハードウェアを含むことが可能である。該コンピューティングシステムは、ディスプレイ630、キーボード635、マウス640、センサ645、及びその他の装置に接続することが可能である。前記コードはまた、仮想トラステッドランタイムBIOSとセキュアな通信レイヤを確立することが可能である。仮想トラステッドランタイムBIOSとの通信は、SSLを使用したセキュアな通信チャネルを介したものとすることが可能である。
該コンピューティングシステムはまた、実行時に、該コンピューティングシステムから離れた場所に配設された仮想トラステッドランタイムBIOSとの通信を該コンピューティングシステムに行わせるコードを含むことが可能である。該BIOSが該コンピューティングシステムから離れた場所に配設されている場合、該仮想ランタイムBIOSに対して要求を行うドメイン等の構成要素は、該BIOSが離れた場所に配設されていることを意識しないことが可能である。VMMは、要求側の構成要素に通知することなくその要求を経路指定することが可能である。仮想ランタイムBIOSとの通信は、仮想ランタイムBIOSがローカルに配設されていようとリモートに配設されていようとウェブ通信プロトコルによるものとすることが可能である。該構成要素は、例えば公開鍵及び秘密鍵を使用したハンドシェイクを含むセキュアな通信チャネルを確立することが可能である。
他の図面に示すような様々なモジュールは、1つ以上のプロセッサにより実行することができるマシン読み取り可能命令として実施することが可能である。プロセッサは、マイクロプロセッサ、マイクロコントローラ、プロセッサモジュール又はサブシステム、プログラマブル集積回路、プログラマブルゲートアレイ、又はその他の制御又はコンピューティング装置を含むことが可能である。
マシン読み取り可能命令は、マシン読み取り可能又はコンピュータ読み取り可能記憶媒体に格納することが可能であり、該記憶媒体は、1つ以上のコンピュータ読み取り可能又はマシン読み取り可能記憶媒体として実施することが可能である。該記憶媒体は、DRAM又はSRAM、EPROM、EEPROM、及びフラッシュメモリといった半導体メモリデバイス、固定、フロッピー、及びリムーバブルディスク等の磁気ディスク、テープを含む他の磁気媒体、CD又はDVD等の光学媒体、又はその他のタイプの記憶装置を含む、様々な形態の記憶手段を含むことが可能である。上記命令は、1つのコンピュータ読み取り可能又はマシン読み取り可能記憶媒体上に配設されたものとすることが可能であり、代替的には、おそらくは複数のノードを有する大規模なシステム内に分散された複数のコンピュータ読み取り可能又はマシン読み取り可能記憶媒体上に配設されたものとすることが可能である、ということに留意されたい。かかる1つ以上のコンピュータ読み取り可能又はマシン読み取り可能記憶媒体は、物品(又は製品)の一部とすることが可能である。物品又は製品とは、任意の製造された単一の構成要素又は複数の構成要素を称することが可能なものである。1つ以上の記憶媒体は、マシン読み取り可能命令を実行しているマシン内に配設することが可能であり、又はマシン読み取り可能命令をその実行のためにネットワークを介してダウンロードすることができるリモートサイトに配設することが可能である。
上記説明では、本書で開示する対象の理解のために様々な細部について説明したが、本発明の実施形態は、かかる細部の一部又は全部を伴うことなく実施することが可能である。別の実施形態では、上述した細部に対する修正及び変更を含むことが可能である。特許請求の範囲は、かかる修正及び変更を網羅することを意図したものである。

Claims (13)

  1. ハードウェアと、
    仮想マシンモニタと、
    該仮想マシンモニタにより管理される仮想トラステッドランタイムBIOSをホストするための特権ドメインと、
    前記特権ドメインにより生成されるゲストドメインと、
    前記ゲストドメインが前記仮想トラステッドランタイムBIOSと通信するための通信チャネルと
    を備えており、
    該通信チャネルがSSL(Secure Socket Layer)によりセキュアにされ、前記仮想トラステッドランタイムBIOSは、前記仮想マシンモニタを介して前記ハードウェア上の物理BIOSと通信するものである、コンピューティングシステム。
  2. 前記仮想トラステッドランタイムBIOSとのセキュアな通信を提供するための公開鍵及び秘密鍵を更に備えている、請求項1に記載のシステム。
  3. 前記通信チャネルがウェブ通信プロトコルに基づくものである、請求項1に記載のシステム。
  4. 前記通信チャネルが、HTTP(Hypertext Transfer Protocol)レイヤとTCP(Transport Control Protocol)レイヤとの間にある、請求項3に記載のシステム。
  5. リモートに配設された仮想トラステッドランタイムBIOSと通信するための送受信手段を更に備えている、請求項1に記載のシステム。
  6. コンピューティングシステムにおける仮想トラステッドランタイムBIOSとの通信をセキュアにする方法であって、
    仮想マシンモニタが仮想トラステッドランタイムBIOSを管理し、
    該仮想トラステッドランタイムBIOSと、該仮想トラステッドランタイムBIOSをホストするための特権ドメインにより生成されるゲストドメインとの間のセキュアな通信チャネルを、前記仮想トラステッドランタイムBIOS及び前記ゲストドメインが確立し、
    前記ゲストドメインが、SSL(Secure Socket Layer)を使用し前記セキュアな通信チャネルを介して前記仮想トラステッドランタイムBIOSと通信
    前記仮想トラステッドランタイムBIOSが前記仮想マシンモニタを介して物理BIOSと通信する、
    という各ステップを含む、コンピューティングシステムにおける仮想トラステッドランタイムBIOSとの通信をセキュアにする方法
  7. 前記ゲストドメインが、前記コンピューティングシステムからリモートに配設された仮想ランタイムBIOSと通信するステップを更に含む、請求項に記載の方法。
  8. 前記仮想トラステッドランタイムBIOSと前記ゲストドメインとの通信がウェブ通信プロトコルである、請求項に記載の方法。
  9. セキュアな通信チャネルを確立する前記ステップが、前記仮想トラステッドランタイムBIOSと前記ゲストドメインとの間における、公開鍵及び秘密鍵を使用したハンドシェイクを含む、請求項に記載の方法。
  10. コードを含むコンピュータ読み取り可能媒体であって、該コードが、プロセッサにより実行された際に、
    仮想トラステッドランタイムBIOS管理し、
    該仮想トラステッドランタイムBIOSと、該仮想トラステッドランタイムBIOSをホストするための特権ドメインにより生成されるゲストドメインとの間のセのセキュアな通信チャネルを確立し、
    前記ゲストドメインが、SSL(Secure Socket Layer)を使用して前記セキュアな通信チャネルを介して前記仮想トラステッドランタイムBIOSと通信
    前記仮想トラステッドランタイムBIOSが仮想マシンモニタを介して物理BIOSと通信する、
    という各ステップをコンピューティングシステムに行わせるものである、コンピュータ読み取り可能媒体。
  11. 前記コンピューティングシステムからリモートに配設された仮想ランタイムBIOSと通信するステップを実行時にコンピューティング装置に行わせるコードを更に含む、請求項10に記載のコンピュータ読み取り可能媒体。
  12. ウェブ通信プロトコルを使用して前記仮想ランタイムBIOSと通信するステップを実行時にコンピューティング装置に行わせるコードを更に含む、請求項10に記載のコンピュータ読み取り可能媒体。
  13. 公開鍵及び秘密鍵を使用したハンドシェイクを含むセキュアな通信チャネルを確立するステップを実行時にコンピューティング装置に行わせるコードを更に含む、請求項10に記載のコンピュータ読み取り可能媒体。
JP2014527137A 2011-08-30 2011-09-29 仮想トラステッドランタイムbiosとの通信 Expired - Fee Related JP5809362B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
PCT/US2011/049677 WO2013032442A1 (en) 2011-08-30 2011-08-30 Virtual high privilege mode for a system management request
USPCT/US2011/049677 2011-08-30
PCT/US2011/054045 WO2013032495A1 (en) 2011-08-30 2011-09-29 Communication with a virtual trusted runtime bios

Publications (2)

Publication Number Publication Date
JP2014529130A JP2014529130A (ja) 2014-10-30
JP5809362B2 true JP5809362B2 (ja) 2015-11-10

Family

ID=54328041

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2014527137A Expired - Fee Related JP5809362B2 (ja) 2011-08-30 2011-09-29 仮想トラステッドランタイムbiosとの通信

Country Status (9)

Country Link
US (4) US9275230B2 (ja)
EP (1) EP2771783B1 (ja)
JP (1) JP5809362B2 (ja)
CN (2) CN103748556B (ja)
BR (1) BR112014003389B1 (ja)
DE (1) DE112011105568T5 (ja)
GB (1) GB2507015B (ja)
TW (1) TWI464680B (ja)
WO (2) WO2013032495A1 (ja)

Families Citing this family (45)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9148428B1 (en) * 2011-05-25 2015-09-29 Bromium, Inc. Seamless management of untrusted data using virtual machines
JP6063941B2 (ja) 2011-08-30 2017-01-18 ヒューレット−パッカード デベロップメント カンパニー エル.ピー.Hewlett‐Packard Development Company, L.P. システム管理要求のための仮想高特権モード
WO2013032495A1 (en) * 2011-08-30 2013-03-07 Hewlett-Packard Development Company , L.P. Communication with a virtual trusted runtime bios
DE112011105752T5 (de) * 2011-10-21 2014-10-02 Hewlett-Packard Development Company, L.P. Webbasierte Schnittstelle zum Zugriff auf eine Funktion eines Basic Input/Output-Systems
IN2014DN03052A (ja) 2011-10-21 2015-05-08 Hewlett Packard Development Co
US9253185B2 (en) * 2012-12-12 2016-02-02 Nokia Technologies Oy Cloud centric application trust validation
US9497266B2 (en) * 2013-02-22 2016-11-15 International Business Machines Corporation Disk mirroring for personal storage
US10049217B2 (en) 2013-11-13 2018-08-14 Via Technologies, Inc. Event-based apparatus and method for securing bios in a trusted computing system during execution
US9547767B2 (en) 2013-11-13 2017-01-17 Via Technologies, Inc. Event-based apparatus and method for securing bios in a trusted computing system during execution
US9779242B2 (en) 2013-11-13 2017-10-03 Via Technologies, Inc. Programmable secure bios mechanism in a trusted computing system
US10055588B2 (en) 2013-11-13 2018-08-21 Via Technologies, Inc. Event-based apparatus and method for securing BIOS in a trusted computing system during execution
US9798880B2 (en) 2013-11-13 2017-10-24 Via Technologies, Inc. Fuse-enabled secure bios mechanism with override feature
US9367689B2 (en) 2013-11-13 2016-06-14 Via Technologies, Inc. Apparatus and method for securing BIOS in a trusted computing system
US9779243B2 (en) 2013-11-13 2017-10-03 Via Technologies, Inc. Fuse-enabled secure BIOS mechanism in a trusted computing system
US9767288B2 (en) 2013-11-13 2017-09-19 Via Technologies, Inc. JTAG-based secure BIOS mechanism in a trusted computing system
US9129113B2 (en) 2013-11-13 2015-09-08 Via Technologies, Inc. Partition-based apparatus and method for securing bios in a trusted computing system during execution
US10095868B2 (en) 2013-11-13 2018-10-09 Via Technologies, Inc. Event-based apparatus and method for securing bios in a trusted computing system during execution
US9183394B2 (en) 2013-11-13 2015-11-10 Via Technologies, Inc. Secure BIOS tamper protection mechanism
US9507942B2 (en) 2013-11-13 2016-11-29 Via Technologies, Inc. Secure BIOS mechanism in a trusted computing system
EP3085007B1 (en) 2013-12-20 2023-03-15 Nokia Technologies Oy Push-based trust model for public cloud applications
US20150304343A1 (en) 2014-04-18 2015-10-22 Intuit Inc. Method and system for providing self-monitoring, self-reporting, and self-repairing virtual assets in a cloud computing environment
US10757133B2 (en) 2014-02-21 2020-08-25 Intuit Inc. Method and system for creating and deploying virtual assets
US10121007B2 (en) 2014-02-21 2018-11-06 Intuit Inc. Method and system for providing a robust and efficient virtual asset vulnerability management and verification service
US20150271195A1 (en) * 2014-03-18 2015-09-24 Intuit Inc. Method and system for providing temporary secure access enabled virtual assets
US11294700B2 (en) 2014-04-18 2022-04-05 Intuit Inc. Method and system for enabling self-monitoring virtual assets to correlate external events with characteristic patterns associated with the virtual assets
US10102082B2 (en) 2014-07-31 2018-10-16 Intuit Inc. Method and system for providing automated self-healing virtual assets
CN105988830B (zh) * 2015-02-04 2019-07-26 联想(北京)有限公司 信息处理方法及电子设备
US10375088B2 (en) 2015-06-04 2019-08-06 Vm-Robot, Inc. Routing systems and methods
US9749294B1 (en) * 2015-09-08 2017-08-29 Sprint Communications Company L.P. System and method of establishing trusted operability between networks in a network functions virtualization environment
US10542115B1 (en) 2015-10-01 2020-01-21 Sprint Communications Company L.P. Securing communications in a network function virtualization (NFV) core network
US9781016B1 (en) 2015-11-02 2017-10-03 Sprint Communications Company L.P. Dynamic addition of network function services
US10740710B2 (en) 2016-03-25 2020-08-11 Nebbiolo Technologies, Inc. Fog computing facilitated flexible factory
US10250498B1 (en) 2016-10-03 2019-04-02 Sprint Communications Company L.P. Session aggregator brokering of data stream communication
US10798063B2 (en) * 2016-10-21 2020-10-06 Nebbiolo Technologies, Inc. Enterprise grade security for integrating multiple domains with a public cloud
US11231448B2 (en) 2017-07-20 2022-01-25 Targus International Llc Systems, methods and devices for remote power management and discovery
US10979368B2 (en) 2017-08-02 2021-04-13 Nebbiolo Technologies, Inc. Architecture for converged industrial control and real time applications
US10348488B1 (en) 2017-08-25 2019-07-09 Sprint Communications Company L.P. Tiered distributed ledger technology (DLT) in a network function virtualization (NFV) core network
US10838707B2 (en) 2018-07-20 2020-11-17 Dell Products L.P. Runtime update of intel server platform services' node manager settings in bios EEPROM
EP3908948A4 (en) * 2019-04-18 2022-08-24 Hewlett-Packard Development Company, L.P. SERVICE TRUST STATE
CA3148974C (en) 2019-08-22 2024-06-25 Targus International Llc Systems and methods for participant-controlled video conferencing
WO2021150219A1 (en) 2020-01-22 2021-07-29 Hewlett-Packard Development Company, L.P. Customized thermal and power policies in computers
US20220156381A1 (en) * 2020-11-19 2022-05-19 Moxa Inc. Method of Handling Security of an Operating System
US12073205B2 (en) 2021-09-14 2024-08-27 Targus International Llc Independently upgradeable docking stations
US12105806B2 (en) * 2022-01-27 2024-10-01 Hewlett Packard Enterprise Development Lp Securing communications with security processors using platform keys
CN114244515B (zh) * 2022-02-25 2022-06-28 中瓴智行(成都)科技有限公司 基于Hypervisor的虚拟机通信方法、装置、可读存储介质及电子设备

Family Cites Families (60)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5230052A (en) * 1990-10-01 1993-07-20 International Business Machines Corp. Apparatus and method for loading bios into a computer system from a remote storage location
US5574920A (en) 1994-10-25 1996-11-12 Microsoft Corporation Method for controlling power down of a hard disk drive in a computer
US5701477A (en) * 1995-03-30 1997-12-23 Cirrus Logic, Inc. Method and apparatus for master boot record shadowing
US5844986A (en) * 1996-09-30 1998-12-01 Intel Corporation Secure BIOS
WO1998029807A1 (en) 1996-12-30 1998-07-09 Cirrus Logic, Inc. Real time services in backwardly compatible operating systems
US6003065A (en) 1997-04-24 1999-12-14 Sun Microsystems, Inc. Method and system for distributed processing of applications on host and peripheral devices
US20030229794A1 (en) 2002-06-07 2003-12-11 Sutton James A. System and method for protection against untrusted system management code by redirecting a system management interrupt and creating a virtual machine container
US7024550B2 (en) * 2002-06-28 2006-04-04 Hewlett-Packard Development Company, L.P. Method and apparatus for recovering from corrupted system firmware in a computer system
US7337309B2 (en) * 2003-03-24 2008-02-26 Intel Corporation Secure online BIOS update schemes
US7032108B2 (en) * 2003-05-02 2006-04-18 Egenera, Inc. System and method for virtualizing basic input/output system (BIOS) including BIOS run time services
US7380136B2 (en) * 2003-06-25 2008-05-27 Intel Corp. Methods and apparatus for secure collection and display of user interface information in a pre-boot environment
EP1530339B1 (en) * 2003-11-07 2008-03-05 Harman Becker Automotive Systems GmbH Method and apparatuses for access control to encrypted data services for a vehicle entertainment and information processing device
US7418584B1 (en) * 2004-05-11 2008-08-26 Advanced Micro Devices, Inc. Executing system management mode code as virtual machine guest
US8271976B2 (en) 2004-06-30 2012-09-18 Microsoft Corporation Systems and methods for initializing multiple virtual processors within a single virtual machine
US7757231B2 (en) * 2004-12-10 2010-07-13 Intel Corporation System and method to deprivilege components of a virtual machine monitor
US7334076B2 (en) 2005-03-08 2008-02-19 Microsoft Corporation Method and system for a guest physical address virtualization in a virtual machine environment
US7937701B2 (en) 2005-06-30 2011-05-03 Intel Corporation ACPI communication between virtual machine monitor and policy virtual machine via mailbox
US20070055968A1 (en) 2005-09-07 2007-03-08 Rader Shawn T Reliable BIOS updates
CN100437420C (zh) 2005-09-30 2008-11-26 联想(北京)有限公司 计算机系统及其安全加固方法
US7676666B2 (en) 2006-02-02 2010-03-09 Dell Products L.P. Virtual BIOS firmware hub
JP4542514B2 (ja) * 2006-02-13 2010-09-15 株式会社日立製作所 計算機の制御方法、プログラム及び仮想計算機システム
US7840398B2 (en) * 2006-03-28 2010-11-23 Intel Corporation Techniques for unified management communication for virtualization systems
US8341416B2 (en) 2006-05-21 2012-12-25 International Business Machines Corporation Assertion message signatures
US20080082976A1 (en) * 2006-09-29 2008-04-03 Matthias Steinwagner Usage of virtualization software for shipment of software products
US9280659B2 (en) * 2006-12-29 2016-03-08 Intel Corporation Methods and apparatus for remeasuring a virtual machine monitor
CN101241445B (zh) 2007-02-08 2011-07-27 联想(北京)有限公司 虚拟机系统及其访问显卡的方法
US8060876B2 (en) * 2007-08-10 2011-11-15 Intel Corporation Methods and apparatus for creating an isolated partition for a virtual trusted platform module
US8064605B2 (en) * 2007-09-27 2011-11-22 Intel Corporation Methods and apparatus for providing upgradeable key bindings for trusted platform modules
US20090125901A1 (en) 2007-11-13 2009-05-14 Swanson Robert C Providing virtualization of a server management controller
US20110040812A1 (en) 2007-12-20 2011-02-17 Virtual Computer, Inc. Layered Virtual File System
US8584229B2 (en) * 2007-12-21 2013-11-12 Intel Corporation Methods and apparatus supporting access to physical and virtual trusted platform modules
JP2009176213A (ja) * 2008-01-28 2009-08-06 Hitachi Software Eng Co Ltd ネットワークブート方式
US20090198988A1 (en) * 2008-01-31 2009-08-06 Inventec Corporation Method for verifying refreshed bios content
JP2009230433A (ja) * 2008-03-21 2009-10-08 Toshiba Corp ネットワークブート装置、プログラム及び方法
US8117435B2 (en) 2008-06-30 2012-02-14 Intel Corporation Method and system for secured dynamic bios update
TWI460657B (zh) 2008-09-05 2014-11-11 Asustek Comp Inc 更新與修復基本輸入輸出系統的方法
CN101409714A (zh) * 2008-11-18 2009-04-15 华南理工大学 一种基于虚拟机的防火墙系统
CN101739283B (zh) * 2008-11-20 2013-12-25 联想(北京)有限公司 一种计算机及虚拟系统直接访问计算机硬件的方法
US20110055299A1 (en) 2008-12-18 2011-03-03 Virtual Computer, Inc. Managing User Data in a Layered Virtual Workspace
US8799691B2 (en) 2009-01-07 2014-08-05 Hewlett-Packard Development Company, L.P. Hierarchical power management
US8166288B2 (en) 2009-01-30 2012-04-24 Hewlett-Packard Development Company, L.P. Managing requests of operating systems executing in virtual machines
US8918488B2 (en) 2009-02-04 2014-12-23 Citrix Systems, Inc. Methods and systems for automated management of virtual resources in a cloud computing environment
US8245086B2 (en) * 2009-06-26 2012-08-14 International Business Machines Corporation Visual feedback system for multiple partitions on a server
CN101599025B (zh) * 2009-07-07 2012-07-18 武汉大学 可信密码模块安全虚拟化方法
US8286164B2 (en) * 2009-08-07 2012-10-09 International Business Machines Corporation Secure recursive virtualization
US9069591B1 (en) * 2009-09-10 2015-06-30 Parallels IP Holding GmbH Patching host OS structures for hardware isolation of virtual machines
JP2011076505A (ja) 2009-09-30 2011-04-14 Brother Industries Ltd 情報処理システム及び情報処理方法
US20110126194A1 (en) * 2009-11-24 2011-05-26 International Business Machines Corporation Shared security device
US8661436B2 (en) 2009-12-14 2014-02-25 Citrix Systems, Inc. Dynamically controlling virtual machine access to optical disc drive by selective locking to a transacting virtual machine determined from a transaction stream of the drive
JP5458899B2 (ja) * 2010-01-12 2014-04-02 富士通株式会社 仮想計算機、遠隔起動プログラム、遠隔起動方法及び仮想計算機システム
US8473947B2 (en) * 2010-01-18 2013-06-25 Vmware, Inc. Method for configuring a physical adapter with virtual function (VF) and physical function (PF) for controlling address translation between virtual disks and physical storage regions
US8977842B1 (en) * 2010-02-05 2015-03-10 Symantec Corporation Hypervisor enabled secure inter-container communications
US8719817B2 (en) * 2010-03-25 2014-05-06 Vmware, Inc. Virtualization intermediary/virtual machine guest operating system collaborative SCSI path management
CN102971706B (zh) * 2010-05-10 2016-08-10 思杰系统有限公司 将信息从安全虚拟机重定向到不安全虚拟机
CN102262557B (zh) * 2010-05-25 2015-01-21 运软网络科技(上海)有限公司 通过总线架构构建虚拟机监控器的方法及性能服务框架
US8429276B1 (en) * 2010-10-25 2013-04-23 Juniper Networks, Inc. Dynamic resource allocation in virtual environments
CN101957900B (zh) * 2010-10-26 2012-02-15 中国航天科工集团第二研究院七○六所 一种可信虚拟机平台
US8839363B2 (en) * 2011-04-18 2014-09-16 Bank Of America Corporation Trusted hardware for attesting to authenticity in a cloud environment
EP2718785A4 (en) * 2011-06-13 2014-12-31 Lynux Works Inc SYSTEMS AND METHOD FOR SAFE DOMAIN INSULATION
WO2013032495A1 (en) * 2011-08-30 2013-03-07 Hewlett-Packard Development Company , L.P. Communication with a virtual trusted runtime bios

Also Published As

Publication number Publication date
US20160162299A1 (en) 2016-06-09
US10013559B2 (en) 2018-07-03
EP2771783B1 (en) 2020-08-05
CN103890715A (zh) 2014-06-25
GB2507015A (en) 2014-04-16
US9535710B2 (en) 2017-01-03
US20140359259A1 (en) 2014-12-04
EP2771783A4 (en) 2015-06-03
BR112014003389A2 (pt) 2017-02-21
JP2014529130A (ja) 2014-10-30
US20170068817A1 (en) 2017-03-09
TW201322128A (zh) 2013-06-01
EP2771783A1 (en) 2014-09-03
CN103748556A (zh) 2014-04-23
GB201401956D0 (en) 2014-03-19
GB2507015B (en) 2020-04-29
TWI464680B (zh) 2014-12-11
US20140250294A1 (en) 2014-09-04
CN103748556B (zh) 2018-02-02
US9275230B2 (en) 2016-03-01
BR112014003389B1 (pt) 2021-09-28
WO2013032508A1 (en) 2013-03-07
WO2013032495A1 (en) 2013-03-07
DE112011105568T5 (de) 2014-05-28
US9542197B2 (en) 2017-01-10
CN103890715B (zh) 2017-09-12

Similar Documents

Publication Publication Date Title
JP5809362B2 (ja) 仮想トラステッドランタイムbiosとの通信
US10523658B2 (en) Securing a data connection for communicating between two end-points
CN108351944B (zh) 链式安全系统
US9753742B2 (en) Web-based interface to access a function of a basic input/output system
US9509692B2 (en) Secured access to resources using a proxy
JP6092428B2 (ja) 特権付き動作を呼び出すためのセキュアインターフェイス
JP6222592B2 (ja) モバイルアプリケーション管理のためのモバイルアプリケーションのアイデンティティの検証
US11656882B2 (en) Instant virtual application launch
US8875240B2 (en) Tenant data center for establishing a virtual machine in a cloud environment
JP2016509806A (ja) 安全な仮想マシン移行
JP5885851B2 (ja) 特権ドメインでの基本入出力システム(bios)機能の提供

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20150227

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20150317

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20150608

RD03 Notification of appointment of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7423

Effective date: 20150608

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20150716

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20150821

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20150910

R150 Certificate of patent or registration of utility model

Ref document number: 5809362

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees