JP6537455B2 - マルチテナント・コンピューティング・インフラストラクチャにおける鍵管理の方法、装置、コンピュータ・プログラム製品、およびクラウド・コンピュート・インフラストラクチャ(マルチテナント環境における鍵管理) - Google Patents

マルチテナント・コンピューティング・インフラストラクチャにおける鍵管理の方法、装置、コンピュータ・プログラム製品、およびクラウド・コンピュート・インフラストラクチャ(マルチテナント環境における鍵管理) Download PDF

Info

Publication number
JP6537455B2
JP6537455B2 JP2015562473A JP2015562473A JP6537455B2 JP 6537455 B2 JP6537455 B2 JP 6537455B2 JP 2015562473 A JP2015562473 A JP 2015562473A JP 2015562473 A JP2015562473 A JP 2015562473A JP 6537455 B2 JP6537455 B2 JP 6537455B2
Authority
JP
Japan
Prior art keywords
key
tenant
management
virtual
data
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.)
Active
Application number
JP2015562473A
Other languages
English (en)
Other versions
JP2016511610A (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.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
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
Application filed by International Business Machines Corp filed Critical International Business Machines Corp
Publication of JP2016511610A publication Critical patent/JP2016511610A/ja
Application granted granted Critical
Publication of JP6537455B2 publication Critical patent/JP6537455B2/ja
Active 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/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/31User authentication
    • 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
    • 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/0816Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
    • H04L9/0819Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s)
    • H04L9/083Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s) involving central third party, e.g. key distribution center [KDC] or trusted third party [TTP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/06Network architectures or network communication protocols for network security for supporting key management in a packet data network
    • 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/088Usage controlling of secret information, e.g. techniques for restricting cryptographic keys to pre-authorized uses, different access levels, validity of crypto-period, different key- or password length, or different strong and weak cryptographic algorithms
    • 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/0891Revocation or update of secret information, e.g. encryption key update or rekeying
    • 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/14Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using a plurality of keys or algorithms
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/21Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/2107File encryption
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/21Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/2113Multi-level security, e.g. mandatory access control
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/60Digital content management, e.g. content distribution
    • H04L2209/601Broadcast encryption

Description

本発明は、概して、異なる者が情報技術(IT)リソースを共用するクラウド・コンピューティングまたは他の共有展開環境において、情報をセキュアにすることに関する。より詳細には、本発明は、マルチテナント・コンピューティング・インフラストラクチャにおける鍵管理の方法に関する。
新たに出現した情報技術(IT)配信モデルが、クラウド・コンピューティングであり、これにより、共有されるリソース、ソフトウェア、および情報は、インターネットを通じてコンピュータおよび他のデバイスにオンデマンドで提供される。クラウド・コンピューティングおよび他のこのような共有展開モデル内で複数の者がリソースを共有するとき、そのITコストの強制的変化および削減(固定型から可変型へ)を実現することができる。この手法を使用すると、会社は、コンピューティングおよびストレージ容量を弾力的に拡大して、需要に合わせること、運用および資本コストを外部のデータセンタ、無料ITスタッフに移して新しいプロジェクトに焦点を合わせること、およびさらに多くのことが可能である。クラウド計算リソースは一般的に、データセンタ施設の物理サーバ上にマップされた仮想サーバ、すなわちいわゆる「仮想マシン」(VM)内でアプリケーションが動作する、仮想化されたアーキテクチャを一般的に使用して、ネットワークに接続されたアプリケーションを実行する大規模サーバ・ファームに収容される。
新たに出現したクラウド環境は、クラウドベースのサービスをサポートするように構成されている既存のITインフラストラクチャから作り出されている。既存の環境とは異なるクラウド・コンピューティングの1つの主要な特徴は、複数顧客単一展開(multi-customer single deployment)と呼ばれることもある、いわゆる「マルチテナント」サポートの要件である。この要件を満たすために、サービス・プロバイダは、クラウド・サービスの異なる顧客の利用を分離することができなければならない。実際に、一般的には企業顧客をこのようなリソースの利用から遠ざけている最も深刻な障壁の1つが、プロバイダのセキュリティ姿勢を、その独自のセキュリティ・コンプライアンス要件に関して評価する(gauge)能力である。
詳細には、共有環境が、保護されていないデータを、意図的にのみならず、意図的でなくとも、第三者による悪意のある攻撃、ハッキング、およびイントロスペクション(introspection)にさらすおそれを有する。サービス・プロバイダは、したがって、クラウド・リソースを共有している特定の顧客間および顧客同士の分離を維持する必要がある。したがって、このようなシステムは、基となるネットワーク、プラットフォーム、仮想化機構、またはミドルウェアにかかわらず、エンドツーエンドの信頼性および顧客データのセキュリティを確保する必要がある。これらの問題のいくつかは、データおよびリソースの分離、ならびにVPNおよび他のそのようなアクセス機構の使用によって対処されることが可能であるが、多くのクラウド・データセンタは、伝統的なネットワーク分離を無効にする(negate)、およびVPNキーイング技法を複雑にする非伝統的な物理ネットワーク構成を使用する。現在、顧客の仮想領域のすべての層にわたってデータ・セキュリティを提供する、単一の標準的なまたは明白な機構が設けられていない。
クラウド・コンピューティングおよび他の共有展開モデルを使用することを望むほとんどの会社は、会社のデータおよびアプリケーションに高い価値を付与し、それらを価値のある知的財産(IP)とみなす。上記のように、これらの企業はまた、企業に企業のアプリケーションがアクセスするデータの機密性を十分に保護する義務を負わせる、法的な、規制目的の、または独自の企業セキュリティ・ポリシー、あるいはこれらの組合せの企業セキュリティ・ポリシーを有することがある。この問題を解決する際の1つの仮定は、慎重な扱いを要するデータ、またはそのようなデータを使用する機密性の高いアプリケーション、あるいはその両方を有する顧客のニーズに応えるには、このような共有/クラウド・インフラストラクチャ内のテナントごとのデータの暗号化が必要であるということである。このために、この問題に対処するために提案された1つの手法が、パブリック・データセンタを使用することを希望する会社に、共有インフラストラクチャ内の攻撃に対する最善の防御としてその独自のデータの暗号化を外部から管理しようと試みさせることである。しかしながらこの手法は、暗号化(例えば、鍵、認証など)の管理、および認証/認可プロトコルがクラウドの顧客に大きな負担となるので、ビジネス・ワークフローを可能にするには有効なアクセスが必要とされるとき、データの実用性を低下させる。
さらに、共有データセンタ・プロバイダが公開鍵インフラストラクチャ(PKI)など、既存の鍵管理システムを使用して仮想化されたデータセンタのあらゆるレベルにおいてエンドツーエンドの暗号化によるセキュリティをサポートすることに関係する複雑さは、法外なものとなっている。これは、PKIに基づく暗号化技法が、2者または2つのエンドポイント間で信頼およびセキュアな/暗号化されたデータを確立するように設計されているためである。これは、単純なデータ/メッセージ交換には十分であるかもしれないが、クラウド・インフラストラクチャに存在するより高度なワークフローでは、データが、多くのエンドポイントを越え、顧客が直接制御しない多くのサービスおよびリソースを含んでいる。さらに、PKIベースの技法を使用する試みは、多くの公開/秘密鍵ペアおよびそれらの関連するセキュリティ・ポリシーを管理する必要性のために、やはり扱いにくいものでもある。実際に、最悪の場合では、すべてのエンドポイントが、顧客のデータを扱うための個別の公開/秘密鍵ペアおよびセキュリティ・ポリシーを有する。PKIに基づく手法に伴う別の問題は、エンドツーエンドのセキュリティ・システムを更新する手段、または信頼の相対的レベルに基づいてデバイスもしくはシステム・リソースを無効にするもしくは機密扱いにする手段がないことである。このような機能を複雑な環境において必要とされる粒度のレベルで顧客に公開することもまた支持できないものとなっている。ハイブリッド環境またはマルチクラウド環境全体にわたって鍵を管理すると、こうした問題を悪化させるだけである。
"Draft NIST Working Definition ofCloud Computing" by Peter Mell and Tim Grance, datedOctober 7, 2009
したがって、データの強力な暗号化を提供するが、共有データセンタ・プロバイダとそれらへの加入を希望する会社の双方にとってより容易に管理できる手法の必要性が依然としてある。
本発明の諸実施形態によれば、マルチテナント共有展開におけるテナントは、テナントの独自の異なる鍵空間を提供され、テナントはこの空間にわたって鍵管理システムを制御する。このように、仮想鍵管理領域が、テナントごとに(顧客ごとに)作成され、特定の顧客のデータが、プロバイダの(1つまたは複数の)データセンタのITインフラストラクチャにおいて共同テナント化される、格納される、送信される、または仮想化されるときはいつでも、データはその顧客に固有の鍵管理材料を使用してセキュアにされるようにする。これは、テナントのデータ(すべての汎用データ、およびソフトウェア・アプリケーションを含むが、これらに限らない)の全体が、他のテナントのアプリケーションからこれを暗号で分離することによって依然としてセキュアであることを保証する。仮想鍵管理領域は、ブロードキャスト暗号化(BE)プロトコルを使用して、詳細にはそのプロトコルの複数の管理キー・バリアント方式を使用して、暗号化される。本明細書に記載するブロードキャスト暗号化に基づく仮想鍵管理システム(VKMS)およびプロトコルは、データのテナントごとのセキュアにされた分離を実現し、共同テナント化されたITインフラストラクチャにおいて、またはその全体にわたって、リソースのいかなる組合せにわたっても使用されることが可能である。テナントと関連付けられた特定の仮想鍵管理領域(VKMD)内では、その後対称鍵が、各所望の信頼レベルに対して確立される(およびその特定の領域においてのみ使用される)ことが可能である。
前述の説明は、本発明のさらに多くの関係のある特徴のうちの一部を概説したものである。これらの特徴は、単に説明のためであると考えられるべきである。本発明の諸実施形態を異なる方法で適用することによって、または以下に述べるように実施形態を変更することによって、他の多くの有益な結果が得られる可能性がある。
本発明およびその利点をより完全に理解するために、次に添付の図面と併せて次の説明を参照されたい。
例示的実施形態の例示の態様を実行することができる分散データ処理環境の例示のブロック図を示す。 例示的実施形態の例示の態様を実行することができるデータ処理システムの例示のブロック図である。 開示する主題を実行することができる例示のクラウド・コンピューティング・アーキテクチャを示す図である。 この開示のブロードキャスト暗号化に基づく仮想鍵管理システム(VKMS)およびプロコトルを実行することができる例示のデータセンタを示す図である。 この開示による仮想鍵管理システム(VKMS)を含むように拡張された、図4のデータセンタを示す図である。 仮想鍵管理システム(VKMS)の代表的な要素をより詳細に示す図である。 代表的なVKMS領域データ(VKMS−DD)データ・セットを示す図である。 VKMSが顧客/テナントのためにVKMDを作成し、初期化する、代表的プロセスの流れを示す図である。 複数のVKM領域が適用された後の共有ITリソースのプロバイダのデータセンタを示す図である。 顧客が複数のデバイス信頼クラスまたはレベルを使用してそのアプリケーションおよびデータをプロビジョニングすることができる方法を示す代表的データセンタ・プロビジョニング戦略を示す図である。
次に図面を参照すると、詳細には図1〜2を参照すると、開示の例示的実施形態を実行することができるデータ処理環境の例示の図が提供されている。当然のことながら、図1〜2は、単に例示であって、開示する主題の態様または実施形態が実行される可能性のある環境に関していかなる限定も主張するまたは暗示するものではないことを理解するべきである。主題の範囲を逸脱することなく、示される環境の多くの変更が行われることが可能である。
クライアント−サーバ技術
次に図面を参照すると、図1は、例示的実施形態の諸態様が実行されることが可能である例示の分散データ処理システムの図形表現を示す。分散データ処理システム100は、例示的実施形態の諸態様が実行されることが可能であるコンピュータのネットワークを含むことができる。分散データ処理システム100は、少なくとも1つのネットワーク102を含み、ネットワーク102は、分散データ処理システム100内で合わせて接続された様々なデバイスおよびコンピュータ間に通信リンクを提供するために使用される媒体である。ネットワーク102は、有線、無線通信リンク、または光ファイバケーブルなど、接続を含むことができる。
示した例では、サーバ104およびサーバ106は、ストレージ・ユニット108とともにネットワーク102に接続されている。さらに、クライアント110、112、および114もまた、ネットワーク102に接続されている。これらのクライアント110、112、および114は、例えば、パーソナル・コンピュータ、ネットワーク・コンピュータなどであってもよい。示した例では、サーバ104は、ブート・ファイル、オペレーティング・システム・イメージ、およびアプリケーションなどのデータを、クライアント110、112、および114に提供する。クライアント110、112、および114は、示した例ではサーバ104に対するクライアントである。分散データ処理システム100は、図示していないさらなるサーバ、クライアント、および他のデバイスを含むことができる。
示した例では、分散データ処理システム100は、伝送制御プロトコル/インターネット・プロトコル(TCP/IP)プロトコル群を使用して互いと通信するネットワークおよびゲートウェイの世界規模の集合を表すネットワーク102を有するインターネットである。インターネットの中心には、データおよびメッセージをルーティングする多数の商用、行政用、教育用、およびその他のコンピュータ・システムからなる主要なノードまたはホスト・コンピュータ間の高速データ通信回線のバックボーンがある。当然ながら、分散データ処理システム100は、いくつかの異なるタイプのネットワーク、例えばイントラネット、ローカル・エリア・ネットワーク(LAN)、ワイド・エリア・ネットワーク(WAN)などを含むように実行されることもある。上述のように、図1は、一例とするものであり、開示する主題の異なる実施形態に対する構造上の制約とするものではなく、したがって、図1に示される特定の要素は、本発明の例示的実施形態が実行されうる環境に関して限定するものと考えられるべきではない。
次に図2を参照すると、例示的実施形態の諸態様が実行されることがある例示のデータ処理システムのブロック図が示されている。データ処理システム200は、図1のクライアント110など、コンピュータの一例であり、この中に、開示の例示的実施形態のための処理を実行する、コンピュータが使用可能なコードまたは命令が置かれることが可能である。
次に図2を参照すると、例示的実施形態が実行されることが可能であるデータ処理システムのブロック図が示されている。データ処理システム200は、図1のサーバ104またはクライアント110など、コンピュータの一例であり、この中に、処理を実行するための、コンピュータが使用可能なコードまたは命令が、例示的実施形態のために置かれることが可能である。この説明のための例では、データ処理システム200が、プロセッサ・ユニット204と、メモリ206と、永続ストレージ208と、通信ユニット210と、入力/出力(I/O)ユニット212と、ディスプレイ214との間の通信を提供する通信ファブリック202を含む。
プロセッサ・ユニット204は、メモリ206にロードされることが可能であるソフトウェアの命令を実行するように機能する。プロセッサ・ユニット204は、特定の実行に応じて、1つまたは複数のプロセッサのセットとすることができる、またはマルチプロセッサ・コアとすることができる。さらにプロセッサ・ユニット204は、単一チップ上にメイン・プロセッサがセカンダリ・プロセッサと共に存在する、1つまたは複数の異種プロセッサ・システムを使用して実行されることが可能である。別の説明のための例として、プロセッサ・ユニット204は、同じタイプの複数のプロセッサを含んだ対称型マルチプロセッサ(SMP)システムであってもよい。
メモリ206および永続ストレージ208は、記憶装置の例である。記憶装置は、一時的に、または永久的に、あるいはその両方に基づいて情報を格納することができるハードウェアのいかなる一部分でもある。これらの例ではメモリ206は、例えばランダム・アクセス・メモリまたは他の好適な揮発性もしくは不揮発性記憶装置であってもよい。永続ストレージ208は、特定の実行に応じて様々な形態をとることができる。例えば、永続ストレージ208は、1つまたは複数の構成要素またはデバイスを含むことができる。例えば、永続ストレージ208は、ハード・ドライブ、フラッシュ・メモリ、書換え可能光ディスク、書換え可能磁気テープ、または上記の何らかの組合せであってもよい。また永続ストレージ208によって使用される媒体は、取り外し可能であってもよい。例えば、リムーバブル・ハード・ドライブが、永続ストレージ208に使用されてもよい。
これらの例の通信ユニット210は、他のデータ処理システムまたはデバイスとの通信を提供する。これらの例では、通信ユニット210は、ネットワーク・インタフェース・カードである。通信ユニット210は、物理通信リンクと無線通信リンクのいずれかまたは両方を通じて通信を提供することができる。
入力/出力ユニット212は、データ処理システム200に接続されることが可能である他のデバイスを用いたデータの入力および出力を可能にする。例えば、入力/出力ユニット212は、キーボードおよびマウスを通じたユーザ入力のための接続を提供することができる。さらに、入力/出力ユニット212は、プリンタに出力を送信することができる。ディスプレイ214は、情報をユーザに表示する機構を提供する。
オペレーティング・システムおよびアプリケーションのための命令、またはプログラムは、永続ストレージ208に置かれる。これらの命令は、プロセッサ・ユニット204による実行のために、メモリ206にロードされることが可能である。異なる実施形態のプロセスは、メモリ206などのメモリに置かれることが可能である、コンピュータにより実行される命令(computer implemented instruction)を使用して、プロセッサ・ユニット204によって行われることが可能である。これらの命令は、プロセッサ・ユニット204でプロセッサによって読み取られ、実行されることが可能であるプログラム・コード、コンピュータ使用可能プログラム・コード、またはコンピュータ可読プログラム・コードと呼ばれる。異なる実施形態のプログラム・コードは、メモリ206または永続ストレージ208など、異なる物理的または有形のコンピュータ可読媒体上で具体化されることが可能である。
プログラム・コード216は、選択的に取り外し可能であるコンピュータ可読媒体218上に関数形式で置かれ、プロセッサ・ユニット204によって実行されるように、データ処理システム200上にロードされる、またはデータ処理システム200に転送されることが可能である。これらの例では、プログラム・コード216およびコンピュータ可読媒体218が、コンピュータ・プログラム製品220を形成する。1つの例では、コンピュータ可読媒体218は、例えば、永続ストレージ208の一部であるハード・ドライブなど、記憶装置に転送するために、永続ストレージ208の一部であるドライブまたは他のデバイスに挿入されるまたは配置される光または磁気ディスクなど、有形の形式であってもよい。有形の形式で、コンピュータ可読媒体218は、データ処理システム200に接続されるハード・ドライブ、サム・ドライブ、またはフラッシュ・メモリなど、永続ストレージの形をとることもできる。コンピュータ可読媒体218の有形の形式は、コンピュータ可読記憶媒体とも呼ばれる。場合によっては、コンピュータ可読媒体218は、取り外し可能ではないことがある。
あるいは、プログラム・コード216は、通信ユニット210への通信リンクを通じて、または入力/出力ユニット212への接続を通じて、あるいはその両方を通じて、コンピュータ可読媒体218からデータ処理システム200に転送されてもよい。通信リンクまたは接続、あるいはその両方は、説明のための例では物理的なものまたは無線であってもよい。コンピュータ可読媒体は、プログラム・コードを含んだ通信リンクまたは無線伝送など、非有形の媒体の形をとることもできる。データ処理システム200について示した様々な構成要素は、様々な実施形態が実行される可能性のある方法に構造上の制約を与えるものではない。様々な例示的実施形態は、データ処理システム200について示した構成要素に追加の、またはそれらの代わりの構成要素を含んだデータ処理システムで実行されることが可能である。図2に示す他の構成要素は、図示した説明のための例とは異なる可能性がある。1つの例として、データ処理システム200中の記憶装置は、データを格納することができるいかなるハードウェア装置でもある。メモリ206、永続ストレージ208、およびコンピュータ可読媒体218は、有形の形式の記憶装置の例である。
別の例では、通信ファブリック202を実行するためにバス・システムが使用されることがあり、システム・バスまたは入力/出力バスなど、1つまたは複数のバスで構成されることがある。当然ながら、バス・システムは、バス・システムにアタッチされた様々な構成要素またはデバイス間でデータの転送を行ういかなる好適なタイプのアーキテクチャを使用して実行されてもよい。また通信ユニットが、モデム、またはネットワーク・アダプタなど、データを送受信するために使用される1つまたは複数のデバイスを含むことがある。さらに、メモリが、例えば、メモリ206または通信ファブリック202に存在することがあるインタフェースおよびメモリ・コントローラ・ハブに見つけられるキャッシュであってもよい。
開示する主題の動作を実行するためのコンピュータ・プログラム・コードは、Java(R)、Smalltalk(R)、C++、C#、オブジェクティブC、もしくは同様のものなどのオブジェクト指向プログラミング言語、および伝統的な手続き型プログラミング言語を含む、1つまたは複数のプログラミング言語のいかなる組合せで書かれることも可能である。プログラム・コードは、Pythonなど、インタプリタ型言語で書かれることも可能である。プログラム・コードは、すべてユーザのコンピュータ上で、スタンドアロン型ソフトウェア・パッケージとして一部をユーザのコンピュータ上で、一部をユーザのコンピュータ上でかつ一部をリモート・コンピュータ上で、またはすべてリモート・コンピュータもしくはサーバ上で、実行することができる。後者のシナリオでは、リモート・コンピュータは、ローカル・エリア・ネットワーク(LAN)もしくはワイド・エリア・ネットワーク(WAN)などの、任意のタイプのネットワークを通じてユーザのコンピュータに接続することができる、または(例えば、インターネット・サービス・プロバイダを使用してインターネットを通じて)外部コンピュータへの接続を行うことができる。本明細書の技法は、非伝統的なIPネットワークにおいて実行されることも可能である。
図1〜2のハードウェアは、実行に応じて変わる可能性があることが、当業者には理解されよう。フラッシュ・メモリ、同等の不揮発性メモリ、または光ディスク・ドライブなど、他の内部ハードウェアまたは周辺デバイスが、図1〜2に示されるハードウェアに加えて、またはこれに代えて使用されてもよい。また、例示的実施形態のプロセスは、開示する主題の範囲を逸脱することなく、前述のSMPシステム以外の、マルチプロセッサ・データ処理システムに適用されることが可能である。
以下でわかるように、本明細書に記載する技法は、クライアント・マシンが、1つまたは複数のマシンのセット上で実行中の、インターネットでアクセスできるウェブベースのポータルと通信する、図1に示すような、標準的なクライアント−サーバの枠組み内で併せて動作することができる。エンド・ユーザが、ポータルにアクセスし、ポータルと対話することができるインターネットに接続可能なデバイス(例えば、デスクトップ・コンピュータ、ノートブック・コンピュータ、インターネット対応モバイル・デバイスなど)を操作する。一般的に、各クライアントまたはサーバ・マシンは、ハードウェアおよびソフトウェアを含んだ、図2に示すようなデータ処理システムであり、これらのエンティティが、インターネット、イントラネット、エクストラネット、プライベート・ネットワーク、またはその他の通信媒体もしくはリンクなどのネットワークによって互いに通信する。データ処理システムは、一般的に、1つまたは複数のプロセッサと、オペレーティング・システムと、1つまたは複数のアプリケーションと、1つまたは複数のユーティリティとを含む。データ処理システム上のアプリケーションは、HTTP、SOAP、XML、WSDL、UDDI、およびWSFLのためのサポートを含むが、これらに限らない、ウェブ・サービスのためのネイティブ・サポートを提供する。SOAP、WSDL、UDDI、およびWSFLに関する情報は、これらの標準の開発および保守に関与しているワールド・ワイド・ウェブ・コンソーシアム(World Wide Web Consortium:W3C)から入手でき、HTTPおよびXMLに関するさらなる情報は、インターネット・エンジニアリング・タスク・フォース(Internet Engineering Task Force:IETF)から入手できる。これらの標準を熟知しているものと考える。
ブロードキャスト暗号化
以下に説明するように、この開示の技法は、「ブロードキャスト暗号化」として知られている既知の鍵管理技法を利用する。以下の段落は、この技法に関するさらなる背景の詳細を提供する。
ブロードキャスト暗号化は、公開鍵暗号に代わるものである。公開鍵暗号とは異なり、ブロードキャスト暗号化は、二者が双方向の会話を常にすることなく鍵について合意することを可能にする。一般に、ブロードキャスト暗号化は、発信者がデータの特別なブロックを受信者に送信することによって機能する。特別なデータ・ブロックは、セッションまたは管理キー・ブロックと呼ばれることもあるが、これにより参加しているデバイスは、管理キーと呼ばれる鍵を計算できるようになる。管理キー・ブロックは、初期の実行においては媒体キー・ブロックと呼ばれることもある。各デバイスは、デバイスがこの計算を行うことを可能にするデバイス・キーのセットを有する。各デバイスは、異なる方法で計算を行い、デバイスの鍵が危険にさらされる場合、新しい管理キー・ブロックが作成され、それらの危険にさらされた鍵は、もはや管理キーを計算するために使用されることはない。一般的に、管理キー・ブロックは、単一の信頼される機関またはエンティティによって作成され、またこの機関またはエンティティはすべてのデバイスにその鍵を割り当てる。管理キー・ブロックは、メッセージを送信することを望む可能性があるシステム中のすべてのデバイスに配布される。メッセージを送信するには、発信者は、管理キー・ブロックを処理して管理キーを取得し、次にこれを使用してメッセージを暗号化する。メッセージに使用される管理キーは、デバイスの信頼レベルによって異なる可能性があり、このような異なる各鍵を管理キー・バリアントと呼ぶことがある。発信者は次に、暗号化されたメッセージと、管理キー・ブロックの両方を受信者に送信する。受信者は、管理キー・ブロックをその独自の方法で処理し、管理キーを取得し、メッセージを解読する。
ブロードキャスト暗号化方式の知られているインスタンス化が、IBM(R)の高度なセキュア・コンテンツ・クラスタ技術(Advanced Secure Content Cluster Technology:ASCCT)であり、これは例えば、顧客が自宅に娯楽コンテンツのライブラリを有することができ、そのライブラリを顧客が所有するすべてのデバイスによって自由に閲覧されるようにしたい場合に役立つ。ASCCTは、ブロードキャスト暗号化を使用して、デバイスのクラスタを構築し、コンテンツはこれに暗号でバインドされて、不正コピーを防止することができる。ASCCTは、管理キー・ブロック(MKB)に基づいたブロードキャスト暗号化を使用する。ASCCTデバイスは、ネットワーク上で一連のメッセージを交換して、デバイスのクラスタを確立し、デバイスのそれぞれは、同じ管理キー・ブロックを共有する。ASCCTデバイスは、その一連の秘密デバイス・キーを使用してMKBを処理し、それによって秘密鍵を取得し、クラスタに参加し、保護されたコンテンツにアクセスすることが可能になる。MKBとデバイス・キーの両方が、ブロードキャスト暗号化システムの管理を行うライセンス許可機関によって発行される。
ASCCTプロトコルおよびそのブロードキャスト暗号化機構を実行するデバイスは、鍵管理ブロック(KMB)を処理することによって生成されるものとは異なる(バインド・キー(Kb)と呼ばれる)鍵でコンテンツを暗号化することによって、デバイスが保護するコンテンツを特定のエンティティ(例えば、ホームネットワークまたはクラスタ)に「バインドする」。一般的に、(媒体、デバイス、またはユーザであるかどうかにかかわらず)特定のエンティティにコンテンツをバインドする現在の手法は、暗号鍵の計算において1つのレベルの間接(one level of indirection)を介している。これらの場合、一般的に、コンテンツを暗号化する手続きは、基本的に次の通りである。まず、KMBを処理することによって、管理キー(Km)が抽出される。次に、このコンテンツがバインドされているエンティティを一意に識別するデータ上で、一方向関数が行われる(IDbと呼ばれる)。その結果、バインド・キーKb=G(Km,IDb)となる。コンテンツに対するランダム・タイトル・キー(Kt)が選択され、Kbを使用して暗号化される。その結果、暗号化されたタイトル・キー、すなわちEKt=E(Kb,Kt)となる。コンテンツは、次に選択されたランダム・キーで暗号化され、結果として生じる暗号化されたコンテンツは、依然として暗号化されたタイトル・キーと関連付けられている。同じKMB、IDb、および暗号化されたタイトル・キーにアクセスできるいかなる対応デバイスも、同じKbを再生し、Ktを解読することによって、コンテンツを解読することができる。
複数のデバイス・クラス/階層(すなわち、複数管理キー/バリアント)で機能するように、このような知られているブロードキャスト暗号化方式を拡張することが提案されている。このために、「統一」MKBと呼ばれる新しい「タイプ」のMKBが提案されている。MKBにより、対応デバイスがKmだけでなく、他の鍵も同様に計算できるようになる。これらの他の鍵は、2つのタイプの鍵、すなわち管理キー・バリアント(Kmv1、Kmv2など)と、記録キー(Kr1、Kr2など)とを含む。提案されるASCCT拡張では、管理キー・バリアントは、法的調査(forensic)の目的で使用される鍵であり、用意されたコンテンツは、様々な同等バリエーション(equivalent variations)で書かれている。好ましくは、単一デバイスが、単一Kmvのみを計算する。記録キーは、管理キー・バリアントと同様であるが、コンテンツがローカルでクラスタに記録されているときに使用され、コンテンツは、組み込まれたバリエーション(built-in variations)を持たない。初期のASCCT方式では、デバイスが、そのデバイス・キー(Kd)を使用して、管理キー(Km)を直接導出した。この提案される拡張では、デバイスが、その管理キー・バリアントを導出することができ、そのバリアント番号を使用することから「ベース」管理キー(Km)を導出することができる。
さらに、統一MKBは、管理キー・プリカーソル(Management KeyPrecursors)(Km(−i))の概念を導入する。この構成を用いて、デバイスは、(MKBサブセット設計により)セキュリティ・クラス番号「i」を割り当てられ、それらの管理キー・バリアントから管理キー・プリカーソルKm(−i)を導出することができる。より高いセキュリティ・クラスのデバイスは、より高い「i」値を割り当てられる。ベース・セキュリティ・クラスは、Km(0)である。ベース・セキュリティ・クラスよりも高いセキュリティ・クラスのデバイスは、次に、管理キーの代わりに管理キー・プリカーソルKm−1を計算することができる。「i」という指数は、特定のセキュリティ・クラスを示す。より高いセキュリティ・クラスを有するデバイスは、次の一方向性関数を使用してベースKm値に至るまで、より劣るセキュリティ・クラスのデバイスのプリカーソル(すなわち、より小さい「i」値を持つ管理キー・プリカーソル)を計算することができる:
Km−(i−1)=AES_G(Km−(i),kcd)、ここでkcdは鍵空間固有の定数である。
クラウド・コンピューティング・モデル
クラウド・コンピューティングは、最小限の経営努力またはサービスの提供者との対話で迅速にプロビジョニングし、リリースすることができる設定可能なコンピューティング・リソース(例えば、ネットワーク、ネットワーク帯域幅、サーバ、処理、メモリ、ストレージ、アプリケーション、仮想マシン、およびサービス)の共有プールへの便利で、オンデマンドのネットワーク・アクセスを可能にするためのサービス配信のモデルである。このクラウド・モデルは、2009年10月7日付けの、Peter MellおよびTim Granceによる「Draft NIST Working Definition of Cloud Computing」に、より詳細に記載され、定義されるように、少なくとも5つの特徴、少なくとも3つのサービス・モデル、および少なくとも4つの展開モデルを含むことができる。
詳細には、以下が、典型的な特徴である:
オンデマンドのセルフサービス:クラウドの顧客が、サービスの提供者との人的対話を必要とせず、必要に応じて自動的に、サーバ時刻およびネットワーク・ストレージのようなコンピューティング機能を一方的にプロビジョニングすることができる。
広範なネットワーク・アクセス:機能は、ネットワークを通じて利用でき、異種のシン・クライアントまたはシック・クライアントのプラットフォーム(例えば、携帯電話、ラップトップ、およびPDA)による利用を促進する標準的機構によりアクセスされる。
リソースのプール:プロバイダのコンピューティング・リソースは、マルチテナント・モデルを使用する複数の消費者に、需要に従って動的に割当ておよび再割当てされる異なる物理リソースおよび仮想リソースを供給するためにプールされる。消費者は一般的に、提供されるリソースの正確な位置について制御できないまたは知識がないという点において、位置独立(location independence)の感覚があるが、より高い抽象レベルの位置(例えば、国、州、またはデータセンタ)を指定することができることがある。
高速伸縮性:機能は、場合によっては自動的に、迅速かつ弾力的にプロビジョニングされて、速やかにスケール・アウトし、迅速に解放されて速やかにスケール・インすることができる。顧客には、プロビジョニングに利用できる機能は無制限であるように見えることが多く、いつ、いかなる量でも購入可能である。
サービスの計測:クラウド・システムは、サービスのタイプ(例えばストレージ、処理、帯域幅、およびアクティブ・ユーザ・アカウント)に適切なある抽象レベルで計測機能を活用することにより、リソースの利用を自動的に制御し、最適化する。利用されるサービスの提供者と消費者の両方に透明性(transparency)を提供して、リソースの利用を、監視、制御、および報告することができる。
サービス・モデルは、一般的に以下のようである:
サービスとしてのソフトウェア(Software as a Service:SaaS):消費者に提供される機能は、クラウド・インフラストラクチャ上で実行中のプロバイダのアプリケーションを使用することである。アプリケーションは、ウェブ・ブラウザのようなシン・クライアント・インタフェースを通じて様々なクライアント・デバイスからアクセス可能である(例えば、ウェブベースの電子メール)。消費者は、限られたユーザ指定アプリケーションの構成設定の可能性を除いて、ネットワーク、サーバ、オペレーティング・システム、ストレージ、または個々のアプリケーション機能など、根底にあるクラウド・インフラストラクチャを管理または制御しない。
サービスとしてのプラットフォーム(Platform as a Service:PaaS):消費者に提供される機能は、プロバイダによってサポートされるプログラミング言語およびツールを使用して作成された消費者が作成したまたは取得したアプリケーションを、クラウド・インフラストラクチャに配備することである。消費者は、ネットワーク、サーバ、オペレーティング・システム、またはストレージなど、根底にあるクラウド・インフラストラクチャを管理または制御しないが、配備されるアプリケーションおよび場合によってはアプリケーション・ホスト環境の設定を制御する。
サービスとしてのインフラストラクチャ(Infrastructure as aService:IaaS):消費者に提供される機能は、処理、ストレージ、ネットワーク、ならびに消費者がオペレーティング・システムおよびアプリケーションを含むことができる任意のソフトウェアを配備し、実行することができる他の基本的コンピューティング・リソースをプロビジョニングすることである。消費者は、根底にあるクラウド・インフラストラクチャを管理または制御しないが、オペレーティング・システム、ストレージ、配備されるアプリケーションの制御、および場合によっては選択ネットワーキング構成要素(例えばホスト・ファイヤウォール)の限られた制御を行う。
展開モデルは一般的に以下のようである:
プライベートクラウド:クラウド・インフラストラクチャは、単に組織のために運営される。クラウド・インフラストラクチャは、この組織または第三者によって管理されることが可能であり、自社運用型(on-premises)または他社運用型(off-premises)とすることができる。
コミュニティ・クラウド:クラウド・インフラストラクチャはいくつかの組織によって共有され、共有されるもの(例えば、任務、セキュリティ要件、ポリシー、およびコンプライアンス考慮事項)を有する特定のコミュニティをサポートする。クラウド・インフラストラクチャは、この組織または第三者によって管理されることが可能であり、自社運用型または他社運用型とすることができる。
パブリック・クラウド:クラウド・インフラストラクチャは、一般の人々または大規模な企業団体に利用可能にされ、クラウド・サービスを販売する組織によって所有される。
ハイブリッド・クラウド:クラウド・インフラストラクチャは、固有のエンティティのままでありながら、データおよびアプリケーションの移植を可能にする標準化技術または独自技術(例えば、クラウド間の負荷バランシングのためのクラウド拡張(cloud bursting))によって結合された、2つ以上のクラウド(プライベート、コミュニティ、またはパブリック)の組合せである。
クラウド・コンピューティング環境は、ステートレス性、疎結合性、モジュール性、および意味的相互運用性(semantic interoperability)に重点を置いたサービス指向である。クラウド・コンピューティングの中心には、相互接続されたノードのネットワークを含むインフラストラクチャがある。代表的なクラウド・コンピューティング・ノードは、上記の図2に示される通りである。詳細には、クラウド・コンピューティング・ノードには、コンピュータ・システム/サーバがあり、数多くの他の汎用または特殊用途コンピューティング・システム環境または構成で動作可能である。コンピュータ・システム/サーバと共に使用するのに適している可能性がある、よく知られているコンピューティング・システム、または環境、または構成、あるいはその組合せの例には、パーソナル・コンピュータ・システム、サーバ・コンピュータ・システム、シン・クライアント、シック・クライアント、ハンドヘルドもしくはラップトップ・デバイス、マルチプロセッサ・システム、マイクロプロセッサベースのシステム、セット・トップ・ボックス、プログラマブル家庭用電化製品、ネットワークPC、ミニコンピュータ・システム、メインフレーム・コンピュータ・システム、および上記のシステムもしくはデバイスなどのいずれかを含む分散クラウド・コンピューティング環境が含まれるが、これらに限定されない。コンピュータ・システム/サーバは、コンピュータ・システムによって実行される、プログラム・モジュールなどの、コンピュータ・システム実行可能命令の一般的な状況で説明されることが可能である。一般的に、プログラム・モジュールは、特定のタスクを行うまたは特定の抽象データ型を実行するルーチン、プログラム、オブジェクト、構成要素、論理、データ構造などを含むことができる。コンピュータ・システム/サーバは、タスクが、通信ネットワークを介してリンクされたリモート処理装置によって行われる、分散クラウド・コンピューティング環境で実施されることが可能である。分散クラウド・コンピューティング環境では、プログラム・モジュールが、メモリ記憶装置を含んだローカルとリモートの両方のコンピュータ・システム記憶媒体に置かれることが可能である。
次にさらなる背景として図3を参照して、クラウド・コンピューティング環境によって提供される機能抽象化レイヤのセットが示される。図3に示す構成要素、レイヤ、および機能は、単に例示となることを意図しており、本発明の実施形態はこれに限定されないことを、予め理解されたい。図示するように、次のレイヤおよび対応する機能が提供される:
ハードウェアおよびソフトウェア・レイヤ300は、ハードウェア構成要素およびソフトウェア構成要素を含む。ハードウェア構成要素の例には、メインフレーム、一例ではIBM(R)のzSeries(R)システム、RISC(Reduced Instruction Set Computer、縮小命令セット・コンピュータ)アーキテクチャに基づくサーバ、一例ではIBMのpSeries(R)システム、IBMのxSeries(R)システム、IBMのBladeCenter(R)システム、ストレージ・デバイス、ネットワークおよびネットワーキング構成要素が含まれる。ソフトウェア構成要素の例には、ネットワーク・アプリケーション・サーバ・ソフトウェア、一例ではIBMのWebSphere(R)アプリケーション・サーバ・ソフトウェア、およびデータベース・ソフトウェア、一例ではIBMのDB2(R)データベース・ソフトウェアが含まれる。(IBM、zSeries、pSeries、xSeries、BladeCenter、WebSphere、およびDB2は、世界中の多くの管轄で登録されているインターナショナル・ビジネス・マシーンズ(International Business Machines Corporation)の商標である。
仮想化レイヤ302は、仮想エンティティの以下の例を提供することができる抽象化レイヤを提供する。すなわち、仮想サーバ、仮想ストレージ、仮想プライベート・ネットワークなどの仮想ネットワーク、仮想アプリケーションおよびオペレーティング・システム、ならびに仮想クライアントを提供することができる抽象化レイヤを提供する。
1つの例では、管理レイヤ304は、以下に記載する機能を提供することができる。リソース・プロビジョニングは、クラウド・コンピューティング環境内でタスクを行うために使用されるコンピューティング・リソースおよび他のリソースの動的な調達を行う。計測および価格決定は、クラウド・コンピューティング環境内でリソースが利用されるに従ってコスト追跡すること、およびこれらのリソースの消費に対して課金もしくは請求を行うことを提供する。1つの例では、これらのリソースは、アプリケーション・ソフトウェアのライセンスを含むことができる。セキュリティは、クラウド消費者およびタスクのアイデンティティ確認、ならびにデータおよび他のリソースのための保護を行う。ユーザ・ポータルは、消費者およびシステム管理者のためにクラウド・コンピューティング環境にアクセスできるようにする。サービス・レベル管理は、必要とされるサービス・レベルが満たされるように、クラウド・コンピューティング・リソース割当ておよび管理を提供する。サービス・レベル合意(SLA)計画および履行は、SLAに従って将来必要となることが予想されるクラウド・コンピューティング・リソースの事前手配および調達を行う。
ワークロード・レイヤ306は、クラウド・コンピューティング環境がそのために利用されることがある機能の例を提供する。このレイヤから提供することができるワークロードおよび機能の例には、マッピングおよびナビゲーション、ソフトウェア開発およびライフサイクル管理、仮想教室教育配信、データ分析処理、トランザクション処理、およびこの開示に従って、仮想鍵管理システム(VKMS)が含まれる。
この開示は、クラウド・コンピューティングに関する詳細な説明を含んでいるが、本明細書で説明する教示内容の実行は、クラウド・コンピューティング環境に限定されないことを予め理解されたい。むしろ本発明の諸実施形態は、現在知られている、または将来開発される、他のいかなるタイプのコンピューティング環境とも関連して実行されることが可能である。
したがって、代表的なクラウド・コンピューティング環境は、フロント・エンドアイデンティティ・マネージャと、ビジネス・サポート・サービス(BSS)機能構成要素と、運用サポート・サービス(OSS)機能構成要素と、コンピュート・クラウド構成要素(compute cloud componen)とを含む、高レベル機能構成要素のセットを有する。アイデンティティ・マネージャは、要求中のクライアントと対話して、アイデンティティ管理を提供することを担当し、この構成要素は、ニューヨーク州アーモンク市のIBM社から入手可能であるTivoli Federated Identity Manager(TFIM)など、1つまたは複数の知られているシステムを用いて実行されることがある。適切な環境では、TFIMは、他のクラウド構成要素への連合シングル・サインオン(federated single sign-on:F−SSO)を提供するために使用されることが可能である。ビジネス・サポート・サービス構成要素は、課金サポートなど、ある管理機能を提供する。運用サポート・サービス構成要素は、仮想マシン(VM)インスタンスなど、他のクラウド構成要素のプロビジョニングおよび管理を提供するために使用される。クラウド構成要素は、主要な計算リソースを表し、これらは一般的に、クラウドを介したアクセスに利用可能にされているターゲット・アプリケーションを実行するために使用される複数の仮想マシン・インスタンスである。1つまたは複数のデータベースが、ディレクトリ、ログ、および他の作業データを格納するために使用される。これらの構成要素(フロント・エンド・アイデンティティ・マネージャを含む)のすべてが、クラウド「内」に配置されるが、これは必要条件ではない。代替的実施形態では、アイデンティティ・マネージャは、クラウドの外部で運用されてもよい。サービス・プロバイダもまた、クラウドの外部で運用されてもよい。
いくつかのクラウドは、非伝統的なIPネットワークに基づいている。したがって、例えばクラウドが、特別な単一層がMACアドレスのハッシュを使用してIPルーティングする2層のCLOSベースのネットワークに基づくことがある。本明細書に記載する技法は、このような非伝統的クラウドに使用されることが可能である。
図4は、リソースの仮想化をサポートする典型的なITインフラストラクチャを示す。説明のために、共有(パブリック)リソースを提供するITデータセンタは、「プロバイダ」であり、これらの共有リソースを使用してそのデータおよびアプリケーションを(あらゆる形式で)ホストする、格納する、および管理する顧客または会社は、「加入者」(または「顧客」もしくは「テナント」)である。図4では、例示の仮想マシンがホストしている環境(あるいは本明細書ではデータセンタまたは「クラウド」と呼ばれる)が示されている。この環境は、一般的にハイパーバイザ管理VLAN406を介して物理データセンタ・ネットワーク404に接続されたホスト・マシン(HV)402(例えば、サーバもしくは同様の物理マシン・コンピューティング・デバイス)を含む。明示的に示していないが、一般的にこの環境は、ロード・バランサ、ネットワーク・データ・スイッチ(例えば、トップ・オブ・ラック(top-of-rack)スイッチ)、ファイアウォールなども含む。図4に示すように、物理サーバ402は、それぞれ仮想化技術を使用して1つまたは複数の仮想マシン(VM)408を動的に提供するように構成される。このような技術は、例えばVMware(R)またはその他から市販されている。サーバ仮想化は、当技術分野においてよく知られている技法である。図に示すように、複数のVMが単一のホスト・マシンに配置され、ホスト・マシンのCPU、メモリ、および他のリソースを共有し、それによって組織のデータセンタの利用を増やすことができる。この環境では、テナント・アプリケーション410が、ネットワーク機器412でホストされ、テナント・データがデータ・ストアおよびデータベース414に格納される。アプリケーションおよびデータ・ストアは、一般的にネットワーク管理/ストレージVLAN416を介して物理データセンタ・ネットワーク404に接続される。集合的に、仮想マシン、アプリケーション、およびテナント・データが、加入者がアクセス可能な仮想化されたリソース管理領域405を表す。この領域を介して、加入者の従業員は、プロバイダによって割り振られ、物理ITインフラストラクチャによって後援される、仮想化されたリソースに(様々な役割ベースの特権を使用して)アクセスし、これを管理することができる。インフラストラクチャの下部は、プロバイダがアクセス可能な管理領域415を示す。この領域は、プロバイダ従業員管理ポータル418と、BSS/OSS管理機能420と、様々なアイデンティティおよびアクセス管理機能422と、セキュリティ・ポリシー・サーバ424と、サーバ・イメージ428を管理するための管理機能426とを含む。これらの機能は、管理VLAN430を介して物理データセンタ・ネットワークにインタフェースする。プロバイダの従業員は、ITデータセンタ・インフラストラクチャを管理するために使用する運用支援サービスおよびビジネス支援サービス(Operational and Business Support Services:OSS/BSS)にアクセスできる、専門特権(およびおそらく特定のクライアント/ネットワーク)を有する(例えば、ハードウェアおよびソフトウェアのインストール、構成、監視、技術サポート、課金など)。
仮想鍵管理システム(VKMS)
上記を背景として、次にこの開示の主題について説明する。以下でわかるように、本明細書の技法は、MKBおよび複数の管理キー・バリアントを用いたブロードキャスト暗号化に基づく仮想鍵管理システムおよびプロトコルを使用して、第三者またはパブリック(クラウド)データセンタ内で実行されているアプリケーションおよびデータの顧客のエンドツーエンドのセキュリティを支援し、このような重要な扱いを要する、個人的なデータが、共同テナント化および仮想化されることが可能となる。以下に説明するように、ブロードキャスト暗号化の管理キー・バリアントが、第三者データセンタ内で使用されて、テナントごとに(顧客ごとに)仮想鍵管理領域を作成し、特定の顧客のデータが、プロバイダのデータセンタのITインフラストラクチャにおいて共同テナント化される、格納される、送信される、または仮想化されるときはいつでも、セキュリティ保護されるようにする。この手法は、顧客のデータ(汎用データと汎用アプリケーションの両方を含む)を他の顧客のデータから分離し、したがって、他のテナント(またはその他)が、データ/アプリケーション/メッセージにアクセスしようとし、これを用いて他のテナントのデータが格納される、実行される、もしくは仮想化される(例えば、同じデータベースもしくはデータ・ストアで格納される、同じウェブ・サーバ、ハイパーバイザ、ルータ内で実行されるなど)ことによる攻撃を阻止する。以下でわかるように、本明細書で使用されるブロードキャスト暗号化は、好ましくは管理キー・バリアントに割り当てられる様々な信頼レベルで、事前にブロードキャストされた(デバイスまたはアプリケーション)キーを使用して対称暗号化の単純化を提案するという点で、共同テナント化および仮想化されたデータを保護するという問題への堅牢なソリューションを提供する。この手法は、他の鍵管理システム、例えばPKIなど、プロトコルおよびインタフェースを導入するという複雑さならびにデータセンタ内のアプリケーションごとの鍵ペアの生成を必要とし、必要もしくは所望され得る様々な信頼レベルを構成しない鍵管理システムを不要にする。さらに、以下でわかるように、この手法はまた、顧客が共同テナント化/共有リソース上の顧客のデータを分離するのに必要な粒度で、システムITリソースを取り消すおよび分類するための統合制御を可能にする。
図5は、図4に関して上述したプロバイダ・インフラストラクチャに追加された仮想鍵管理システム(VKMS)500の代表的な実施形態を示す。以下でわかるように、VKMSおよびその関連プロトコルは、共同テナント化されたITインフラストラクチャにおいて(およびインフラストラクチャのすべてのレベルで)リソースのいかなる組合せにも使用することができるデータのテナントごとの(およびさらにアプリケーションごとの)セキュアにされた分離を実現するために仮想化されることが可能である。本明細書のこの技法は、共有(またはクラウド)データセンタ内で使用されるITシステム・インフラストラクチャのすべてのレベル(リソース)で、およびこれらの間で、これらのデータセンタ内の暗号化によるセキュリティを可能にする。このようなITシステム・インフラストラクチャは、ネットワーク(例えば、スイッチ、ロード・バランサ、およびルータなど)、ストレージ(例えば、ハード・ドライブ、ネットワーク接続ストレージ、メモリなど)、ホスト・システム・ソフトウェア(例えば、アプリケーション・プロセッサ、CPUなど)、サーバ(例えば、プロキシ、アプリケーション・サーバ、ウェブ・サーバなど)、ならびにホストされるソフトウェアを含むが、これらに限定されない。上記のように、顧客またはテナント・データに適用するデータという用語は、汎用データ(送信中でも、静止でも)とソフトウェア・アプリケーションの両方を指すことがある。
一般的には、VKMSが、加入者(テナント)制御鍵管理システムを仮想化し、鍵管理プロトコルを使用して、多様な共有インフラストラクチャにわたってエンドツーエンドのセキュリティを管理する。
VKMS500が、プロバイダがアクセス可能な管理領域515内にハードウェア・リソースおよびソフトウェア・リソースの好ましく分離された、専用のセットを含む。一般に、VKMS500は、すべての暗号キー材料(例えば、領域固有の鍵管理システム・パラメータ、構成、鍵、デバイス、および構成要素識別子など)をセキュアに管理する。VKMS500は、VKMS領域データ508が格納されたVKMS領域データ・ボールト(VKMS Domain Data Vault)506と関連してVKMSサービス504を提供する仮想鍵管理サーバ502を含む。サーバ502は単一の統合されたインスタンスとして示されているが、これは限定ではなく、サーバ(およびそのサービスおよびデータ・ボールト)は、複数の物理マシン、ネットワーク、および場所にわたって配置されることもある。
図6は、仮想鍵管理システム(VKMS)600の代表的な要素をより詳細に示す。本明細書の用語は、例示のために使用されており、開示の主題を限定するととらえられるべきではない。
この開示によれば、VKMS(データ)領域(VKMD)602が、特定の顧客またはテナントと関連付けられる。詳細には、顧客が、そのセキュリティおよび分離要件に基づいて、IT環境に置くことを希望するアプリケーションの中で、およびデータの同じ共有の権利があるのはどれかに応じて、所望レベルの粒度を選択する。例えば、顧客が、各アプリケーションが他のものから分離され、分割されることを必要とするセキュリティ・ポリシーを有することがある。さらに他のものは、2つ以上のアプリケーションが、同じデータを共有できるようにすることがある。所望の粒度に応じて、顧客またはプロバイダは、(例えばウェブベースのインタフェースまたは構成ツールを使用して)1つまたは複数の「データ領域」を定義し、そのそれぞれが、本明細書に記載する技法を使用して他のものから分離され、セキュリティ保護されることが可能である。顧客が、2つ以上のVKMDを有することができる。各VKMDデータ領域は、その独自の一意のVKMD識別子(VKMD−ID)604を有し、これは、VKMDのための一意(ユニバーサル一意、または少なくとも所与のVKMS内で一意)の識別子である。各VKMDは、仮想管理鍵ブロック(VMKB)608、(仮想デバイス、機器、アプリケーション、クライアント・デバイス、サーバ・デバイス、データベース、ソフトウェア構成要素、ストレージ媒体、ITリソースなどのための)デバイス・キー610を確立するのに必要とされる構成およびパラメータを含んだ関連VKMS領域データ(VKMS−DD)606を有し、これらはVKMS内の特定のデータ領域と一意に関連付けられる。したがって、VKMDとVKMS−DDのセットとの間に1対1のマッピングが存在する。一般的に、また以下でわかるように、VKMS−DD606は、VKMDを開始し、構成するのに使用される暗号化パラメータのセットを含む。
VKMSはまた、VKMS領域データ・ボールト(VKMS−DDV)612を含み、これは、1つまたは複数のVKMD(すなわち、VKMSが管理するすべてのVKMD)のために、VMKB608、デバイス・キー610などの暗号化材料を収容するために使用されるセキュアなリポジトリであるVKMS構成要素である。複数のボールトがあってもよい。VKMSサーバ(VKMS−S)614は、共有されるIT環境全体にセキュアにされた信頼の基点(root of trust)を提供する、高度にセキュアなホスト・システム(ハードウェアおよびソフトウェア)である。その基本機能は、1つまたは複数のVKMSデータ領域(およびその対応するデータ)を管理し、それぞれを他のものから分離することである。仮想管理鍵ブロック(VMKB)616は、(上述のように)特定の仮想データ領域(すなわち、VKMD)の管理キー・バリアント(Kmv)を導出するために単に「機能する」ように(すなわち、暗号「解除される」または解読可能となるように)設計された管理キー・ブロック(MKB)である。デバイス識別子(デバイスID)616は、プロバイダのITインフラストラクチャ内にある各個々のアーキテクチャ構成要素と関連付けられる一意の識別子である。デバイスIDは、VKMSサーバによって作成され、割り当てられる。好ましくはデバイスIDは、デバイスが関連(仮想)管理キー・ブロック(VMKB)から導出することができる最高のKmvバリアントとなるものを示す「信頼」レベルのインジケータを含む。デバイスID616は、(仮想)管理キー・ブロック(VKMB)内の正確な暗号パスを決定して、それらのデバイス・キーを適切に適用するために使用される。「デバイスID」を割り当てられる、および「デバイスID」を受信する、ITデータセンタ内のデバイスは、ハードウェア・デバイス(例えば、アプリケーション・サーバ、ネットワーク・ルータおよびスイッチ、クライアント端末、ストレージ・アレイなど)、ハードウェア機器(例えば、ストレージ機器、エンドポイント監視装置、侵入防止装置、ストレージおよびアプリケーション・サーバ機器など)、仮想デバイス(例えば、仮想ネットワーク・ルータおよびスイッチ、仮想ストレージ、仮想CPUなど)、ミドルウェア、プラットフォーム、ソフトウェア構成要素、ハイパーバイザ、仮想プラットフォーム、アプリケーション、アプリケーション・データ・ストアおよびデバイス(実在と仮想の両方)を含むが、これらに限定されない。構成要素IDがITインフラストラクチャのハードウェア構成要素とソフトウェア構成要素の両方を含めた、より一般的な用語として見られることが可能であるとき、デバイスIDを使用する代わりとして、構成要素IDが参照されてもよい。構成要素IDは、ほとんどのクラウド・コンピューティング機能がこのように提供されるように、より小さい単位のソフトウェア(サービス)によって使用されることが可能である。VKMSサーバは、VKMDを用いて各デバイスにデバイスIDをセキュアに作成し、割り振り、提供する。最終的に、デバイス・キー610は、関連仮想管理キー・ブロック(VMKB)から管理キー・バリアントを暗号で導出するためにVKMSの各デバイスによって割り当てられ、使用される、一意のセットの暗号キーである。
動作において、VKMSサーバは、VKMDを用いて各デバイスにデバイスIDをセキュアに作成し、割り振り、提供する。VKMSサーバはまた、(「パス」導出のための)関連デバイスIDとともに管理キー・バリアント(Kmv)を暗号「解除する」ために使用されるデバイス・キーを設計する。VKMSサーバは、VKMD内で各デバイスにデバイス・キーをセキュアに作成し、割り振り、提供する。
図7は、代表的なVKMS DDを示す。暗号パラメータは、一般的に、VKMSが(VKMSによってこの特定の領域にバインドされたデータを識別するために同様に使用される)一意のVKMD−IDを作成する際に直接または間接的に使用することができる加入者が要求する領域IDである、IDvdomainと、暗号ブロック連鎖(CBC)暗号化または解読チェーンの初めに使用される初期化ベクトル、ivと、非対称暗号化方式(AES)ハッシング関数によって使用するハッシュ初期化子、hと、補助デバイス・キーおよび処理キーの計算に使用される、機密のアダプテーション固有の(confidential, adaptation-specific)シード・レジスタ(例えば、128ビット値)初期化子、sと、計算された記録キーに使用される、機密のアダプテーション固有の定数、rと、タイトル・キー・ブロックからタイトル・キーを計算するために使用される、機密のアダプテーション固有の定数、tと、計算される管理キーおよび管理キー・プリカーソルに使用される、鍵変換データ、機密のアダプテーション固有の定数を表す、Kcdとを含む。VKMS−DDに含まれることがあるいくつかの追加の構成パラメータを表に示す。
図8は、VMKSが顧客(テナント)/加入者のために、仮想鍵管理領域(VKMD)を作成し、初期化する方法を示す。上記のように、顧客が、1つまたは複数のVKMDを有する可能性があるが、各顧客のVKMDは、別の顧客のために作成された仮想鍵管理領域と必ずしも異ならない。より一般的には、顧客のVKMDは、その顧客に固有のものである。典型的な顧客またはテナントが、単一のVKMDを確立する。しかしながら、より大きいエンティティが、異なるラインのビジネスに別個のVKMDを作成し、法的考慮に対処する、またはそれらの組織内の異なるグループに対して別個のセキュリティ・ポリシーに対応する(accommodate)ことができる。
ルーチンは加入者Aが、例えばその固定ITリソースおよび管理コストを削減するために、パブリック「クラウド」プロバイダA(例えば、クラウド・データセンタ)の共有ITリソースを利用することに決めるステップ800から始まる。ステップ802において、加入者Aは、(例えば、何らかのサービス・ライセンス契約またはSLAにより)プロバイダAとの取引を開始し、これにより加入者Aがそのアプリケーションおよび非構造化データをプロバイダの共有インフラストラクチャに展開することが許可される(SLAがアプリケーションおよびデータの共有または共同テナント化を許可することを意味する)。これは、知られているビジネス・プロセスおよびモデルである。ステップ804において、プロバイダAのVKMSサーバが、加入者にVKMD識別子(VKMD−ID)を割り振り、返す。上記のように、VKMD−IDは、その加入者アカウントと関連付けられ、VKMD−DDV内に格納するためにVKMD固有のデータと関連付けられることが可能である。限定ではないが、図7に示す表を参照して、VKMD−IDは、加入者がVKMS−DDの一部として提供したIDvdomainとすることができる、またはIDvdomainから導出される、または(例えば、VKMS内の一意性を保証するURI命名規則の一部として)IDvdomainを含むことができる。さらに、他のデータが、限定ではないが、VKMS−DD、デバイスID、デバイス・キー、VKMB、任意のアソシエーション、VKMDメタデータなどの、VKMD−IDと関連付けられることが可能である。この例のシナリオでは、アカウントあたり単に1つのVKMDがあると仮定されるが、プロバイダが、アカウントあたり複数のVKMDを管理する手段をサポートすることができ、いずれの場合にも、VKMSサーバは、次に追加のVKMD−IDおよび関連VKMS−DD、デバイスID、デバイス・キー、および各VKMDのVKMBを作成する/追跡することになる。
ルーチンは次にステップ806に進み、加入者Aが、領域固有のVKMS−DDのその所望のセットをプロバイダAに送信するためにセキュアな手段を配列し、そのVKMS−DDボールト内にVKMS−DDをセキュアに格納し、それを加入者AのVKMD−IDに関連付ける。このセキュアな手段は、加入者とプロバイダとの間で事前に確立された機構に従うことになり、任意の便利な方法により行われることが可能である。したがって、例えばVKMS−DD(またはそのある部分)は、加入者とプロバイダとの間の事前に同意済みのプロセスに従って、プロバイダのITインフラストラクチャに向かわない「アウト・オブ・バンド」交換(例えば、宅配業者などによる配達)により提供されてもよい。または、交換は、「イン・バンド」交換により実行されてもよく、これによりVKMS−DDは、加入者からプロバイダのセキュアなVKMSサービス・エンドポイントまで、インターネットを通じて電子メッセージまたはアプリケーション・プログラミング・インタフェース(API)によりセキュアに(例えば、ノンス、デジタル署名、暗号によって)送信される。
加入者からプロバイダへVKMS−DDを運ぶために使用される手段にかかわらず、VKMS−DDはいくつかの暗号鍵によって暗号化され、署名されるべきである。この点において、加入者のVKMS−DDのいかなる人的処理も、両当事者によって高度にセキュアな管理アクションとみなされるべきであり、このようなデータを処理する権限がある人々だけが、そうすることを許可される。当業者は認識するように、開示する主題は、Kmv(鍵)を使用する暗号化技法によりVKMDが確立された後の、プロバイダのインフラストラクチャ内の加入者のデータのセキュリティを構成しようとするにすぎない。リソースおよび人間の行為者もしくはこれらの管理ソフトウェアが、これらが導出しなければならない様々なKmvを使用してデータ(メッセージ・データを含む)を暗号化する、および解読することができることを証明することによって、これらの「信頼」を確立する。したがって、このシステムにおけるすべての認可は、顧客が顧客のデバイスIDにアクセスし、これを利用して、割り当てられた信頼レベルで特定のアクションを行うために正しいKmvレベルを導出することができるため、暗黙的である。上記のように、好ましくは加入者のVKMS−DDは、いかなる電子的伝送または手動/物理的伝送中においても、暗号化される、または物理的に保護される、あるいは暗号化されかつ物理的に保護される。必要に応じて、さらなるセキュリティ対策がとられて、プロバイダの信頼される従業員および/または加入者のみが、プロバイダのVKMSのセキュアなVKMS−DDボールト内のデータの伝送およびさらなるインストール中に、VKMD初期化データを処理することを許可されることを保証することができる。
図8に戻ると、ステップ808において、VKMS−DDがプロバイダAでVKMS−DDVにインストールされると、プロバイダAのVKMSサーバは、加入者が提供したVKMS−DDを使用して、VKMDに含まれる必要のある最大数の「デバイス」(いわゆる、「必須デバイス(Necessary Device)」)を表すために、正確な寸法および構造(例えば、本明細書に具体化されるように、NNLツリーのMKBの「N」ツリーの寸法、奥行き、幅など)を有するVMKBを生成する。このように、仮想管理鍵ブロック(VMKB)は、十分な「デバイスID」(および関連デバイス・キー)をその内部で符号化することを保証するために十分な「パス」を有して設計される。詳細には、以下にさらに詳細に示すように、MKBは、様々な「クラス」レベルの十分な数の「デバイスID」をサポートして、これらを、対応する加入者のアプリケーションおよびデータを格納する、実行する、または送信するために割り振られるまたはプロビジョニングされることが可能であるプロバイダのITデータセンタ・インフラストラクチャ内のすべての「必須」デバイス(例えば、ネットワーク、ストレージ、ホスト・システム・ハードウェア、サーバ、ホストされるソフトウェア・アプリケーション/サービスなど)に十分に分配し、割り当てるように生成される。MKBはまた、加入者がそれらの「他社運用型」サーバ、アプリケーション、サービス、およびデバイス(例えば、コンピュータ、携帯電話など)に割り当てる(送信する、およびインストールする)ことを可能にするために、加入者に割り当てるのに十分な数のデバイスIDを供給するように生成されることも可能である。VKMSサーバはまた、以下にさらに詳細に説明するように、VMKB内の十分な「ノード」が、所望の「信頼」クラス(またはレベル)のそれぞれに割り振られることを保証する。以下でわかるように、これらのクラスまたはレベルのそれぞれは、所与のデバイスIDに割り当てられた信頼レベルに一致する正確なKmv値を含むように、暗号で符号化(cryptographically encoded)される。VMKB(そのVKMD用)の構築を求める加入者の要求は、VKMD−DDを使用して加入者から伝えられ、これらの要求は、図7の表に示すように、例えば暗号、暗号強度、鍵の長さ、MKBツリーの深さ、サブツリーのデバイス「信頼」クラス割り振りなどを含むことができる。VKMD−DDが、VKMSの許可された制約内であることを確かなものにするために、VMKB構築に影響を及ぼすプロバイダ要件(例えば、暗号、鍵の長さ、深さ、デバイスIDのその数、および「信頼レベル」など)はよく知られており、プロバイダから(1人または複数の)加入者へ伝えられる。
ステップ810において、VMKSサーバは、VMKBをVKMS−DDVに格納し、VKMD−IDを使用してVKMDにこれを関連付ける。好ましくは、VKMSサーバはまた、デバイスIDの完全なセット、およびそれらの関連デバイス・キーを格納し、VKMD−IDを使用してこれらをVKMS−DDVに格納する。必要に応じて、プロバイダは、そのインフラストラクチャ・デバイス/構成要素に割り当てられたデバイスIDを、複数のVKMDに使用することができるように、または新しいデバイスIDが、各VKMDに対して割り当てられ、送信されるように、VKMSを設計することができる。これは、VKMSサーバはそのインフラストラクチャ「デバイス」のためのデバイスID/鍵を一度作成するだけでよいが、その後、すべてのVKMDのために作成するすべてのVMKBにデバイスID(すなわち、パス)のこの固定セットを含む(構成する)ことを意味する。
VMKSサーバが、このようにして複数のVMKDを作成すると、VMKSサーバは次に、所与のVMKB領域にプロビジョニングされるインフラストラクチャ構成要素だけに、VMKBデバイス・キーおよびIDをインストールする。図9は、複数のVKM領域が適用された後の共有ITリソースのプロバイダのデータセンタを示す。
VMKBは、次に例として説明するプロビジョニング戦略を使用するVMKSサーバによって生成される。この例示のシナリオでは、作成されるいかなるVKMBにも符号化される必要のある7つ(7)のデバイス信頼クラス(またはレベル)があると仮定される。これは、この例のVKMSが作成するVMKBが、7つの可能な管理キー・バリアント(Kmv)または「デバイス信頼クラス」(すなわち、KMV6〜KMV0として表される)を有することを意味する。この場合、最も信頼されるデバイスは、管理キー・バリアント「信頼クラス6」、または単に「クラス6」(MKVとして表される)を導出することができるデバイスIDを割り当てられるが、あまり信頼されないデバイスは、より低い管理キー・バリアント「クラス5」(MKVとして表される)と関連付けられるデバイスIDを割り当てられ、そのデバイスIDが「クラス0」デバイス(MKVとして表される)に関連付けられる最も信頼されないデバイスまで、同様である。図10は、プロバイダと加入者の両方の構成要素に7つ(7)の「信頼」レベルを割り当てるためのサンプル・プロビジョニング戦略を示す。当然ながら、このシナリオは、単に例示的なものであるにすぎず、開示する技法を限定するととらえられるべきではない。図は、例示の「7」「デバイス」(信頼)クラス・レベルが、関連するアーキテクチャ構成要素に適切な信頼度に基づいてどのように割り当てられるかを示す。レベルが高くなるほど、構成要素はより信頼される。所与のデバイス・クラス・レベルの構成要素は、それらの下のすべてのデバイス処理レベルのセキュリティを検証し、それによって、クラス階層が低いデバイスのために、インフラストラクチャのどこでもセキュリティ障害を検出することができる、セキュリティおよび検証のための階層化システムを提供することができる。好ましくは、プロビジョニング戦略はまた、VKMS領域キー(すなわち、デバイス・キー)、デバイスID、およびVMKBなどをプロビジョニングする方法を、詳細には、特定の管理キー・バリアント(設計による)へのアクセスと関連付けられた(暗号で導出された)「信頼」に基づいて述べる。
したがって、図10に示すように、デバイス・クラス・レベルKMV0が、加入者の顧客アプリケーションおよびデバイスに割り振られる。最も信頼されない役割の人々が、次にこれらのリソースにアクセスすることができるようにされてもよい。デバイス・クラス・レベルKMV1が、加入者の従業員アプリケーションおよびデバイスに割り振られる。より信頼される役割の人々が、次にこれらのリソース(ならびにあまりセキュアでない下のクラスのリソース)にアクセスすることができるようにされてもよい。デバイス・クラス・レベルKMV2が、加入者の管理アプリケーションに割り振られる。アカウントおよびリソースを管理することを許可された人々が、これらのリソースにアクセスすることを許可される。プロバイダ構成要素は、やはり単に一例として図のように、さらなるデバイス・クラス・レベルに割り当てられ、割り振られる。
当然ながら、図10に示す例示の戦略は、本開示を限定するととらえられるべきではない。信頼のより少ないまたはより多い層が存在することがあり、一般的に信頼の基点(図示せず)が存在することになる。図に示すように、プロバイダのインフラストラクチャを使用して、加入者は、それぞれが他のものから分離される粒度を制御して、加入者のアプリケーションおよびデータを容易にプロビジョニングすることができる。
次に、領域固有の(すなわち、VKMD固有の)VMKB、デバイスID、および関連デバイス・キーが、加入者のデータを実行する、管理する、操作する、格納する、および処理するために割り振られた(プロバイダによってプロビジョニングされた)「デバイス」に割り当てられ、インストールされる方法の様々な3つ(3)の異なるプロバイダ・オプションについて説明する。加入者は、VKMDの「所有者」である。次のオプションは、図10に示すプロビジョニング戦略が採用された、すなわち、プロバイダが、そのインフラストラクチャの構成要素に割り当てられる「デバイス」信頼クラス・レベルを事前に確立したと仮定する。どのオプションが実行されるかにかかわらず、次の仮定が行われる。第1に、VKMSサーバは、デバイスIDおよびデバイス・キーが決して別のデバイスと関連付けられることのないように(位置、または他のシステム識別子との関連性により)追跡を行う。第2に、VKMSサーバは、これらのデバイスIDを(好ましくは電子的に)各デバイス/構成要素にセキュアに送信する。理想的にはこれは、セキュアなネットワークを通じて行われ、デバイスIDは、暗号化によりセキュアにされ、およびデジタル署名/ハッシングにより改ざん防止機能付きにされ、各受信デバイス(または構成要素)が、その安全性を確認し、デバイスIDを解読できるようにする。さらに、デバイスIDを受信する各デバイス/構成要素が(必要に応じてデバイスIDを確認し、解読した後)、直接自身のストレージ、またはセキュアにアクセスすることができる他のストレージ内の、セキュアな位置内にこのIDをセキュアに格納することができる。
第1のオプションは、プロバイダ・デバイスへの予め決定されたプロビジョニングを提供する。この手法では、プロバイダのVKMSサーバは、特定の加入者のデータ処理およびストレージのニーズに対処するためにどの「デバイス」をプロビジョニングしている必要があるかを「予め決定する」ことができる。これは、SLAなどに関して伝えられてもよい。プロバイダはまた、特定の加入者がプロバイダに「スケール変更」して対処できることを求める、拡張性要件、ピーク使用需要、または他の特別なイベント需要など、他の情報を知ることもできる。これらは、SLAに記載される、または「アウト・オブ・バンド」通信でプロバイダに伝えられてもよい。好ましくは、VKMSプロバイダは、これらの要求をVKMD−DDVに「格納する」、およびこれらをそのVKMD−IDを使用して加入者に関連付けるようにVKMSサーバを構成することができる。
第2のオプションは、プロバイダ・デバイスへの「オンデマンド」プロビジョニングを提供する。この手法では、事前に計画し、加入者のリソース・ニーズについてプロバイダへの要求を伝えるにもかかわらず、プロバイダは、「オンデマンド」プロビジョニングを実行することができる。このオプションは、プロバイダのインフラストラクチャ(例えば、一般的なプロビジョニング・システム、OSSシステム、パフォーマンス・モニタなど)が適宜に構成されていなければならないことを除いて、前のオプションと同様である。このオプションはまた、フェイル・オーバー・シナリオで使用されてもよく、プロバイダのデータセンタ内のモニタリング・デバイス/ソフトウェアが、特定のVKMDに割り当てられた特定のデバイス(または多くの場合、デバイスのセット)上の障害を検出する。このような場合、VMKSサーバは、障害によって影響を受ける関連加入者からのデータを一時的にまたは永久的にセキュリティ保護するために使用することができるさらなるデバイスIDおよび鍵をプロビジョニングすることができる。このオプションはまた、変更管理動作中に使用されてもよい。したがって、例えば、プロバイダが特定のVKMDに割り当てられたデバイス/リソースに保守または更新を行っている場合、プロバイダはVMKSサーバにさらなるデバイスIDおよびキーを動的にプロビジョニングさせることができ、これを使用して関連加入者からのデータを一時的に処理し、セキュアにすることができる
第3のオプションは、加入者デバイスへのプロビジョニングを提供する。プロバイダ(すなわち、図10のKmvクラス3〜6)について説明されたデバイスID、キー、およびVMKBの上述の静的/予め決定された割当ておよび「オンデマンド」割当ては、外部加入者デバイス/クライアント(すなわち、図10のKmvクラス0〜2)にこれらの材料を提供するために、同様に実行されることが可能である。このオプションでは、加入者は好ましくは、単にその(プロバイダ外部の)IDおよびキー材料(Kmvクラス0〜2のデバイスのセットのキー材料)に対するプロビジョニング・サービスを提供する中心の「信頼される」サービス(少なくともKmvクラス2の信頼を有してセキュリティ保護されている)を有する。
変形として、VKMSサーバは、所与のIT環境のセキュリティ構造に対する、または1つもしくは複数の共有環境に展開された複数のクラスの顧客もしくはアプリケーションに対する、集中制御を許可することができる。
サービス・プロバイダは、取り消し、更新など、VKMDのためのライフサイクル動作を実行することができる。したがって、例えばプロバイダは、顧客がVKMDからいくつかのデバイスID(またはデバイス・クラス全体)を削除して、それらがMKBの様々な管理キー・バリアントを使用して保護されるデータにもはやアクセスできないようにするために使用することができる「取り消し」サービスを提供することができる。1つの実施形態では、「高信頼」のデバイスは、このような「取り消し」アクション、または他の許可されるアクションを承認するのに必要とされる資格情報を用いて確立される。これらの取り消しは、その後、「更新」が行われるまで、そのVKMDのためにVKMSによって蓄積されてもよい、または、個々の取り消しが、その受信時に行われてもよい。更新は、定期的に行われる、または高信頼クラスに属し、したがってそのような認可特権を与えられたデバイスを使用している顧客による直接的な認可された要求によって行われてもよい。(管理機能を行うことができる)このタイプのデバイスは、プロバイダとの合意によって、または構成/セットアップの一部として、確立されることが可能であり、このようなデバイスのためにVKMD内に特定の「信頼レベル」が確立されてもよい。より一般的には、VKMSは、(おそらく顧客またはテナントとともに確立された確立済みスケジュールに反して)所与のVKMDのためにMKBを定期的に「更新する」ことができる。このように、新しいMKBは、VKMDのためにVKMSによって作成され、その領域に加わるすべてのデバイスに分配されることになる。既存のメッセージまたは新しいメッセージが次に、新しいMKBを搬送する(押し出す)ために使用されてもよい、またはいくつかのインジケータが、参加デバイスに送信されて、これらのデバイスが次に、プロバイダが提供するサービスから新しいMKBを引き出してもよい。上記は、サービス・プロバイダによって、またはサービス・プロバイダと関連して実行されることがある一般的なVKMDライフサイクル動作の例にすぎない。他のこのようなライフサイクル・サービスは、これらに限定ではないが、VKMDの無効化(一時的)または閉鎖/終了(永久的)、VKMD情報をアーカイブするためのサービス、VKMD−DDの一部(例えば、暗号アルゴリズムおよびそれらの要素)の変更を許可するサービス(このようなそれぞれの変更は一般的に発生した変化のインジケータで何らかのタイプの更新を強制する)、プロバイダがVKMDのためにMKB内のさらなる信頼されるサービスを提供する(これは、MKBがすべての信頼レベルで「自己署名」され、有効な(失効していない)デバイスIDを有する任意のメンバ・デバイスによって検証されるので、可能である)、などを含む。
ブロードキャスト暗号化に使用される管理キー・ブロックを生成するための技法は、多様であってもよい。好ましくは、キー・ブロックは、NNLツリーおよび他の高度な技法を使用して生成されるが、単純な行−列ルックアップを用いる旧来のマトリクスベースの技法も同様に使用することができる。
本明細書の主題は、従来の技術に優る重要な利点を有する。上に説明した手法により、マルチテナント共有展開におけるテナントは、テナント独自の異なる鍵空間を提供され、このキー・スペースでテナントは鍵管理システムを制御する。このように、仮想鍵管理領域が、テナントごとに(顧客ごとに)作成され、特定の顧客のデータがプロバイダの(1つまたは複数の)データセンタのITインフラストラクチャにおいて共同テナント化される、格納される、送信される、または仮想化されるときはいつでも、特定の顧客のデータは、その顧客に固有の鍵管理材料を使用してセキュリティ保護されるようにする。これは、テナントのデータ(すべての汎用データ、およびソフトウェア・アプリケーションを含むが、これらに限らない)の全体が、他のテナントのアプリケーションからこれを暗号で分離することによって依然としてセキュアであることを保証する。好ましくは、仮想鍵管理領域は、ブロードキャスト暗号化(BE)プロトコルの管理キー・バリアントを使用して確立される。このプロトコルは、データのテナントごとのセキュアにされた分離を実現し、共同テナント化されたITインフラストラクチャのすべてのレベルで、またはすべてのレベル全体で、リソースのいかなる組合せにわたっても使用することができる。この手法を使用すると、各テナントが、(VKMS−DDに記述されているように)顧客独自の構成およびパラメータを表す一意の(または「カスタムの」)仮想鍵管理領域を作成し、初期化することができる。特定のVKMSデータ領域(VKMD)内で、ブロードキャスト暗号化管理キー・バリアントを使用して、顧客が次に、デバイス信頼クラスの所望のセットをセットアップし、実施することができる。
説明したように、上述の機能は、独立した手法、例えばプロセッサによって実行されるソフトウェアベースの機能として実装されてもよい、または、上述の機能は、管理されるサービス(SOAP/XMLインタフェースによるウェブ・サービスを含む)として利用できてもよい。本明細書に記載する特定のハードウェアおよびソフトウェア実行詳細は、単に例示のためであり、記載する主題の範囲を限定するものではない。
より一般的に、開示する主題のコンテキスト内のコンピューティング・デバイスは、それぞれハードウェアおよびソフトウェアを含んだ(図2に示すような)データ処理システムであり、これらのエンティティが、インターネット、イントラネット、エクストラネット、プライベート・ネットワーク、またはその他の通信媒体もしくはリンクなどのネットワークを通じて互いに通信する。データ処理システム上のアプリケーションは、ウェブおよび他の知られているサービスおよびプロトコルのためのネイティブ・サポートを提供し、特に、HTTP、FTP、SMTP、SOAP、XML、WSDL、UDDI、およびWSFLのためのサポートを含むが、これらに限らない。SOAP、WSDL、UDDI、およびWSFLに関する情報は、これらの標準の開発および保守に関与しているワールド・ワイド・ウェブ・コンソーシアム(W3C)から入手でき、HTTP、FTP、SMTP、およびXMLに関するさらなる情報は、インターネット・エンジニアリング・タスク・フォース(IETF)から入手できる。これらの知られている標準およびプロトコルに熟知していることが想定される。
さらにより一般的には、本明細書に記載する主題は、完全にハードウェア実施形態、完全にソフトウェア実施形態、またはハードウェア要素とソフトウェア要素の両方を含んだ実施形態の形をとることができる。好ましい実施形態では、仮想鍵管理サーバ(VKMS)は、ソフトウェアで実装され、ソフトウェアは、ファームウェア、常駐ソフトウェア、マイクロコードなどを含むが、これらに限定されない。さらに、VKMSおよび関係機能は、コンピュータまたは任意の命令実行システムによって、またはこれに関連して使用されるプログラム・コードを提供する、コンピュータが使用可能またはコンピュータ可読の非一時的媒体からアクセスできるコンピュータ・プログラム製品の形をとることができる。この説明の目的で、コンピュータが使用可能またはコンピュータ可読の媒体は、命令実行システム、装置、またはデバイスによって、またはこれに関連して使用されるプログラムを収容する、または格納することができるいかなる装置とすることもできる。媒体は、電子、磁気、光、電磁気、赤外線、または半導体システム(または装置またはデバイス)とすることができる。コンピュータ可読媒体の例には、半導体またはソリッド・ステート・メモリ、磁気テープ、取り外し可能コンピュータ・ディスケット、ランダム・アクセス・メモリ(RAM)、読み取り専用メモリ(ROM)、硬質磁気ディスク、および光ディスクが含まれる。光ディスクの現在の例には、コンパクト・ディスク読み取り専用メモリ(CD−ROM)、コンパクト・ディスク読み取り/書き込み(CD−RW)、およびDVDが含まれる。ストレージ・デバイスは、SDカードなど、取り外し可能媒体を含むことができる。コンピュータ可読媒体は、有形の、非一時的アイテムである。これらのデバイスのいずれも、VMKSによって保護される情報を格納するために使用可能である。
いかなるクラウド・データセンタ・リソースも、本明細書に記載するようにVKMS構成要素をホストすることができる
コンピュータ・プログラム製品は、記載する機能の1つまたは複数を実行するためのプログラム命令(またはプログラム・コード)を有する製品であってもよい。そうした命令またはコードは、リモートのデータ処理システムからネットワークを通じてダウンロードされた後、データ処理システムのコンピュータ可読記憶媒体に格納されてもよい。または、そうした命令もしくはコードは、サーバ・データ処理システムのコンピュータ可読記憶媒体に格納され、リモート・システム内のコンピュータ可読記憶媒体で使用されるように、リモート・データ処理システムにネットワークを通じてダウンロードされるように構成されてもよい。
代表的実施形態では、仮想鍵管理システムの構成要素は、特殊用途コンピューティング・プラットフォームで、好ましくは、1つまたは複数のプロセッサによって実行されるソフトウェアで実装される。ソフトウェアは、1つまたは複数のプロセッサと関連付けられる1つまたは複数のデータ・ストアまたはメモリに保持され、ソフトウェアは、1つまたは複数のコンピュータ・プログラムとして実行されることが可能である。集合的に、この特殊用途のハードウェアおよびソフトウェアが、上述の機能を含む。
さらに、本明細書に提供するフレームワーク機能は、既存のクラウド・コンピュート管理ソリューションへの付属物または拡張として実装されることが可能である。
本明細書に記載する技法は、仮想クライアント−サーバ環境において使用されることが可能である。
上記は、本発明のいくつかの実施形態によって行われる動作の特定の順序を記載しているが、このような順序は例示であることを理解すべきであり、代替的実施形態は、異なる順序で動作を行う、いくつかの動作を組み合わせる、いくつかの動作を重ね合わせる、などが可能である。明細書中の所与の実施形態への言及は、記載した実施形態は特定の特徴、構造、または特性を含むことができるが、すべての実施形態が必ずしもこの特定の特徴、構造、または特性を含むとは限らないことを示す。
最後に、システムの所与の構成要素を個別に説明したが、機能の一部は所与の命令、プログラム・シーケンス、コード部分などにおいて結合される、または共有される可能性があることを、当業者は理解するであろう。
発明について説明したが、次に特許請求の内容は以下の通りである。

Claims (16)

  1. マルチテナント・コンピューティング・インフラストラクチャにおける鍵管理の方法であって、
    テナントごとに仮想鍵管理領域を作成することであって、
    前記仮想鍵管理領域が、ハードウェア要素上で実行中のサーバを使用して作成され、セキュリティおよび検証のための階層的な信頼レベルにより、前記テナントに固有のキー材料が関連付けられた、前記仮想鍵管理領域をテナントごとに作成することと、
    前記キー材料を前記テナントに提供することと、
    第1のテナントに固有のキー材料によってセキュアにされた第1のデータを、第2のテナントに固有のキー材料によってセキュアにされた第2のデータから分離することと
    を含む、方法。
  2. それぞれのテナントの仮想鍵管理領域が、前記マルチテナント・コンピューティング・インフラストラクチャの所与の部分と関連付けられる、請求項1に記載の方法。
  3. 前記テナントに固有の前記キー材料が、1つまたは複数の管理キー・バリアントのセットがそこから導出される仮想管理キー・ブロックを含む、請求項1に記載の方法。
  4. 前記テナントに固有の前記キー材料が、1つもしくは複数のデバイス・キーのセット、および1つもしくは複数のデバイス識別子のセットをさらに含み、デバイス・キーが、前記仮想管理キー・ブロックから管理キー・バリアントを導出するために使用される暗号キーであり、デバイス識別子が、前記マルチテナント・コンピューティング・インフラストラクチャ内の構成要素と関連付けられ、前記デバイス・キーの所与の1つを適用する前記仮想管理キー・ブロック内の暗号パスを決定するために使用される、請求項3に記載の方法。
  5. 前記1つまたは複数の管理キー・バリアントを使用して、前記マルチテナント・コンピューティング・インフラストラクチャ内のリソースに1つまたは複数の信頼レベルを関連付けることをさらに含む、請求項4に記載の方法。
  6. 所与の信頼レベル内の構成要素が、前記所与の信頼レベルよりもセキュアでない信頼レベル内の少なくとも1つのデバイスに対するセキュリティを検証する、請求項5に記載の方法。
  7. 前記仮想鍵管理領域が、ブロードキャスト暗号方式を使用して作成される、請求項1に記載の方法。
  8. 装置であって、
    プロセッサと、
    前記プロセッサによって実行されるとき、マルチテナント・コンピューティング・インフラストラクチャにおける鍵管理の方法を行うコンピュータ・プログラム命令を保持するコンピュータ・メモリとを含み、前記方法が、
    テナントごとに仮想鍵管理領域を作成することであって、
    前記仮想鍵管理領域が、ハードウェア要素上で実行中のサーバを使用して作成され、セキュリティおよび検証のための階層的な信頼レベルにより、前記テナントに固有のキー材料が関連付けられた、前記仮想鍵管理領域をテナントごとに作成することと、
    前記キー材料を前記テナントに提供することと、
    第1のテナントに固有のキー材料によってセキュアにされた第1のデータを、第2のテナントに固有のキー材料によってセキュアにされた第2のデータから分離することと
    を含む、装置。
  9. それぞれのテナントの仮想鍵管理領域が、前記マルチテナント・コンピューティング・インフラストラクチャの所与の部分と関連付けられる、請求項8に記載の装置。
  10. 前記テナントに固有の前記キー材料が、1つまたは複数の管理キー・バリアントのセットがそこから導出される仮想管理キー・ブロックを含む、請求項8に記載の装置。
  11. 前記テナントに固有の前記キー材料が、1つもしくは複数のデバイス・キーのセット、および1つもしくは複数のデバイス識別子のセットをさらに含み、デバイス・キーが、前記仮想管理キー・ブロックから管理キー・バリアントを導出するために使用される暗号キーであり、デバイス識別子が、前記マルチテナント・コンピューティング・インフラストラクチャ内の構成要素と関連付けられ、前記デバイス・キーの所与の1つを適用する前記仮想管理キー・ブロック内の暗号パスを決定するために使用される、請求項10に記載の装置。
  12. 前記方法が、前記1つまたは複数の管理キー・バリアントを使用して、前記マルチテナント・コンピューティング・インフラストラクチャ内のリソースに1つまたは複数の信頼レベルを関連付けることをさらに含む、請求項11に記載の装置。
  13. 所与の信頼レベル内の構成要素が、前記所与の信頼レベルよりもセキュアでない信頼レベル内の少なくとも1つのデバイスに対するセキュリティを検証する、請求項12に記載の装置。
  14. 前記仮想鍵管理領域が、ブロードキャスト暗号方式を使用して作成される、請求項8に記載の装置。
  15. 請求項1〜7の何れか1項に記載の方法の各ステップを、コンピュータに実行させる、コンピュータ・プログラム。
  16. 請求項15に記載の前記コンピュータ・プログラムを、コンピュータ可読媒体に格納した、コンピュータ可読記録媒体。
JP2015562473A 2013-03-15 2014-03-10 マルチテナント・コンピューティング・インフラストラクチャにおける鍵管理の方法、装置、コンピュータ・プログラム製品、およびクラウド・コンピュート・インフラストラクチャ(マルチテナント環境における鍵管理) Active JP6537455B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US13/838,524 2013-03-15
US13/838,524 US9292673B2 (en) 2013-03-15 2013-03-15 Virtual key management and isolation of data deployments in multi-tenant environments
PCT/IB2014/059592 WO2014141045A1 (en) 2013-03-15 2014-03-10 Key management in multi-tenant environments

Publications (2)

Publication Number Publication Date
JP2016511610A JP2016511610A (ja) 2016-04-14
JP6537455B2 true JP6537455B2 (ja) 2019-07-03

Family

ID=51535070

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2015562473A Active JP6537455B2 (ja) 2013-03-15 2014-03-10 マルチテナント・コンピューティング・インフラストラクチャにおける鍵管理の方法、装置、コンピュータ・プログラム製品、およびクラウド・コンピュート・インフラストラクチャ(マルチテナント環境における鍵管理)

Country Status (5)

Country Link
US (1) US9292673B2 (ja)
JP (1) JP6537455B2 (ja)
DE (1) DE112014000357T5 (ja)
GB (1) GB2526240B (ja)
WO (1) WO2014141045A1 (ja)

Families Citing this family (78)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4760101B2 (ja) * 2005-04-07 2011-08-31 ソニー株式会社 コンテンツ提供システム,コンテンツ再生装置,プログラム,およびコンテンツ再生方法
US20100332401A1 (en) 2009-06-30 2010-12-30 Anand Prahlad Performing data storage operations with a cloud storage environment, including automatically selecting among multiple cloud storage sites
US9311664B2 (en) * 2010-05-25 2016-04-12 Salesforce.Com, Inc. Systems and methods for automatically collection of performance data in a multi-tenant database system environment
US8950009B2 (en) 2012-03-30 2015-02-03 Commvault Systems, Inc. Information management of data associated with multiple cloud services
US9262496B2 (en) 2012-03-30 2016-02-16 Commvault Systems, Inc. Unified access to personal data
CN103595551B (zh) * 2012-08-17 2016-12-21 杭州华三通信技术有限公司 基于mqc实现网络虚拟化的网络管理方法和装置
US10346259B2 (en) * 2012-12-28 2019-07-09 Commvault Systems, Inc. Data recovery using a cloud-based remote data recovery center
JP6379513B2 (ja) * 2013-03-15 2018-08-29 株式会社リコー 情報処理システム、情報処理システムの制御方法、情報処理装置、情報処理装置の制御方法及びプログラム
KR20140129712A (ko) * 2013-04-30 2014-11-07 킹스정보통신(주) 클라우드 컴퓨팅 환경에서 인쇄 문서상의 기밀정보 보안 시스템 및 그 방법
US9396338B2 (en) 2013-10-15 2016-07-19 Intuit Inc. Method and system for providing a secure secrets proxy
US9384362B2 (en) 2013-10-14 2016-07-05 Intuit Inc. Method and system for distributing secrets
US9894069B2 (en) 2013-11-01 2018-02-13 Intuit Inc. Method and system for automatically managing secret application and maintenance
US9444818B2 (en) 2013-11-01 2016-09-13 Intuit Inc. Method and system for automatically managing secure communications in multiple communications jurisdiction zones
US9467477B2 (en) 2013-11-06 2016-10-11 Intuit Inc. Method and system for automatically managing secrets in multiple data security jurisdiction zones
US9282122B2 (en) * 2014-04-30 2016-03-08 Intuit Inc. Method and apparatus for multi-tenancy secrets management
US10021084B2 (en) * 2014-10-28 2018-07-10 Open Text Sa Ulc Systems and methods for credentialing of non-local requestors in decoupled systems utilizing a domain local authenticator
US9608810B1 (en) * 2015-02-05 2017-03-28 Ionic Security Inc. Systems and methods for encryption and provision of information security using platform services
US9928377B2 (en) * 2015-03-19 2018-03-27 Netskope, Inc. Systems and methods of monitoring and controlling enterprise information stored on a cloud computing service (CCS)
US9516000B2 (en) * 2015-03-27 2016-12-06 International Business Machines Corporation Runtime instantiation of broadcast encryption schemes
JP2016208073A (ja) * 2015-04-15 2016-12-08 キヤノン株式会社 情報処理システム、該システムの制御方法、プログラム及び情報処理装置
US9906361B1 (en) 2015-06-26 2018-02-27 EMC IP Holding Company LLC Storage system with master key hierarchy configured for efficient shredding of stored encrypted data items
US9779269B1 (en) 2015-08-06 2017-10-03 EMC IP Holding Company LLC Storage system comprising per-tenant encryption keys supporting deduplication across multiple tenants
US10778435B1 (en) * 2015-12-30 2020-09-15 Jpmorgan Chase Bank, N.A. Systems and methods for enhanced mobile device authentication
US11403418B2 (en) 2018-08-30 2022-08-02 Netskope, Inc. Enriching document metadata using contextual information
US10326744B1 (en) 2016-03-21 2019-06-18 EMC IP Holding Company LLC Security layer for containers in multi-tenant environments
US10057273B1 (en) * 2016-03-30 2018-08-21 EMC IP Holding Company LLC System and method for ensuring per tenant mutual exclusion of data and administrative entities with low latency and high scale
US10447670B2 (en) 2016-07-28 2019-10-15 Red Hat Israel, Ltd. Secret keys management in a virtualized data-center
US10255202B2 (en) 2016-09-30 2019-04-09 Intel Corporation Multi-tenant encryption for storage class memory
US10031735B2 (en) 2016-09-30 2018-07-24 International Business Machines Corporation Secure deployment of applications in a cloud computing platform
US10439803B2 (en) * 2016-11-14 2019-10-08 Microsoft Technology Licensing, Llc Secure key management
US10284557B1 (en) * 2016-11-17 2019-05-07 EMC IP Holding Company LLC Secure data proxy for cloud computing environments
CA3051851A1 (en) * 2017-01-26 2018-08-02 Semper Fortis Solutions, LLC Multiple single levels of security (msls) in a multi-tenant cloud
US10693640B2 (en) * 2017-03-17 2020-06-23 International Business Machines Corporation Use of key metadata during write and read operations in a dispersed storage network memory
US11108858B2 (en) 2017-03-28 2021-08-31 Commvault Systems, Inc. Archiving mail servers via a simple mail transfer protocol (SMTP) server
US11074138B2 (en) 2017-03-29 2021-07-27 Commvault Systems, Inc. Multi-streaming backup operations for mailboxes
US11128437B1 (en) 2017-03-30 2021-09-21 EMC IP Holding Company LLC Distributed ledger for peer-to-peer cloud resource sharing
US11221939B2 (en) 2017-03-31 2022-01-11 Commvault Systems, Inc. Managing data from internet of things devices in a vehicle
US11294786B2 (en) 2017-03-31 2022-04-05 Commvault Systems, Inc. Management of internet of things devices
US10552294B2 (en) 2017-03-31 2020-02-04 Commvault Systems, Inc. Management of internet of things devices
US10936711B2 (en) * 2017-04-18 2021-03-02 Intuit Inc. Systems and mechanism to control the lifetime of an access token dynamically based on access token use
US10673628B1 (en) * 2017-04-27 2020-06-02 EMC IP Holding Company LLC Authentication and authorization token management using life key service
US20190004973A1 (en) * 2017-06-28 2019-01-03 Intel Corporation Multi-key cryptographic memory protection
US10419446B2 (en) * 2017-07-10 2019-09-17 Cisco Technology, Inc. End-to-end policy management for a chain of administrative domains
US10834113B2 (en) 2017-07-25 2020-11-10 Netskope, Inc. Compact logging of network traffic events
US10848494B2 (en) * 2017-08-14 2020-11-24 Microsoft Technology Licensing, Llc Compliance boundaries for multi-tenant cloud environment
CN109842589A (zh) * 2017-11-27 2019-06-04 中兴通讯股份有限公司 一种云存储加密方法、装置、设备及存储介质
US10635829B1 (en) 2017-11-28 2020-04-28 Intuit Inc. Method and system for granting permissions to parties within an organization
CN107959689B (zh) * 2018-01-10 2020-09-25 北京工业大学 一种云平台租户网络隔离测试方法
US11063745B1 (en) 2018-02-13 2021-07-13 EMC IP Holding Company LLC Distributed ledger for multi-cloud service automation
US10891198B2 (en) 2018-07-30 2021-01-12 Commvault Systems, Inc. Storing data to cloud libraries in cloud native formats
US10708247B2 (en) * 2018-09-27 2020-07-07 Intel Corporation Technologies for providing secure utilization of tenant keys
US11128460B2 (en) 2018-12-04 2021-09-21 EMC IP Holding Company LLC Client-side encryption supporting deduplication across single or multiple tenants in a storage system
US11416641B2 (en) 2019-01-24 2022-08-16 Netskope, Inc. Incident-driven introspection for data loss prevention
US10768971B2 (en) 2019-01-30 2020-09-08 Commvault Systems, Inc. Cross-hypervisor live mount of backed up virtual machine data
US11159499B2 (en) * 2019-01-31 2021-10-26 Salesforce.Com, Inc. Conveying encrypted electronic data
US11238174B2 (en) * 2019-01-31 2022-02-01 Salesforce.Com, Inc. Systems and methods of database encryption in a multitenant database management system
US11032352B2 (en) 2019-01-31 2021-06-08 Salesforce.Com, Inc. Conveying encrypted electronic data from a device outside a multitenant system via the multitenant system to a recipient device that is a tenant device associated with the multitenant system
US10873586B2 (en) 2019-03-19 2020-12-22 Capital One Services, Llc Systems and methods for secure data access control
US11102196B2 (en) 2019-04-06 2021-08-24 International Business Machines Corporation Authenticating API service invocations
US11366723B2 (en) 2019-04-30 2022-06-21 Commvault Systems, Inc. Data storage management system for holistic protection and migration of serverless applications across multi-cloud computing environments
US11461184B2 (en) 2019-06-17 2022-10-04 Commvault Systems, Inc. Data storage management system for protecting cloud-based data including on-demand protection, recovery, and migration of databases-as-a-service and/or serverless database management systems
US20210011816A1 (en) 2019-07-10 2021-01-14 Commvault Systems, Inc. Preparing containerized applications for backup using a backup services container in a container-orchestration pod
US11539678B2 (en) * 2019-08-16 2022-12-27 Red Hat, Inc. Asymmetric key management for cloud computing services
WO2021055935A1 (en) * 2019-09-21 2021-03-25 Proofpoint, Inc. Method to enable shared saas multi-tenancy using customer data storage, customer controlled data encryption keys
CN111177776A (zh) * 2019-12-20 2020-05-19 平安资产管理有限责任公司 多租户数据隔离方法与系统
US11019033B1 (en) 2019-12-27 2021-05-25 EMC IP Holding Company LLC Trust domain secure enclaves in cloud infrastructure
US11467753B2 (en) 2020-02-14 2022-10-11 Commvault Systems, Inc. On-demand restore of virtual machine data
US11321188B2 (en) 2020-03-02 2022-05-03 Commvault Systems, Inc. Platform-agnostic containerized application data protection
US11422900B2 (en) 2020-03-02 2022-08-23 Commvault Systems, Inc. Platform-agnostic containerized application data protection
US11442768B2 (en) 2020-03-12 2022-09-13 Commvault Systems, Inc. Cross-hypervisor live recovery of virtual machines
US11455416B2 (en) 2020-05-01 2022-09-27 Kyndryl, Inc. Record-level sensitivity-based data storage in a hybrid multi cloud environment
US11748143B2 (en) 2020-05-15 2023-09-05 Commvault Systems, Inc. Live mount of virtual machines in a public cloud computing environment
US11611540B2 (en) * 2020-07-01 2023-03-21 Vmware, Inc. Protection of authentication data of a server cluster
US11314687B2 (en) 2020-09-24 2022-04-26 Commvault Systems, Inc. Container data mover for migrating data between distributed data storage systems integrated with application orchestrators
CA3205303A1 (en) * 2021-01-18 2022-07-21 Fredrik Haard Methods and systems for secure and reliable integration of healthcare practice operations, management, administrative and financial software systems
US11604706B2 (en) 2021-02-02 2023-03-14 Commvault Systems, Inc. Back up and restore related data on different cloud storage tiers
US11575508B2 (en) 2021-06-02 2023-02-07 International Business Machines Corporation Unified HSM and key management service
US11475158B1 (en) 2021-07-26 2022-10-18 Netskope, Inc. Customized deep learning classifier for detecting organization sensitive data in images on premises

Family Cites Families (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6118873A (en) 1998-04-24 2000-09-12 International Business Machines Corporation System for encrypting broadcast programs in the presence of compromised receiver devices
CN100499799C (zh) * 2000-12-22 2009-06-10 爱迪德艾恩德霍芬公司 提供对被传送数据的有条件访问的传输系统
US7516331B2 (en) * 2003-11-26 2009-04-07 International Business Machines Corporation Tamper-resistant trusted java virtual machine and method of using the same
US7590867B2 (en) * 2004-06-24 2009-09-15 Intel Corporation Method and apparatus for providing secure virtualization of a trusted platform module
US20060265338A1 (en) 2005-05-17 2006-11-23 Rutkowski Matt F System and method for usage based key management rebinding using logical partitions
US8325926B2 (en) 2006-02-07 2012-12-04 International Business Machines Corporation Method for providing a broadcast encryption based home security system
JP4735331B2 (ja) * 2006-03-01 2011-07-27 日本電気株式会社 仮想マシンを利用した情報処理装置および情報処理システム、並びに、アクセス制御方法
US8094819B1 (en) 2006-07-28 2012-01-10 Rockwell Collins, Inc. Method and apparatus for high agility cryptographic key manager
US7778421B2 (en) 2007-02-12 2010-08-17 International Business Machines Corporation Method for controlling access to encrypted content using multiple broadcast encryption based control blocks
WO2008146639A1 (ja) * 2007-05-23 2008-12-04 Nec Corporation 情報共有システム、コンピュータ、プロジェクト管理サーバ及びそれらに用いる情報共有方法
EP2278514B1 (en) * 2009-07-16 2018-05-30 Alcatel Lucent System and method for providing secure virtual machines
US20110276490A1 (en) * 2010-05-07 2011-11-10 Microsoft Corporation Security service level agreements with publicly verifiable proofs of compliance
AU2011261831B2 (en) * 2010-06-02 2014-03-20 VMware LLC Securing customer virtual machines in a multi-tenant cloud
US8412673B2 (en) * 2010-07-30 2013-04-02 Sap Ag Persistence of master data in a multi-tenant software delivery architecture
US9015493B2 (en) * 2010-09-16 2015-04-21 Microsoft Technology Licensing, Llc Multitenant-aware protection service
US8700906B2 (en) * 2011-01-14 2014-04-15 Microsoft Corporation Secure computing in multi-tenant data centers
US10248442B2 (en) * 2012-07-12 2019-04-02 Unisys Corporation Automated provisioning of virtual machines
CN102916954B (zh) * 2012-10-15 2015-04-01 南京邮电大学 一种基于属性加密的云计算安全访问控制方法

Also Published As

Publication number Publication date
US20140283010A1 (en) 2014-09-18
US9292673B2 (en) 2016-03-22
JP2016511610A (ja) 2016-04-14
WO2014141045A1 (en) 2014-09-18
DE112014000357T5 (de) 2015-10-08
GB201517231D0 (en) 2015-11-11
GB2526240B (en) 2019-06-05
GB2526240A (en) 2015-11-18

Similar Documents

Publication Publication Date Title
JP6537455B2 (ja) マルチテナント・コンピューティング・インフラストラクチャにおける鍵管理の方法、装置、コンピュータ・プログラム製品、およびクラウド・コンピュート・インフラストラクチャ(マルチテナント環境における鍵管理)
US11044236B2 (en) Protecting sensitive information in single sign-on (SSO) to the cloud
Chandramouli et al. Cryptographic key management issues and challenges in cloud services
US9846778B1 (en) Encrypted boot volume access in resource-on-demand environments
US9426155B2 (en) Extending infrastructure security to services in a cloud computing environment
JP7110339B2 (ja) セキュア・プロセッサ・ベースのクラウド・コンピューティング環境において情報を保護するための方法、装置、およびコンピュータ・プログラム
US10509914B1 (en) Data policy implementation in a tag-based policy architecture
WO2014194494A1 (zh) 数据安全的保护方法、服务器、主机及系统
Meghanathan Review of access control models for cloud computing
Abbadi et al. A framework for establishing trust in the cloud
EP2702744B1 (en) Method for securely creating a new user identity within an existing cloud account in a cloud system
CA3117713C (en) Authorization with a preloaded certificate
US10931453B2 (en) Distributed encryption keys for tokens in a cloud environment
KR20210122288A (ko) 하드웨어 보안 모듈에 대한 보안 게스트들의 보안 키들의 바인딩
JP2021500782A (ja) セキュアな環境内のツール用のセキュアなアクセス管理方法、コンピュータ・プログラム、およびシステム
CN115373796A (zh) 具有分区和动态混洗模型更新的联合学习
US9864853B2 (en) Enhanced security mechanism for authentication of users of a system
Chavan et al. IaaS cloud security
Cyril et al. Cloud computing data security issues, challenges, architecture and methods-A survey
US9509503B1 (en) Encrypted boot volume access in resource-on-demand environments
Anilkumar et al. Security strategies for cloud identity management—A study
Abbadi et al. Secure virtual layer management in clouds
Vijaya Bharati et al. Data storage security in cloud using a functional encryption algorithm
US11032708B2 (en) Securing public WLAN hotspot network access
Mudgal et al. ‘International journal of engineering sciences & research technology enhancing data security using encryption and splitting technique over multi-cloud environment

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20170221

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20180508

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20180730

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20190108

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20190214

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: 20190514

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20190604

R150 Certificate of patent or registration of utility model

Ref document number: 6537455

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150