JP2015516638A - 複数のストレージ・サービス・プロバイダに分散され格納されているファイルの機密性を保護するための方法 - Google Patents

複数のストレージ・サービス・プロバイダに分散され格納されているファイルの機密性を保護するための方法 Download PDF

Info

Publication number
JP2015516638A
JP2015516638A JP2015511969A JP2015511969A JP2015516638A JP 2015516638 A JP2015516638 A JP 2015516638A JP 2015511969 A JP2015511969 A JP 2015511969A JP 2015511969 A JP2015511969 A JP 2015511969A JP 2015516638 A JP2015516638 A JP 2015516638A
Authority
JP
Japan
Prior art keywords
file
coefficients
identifier
provider
storing
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.)
Granted
Application number
JP2015511969A
Other languages
English (en)
Other versions
JP5944047B2 (ja
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 JP2015516638A publication Critical patent/JP2015516638A/ja
Application granted granted Critical
Publication of JP5944047B2 publication Critical patent/JP5944047B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • 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
    • 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/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6209Protecting access to data via a platform, e.g. using keys or access control rules to a single file or object, e.g. in a secure envelope, encrypted and accessed using a key, or with access control rules appended to the object itself
    • 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
    • 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
    • G06F21/6227Protecting 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 where protection concerns the structure of data, e.g. records, types, queries
    • 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
    • G06F21/6272Protecting 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 by registering files or documents with a third party
    • 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/64Protecting data integrity, e.g. using checksums, certificates or signatures
    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0604Improving or facilitating administration, e.g. storage management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0604Improving or facilitating administration, e.g. storage management
    • G06F3/0605Improving or facilitating administration, e.g. storage management by facilitating the interaction with a user or administrator
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0604Improving or facilitating administration, e.g. storage management
    • G06F3/0607Improving or facilitating administration, e.g. storage management by facilitating the process of upgrading existing storage systems, e.g. for improving compatibility between host and storage device
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/062Securing storage systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0638Organizing or formatting or addressing of data
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/067Distributed or networked storage systems, e.g. storage area networks [SAN], network attached storage [NAS]

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Health & Medical Sciences (AREA)
  • General Engineering & Computer Science (AREA)
  • Bioethics (AREA)
  • General Health & Medical Sciences (AREA)
  • Computer Hardware Design (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Databases & Information Systems (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Storage Device Security (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

この方法は、セキュリティ・パラメータnを選択する(1)ステップと、ファイルをn個のチャンクS1,・・・,Snに分割する(2)ステップと、i=1,・・・,nおよびj=1,・・・,nに対して、n2個の係数aijをランダムに選択する(3)ステップと、i=1,・・・,nに対して、ベクトルai1,・・・,ainが1次独立であることを確認する(3)ステップであって、そうでない場合には、係数を再度生成するステップと、i=1,・・・,nに対して、n個の1次結合Ci=ai1・S1+・・・+aij・Sj+・・・+ain・Snを計算する(4)ステップと、複数のストレージ・サービス・プロバイダの間で、n個のストレージ・サービス・プロバイダO1,・・・,Onを選択する(5)ステップと、ファイル(F)を指定するn個のファイル識別子ID’1,・・・,ID’nを生成する(6a;6b;6c)ステップと、i=1,・・・,nに対して、ファイル識別子ID’iと関連して、ストレージ・サービス・プロバイダOiに、結合Ciを格納する(6a;6b;6c)ステップと、i=1,・・・,nに対して、ファイル識別子ID’iとプロバイダ識別子Oiとを、ファイル(F)に対応しておりローカル・メモリ(LM)に格納されているファイル記述子に格納するステップと、i=1,・・・,nに対して、結合Ciと再度関連付けられることが可能であるように、係数の組ai1,・・・,ainを格納するステップと、j=1,・・・,nに対して、n個のスーパ係数a’1,・・・,a’j,・・・,a’nをランダムに選択するステップと、1次オーバ結合OC’=a’i・C1+・・・+a’j・Cj+・・・+a’n・Cnを計算するステップと、j=1,・・・,nに対して、オーバ結合OC’と係数a’1,・・・,a’j,・・・,a’nとを格納するステップと、を含む。

Description

本発明は、一般に、複数のストレージ・サービス・プロバイダに分散され格納されているファイルの機密性を保護することに関する。特に、本発明は、クラウド・ストレージに関係する。クラウド・ストレージは、一般に第三者によってホストされるストレージの仮想的なプールにデータが格納される、ネットワーク接続されたオンライン・ストレージのモデルである。ホスト側の企業が、大規模なデータ・センタを運営し、自らのデータがホストされることを必要とする人々は、ホスト側の企業から、ストレージ容量を購入またはリースする。データ・センタのオペレータは、バックグラウンドで、顧客の要求に従ってリソースを仮想化し、リソースをストレージ・プールとして公開するのであるが、顧客たちは、それを、ファイルやデータ・オブジェクトを格納するために、自分自身で用いることができる。物理的には、リソースが複数のサーバにまたがることがあり得る。
予防策が講じられない場合には、格納されているすべてのデータが、潜在的には(例えば、情報をクライアントの競合企業に転売するなどの)害意をもってそのデータを用いることができるクラウド・オペレータによって、アクセスされることが可能である。更に、クラウド・オペレータが正直者であるとしても、格納されているデータの機密性が、単独の企業ネットワークを攻撃するよりも複数の企業およびユーザのデータが集積されているデータ・センタを攻撃することにより大きな利益を有する攻撃者によって、損なわれる可能性がある。従って、ストレージ・サービス・プロバイダにおけるデータの機密性を保護する必要性が存在する。
1つの既知の解決策は、そのストレージをアウトソースする前に、データを暗号化することから構成されている。この解決策の短所は、そのため(格納のための暗号化および検索のための復号化)にリソースが消費されることである。更に、そのためには、各データ・パケットを暗号化するのに用いられる複数の鍵を追跡するという鍵管理プロセスが必要となる。それは、更に、複数の鍵を安全に格納することを意味する。というのは、鍵が漏れた場合、それはデータへの完全なアクセスを与えることになるからである。
既知である別の解決策は、データを複数のチャンクに分割し、異なる複数のストレージ・サービス・プロバイダに、それらのいずれもが完全なデータへのアクセスを有することのないように、チャンクをそれぞれ格納することから構成される。この解決策は、各ストレージ・サービス・プロバイダは、そのストレージ・サービス・プロバイダが格納しているチャンクへのアクセスを有する、という短所を有する。よって、そのストレージ・サービス・プロバイダは、依然として、そのチャンクから何らかの機密情報を引き出すことができる。対抗策としては、各チャンクを更に暗号化することであるが、それには、先の解決策の短所が伴う。
既知である別の解決策が、PAULO F OLIVERAおよび他による「GLOBECOM 2010, 2010 IEEE GLOBAL TELECOMMUNICATIONS CONFERENCE, IEEE, PISCATAWAY, NJ, USA, 6 December 2010」における「Trusted Storage over Untrusted Networks」という記事に記載されている。この解決策は、
セキュリティ・パラメータnを選択し、ファイルをn個のチャンクS,・・・,Sに分割するステップと、
j=1,・・・,nに対して、n個の係数aを、ランダムに、すべてのaが相互に異なるように、選択するステップと、
次に、i=1,・・・,nおよびj=1,・・・,nに対して、ファンデルモンド(Vandermonde)行列(a i−1)を生成することによって、n個の係数aijを生成するステップと、
i=1,・・・,nに対して、n個の1次結合C=ai1・S+・・・+aij・S+・・・+ain・Sを計算するステップと、
2つの異なるストレージ・サービス・プロバイダを選択して、第1のストレージ・サービス・プロバイダに1次結合の一部を、第2のストレージ・サービス・プロバイダに残りの1次結合を格納するステップと、
を含む。
j=1,・・・,nとして、ランダムに選択されたn個の係数aは、相互に異なっており相互に独立であるが、n個の係数aijのほとんどは、ファンデルモンド行列(a i−1)を生成することによって得られているため、相互に独立でない。
PAULO F OLIVERA ET AL: "Trusted Storage over Untrusted Networks", GLOBECOM 2010, 2010 IEEE GLOBAL TELECOMMUNICATIONS CONFERENCE, IEEE, PISCATAWAY, NJ, USA, 6 December 2010
本発明の目標は、複数のストレージ・サービス・プロバイダに分散され格納されているデータの機密性を保護するためのより安全な技術的解決策を提供することである。
これは、本発明による方法を適用することによって、解決可能である。
本発明の第1の目的は、複数のストレージ・サービス・プロバイダに分散され、格納されているファイルの機密性を保護するための方法であって、
セキュリティ・パラメータnを選択するステップと、
ファイルをn個のチャンクS,・・・,Sに分割するステップと、
i=1,・・・,nおよびj=1,・・・,nに対して、n個の係数aijを選択するステップと、
i=1,・・・,nに対して、ベクトルai1,・・・,ainが1次独立であることを確認するステップであって、そうでない場合には、係数を再度生成するステップと、
i=1,・・・,nに対して、n個の1次結合C=ai1・S+・・・+aij・S+・・・+ain・Sを計算するステップと、
前記複数のストレージ・サービス・プロバイダの間で、n個のストレージ・サービス・プロバイダO,・・・,Oを選択するステップと、
前記ファイルを指定するn個のファイル識別子ID’,・・・,ID’を生成するステップと、
i=1,・・・,nに対して、ファイル識別子ID’と関連するストレージ・サービス・プロバイダOに、結合Cを格納するステップと、
i=1,・・・,nに対して、ファイル識別子ID’とプロバイダ識別子Oとを、ファイルに対応しておりローカル・メモリに格納されているファイル記述子に格納するステップと、
i=1,・・・,nに対して、結合Cと再度関連付けられることが可能であるように、係数ai1,・・・,ainの組を格納するステップと、
を含む方法において、
i=1,・・・,nおよびj=1,・・・,nに対して、前記n個の係数aijをランダムに選択するステップと、
i=1,・・・,nに対して、ベクトルai1,・・・,ainが1次独立であることを確認するステップであって、そうでない場合には、係数を再度生成するステップと、
j=1,・・・,nに対して、n個のスーパ係数a’,・・・,a’,・・・,a’をランダムに選択するステップと、
1次オーバ結合(linear over−combination)OC’=a’・C+・・・+a’・C+・・・+a’・Cを計算するステップと、
j=1,・・・,nに対して、オーバ結合OC’と係数a’,・・・,a’,・・・,a’とを格納するステップと、
を更に含むことを特徴とする方法である。
分散され格納されるファイルのすべてのチャンクの1次結合Cを計算し、次いで、それらの結合を、複数のストレージ・サービス・プロバイダにそれぞれ格納するという事実により、暗号化または鍵の管理を必要とすることなく、ファイルの機密性が保護されるのであるが、その理由は、元のファイルの任意のチャンクを検索するためには、すべての結合を得ることが必要であるからである。よって、プロバイダは、n個のプロバイダすべてが共謀しない限り、これらの結合からどの情報も抽出することができない。n個のランダムに選択された係数とオーバ結合とを用いるという事実により、セキュリティが向上する。
複数のストレージ・サービス・プロバイダに分散され、格納されているファイルの機密性を保護するための方法の第1の特徴的な実施形態によれば、i=1,・・・,nに対して、結合Cと再度関連付けられることが可能であるように、係数の組ai1,・・・,ainを格納するステップは、i=1,・・・,nに対して、結合Cおよびファイル識別子ID’と関連して、ストレージ・サービス・プロバイダOに、それらを格納するステップを含む。
複数のストレージ・サービス・プロバイダに分散され、格納されているファイルの機密性を保護するための方法の第2の特徴的な実施形態によれば、i=1,・・・,nに対して、結合Cと再度関連付けられることが可能であるように、係数の組ai1,・・・,ainを格納するステップは、
i=1,・・・,nおよび1≦k≦nでありiと異なるkに対して、結合Cおよびファイル識別子ID’と関連して、係数の組ai1,・・・,ainを、ストレージ・サービス・プロバイダOに格納するステップと、
i=1,・・・,nに対して、係数の組ai1,・・・,ainと結合Cとを再度関連付けることを可能にする置換(permutation)を、ファイル(F)と対応しており前記ローカル・メモリに格納されている前記ファイル記述子に格納するステップと、
を含む。
複数のストレージ・サービス・プロバイダに分散され、格納されているファイルの機密性を保護するための方法の第3の特徴的な実施形態によれば、i=1,・・・,nに対して、結合Cと再度関連付けられることが可能であるように、係数の組ai1,・・・,ainを格納するステップは、i=1,・・・,nに対して、係数の組ai1,・・・,ainを、ファイル識別子ID’およびプロバイダ識別子Oに関連して、ファイルに対応しており前記ローカル・メモリに格納されている前記ファイル記述子に格納するステップを含む。
本発明の別の目的は、本発明による方法によって保護されているファイルを検索するための方法であって、
ファイルに対応しておりローカル・メモリに格納されているファイル記述子において、前記ファイルを指定するn個のファイル識別子ID’,・・・,ID’を読み出し、プロバイダ識別子O,・・・,Oを読み出すステップと、
n個のファイル識別子ID’,・・・,ID’を、それぞれ、プロバイダ識別子O,・・・,Oによって指定されるストレージ・サービス・プロバイダに送るステップと、
n個の結合C,・・・,Cを、プロバイダ識別子O,・・・,Oによって指定されるプロバイダから受け取るステップと、
i=1,・・・,nに対して、n個の結合C,・・・,Cにそれぞれ対応する係数のn個の組ai1,・・・,ainを検索するステップと、
i=1,・・・,nに対して、各結合Cを、係数の対応する組ai1,・・・,ainと関連付けるステップと、
i=1,・・・,nに対して係数のn個の組bi1,・・・,binから構成される別の行列を得るために、i=1,・・・,nに対して係数のn個の組ai1,・・・,ainから構成される行列の逆行列を計算するステップと、
そして、前記ファイルFのn個のチャンクS,・・・,Sを、i=1,・・・,nに対してS=bi1・C+・・・+bij・C+・・・+bin・Cとして計算するステップと、
そして、ファイルFを復元するために、チャンクS,・・・,Sを再度組み立てるステップと、
を含む方法において、
j=1,・・・,nに対して、オーバ結合OC’と係数a’,・・・,a’,・・・,a’とを読み出すステップと、
i=1,・・・,nに対して係数のn個の組bi1,・・・,binから構成される別の行列を得るために、i=1,・・・,n−1に対する係数のn−1個の組ai1,・・・,ainと、j=1,・・・,nに対する1組の係数(a’・a1j+・・・+a’・aij+・・・+a’・anj)とから構成される行列の逆行列を計算するステップと、
そして、前記ファイル(F)のn個のチャンクS,・・・,Sを、i=1,・・・,nに対して、S=bi1・C+・・・+bij・C+・・・+bin−1・Cn−1+bin・OC’として計算するステップと、
そして、ファイル(F)を復元するために、チャンクS,・・・,Sを再度組み立てるステップと、
を更に含むことを特徴とする方法である。
ファイルを検索するための方法の第1の特徴的な実施形態によれば、i=1,・・・,nに対して、n個の結合C,・・・,Cにそれぞれ対応する係数のn個の組ai1,・・・,ainを検索するステップは、プロバイダ識別子O,・・・,Oによって指定されるプロバイダからそれらを受け取るステップを含む。そして、i=1,・・・,nに対して、各結合Cを、係数の対応する組ai1,・・・,ainと関連付けるステップは、結合Cを係数の組ai1,・・・,ainと直接関連付けるステップを含む。
ファイルを検索するための方法の第2の特徴的な実施形態によれば、i=1,・・・,nに対して、n個の結合C,・・・,Cにそれぞれ対応する係数のn個の組ai1,・・・,ainを検索するステップは、プロバイダ識別子O,・・・,Oによって指定されるプロバイダからそれらを受け取るステップを含み、
i=1,・・・,nに対して、各結合Cを、係数の対応する組ai1,・・・,ainと関連付けるステップは、
前記ファイルに対応するファイル記述子において置換を読み出すステップと、
i=1,・・・,nに対して、各結合Cが係数の対応する組ai1,・・・,ainと関連付けられるように、i=1,・・・,nに対して、置換を係数のn個の組ai1,・・・,ainに適用するステップと、
を含む。
ファイルを検索するための方法の第3の特徴的な実施形態によれば、i=1,・・・,nに対して、n個の結合C,・・・,Cにそれぞれ対応する係数のn個の組ai1,・・・,ainを検索するステップは、前記ファイルに対応するファイル記述子においてそれらを読み出すステップを含み、
i=1,・・・,nに対して、各結合Cを、係数の対応する組ai1,・・・,ainと関連付けるステップは、i=1,・・・,nに対して、係数の組ai1,・・・,ainを、結合Cに直接関連付けるステップを含む。
本発明の別の目的は、複数のストレージ・サービス・プロバイダに分散され、格納されているファイルの機密性を保護するための方法であって、格納は一度だけ行われるが、検索は多くの回数または多くのエンティティによって行われるような状況に特によく適しており、
セキュリティ・パラメータnを選択するステップと、
ファイルをn個のチャンクS,・・・,Sに分割するステップと、
i=1,・・・,nおよびj=1,・・・,nに対して、n個の係数aijをランダムに選択するステップと、
i=1,・・・,nに対して、ベクトルai1,・・・,ainが1次独立であることを確認するステップであって、そうでない場合には、係数を再度生成するステップと、
i=1,・・・,nに対して、n個の1次結合C=ai1・S+・・・+aij・S+・・・+ain・Sを計算するステップと、
前記複数のストレージ・サービス・プロバイダの間で、n個のストレージ・サービス・プロバイダO,・・・,Oを選択するステップと、
前記ファイルを指定するn個のファイル識別子ID’,・・・,ID’を生成するステップと、
i=1,・・・,nに対して、ファイル識別子ID’と関連して、ストレージ・サービス・プロバイダOに、結合Cを格納するステップと、
i=1,・・・,nに対して、ファイル識別子ID’とプロバイダ識別子Oとを、ファイルに対応しておりローカル・メモリに格納されているファイル記述子に格納するステップと、
i=1,・・・,nに対して係数のn個の組bi1,・・・,binから構成される別の行列を得るために、i=1,・・・,nに対して係数のn個の組ai1,・・・,ainから構成される行列の逆行列を計算するステップと、
i=1,・・・,nに対して、結合Cと再度関連付けられることが可能であるように、係数bi1,・・・,binの組を格納するステップと、
を含む方法である。
本発明の別の目的は、この直前の方法によって保護されているファイルを検索するための方法である。この方法は、
ファイル(F)に対応しておりローカル・メモリに格納されているファイル記述子において、前記ファイルを指定するn個のファイル識別子ID’,・・・,ID’を読み出し、プロバイダ識別子O,・・・,Oを読み出すステップと、
n個のファイル識別子ID’,・・・,ID’を、それぞれ、プロバイダ識別子O,・・・,Oによって指定されるストレージ・サービス・プロバイダに送るステップと、
n個の結合C,・・・,Cを、プロバイダ識別子O,・・・,Oによって指定されるこれらのプロバイダから受け取るステップと、
i=1,・・・,nに対して、n個の結合C,・・・,Cにそれぞれ対応する係数のn個の組bi1,・・・,binを検索するステップと、
i=1,・・・,nに対して、各結合Cを、係数の対応する組bi1,・・・,binと関連付けるステップと、
i=1,・・・,nに対して、前記ファイルのチャンクS,・・・,Sを、S=bi1・C+・・・+bij・C+・・・+bin・Cとして計算するステップと、
そして、ファイルFを復元するために、チャンクS,・・・,Sを再度組み立てるステップと、
を含む。
本発明の他の特徴および効果は、添付の図面と共に考察されることによって、本発明の実施形態に関する以下の詳細な説明から、より明らかになるであろう。
本発明の実施形態の特徴および効果を詳細に例証するために、以下の説明は、添付の図面を参照してなされる。可能な場合には、同様または類似の参照番号は、次の複数の図面および説明を通じて、同じまたは類似の構成要素を示す。
本発明によるファイルを保護するための方法の3つの実施形態に共通する第1のステップの図である。 本発明によるファイルを保護するための方法の3つの実施形態の1つに特有のステップの図である。 本発明によるファイルを保護するための方法の3つの実施形態の1つに特有のステップの図である。 本発明によるファイルを保護するための方法の3つの実施形態の1つに特有のステップの図である。 本発明によって保護されているファイルを検索するための方法の3つの実施形態の中の1つの図である。 本発明によって保護されているファイルを検索するための方法の3つの実施形態の中の1つの図である。 本発明によって保護されているファイルを検索するための方法の3つの実施形態の中の1つの図である。 本発明によるファイルを保護するための方法の3つの他の実施形態に共通である第1のステップの図である。これらの実施形態は、格納は一度だけ行われるが、検索は多くの回数または多くのエンティティによって行われるような状況に特によく適している。
図1は、本発明によるファイルを保護するための方法の3つの実施形態に共通するステップの図を示している。例えば、本発明者らは、ストレージに制約があるデバイス(例えば、携帯電話やタブレット)を有していて、大きなファイルの格納をアウトソースすることを希望しているユーザを考察する。このユーザは、彼/彼女が既にそこにアカウントを有していて、関連の契約を有していることにより用いることができるm個の利用可能なストレージ・サービス・プロバイダを知っていると、本発明者らは仮定する。
提案される方法は、デバイスに以下の手段が備わっていることを要求する。
1)一意的な識別子IDを、ストレージ・サービス・プロバイダに分散され格納される各ファイルFに関連付ける手段。このプロセスは、潜在的に複雑なものとなり得るが、ファイルの経路、またはタグ、またはファイル・システム・アーキテクチャと互換性を有する任意の他の既知の方法を用いることができる。
2)ユーザがセキュリティ・パラメータnを選択することを可能にする入力手段。このパラメータは、各ファイルに対して異なり得る。nの値が大きければ、より多くの計算が伴うことになるが、より多くのセキュリティも伴う。そのため、nの値は、制限、機密、秘密、・・・など、望まれる機密性のレベルに従って、選択することができる。
3)提案されている方法を遂行するコンピュータ実行可能な命令を含むプログラムを実行する計算手段。
ステップ1:ユーザが、利用可能なストレージ・サービス・プロバイダの個数mよりも小さいか、またはmと等しくなるように、セキュリティ・パラメータnを選択する。
ステップ2:計算手段が、ファイルFを、n個のチャンクS,・・・,Sに分割する。チャンクは、同じビット数を有していなければならない。チャンク当たりのビット数は、サイズ(F)/nよりも大きな最小の整数であり、演算がなされる体(field)(係数が選択されるのと同じ体である)のサイズpの倍数である。このプロセスは、同じサイズのn個のチャンクを有するために、ファイルのパディングを生じさせる。このタスクを実行するために、任意の標準的なパディング・アルゴリズムを、用いることができる。
ステップ3:計算手段が、i=1,・・・,nおよびj=1,・・・,nに対して、n個の係数aijをランダムに選択する。次に、i=1,・・・,nに対して、選択されたベクトル(ai1,・・・,ain)が1次独立であることを確認し、1次独立でない場合には、計算手段は、係数を再度生成する(ベクトルの組は、その要素の1次結合としてのゼロ・ベクトルの表現だけが自明な解である場合に、およびその場合に限り、1次独立である)。
ステップ4:計算手段が、n個の1次結合を、i=1,・・・,nに対して、C=ai1・S+・・・+aij・S+・・・+ain・Sとして計算する。
ステップ5:計算手段が、それらの結合が格納されるn個のストレージ・サービス・プロバイダを選択する(nは、mよりも小さいか、またはmに等しい)。計算手段は、m個の利用可能なストレージ・サービス・プロバイダの間で、格納され保護されるファイルの識別子IDの関数として、それらを選択する。計算手段は、選択されたストレージ・サービス・プロバイダを指定するそれぞれの識別子O,・・・,Oを供給する。この選択を実行するためには、多くの可能性が存在する。ランダムな選択が最も簡単であるが、よりよい選択方針を有するためには、選択規準として、パフォーマンス(負荷の均衡)、コスト(各プロバイダでの料金設定)、またはセキュリティ(プロバイダの評判)を考慮に入れることも可能であろう。選択方針に応じて、1つの特定のプロバイダをローカルなホスト自体とすることが可能であろうし、ある与えられたプロバイダを、複数回選択することも可能であろう(ただし、それによって、セキュリティが低下することがあり得る)。
次の複数のステップは、図2、3、4によってそれぞれ示されているステップ6a、ステップ6b、ステップ6cと称される3つのバリアントに従って、行うことが可能である。
図2は、ステップ6aを示す。すなわち、
計算手段は、やはりファイルFを指定しているがローカルなファイル識別子IDとは異なる新たな一意的なファイル識別子ID’を、ローカルな識別子IDの関数として、生成する。この関数は、ID’が与えられた場合に、IDを回復することを許容してはならないが、その理由は、この関数が、本質的に、例えばハッシュ関数のような一方向関数であるからである。この新たなファイル識別子ID’は、すべてのストレージ・サービス・プロバイダに公開される。
計算手段は、i=1,・・・,nとして、プロバイダOに、
結合Cと、
係数の組ai1,・・・,ainと、
ファイル識別子ID’と、
を送る。
プロバイダOは、結合Cと係数の組ai1,・・・,ainとを、ファイル識別子ID’と関連させて格納する。
計算手段は、ローカル・メモリLMに、ファイルFに対する非常に簡略なファイル記述子をローカルに格納する。このファイル記述子は、ファイルFを指定する識別子ID’と、選択されたストレージ・サービス・プロバイダを指定するプロバイダ識別子O,・・・,Oとを含む。
このバリアントaの改善策によれば、同じファイルFに対して、一意的なファイル識別子ID’を、異なる複数のファイル識別子ID’,・・・,ID’によって置き換えることも可能である。これらのファイル識別子ID’,・・・,ID’は、それぞれが、n個の選択されたプロバイダそれぞれにおいて、ローカル・メモリLMのファイルFに対応するファイル記述子に格納される。この改善策により、プロバイダが共謀する場合に、結合をリンクすることがより困難になる。
図3は、ステップ6bを示す。すなわち、
計算手段は、例えばハッシュ関数のような一方向関数によるローカルな識別子IDの関数として、しかしローカルなファイル識別子IDとは異なっており、やはりファイルFを指定する新たなファイル識別子ID’を生成する。この新たなファイル識別子ID’は、すべてのストレージ・サービス・プロバイダに公開される。
計算手段は、i=1,・・・,nとして、プロバイダOに、
ファイルFを指定する新たなファイル識別子ID’と、
結合Cと、
1≦k≦nであり、iとは異なるkに対して、別の結合Cに対応する係数の組ak1,・・・,aknと、
を送る。
係数の組ak1,・・・,aknは、i=1,・・・,nとして、ベクトル(ai1,・・・,ain)に適用された置換σによって決定される。すなわち、次の通りである。
(ak1,・・・,akn)=(aσ(n)1,・・・,aσ(n)i,・・・,aσ(n)n)=結合Cσ(i)に対応する係数
他方で、i=1,・・・,nとすると、結合Cσ(i)は、プロバイダOσ(i)において、係数の組ai1,・・・,ainと関連して、格納される。計算手段は、1からnまでの整数に対する置換σを定義する。基本的には、この置換は、1からnまでのすべての整数を順序通りではない態様で含むアレイ(σ(1),・・・,σ(i),・・・,σ(n))として、表現され得る。
計算手段は、i=1,・・・,nとして、プロバイダOに、
ファイルFを指定する新たなファイル識別子ID’と、
結合Cと、
係数の組ak1,・・・,aknと、
を、関連させて、格納する。
計算手段は、ローカル・メモリLMに、ファイルFに対する非常に簡略なファイル記述子をローカルに格納する。このファイル記述子は、
ファイルFを指定する識別子ID’と、
選択されたストレージ・サービス・プロバイダの識別子O,・・・,Oと、
(例えば、先に説明したアレイの形式での)置換σと、
を含む。
このバリアントaの改善策によれば、同じファイルFに対して、一意的なファイル識別子ID’を、異なる複数のファイル識別子ID’,・・・,ID’によって置き換えることも可能である。これらのファイル識別子ID’,・・・,ID’は、n個の選択されたプロバイダそれぞれにおいて、ローカル・メモリLMのファイルFに対応するファイル記述子に、それぞれ格納される。この改善策により、プロバイダが共謀する場合に、結合をリンクすることがより困難になる。
図4は、ステップ6cを示す。すなわち、
計算手段は、同じファイルFに対し、例えばハッシュ関数のような一方向関数によるローカルな識別子IDの関数として、異なる複数のファイル識別子ID’,・・・,ID’を生成する。計算手段は、i=1,・・・,nとして、プロバイダOに、ファイル識別子ID’と結合Cとを送るが、係数の組については、まったく送らない。
このバリアントcによれば、計算手段は、ローカル・メモリLMに、より大きなファイル記述子をローカルに格納する。i=1,・・・,nに対し、このファイル記述子は、トリプレットを含むのであるが、各トリプレットは、i=1,・・・,nに対して、
ファイルFを指定する識別子ID’と、
サービス・プロバイダ識別子Oと、
結合Cを構築するのに用いられた係数の組ai1,・・・,ainと、
を含む。
図5、6、7は、本発明によって保護されているファイルを検索するための方法の3つの実施形態を、それぞれ示す。検索は、ファイルを保護するための上述したステップ6のバリアント6a、6b、6cに対応する3つのバリアントa、b、cに従って、行われ得る。
図5は、バリアントaを示す。すなわち:
ファイルFを復元するために、デバイスの計算手段は、ある結合とこの結合に対応する係数の組とを、n個の選択されたストレージ・サービス・プロバイダのそれぞれに(任意の順序で)リクエストする。
ステップ51:計算手段が、ローカル・メモリLMにおいて、ファイルFに対応するファイル記述子に登録されているファイル識別子ID’とプロバイダ識別子O,・・・,Oとを読み出す。計算手段は、識別子ID’を、i=1,・・・,nに対するストレージ・サービス・プロバイダOに送る。
ステップ52:次に、計算手段は、i=1,・・・,nに対するプロバイダOから、
結合Cと、
係数の対応する組ai1,・・・,ainと、
を受け取る。
結合Cは、ファイルFを検索するプロセスのために、係数の組ai1,・・・,ainと直接関連付けられている。
ステップ53:次に、計算手段は、行列A=(aij)の逆行列を計算し、行列B=(bij)を得る。次に、計算手段は、元のチャンクを、i=1,・・・,nに対して、S=bi1・C+・・・+bij・C+・・・+bin・Cとして、計算する。
ステップ54:次に、計算手段は、チャンクS,・・・,Sを再組み立てし、ファイルFを復元するために、可能な限りパディングを除去する。
同じファイルFに対して異なる識別子ID’,・・・,ID’が各プロバイダにそれぞれ格納されている場合には、検索方法が修正されることに注意すべきである。その理由は、検索方法が、ローカル・メモリLMに格納されているファイル記述子において異なる識別子ID’,・・・,ID’を読み出し、一意的な識別子ID’を送る代わりに、識別子ID’,・・・,ID’をn個の選択されたプロバイダにそれぞれ送ることから構成される修正されたステップ51を含むからである。
図6は、バリアントbを示す。すなわち:
ファイルFを復元するために、デバイスの計算手段は、ある結合と係数の組とを、n個の選択されたストレージ・サービス・プロバイダのそれぞれに(任意の順序で)リクエストする。しかし、計算手段は、各結合を、この結合を計算するために用いられた係数の対応する組と再度関連付けなければならないのであり、その理由は、この結合と係数のこの組とは、同じストレージ・サービス・プロバイダに格納されたのではなかったからである。(Oによって格納されている係数の組に対応する)結合Cσ(i)がプロバイダOσ(i)に格納されているため、置換σが再度用いられなければならない。
ステップ61:
計算手段が、ローカル・メモリLMにおいて、ファイルFに対応するファイル記述子に登録されているファイル識別子ID’と、プロバイダ識別子O,・・・,Oと、置換σと、を読み出す。
計算手段は、識別子ID’を、プロバイダ識別子O,・・・,Oによって指定されているn個のストレージ・サービス・プロバイダに送る。
計算手段は、i=1,・・・,nに対するプロバイダOから、
結合Cと、
係数の組aσ(i)1,・・・,aσ(i)nと、を受け取る。
ステップ62:次に、計算手段は、i=1,・・・,nに対し、結合Cと係数の対応する組ai1,・・・,ainとを、置換手段σによって、再度関連付ける。
ステップ63:次に、計算手段は、行列A=(aij)の逆行列を計算し、行列B=(bij)を得る。そして、計算手段は、元のチャンクを、i=1,・・・,nに対して、S=bi1・C+・・・+bij・C+・・・+bin・Cとして、計算する。
ステップ64:次に、計算手段は、n個のチャンクS,・・・,Sを組み立て、可能な限りパディングを除去することによって、ファイルFを復元する。
図7は、バリアントcを示す。すなわち:
ファイルFを復元するために、デバイスの計算手段は、ある結合とこの結合に対応する係数の組とを、n個の選択されたストレージ・サービス・プロバイダのそれぞれに(任意の順序で)リクエストする。
ステップ71:計算手段が、ローカル・メモリLMにおいて、ファイルFに対応するファイル記述子に登録されているファイル識別子ID’,・・・,ID’と、プロバイダ識別子O,・・・,Oとを読み出す。
計算手段は、ファイル識別子ID’を、i=1,・・・,nに対するプロバイダOに送る(n個の識別子ID’,・・・,ID’は、相互に異なる)。
それに応答して、計算手段は、i=1,・・・,nに対するプロバイダOから、結合Cを受け取る。
ステップ72:計算手段は、ローカル・メモリLMにおいて、係数の組ai1,・・・,ainを読み出す。結合Cは、i=1,・・・,nに対して、係数の組ai1,・・・,ainと直接に関連している。
ステップ73:次に、計算手段は、行列A=(aij)の逆行列を計算し、行列B=(bij)を得る。次に、計算手段は、n個の元のチャンクを、i=1,・・・,nに対して、S=bi1・C+・・・+bij・C+・・・+bin・Cとして、計算する。
ステップ74:次に、計算手段は、n個のチャンクS,・・・,Sを組み立て、可能な限りパディングを除去することによって、ファイルFを復元する。
セキュリティ:
すべてのバリアントにおいて、方式の基本的なセキュリティは、結合C,・・・,Cがすべてなければ、どのチャンクSを復元することも不可能である、という事実に存する。従って、オペレータたちがファイルFの機密性を破る唯一の可能性は、全員で共謀することである。
バリアントa、bおよびcは、n人のオペレータ全員が共謀している場合、異なるレベルのセキュリティを提供する。すなわち、
バリアントa:彼ら全員が共謀する場合には、彼らはすべての結合と係数のすべての組とを得ることになり、従って、彼らはファイルF全体を検索することができる。
バリアントb:彼ら全員が共謀する場合には、彼らは結合と係数とをすべて得るが、ただし、結合と係数との間の対応を知ることはない。Fを検索するためには、彼らは、n!通りの対応可能性をすべて試みなければならない。nが十分に大きな場合、処理コストが、現実問題としては法外な額になる。
バリアントc:彼ら全員が共謀する場合には、彼らは結合を得るが、係数の組を知らないため、係数のすべての可能性がある組を試みない限り、ファイルFを検索することはできない。そして、係数のすべての可能性がある組を試みることは、計算論的に実行不可能であることが判明している(各係数がサイズpである体に属する場合には、p個の可能性が存在するため、pおよびnを注意深く選択することにより、容易に、このpの値が処理能力を超えるようにすることができる)。このバリアントcは、最高レベルのセキュリティを与えるのであるが、デバイスが係数をローカルに格納することを要求する。他方で、バリアントaおよびbでは、デバイスは、追加的な情報をいっさい格納する必要がない。
弾力性(オプションである改善策):
この方法の唯一の弱点は、1人のオペレータOが結合Cを失う(または破損する)と、ファイルFを検索することが不可能になることである。
この短所を回避するための第1の改善策は、n個ではなくn+k個の結合を生成し、それらをn+k人のオペレータのところに格納することから構成される。すると、n+k個の結合の中から任意のn個の結合を検索することが可能であり、ファイルFを復元するのに十分である。これは、k個までのストレージ・サービス・プロバイダであれば、それらの故障からの回復が可能であることを意味する。
n+k人のオペレータの場所で格納するときには、セキュリティは、同じままである。すなわち、この方式を破るには、少なくともn人のオペレータが共謀しなければならない。この解決策は、バリアントaおよびcにうまく適用される。
バリアントcに対する異なる改善策は、この短所を回避するために、少なくとも1つの(本発明者らが、オーバ結合と称する)追加的な結合を実行中に生成することで構成されるのであるが、これは、元のファイルFの復元を要求しなくとも、実行可能である。オーバ結合OC’とは、i=1,・・・,nに対して、結合Cの1次結合である。この改善策は、
i=1,・・・,nに対して、(本発明者らがスーパ係数と称する)n個の係数の組a’をランダムに選択するステップと、
1次オーバ結合OC’=a’・C+・・・+a’・C+・・・+a’・Cを計算するステップと、
このオーバ結合OC’とn個のスーパ係数a’とを格納するステップと、
を含む。
n個のスーパ係数a’とオーバ結合OC’とは、計算手段とメモリとを備えた任意のエンティティによって、生成され格納され得る。本発明者らは、それを、「オーケストレータ」と称するが、その理由は、それが、弾力性を保証するために、結合およびオーバ結合の検索を管理するからである。オーケストレータは、ネットワークにおいて任意の場所に配置され得る。すなわち、
それは、異なるクラウド・サービス・プロバイダに存在し得る、または、i=1,・・・,nに対して、結合Cを格納するのに用いられるn個のストレージ・サービス・プロバイダの中の1つとできるだけ同じ場所に配置され得る。
それは、ユーザ・デバイスに存在し得る。
それは、また、ユーザ・デバイスとストレージ・オペレータとの間、例えば、セットトップ・ボックスに存在し得る。
機能的には、オーケストレータとは、ソースによって必ずしも信頼されることなく、データの利用可能性を管理する責任を有する仲介役(intermediary)である。この解決策は、よって、バリアントcに非常によく適合し、オーケストレータには、i=1,・・・,nに対して、係数ai1,・・・,ainを伴わないn個の結合C,・・・,C,・・・,Cが与えられる。
元のファイルFを検索することは、上述した方法と類似の方法によって実行されるのであるが、その理由は、1次オーバ結合OC’=a’・C+・・・+a’・C+・・・+a’・Cは、また、i=1,・・・,nに対するセグメントSiの1次結合でもあるからである。実際、i=1,・・・,nに対して、C=ai1・S+・・・+aij・S+・・・+ain・Sである。セグメントSに関する対応する係数は、このように、Cに関するオーバ結合OC’の係数a’とセグメントSに関する結合Cの係数aijとを乗算することによって、得られる。
本発明者らは、セグメントSに関するオーバ結合OC’を次のように、表現することができる。すなわち、i=1,・・・,nとして、C’=(a’・a11+・・・+a’・ai1+・・・+a’・an1)・S+・・・+(a’・a1j+・・・+a’・aij+・・・+a’・anj)・S+・・・+(a’・a1n+・・・+a’・ain+・・・+a’・ann)・Sである。
よって、検索は、ある行列の逆行列を計算することによって、行い得る。
例えば、クラウドにおけるデータの弾力性を管理するオーケストレータは、結合C,・・・,C,・・・,Cを格納するためのメモリと、
n個のスーパ係数a’,・・・,a’を生成し、
スーパ結合OC’=a’・C+・・・+a’・C+・・・+a’・Cを計算するための計算手段とを備えている。
(オプションであるが、それは、複数のスーパ結合を計算するためのスーパ係数の複数の組を生成することができる。すなわち、ある1つのオーバ結合が、ただ1つのストレージ・サービス・プロバイダの損失を回避することを可能にし、他方で、k個のオーバ結合が、k個のストレージ・サービス・プロバイダの損失を回避することを可能にする。)オーバ結合OC’は、次に、異なるストレージ・プロバイダに格納される。オーケストレータは、ストレージ・プロバイダに格納されている結合の利用可能性をモニタする。オーケストレータは、欠陥のあるストレージ・オペレータを検出すると常に、追加的なオーバ結合を生成して、それを別のストレージ・プロバイダに格納する。
元のファイルFを検索するために、ユーザ・デバイスは、オーケストレータからの(識別子ID’によって指定される)ファイルFの検索をリクエストする。
オーケストレータは、n個の結合を、n人のストレージ・オペレータにそれぞれリクエストする。
n人のストレージ・オペレータが正常に働いている場合には、オーケストレータは、n個の結合C,・・・,C,・・・,Cを受け取る。オーケストレータは、それらを、ユーザ・デバイスに転送する。この後者は、上で説明されているように、ファイルFを復元することができる。
n人のストレージ・オペレータの中の1人がもはや働いていない場合には、オーケストレータは、n−1個の結合C,・・・,C,・・・,Cn−1を受け取るのであるが、その理由は、結合Cを格納したストレージ・プロバイダが機能していないからである。次に、オーケストレータは、それらを、(対応するストレージ・プロバイダからフェッチされた)オーバ結合OC’およびスーパ係数a’,・・・,a’と共に、ユーザ・デバイスに転送する。
ユーザ・デバイスの計算手段は、すべてのセグメントS,・・・,Sを検索するのであるが、この検索は、次のことによって、行われる。
チャンクCに対し、j=1,・・・,nとして、直接に(aij)であるか、または、オーバ結合OC’に対して、j=1,・・・,nとして、(a’・a1j+・・・+a’・aij+・・・+a’・anj)である検索されたフラグメントの係数によって構成される行列の逆行列を計算すること。なお、この逆行列の計算により、計算手段は、i=1,・・・,nとして、係数のn個の組bi1,・・・,binから構成される別の行列を得る。
次に、前記ファイルFのn個のチャンクS,・・・,Sを、S=bi1・C+・・・+bij・C+・・・+bin・OC’として計算すること。
次に、チャンクS,・・・,Sを再度組み立て、パディングを除去して、ファイルFを復元すること。
1つのオーバ結合を用いて先に示された計算は、直截な方法で、複数のオーバ結合の場合に一般化することが可能である。M個のスーパ結合は、M人までのストレージ・オペレータが失敗をした場合を修復することを可能にする。k人のストレージ・オペレータが失敗した場合には(ただし、k<M)、n−k個のチャンク(および係数のn−k個の組)と(その関連する係数を用いた)k個のオーバ結合とが、逆行列の計算に用いられる。i=1,・・・,nとして、オーバ結合は、公式C’=(a’・a11+・・・+a’・ai1+・・・+a’・an1)・S+・・・+(a’・a1j+・・・+a’・aij+・・・+a’・anj)・S+・・・+(a’・a1n+・・・+a’・ain+・・・+a’・ann)・Sによって、元の結合として表すことができるので、失われた結合の代わりにオーバ結合を用いることに何も困難はなく、両者は、同じ方法で処理される。
バリアントbは、逆に、n個のチャンクに対して、n個の結合とn個の係数とを用いて、厳密に設計されている。結合の損失に対する弾力性は、別の方法によって、冗長性や誤り符号化を通じて提供されるのであるが、提案されている方法の内在的な特徴として提供されるのではない。
パフォーマンス・トレードオフ(オプションである改善):
提案されている方法の重要な態様は、その効率と、その方法がセキュリティとパフォーマンスとを調停するという事実とである。この態様を更に強調するために、本発明者らは、データを格納するユーザ(本発明者らは、簡潔にする目的で、そのようなユーザを、ソースと称する)とデータを検索するユーザ(彼らは必ずしもデータを格納する者とは同じではないので、本発明者らは、そのようなユーザを、フェッチャと称する)との間での計算に関する追加的なトレードオフを提供することができる。上述した実施形態では、ソースは結合を実行し、フェッチャは逆行列の計算を意味する復元を実行するので、労力は、ソースとフェッチャとの間で二分化されている。しかし、ソースが結合を計算し、更に逆行列を事前に計算して、直接の係数aijの代わりに、逆行列の係数bijを、ストレージ・サービス・プロバイダまたはローカル・メモリLMのいずれかに直接格納することを、本発明者らは、提案することも可能である。こうすると、フェッチャが、逆行列を直接に検索して、ファイルFを復元するために、単純な行列の乗算を実行することが可能になる。このような動作モードは、ソースに対する計算上の負担を増加させるが、フェッチャに対しては計算上の負担を劇的に軽減するため、格納は一度だけ行われるのであるが検索は多くの回数または多くのエンティティによって行われるような状況に、特に適している。この動作モードは、3つのアプローチ(a)、(b)および(c)のすべてと互換性を有する。
図8は、本発明に従ってファイルを保護するための方法の3つの実施形態に共通である第1のステップを示しており、これらの実施形態は、格納は一度行われるのであるが、検索は多くの回数または多くのエンティティによって行われるような状況に、特によく適している。第1のステップは、逆行列を事前に計算し、直接の係数aijの代わりに逆行列の係数bijを直接に格納するために、修正されている。n個の係数a11,・・・,aij,・・・,annを提供するステップ3と、これらの係数をプロバイダまたはローカル・メモリLMのいずれかに格納するステップ6a、6bまたは6cとの間に、ステップ4’が導入されている。
ファイルFの検索に関しては、復元ステップ53、63、73が、行列A=(aij)の逆行列の計算を抑制するように修正されているが、その理由は、計算手段が、プロバイダまたはローカル・メモリLMのいずれかから、行列B=(bij)を直接に受け取るからである。
最後の注意は、(ファイル記述子は異なるサイズを有しており異なる情報を含んでいるにもかかわらず)3つのバリアントすべてにおいて、デバイスが格納しなければならないファイル記述子を格納するローカル・メモリに関係するものである。これらの記述子を格納する複数の可能性が存在し、それらの可能性は、異なるセキュリティ・レベルに遭遇する。記述子は、実際には、
スマート・カードなど改竄防止機能を有するハードウェアに、
それへの更なるアクセスを物理的に防止するために、記述子が格納された後で取り除かれ得るローカルな取り外し可能なストレージ・デバイス(例えば、USB鍵、ポータブル・ハードドライブなど)に、
インターネット・サービス・プロバイダによって管理される安全なストレージ・スペース(例えば、セットトップ・ボックス)に、
単純なローカル・ストレージ・デバイス(例えば、ラップトップのハードドライブ)に、
例えばクラウドなど、更に別のストレージ・サービス・プロバイダに、
格納され得る。
最初の2つのオプションは、バリアントcと組み合わせると、秘密性が非常に高い文書に対して特に適切である。他方で、最後のオプションは、バリアントaと組み合わせて、それほど高度には機密扱いではないデータであり、この最後のプロバイダが以前のプロバイダと共謀していないことがある程度保証されている場合を除いては、用いられるべきではない。

Claims (18)

  1. 複数のストレージ・サービス・プロバイダに分散され、格納されているファイル(F)の機密性を保護するための方法であって、
    セキュリティ・パラメータnを選択する(1)ステップと、
    前記ファイルをn個のチャンクS,・・・,Sに分割する(2)ステップと、
    i=1,・・・,nおよびj=1,・・・,nに対して、n個の係数aijを選択する(3)ステップと、
    i=1,・・・,nに対して、ベクトルai1,・・・,ainが1次独立であることを確認する(3)ステップであって、そうでない場合には、前記係数を再度生成するステップと、
    i=1,・・・,nに対して、n個の1次結合C=ai1・S+・・・+aij・S+・・・+ain・Sを計算する(4)ステップと、
    前記複数のストレージ・サービス・プロバイダの間で、n個のストレージ・サービス・プロバイダO,・・・,Oを選択する(5)ステップと、
    前記ファイル(F)を指定するn個のファイル識別子ID’,・・・,ID’を生成する(6a;6b;6c)ステップと、
    i=1,・・・,nに対して、前記ファイル識別子ID’と関連して、前記ストレージ・サービス・プロバイダOに、前記結合Cを格納する(6a;6b;6c)ステップと、
    i=1,・・・,nに対して、前記ファイル識別子ID’と前記プロバイダ識別子Oとを、前記ファイル(F)に対応しておりローカル・メモリ(LM)に格納されているファイル記述子に格納するステップと、
    i=1,・・・,nに対して、前記結合Cと再度関連付けられることが可能であるように、係数の組ai1,・・・,ainを格納するステップと、
    を含む方法において、
    i=1,・・・,nおよびj=1,・・・,nに対して、n個の係数aijを選択する(3)ステップは、
    i=1,・・・,nおよびj=1,・・・,nに対して、前記n個の係数aijをランダムに選択する(3)ステップと、
    i=1,・・・,nに対して、ベクトルai1,・・・,ainが1次独立であることを確認する(3)ステップであって、そうでない場合には、前記係数を再度生成するステップと、
    j=1,・・・,nに対して、n個のスーパ係数a’,・・・,a’,・・・,a’をランダムに選択するステップと、
    1次オーバ結合OC’=a’・C+・・・+a’・C+・・・+a’・Cを計算するステップと、
    j=1,・・・,nに対して、前記オーバ結合OC’と前記係数a’,・・・,a’,・・・,a’とを格納するステップと、
    を含み、
    i=1,・・・,nに対して、前記結合Cと再度関連付けられることが可能であるように、係数の前記組ai1,・・・,ainを格納するステップは、
    i=1,・・・,nおよび1≦k≦nでありiと異なるkに対して、結合Cおよびファイル識別子ID’と関連して、係数の前記組ai1,・・・,ainを、前記ストレージ・サービス・プロバイダOに格納する(6b)ステップと、
    i=1,・・・,nに対して、係数の前記組ai1,・・・,ainと前記結合Cとを再度関連付けることを可能にする置換(σ)を、前記ファイル(F)に対応しており前記ローカル・メモリ(LM)に格納されている前記ファイル記述子に格納する(6b)ステップと、
    を含む、方法。
  2. i=1,・・・,nに対して、前記結合Cと再度関連付けられることが可能であるように、係数の前記組ai1,・・・,ainを格納するステップは、i=1,・・・,nに対して、前記結合Cおよび前記ファイル識別子ID’と関連して、前記ストレージ・サービス・プロバイダOに、それらを格納する(6a)ステップを含む、請求項1に記載の方法。
  3. i=1,・・・,nに対して、前記結合Cと再度関連付けられることが可能であるように、係数の前記組ai1,・・・,ainを格納するステップは、i=1,・・・,nに対して、係数の前記組ai1,・・・,ainを、ファイル識別子ID’およびプロバイダ識別子Oに関連して、前記ファイル(F)に対応しており前記ローカル・メモリ(LM)に格納されている前記ファイル記述子に格納するステップを含む、請求項1に記載の方法。
  4. 前記n個のファイル識別子ID’,・・・,ID’が、所与のファイル(F)に対して同一(ID’)である、請求項1乃至3のいずれか1項に記載の方法。
  5. 複数のストレージ・サービス・プロバイダに分散され、格納されているファイル(F)を検索するための方法であって、
    前記ファイル(F)に対応しておりローカル・メモリ(LM)に格納されているファイル記述子において、前記ファイルを指定するn個のファイル識別子ID’,・・・,ID’を読み出し(51)、プロバイダ識別子O,・・・,Oを読み出すステップと、
    前記n個のファイル識別子ID’,・・・,ID’を、それぞれ、前記プロバイダ識別子O,・・・,Oによって指定される前記ストレージ・サービス・プロバイダに送る(51)ステップと、
    n個の結合C,・・・,Cを、前記プロバイダ識別子O,・・・,Oによって指定される前記プロバイダから受け取る(51)ステップと、
    i=1,・・・,nに対して、前記n個の結合C,・・・,Cにそれぞれ対応する係数のn個の組ai1,・・・,ainを検索するステップと、
    i=1,・・・,nに対して、各結合Cを、係数の対応する組ai1,・・・,ainと関連付ける(52;62;72)ステップと、
    i=1,・・・,nに対して係数のn個の組bi1,・・・,binから構成される別の行列を得るために、i=1,・・・,nに対して係数の前記n個の組ai1,・・・,ainから構成される行列の逆行列を計算する(53;63;73)ステップと、
    そして、i=1,・・・,nに対して、前記ファイル(F)のn個のチャンクS,・・・,Sを、S=bi1・C+・・・+bij・C+・・・+bin・Cとして計算するステップと、
    そして、前記ファイルFを復元するために、前記チャンクS,・・・,Sを再度組み立てる(54;64;74)ステップと、
    j=1,・・・,nに対して、オーバ結合OC’と係数a’,・・・,a’,・・・,a’とを読み出すステップと、
    i=1,・・・,nに対して係数のn個の組bi1,・・・,binから構成される別の行列を得るために、i=1,・・・,n−1に対して係数のn−1個の組ai1,・・・,ainと、j=1,・・・,nに対する係数の組(a’・a1j+・・・+a’・aij+・・・+a’・anj)とから構成される行列の逆行列を計算するステップと、
    そして、前記ファイル(F)のn個のチャンクS,・・・,Sを、i=1,・・・,nに対して、S=bi1・C+・・・+bij・C+・・・+bin−1・Cn−1+bin・OC’として計算するステップと、
    そして、前記ファイル(F)を復元するために、前記チャンクS,・・・,Sを再度組み立てるステップと、
    を含む方法において、
    i=1,・・・,nに対して、前記n個の結合C,・・・,Cにそれぞれ対応する係数のn個の組ai1,・・・,ainを検索するステップは、前記プロバイダ識別子O,・・・,Oによって指定される前記プロバイダからそれらを受け取る(51)ステップを含み、
    i=1,・・・,nに対して、各結合Cを、係数の対応する組ai1,・・・,ainと関連付ける(62)ステップは、
    前記ファイル(F)に対応する前記ファイル記述子において置換(σ)を読み出すステップと、
    i=1,・・・,nに対して、各結合Cが係数の前記対応する組ai1,・・・,ainと関連付けられるように、i=1,・・・,nに対して、前記置換を係数の前記n個の組ai1,・・・,ainに適用するステップと、
    を含む、方法。
  6. i=1,・・・,nに対して、前記n個の結合C,・・・,Cにそれぞれ対応する係数のn個の組ai1,・・・,ainを検索するステップは、前記プロバイダ識別子O,・・・,Oによって指定される前記プロバイダからそれらを受け取る(51)ステップを含み、
    i=1,・・・,nに対して、各結合Cを、係数の対応する組ai1,・・・,ainと関連付ける(52)ステップは、前記結合Cを係数の前記組ai1,・・・,ainと直接関連付けるステップを含む、請求項5に記載の方法。
  7. i=1,・・・,nに対して、前記n個の結合C,・・・,Cにそれぞれ対応する係数のn個の組ai1,・・・,ainを検索するステップは、前記ファイル(F)に対応する前記ファイル記述子においてそれらを読み出すステップを含み、
    i=1,・・・,nに対して、各結合Cを、係数の対応する組ai1,・・・,ainと関連付ける(72)ステップは、i=1,・・・,nに対して、係数の前記組ai1,・・・,ainを、前記結合Cに直接関連付けるステップを含む、請求項5に記載の方法。
  8. 前記n個のファイル識別子ID’,・・・,ID’が、所与のファイル(F)に対して同一(ID’)である、請求項5乃至7のいずれか1項に記載の方法。
  9. 複数のストレージ・サービス・プロバイダに分散され、格納されているファイル(F)の機密性を保護するための方法であって、
    セキュリティ・パラメータnを選択する(1)ステップと
    前記ファイルをn個のチャンクS,・・・,Sに分割する(2)ステップと、
    i=1,・・・,nおよびj=1,・・・,nに対して、n個の係数aijをランダムに選択する(3)ステップと、
    i=1,・・・,nに対して、ベクトルai1,・・・,ainが1次独立であることを確認する(3)ステップであって、そうでない場合には、前記係数を再度生成するステップと、
    i=1,・・・,nに対して、n個の1次結合C=ai1・S+・・・+aij・S+・・・+ain・Sを計算する(4)ステップと、
    前記複数のストレージ・サービス・プロバイダの間で、n個のストレージ・サービス・プロバイダO,・・・,Oを選択する(5)ステップと、
    前記ファイル(F)を指定するn個のファイル識別子ID’,・・・,ID’を生成する(6a;6b;6c)ステップと、
    i=1,・・・,nに対して、前記ファイル識別子ID’と関連して、前記ストレージ・サービス・プロバイダOに、前記結合Cを格納する(6a;6b;6c)ステップと、
    i=1,・・・,nに対して、前記ファイル識別子ID’と前記プロバイダ識別子Oとを、前記ファイル(F)に対応しておりローカル・メモリ(LM)に格納されているファイル記述子に格納するステップと、
    i=1,・・・,nに対して係数のn個の組bi1,・・・,binから構成される別の行列を得るために、i=1,・・・,nに対して係数の前記n個の組ai1,・・・,ainから構成される行列の逆行列を計算する(4’)ステップと、
    i=1,・・・,nに対して、前記結合Cと再度関連付けられることが可能であるように、係数の前記組bi1,・・・,binを格納するステップと、
    i=1,・・・,nおよびj=1,・・・,nに対して、前記n個の係数aijをランダムに選択する(3)ステップと、
    i=1,・・・,nに対して、前記ベクトルai1,・・・,ainが1次独立であることを確認する(3)ステップであって、そうでない場合には、前記係数を再度生成するステップと、
    を含む方法において、
    i=1,・・・,nに対して、前記結合Cと再度関連付けられることが可能であるように、係数の前記組bi1,・・・,binを格納するステップは、
    i=1,・・・,nおよび1≦k≦nでありiと異なるkに対して、結合Cおよびファイル識別子ID’と関連して、係数の前記組bi1,・・・,binを、前記ストレージ・サービス・プロバイダOに格納する(6b)ステップと、
    i=1,・・・,nに対して、係数の前記組bi1,・・・,binと前記結合Cとを再度関連付けることを可能にする置換(σ)を、前記ファイル(F)に対応しており前記ローカル・メモリ(LM)に格納されている前記ファイル記述子に格納する(6b)ステップと、
    を含む、方法。
  10. i=1,・・・,nに対して、前記結合Cと再度関連付けられることが可能であるように、係数の前記組bi1,・・・,binを格納するステップは、i=1,・・・,nに対して、前記結合Cおよび前記ファイル識別子ID’と関連して、前記ストレージ・サービス・プロバイダOに、それらを格納する(6a)ステップを含む、請求項9に記載の方法。
  11. i=1,・・・,nに対して、前記結合Cと再度関連付けられることが可能であるように、係数の前記組bi1,・・・,binを格納するステップは、i=1,・・・,nに対して、係数の前記組bi1,・・・,binを、前記ファイル識別子ID’および前記プロバイダ識別子ID’に関連して、前記ファイル(F)に対応しており前記ローカル・メモリ(LM)に格納されている前記ファイル記述子に格納するステップを含む、請求項9に記載の方法。
  12. 前記n個のファイル識別子ID’,・・・,ID’が所与のファイル(F)に対して同一である、請求項9乃至11のいずれか1項に記載の方法。
  13. 複数のストレージ・サービス・プロバイダに分散され、格納されているファイル(F)を検索するための方法であって、
    前記ファイル(F)に対応しておりローカル・メモリ(LM)に格納されているファイル記述子において、前記ファイルを指定するn個のファイル識別子ID’,・・・,ID’を読み出し(51)、プロバイダ識別子O,・・・,Oを読み出すステップと、
    前記n個のファイル識別子ID’,・・・,ID’を、それぞれ、前記プロバイダ識別子O,・・・,Oによって指定される前記ストレージ・サービス・プロバイダに送る(51)ステップと、
    n個の結合C,・・・,Cを、前記プロバイダ識別子O,・・・,Oによって指定されるこれらのプロバイダから受け取る(51)ステップと、
    i=1,・・・,nに対して、前記n個の結合C,・・・,Cにそれぞれ対応する係数のn個の組bi1,・・・,binを検索するステップと、
    i=1,・・・,nに対して、各結合Cを、係数の前記対応する組bi1,・・・,binと関連付ける(52;62;72)ステップと、
    前記ファイル(F)のチャンクS,・・・,Sを、S=bi1・C+・・・+bij・C+・・・+bin・Cとして計算する(53;63;73)ステップと、
    そして、前記ファイルFを復元するために、前記チャンクS,・・・,Sを再度組み立てる(54;64;74)ステップと、
    を含む方法において、
    i=1,・・・,nに対して、前記n個の結合C,・・・,Cにそれぞれ対応する係数のn個の組bi1,・・・,binを検索するステップは、前記プロバイダ識別子O,・・・,Oによって指定される前記プロバイダからそれらを受け取る(51)ステップを含み、
    i=1,・・・,nに対して、各結合Cを、係数の対応する組bi1,・・・,binと関連付ける(62)ステップは、
    前記ファイル(F)に対応する前記ファイル記述子において置換(σ)を読み出すステップと、
    i=1,・・・,nに対して、各結合Cが係数の前記対応する組bi1,・・・,binと関連付けられるように、i=1,・・・,nに対して、前記置換を係数の前記組bi1,・・・,binに適用するステップと、
    を含む、方法。
  14. i=1,・・・,nに対して、前記n個の結合C,・・・,Cにそれぞれ対応する係数のn個の組ai1,・・・,ainを検索するステップは、前記プロバイダ識別子O,・・・,Oによって指定される前記プロバイダからそれらを受け取る(51)ステップを含み、
    i=1,・・・,nに対して、各結合Cを、係数の対応する組bi1,・・・,binと関連付ける(52)ステップは、前記結合Cを係数の前記組bi1,・・・,binと直接関連付けるステップを含む、請求項13に記載の方法。
  15. i=1,・・・,nに対して、前記n個の結合C,・・・,Cにそれぞれ対応する係数のn個の組bi1,・・・,binを検索するステップは、前記ファイル(F)に対応する前記ファイル記述子においてそれらを読み出すステップを含み、
    i=1,・・・,nに対して、各結合Cを、係数の対応する組と関連付ける(72)ステップは、i=1,・・・,nに対して、係数の前記組bi1,・・・,binを、前記結合Cに直接関連付けるステップを含む、請求項13に記載の方法。
  16. 前記n個のファイル識別子ID’,・・・,ID’が所与のファイル(F)に対して同一(ID’)である、請求項13乃至15のいずれか1項に記載の方法。
  17. コンピュータ上で実行されると、請求項1乃至16のいずれか1項に記載の方法のすべての方法ステップを前記コンピュータに実行させる、マシン実行可能なプログラム命令の組を格納しているデジタル・データ・ストレージ媒体。
  18. プログラムがコンピュータ上で動作されると請求項1乃至16のいずれか1項に記載のステップを含む方法を実行するためのコンピュータ実行可能命令を含む、コンピュータ・プログラム製品。
JP2015511969A 2012-05-16 2013-04-18 複数のストレージ・サービス・プロバイダに分散され格納されているファイルの機密性を保護するための方法 Expired - Fee Related JP5944047B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
EP12305544.4A EP2665223A1 (en) 2012-05-16 2012-05-16 Method for protecting confidentiality of a file distributed and stored at a plurality of storage service providers
EP12305544.4 2012-05-16
PCT/EP2013/058075 WO2013171017A1 (en) 2012-05-16 2013-04-18 Method for protecting confidentiality of a file distributed and stored at a plurality of storage service providers

Publications (2)

Publication Number Publication Date
JP2015516638A true JP2015516638A (ja) 2015-06-11
JP5944047B2 JP5944047B2 (ja) 2016-07-05

Family

ID=48128325

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2015511969A Expired - Fee Related JP5944047B2 (ja) 2012-05-16 2013-04-18 複数のストレージ・サービス・プロバイダに分散され格納されているファイルの機密性を保護するための方法

Country Status (7)

Country Link
US (1) US9286487B2 (ja)
EP (1) EP2665223A1 (ja)
JP (1) JP5944047B2 (ja)
KR (1) KR20150002821A (ja)
CN (1) CN104350702A (ja)
IN (1) IN2014DN08893A (ja)
WO (1) WO2013171017A1 (ja)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9900252B2 (en) * 2013-03-08 2018-02-20 A10 Networks, Inc. Application delivery controller and global server load balancer
US10459789B2 (en) 2015-05-27 2019-10-29 Quantum Corporation Global storage solution with logical cylinders and capsules
KR20220087934A (ko) 2020-12-18 2022-06-27 주식회사 기세소프트 임베디드 플랫폼 기반의 프로젝트 기밀성 관리 디바이스

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001358709A (ja) * 2000-06-13 2001-12-26 Casio Comput Co Ltd 暗号化装置、復号化装置、その方法及び記録媒体
JP2003296179A (ja) * 2002-03-29 2003-10-17 Mitsubishi Electric Corp 情報処理装置及びネットワークファイル方法
JP2004118239A (ja) * 2002-09-20 2004-04-15 Ricoh Co Ltd デジタル複写機
JP2007242019A (ja) * 2006-03-07 2007-09-20 Hewlett-Packard Development Co Lp 分散データの階層的管理のための方法及びシステム

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030079222A1 (en) * 2000-10-06 2003-04-24 Boykin Patrick Oscar System and method for distributing perceptually encrypted encoded files of music and movies
CA2922172A1 (en) * 2004-10-25 2006-05-04 Security First Corp. Secure data parser method and system
FR2892583B1 (fr) * 2005-10-21 2008-01-25 Centre Nat Rech Scient Procede de transmission securisee de donnees
US20100037056A1 (en) * 2008-08-07 2010-02-11 Follis Benjamin D Method to support privacy preserving secure data management in archival systems
US8132073B1 (en) * 2009-06-30 2012-03-06 Emc Corporation Distributed storage system with enhanced security
WO2012042509A1 (en) * 2010-10-01 2012-04-05 Peter Chacko A distributed virtual storage cloud architecture and a method thereof
WO2012178032A1 (en) * 2011-06-23 2012-12-27 CohortFS, LLC Dynamic data placement for distributed storage
CN102420854A (zh) * 2011-11-14 2012-04-18 西安电子科技大学 面向云存储的分布式文件系统

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001358709A (ja) * 2000-06-13 2001-12-26 Casio Comput Co Ltd 暗号化装置、復号化装置、その方法及び記録媒体
JP2003296179A (ja) * 2002-03-29 2003-10-17 Mitsubishi Electric Corp 情報処理装置及びネットワークファイル方法
JP2004118239A (ja) * 2002-09-20 2004-04-15 Ricoh Co Ltd デジタル複写機
JP2007242019A (ja) * 2006-03-07 2007-09-20 Hewlett-Packard Development Co Lp 分散データの階層的管理のための方法及びシステム

Also Published As

Publication number Publication date
EP2665223A1 (en) 2013-11-20
US20150161411A1 (en) 2015-06-11
JP5944047B2 (ja) 2016-07-05
CN104350702A (zh) 2015-02-11
IN2014DN08893A (ja) 2015-05-22
WO2013171017A1 (en) 2013-11-21
US9286487B2 (en) 2016-03-15
KR20150002821A (ko) 2015-01-07

Similar Documents

Publication Publication Date Title
US9483657B2 (en) Secure online distributed data storage services
US11082220B1 (en) Securing recovery data distributed amongst multiple cloud-based storage services
Sarkar et al. Enhancing data storage security in cloud computing through steganography
Virvilis et al. A cloud provider-agnostic secure storage protocol
KR20170110420A (ko) 정보 보호 장치를 이용한 정보 문서 분산 저장 방법
JP5944047B2 (ja) 複数のストレージ・サービス・プロバイダに分散され格納されているファイルの機密性を保護するための方法
Chen et al. Message‐locked proof of ownership and retrievability with remote repairing in cloud
KR101553986B1 (ko) 분산 데이터 저장, 복원 시스템 및 방법
Tchernykh et al. Data reliability and redundancy optimization of a secure multi-cloud storage under uncertainty of errors and falsifications
Dhote et al. Secure Approach for Data in Cloud Computing
Dabas et al. A recapitulation of data auditing approaches for cloud data
Nandhini et al. Time Constrained Data Destruction in Cloud
Asesh Encryption technique for a trusted cloud computing environment
Dhore et al. Data Distribution in Reliable and Secure Distributed Cloud Environment Using Hash-Solomon Code
Jaikar et al. Verifying Data Integrity in Cloud
Traverso et al. Selecting secret sharing instantiations for distributed storage
Pardeshi et al. Enhancing data dynamics and storage security for cloud computing using merkle hash tree and AES algorithms
Ukwandu et al. Performance evaluation of a fragmented secret share system
Jin et al. A data hiding scheme based on lagrange interpolation algorithm and multi-clouds
KR101726512B1 (ko) 코드 개인화를 통한 rs 코드의 보안 강화방법
Branco et al. A New Mechanism to Preserving Data Confidentiality in Cloud Database Scenarios
BB et al. Secure and Dependable Cloud Services for TPA in Cloud Computing
TWI492092B (zh) 資料加密的方法
Naveed et al. The Adaptive Security of Cloud Information Management Encrypted with Cryptographic Network Coding
Bhapkar et al. Providing Security And Privacy To Cloud Data Storag

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20150107

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20151125

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20151203

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20160303

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20160331

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20160524

R150 Certificate of patent or registration of utility model

Ref document number: 5944047

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees