JP2015503280A - 仮想化とクラウド・コンピューティングの安全確保と管理に適用される、安全未確保のコンピュータ環境で暗号化キーを確保する方法と装置。 - Google Patents

仮想化とクラウド・コンピューティングの安全確保と管理に適用される、安全未確保のコンピュータ環境で暗号化キーを確保する方法と装置。 Download PDF

Info

Publication number
JP2015503280A
JP2015503280A JP2014542996A JP2014542996A JP2015503280A JP 2015503280 A JP2015503280 A JP 2015503280A JP 2014542996 A JP2014542996 A JP 2014542996A JP 2014542996 A JP2014542996 A JP 2014542996A JP 2015503280 A JP2015503280 A JP 2015503280A
Authority
JP
Japan
Prior art keywords
encryption
computer
key
secret
encryption key
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.)
Pending
Application number
JP2014542996A
Other languages
English (en)
Inventor
パラン−ニッサニィ,ジラード
ヤロン シェファー,
ヤロン シェファー,
Original Assignee
ポルティコア エルティディ.
ポルティコア エルティディ.
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 ポルティコア エルティディ., ポルティコア エルティディ. filed Critical ポルティコア エルティディ.
Publication of JP2015503280A publication Critical patent/JP2015503280A/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/602Providing cryptographic facilities or services
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6218Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/70Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
    • G06F21/71Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure computing or processing of information
    • G06F21/72Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure computing or processing of information in cryptographic circuits
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the 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/008Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols involving homomorphic encryption
    • 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/0822Key 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) using key encryption key
    • 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/085Secret sharing or secret splitting, e.g. threshold schemes
    • 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/0894Escrow, recovery or storing of secret information, e.g. secret key escrow or cryptographic key storage
    • 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/2111Location-sensitive, e.g. geographical location, GPS
    • 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/2149Restricted operating environment
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2463/00Additional details relating to network architectures or network communication protocols for network security covered by H04L63/00
    • H04L2463/062Additional details relating to network architectures or network communication protocols for network security covered by H04L63/00 applying encryption of the keys

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • General Physics & Mathematics (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • Mathematical Physics (AREA)
  • Computing Systems (AREA)
  • Databases & Information Systems (AREA)
  • Storage Device Security (AREA)

Abstract

【課題】安全未確保のコンピュータ環境を構成する機器毎に異なる暗号化キーを確保する方法を提供する。【解決手段】 本発明の方法は、(a)暗号化キー構成を用意し、前記コンピュータ環境の秘密アイテムを保護する暗号化要求を受領すると、前記秘密アイテムを、N個の暗号化場所に固有の暗号化キー(以下、「N個の局部暗号化キー」と称する)からなる組の中の一つ局部暗号化キーで、並列にあるいは繰り返し暗号化するステップと、(b)前記局部暗号化キーを、暗号化により、秘密にするステップとを有する。前記局部暗号化キーは、それぞれの暗号化場所に対応して暗号化済みアイテムを生成し、前記暗号化場所は、前記コンピュータ環境に接続されたコンピュータ資源内にあるメモリの領域である。【選択図】 図1

Description

本発明は、仮想化とクラウド・コンピューティングの安全確保と管理に適用される、 安全未確保のコンピュータ環境で暗号化キーを確保する方法と装置に関する。
コンピュータ・ネットワーク(ウエヴ、及びクラウド・コンピューティング)の現在の傾向は、公開された、グループの、共有された、そして仮想化された資源に基づいている。IT(情報技術)のマーケットは、仮想化とクラウド・コンピューティングに対し、公開方式のソリューション、秘密方式のソリューション、更に混合方式のソリューションを提供している。この傾向は、多くのレベルで即ちインフラで、プラットホームで又はソフトウエアで起きている。
このような解決方法に立ちはだかる問題点は、ネットワークに接続された、仮想化された、クラウドのソリューションは、それ自身安全未確保であり分散型である点である。リソース即ち資源は、ユーザではなく様々なエンティティにより物理的に保有され、複数のユーザ(既存の安全確保、プライバシー、信頼関係を有する)間で共有されている。このことは、一法人あるいは様々なエンティティ内で起きている。
例えばファイルはネットワーク内の「ストレイジクラウド(storage cloud)」内に記憶されている。このストレイジクラウドは、共有資源であるので、ユーザは、自分のデータを、多くの他のユーザが日常的にアクセスする資源を信頼しそこに預けなければならない。これ等はユーザは、コントロールすることはできない。
ネットワーク、クラウド、仮想化のソリューションのベンダーは、様々なメカニズム(例、認証、批准、仮想プライド・ネットワーク)を提供して、この種の問題を改善しようとしている。この種のアプローチは大幅に改善しているが完全ではない。このメカニズムは、様々な重要な問題(例えば安全な暗号化、計算中の使用されているデータの保護、ネットワーク上の送信時の保護、安全確保したハンドリングのためのシングルポイント、暗号化キーの管理、ユーザに対しプロバイダを信頼するよう要求すること、ユーザに対しプロバイダとその構造又はそのスタッフを信頼するよう要求すること等である。)を、解決することはできない。
安全確保を要求する消費者に対する一つのソリューション/オプションは、資源を共有しないことである。このようなオプションはユーザにとって好ましいものではない。その理由は、現在の共有資源は多くの経済的操作上、技術上のメリットを提供しているからである。
仮想化とクラウド・コンピューティングの安全確保と管理に適用される、 安全未確保のコンピュータ環境で暗号化キーを確保する方法と装置を提供することが好ましい。
本発明の目的は、仮想化とクラウド・コンピューティングの安全確保と管理に適用される、 安全未確保のコンピュータ環境で暗号化キーを確保する方法と装置を提供することである。
説明を明確にするために本明細書で使用される用語について以下定義する。
用語「仮想化(virtualization)」は、基礎となっているハードウエアの資源から分離された環境でソフトウエアを実行する手段を意味する。このハードウエア資源は、ハードウエア仮想化、ソフトウエア仮想化、メモリ仮想化、データベース仮想化、データ仮想化、ストレージ仮想化、アプリケーション仮想化、デスクトップ仮想化、ネットワーク仮想化を含む。
用語「コンピュータ資源」は、データストレージ、書換え可能メモリ、永久メモリ、コンピューティング、計算能力、ネットワーク能力、アルゴリズム機能、ソフトウエア機能、ソフトウエアベースのオブジェクト、サービスプロバイダにより提供されるハードウエア又はソフトウエアにより使用されるソフトウエアベースのオブジェクトを提供するコンピュータサービスを意味する。
用語「アプライアンス」は、ソフトウエア又はハードウエアを意味する。これは、物理的に分離したサーバ上で実現される、ネットワークシステムのサーバ上のエージェント、仮想サーバ、追加的ソフトウエアを含む仮想サーバ上のエージェント、システムに利用可能な適宜のコンピュータ資源を用いた、資源の暗号化又は脱暗号化に対するアクリプトグラフィックアプライアンスとしてのサービスを意味する。
用語「カスタマー・アプリケーション」は、顧客又は第三者により書かれたクラウドアプリケーションを意味し、安全確保したストレージのI/Oの操作を実行するためにアプライアンスを用いて、アプライアンスは、カスタマー・アプリケーションとしての同一のコンピュータ資源上にインストールされたソフトウエアエージェントである。
用語「保護アイテム」とは、暗号化されるべきあらゆるオブジェクトを意味する。
用語「準同型エージェント(homonorphic agent)」とは、ブライディングバリューの暗号化・バージョンを保持するオプショナルサーバ又はエージェントを意味し、ブライディングバリューは、「準同型・エージェント」により要求されて適応されたり又は取り除かれたりする。
本発明の一実施例により、安全確保に厳しい顧客は、プロバイダ又はベンダーから提供される公開の、秘密の、混成の、共有の資源を使用することができ、完全な安全性とその制御を享受できる。本発明の一実施例により、安全未確保の資源の安全を確保できる。これは、資源の機能性を損なうことなく資源の安全確保ができる。本発明の一実施例によれば、安全未確保の資源の安全を確保し、それをより安全に制御しながら発生する共有資源のモデルの出現の利点を享受できる。
本発明の一実施によれば、ある環境における1つのエンティティ(即ちアプライアンス)により暗号化でき、別のエンティティ(即ちアプライアンス)により脱暗号化ができ、そしてこのような暗号化と脱暗号化操作を、別々のエンティティにより行うことができる。
このようなアプライアンスは、保護された仮想・キー・マネージャー(PVKM:Protected Virtual Key Manager )に接続されて、サービスをアプライアンスとシステムのユーザーに提供する。このサービスは、システムの暗号化キーを管理するサービスに関連するか或るいはシステムの安全性を強化する方法に関連する。この様なサービスの特徴は以下を含む。(これに限定されるわけではないが)
1.アプライアンス上のデータ又はルーチン状態が危険に晒されている場合には、顧客キー(「顧客キー」とも称する)の漏洩を防ぐ。
1.PVKM上の状態が危険に晒されている場合には、顧客キーの漏洩を防ぐ。
1.PVKMが悪質コード又はバグを含むコードで置換された場合には、顧客キーの漏洩を防ぐ
1.アプライアンスが悪質コード又はバグを含むコードで置換された場合には、顧客キーの漏洩を防ぐ
1.攻撃者が別のアプライアンス上の顧客キーを確保した場合には、アプライアンス上の類似のキーの漏洩を防ぐ
1.顧客キーが、ネットワーク内あるいはシステムの資源内に入り込んだ盗聴者に漏れるのを防ぐ
本発明の一実施例は、公開方式、秘密方式、混成方式に適用可能で、安全確保した資源が異なる法人に帰属する場合を例に説明する。
本発明の一実施は、コンピュータ資源の集合体内又はコンピュータ資源の群内のコンピュータ資源の協調動作を行わせるために、信頼されたプロトコルを提供する。この実施例においては、エンティティの集合体(例えばアプライアンスの群あるいはカスタマー・アプリケーションの集合体)が、この集合体の各メンバーは安全未確保環境で信頼に値することを確認する。特にこの実施例により、集合体の新たなメンバーの安全が確保され信頼足り得るものとなる。
本発明の他の実施例は、暗号化キーの保管の形態で仮想化されたキー管理システムの安全性を提供する。このキーの保管システムは、暗号化キーの値を知らずに、顧客により使用されるキーを記憶し、このようなキーの値を公開に曝すリスクなしに行われる。
本発明の一実施例は、安全確保したアプリケーションを更新させるようなアルゴリズムを提供する。
本発明の一実施例によれば、安全未確保のコンピュータ環境において暗号化キーを確保する方法において、
(a)暗号化キー構成を用意し、前記コンピュータ環境の秘密アイテムを保護する暗号化要求を受領すると、前記秘密アイテムを、N個の暗号化場所に固有の暗号化キーであるN個の局部暗号化キーからなる組の中の一つ局部暗号化キーで、並列にあるいは繰り返し暗号化するステップと、
前記局部暗号化キーは、それぞれの暗号化場所に対応して暗号化済みアイテムを生成し、前記暗号化場所は、前記コンピュータ環境に接続されたコンピュータ資源内にあるメモリの領域であり、
(b)前記局部暗号化キーを、暗号化により、秘密にするステップとを有し、
前記ステップ(b)は、
(b1)前記局部暗号化キーが、暗号化中に、前記コンピュータ環境のコンピュータ資源上で秘密でない平文形態で知られることを防ぎ、
(b2)前記局部暗号化キーが秘密の状態にある間、前記ステップ(a)と前記ステップ(b)の一部として、数学的操作が実行できるようにする
前記数学的操作は、XOR論理、加算、減算、乗算、割り算、モデュラー加算、モデュラー減算、モデュラー乗算、モデュラー割り算とそれらの組み合わせからなる。
好ましくは、前記ステップ(b)は、キースプリッティング(key splitting)、キージョイニング(key joining)、ブラインド化(blinding)、準同型暗号化(homomorphic encryption)と従来公知な暗号化技術からなるグループから選択された少なくとも一つの暗号技術である。
好ましくは、前記暗号化キー構成は、コンピュータ環境の暗号化アイテムの脱暗号化要求を受領すると、前記暗号化アイテムを、N個の局部暗号化キーからなる組の中の一つ局部暗号化キーで、並列にあるいは繰り返し脱暗号化するステップ(a’)を更に有し、
前記ステップ(b)は、
(b1)前記局部暗号化キーが、脱暗号化中に、前記コンピュータ環境のコンピュータ資源上で秘密でない平文形態で知られることを防ぎ、
(b2)前記局部暗号化キーが秘密の状態にある間、前記脱暗号化ステップ(a’)と前記ステップ(b)の一部として、数学的操作が実行できるようにし、
前記数学的操作は、XOR論理、加算、減算、乗算、割り算、モデュラー加算、モデュラー減算、モデュラー乗算、モデュラー割り算とそれらの組み合わせからなる。
好ましくは、前記暗号化ステップ(a)の前又は前記脱暗号化ステップ(a’)の後に、
(C)前記秘密アイテムを認証された要求者と交換し、前記交換時には、前記秘密アイテムは、前記暗号化キー構成にとっては不知であり、これにより、仮想化されたキー管理システムの安全確保を提供するステップを更に有する。
好ましくは、前記暗号化ステップ(a)と前記ステップ(b)は、前記コンピュータ環境に接続されたコンピュータ資源の集合体の内のいずれかの要素で実行され、
前記ステップ(b)は、前記要素毎に別々に実行され、これにより、秘密にされた暗号化キーの漏洩を防ぎ、他の要素を危険に晒さない。
本発明の一実施例によれば、安全未確保のコンピュータ環境において信頼されたプロトコルを確保する方法において、
(a)コンピュータ環境の信頼できないコンピュータ資源は信頼できると決定する要求を受領すると、前記信頼できないコンピュータ資源を信頼できるものとして、前記信頼できるコンピュータ資源が保障するステップと、
前記ステップ(a)は、以下からなるグループから選択された少なくとも一つの基準を満たした時に、行われ、
(i)前記信頼されたコンピュータ資源が、前記信頼できないコンピュータ資源をセットアップしたこと又は活性化したことに、直接関連し、
(ii)前記信頼されたコンピュータ資源が、前記信頼できないコンピュータ資源を信頼できると認証する信任状又は特定の情報のデータベースへアクセスすること、
(b)前記信頼されたコンピュータ資源を含む前記コンピュータ資源の何れか上に現れる必要のある秘密を隠すステップと、
前記秘密は、前記コンピュータ資源毎に異なる方法で秘密され、
(c)前記秘密を、前記ステップ(b)を変えてながら、前記信頼されたコンピュータ資源を含む前記コンピュータ資源のいずれもが前記秘密を知ることがないように、前記コンピュータ資源の何れかから他のコンピュータ資源へ送信するステップと、
を有する。
本発明の一実施例によれば、安全未確保のコンピュータ環境で暗号化キーを確保する装置において、
(a)以下を含むサーバと、
(i)計算操作を実行するCPUと、
(ii)データを記憶するメモリ・モジュールと、
(iii)ネットワークを介して通信するネットワーク接続装置と、
(b)前記サーバ上にある保護モジュールと、
を有し、
前記保護モジュールは、
(i)暗号化キー構成を用意し、前記コンピュータ環境の秘密アイテムを保護する暗号化要求を受領すると、前記秘密アイテムを、N個の暗号化場所に固有の暗号化キー(以下、「N個の局部暗号化キー」と称する)からなる組の中の一つ局部暗号化キーで、並列にあるいは繰り返し暗号化するステップと、
前記局部暗号化キーは、それぞれの暗号化場所に対応して暗号化済みアイテムを生成し、前記暗号化場所は、前記コンピュータ環境に接続されたコンピュータ資源内にあるメモリの領域であり、
(ii)前記局部暗号化キーを、暗号化により、秘密にするステップと
を実行し、
前記ステップ(ii)は、
(A)前記局部暗号化キーが、暗号化中に、前記コンピュータ環境のコンピュータ資源上で秘密でない平文形態で知られることを防ぎ、
(B)前記局部暗号化キーが秘密の状態にある間、前記暗号化と前記秘密にすることの一部として、数学的操作が実行できるようにする
前記数学的操作は、XOR論理、加算、減算、乗算、割り算、モデュラー加算、モデュラー減算、モデュラー乗算、モデュラー割り算とそれらの組み合わせからなる。
好ましくは、前記ステップ(b)は、キースプリッティング(key splitting)、キージョイニング(key joining)、ブラインド化(blinding)、準同型暗号化(homomorphic encryption)と従来公知な暗号化技術からなるグループから選択された少なくとも一つの暗号技術である。
好ましくは、前記暗号化キー構成は、コンピュータ環境の暗号化アイテムの脱暗号化要求を受領すると、前記暗号化アイテムを、N個の局部暗号化キーからなる組の中の一つ局部暗号化キーで、並列にあるいは繰り返し脱暗号化するステップ(a’)を更に有し、
前記ステップ(b)は、
(b1)前記局部暗号化キーが、脱暗号化中に、前記コンピュータ環境のコンピュータ資源上で秘密でない平文形態で知られることを防ぎ、
(b2)前記局部暗号化キーが秘密の状態にある間、前記脱暗号化ステップ(a’)と前記ステップ(b)の一部として、数学的操作が実行できるようにする
前記数学的操作は、XOR論理、加算、減算、乗算、割り算、モデュラー加算、モデュラー減算、モデュラー乗算、モデュラー割り算とそれらの組み合わせからなる。
好ましくは、前記暗号化ステップ(a)の前又は前記脱暗号化ステップ(a’)の後に、前記保護モジュールは、
(C)前記秘密アイテムを認証された要求者と交換し、前記交換時には前記秘密アイテムは、前記暗号化キー構成にとっては不知であり、これにより、仮想化されたキー管理システムの安全確保を提供する。
好ましくは、前記暗号化ステップ(a)と前記ステップ(b)は、前記コンピュータ環境に接続されたコンピュータ資源の集合体の内のいずれかの要素で実行され、
前記ステップ(b)は、前記要素毎に別々に実行され、これにより、秘密にされた暗号化キーの漏洩を防ぎ、他の要素を危険に晒さない。
本発明の一実施例によれば、安全未確保のコンピュータ環境で信頼できるプロトコルを確保する装置において、
(a)以下を含むサーバと、
(i)計算操作を実行するCPUと、
(ii)データを記憶するメモリ・モジュールと、
(iii)ネットワークを介して通信するネットワーク接続装置と、
(b)前記サーバ上にある保証モジュールと、
を有し、前記保証モジュールは、
(a)コンピュータ環境の信頼できないコンピュータ資源は信頼できると決定する要求を受領すると、前記信頼できないコンピュータ資源を信頼できるものとして、前記信頼できるコンピュータ資源が保障するステップと、
前記ステップ(a)は、以下からなるグループから選択された少なくとも一つの基準を満たした時に、行われ、
(i)前記信頼されたコンピュータ資源が、前記信頼できないコンピュータ資源をセットアップしたこと又は活性化したことに、直接関連し、
(ii)前記信頼されたコンピュータ資源が、前記信頼できないコンピュータ資源を信頼できると認証する信任状又は特定の情報のデータベースへアクセスすること、
(b)前記信頼されたコンピュータ資源を含む前記コンピュータ資源の何れか上に現れる必要のある秘密を隠すステップと、
前記秘密は、前記コンピュータ資源毎に異なる方法で秘密され、
(c)前記秘密を、前記ステップ(b)を変えてながら、前記信頼されたコンピュータ資源を含む前記コンピュータ資源のいずれもが前記秘密を知ることがないように、前記コンピュータ資源の何れかから他のコンピュータ資源へ送信するステップと、
を実行する。
本発明の一実施例によれば、コンピュータで読み取り可能な以下のプログラム・コードを記憶するコンピュータで読み取り可能な記憶媒体において、
(a)暗号化キー構成を用意し、前記コンピュータ環境の秘密アイテムを保護する暗号化要求を受領すると、前記秘密アイテムを、N個の暗号化場所に固有の暗号化キーであるN個の局部暗号化キーからなる組の中の一つ局部暗号化キーで、並列にあるいは繰り返し暗号化するプログラム・コードと、
前記局部暗号化キーは、それぞれの暗号化場所に対応して暗号化済みアイテムを生成し、前記暗号化場所は、前記コンピュータ環境に接続されたコンピュータ資源内にあるメモリの領域であり、
(b)前記局部暗号化キーを、暗号化により、秘密にするプログラム・コードと、
を有し、前記プログラム・コード(b)は、
(b1)前記局部暗号化キーが、暗号化中に、前記コンピュータ環境のコンピュータ資源上で秘密でない平文形態で知られることを防ぎ、
(b2)前記局部暗号化キーが秘密の状態にある間、前記プログラム・コード(a)と前記プログラム・コード(b)の一部として、数学的操作が実行できるようにする
前記数学的操作は、XOR論理、加算、減算、乗算、割り算、モデュラー加算、モデュラー減算、モデュラー乗算、モデュラー割り算とそれらの組み合わせからなる、
ことを特徴とするコンピュータで読み取り可能なプログラム・コードを記憶するコンピュータで読み取り可能な記憶媒体。
好ましくは、前記プログラム・コード(b)は、キースプリッティング(key splitting)、キージョイニング(key joining)、ブラインド化(blinding)、準同型暗号化(homomorphic encryption)と従来公知な暗号化技術からなるグループから選択された少なくとも一つの暗号技術である。
好ましくは、前記暗号化キー構成は、コンピュータ環境の暗号化アイテムの脱暗号化要求を受領すると、前記暗号化アイテムを、N個の局部暗号化キーからなる組の中の一つ局部暗号化キーで、並列にあるいは繰り返し脱暗号化するプログラム。コード(a’)を更に有し、前記プログラム。コード(b)は、
(b1)前記局部暗号化キーが、脱暗号化中に、前記コンピュータ環境のコンピュータ資源上で秘密でない平文形態で知られることを防ぎ、
(b2)前記局部暗号化キーが秘密の状態にある間、前記脱暗号化プログラム。コード(a’)と前記プログラム。コード(b)の一部として、数学的操作が実行できるようにする
前記数学的操作は、XOR論理、加算、減算、乗算、割り算、モデュラー加算、モデュラー減算、モデュラー乗算、モデュラー割り算とそれらの組み合わせからなる。
好ましくは、前記暗号化プログラム・コード(a)の前又は前記脱暗号化プログラム・コード(a’)の後に、
(C)前記秘密アイテムを認証された要求者と交換し、前記交換時には、前記秘密アイテムは、前記暗号化キー構成にとっては不知であり、これにより、仮想化されたキー管理システムの安全確保を提供するプログラム・コードを更に有する。
好ましくは、前記暗号化プログラム・コード(a)と前記プログラム・コード(b)は、前記コンピュータ環境に接続されたコンピュータ資源の集合体の内のいずれかの要素で実行され、前記プログラム・コード(b)は、前記要素毎に別々に実行され、これにより、秘密にされた暗号化キーの漏洩を防ぎ、他の要素を危険に晒さない。
本発明の一実施例によれば、コンピュータで読み取り可能な以下のプログラム・コードを記憶するコンピュータで読み取り可能な記憶媒体において、
(a)コンピュータ環境の信頼できないコンピュータ資源は信頼できると決定する要求を受領すると、前記信頼できないコンピュータ資源を信頼できるものとして、前記信頼できるコンピュータ資源が保障するプログラム・コードと、
前記プログラム・コード(a)は、以下からなるグループから選択された少なくとも一つの基準を満たした時に、行われ、
(i)前記信頼されたコンピュータ資源が、前記信頼できないコンピュータ資源をセットアップしたこと又は活性化したことに、直接関連し、
(ii)前記信頼されたコンピュータ資源が、前記信頼できないコンピュータ資源を信頼できると認証する信任状又は特定の情報のデータベースへアクセスすること、
(b)前記信頼されたコンピュータ資源を含む前記コンピュータ資源の何れか上に現れる必要のある秘密を隠すプログラム・コードと、
前記秘密は、前記コンピュータ資源毎に異なる方法で秘密され、
(c)前記秘密を、前記プログラム・コード(b)を変えてながら、前記信頼されたコンピュータ資源を含む前記コンピュータ資源のいずれもが前記秘密を知ることがないように、前記コンピュータ資源の何れかから他のコンピュータ資源へ送信するプログラム・コードと、を有する。
本発明の一実施例による、ブラインドキーを用いたスプリットキー暗号化方式を実施する主要ステップのブロック図。 本発明の一実施例による、2暗号化位置の準同型ブラインド化の暗号化方式を実施する主要ステップのブロック図。 本発明の一実施例による、3暗号化位置の準同型ブラインド化の暗号化方式を実施する主要ステップのブロック図。 本発明の一実施例による、プロトコル最適化を伴った2暗号化位置の準同型ブラインド化キーの暗号化方式を実施する主要ステップのブロック図。
本発明の方法と装置の一実施例を図面を参照しながら以下説明する。
本発明の一実施においては、安全未確保の環境で使用されるキーの安全確保する方法と装置の一例として、仮想化又はクラウドの環境下で走るシステム(ソフトウエアアプリケーション)を例に説明する。このシステムは複数のコンピュータ資源を有し、それ等はサーバとして及び記憶媒体として機能する。安全確保するシステムとして資源の一部は暗号化する必要がある。
暗号化された資源は、データを含むシステムのファイル、ディスク、他の資源である。(例えばサーバ・メモリ内のデータは本明細書においては資源でもある。)資源は暗号化技術で保護される。これは、対称又は非対称の暗号化である。これ等の技術は、常に暗号化と脱暗号化のキーの生成と使用を含む。この暗号化キーは後で取り出せるように記憶され、その結果システムは必要なときにはいつでも、資源を暗号化したり脱暗号化することができる。
指定されたサービス(即ち資源の暗号化又は脱暗号化)を提供するために、アプライアンスは、システムのサーバと資源に接続され、又PVKMにも接続される。このPVKMは、上記の暗号化キーとシステムの安全確保に関連するサービスを提供する。このような接続は、ネットワーク通信、メモリ内通信、他の適宜のシステムに有用な通信技術を含む。かくしてこのような接続性は、通信チャネル又は通信とも称する。
アプライアンスの集合体(相互作用するグループ)とクラスタ(相互作用しないグループ)が、システムでも用いられ、システムの故障回復と、スケーラ・ビリティと、暗号化メカニズムを確保する。あるアプライアンスにより暗号化された資源は、別のアプライアンスにより脱暗号化されるのが有益であり、このような暗号化と脱暗号化の操作は別々のアプライアンスにより原理的に行われるのが有益である。同時にセキュリティの観点から、攻撃者があるアプライアンスを危険に曝したとしても、システム全体は危険に曝されないのが望ましい。
本明細書に記載した方法は、クラスタにおいて極めて有効であるが、1つのクラスタ(即ち単独のアプライアンス)においても有効である。クラスタは適用性を一般化するために、クラスタを説明して、適用の一般化とシステムの特徴を強調するが、ここで用いられている技術は、アプライアンスの1つのインスタンス内に存在するキーの保護にも有効である。
以下に説明する実施例と実行方法を記述する一般的な構成は 以下の「秘密」キーとキー要素がシステムの構築の説明に関連する。
固有キーKsは、特定の保護された資源を暗号化するために用いられるキーあるいはキー群であり、従来公知の暗号化技術を使用する。システムは、この複数の資源の安全確保するために、各資源は異なる固有キーKsを有する。本発明の一実施においては、固有キー(Ks)は、暗号化されていない平文形態でどこかに永続的に記憶しておく必要はない。
固有キーKsは複数の部分に分けられる。説明を簡便にするために、最も一般的なケースの実施例においては、Ksを2つの部分マスターキーKmとセカンドキー・シェアとに分ける。サードキー・シェア、更にはそれ以上のキー・シェアを用いることも本発明の範囲内に入る。
以下の説明において演算子Θと*(原文では黒丸である)とがある。この演算子は、適宜の演算(例;XOR、乗算、除算、加算、減算)を表す。この演算子は、例えば;キー・ジョイニング、キー・スプリティング、キー・ブラインディングに有効である。一般的に、これ等の演算子はこれらの演算を表すのに用いられる。簡単に説明すると、Θは同一の式内では、演算とその逆算の両方を意味する。例えば、XORの逆算はXORそのものでありこれに対し、乗算の逆は割り算(除算)である。同じことは*についてもいえる。*とΘの両方が用いられるが、これ等は1つの式の中で2つの演算を表すのに有効だからである。これ等の一般化された演算子は、準同型演算、例えば
E(A)*E(B)=E(AΘB)で用いられる。
マスター・キーKmは、固有キーの1つのキー・シェアである。本発明のシステムは、マスター・キーは、コンピュータシステム内の何処かに平文形態で記憶する必要もなく、メモリ内で平文形態で使用される必要もない。
上記の実施例は、追加的なキー又はキー・シェアにまで拡張可能である。一般的なフレーム・ワークにおいては、このような態様はマスターキーにのみ適用される。
このような態様は、以下の実施例で説明するように、マスター・キー又はキー・シェアは、演算(例えばキー・スプリティング、キー・ジョイニング又は他の関連演算)で、キーの平文(未暗号)値を知ることなく、使用できる。本発明の一実施においては、ブラインド値γは、キー又はキー・シェアを揮発性メモリ内に記憶しないようにするために、用いられる。他の実施例は、準同型暗号化を、Eとして示されたキー群を用いて、又は公開/秘密のキー対で示した(Ek,Dk)を用いて実行し、これによりキーとキー・シェアを暗号化し安全確保する。本発明の他の実施例においては、従来公知の暗号化技術を用いる。準同型暗号化の一例は、ElGamal,paillier,RSA,or Goldwasser-Micali algorithmsである。
本発明の一実施によれば、暗号化キー(例えばマスター・キー又はキー・シェア)の一部は、完全にコンピュータ環境外に置くことができる。その結果、それ等の暗号化キーは、コンピュータ環境内で平文形式即ち未暗号化形式で知られることはない。この実施の態様は安全確保を機能を向上させる。その理由は、重要なキーは、平文形態ではコンピュータ環境内に存在することなく使用することができるからである。
本発明の一実施においては、ブラインド値(blinding value)、キー又はキー・ペアは、システム内の各アプライアンス毎に異なっており、更には保護すべき対象の各資源内でも異なっている。本発明の一実施例により、キーは、コンピュータ環境内の様々な使用状態において別々に暗号化される。この態様により安全性が向上する。その理由は、暗号化形態でのキーの窃盗はこの窃盗者には役立たない。その理由は、暗号化形態のキーは、例えそれが盗まれたとしても、システムの他の部分では使用できないからである。
本発明により、十分には信頼できない環境内でも、信頼性の確立ができる。この実施例により、安全未確保の環境内でのキーの安全が確保される。
以下の説明において、PVKMは、このような環境におけるロケーション(物理的あるいは仮想的の何れの)と見ることができ、各アプライアンス又は他のセキュリティ要素も、別のロケーションとして見ることができる。しかし、PVKMそのものは、集合体あるいはクラスタとして実行され、PVKMをロケーションとも称する。
本発明の一実施においては、スプリット・キーの暗号化アプローチは、ブライド化値γを用いたブラインド・キーで実現され、これにより、Kmが、コンピュータ・システムのアプライアンス上、PVKM上あるいは何れの場所でも、未暗号化(平文)形態になるのが阻止される。
図1−4において、全体プロセスを、別々に又は順番に、タイムライン(上から下に時間が経過する)に従って、アプライアンスAとPVKM−B(図面ではPVKM B(ハイフンが無い)で示されている)の2つの主要な要素に対し示す。これにより、各コンポーネントで別々に(独立して)起きる並列プロセスを分離して示す。
アプライアンスAは、複数のアプライアンスの一例を意味する。本発明は、このようなアプライアンスの集合体あるいはクラスタにより広く適用可能である。更にPVKM−Bは概念的なエンティティ(例;サーバ)を意図するが、実際にはPVKM−Bは複数のサーバ(例;故障からの回復保護のため)を意味する。このアプローチを一般化するとより多くのロケーション、より多くのタイムライン(例えば準同型・サーバCと他の更なる要素用のタイムライン)が存在する。
更にこの全体プロセスは3つのサブ・プロセスに分けられる。サブ・プロセスIでは新たなアプライアンスを生成し、サブ・プロセスIIでは新たに保護すべきアイテムを生成し、サブ・プロセスIIIでは既に保護されたアイテムにアクセスする。
このブラインド・キーの実施例においては、新たなアプライアンスを創設する為(サブ・プロセスI)、PVKM−Bはキー・ペア(Ek,Dk)を生成(ステップ10)し、この公開キーEkをアプライアンスAに送信(ステップ12)し、そこに記憶(ステップ14)する。標準の暗号化技術(いわゆるサーティフィケート内に公開キーをラッピングする技術)を用いて、公開キーEkが本物(authenticity of the public key )であることを保証する。ブラインド値γを用いて、アプライアンスA上のKmの値を暗号化し、秘密に(ブラインド化)する。このブラインド・プロセスは、KmΘγとして計算される。ここでΘは適宜の演算を意味する。ブラインド化された値KmΘγは、アプライアンスA上にその後記憶される(ステップ16)。この記憶はメモリ内でのみ行われ、ディスクのストレージ又は他の永久的な記憶媒体を必要とはしない。しかしこれは他の実施例では許される場合もある。
本発明の実施に際し、アプライアンスAは、Kmの元の入力値をユーザが入力する演算を実行する。このような構成においては、ブラインド値γのコピーがPVKM−Bに送られ(ステップ18)、そこに記憶される(ステップ20)。ブラインド値γはアプライアンスAには記憶されない。γは、ブラインド値が計算された後は、メモリから消去され、PVKM−Bはγのコピーを記憶する(ステップ20)。
ここに記載したプロトコルで、γをブラインド値KmΘγで演算を実行することにより、システムは、Km又は何れのKs(これ等はPVKM−Bにより知られたものである)の値を知らずに、アプライアンスA上で知られたKmの値を知らずに、キーをブラインド化操作を実行した後は、管理できる。
新たに保護されたアイテムが生成される(サブ・プロセスII)と、アプライアンスAはKsを生成する。このKsは、このアイテムを暗号化し保護するために用いられる固有キーである。これは従来公知の暗号化技術を用いて行われる。
Ksを、KsのKmも曝すことなく、安全に記憶するために、PVKM−BのKmΘKsΘγのキー・シェアのブラインド化が生成され(ステップ22)、その後これがEkを用いて暗号化され(ステップ24)、PVKM−B(ステップ26)に送られる。PVKM−Bは、ブラインド化されていない(未ブラインド化)キー・シェアを、γの記憶された値を用いて計算し(ステップ28)、このブラインド化されていないキー・シェアをPVKM−Bに記憶させる(ステップ30)。
選択的事項として、ハッシュ・ベースのメッセージ認証コード(HMAC:Hash-based Message Authentication Code)を用いて、PVKM−Bのキー・シェアの修正形態をアプライアンスAに戻す(ステップ32)。HMACの有無にかかわらず、PVKM−Bの未ブラインド化キー・シェアは、アプライアンスAに記憶することもできる(ステップ33)。これは、PVKM−Bに記憶する代わりに又はそれに加えて(ステップ30)行われる。この実施例において、HMACを使用することを以下説明する。
演算子Θは、本明細書において使用される可能性のある演算の一例である。
保護されたアイテムが再びアクセスされると(サブ・プロセスIII)、PVKMキー・シェアが取り出される。これはアプライアンス上で選択的事項として行われ(ステップ34)、PVKMキー・シェアは、PVKM−Bに(HMACを用いて)送られる(ステップ36)。あるいはPVKM上で局部的に取り出してもよい。その後PVKM−Bは、暗号化されたキー・シェアを脱暗号化する(ステップ38)。PVKM−Bは、ブラインド化された脱暗号化されたキー・シェアをアプライアンスAに送る(ステップ40)。そこで脱暗号化されたキー・シェアが、アプライアンスのブラインド化されたキー・シェアKmΘγと結合されて、ストレージ・キーKsを回復する(ステップ42)。
ブラインド値を加えることにより、Kmはアプライアンス上に又はPVKM上に記憶されることはない。かくして、アプライアンスを破壊しても、攻撃者はKmを回復/再生できない。同じく、PVKMの破壊も攻撃者に対しKmを再生させることはない。
本発明の一実施においては、準同型・ブラインディングは、準同型公開キー暗号化スキームを用いて、2つの場所で実行され、マスター・キーKmのブラインド化を達成する。
図2は、本発明の一実施例による、2(暗号化)位置の準同型ブラインド化の暗号化方式を実施する主要ステップのブロック図である。
この2位置の準同型・ブラインド化の実施例においては、新たなアプライアンスを創設する(サブ・プロセスI)ために、PVKM−Bはキー・ペア(Ek,Dk)を生成し(ステップ50)、EkをアプライアンスAに送信し(ステップ52)、そこに記憶する(ステップ54)。このキー・ペアは、部分的な準同型又は完全な準同型の暗号化スキームである。アプライアンスAは、キーを受領すると、マスター・キーKm暗号化し(ステップ56)、又は既に暗号化されたマスター・キーを受領する。しかし未暗号化キーをPVKM−Bに送ることはない。
新たな保護アイテムが生成されると(サブ・プロセスII)、アプライアンスAはKsを生成する。このKsは、アイテムを暗号化し保護するのに用いられる固有のキーである。この暗号化は、従来公知の暗号化技術を用いて行われる。
Ksを安全に記憶する為にそしてKsのKmも露出しないために、PVKM−Bの暗号化されたキー・シェアEk(KmΘKs)が生成される(ステップ60)。暗号化されたキー・シェアは、その後PVKM−Bに送られ(ステップ62)、そこに記憶される(ステップ64)。PVKM−Bの暗号化されたキー・シェアは、アプライアンスAに記憶され(ステップ65)、これはPVKM−Bに記憶する代わりに又はそれに加えて行って(ステップ64)もよい。
この実施例において、アプライアンスに対し、脱暗号化することなく暗号化テキストを乗算する準同型・プロパティを用いてもよい。これによりEk(KsΘKm)が、KsとEk(Km)から、Kmを知ることなく、計算できる。
Ek(Ks)*Ek(Km)=Ek(KsΘKm)
これはステップ60に示されている。
保護されたアイテムが再びアクセスされると(サブ・プロセスIII)、アプライアンスAは、まず暗号化されたキー・シェアEk(KsΘKm)を取り出す。アプライアンスAは、PVKM−Bに対しこのキーを脱暗号化するよう要求する必要がある。その理由はアプライアンスAはDkを持っていないからである。PVKM−Bは固有キーKsの値とマスター・キーKmの値を決定することはできない。PVKM−Bがこれ等のキーを直接得るのを阻止するために、固有キーは、既にアプライアンスAに知られている新たなランダムな値rでブラインド化(ステップ66)される。これは、脱暗号化(ステップ70)の為に、キーがPVKM−Bに送られる(ステップ68)毎に行われる。
準同型・プロパティを用いて、アプライアンスAが、Ek(Ks)にブライド化ステップを加えるが、これは、Ks又はKmに知らずに行う。
Ek(KsΘKm)*Ek(Km)*Ek(r)=Ek(KsΘr)
その後PVKM−Bは、ブラインド化された脱暗号化されたキー・シェアをアプライアンスAに送る(ステップ72)、そこで脱暗号化されたキー・シェアが、アプライアンスAのキー・シェアと、Kmと、ブラインド化された値と組み合わされて、ストレージ・キーKsを回復する(ステップ74)。
数学的に、同一の2位置準同型・ブラインド化プロセスを以下説明する。暗号化キーSと重要な資源を保護する例を考える。
S=[b1,b2,b3−−−bx]
各bxはデータのビットまたはバイトである。一部のbx又は全てのbxが権限のないエンティティに知られたものとなると、このキーは(全体又は一部が)露出されたものとなり、その結果重要な資源も露出されることになる。Sは、b要素のストリングをbxまで暗号化することにより、保護される。Sは、1回又はn回暗号化されるが、これは複数の異なる暗号化方法ε={E1...En}と適宜の暗号化キーP={P1...Pn}を用いて行われる。そしてこれは次のように定義される。
C=ε(S,P)=E1(E2(...En(S,Pn),....P2),P1)
上記の説明において、P(P1からPnの順番の組である)は暗号化キーのセットであり、CはSの暗号化形態(即ちSの暗号)である。各Pxは従来公知(例えば、対称暗号化、公開−秘密スキーム又はキー・シェア・スキーム)である。各Pxは、対称キーの分野で公知のキーで(対称キー、公開−秘密キー対あるいはキー・シェア・スキームのキー)ある。Cは適宜の脱暗号化δ()で脱暗号化される。例えば、
S=δ(C,P)=Dn(...D2(D1(C,P1),P2),...Pn);S=δ(ε(S,P))
このアプローチにおいて、DxはExの逆数であり、δはεの逆数である。Sは、暗号化キー・セットPが安全で、暗号文CがSが使用される時間と場所の近傍で脱暗号化される場合には安全であると見做される。言い換えると、演算δ() は、Sが実際に必要なときにのみ適用される、Sは必要とされない場合には廃棄される。
暗号化方法Ek(kは1−nの整数)の1つを考えてみる。Ekは上記に定義されたアプライアンス上で具体化される。アプライアンスのクラスタが、Ekがクラスタ内のどのアプライアンスでも実現されるよう、要求すると仮定する。暗号化方法の故障回復又は拡張可能性を達成するために、Ekは、クラスタ内の全てのアプライアンスで実現されなければならない。
別の暗号化方法Ej(jはkと異なり1−nの整数)を考えてみる。この暗号化方法Ejは、PVKM上で具体化される。Ejの実施例与える為に、アプライアンスとの通信を安全に確保する以外に、PVKMの正確な場所や特徴に関して何も仮定しにあ。例えばPVKMは、サーバ又はサーバのクラスタのようなコンピュータ資源上で実現される。
Cに対する前の式は次のようになる。(j<k)
C=e(S,P)=E1(E2(...Ej(...Ek(En(S,Pn),....Pk),...Pj),...,P2),P1)
S=d(C,P)=Dn(...Dk(...Dj(...D2(D1(c、P1),P2),...,Pj),...,Pk),...,Pn)
S=d(e(S,P))
jがkよりも大きい場合には、EjとEkの順番は逆転し、全てのDnとPnの順番も逆転する。jとk以外の方法を無視すると、以下の議論で関連する方法は、次のように定義することができる。
C=e(S,P)=Ej(Ek(S,Pk),Pj)
S=d(C,P)=Dk(Dj(C,Pj),Pk)、C=d(e(S,P))
ここで除かれた方法が示される。
Sを重要な資源を保護する暗号化キーとして導入した。本発明では、このSそのものを保護しようとしている。Sは、平文状態ではアプライアンスのメモリ内でのみ、及びSが重要な資源の暗号化又は脱暗号化で使用されている時のみ入手可能である。Sはアプライアンスのメモリ外では入手は不可能である。例えばSは、永久メモリ例えばディスク内には記録されず、PVKM上でも入手不可能である。
PKI(Public-Key Infrustructure公開キー方式)の技術は、暗号化アルゴリズムEpkiと脱暗号化アルゴリズムDpkiを有する。PKIのキーの対は、公開キー(e,m)と秘密キー(d,m)がPKIに一般的に使用される。秘密キー(d,m)はPVKM 上でのみ見出され、脱暗号化アルゴリズムDpki(y)=Dpki(d,m)で使用される。公開キー(e,m)はPVKMとアプライアンスの両方で見出され、暗号化アルゴリズムEpki(x)=Epki(x(e,m))で使用される。
このPKI技術は、部分的に準同型または完全に準同型の環境(ElGamal,paillier,RSA,and Goldwasser-Micali)で基本的に使用されるPKI技術でもよい。e,d,mの実際の意味は、選択され使用された技術に依存する。例えばRSA方式においてはmはmodulusで、eは暗号化の際の累乗回数で、dは脱暗号化際の累乗回数である。(e,m)は公開キーを含み(d,m)は秘密キーを含む。
便宜上マスター・キーMはKmと本明細書では同意である。PKIで暗号化されたマスター・キーはμ=Epki(M)であり、以下の実施例に関連する特定のアプライアンス上でのみ得られる。Mはシステムの如何なる場所でも得ることができず、μのみが上記した特定のアプライアンス上でのみ得られる。
一般化した乗算の演算子を‘*’(原文では黒丸)で定義する。演算子の実際の選択は、使用されるPKI技術に依存する。この実施例で選択された演算子‘*’は、部分的準同型の演算で選択されたPKI技術に適したものである。例えばRSAにおいては演算子は乗算であり、Goldwasser-Micaliでは演算子はXOR論理回路である。部分的準同型の特性は次のことを意味する。
Epki(x1)*Epki(x2)=Epki(x1*x2)
Dpki(y1*y2)=Dpki(y1)*Dpki(y2)
*の逆は割り算で‘/’で表され、選択されたpki技術に対して存在すると仮定する。このような定義を用いて、暗号化技術EjとEkと脱暗号化技術DkとDjは、以下のように記述することができる。
資源(ディスク上に記憶されたファイル)をSに依存する暗号化技術で暗号化するためには以下のステップを実行する。
1.アプライアンス上で暗号化キーSを得る又は生成する(ランダムに)。
2.アプライアンス上でSを用いて資源を暗号化する。
3.Sをそれ自身の値を曝すことなく記憶する必要がある。PVKMと他のアプライアンス上の何れでも(システム内のエンティティ)はSを得ることはない。その為
a.アプライアンス上でσ=Epki(S)を計算する。
b.アプライアンス上でκ=σ*μ=Epki(S)*Epki(M)を計算する。
c.κをPVKMに送る(これはS又はMを、PVKMに曝すことにはならない)。
d.PVKM上でのみDpki(κ)を計算する。(秘密キー(d,m)はPVKM上でのみ得られる)これはスルー・準同型は以下を示唆する。
Dpki(κ)=Dpki(Epki(S)*Epki(M))=Dpki(Epki(S*M))=S*M
PVKMは適宜の技術で、値(S*M)を安全に確保する。(例えは、データ・ベース内の記憶装置)
4.Sを廃棄し、その結果、Sは、アプライアンス上ではもはや得ることができず更にはアプライアンスのメモリ内でも得ることはできない。(選択的事項としてこの値は将来 一時記憶することもできるが、これは性能と利便性を引き換えに、安全性を犠牲にしたものである。
アプライアンス上で起きる上記のステップはEkを記述し、PVKM上で起きる上記のステップはEjを記述する。Sが得られない場合、上記の暗号化した資源を脱暗号化するために以下のステップが行われる。
1.PVKM上でS*Mを取り出す。
2.PVKM上でκ=Epki(S*M)を計算する。
3.κをアプライアンスに送る
4.準同型とEpki(M)を利用して介して、アプライアンス上のκ/μを計算する。κ/μ=Epki(S*M)/Epki(M)=Epki(S)=σ
5.公知の適宜のブラインド技術を用いて、σblindedをσから生成する。この様な技術は乱数γとEk(γ)による乗算による(これは図2に記載している)。
6.σblindedをアプライアンスからPVKMに送る。
7.PVKM上でSblindedを計算する。
Sblinded=Dpki(σblinded)=Dpki(Epki(Sblinded))
8.PVKMからSblindedをアプライアンスに戻す(PVKMはSを取り出すことができるがそれはPVKMはブラインディング・ステップを実行したからである)。
9.アプライアンス上でSを用いて所望の資源を脱暗号化する。
10.値Sを廃棄し、従ってアプライアンス上ではもはや得ることができず、更にアプライアンス上のメモリ上でも得ることができない。選択的事項としてこの値は将来使用するために一時記憶することもできるが、これは性能と便利性のために安全性を犠牲にするものである。
アプライアンス上の上記のステップはDkを記述し、PVKM上で起きる上記のステップはDjを記述する。
Kmは、暗号化形態でのみ記憶されているので、アプライアンスを破壊しても、攻撃者はKmを回復することはできない。
本発明の一実施においては、準同型・ブラインディングは3か所で行われる。この3暗号化箇所での準同型・ブラインディングの実施例は、ブラインドキーを用いてスプリット・キー暗号化に関連する上記のプロセスに類似する。但し、γが、3暗号化箇所での準同型・ブラインディングの方法では、何処にも非暗号化形態で記憶されることはない点を除いて類似する。その代りγの暗号化版は、外部の準同型・サーバに送られる。
図3は、3暗号化箇所での準同型・ブラインディングの暗号化を実施する主要なステップのブロック図である。
この3暗号化箇所での準同型・ブラインディングの暗号化においては、新たなアプライアンスを生成する為(サブ・プロセスI)、PVKM−Bは(Ek,Dk)キーの対を生成し(ステップ80)、EkをアプライアンスAに送り(ステップ82)、そしてそこに記憶する(ステップ84)。アプライアンスAは、ブラインド化されたKmを記憶する(ステップ86)。
上記の実施例において、ブラインド化操作は、ユーザが入力したランダムな値γとKmの元の入力値を用いて行われる。このような構成においては、γの暗号化版が計算され(ステップ88)、その後準同型・サーバCに送られ(ステップ90)、そこに記憶される(ステップ92)。γもその暗号化版も、アプライアンス又はPVKMには記憶されない。
新たな保護されたアイテムが生成されると(サブ・プロセスII)、アプライアンスAはKsを従来公知の暗号化技術を用いて生成する。Ksは、そのアイテムを暗号化し保護するのに用いられる固有のキーである。
Ksを安全に記憶し且つKsもKmも露出しないようにするために、ブラインド・キーKmΘKsのPVKM−Bの暗号化されたキー・シェアを生成する(ステップ104)。これはEκ(KsΘKmΘKγ)の計算を行い、その後準同型・サーバCに送信する(ステップ98)。Cはγの記憶された暗号化形態を用いて、ブラインド化されていないキー・シェアを計算する(ステップ100)。その後暗号化されたブラインド化されていないキーをPVKM−Bに送信し(ステップ102)、そこに記憶する(ステップ104)。
選択的事項として、HMACを用いてステップ100で計算されたキー・シェアの修正形態をアプライアンスAに戻す(ステップ106)。HMACの使用の有無に関わらず、PVKM−Bの暗号化されていないキー・シェアは、アプライアンス上に記憶される(ステップ107)。これはPVKM−Bに記憶する代わりに又はそれに加えて行われる(ステップ104)。
保護されたアイテムが再びアクセスされると(サブ・プロセスIII)、記憶された暗号化キー・シェアが取り出され(ステップ108)、それが準同型・サーバCに送られる(ステップ110)。選択的事項としてHMACを用いる。
図3は、アプライアンス上に記憶される場合のアプライアンスから送信されたキー・シェアを示す(ステップ107)。キー・シェアは、PVKM−Bに記憶されている場合には、PVKMから送信される(ステップ104)。準同型・サーバCはその後ブラインドされた暗号化されたキー・シェアを計算し(ステップ112)、このブラインドされ暗号化されたキー・シェアをPVKM−Bに送る(ステップ114)。PVKM−Bは、最終的にブラインドされ暗号化されたキー・シェアを脱暗号化し(ステップ116)、その結果ブラインドされ脱暗号化されたキー・シェアをアプライアンスAに送る(ステップ118)。そこで脱暗号化されたキー・シェアは、アプライアンスのブラインドされたキー・シェアKmΘγと組み合わされて、固有のキーKsを再生する(ステップ120)。
上記の暗号化方法の準同型特性は、ブラインド値は平文のγを知らずに暗号化テキストに適用され、そこから直接取り出すことができることを意味する。その理由は、γの値は平文形態で記憶されず、PVKM又はアプライアンス(更には両方)への受動的な攻撃ではγを知ることはできない。マスター・キーを解明する唯一の方法は、すべて3つのサーバに入り込み、アプライアンスからKmΘγを、PVKMからDkを、準同型・サーバからEk(γ)を取り出し、この3つのキーを組み合わせることである。
本発明の一実施においては、2暗号化位置準同型・ブラインド暗号化は、プロトコルの最適化を行うことで実現できる。この実施例は、図2で説明した準同型・ブラインドの2つの位置の暗号化方法に類似する。但し、プロトコルでは、ある場所ではより効率的であり、より少ない計算量とより少ない繰り返し計算で目標に達成できる。
図4は、本発明の一実施例による、プロトコル最適化を伴った2暗号化位置の準同型ブラインド化キーの暗号化方式を実施する主要ステップのブロック図である。
この実施例の2暗号化箇所での準同型・ブラインディングの暗号化においては、新たなアプライアンスを生成する為(サブ・プロセスI)、PVKM−Bは、キーの対(Ek,Dk)を生成し(ステップ130)、EkをアプライアンスAに送り(ステップ132)、そこに記憶する(ステップ134)。更に、Ekをユーザに送る(ステップ136)。アプライアンスAは、暗号化されたマスター・キーEk(Km)を受領すると記憶し(ステップ138)、この暗号化さたKm(生成され記憶されたブラインド化値γから得られる)をEk(KmΘγ)を計算することにより、ブラインド化する(ステップ140)。このブラインド化されたKmをその後PVKM−Bに送り(ステップ142)、これをPVKM−Bに記憶する(ステップ144)。
上記の暗号化方法の準同型・プロパティは、Kmに知らずにブライド化ステップを加えることである。
Ek(KsΘγ)=Ek(Km)ΘEk(γ)
新たに保護されたアイテムが生成されると(サブ・プロセスII)、新たな固有キーKs(アイテムを暗号化し保護するに用いられる)が必要とされる。これには従来公知の暗号化技術が用いられる。固有キーは以下のように生成される。
アプライアンスAは、アプライアンスA上でランダムなビット形式であるエントロピー(この分野では公知技術)をキー生成リクエストと共に集める(ステップ146)。その後アプライアンスAは、キーを生成するよう要求する(ステップ148)。これは。リクエストを、集められたエントロピー上を通過させて、PVKM−Bに送る(ステップ150)ことにより行われる。その後PVKM−Bは、ランダムな値を生成する。このランダムな値は、アプライアンスAのエントロピーと共に、PVKM−Bのキー・シェア、KmΘKsとして機能する。
PVKM−Bは、リクエストで供給されたアプライアンス・エントロピ又はPVKMのアプライアンス・エントロピーの何れかを用いるか又はその両方を用いて、新たなキーを生成する。その後このキー・シェアを用いて、ブラインド・キーKsΘγを生成する(ステップ154)。これをPVKM−BからアプライアンスAに送る(ステップ156)、それからアプライアンスAは、キーKsを、予め記憶されたブラインド値rを用いて計算する(ステップ158)。
保護されたアイテムに再度アクセスされると(サブ・プロセスIII)、アプライアンスAはリクエストを生成(ステップ160)することにより、固有キーKsを得る。その後、このリクエストPVKM−Bに送ること(ステップ162)により。固有のキーを得る。PVKM−Bはそのキー・シェアを取り出し(ステップ164)、このブラインド化されたキーを計算し(ステップ166)、このブラインド化されたキーをアプライアンスAに送る(ステップ168)。アプライアンスAは、その後このキーKsを計算する(ステップ170)。
本発明の一実施例においては、Nか所の暗号化プロセスが、上記の2か所又は3か所の暗号化プロセスを拡張することにより、実現できる。
本発明の一実施例においては、クラスタに関与する信頼されたプロトコルを実行して、エンティティのクラスタ(即ちアプライアンス)が、クラスタの構成員が仮想環境又はクラウド環境で、信頼に値することを確認できる。この場合、特に新たなクラスタの構成員の安全が確保され信頼に値することが確認できる。
この実施例においては、クラスタ内のエンティティの信頼を認証するプロトコルが規定される。アプライアンスは識別チケットを具備する。これは従来公知の適宜のチケットである。アプライアンスは適宜のデータ・ベース内で信頼できるとして指定されるか又はこの様なアプライアンス内で信頼の生成を指定する。このようなチケット発行又はアプライアンスの指定は、フラグの付されたされたトラスト(Flagged trusted)としてのアプライアンスである。
アプライアンスをフラッグの付いたトラストとする前に、特定のアプライアンスにおける信頼(トラスト)が確立されなければならない。アプライアンスは、少なくとも1つの信頼されたエンティティによりトラストが発行されない限り、フラッグの付いたトラストとはならない。信頼されたエンティティは、別のアプライアンス、PVKM又は、他の信頼されたエンティティでもよい。アプライアンスは、信頼証明が発行された後のみフラッグの付されたトラストとなる。アプライアンスに対し信頼証書を発行するよう信頼されたエンティティは、以下の方法によってのみ、それ自身に信頼性があるものと見做される。
1.エンティティがトラストを得ること及びトラストのフラッグを付けることの唯一の方法は、システムのユーザが、エンティティに対し個人的に信頼状を発行することである。このような状況は、クラスタの第1のインスタンスが最初に活性化された時に、あるシチュエーションが起きるか又は他のシチュエーションが起きた時に、発生する。この様なアプローチの代表的な例として、ユーザが信頼されたトラストに対しマスター・キーのコピー又はこのマスター・キーの暗号化版を提供することにより、そのエンティティに対し信頼状を発行すること又はユーザがエンティティの信頼をPVKMに対し発行することである。
2.別の信頼されたエンティティが以下の条件の少なくとも1つが満たされたときのみ、アプライアンスに対し信頼状を発行することに同意することである。
(a)信頼されたエンティティがアプライアンスを設定する又は活性化することに直接関与したこと、そしてそれ故にアプライアンスが正しくセットアップされたこと又は安全性のリスクがないということに対し信用状を発行することである。
(b)信頼されたエンティティが識別された秘密情報又は識別された情報のデータ・ベースにアクセスすることであり、これにより信頼されたエンティティがアプライアンスが信頼に値すると認証することである。
信頼状(トラスト)を発行するある方法は、状況によっては他のものよりも好ましいが、両方のアプローチ共一般性を維持する。信頼されたエンティティがアプライアンスに対しトラストを発行すると決定すると、信頼されたエンティティは、アプライアンスに対するトラスト、クラスタの他のメンバー又はPVKMのたのメンバーに、発行する。新たに信用されたアプライアンスが、適宜の秘密を受領すると、エンティティのトラストが確立される。
上記の秘密の一例は以下のものがある。
適宜のフラッグ(例えば、チケット)
適宜に暗号化されたマスター・キー
従来用いられている秘密
このような秘密は、それを暗号化することにより安全確保される。更に好ましいのは、
秘密そのものがコンピュータ環境で平文の形態で知られていないことである。
秘密が送信側(信頼を発行する側)のエンティティとは異なる方法で受信側(信頼を要求される側)のアプライアンスに対し暗号化される。
本発明の一実施例においては、トラストを発行するエンティティは、PVKMと協働して秘密のそれ自身の暗号化を取り除くが、これはPVKM又は信頼を発行したアプライアンス側の秘密を知らずに行うことができる(例えば、マスター・キーを知らない)。秘密の新たな暗号化が、その後PVKMと共に適用されるが、PVKM又は他のアプライアンスもこの秘密を知る必要はない。知らずに行われる。この新たな暗号化は、アプライアンスを受領する(信頼が要求される)側にとって適切なものである。
このアプローチを達成する代表的な技術は以下のステップに関連する。
1.送信側のエンティティが準同型で暗号化されたEk(Km)を受信側のアプライアンスに送る。
1.受信側のアプライアンスが、このEkの準同型特性を用いてその値を知る必要はなくKmをブラインド化する。(例えばランダム数値tを生成しEk(KmΘt)=Ek(Km)ΘE(t)が計算される)そしてこれを送信側のアプライアンスに戻す。
1.クラスタを発行するアプライアンスはPVKMに対し暗号化Ekを取り除き、この暗号化Ejを適用する(tをブラインド化するために、PVKMとクラスタを発行するアプライアンスは両方ともKmを知ることができない)。
1.新たに暗号化された値Ej(KmΘt)を受信側アプライアンスに送られる、これにより新たなアプライアンスにKmの暗号化をどのエンティティもKmを知らずに与えられている目標を、どのエンティティはKmを知らずに達成することができる。その結果新たなアプライアンスにおける暗号化は他の何れの暗号化とも異なる。
この実施例は新たなアプライアンスに対し信頼できるのみならず、あるアプライアンスの秘密が破られたときに他のアプライアンスはそうではないということが確認できる。その理由は、アプライアンスが含む秘密は別々に暗号化されるからである。
本発明の一実施例においては、HMACはサービスの拒否(DoS)の回避で、セキュリティのために、PVKMで維持されている脱暗号化キー(Dk)の使用を制限するために実行される。HMACは、特別なチェックサム機構でPVKMにとって計算は容易ではあるが、他のエンティティがそれを作り出すことは非常に困難である。HMACを用いて、PVKMはPVKMがデータを暗号化する毎にチケットを計算し、このデータを暗号文と共にアプライアンスに送る。PVKMは有効なチケットなしではデータを脱暗号化するのを拒否する。PVKMは暗号文からチェックサムを簡単に計算し、これによりアプライアンスが、PVKMがそのデータベース内に暗号化キーを記憶していない場合でも作業することができる。
本発明の更なる実施例において、PVKMとアプライアンスは、安全確保した仮想化したキー管理システムとして使用され、暗号化キーをAPI(Application Programming Interface)を介してユーザに送る。この実施例においては、ユーザ実際の暗号化を実行するが、この実行システムはキーを提供するだけである。この実施例において、PVKMとアプライアンスとそれ等の間のプロトコルは上記の何れの場合でも又は一般的原理に入るようなどのプロトコルでもある。
更に実際の暗号化キーをユーザに適用し、適用することは実行システムにとっては完全に知りえないものである(即ち、PVKMとアプライアンスに対しては完全に未知のものである)。この様な実行はプロトコルを強化することにより達成され、その結果ユーザは、ユーザに対してブラインドの値、暗号化キー、暗号化キー群、暗号化キー対を発行することを要求することによりプロセスに参加する。
この実施例において、PVKMとアプライアンスはそれ自身のキーの暗号化を切り替えてそれをユーザにより指定された暗号化で置換するが、これはキーを必要とすることなく行うことができる。この実施例は、PVKMとアプライアンスの何れもがキーに値を知ることが無いよう実行される。即ち、ユーザにより供給されるブラインド値を用いて更にブラインドする。この実施例において、seで仮想化されたキー管理システムは、キーの生成とキーの記憶システムとしてユーザのために機能するが、システムがユーザに提供するキーの値を知る必要はない。この実施例はセキュリティを確実にするために更なるセキュリティの向上が期待できる。その理由はシステムには完全には未知の値はシステムから盗むことができないからである。特にキーの値はシステムの一時メモリであるキャッシュから盗むことができないからである。
以上の説明は、本発明の一実施例に関するもので、この技術分野の当業者であれば、本発明の種々の変形例を考え得るが、それらはいずれも本発明の技術的範囲に包含される。特許請求の範囲の構成要素の後に記載した括弧内の番号は、図面の部品番号に対応し、発明の容易なる理解の為に付したものであり、発明を限定的に解釈するためのものではない。また同一番号でも明細書と特許請求の範囲の部品名は必ずしも同一ではない。これは上記した理由による。実施例の記載においては、「少なくとも1つ又は複数」、「と/又は」は、それらの内の1つに限定されない。例えば「A,B,Cの内の少なくとも1つ」は「A」、「B」、「C」単独のみならず「A,B又はB,C更には又A,B,C」のように複数のもの、AとBの組合せAとBとCの組合せでもよい。「A,Bと/又はC」は、A,B,C単独のみならず、AとBの2つ、又はAとBとCの全部を含んでもよい。本明細書において「Aを含む」「Aを有する」は、A以外のものを含んでもよい。特に記載のない限り、装置又は手段の数は、単数か複数かを問わない。
本PCT出願は、米国仮出願61/562,893号(2011年11月28日出願)と米国仮出願61/603,383号(2012年2月27日出願)を優先権を主張してなされたものである。


Claims (18)

  1. 安全未確保のコンピュータ環境において暗号化キーを確保する方法において、
    (a)暗号化キー構成を用意し、前記コンピュータ環境の秘密アイテムを保護する暗号化要求を受領すると、前記秘密アイテムを、N個の暗号化場所に固有の暗号化キーであるN個の局部暗号化キーからなる組の中の一つ局部暗号化キーで、並列にあるいは繰り返し暗号化するステップと、
    前記局部暗号化キーは、それぞれの暗号化場所に対応して暗号化済みアイテムを生成し、前記暗号化場所は、前記コンピュータ環境に接続されたコンピュータ資源内にあるメモリの領域であり、
    (b)前記局部暗号化キーを、暗号化により、秘密にするステップと
    を有し、
    前記ステップ(b)は、
    (b1)前記局部暗号化キーが、暗号化中に、前記コンピュータ環境のコンピュータ資源上で秘密でない平文形態で知られることを防ぎ、
    (b2)前記局部暗号化キーが秘密の状態にある間、前記ステップ(a)と前記ステップ(b)の一部として、数学的操作が実行できるようにする
    前記数学的操作は、XOR論理、加算、減算、乗算、割り算、モデュラー加算、モデュラー減算、モデュラー乗算、モデュラー割り算とそれらの組み合わせからなる、
    ことを特徴とする安全未確保のコンピュータ環境で暗号化キーを確保する方法。
  2. 前記ステップ(b)は、キースプリッティング(key splitting)、キージョイニング(key joining)、ブラインド化(blinding)、準同型暗号化(homomorphic encryption)と従来公知な暗号化技術からなるグループから選択された少なくとも一つの暗号技術である
    ことを特徴とする請求項1記載の方法。
  3. 前記暗号化キー構成は、コンピュータ環境の暗号化アイテムの脱暗号化要求を受領すると、前記暗号化アイテムを、N個の局部暗号化キーからなる組の中の一つ局部暗号化キーで、並列にあるいは繰り返し脱暗号化するステップ(a’)を更に有し、
    前記ステップ(b)は、
    (b1)前記局部暗号化キーが、脱暗号化中に、前記コンピュータ環境のコンピュータ資源上で秘密でない平文形態で知られることを防ぎ、
    (b2)前記局部暗号化キーが秘密の状態にある間、前記脱暗号化ステップ(a’)と前記ステップ(b)の一部として、数学的操作が実行できるようにする
    前記数学的操作は、XOR論理、加算、減算、乗算、割り算、モデュラー加算、モデュラー減算、モデュラー乗算、モデュラー割り算とそれらの組み合わせからなる、
    ことを特徴とする請求項1記載の方法。
  4. 前記暗号化ステップ(a)の前又は前記脱暗号化ステップ(a’)の後に、
    (C)前記秘密アイテムを認証された要求者と交換し、前記交換時には、前記秘密アイテムは、前記暗号化キー構成にとっては不知であり、これにより、仮想化されたキー管理システムの安全確保を提供するステップ
    を更に有する
    ことを特徴とする請求項3記載の方法。
  5. 前記暗号化ステップ(a)と前記ステップ(b)は、前記コンピュータ環境に接続されたコンピュータ資源の集合体の内のいずれかの要素で実行され、
    前記ステップ(b)は、前記要素毎に別々に実行され、これにより、秘密にされた暗号化キーの漏洩を防ぎ、他の要素を危険に晒さない
    ことを特徴とする請求項1記載の方法。
  6. 安全未確保のコンピュータ環境において信頼されたプロトコルを確保する方法において、
    (a)コンピュータ環境の信頼できないコンピュータ資源は信頼できると決定する要求を受領すると、前記信頼できないコンピュータ資源を信頼できるものとして、前記信頼できるコンピュータ資源が保障するステップと、
    前記ステップ(a)は、以下からなるグループから選択された少なくとも一つの基準を満たした時に、行われ、
    (i)前記信頼されたコンピュータ資源が、前記信頼できないコンピュータ資源をセットアップしたこと又は活性化したことに、直接関連し、
    (ii)前記信頼されたコンピュータ資源が、前記信頼できないコンピュータ資源を信頼できると認証する信任状又は特定の情報のデータベースへアクセスすること、
    (b)前記信頼されたコンピュータ資源を含む前記コンピュータ資源の何れか上に現れる必要のある秘密を隠すステップと、
    前記秘密は、前記コンピュータ資源毎に異なる方法で秘密され、
    (c)前記秘密を、前記ステップ(b)を変えてながら、前記信頼されたコンピュータ資源を含む前記コンピュータ資源のいずれもが前記秘密を知ることがないように、前記コンピュータ資源の何れかから他のコンピュータ資源へ送信するステップと、
    を有する
    ことを特徴とする安全未確保のコンピュータ環境でキーを確保する方法。
  7. 安全未確保のコンピュータ環境で暗号化キーを確保する装置において、
    (a)以下を含むサーバと、
    (i)計算操作を実行するCPUと、
    (ii)データを記憶するメモリ・モジュールと、
    (iii)ネットワークを介して通信するネットワーク接続装置と、
    (b)前記サーバ上にある保護モジュールと、
    を有し、
    前記保護モジュールは、
    (i)暗号化キー構成を用意し、前記コンピュータ環境の秘密アイテムを保護する暗号化要求を受領すると、前記秘密アイテムを、N個の暗号化場所に固有の暗号化キー(以下、「N個の局部暗号化キー」と称する)からなる組の中の一つ局部暗号化キーで、並列にあるいは繰り返し暗号化するステップと、
    前記局部暗号化キーは、それぞれの暗号化場所に対応して暗号化済みアイテムを生成し、前記暗号化場所は、前記コンピュータ環境に接続されたコンピュータ資源内にあるメモリの領域であり、
    (ii)前記局部暗号化キーを、暗号化により、秘密にするステップと
    を実行し、
    前記ステップ(ii)は、
    (A)前記局部暗号化キーが、暗号化中に、前記コンピュータ環境のコンピュータ資源上で秘密でない平文形態で知られることを防ぎ、
    (B)前記局部暗号化キーが秘密の状態にある間、前記暗号化と前記秘密にすることの一部として、数学的操作が実行できるようにする
    前記数学的操作は、XOR論理、加算、減算、乗算、割り算、モデュラー加算、モデュラー減算、モデュラー乗算、モデュラー割り算とそれらの組み合わせからなる、
    ことを特徴とする安全未確保のコンピュータ環境で暗号化キーを確保する装置。
  8. 前記ステップ(b)は、キースプリッティング(key splitting)、キージョイニング(key joining)、ブラインド化(blinding)、準同型暗号化(homomorphic encryption)と従来公知な暗号化技術からなるグループから選択された少なくとも一つの暗号技術である
    ことを特徴とする請求項7記載の装置。
  9. 前記暗号化キー構成は、コンピュータ環境の暗号化アイテムの脱暗号化要求を受領すると、前記暗号化アイテムを、N個の局部暗号化キーからなる組の中の一つ局部暗号化キーで、並列にあるいは繰り返し脱暗号化するステップ(a’)を更に有し、
    前記ステップ(b)は、
    (b1)前記局部暗号化キーが、脱暗号化中に、前記コンピュータ環境のコンピュータ資源上で秘密でない平文形態で知られることを防ぎ、
    (b2)前記局部暗号化キーが秘密の状態にある間、前記脱暗号化ステップ(a’)と前記ステップ(b)の一部として、数学的操作が実行できるようにする
    前記数学的操作は、XOR論理、加算、減算、乗算、割り算、モデュラー加算、モデュラー減算、モデュラー乗算、モデュラー割り算とそれらの組み合わせからなる、
    ことを特徴とする請求項7記載の装置。
  10. 前記暗号化ステップ(a)の前又は前記脱暗号化ステップ(a’)の後に、
    前記保護モジュールは、
    (C)前記秘密アイテムを認証された要求者と交換し、前記交換時には前記秘密アイテムは、前記暗号化キー構成にとっては不知であり、これにより、仮想化されたキー管理システムの安全確保を提供する
    ことを特徴とする請求項7記載の装置。
  11. 前記暗号化ステップ(a)と前記ステップ(b)は、前記コンピュータ環境に接続されたコンピュータ資源の集合体の内のいずれかの要素で実行され、
    前記ステップ(b)は、前記要素毎に別々に実行され、これにより、秘密にされた暗号化キーの漏洩を防ぎ、他の要素を危険に晒さない
    ことを特徴とする請求項7記載の装置。
  12. 安全未確保のコンピュータ環境で信頼できるプロトコルを確保する装置において、
    (a)以下を含むサーバと、
    (i)計算操作を実行するCPUと、
    (ii)データを記憶するメモリ・モジュールと、
    (iii)ネットワークを介して通信するネットワーク接続装置と、
    (b)前記サーバ上にある保証モジュールと、
    を有し、
    前記保証モジュールは、
    (a)コンピュータ環境の信頼できないコンピュータ資源は信頼できると決定する要求を受領すると、前記信頼できないコンピュータ資源を信頼できるものとして、前記信頼できるコンピュータ資源が保障するステップと、
    前記ステップ(a)は、以下からなるグループから選択された少なくとも一つの基準を満たした時に、行われ、
    (i)前記信頼されたコンピュータ資源が、前記信頼できないコンピュータ資源をセットアップしたこと又は活性化したことに、直接関連し、
    (ii)前記信頼されたコンピュータ資源が、前記信頼できないコンピュータ資源を信頼できると認証する信任状又は特定の情報のデータベースへアクセスすること、
    (b)前記信頼されたコンピュータ資源を含む前記コンピュータ資源の何れか上に現れる必要のある秘密を隠すステップと、
    前記秘密は、前記コンピュータ資源毎に異なる方法で秘密され、
    (c)前記秘密を、前記ステップ(b)を変えてながら、前記信頼されたコンピュータ資源を含む前記コンピュータ資源のいずれもが前記秘密を知ることがないように、前記コンピュータ資源の何れかから他のコンピュータ資源へ送信するステップと、
    を実行する
    ことを特徴とする安全未確保のコンピュータ環境で信頼できるプロトコルを確保する装置。
  13. コンピュータで読み取り可能な以下のプログラム・コードを記憶するコンピュータで読み取り可能な記憶媒体において、
    (a)暗号化キー構成を用意し、前記コンピュータ環境の秘密アイテムを保護する暗号化要求を受領すると、前記秘密アイテムを、N個の暗号化場所に固有の暗号化キーであるN個の局部暗号化キーからなる組の中の一つ局部暗号化キーで、並列にあるいは繰り返し暗号化するプログラム・コードと、
    前記局部暗号化キーは、それぞれの暗号化場所に対応して暗号化済みアイテムを生成し、前記暗号化場所は、前記コンピュータ環境に接続されたコンピュータ資源内にあるメモリの領域であり、
    (b)前記局部暗号化キーを、暗号化により、秘密にするプログラム・コードと、
    を有し、
    前記プログラム・コード(b)は、
    (b1)前記局部暗号化キーが、暗号化中に、前記コンピュータ環境のコンピュータ資源上で秘密でない平文形態で知られることを防ぎ、
    (b2)前記局部暗号化キーが秘密の状態にある間、前記プログラム・コード(a)と前記プログラム・コード(b)の一部として、数学的操作が実行できるようにする
    前記数学的操作は、XOR論理、加算、減算、乗算、割り算、モデュラー加算、モデュラー減算、モデュラー乗算、モデュラー割り算とそれらの組み合わせからなる、
    ことを特徴とするコンピュータで読み取り可能なプログラム・コードを記憶するコンピュータで読み取り可能な記憶媒体。
  14. 前記プログラム・コード(b)は、キースプリッティング(key splitting)、キージョイニング(key joining)、ブラインド化(blinding)、準同型暗号化(homomorphic encryption)と従来公知な暗号化技術からなるグループから選択された少なくとも一つの暗号技術である
    ことを特徴とする請求項13記載の記憶媒体。
  15. 前記暗号化キー構成は、コンピュータ環境の暗号化アイテムの脱暗号化要求を受領すると、前記暗号化アイテムを、N個の局部暗号化キーからなる組の中の一つ局部暗号化キーで、並列にあるいは繰り返し脱暗号化するプログラム。コード(a’)を更に有し、
    前記プログラム。コード(b)は、
    (b1)前記局部暗号化キーが、脱暗号化中に、前記コンピュータ環境のコンピュータ資源上で秘密でない平文形態で知られることを防ぎ、
    (b2)前記局部暗号化キーが秘密の状態にある間、前記脱暗号化プログラム。コード(a’)と前記プログラム。コード(b)の一部として、数学的操作が実行できるようにする
    前記数学的操作は、XOR論理、加算、減算、乗算、割り算、モデュラー加算、モデュラー減算、モデュラー乗算、モデュラー割り算とそれらの組み合わせからなる、
    ことを特徴とする請求項13記載の記憶媒体。
  16. 前記暗号化プログラム・コード(a)の前又は前記脱暗号化プログラム・コード(a’)の後に、
    (C)前記秘密アイテムを認証された要求者と交換し、前記交換時には、前記秘密アイテムは、前記暗号化キー構成にとっては不知であり、これにより、仮想化されたキー管理システムの安全確保を提供するプログラム・コード
    を更に有する
    ことを特徴とする請求項15記載の記憶媒体。
  17. 前記暗号化プログラム・コード(a)と前記プログラム・コード(b)は、前記コンピュータ環境に接続されたコンピュータ資源の集合体の内のいずれかの要素で実行され、前記プログラム・コード(b)は、前記要素毎に別々に実行され、これにより、秘密にされた暗号化キーの漏洩を防ぎ、他の要素を危険に晒さない
    ことを特徴とする請求項13記載の記憶媒体。
  18. コンピュータで読み取り可能な以下のプログラム・コードを記憶するコンピュータで読み取り可能な記憶媒体において、
    (a)コンピュータ環境の信頼できないコンピュータ資源は信頼できると決定する要求を受領すると、前記信頼できないコンピュータ資源を信頼できるものとして、前記信頼できるコンピュータ資源が保障するプログラム・コードと、
    前記プログラム・コード(a)は、以下からなるグループから選択された少なくとも一つの基準を満たした時に、行われ、
    (i)前記信頼されたコンピュータ資源が、前記信頼できないコンピュータ資源をセットアップしたこと又は活性化したことに、直接関連し、
    (ii)前記信頼されたコンピュータ資源が、前記信頼できないコンピュータ資源を信頼できると認証する信任状又は特定の情報のデータベースへアクセスすること、
    (b)前記信頼されたコンピュータ資源を含む前記コンピュータ資源の何れか上に現れる必要のある秘密を隠すプログラム・コードと、
    前記秘密は、前記コンピュータ資源毎に異なる方法で秘密され、
    (c)前記秘密を、前記プログラム・コード(b)を変えてながら、前記信頼されたコンピュータ資源を含む前記コンピュータ資源のいずれもが前記秘密を知ることがないように、前記コンピュータ資源の何れかから他のコンピュータ資源へ送信するプログラム・コードと、
    を有することを特徴とするコンピュータで読み取り可能な以下のプログラム・コードを記憶するコンピュータで読み取り可能な記憶媒体。





JP2014542996A 2011-11-28 2012-11-28 仮想化とクラウド・コンピューティングの安全確保と管理に適用される、安全未確保のコンピュータ環境で暗号化キーを確保する方法と装置。 Pending JP2015503280A (ja)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US201161563893P 2011-11-28 2011-11-28
US61/563,893 2011-11-28
US201261603383P 2012-02-27 2012-02-27
US61/603,383 2012-02-27
PCT/IL2012/050483 WO2013080204A1 (en) 2011-11-28 2012-11-28 Methods and devices for securing keys for a non-secured, distributed environment with applications to virtualization and cloud-computing security and management

Related Child Applications (1)

Application Number Title Priority Date Filing Date
JP2015215323A Division JP6456805B2 (ja) 2011-11-28 2015-10-31 仮想化とクラウド・コンピューティングの安全確保と管理に適用される、安全未確保のコンピュータ環境でキーの安全を確保する方法と装置。

Publications (1)

Publication Number Publication Date
JP2015503280A true JP2015503280A (ja) 2015-01-29

Family

ID=48534763

Family Applications (3)

Application Number Title Priority Date Filing Date
JP2014542996A Pending JP2015503280A (ja) 2011-11-28 2012-11-28 仮想化とクラウド・コンピューティングの安全確保と管理に適用される、安全未確保のコンピュータ環境で暗号化キーを確保する方法と装置。
JP2015215323A Expired - Fee Related JP6456805B2 (ja) 2011-11-28 2015-10-31 仮想化とクラウド・コンピューティングの安全確保と管理に適用される、安全未確保のコンピュータ環境でキーの安全を確保する方法と装置。
JP2017092060A Active JP6525478B2 (ja) 2011-11-28 2017-05-05 仮想化とクラウド・コンピューティングの安全確保と管理に適用される、 安全未確保のコンピュータ環境で暗号化キーを確保する方法と装置。

Family Applications After (2)

Application Number Title Priority Date Filing Date
JP2015215323A Expired - Fee Related JP6456805B2 (ja) 2011-11-28 2015-10-31 仮想化とクラウド・コンピューティングの安全確保と管理に適用される、安全未確保のコンピュータ環境でキーの安全を確保する方法と装置。
JP2017092060A Active JP6525478B2 (ja) 2011-11-28 2017-05-05 仮想化とクラウド・コンピューティングの安全確保と管理に適用される、 安全未確保のコンピュータ環境で暗号化キーを確保する方法と装置。

Country Status (4)

Country Link
US (2) US9380036B2 (ja)
EP (2) EP2786292B1 (ja)
JP (3) JP2015503280A (ja)
WO (1) WO2013080204A1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPWO2019026372A1 (ja) * 2017-08-04 2020-06-18 ソニー株式会社 情報処理装置、情報処理方法およびプログラム

Families Citing this family (31)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9203847B2 (en) * 2012-06-26 2015-12-01 At&T Intellectual Property I, L.P. Detection and management of unauthorized use of cloud computing services
CN103347073B (zh) * 2013-07-02 2016-04-27 北京大学 一种云管理行为安全控制方法和系统
US9298942B1 (en) * 2013-12-31 2016-03-29 Google Inc. Encrypted augmentation storage
JP6287282B2 (ja) * 2014-02-04 2018-03-07 日本電気株式会社 情報処理装置及び情報処理方法、情報処理システム、並びにコンピュータ・プログラム
JP6234607B2 (ja) * 2014-03-07 2017-11-22 ノキア テクノロジーズ オーユー 処理されたデータを検証する方法および装置
US9660805B2 (en) * 2014-05-14 2017-05-23 Porticor Ltd. Methods and devices for securing keys when key-management processes are subverted by an adversary
EP3158497B1 (en) * 2014-06-23 2020-02-26 Porticor Ltd. Methods and devices for key management in an as-a-service context
CN105337736B (zh) * 2014-06-30 2018-10-30 华为技术有限公司 全同态消息认证方法、装置及系统
US10333696B2 (en) 2015-01-12 2019-06-25 X-Prime, Inc. Systems and methods for implementing an efficient, scalable homomorphic transformation of encrypted data with minimal data expansion and improved processing efficiency
WO2016182509A1 (en) * 2015-05-13 2016-11-17 Agency For Science, Technology And Research Network system, and methods of encrypting data, decrypting encrypted data in the same
US10110566B2 (en) * 2015-07-21 2018-10-23 Baffle, Inc. Systems and processes for executing private programs on untrusted computers
ES2926930T3 (es) * 2017-05-30 2022-10-31 Be Invest Int Sa Método general de protección de datos para almacenamiento y uso compartido de datos confidenciales multicéntricos
CN107257381B (zh) * 2017-07-03 2021-03-26 深圳大学 一种隐私保护空间众包的任务分配系统模型及实现方法
CN107682379A (zh) * 2017-11-22 2018-02-09 南京汽车集团有限公司 基于同态加密的信息安全传输装置、传输方法及存储方法
US10887293B2 (en) 2018-03-20 2021-01-05 International Business Machines Corporation Key identifiers in an obliviousness pseudorandom function (OPRF)-based key management service (KMS)
US10887088B2 (en) * 2018-03-20 2021-01-05 International Business Machines Corporation Virtualizing a key hierarchy using a partially-oblivious pseudorandom function (P-OPRF)
US10841080B2 (en) 2018-03-20 2020-11-17 International Business Machines Corporation Oblivious pseudorandom function in a key management system
US10826694B2 (en) * 2018-04-23 2020-11-03 International Business Machines Corporation Method for leakage-resilient distributed function evaluation with CPU-enclaves
US10841081B2 (en) * 2018-05-15 2020-11-17 International Business Machines Corporation Threshold oblivious pseudorandom function in a key management system
US11115206B2 (en) 2018-08-23 2021-09-07 International Business Machines Corporation Assymetric structured key recovering using oblivious pseudorandom function
US10924267B2 (en) 2018-08-24 2021-02-16 International Business Machines Corporation Validating keys derived from an oblivious pseudorandom function
US10985912B2 (en) * 2018-10-05 2021-04-20 Intuit Inc. Homomorphic key derivation
US10970378B2 (en) * 2019-05-13 2021-04-06 Cyberark Software Ltd. Secure generation and verification of machine-readable visual codes
US11121882B2 (en) * 2019-07-25 2021-09-14 EMC IP Holding Company LLC Blinding techniques for protection of private keys in message signing based on elliptic curve cryptography
US11263310B2 (en) * 2019-11-26 2022-03-01 Red Hat, Inc. Using a trusted execution environment for a proof-of-work key wrapping scheme that verifies remote device capabilities
US11520878B2 (en) * 2019-11-26 2022-12-06 Red Hat, Inc. Using a trusted execution environment for a proof-of-work key wrapping scheme that restricts execution based on device capabilities
US11343069B2 (en) * 2020-02-06 2022-05-24 Intuit Inc. Oracle-aided protocol for compact data storage for applications using computations over fully homomorphic encrypted data
US11251944B2 (en) 2020-02-21 2022-02-15 Nutanix, Inc. Secure storage and usage of cryptography keys
US11637817B2 (en) * 2020-03-12 2023-04-25 Springcoin, Inc. Method and apparatus for effecting a data-based activity
CN114338124B (zh) * 2021-12-23 2024-04-12 成都卫士通信息产业股份有限公司 云密码计算服务的管理方法、系统、电子设备及存储介质
US11818260B1 (en) * 2022-12-15 2023-11-14 Intuit Inc. Systems and methods for blocking decryption capabilities in symmetric key encryption

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20100299313A1 (en) * 2009-05-19 2010-11-25 Security First Corp. Systems and methods for securing data in the cloud
WO2011050967A1 (en) * 2009-10-29 2011-05-05 Nec Europe Ltd. Method for supporting a reputation mechanism in a network and network

Family Cites Families (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6577734B1 (en) * 1995-10-31 2003-06-10 Lucent Technologies Inc. Data encryption key management system
US5991414A (en) * 1997-09-12 1999-11-23 International Business Machines Corporation Method and apparatus for the secure distributed storage and retrieval of information
US7079653B2 (en) * 1998-02-13 2006-07-18 Tecsec, Inc. Cryptographic key split binding process and apparatus
JP3820777B2 (ja) * 1998-11-12 2006-09-13 富士ゼロックス株式会社 秘密鍵寄託システムおよび方法
US6636968B1 (en) * 1999-03-25 2003-10-21 Koninklijke Philips Electronics N.V. Multi-node encryption and key delivery
CA2304433A1 (en) * 2000-04-05 2001-10-05 Cloakware Corporation General purpose access recovery scheme
US7266687B2 (en) * 2001-02-16 2007-09-04 Motorola, Inc. Method and apparatus for storing and distributing encryption keys
US20030174840A1 (en) * 2002-03-12 2003-09-18 Bogan William B. Encryption method for preventing unauthorized dissemination of protected data
JP4690007B2 (ja) * 2004-01-22 2011-06-01 Kddi株式会社 通信システムおよび通信端末
GB2415064B (en) * 2004-06-10 2008-01-09 Symbian Software Ltd Computing device with a process-based keystore and method for operating a computing device
EP1763946B1 (en) * 2004-06-29 2008-11-26 Koninklijke Philips Electronics N.V. System and methods for efficient authentication of medical wireless ad hoc network nodes
US7472105B2 (en) * 2004-10-19 2008-12-30 Palo Alto Research Center Incorporated System and method for providing private inference control
WO2007016787A2 (en) * 2005-08-09 2007-02-15 Nexsan Technologies Canada Inc. Data archiving system
US8050410B2 (en) * 2006-12-08 2011-11-01 Uti Limited Partnership Distributed encryption methods and systems
EP2108145A4 (en) * 2007-01-26 2011-12-07 Safenet Inc PROTECTING CONFIDENTIAL INFORMATION IN AN INVALIDATE RECIPIENT
US20080219449A1 (en) * 2007-03-09 2008-09-11 Ball Matthew V Cryptographic key management for stored data
US8213620B1 (en) * 2008-11-17 2012-07-03 Netapp, Inc. Method for managing cryptographic information
US8505084B2 (en) * 2009-04-06 2013-08-06 Microsoft Corporation Data access programming model for occasionally connected applications
US8468368B2 (en) * 2009-12-29 2013-06-18 Cleversafe, Inc. Data encryption parameter dispersal
US9922063B2 (en) * 2009-12-29 2018-03-20 International Business Machines Corporation Secure storage of secret data in a dispersed storage network
US8625802B2 (en) * 2010-06-16 2014-01-07 Porticor Ltd. Methods, devices, and media for secure key management in a non-secured, distributed, virtualized environment with applications to cloud-computing security and management
US8538029B2 (en) * 2011-03-24 2013-09-17 Hewlett-Packard Development Company, L.P. Encryption key fragment distribution

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20100299313A1 (en) * 2009-05-19 2010-11-25 Security First Corp. Systems and methods for securing data in the cloud
WO2011050967A1 (en) * 2009-10-29 2011-05-05 Nec Europe Ltd. Method for supporting a reputation mechanism in a network and network

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPWO2019026372A1 (ja) * 2017-08-04 2020-06-18 ソニー株式会社 情報処理装置、情報処理方法およびプログラム

Also Published As

Publication number Publication date
EP2786292A4 (en) 2015-05-27
WO2013080204A1 (en) 2013-06-06
JP2017139811A (ja) 2017-08-10
US9380037B2 (en) 2016-06-28
EP2786292A1 (en) 2014-10-08
EP3089399B1 (en) 2019-07-24
US9380036B2 (en) 2016-06-28
US20150143111A1 (en) 2015-05-21
EP3089399A1 (en) 2016-11-02
JP6456805B2 (ja) 2019-01-23
EP2786292B1 (en) 2016-06-08
US20130247230A1 (en) 2013-09-19
JP6525478B2 (ja) 2019-06-05
JP2016054501A (ja) 2016-04-14

Similar Documents

Publication Publication Date Title
JP6525478B2 (ja) 仮想化とクラウド・コンピューティングの安全確保と管理に適用される、 安全未確保のコンピュータ環境で暗号化キーを確保する方法と装置。
Ali et al. SeDaSC: secure data sharing in clouds
Sanka et al. Secure data access in cloud computing
Zhao et al. Trusted data sharing over untrusted cloud storage providers
US8059818B2 (en) Accessing protected data on network storage from multiple devices
TWI701929B (zh) 密碼運算、創建工作密鑰的方法、密碼服務平台及設備
US20050157880A1 (en) Computer system having an autonomous process for centralized cryptographic key administration
CN102710605A (zh) 一种云制造环境下的信息安全管控方法
US20020071563A1 (en) Method and apparatus for cryptographic key rollover during operation
CN114091058A (zh) 在第一区域和第二区域间数据安全共享的方法和系统
KR100984275B1 (ko) 안전하지 않은 통신 채널에서 비인증서 공개키를 사용한 보안키 생성 방법
Zhao et al. PKI-based authentication mechanisms in grid systems
KR101389981B1 (ko) 퍼블릭 클라우드 스토리지 서비스를 위한 데이터 위임 및 엑세스 방법
Giron Migrating Applications to Post-Quantum Cryptography: Beyond Algorithm Replacement
Priya et al. A survey: attribute based encryption for secure cloud
Schiefer et al. Security in a distributed key management approach
Chavan et al. Efficient Attribute Based Encryption Outsourcing in Cloud Storage with User Revocation
Lin et al. A Certificate Management Mechanism Using Distributed Ledger
Das Secure resource sharing in grid system without public key settings
Baskaran et al. Secure Data Transmission With Multiple Key Management In Cloud Environment
WO2023218488A1 (en) Revocable personal linked data (r_pld): encryption protocol for shared consensus over attributes and keys in lattice-based encryption, supporting direct and indirect revocation and delegated roles
Kowalski CRYPTOBOX V2.
CA3231904A1 (en) System and method of creating symmetric keys using elliptic curve cryptography
Chew et al. Efficient key assignment scheme for mobile agent systems
Chawla Registration and Authentication Protocol for OCEAN:(Open Computation Exchange and Auctioning Network)

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20141021

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20141125

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20141202

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20150205

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20150319

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20150421

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20150701