JP2022528578A - 強化セキュリティ、レジリエンス、及び、コントロールによる分散データストレージのための方法及びシステム - Google Patents

強化セキュリティ、レジリエンス、及び、コントロールによる分散データストレージのための方法及びシステム Download PDF

Info

Publication number
JP2022528578A
JP2022528578A JP2021569892A JP2021569892A JP2022528578A JP 2022528578 A JP2022528578 A JP 2022528578A JP 2021569892 A JP2021569892 A JP 2021569892A JP 2021569892 A JP2021569892 A JP 2021569892A JP 2022528578 A JP2022528578 A JP 2022528578A
Authority
JP
Japan
Prior art keywords
metadata
storage
data
file
encryption
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
JP2021569892A
Other languages
English (en)
Other versions
JP7173646B2 (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 JP2022528578A publication Critical patent/JP2022528578A/ja
Priority to JP2022172006A priority Critical patent/JP7504495B2/ja
Application granted granted Critical
Publication of JP7173646B2 publication Critical patent/JP7173646B2/ja
Active 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/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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/16File or folder operations, e.g. details of user interfaces specifically adapted to file systems
    • G06F16/164File meta data generation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/16File or folder operations, e.g. details of user interfaces specifically adapted to file systems
    • G06F16/168Details of user interfaces specifically adapted to file systems, e.g. browsing and visualisation, 2d or 3d GUIs
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/17Details of further file system functions
    • G06F16/1734Details of monitoring file system events, e.g. by the use of hooks, filter drivers, logs
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/17Details of further file system functions
    • G06F16/174Redundancy elimination performed by the file system
    • G06F16/1748De-duplication implemented within the file system, e.g. based on file segments
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/17Details of further file system functions
    • G06F16/174Redundancy elimination performed by the file system
    • G06F16/1748De-duplication implemented within the file system, e.g. based on file segments
    • G06F16/1752De-duplication implemented within the file system, e.g. based on file segments based on file chunks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/17Details of further file system functions
    • G06F16/178Techniques for file synchronisation in file systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/18File system types
    • G06F16/182Distributed file systems
    • G06F16/1824Distributed file systems implemented using Network-attached Storage [NAS] architecture
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/10Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
    • G06F21/107License processing; Key processing
    • 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/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
    • 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
    • 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/061Improving I/O performance
    • G06F3/0611Improving I/O performance in relation to response time
    • 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/0655Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
    • G06F3/0658Controller construction arrangements
    • 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]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/54Interprogram communication
    • G06F9/544Buffers; Shared memory; Pipes
    • 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/06Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
    • H04L9/0618Block ciphers, i.e. encrypting groups of characters of a plain text message using fixed encryption transformation
    • H04L9/0631Substitution permutation network [SPN], i.e. cipher composed of a number of stages or rounds each involving linear and nonlinear transformations, e.g. AES algorithms
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/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/0894Escrow, recovery or storing of secret information, e.g. secret key escrow or cryptographic key storage
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/14Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using a plurality of keys or algorithms
    • 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/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3236Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using cryptographic hash functions
    • H04L9/3239Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using cryptographic hash functions involving non-keyed hash functions, e.g. modification detection codes [MDCs], MD5, SHA or RIPEMD
    • 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/50Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using hash chains, e.g. blockchains or hash trees

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • Databases & Information Systems (AREA)
  • Software Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Human Computer Interaction (AREA)
  • Computer Hardware Design (AREA)
  • Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • General Health & Medical Sciences (AREA)
  • Multimedia (AREA)
  • Technology Law (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Storage Device Security (AREA)

Abstract

関連するメタデータを含むデータファイルを暗号化し、再構築するための方法及びシステムを開示する。この方法は、データ及びメタデータをチェーン化プロセスとして別々に暗号化し、技術のコレクションの統合された利点をもたらす複数の暗号化/符号化技術を戦略的な記憶分散技術及び解析技術と共に統合することを含む。開示されているように、コンテンツデータは、そのメタデータから分離され、暗号化キーは、メタデータに埋め込まれてもよく、コンテンツデータの暗号化チェーン化プロセスにおいて、チャンク化、暗号化、シャード化、及び、コンテンツデータとシャードとを別々に記憶し、メタデータを柔軟、分散、効率的な方法で格納することができ、少なくとも部分的には、レジリエンスの向上を保証する。コンテンツデータ又はプロキシサーバのサイトに含めて、プロセスはローカルに実施されることが好ましい。

Description

(関連出願の相互参照)
本出願は、2019年5月22日に出願され、現在係属中の米国仮特許出願第62/851,146号の優先権を主張し、その全体は参照により組み込まれる。
データ保護は、セキュリティ及びレジリエンスの観点からストレージ技術分野において周知の課題である。従来の解決策に関して、エラー訂正能力を改善するために、CD、DVD、QRコード(登録商標)などに広く使用されている消去コード(Erase Code)、及び、多項式補間技法を用いて秘密を保護するシャミア秘密分散法(Sharmir’s Secret Sharing Scheme(SSSS))などの周知の解決策がある。それらの(t,n)閾値プロパティは、オリジナルデータを再構成するために、nからのシェア(又はシャード)と呼ばれる少なくともtデータピースを必要とする。このプロパティは、n複製コピーと同様であるが、追加の制約tを導入するが、サービスの中断なしにn-tストレージノード障害を許容することから、オリジナルを再構成するときのデータレジリエンスを改善する。データ保護の観点から、(t,n)閾値プロパティは、また、少なくともtシェアがアクセス可能であり、有効である場合にのみ、オリジナルデータを明らかにする。
消去コードは、伝達又はストレージ効率を最大化することにより、データ内のビットエラーを訂正することを目標とする。したがって、ほとんどのアプリケーションは、リードソロモンコード(Reed-Solomon(RS) Code)のような消去コードのみに基づいている。コンピュータストレージにおいて、消去コードは、異なるレベルの障害の下で信頼性の高いストレージコンポーネントのために設計された、特に、レベル5及び6のレイド(Redundant Array of Independent Disks(RAID))を実現するために使用されてきた。
大規模データストレージシステムは、新しい技術的課題、即ち、メタデータの管理及び保護をもたらす。柔軟性及び拡張性を実現するために、データは、そのメタデータと共に分散ストレージに記憶される。メタデータは、必要なデータピースの場所に関する情報を含む。したがって、メタデータを確実且つ安全に記憶するためには、別のデータ保護層が通常必要である。
例えば、SSSS及びRSコードが(t,n)閾値プロパティを有し、オリジナルデータを再構成するためにnから少なくともtデータシェアを必要とする場合であっても、シャミア秘密分散法(SSSS)及びRSは、データのセキュリティ及びエラー訂正をそれぞれ保護するために使用されてきた。それらは、それぞれ、暗号化及びエラー訂正を目的とする。
SSSSは、暗号化キーを使用せずにシークレットを複数のシェアnに記憶する暗号化技術として設計されている。SSSSは、理論暗号化を保証する多項式補間を利用することから、tシェア未満でSSSSを破壊する方法は知られていない。
Figure 2022528578000002
分散データストレージは、そのスケーラビリティ及びコスト効率のために現れた。周知の分散データストレージシステムの1つは、ハドゥープファイルシステム(Hadoop File System(HDFS))であり、マップリデユース(MapReduce)などの並列データ作業負荷を実施するために非常に大きなデータセンターストレージシステム用に設計されている。HDFSは、データの3つの複製コピーを提案し、2つは、同じラックにおける2つの異なるノードに記憶され、別の1つは、異なるラック(ロケーション)における異なるノードに記憶されている。このストラテジは、障害局所性を活用することによって、データアクセス性を簡単に改善する。最近では、キーと値とのペアを使用してI/Oクエリを簡素化するために、オブジェクトストレージ解決策が使用されている。
分散ストレージシステムには直接的な課題がある。第1の課題は、メタデータ管理に関するものである。データコンテンツは複数の記憶ノードに分散されることから、分散されたコンテンツのアドレスは、安全且つ信頼性の高い場所に維持される必要がある。これは、シングルポイント障害と性能ボトルネックとなる。メタデータの記憶は、性能ボトルネックが存在するディレクトリサービス及びメタデータのルックアップ操作に主に関連するため、システム性能に大きな影響を与える。たとえば、リスト(List)及びスタット(Stat)は、読み取り(Read)及び書き込み(Write)よりも頻繁に呼び出される。Cephは、サーバ間でメタデータリクエストクエリをより効率的に分散するために、メタデータサーバファームとメタデータのロケーションとを構築する方法を提案した(Ceph1:[1]S. A. Weil, S. A. Brandt, E. L. Miller, D. D. E. Long, and C. Maltzahn, “Ceph: A Scalable, High-performance Distributed File System”, 7th Symposium on Operating systems design and implementation (OSDI). Nov, 2006.)。Cephのハッシュ関数は、サーバファームにおけるメタデータクエリのシャードパスを最小化するように設計された。
性能の問題だけでなく、分離の結果として、セキュリティ及びレジリエンスも難しいトピックである。データ暗号化技術を用いてメタデータを保護することは、余分な計算コスト及び性能劣化を引き起こす。
重要なことは、従来の解決策では、ストレージ及び検索は同期プロトコルの下で行われるが、本発明では、以下に詳述するように、ストレージ及び検索は非同期で行われる。
別の課題は、エンドツーエンドソリューションのためのアーキテクチャ上の柔軟性の制限である。ほとんどの分散ストレージシステムは、ネットワーク遅延が約1ms未満の同じデータセンタにおけるクライアント向けに設計されており、マルチデータセンターソリューションに悪影響を与える。例えば、クライアントデバイスがモバイルであるクライアント中心のアーキテクチャを採用した場合、クライアントデバイスはインターネット経由でストレージノードとメタデータサーバノードとに接続される可能性がある。クライアントはモバイルであるか、又は、データセンタの外部にいることから、システム性能は、データセンタ内部のストレージサービスに匹敵しない。
本出願は、安全なストレージのためのネットワーク装備デバイス及びネットワーク装備ストレージノードを用いて、データ及びメタデータをチェーン化プロセスとして別々に暗号化する方法及びシステムに関する。ここで、プロセス及びシステムは、現在利用可能なレベルを超えて信頼性及びレジリエンスがある。本発明の方法及びシステムは、様々な暗号化/符号化技術を戦略的ストレージ技術及び解析技術と共に統合し、その結果、技術の集合の完全利点が得られる。本発明は、コンテンツデータをそのメタデータから分離し、コンテンツデータ暗号化チェーン化プロセスにおいて、本発明は、コンテンツデータを、チャンク化、暗号化し、シャード化し、記憶し、別々にメタデータを、シャード化し、記憶する。ここで、メタデータは、コンテンツデータ暗号化チェーン化プロセスに関連する情報で強化される。本発明の方法は、計算暗号法及び理論暗号法の両方を使用する。更に、プロセスは、好ましくは、コンテンツデータ又はプロキシサーバのサイトを含めて、ローカルに実施される。
好ましい実施形態では、コンテンツデータはチャンク化され、次いで、各チャンクは、ランダムに生成されたキーベースのAES-256(又は均等物)で暗号化され、次いで、RS符号化され(又は均等物)、シャードに分割される又は「シャード化」される。ここで、シャードは、暗号化及び符号化に続いてファイルを解析することによって形成されるファイル部分である。メタデータは、SSSS暗号化されたチャンクIDを導入することによって変更され、次に、キーシャードと組み合わせてシャード化され、次に、SSSS暗号化キーシャードは、メタデータ暗号化プロセス中に導入される。少なくとも2つの暗号化方法を使用していることに注意することが重要である。暗号化方法は、(1)データシャードを作成するためのAES+RS、及び、(2)メタデータシャードに記憶されているチャンクID及びAESキーのためのSSSSである。
簡単に言うと、本発明は、暗号化プラス符号化の複数の形態と、暗号化された(いくつかのデータについては符号化された)ファイルの分散ストレージとを備える。
この方法は、従来の解決策に関して、セキュリティ及びレジリエンスの改善を可能にし、より迅速な回復を可能にし、また、データアクセスコントロールのためのストレージ管理及び構成に対するユーザの好みに基づいて制御可能である。
図1は、推論及びイベント検出を特に示す本発明の推論及びイベント検出を示す。
図2は、本発明のイベントログ収集及びトレーニングを示す。
図3は、本発明のファイル及びメタデータ/キー暗号化チェーンを示す。
図4は、システムコンポーネント、相互作用、及び、プロセスステップを示す。
図5は、本発明においてデータ経路制御経路がどのように分離されるかを示す。
図6は、本発明のファイルストアのステップバイステップ手順を示す。
図7は、ブラックリストロストクライアントを示し、新しいクライアントを設定する。
図8は、データストレージ障害によるファイルストアの手順を示す。
図9は、メタデータ/キーストレージ障害によるファイルストアの手順を示す。
図10は、本発明の「複製」データ及び「暗号化」データのメタデータの符号化を示す。
図11は、ファイル暗号化及びメタデータ暗号化の例を示す。
本発明は、データ暗号化/符号化のための計算暗号化技術に少なくとも部分的に基づいて、データ暗号化チェーン化モジュールと、理論暗号化技術によってデータ暗号化チェーン化モジュールに追従する異なるメタデータ/キー暗号化チェーン化モジュールと、の組み合わせを使用することによって、前述の暗号化/ストレージの課題を解決する。他でもコンテンツデータとは別にメタデータを記憶及び構成するが、それらは、単にコンテンツ及びメタデータを別々に記憶することに焦点を当てているだけであり、本明細書に記載される多くの重要且つ有益な属性及びアプローチを含んでいない。信頼性及びセキュリティは、コンテンツストア/ストレージの伝統的な優先順位である。信頼性及び負荷バランスは、メタデータ/キーストア/ストレージの重要な優先順位でもある。本発明は、コンテンツデータ及びメタデータ/キー暗号化の実用的な実施を、コンテンツのための少なくとも計算暗号化技術と、メタデータ/キーのための少なくとも理論暗号化技術とを用いて別々に(まだ相互に関連して)チェーン化プロセスにおいて実施することによって、技術を進歩させ、それによって、以前は安全なストレージのために使用されていなかったアーキテクチャを実施する。この解決策は、他の利点の中でもとりわけ、個々のユーザ、「グループ」ユーザ(共通のストレージを有するビジネスなど)、及び、マルチデータセンタユーザ(サービスのバックエンドに複数のデータセンタを有するユーザなど)に対して、速度、レジリエンス、及び、回復、並びに、セキュリティの大幅な改善を提供し、それによって、複数のユーザタイプに同時にサービスを提供する。計算暗号化技術と比較して、いくつかの暗号化アルゴリズムは、攻撃者によって数学的に破ることができない理論暗号化アルゴリズムとして証明されている。使用される計算暗号化アルゴリズムは、実際には、使用中のアプローチにとって十分に長いオリジナルデータを反転するための時間量に基づいて決定可能である。一方、理論暗号化アルゴリズムは、暗号化されたデータを破ることが必要な条件を満たさずに数学的に不可能であるという解決策を提供する。
定義上、「符号化」という用語は、RSコード(又は均等物)を使用して各暗号化チャンクからデータシャードを生成し、SSSS(又は均等物)及び/又はチャンク暗号化に「暗号化」を使用する状況で使用される。「チャンク」という用語は、ファイルを操作せずに複数のピースに分割するコンテキストで使用される。「シャード」という用語は、出力に(t,n)閾値プロパティがある場合に使用される。暗号化されたチャンクをデータシャードに暗号化すると、出力に暗号が保持される。「メタデータシャード」は、暗号化されたチャンクIDとファイル属性とを含むデータとして定義される。「キーシャード」は、SSSS又は均等物を使用して各チャンク暗号化キーの暗号化データとして定義される。本出願は、クライアントをデスクトップ、ラップトップ、携帯デバイスなどのユーザ向けデバイスとして定義する。クライアントの拡張定義は、ユーザドメインにあるサーバマシンを含む。
本発明では、データが最初にチャンク化され、暗号化され、次に、シャード化される。メタデータ及びコンテンツデータは、別々に暗号化及び符号化され、別々に記憶される。本発明の暗号化/符号化スキームは、暗号化スキーム、符号化スキーム、及び、ストレージスキームに部分的に基づいて、並びに、どのようにメタデータが認可されたユーザにアクセス可能なままであるかに基づいて、ストレージ効率、データレジリエンス、及び、セキュリティを劇的に改善する。本発明の方法は、物理的攻撃又はサイバー攻撃からの防止を意味するシステム信頼性、及び、ファイルの損傷後にファイルを回復する能力を意味するリジリエンスを維持又は改善する。
本発明のアプローチは、暗号化及びストレージのための新規なシステムアーキテクチャと、コンテンツ及びメタデータの両方に対する新規な暗号化及び符号化アプローチとを含む。これらのアプローチによって提供される改善には、リモートストレージの待ち時間の克服、AI(人工知能)を使用するストレージ分散技術の進歩、とりわけ非構造化データの監視、コントロール、及び、管理に関する利点が含まれるが、これらに限定されない。
この解決策は、ファイルコンテンツとそのメタデータ/キーという2つの別々の暗号化チェーンが作成される。それぞれが別々に暗号化され、符号化を含むファイルコンテンツで異なるアプローチが使用される。ファイルコンテンツ符号化アルゴリズムは、例えばAES-256のような周知のアルゴリズムを用いてコンテンツが既に暗号化された後にのみ実施されるRS符号化のような、性能集中情報分散アルゴリズム(計算暗号アルゴリズムとして知られる)を含む。ファイルコンテンツ符号化のプロセスにおいて、ファイルを暗号化するために、1つ以上のランダムに生成された暗号化キーと、潜在的に含まれるナンス(本発明において典型的にランダムに選択される初期化ベクトルを含む)とが使用される。暗号化キーを安全に記憶するために、キーは、メタデータファイルに記憶されるか、又は、一般的な方法ではなく、データシャードと一緒に別に記憶される。コンテンツデータからの暗号化キーの分離は、たとえアタッカーが既にデータ保存アクセス許可をとらえ、及び/又は、何らかの方法でキーを入手したとしても、アタッカーからコンテンツデータを保護する。本発明では、メタデータが追加の重要な情報を含むように修正されることから、本発明はセキュリティ集中情報分散アルゴリズム(理論暗号化アルゴリズムとして知られる)をメタデータに適用する。本発明は、チャンク(チャンクID)の各基準を暗号化し、SSSS又は均等物のみを使用して暗号化キーを使用する。SSSSの理論は、十分な数(例では、>=2)のシャードが再構成に利用可能な場合にのみ、メタデータ再構成が利用可能であることを保証する。
従来のアプローチと比較して、本解決策は、既存の課題を解決し、システム性能を改善すると同時に、従来のストレージの必要性を低減する。ストレージシステムが達成する必要がある最も重要な目標は、データの有効性、レジリエンス、及び、信頼性である。データの有効性及びリジリエンスを向上させる最も一般的な解決策は、データバックアップである。データバックアップは、通常、冗長データを記憶するために、少なくとも2つのデータストレージ領域が必要である。本発明は、より少ない、典型的には、n/t倍のストレージ空間を必要とする。ここで、tは必要なシャード数であり、nは記憶されたシャード総数である。nの代わりにnからtを必要とするだけで、レジリエンスは劇的に改善する。従来の解決策では、RAID(Redundant Array of Independent Disks)がデータにエラー訂正コードを追加することで、データバックアップに対する略同じレジリエンスを保証しながら、ストレージ効率を改善させる。これらのかつての最先端ストレージ解決策(本発明に先立つ)は、有効性とレジリエンスとの両方を達成するために分散ストレージノードを使用する。それらは、消去コードのようなエラー訂正コードを利用し、データピースを分散ストレージノードに記憶し、符号化パラメータに基づいて一定数のストレージノード障害を可能にする。しかし、これらの解決策は、メタデータとコンテンツデータとの別のストレージに向けられているだけである。
本発明は、メタデータ/キーストレージをコンテンツデータストレージから分離するが、この2つの間の関係性を保持する。更に、本解決策は、ユーザに様々なストレージバックエンドの最適且つ改善された時間構成を提供し、異なるベンダ及びユーザ自身のストレージノードからのクラウドストレージサービスなどの異なるタイプのバックエンドストレージを接続する。即ち、本発明は、単一のコンピュータのストレージ/ユーザのストレージにおいてさえ、ストレージタイプ(及びロケーション)に依存せず、複数のストレージタイプの同時使用を可能にする。このアプローチは、従来の解決策が多様なバックエンドストレージの編成に設計されていなかった、又は、編成に成功しなかったことから、追加の利点を提供する。バックエンドストレージの多様性のために、システム性能及び効率を改善するための構成は、エキスパートによって行われなければならない通常高度なタスクであり、それによって、不安定な層及びリスクを従来の解決策に追加する。本解決策における編成層は、任意選択でAI支援最適化モジュールを用いて、構成タスクの抽象化を提供する。最適な構成は、コスト最適化、ストレージ効率化、セキュリティ改善、ポリシー構成の簡略化、高度な監視メトリック、及び、アラート管理を含むが、これらに限定されない。
また、本解決策は、少なくとも部分的には、メタデータがどのようにストレージ用に構成され、どのようにストレージが選択されるかによって、長い待ち時間ネットワークにおけるメタデータ操作の待ち時間を低減する。従来の解決策では、使用されるストレージアプローチのために、回復待ち時間が主要な一般的な問題である。ファイルシステムの整合性を保ち、ファイルデータ操作性を最新の状態に保つために、ファイルディレクトリとファイル統計情報とを頻繁に検索する必要がある。即ち、リモートバックアップは、1回だけでなく、定期的且つ自動的に実行され、記憶されているコンテンツ及びメタデータが更新される。したがって、メタデータオペレーションのパフォーマンスは、全体的なシステムパフォーマンス及びユーザ経験に直接関係する。分散ストレージソリューションは、メタデータを検索する操作を必要とするため、長い待ち時間ネットワークを超えて配置されたメタデータサーバは、システム性能に関連するボトルネックとなる。従来発明と比較して、本解決策は、パフォーマンスを低下させることなく、インターネットなどの長い待ち時間のネットワークにおいてバックエンドストレージを使用することを意図している。本解決策は、ローカルマシンにおける潜在的なストレージを含む分散メタデータストレージに記憶される操作属性とコンテンツ参照とを分離することにより、メタデータ操作の待ち時間を低減する。
本解決策は、非同期アプローチを実施することにより、長い待ち時間ネットワークにおいて、読み取り及び書き込みなどのファイルコンテンツ操作に関連するユーザエクスペリエンスをさらに改善する。通常、長い待機ネットワークは、ファイルコンテンツ操作のパフォーマンスに悪影響を与える。パフォーマンスは、ボトルネックリンクに依存する。ボトルネックリンクは、ユーザデバイスとバックエンドストレージと間のネットワークに存在することがよくある。本発明の文脈では、ユーザデバイスがユーザのデータのストレージにネットワークインターフェイスを装備するサーバ、携帯デバイス、又は、スタンドアロンコンピュータとすることができる。ここで、ユーザは、個人又はグループ(企業など)とすることができる。一般的な同期アプローチは、ユーザエクスペリエンスに直接悪影響を与える。これは、ユーザが長い待機ネットワークにおけるバックエンドストレージからの応答を待機する必要があるためである。本解決策は、長い待ち時間のネットワークにおけるユーザデバイスとバックエンドストレージとの間の遅延を吸収するために非同期アプローチを使用する。バックエンドストレージからの応答を待機する代わりに、このアプローチは、特にリクエストが中間状態として局所的に行われている場合、結果が後で非同期に更新されるようにバッチプロセスとして同期するようにスケジュールされた早期応答を返す。
以下は、上述の課題を解決し、他がどのようにデータを記憶するかという制限を克服するための本発明の追加の独特且つ新規な解決策について記載する。
人工知能(AI)支援最適構成
本発明は、AIを使用してバックエンド構成を最適化し、多様なバックエンドストレージ及び構成に抽象化されたレベルのコントロールを提供する。本解決策は、人間に優しいインターフェイス(グラフィックユーザインターフェイス、GUI、及び/又は、ファイルシステムインターフェイスを含む)、及び、詳細なストレージ構成を導出するための推論モジュール及びインタプリタとして機能する言語を提供する。図1参照。AIの適用は、(i)最適なデータ割り当てによってストレージコストを最適化すること、(ii)ユーザデータアクセスパターン、及び、ユーザ及びストレージのロケーション情報に基づいてデータアクセス待ち時間を最適化すること、及び、(iii)データ再構成のためのシャード数を動的に変更すること、によってセキュリティのレベルを高めることを含むが、これらに限定されない。AIアルゴリズムを使用する際、本解決策は、ユーザのファイル操作イベントから匿名ログを収集する。図2参照。ファイル操作イベントログは、AIアルゴリズムを訓練するために、パターンアナライザによる分析のために記憶されてもよい。アルゴリズムが訓練されると、モデル及びパラメータは、アルゴリズムが実際に実施されるAI支援モジュールに配備される。AI支援モジュールは、ユーザデバイスからイベントを受信して、最適な構成、異常検出などを実施する。データロケーションは、記憶且つ暗号化されたメタデータ内に保持され、AIに基づく調整に基づいて更新される。
本発明の文脈における追加のAIアプリケーションのサンプルは、以下を含む。
(1)最適なストレージ選択-性能
システムは、各バックエンドストレージの経験速度を測定するために、ストレージ(及び潜在的により一般的なアクセス)に対するアップロード及びダウンロードイベントを収集する。シャードを記憶し、記憶するシャード数よりも多数のストレージを想定する場合、システムは、データ記憶待ち時間を最小限に抑えるために、より多くのシャードをより高速のバックエンドストレージに記憶する。待ち時間は最も低速なストレージのボトルネックによって決定されることから、各ストレージのシャード記憶待ち時間の最大値を最小値にする最小最大アルゴリズムにより、データアップロード待ち時間全体が削減される。ファイルを再構築するためにシャードをフェッチする場合、最小最大アルゴリズムは、各ストレージでの最大待ち時間を最小限に抑えるために、シャードが記憶されている全nのうち高速tストレージも選択する。
(2)最適ストレージ選択-コスト
システムは、ファイルアクセス頻度を収集して、アクセスが最も少ないファイルをコールドストレージに移動させる。議論のために、2層のストレージ、即ち、ホットストレージ及びコールドストレーがあると仮定する。ホットストレージは高速であるが高価であり、コールドストレージは低速であるが費用効果がある。既存のサービスは、コールドストレージに移動するデータを決定するために、記憶する時間又は最後のアクセスに基づいて、ストレージローカルに単純なポリシーを提供する。本発明は、nシャードを記憶し、nのうちのtを必要とし、オリジナルデータを再構成することから、決定は、コールド又はホットのバイナリ選択ではなく、いくつのシャード、シャードのどの部分、又は、どのシャードがコールド及びホットストレージに向けられるかに基づいている。本発明のシステムは、シャードアクセスイベント及び頻度を定期的に収集して、コールドストレージ移動コストを含むストレージの推定コストを計算する。本発明のシステムは、異なるタイプのストレージからの複数のパラメータを考慮する場合に、構成の複雑性を低減する。パフォーマンスメトリックを一緒に考慮すると、アルゴリズムは、その後、シャードアクセスパターンに基づいて、コールドストレージからホットストレージにデータを移動させることができる。
(3)ファイルアクセス異常検出
自己相関は、本発明において適用され得るネットワーク化されたシステムの作業負荷における1つの特徴である。例えば、ネットワークトラフィックの研究は、トラフィックソース及び宛先の時間的及び空間的類似性に基づいて、規則的な(毎日のような)パターンを示す。本発明の一実施形態では、システムは、毎日及び毎週の類似性をほとんど示すファイルアクセスパターンに基づく自己相関を使用する。この特徴は、ディープラーニングと回帰法を用いた予測アルゴリズムの開発を可能にする。したがって、システムは、統計的に有意な不規則性又は逸脱などのパターンからの不規則性又は逸脱を決定することができ、したがって、悪意のあるユーザ又はマルウェアによる異常なファイルアクセスをシステム管理者に警告することができる。
長い待ち時間ネットワークでのメタデータ操作の待ち時間の削減
現在の解決策は、断片化されたファイルを複数のバックエンドストレージに記憶することから、メタデータは、オリジナルファイルを再構築するために必要な情報で強化される。メタデータは、ファイルサイズ、変更時間、アクセス時間などのファイル属性も通常記憶する。ファイル操作呼び出しの頻度の観察に基づき、ファイルコンテンツ操作が呼び出されるよりもメタデータ操作が頻繁に呼び出されることを観察した。その結果、メタデータ操作の待ち時間が短いと仮定してファイルシステムは設計される。したがって、従来の解決策は、障害による損失の不必要なリスクをもたらすローカルエリアネットワークにおけるメタデータストレージ(又はサーバ)を必要とした。しかしながら、本解決策は、分散データ暗号化の特性を維持しながら、長い待ち時間ネットワークに適用可能なメタデータを設計する。本解決策のメタデータは、「複製」データ及び「暗号化」データから構成される(図10参照)。複製データは、ファイルのコンテンツに関連しない情報を含む。ファイル名、サイズ、変更時間、及び、その他のファイル属性は、複製データに記憶される。これにより、システムは、複数のメタデータシャードを収集し、データを復号化することなくデータを取得できる。一方、ファイルコンテンツ、チャンクID、及び、チャンク暗号化キーに関連する情報は、暗号化データとして記憶される。メタデータと暗号化キーとのための分散暗号化の特性を保持するために、本解決策は、ファイルコンテンツのために本発明で必要とされるものよりも強力なセキュリティレベルのメタデータを達成するSSSS又は均等物を使用する。SSSSは暗号化キーを必要としないことから、復号化は複数のデータシャードの収集のみを必要とする。したがって、本発明は、信頼性の根拠として、ストレージソリューションによって提供される多様な認証及びセキュリティソリューションを用いて分散ストレージを活用する。
複製データと暗号化データとの分離を使用したメタデータシェアの分散は、暗号化されたメタデータシャードの1つをローカルエリアネットワークのユーザデバイス又はメタデータサーバなどのローカルデバイスに保存することによって、メタデータ操作のパフォーマンスを改善させる。更に、本解決策は、メタデータシェアを冗長コピー及び暗号化されたデータシェアとして異なるロケーションに記憶することを可能にする。
OpenDir及びスタット(Stat)-メタデータ操作例
ユーザがディレクトリを開くと、ファイルシステムは、その子の情報、即ち、ファイル及びディレクトリのリストを返すべきである。ターゲットディレクトリの各子の情報を一覧表示するには、メタデータストレージは、オブジェクト名又はプレフィックスに基づいてメタデータ選択機能を提供する必要がある。本発明は、ネイティブディレクトリ構造、キー値ストレージ、及び/又は、データベースシステムを用いてディレクトリシステムを実施することができる。1セットのメタデータシェアは、ローカルに記憶されることから、子ディレクトリとファイルとの識別は、リモートメタデータファイルなしで実施される。つまり、本ユーザは、ローカルデバイスに記憶されているメタデータを「ロック解除」し、回復したいファイルのみを識別することができる。
次の操作では、スタット操作がメタデータシェアのセットに複製データとして記憶されているファイル属性を返す。したがって、スタット操作は、軽量な方法、即ち、ローカルデバイスに記憶された対応するメタデータシェアを調べる方法で実施される。
読み込み-ファイルコンテンツ操作例
本発明では、チャンクIDはSSSSのような技術を用いて暗号化されることから、チャンクIDを復号するには2つ以上のメタデータシェアを用いる必要がある。暗号化技術はSSSSに限定されない。この手段では、少なくとも1つのメタデータシェアをリモートメタデータサーバから取得する必要がある。これは、シンプルなメタデータルックアップ操作よりも時間がかかる。しかしながら、リモートストレージからメタデータシェアをダウンロードする時間は、ファイルコンテンツのダウンロードよりも大幅に短くなる。また、メタデータ操作とは異なり、ファイルコンテンツ操作は、メタデータ操作ほど頻繁にリクエストされない。したがって、リモートサーバからのメタデータダウンロードの余分な遅延は、ダウンロード完了時間に関してファイル読み取り操作の重要な要因ではない。
リモートストレージへの非同期コンテンツ転送
本解決策は、暗号化されたコンテンツをリモートストレージに送信する前に、暗号化されたコンテンツをユーザデバイスにステージ化することによって、ユーザエクスペリエンスを改善する。したがって、本解決策は、結果をユーザに早期に返し、データをバックエンドストレージに非同期に送信することによって遅延を吸収する。例えば、現在のファイルシステムインターフェイスがファイルを書き込むなどのファイルコンテンツ操作のリクエストを受信した場合、この操作は、符号化されたコンテンツをステージ化されたステータスとしてローカルバッファに記憶した後、結果をユーザインターフェイスに返す。ステージ化されたステータスは、バックグラウンドで非同期に完了するようにバッチスケジュールされる。この設計は、ユーザデバイスとリモートストレージとの間の待ち時間をユーザ対話から切り離すことから、ファイルを書き込むときのユーザエクスペリエンスを大幅に改善する。
リモートストレージからのファイルコンテンツの事前フェッチ及びキャッシュ
リモートストレージとローカルストレージと間の待ち時間に大きなギャップがあることから、事前フェッチとキャッシュとにより、読み取り操作の完了時間とユーザエクスペリエンスとが改善する。ファイル書き込み操作とは異なり、ファイル読み取り操作は、通常、ユーザのファイル読み取り直後にデータコンテンツを配信する必要があるオンデマンド操作である。リモートストレージから必要なデータピースをダウンロードするための遅延を低減するために、本解決策は、モデルが本発明のAIモジュールによって計算されるユーザのファイルアクセスパターンに基づいて、必要なデータピースを事前フェッチする。このモジュールは、時間的自己相関、ユーザID、アプリケーションのタイプ、キャッシュストレージの容量などを利用して、キャッシュされたデータの寿命及び置換、データの事前フェッチなどを決定する。
従来の解決策は、複数のバックエンドストレージを使用し、消去コード又はSSSS(又はそれらの変形例)を使用することによって統合層を提供する分散ストレージシステムに向けられていた。WAN及びLANに多様なバックエンドストレージを導入したものもあるが、管理性及び効率性の改善は未解決の問題のままであった。本解決策は、WAN及びLANに配備された分散ストレージシステムにおけるこれら及び他の問題に対処し、それらの構成性及び性能(即ち、待ち時間)を改善する。コスト、性能、及び、セキュリティに関する多様なバックエンドストレージ構成の複雑性を克服するために、本発明は、イベントログコレクタ(インターフェイス)、データアナライザ(アルゴリズム生成)、アルゴリズムトレーナ(パラメータチューナ)、モデルデプロイヤ(バッチ処理)、及び、実施部(プロセッサ)を含むAIモジュールを使用する。(図1、図2参照)。
また、本解決策は、分散ストレージソリューションにおける新たな課題、即ち、バックエンドストレージ及びメタデータサーバが長い待ち時間ネットワーク(例えば、インターネット)に展開される場合のメタデータ操作及びファイルコンテンツ操作の長い待ち時間に対処する。本解決策は、コンテンツ操作よりも頻繁に呼ばれるメタデータ操作の待ち時間を低減することにより、ユーザエクスペリエンスを改善する。これは、ローカルストレージに複製されるメタデータの一部を一度に記憶/検索できるようにすることにより、ユーザエクスペリエンスを改善する。その間、本解決策は、SSSS(又は均等物)を用いてコンテンツ関連メタデータ(例えば、チャンクID)を暗号化し、メタデータを分散方式で安全に保つ。ファイルを書き込むときにリモートストレージに非同期ファイルコンテンツを転送すると、データストレージ手順がユーザ側の手順から切り離され、リモートストレージへのコンテンツアップロードタスクを完了する前に、ユーザインターフェイスへの応答が早く改善する。ファイルを読み取るときのAI支援事前フェッチとキャッシュとは、ユーザのファイルアクセスパターン、アプリケーションのタイプなどに基づいて、ローカルデバイスに必要なデータコンテンツを配置するためのより良い予測を提供する。
また、本解決策は、RS符号化(又は均等物)を直接使用してコンテンツを符号化することに加えてコンテンツを暗号化し、RS符号化は、暗号化チャンクを符号化するために使用される。このような符号化は、少なくとも効率的なストレージを定式化するために有用である。したがって、より強力な暗号化を提供するが、より多くのオーバーヘッドを提供するSSSSのような別のアルゴリズムを使用する代わりに、本解決策は、AES-256(又は均等物)を使用してチャンクコンテンツを暗号化し、その暗号化キーをメタデータに別々に記憶する。
RSコードは、SSSSのような他のアプローチと比較して、ストレージ及び計算オーバーヘッドの点で効率的である。本解決策は、符号化の前にコンテンツを暗号化することによって、RSコードのセキュリティ上の弱点を既に克服しているので、効率性及び性能に焦点を当てた他の同様のアルゴリズムを使用することができる。
SSSS(又は均等物)は、メタデータの暗号化に使用される。メタデータは、コンテンツ暗号化のルーツキーである。本発明は同じ(t,n)又は同様の閾値プロパティを提供する場合に他のアルゴリズムを使用することができるが、本発明は、コンテンツデータとは別々に暗号化され、記憶されるメタデータを保護するために、強力な暗号化アルゴリズムを使用し、必要とする。SSSSは、理論的にその安全性を保証することから、アタッカーが十分な破片を有していない場合、強引な攻撃は不可能である。メタデータの全体的なサイズは、ファイルコンテンツよりもはるかに小さいことから、暗号化のオーバーヘッドは無視できる。
コンテンツ暗号化の場合、SSSSは、n時間のストレージオーバヘッドを示すが、RSは、n/t時間のストレージオーバヘッドのみを示す。しかしながら、RSは、暗号化のために設計されていないことから、アルゴリズムのランダム性が制限されている(静的であり、逆にするのが比較的容易である)。RSコード上のコンテンツチャンクにAES-256(又は他の暗号化)も使用することにより、解決策は、n/t倍のストレージオーバヘッドを達成しながらランダム性を改善する。AES-256(又は均等物)暗号化の暗号化キーを保護するために、2番目のチェーンは、SSSSを使用してキーを暗号化し、キーシャードをメタデータシャードに記憶する。
ファイルコンテンツは、いくつかの理由でチャンク化される。第1に、チャンクは、複製されたコンテンツを識別する能力を提供し、その結果、コンテンツの1つのコピーのみをその基準と共に記憶することによって、記憶効率を改善することができる。第2に、チャンクはセキュリティを改善する。アタッカーは、ファイルコンテンツを取得するために必要なチャンクの基準を知る必要がある。第3に、それはデータストレージ及びそのロケーションの柔軟性を改善する。
本発明のシステムは、更に、ストレージアーキテクチャ及び環境にかかわらず、エンドツーエンドセキュリティを実施することに向けられている。ファイル暗号化/復号化操作は、メタデータ及びデータ読み取り/書き込み操作に統合され、これにより、中間者攻撃及び性能劣化の脆弱性が最小限に抑えられる。本発明のシステムアーキテクチャは、また、コントロールパスをデータパスから分離することによって、エンドツーエンドのセキュリティを強化する。
図3参照。本発明のファイル符号化アルゴリズムは、暗号化チェーンと呼ばれ、データ/メタデータ暗号化をデータ記憶戦略と統合することを目的とする。これは、たとえ敵が無限の計算能力を有していたとしても破壊することができない情報理論暗号と、実用的であるのに十分短い期間内に現在の計算技術で破壊することができない計算暗号との組み合わせである。
従来の解決策とは異なり、本発明のアーキテクチャは、データがクライアント(例えば、プロキシサーバを参照する時「クライアント」という用語を使用し、スタンドアロンサーバ又はコンピュータ又は他の計算デバイスとすることできる「ユーザ装置」という用語は、ここでは、様々な種類のクライアントを含むことが予測される)とデータ/メタデータ/キーストレージとの間で集約される単一点がなく、それによって「中間者」攻撃に対する脆弱性が排除されることに注意されたい。暗号化チェーンは、プロキシサーバなしでユーザデバイスで開始される。暗号化チェーンは、既存システムの修正を最小限に抑え、ユーザエクスペリエンスの修正を削減するために、メタデータ及びファイルI/O操作にシームレスに統合される。暗号化チェーンでは、ストレージノードからデータを収集する場合を除き、メタデータ及びファイル操作を変更する必要はない。
本発明の暗号化チェーンは、ファイル暗号化チェーンとメタデータ/キー暗号化チェーンとの2つの部分から構成される。ファイル暗号化チェーンは、コンテンツファイルのチャンクを含む。本発明の方法は、各チャンクを暗号化し、暗号化されたチャンクをシャード化する。各チャンクは、通常、複製されたピースを識別するために使用することができるコンテンツファイルのスライスである(KyoungSoo Park, Sunghwan Ihm, Mic Bowman, and Vivek S. Pai, “Supporting practical content-addressable caching with CZIP compression” Proceedings of the 2007 USENIX Annual Technical Conference, Santa Clara, CA, USA, June 17-22, 2007.)。本方法では、メタデータにロケーションを記したストレージ領域を節約するために、重複ピースのうち1つのコピーのみを記憶する(この技法をデータ重複排除と呼ぶ)。各チャンクは、RSコードを使用して複数のシャードとして暗号化される。RSコードは、一般に暗号化に使用されないことから、チャンクは、少なくとも1つの暗号化キーで暗号化される。チャンクは、チャンクがシャードとして符号化される前に、1回限りの使用のためにランダムに生成されたキーである。暗号化キーは、メタデータ/キー暗号化チェーン内に安全に記憶される。キーとチャンク識別子(チャンクID)とは、SSSSによって暗号化される。チャンクIDシャードの各セットと暗号化キーシャードの各セットとは、メタデータとキーシャードファイルとの形成でそれぞれメタデータストレージノードとストレージノードとに分散される。このプロセスでは、複数のストレージノード間でのメタデータ、キー、及び、データシャードの割り当てを計算するために、一元化された部品は必要ない。以下のセクションは、図4を参照して、ファイル及びメタデータ/キー暗号化チェーンの詳細を説明する。図10は、さらなる例を提供する。
Figure 2022528578000003
Figure 2022528578000004
Figure 2022528578000005
Figure 2022528578000006
チェーンの復号化
データ復号化は、暗号化チェーンの逆の手順である。通常のファイル操作に必要な手順である異なるメタデータ/ストレージから暗号化されたメタデータ/キーを収集することで、暗号化キーとチャンクIDとを復号化するために必要なキーシャードが収集される。次に、暗号化されたチャンクを再生成するために必要なデータシャードが収集される。最後に、オリジナルファイルは、チャンクを復号し、それらを順番に連結した後に再構成される。
図4は、システムコンポーネント、相互作用、及び、処理ステップを含むシステムアーキテクチャの一例を示す。ユーザデバイスは、コンテンツとメタデータとを暗号化(及び復号化)し、ユーザデバイスとストレージとの間でデータを同期する。論理I/Oモジュールは、ユーザと通信するインターフェイスである。論理I/Oモジュールがオープン、書き込み、読み取りなどのファイルI/Oリクエストを受信した場合、イベントハンドラは、ネイティブファイル操作イベントを奪いリクエストを処理し、ファイル処理のアドオン暗号化チェーンを実施する。エンドツーエンドのセキュリティを確実にするために、本発明は、データコンテンツをストレージに記憶する前に、ファイル暗号化を実施する場所として、フラッシュ(Flush)、Fsync、及び、クローズハンドラ(Close Handlers)を実施することが好ましい。
ラウンドロビン、ランダム、及び、最小最大アルゴリズムなどのアルゴリズムを含むが、これらに限定されない複数の使用可能なアプローチがある。本発明の一実施形態では、最小最大アルゴリズムが経験的データ伝達速度を使用して、各ストレージにおける最大伝達時間を最小化し、ストレージに伝達する。アップロードするとき、ここで実施されるように、最小最大アルゴリズムは、各チャンクについて記憶すべきシャード数である符号化パラメータnよりも多くのストレージが利用可能である場合、より速いストレージにより多くのシャードを記憶する。ダウンロードするとき、現在の最小最大アルゴリズムは、対応するシャードが記憶されているnストレージからチャンク、ストレージを再構成するのに必要なシャード数である高速tを選択することによって、より有用である。即ち、nシャードに分散されるファイルを再構築する場合、tチャンクが必要である。
ファイル暗号化チェーンのリンクされたチェーンとして、メタデータ/キー暗号化チェーンは、複数のメタデータとキーシャードとを生成する。これらのシャードは、メタデータシャードにおいて1つ以上の暗号化されたチャンクIDやSSSSによる暗号化キーなどの暗号化情報を含む。暗号化されたメタデータファイルの1つは、ユーザデバイスのメタデータストレージに記憶される。具体的には、メタデータシャードファイルのコピーをローカルデバイスに記憶して、メタデータ操作の待ち時間を削減する。その他のメタデータ及びキーシャードファイルは、ユーザの好みに応じて単一のストレージノード又は論理的/物理的に独立したストレージノードのいずれかで設定できるメタデータ/キーストレージに記憶される。
同期処理ユニット411は、その知識ベースに基づいて、ユーザデバイスとストレージとの間のデータ送信のタイミングを算出する。また、同期処理ユニットは、その知識ベースを使用してシャードと暗号化されたメタデータファイルとのロケーションを選択/識別する。このタスクは、コスト最適化、パフォーマンス最適化、セキュリティ最適化などを目的とする。
データ送信リクエストは、リクエストキューにプッシュされ、コネクタは、対応するリクエストをフェッチしてネットワーク経由で実際のデータストレージを実施する。ストレージからの応答メッセージは、データストレージリクエストの非同期応答をシリアル化する応答キューにプッシュされる。応答がフェッチされ、シャードと暗号化されたメタデータ記憶ステータスとが更新される。I/Oリクエストでデータ送信の同期が必要な場合、I/Oイベントハンドラは、対応する応答が収集されるまで待機する。
このシステムは、暗号化チェーンを統合し、情報分散理論を適用することにより、記憶されたデータのエンドツーエンドセキュリティを提供する。エンドツーエンドデータセキュリティは、(1)エンドユーザデバイスとストレージバックエンドロケーションとの間の遅延がデータセンタ内のマシン間の遅延よりもはるかに大きく、(2)システムの性能が最もコントロールされた構成要素によって制限され、(3)リソースのコントロール及び環境設定がコントロールされるため、難題である。クライアントとメタデータサーバと間のネットワーク待ち時間が大きいと、メタデータ操作のパフォーマンスに影響する。
メタデータは、ファイルコンテンツを組み立てるために必要な重要な情報を含むことから、エンドユーザのデバイスにファイルコンテンツ全体を記憶すると、非常に危険にさらされる可能性がある。メタデータが代表サーバ(又はサーバ)に記憶されている場合、データルックアップ操作よりも頻繁に呼び出されるメタデータルックアップ操作は、システムパフォーマンスのボトルネックになる。一例として、セフの方法論(Ceph’s methodology)は、メタデータサーバ間でオーバーヘッドのバランスをとりながら、コンテンツストレージと論理的に異なる分散サーバにメタデータを記憶することを含む。エンドツーエンドソリューションにおける課題は、クライアントとサーバとの間の遅延が(略)最適又は近似性能を保証するシステムを設計するのに十分に予測可能でないことである。符号化/復号化、複製されたコンテンツ(主にデータ重複排除と呼ばれる)の識別、及び、データ/コントロールチャネルの設計などの機能の分解は、ハードウェアの計算容量、ネットワークの予想待ち時間、及び、操作の頻度を考慮して、システムの機能及び性能を慎重に設計すべきである。
本発明における「nからのt」(t out of n)アプローチに関して、そのようなアプローチは、複数の方法で複数回重要である。まず、本発明では、アイテムがnユニットに解析される回数が多い。しかしながら、それぞれの場合において、nは異なる値であってもよい。同様に、それぞれの異なるtは異なる値であってもよい(但し、2つ以上のそのようなt及び/又は2つ以上のそのようなnも同じ値であってもよい)。本発明における「nからのt」アプローチは、好ましくは、解析されたデータコンテンツピース数に向けられ、解析されたメタデータピース数に分けられ、コンテンツデータの各暗号化されたチャンクのデータシャードピース数に別々に向けられる。
再構成に関しては、「nからのt」アプローチが複数回重要になる。
ファイル暗号化チェーンとメタデータ/キー暗号化チェーンとの定式化は、通常、データ処理ユニットで実施される計算タスクである。前述したように、ファイル暗号化チェーンは、データシャードを符号化/復号化し、その後、同様の機能を提供するメタデータ/キー暗号化チェーンが続く。データシャードは、シャードがデータストレージに同期されるようにスケジュールされるまで、シャードバッファに一時的に記憶される。
再び、図4はシステムの概要を示す。このクライアント中心のアーキテクチャは、考えられる展開スキームの一例であり、ファイル及びメタデータ/キー暗号化チェーンを作成し、暗号化されたデータをストレージバックエンドに分散するエンドユーザデバイスに展開されたコンポーネントを示している。クライアントは、PC、ラップトップ、又は、携帯デバイスのようなエンドユーザデバイスに限定されず、一例として、エンタープライズサーバであってもよい。
図4は、本発明の文脈におけるユーザデバイス401とストレージプール402との間の関係を示す。ユーザデバイス401は、少なくとも示された機能を実施するようにプログラムされたプロセッサ又はプロセッサのグループであってもよい。図示のように、ユーザデバイス401は、暗号化、チェーン化、及び、復号化の役割も果たす。ユーザデバイス401は入出力手段を備え、入出力手段は、I/Oリクエストエンジン423(プロセスステップ1)と、入出力イベントハンドラ403と、少なくとも1つのデータ処理エンジン/ユニット405と、ストレージエンジン408及び関係ストレージと、同期処理ユニット又はエンジン411と、リクエストキューイングエンジン415と、ネットワークインターフェイスエンジン416と、応答キューイングエンジン422と、を備える。入出力イベントハンドラ403は、(2)少なくとも1つの入出力論理モジュール404を有し、ファイルコンテンツを送る。データ処理エンジン/ユニット405は、(3)ファイル断片化、チャンク及びデータシャードの符号化、復号化、暗号化、及び、復号化を含む機能を実施するファイル暗号化モジュール406と、(4)メタデータファイル及びキー断片化、シャードの符号化、復号化、暗号化、及び、復号化を含む機能を有するメタデータ/キー暗号化モジュールと、を備える。ストレージエンジン408及び関係ストレージは、(5)アップロード及びダウンロードのためのメタデータ/キーシャード及びデータシャードを特定するためのメタデータ/キーストレージ410と、シャードバッファ409とを備える。同期処理ユニット又はエンジン411は、(6)集合的にキューイングをリクエストするスケジューラ412と、ストレージセレクタ413とを備える。リクエストキューイングエンジン415は、(7)リクエストを割り振る。ネットワークインターフェイスエンジン416は、データ418及びメタデータ/キーストレージ417のためのコネクタを有し、(8)ネットワークにデータリクエストを送る。リスポンスキューイングエンジン422は、(9)データ結果を送り、(10)シャード及び暗号化メタデータ/キー状態を更新する。ユーザデバイス401は、分散されてもよく、データ419及びメタデータ/キー420ストレージ並びにバックアップストレージ421を含む様々なリモート外部ストレージプール402と通信する。
再構成プロセスは、チャンク化、暗号化、シャード化、及び、分散プロセスの逆の手順であり、グラフィックユーザインターフェイス(Graphical User Interface (GUI))を備えたユーザアプリケーションとして、及び/又は、一般的なファイルシステムインターフェイス(例えば、POSIX)を使用して、実施することができるが、これらに限定されない。本発明では、GUI又はファイルシステムインターフェイスがファイル名及び変更時間によってファイルをリストすることが好ましい。また、他のより一般的なファイルシステムインターフェイスもサポートする(ファイル変更時間は、メタデータ内のファイル属性として記憶されることが好ましい)。これらのインターフェイスは、ファイル名、変更時間、アクセス時間、サイズのような必須のファイル属性を必要とする。したがって、インターフェイスに表示されるすべてのファイルは、ユーザインターフェイスとシステムインターフェイスとのそれぞれがファイルを識別できるように属性を有する。
ファイルの再構成では、最初にメタデータを再構成する必要がある。メタデータのt部分は、メタデータを再構成するために識別される必要がある。メタデータは、コンテンツデータのチャンクデータを含んでいることから、各チャンクを再構築するために、チャンクによって、チャンクごとにtシャードを識別する必要がある(この場合、各tと各nとは、チャンクごとに異なる場合があるが、メタデータの場合は、「nからのt」(t out of n)と異なる必要はない)。各チャンクは、少なくとも関連するキーを使用して再構築され、事前にメタデータに記憶され、暗号化される。各チャンクが再構築された後、チャンクは、ファイル全体を再構築し、再び使用可能にするために、最初に行われた通りに配置される。
前述したように、本発明で使用可能な多数のストレージがあり、好ましい実施形態では、再構成に必要なアイテムがよりアクセス可能な(潜在的により高価である)領域に記憶される。さらに、そのようなアイテムは、上述の例のように、コストの考慮事項に基づいて、あるロケーションから別のロケーションに移動することができる。その結果、解析されたデータコンテンツとメタデータ要素との進行中の記憶域リロケーションのための実施されたアルゴリズムが存在することもある。それにもかかわらず、nアプローチのうちの複数のtを含む再構成プロセスは、依然として好ましい実施形態である。
Figure 2022528578000007
Figure 2022528578000008
ファイル名と変更時間とのペアは、ファイルの再構築に必要な初期の組み合わせである。図4を参照すると、エンドツーエンドのセキュリティを保証するために、再構成は、ファイル名及び変更時間を指定するファイルオープン操作と統合される。メタデータ/キー暗号化モジュール407は、メタデータ及びキーシャードの収集を同期処理ユニット411にリクエストする。ストレージセレクタモジュール413は、待ち時間及びコストを含むがこれらに限定されない最適化パラメータに基づいて、ターゲットメタデータ/キーストレージを選択する。好ましいパラメータが設定されていない場合、ストレージはランダムに選択される。メタデータ/キー暗号化モジュール407は、チャンクID及び暗号化キーを対応するチャンクに復号する。ファイル暗号化モジュール406は、チャンクIDによって指定されるデータシャードの収集をリクエストする。データシャードのストレージ選択は、暗号化の場合と同じである。ファイル暗号化モジュール406は、データシャードを使用して暗号化されたチャンクを再構築する。次に、暗号化されたチャンクは、暗号化キーを使用してファイルのプレーンチャンクに復号される。
コントロールサーバは、クライアントのステータスをコントロール及び監視するためにクライアントを監視する。コントロールサーバは、データストレージ、メタデータ/キーストレージ、メタデータ/キーバックアップストレージも設定するが、コントロールサーバは、ストレージバックエンドのプロキシとして機能しない。コントロールサーバには、データストレージ設定、メタデータストレージ設定、キーストレージ設定、ステータス監視、ポリシー構成、アクセスコントロールなど、全体的な構成をコントロールする管理者ポータルも用意されている。コントロールサーバは、ユーザと装置との初期認証も担当する。コントロールサーバは、認証手順をLDAPなどの既存のコンポーネントと統合することもできる。
データストレージは、ユーザデータが実際に記憶されるロケーションである。データストレージ上にコード実施はない。したがって、データストレージは、クラウドサービスに限定されず、ネットワークを備えたレガシーストレージノードのいずれかを含むことができる。メタデータストレージとキーストレージとは、ファイルメタデータと暗号化キーとが記憶されるロケーションである。データストレージ、メタデータストレージ、及び、キーストレージは、別々の(t,n)パラメータで構成することができる。メタデータ及びキーストレージは、データストレージと同様の要件があることから、データストレージノードをメタデータ及びキーストレージに使用することもできる。ストレージは、性能及び信頼性要件、並びに、データ管理ポリシーに応じて構成することができる。メタデータ/キーバックアップストレージは、クライアントデバイス上のメタデータ/キーシャードと同じメタデータ/キーシャードの複製を記憶する。メタデータとキーシャードとはSSSSによって暗号化されることから、同じシャードのセットを複製しても、データ侵害のリスクは増加しない。これらのデータストレージ、メタデータ/キーストレージ、及び、メタデータ/キーバックアップストレージは、LAN、インターネット、又は、ハイブリッド経由で展開できるが、最適な展開のためのガイドラインがある。コントロールサーバは、クラウド又はLAN;LANにおけるメタデータ/キーバックアップストレージ;又は、クラウド又はクラウドとLANとの間のハイブリッドにおけるデータストレージ及びメタデータ/キーストレージに存在する場合がある。
データパスとコントロールパスとの分離
図5は、本システムにおいてデータパスとコントロールパスとがどのように分離されるかの概要を示す。メタデータの分離に加えて、コントロールサーバとクライアントと間のコントロールパス(長い破線)は、クライアントとデータストレージと間のデータパス(実線)から論理的又は物理的に分離される。
データパスとコントロールパスとを分離すると、コントロールサーバの最高特権を有する管理者であっても、ユーザデータにアクセスできなくなる。クライアントと各データストレージとの間の各データパスは、各データストレージノードによって提供される多様なセキュリティメカニズムを利用することによって、独立して保護される。データパスからのコントロールパスの独立性により、コントロールサーバの配備は、セキュリティ及び性能構成に影響を与えることなく、柔軟なプロセスである。
データシャードの記憶
エンドツーエンドセキュリティを確保するために、I/Oイベントハンドラは、フラッシュ(Flush)及びFsync(Flush及びFsyncは、メインメモリにおけるデータを物理ストレージデバイスに同期させるファイルシステムコールである。Fsyncは、Flushの低レベルシステムである。www.man7.org/linux/man-pages/man2/fdatasync.2.html)ファイルシステムコールイベントをインターセプトして、データコンテンツをストレージノードに保存する前にファイル暗号化を実施する。暗号化されたチャンクのデータシャードは、データストレージへの伝達がスケジュールされるまで、シャードバッファにバッファーされる。したがって、本発明は、フラッシュが呼び出された後の中間データ暗号化を保証する。スケジューラは、コスト最適化、パフォーマンス最適化、及び、セキュリティ最適化などの構成に基づいて、データシャードのロケーション及び伝達のタイミングを決定する。例えば、一貫性のあるハッシュアルゴリズムは、データストレージを取り付け/取り外しするときに、シャードリロケーションコストを最小限にする。さらに高度なアルゴリズムを開発し、展開することができる。
暗号化メタデータ/キーの記憶
メタデータ/キー暗号化チェーンは、ファイル暗号化チェーンの完了後にトリガーされる。暗号化キーは、キーストレージへの伝達がスケジュールされるまで、ローカルメタデータ/ストレージでシャード化される。データ及びキーシャードをデータ及びキーストレージノードに記憶する場合とは異なり、メタデータの記憶は、フラッシュ(Flush)、Fsync、又は、クローズ(Close)コールとの同期プロセスである。したがって、暗号化されたメタデータの記憶に失敗した場合、フラッシュ(Flush)、Fsync、又は、クローズ(Close)は失敗コードを返す。
ステージ化データ
シャードをストレージバックエンドにアップロードする前にエンドユーザデバイスでデータをステージ化すると、アップロードの遅延を吸収するだけでなく、データストアをスケジュール化する自由度が増すことによって、ユーザエクスペリエンスが向上する。本発明のストレージでは、ステージ化されたデータの状態は6つある。プロセスを続行するにはメタデータを記憶する必要があるため、ステージ4はステージ3と同期する必要があることに注意する。
ステージ0:開始準備完了
ステージ1:ランダムに生成された暗号化キーでチャンクコンテンツを暗号化する;データシャードを符号化する(プロセスのブロック1)
ステージ2:チャンクIDの暗号化(ブロック2完了)
ステージ3:メタデータとキーシャードとの記憶(ブロック3完了)
ステージ4:データシャードを記憶(ブロック1を改定、完了)
ステージ5:完了
メタデータ操作
暗号化されたメタデータのシャードは複数のロケーションに記憶されることから、メタデータルックアップ操作は、ローカルの暗号化されたメタデータシャードからファイル属性を直接読み取ることができる。ディレクトリ操作及びファイル属性操作は、メタデータ/キーストレージ及びデータストレージの待ち時間に関係なく、パフォーマンスの低下を引き起こさない。メタデータファイルの書き込みは、主にデータ操作に関連していることから、メタデータの書き込みの遅延は、他のデータストレージ及び回復操作と比較して無視することができる。
メタデータストレージ選択
データシャードを分散する場合とは異なり、メタデータシャードは、事前に構成されたメタデータストレージに記憶される。メタデータ符号化のガイドラインは、(t,n)=(2,3)とすることである。メタデータの定義:
Figure 2022528578000009
Figure 2022528578000010
メタデータとデータコンテンツとの同期
すべてのファイルのメタデータとデータコンテンツとは、定期的に同期される。このプロセスは、チャンクの状態、即ち、ローカルのみ、リモートのみ、ローカル及びリモートの中間状態にしたがって、チャンクの基準カウンタを計算する。基準カウンタは、チャンクの符号化とシャードの分散をスケジュールするために使用される。このプロセスは、完全に削除できる参照されていないチャンクも識別する。
データの削除
メタデータの更新は、履歴を追跡するために保存されることから、削除ではメタデータ又はコンテンツデータは削除されない。ファイルが更新されると、以前のバージョンの数が事前に定義された数を超えるまで、システムは、以前のバージョンを削除せずに更新されたメタデータを記憶する。メタデータファイルを削除する必要がある場合、システムは、最後にメタデータとチャンクとの間の基準リンクを解除する。システムが基準カウントゼロのチャンクを識別すると、システムは、最後にバックエンドストレージからチャンクを削除する。
ノーマルモード操作
図6は、本発明のファイル記憶プロセスのステップバイステップ手順を示す。図示のように、8つの関連するステップがある:
601:Fsync-クライアントで実施
602:符号化-クライアントで実施
603:ステージ化-クライアントで実施
604:メタデータシャード記憶-クライアントで実施
605:メタデータ/キーシャード記憶-インターネットからメタデータ/キーストレージまで
606:メタデータ/キーシャードのバックアップ記憶-LANからメタデータ/キーバックアップストレージへ
607:スケジュールプッシュ-クライアントで実施
608:ファイルシャード記憶-インターネットからデータストレージへ
Fsync及びフラッシュ(Flush)などの特定のシステムコールイベントが受信されるたびに、クライアントは、対応するファイルの暗号化チェーンへのエンコードを開始する。ファイル暗号化チェーンプロセスが完了すると、データシャードがステージ化される(データストレージにプッシュする準備ができている)。次に、メタデータシャードは、クライアント、メタデータストレージ、及び、メタデータバックアップストレージに記憶される。キーシャードは、キーストレージ及びキーバックアップストレージにも記憶される。最後に、記憶されたデータは、スケジューラが実施をトリガーしたときにデータストレージを記憶するようにスケジュール化される。
ファイルフェッチは、ファイル記憶の逆の手順である。一定レベルのストレージ障害が存在する場合でも(tがRSコード又はSSSSコードのパラメータである場合、少なくともnストレージからtストレージを使用できる)、ファイルフェッチ操作は、通常モードとして実施される(障害はログに記録される)。エラー数が設定可能な閾値(利用可能なストレージがt未満)を超えると、ファイルフェッチは、ユーザにフェッチエラーを戻す。
それだけには限定されないが、紛失したクライアントなどのクライアントをブラックリストに載せることが重要であることがある。図7は、ブラックリストに旧デバイスを追加し、新しいクライアントを登録する手順を示す。ユーザがクライアントを紛失した場合、ユーザ及び/又は管理者はクライアントをコントロールサーバに報告する。図示の手順のステップは以下を含む:
701.ロストクライアントをブラックリスト化-コントロールサーバによって実施
702.認証セッションの期限切れ-コントロールサーバによって実施
703-5.アクセス拒否
706.クライアント登録-コントロールサーバによって実施
707.メタデータ回復コマンド-コントロールサーバによって実施
708.バックアップストレージからのメタデータをフェッチ-新しいクライアントによって実施
709.認証セッション再構成-コントロールサーバによって実施
710-12.アクセス許可
コントロールサーバは、クライアント情報をブラックリストに配置し、データストレージ、メタデータ/キーストレージ、及び、メタデータ/キーバックアップストレージでの認証に使用されたすべてのセッションを終了する。ユーザがクライアントデバイスを回復又は交換した場合、ファイルを回復するためには、新しいクライアントは、コントロールサーバによって承認されている必要がある。次に、コントロールサーバは、メタデータ/キーバックアップストレージを使用してメタデータを回復するコマンドメッセージを送信する。最後に、コントロールサーバは、データストレージ、メタデータ/キーストレージ、及び、メタデータ/キーバックアップストレージへ新しいクライアントアクセス情報を提供する。
障害モード操作
障害モード操作は、ストレージ障害の数が閾値を超えない場合に、ユーザがシステムを使用し続けることを可能にする。障害モードを必要としないファイルフェッチとは異なり、ファイルストアは、システムを制御され且つ実施可能な状態に保つために、バックエンドサイドのアップロード障害エラーに対処する機構が必要である。
図8は、データストレージ障害によるファイル記憶の手順を示す。このプロセスのステップは以下を含む:
801. Fsync
802. 符号化
803. ステージ化
804. メタデータシャード記憶
805. メタデータ/キーシャード記憶
806. メタデータ/キーシャードのバックアップ記憶
807. スケジュールプッシュ
808. ファイルシャード記憶
809. エラー検出
810. 記憶失敗シャードローカル維持
811.次のスケジュールでプッシュリトライ
この手順は、データシャードがデータストレージにプッシュされるまでの通常モードのファイル記憶操作と同じである。クライアントがシャードを記憶するアップロードエラーを検出すると、クライアントは、シャードをローカルに保持する。シャードは、ステージ化されたシャードと同じ方法で管理される。次に、スケジューラ(クライアント内)は、次のプッシュサイクルで他の新しいステージ化されたシャードを使用してシャードを再スケジュール化する。
図9は、メタデータ/キーストレージ障害によるファイル記憶の手順を示す。これはデータストレージ障害よりもはるかに重要である。このプロセスのステップは以下を含む:
901.Fsync
902.符号化
903.ステージ化
904.メタデータシャードを記憶
905.メタデータ/キーシャードのバックアップを記憶
906.メタデータ/キーシャードを記憶
907.エラー検出
908.ロールバック
データストレージ障害の障害モードとは異なり、メタデータ/キーストレージ障害では、システムはファイル記憶操作を続行できない。代わりに、進行中のデータ記憶操作がロールバックされる。前に記憶されたすべてのファイルは、メタデータ/キーストレージが回復されるまで、読み取り専用モードで引き続きアクセス可能である。
図3は、本発明の暗号化チェーン作成実施形態を示す。ここでは、暗号化チェーンと呼ばれるファイル符号化アプローチは、データ/メタデータ/キー暗号化をデータ/メタデータ/キーストレージ戦略と統合することを目的とする。方法のステップは以下を含む:
1.ファイル暗号化チェーンの作成
○各データファイルは、チャンクに解析され、暗号化チェーンを形成する。
○暗号化チェーンは、集中デバイスではなく、ユーザデバイスで開始されることが好ましい。
○データファイル暗号化チェーンと、通常後で作成されるメタデータファイル暗号化チェーンとの2つの別の暗号化チェーンが作成される。このメタデータファイルは、データファイル暗号化チェーンがどのように暗号化されるかに関係する情報、及び、メタデータファイル暗号化の暗号化及び/又は分布に関係する他の情報を含み、分布される。情報はこれらに限定されない。
○この実施形態では、データファイルは、まずチャンク化され、次に暗号化される。
○チャンク化されると、各チャンクにIDが割り当てられ、割り当てられたIDがメタデータに含まれる。
○その後、暗号化された各チャンクはシャードに分割される。
○シャードは、最終的にストレージに送信され、各シャードは、異なるロケーションにおける異なるストレージ媒体に移動する可能性がある。
○データシャード内に暗号化されたメタデータがないことが好ましい(但し、チャンク識別子はメタデータシャードに埋め込まれる)。
2.データファイルの暗号化は、従来のファイル暗号化に加えて、シャード化のための後続のリードソロモン(Reed-Solomon(RS)又は均等物)コードを使用する。
○各データファイルは、暗号化チェーンに解析され、ファイルはチャンクに分散され、各チャンクはシャードに分散される。
○各チャンクは特定のIDを有する。特定のIDは計算によって決定され得る。
○メタデータは割り当てられたIDによって増加することから、メタデータは、様々なファイル属性(これらに限定されないが、名前、サイズ、変更時間、アクセス時間など)とIDとを含む。各IDは特定のデータファイルチャンクに関係する。
○チャンクIDは、関係付けられたメタデータに挿入される。
○データファイルチャンクは暗号化され、RS又は均等物を使用して符号化される。
○その後、暗号化されたチャンクはシャード化される。
○RSコードは暗号化のために設計されていないことから、チャンクは暗号化キーで暗号化され、本発明のプロセッサによって決定され、チャンクがシャードとして符号化される前に、一回限りの使用のためにランダムに生成されてもよい。
○全データファイルのチャンク化、暗号化、及び、記憶プロセスに1つのキーが使用され、チャンクごとに異なるキーが使用されたり、又は、その間にあるものが使用されたりする可能性がある。キー量の決定は、本発明のプロセッサによって実施され、結果はチャンク化などのためにメタデータに記憶される。
3.必要なコンテンツの基準を記憶するメタデータに対して、SSSS又は均等物を使用してチャンク識別子(チャンクID)を暗号化する。
〇メタデータシャードファイルは、チャンクIDシャードを記憶する。
○各暗号化キー自体がシャード化される。
○また、SSSS又は均等物を使用して、各暗号化キー(チャンク暗号化用)を暗号化する。
○SSSS以外の暗号化方式を代わりに使用することができる。
○ユーザは、ファイルの再構築に必要なシャードの最小数を特定することができる。
4.チャンクIDシャードのセットは、サイズ、変更時間などの複製ファイル属性と共にメタデータシャードファイルに記憶される。暗号化キーシャードは、対応するチャンクIDに関連付けられる。
5.チャンク化されたデータ、メタデータ、及び、暗号化キーのシャードは、物理的又は論理的に分散されたストレージ/媒体に記憶される。
6.このプロセスは、複数のストレージユニット間のデータ、メタデータ、及び、キーシャードの割り当てを計算するために、集中コンポーネントを必要としない。
7.シャードを記憶/フェッチするためのストレージを選択するために、記憶効率及び性能を改善するために、様々なアルゴリズムが適用可能である。
図11は、ファイル暗号化とメタデータ/キー暗号化との例を示す。設定可能なパラメータtとnとは、ファイル及びメタデータ/キー暗号化の場合、それぞれ、2と3とに設定される。この例では、3つのストレージから1つのストレージ障害を許容しながらコンテンツが「abcdefgh」であるファイルを記憶する。ファイルは、2つのピース、「abcd」及び「efgh」にチャンク化される。チャンクの基準(チャンクIDと呼ばれる)を作成するために、チャンクコンテンツのSHA256ハッシュを計算する。この例では、8c3f=Sha-256(「abcd」)と、a3dc=Sha-256(「efgh」)とがチャンクIDである。これらのチャンクIDは、メタデータ(JSON形式)に記憶される。チャンクコンテンツ「abcd」と「efgh」とは、それぞれ、ランダムに生成されたキー「y2gt」と「5xkn」とを使用して暗号化される。したがって、チャンクコンテンツは、「X?2♯」及び「&$cK」として暗号化される。その後、リードソロモン(Reed-Solomon(RS))コードを使用して暗号化されたチャンクコンテンツを符号化する。暗号化されたチャンクコンテンツ「X?2#」は、「kg」、「dh」、「%f」の3つのシャードに符号化される。「X?2♯」を再構築するために、3つのシャードのうち任意の2つのシャードが必要である。暗号化されたチャンク「&$cK」も同じ方法で符号化される。最後に、データシャードはデータストレージノードに記憶される。
チャンクコンテンツの暗号化に使用されたキーは、対応するチャンクに関連付けられる。チャンク基準情報(チャンクID)を保護するために、SSSSを使用して暗号化する。これには、復号化するために3つのシャードのいずれか2つが必要である。チャンクID「8c3f」 は、「ct1d」、「jfy2」、「7g72」に暗号化される。その他のチャンクも同じ方法で符号化される。チャンクIDシャードは、メタデータシャードファイルに別々に記憶される。暗号化キー「y2gt」もSSSSを使用して「3cd2」、「ziaj」、「pzc8」に暗号化される。その他の暗号化キー「5xkn」も同じ方法で符号化される。最後に、3つの異なるメタデータシャードファイル及びキーシャードファイルを異なるロケーションに記憶することで、メタデータとキーとが保護される。
3つのメタデータファイルのうち2つがアクセス可能な場合のみ、チャンクID「8c3f」と「a3dc」とを取得できる。これらのチャンクIDを使用して、データ/キーシャードを見つけ、暗号化されたチャンクコンテンツ「X?2#」と「&$cK」とを再構築できる。最後に、暗号化キーを使用して暗号化されたチャンクコンテンツを復号し、復号化されたチャンクを連結してオリジナルコンテンツ「abcdefgh」を取得する。
データ完全性検証
特定のレベルの障害を許可しながら複数のシャードを保存するには、データ記憶ステータスを計算するプロセスが必要である。これは、通常、I/Oを集中的に使用するタスクである。データ完全性検証の効率を改善するために、本発明のシステムは、典型的なストレージ及び操作システムで利用可能な典型的なリストオブジェクト(又はファイル)操作を使用して、データ記憶ステータスを計算するだけである。(1)ファイルパス、変更時間、ファイルステータスを含むメタデータストレージからメタデータシャードオブジェクトのリストをフェッチする。(2)チャンクIDを含むデータストレージからデータシャードオブジェクトのリストをフェッチする。(3)関連するチャンクIDを含むキーストレージからキーシャードオブジェクトのリストをフェッチする。(4)ファイルパスと変更時間とが同じメタデータファイルセットに基づいて、リストに表示されるメタデータファイルをカウントする。セットにおけるメタデータファイル数がnの場合、メタデータファイルは、ストレージ障害からの完全なレジリエンスを保証する。メタデータファイル数がn未満t以上の場合、対応するメタデータは、復号可能であり、また、メタデータセットは、ストレージ障害からの完全なレジリエンスを有するように回復可能である。メタデータファイル数がt未満の場合、メタデータファイルは破損している。(5)チャンクIDに基づいてリストに表示されるデータ/キーシャードをカウントする。セットにおけるシャード数がnの場合、各チャンク、メタデータ、及び、暗号化キーでn-tストレージ障害が許可される。これは、パラメータt及びnで指定された最大許容範囲である。シャード数がn未満t以上である場合、チャンクは復号可能であり、セットは、ストレージ障害から完全なレジリエンスを有するように回復可能である。シャード数がt未満の場合、チャンクは破損している。このプロセスでは、ファイルとチャンクとの間のマップを見つけるためにメタデータファイルのコンテンツを読み取らないことから、どのファイルが破損しているかを識別できないが、全体的な整合性とデータ記憶のステータスとは、ストレージに対するリストオブジェクト操作数が少ない場合に計算される。このプロセスは、各クライアントデバイス及びコントロールサーバなどの他の集中事業体からも実施することができる。
要約すると、本発明は、新規性及び独自性の多数の領域を含む。その中には以下のものがある:
・ファイル及びメタデータ/キー暗号化チェーン;ファイル符号化とメタデータ/キー符号化との統合を提供するために、RSコードとSSSSとをファイルの暗号化されたチャンクとチャンク識別子/キーコンテンツとに適用する。
・エンドツーエンドセキュリティ;ファイルシステムインターフェイスとストレージバックエンドとの間のセキュリティホールを防ぐために、ファイルとメタデータ/キー暗号化チェーンとをファイルシステム操作に統合する。
・システム実施;長い待ち時間のネットワーク(例えば、インターネット及びWAN)とユーザエクスペリエンスとを考慮しながら、システムコンポーネントを設計及び実施する。
‐クライアント中心のアーキテクチャにより、エンドツーエンドのデータ保護ソリューションの設計と実施とが保証される。
‐暗号化チェーン;(t,n)閾値保持特性を使用したコンテンツ暗号化及びメタデータ暗号化。
○コンテンツ暗号化は、ストレージ効率と最小サイズのエラー訂正コードとが好ましい。
○メタデータ暗号化は、ランダム性と理論暗号法とを必要とする。
‐AI支援構成並びに異常監視及び検出
クライアント中心アーキテクチャ
クライアントの定義に基づいて、ソリューションのアーキテクチャは、クライアントとデータ/メタデータ/ストレージとの間の直接通信を保証するクライアント中心実施を実現するように設計されている。クライアント側からストレージ側まで、クライアントは、異なるタイプのストレージによって提供されるプロトコルとチャネルとを使用する。プロトコルとチャネルとの多様性は、バックエンドでコードの最小限の実施又はゼロ修正によってクライアントで実施される。
分散ストレージソリューションにクライアント中心アーキテクチャを実施することは、クライアントがサーバのような共有コンポーネントではないため、サーバ側で実施するよりも難しいことである。したがって、クライアントは、欠落したシャードコンポーネントのコントロールを克服するために、効率的に同期するプロセスを実施する。本解決策は、共有及び集中リソース用に設計されていない分散ストレージにおけるメタデータに直接アクセスし、それにより、メタデータを部分的に符号化し、バージョンをクライアントに記憶することによるメタデータアクセス待ち時間を含む性能コントロールを克服する。
クライアントを実施するためには、ネットワーク搭載クライアントデバイスに、ユーザデータI/Oインターフェイス、データ処理ユニット、ハードウェアストレージ、同期処理ユニット、及び、ネットワークインターフェイスが必要である。この例では、データI/Oインターフェイスが読み取り、書き込み、リストなどのデータI/Oリクエストを受信する。このソリューションは、POSIXファイルインターフェイスをデータI/Oインターフェイスとして実施するが、これに限定されない。データI/Oインターフェイスは、キー値ストレージ、CRUD(Create-Read-Update-Delete)インターフェイスなどの実施が可能である。データ処理ユニットは、ファイルとメタデータ/キー暗号化チェーンとを実施することで、データを暗号化してシャードに符号化する。ハードウェアストレージは、中間ステータスと処理中のデータとをストレージに送信する前に記憶する。ハードウェアストレージは、権限のない事業体が中間ステータス及びデータにアクセスすることを防ぐために、アクセスコントロールが必要である。同期処理ユニットは、シャードを送受信する役割を果たす。同期処理ユニットは、クライアント及びストレージの経験的なパフォーマンス及び構成を記憶する知識ベースに基づいて、送信/受信タスクをスケジュール化する。同期処理ユニットは、また、利用可能なストレージノード間のシャードのロケーションを決定し、これも知識ベースに基づいて決定される。同期処理ユニットは、ユーザからの構成に基づいてパラメータを最適化するためにAIエンジンを実施する。同期処理ユニットにおけるこの非同期送受信タスクは、データをストレージに送る前に、ユーザに応答することによって遅延を吸収し、将来、スケジュール化アルゴリズムを拡張する柔軟性を提供する。
このソリューションでは、データストレージ、メタデータ/キーストレージ、及び、メタデータ/キーバックアップストレージの3種類のデータストレージを定義する。ストレージは、クライアントに認証及びデータI/Oインターフェイスを提供する。データストレージは、コスト効率が高く拡張性のあるソリューションを必要とするが、メタデータとキーストレージとは、高速アクセス時間を必要とする。メタデータ/キーバックアップストレージの要件は、メタデータ/キーストレージと同じであるが、ユーザドメインにある。
コントロールサーバは、バックエンドストレージの設定、ユーザ/デバイス/ポリシーの管理、及び、クライアントへのコマンドの送信を行うポータルである。コントロールサーバは、途中でユーザデータをインターセプトしないように、データ送信チャネルから完全に分離されている。コントロールサーバは、クライアントに構成を展開して、クライアントが必要なパラメータやリクエストのリダイレクトなどを取得してプロセスを開始できるようにする。
構成のための人工知能
バックエンドインターフェイスの複雑性及びサービスの多様性のために、満足度を最大化しながら、予算に基づいて最適なセットアップを構成することは困難である。本発明は、バックエンド構成のための時間及び労力を低減するために、構成層の抽象化を提供する。本発明は、運用コストを最適化し、性能を最適化し、バックエンドストレージのコスト及び性能、並びに、ユーザの行動プロファイルに関する異常に基づく経験的データを監視及び検出することを目的とする。クライアントは、イベントデータを収集し、匿名化、再フォーマット化などの前処理を実施する。イベントデータを収集した後、クライアントは、データ収集サーバにイベントデータを送信する。
操作コストを低減するために構成を最適化することは、バックエンドストレージ構成の複雑性を克服し、データ記憶/アクセスコスト、経験的ストレージ性能、ピアグループの使用プロファイル、事前に定義された静的モデルなどに基づいて、最適なバックエンドストレージにシャードを配布することによって、操作コストを低減する。
本解決策は、また、実施されたアーキテクチャの利点を活用して応答を改善する。本解決策は、バックエンドストレージの複雑性を克服する一方で、データアクセス及び記憶の待ち時間を低減する。操作コストの最適化とは異なり、高速ストレージにより多くのシャードを配布することは、ストレージコストよりも高い優先度を有するべきである。これらの2つの場合に加えて、システムは、単純な加重和方程式を使用することなどによって、コスト最適値と性能最適値との間のバランスのとれた設定を達成するように構成することができる。
本発明では、行動解析のためのAIアルゴリズムがシステムにおける異常を検出するためにユーザデータを調査しない。アルゴリズムは、未知の攻撃を検出するために広く使用されているが、偽陽性エラーを低減するために正常状態を正しく定義する必要がある。行動解析アルゴリズムを用いて異常を発見する。厳密にフィットしたモデルは低い精密率を示すが、大まかにフィットしたモデルは低いリコール率を示す。クライアントから収集されたデータに基づいて、システムは、正常状態と異常状態との間で分類指標を適応的に更新する。本発明は、個々のユーザ及びユーザグループからのデータアクセスパターンの特性を活用する。
以下は、本発明が最適化するパラメータである。
‐最適化1:データ記憶コスト及びデータアクセスコストを最小化するシャード記憶の指示変数
‐最適化2:データアップロード/ダウンロード完了時間を最小化するシャード記憶の指示変数
‐最適化3:最適化1又は最適化2を展開する際に、シャード再配分を最小化するコスト
‐最適化4:通常及び異常なデータアクセスを決定する分類指標
‐最適化5:通常及び異常なストレージアクセスを決定する分類指標
‐最適化6:クライアントからの通常エラーと異常エラーとを決定する分類指標
これらの最適化を達成するために、本発明は以下のものを収集する。
‐バックエンドストレージのコストと(定量的)サービスレベルアグリーメント(Service Level Agreement(SLA))
‐各クライアントにおけるバックエンドストレージの経験的スループット
‐ファイルコンテンツ操作のタイムスタンプ
‐操作名
‐シャードアクセス数
‐匿名ファイル識別子
‐匿名クライアント識別子
本発明のいくつかの共通のアプリケーションが上述されているが、本発明は、セキュリティ、誤差範囲、匿名性、又は、前述の又は他の関連する属性の任意の適切な組み合わせを増加させるために、任意のネットワークアプリケーションと統合され得ることが明確に理解されるべきである。更に、他の組み合わせ、追加、置換、及び、変更は、本明細書の開示を考慮すれば当業者には明らかであろう。したがって、本発明は、好ましい実施形態の反応によって限定されることを意図していない。
上記の発明は、明確にするために、ある程度詳細に記載されているが、本発明の原理から逸脱することなく、ある種の変更及び修正を行うことができることは明らかであろう。本発明のプロセス及び装置の両方を実施する多くの代替方法があることに留意されたい。したがって、本実施形態は、例示的であって限定的ではないと見なされるべきであり、本発明は、本明細書で与えられる特定の詳細に限定されるべきではない。本明細書で説明される態様は、システム、方法、又は、コンピュータ可読媒体として具現化することができる。
いくつかの実施形態では、説明された態様がハードウェア、ソフトウェア(ファームウェアなどを含む)、又は、それらの組合せで実施することができる。ある形態は、プロセッサによる実施のためのコンピュータ可読命令を含むコンピュータ可読媒体で実現することができる。1つ又は複数のコンピュータ可読媒体の任意の組合せを使用することができる。コンピュータ可読媒体は、コンピュータ可読信号媒体及び/又はコンピュータ可読記憶媒体を含むことができる。コンピュータ可読記憶媒体は、入力データに対して動作し、出力を生成することによって本明細書で説明される機能を実施するためにプログラム可能プロセッサによって使用されるコンピュータプログラムを記憶することができる任意の有形媒体を含むことができる。コンピュータプログラムは、コンピュータシステムにおいて、特定の機能を実施したり、特定の結果を決定したりするために、直接的又は間接的に使用できる一連の命令である。
いくつかの実施形態は、クラウド計算インフラストラクチャを介してエンドユーザに提供することができる。クラウド計算は、一般的に、ネットワーク(例えば、インターネット等)を介したサービスとしての拡張性のある計算リソースの提供を含む。本明細書では、いくつかの方法及びシステムを説明するが、単一のシステム又は方法が上述の主題のうちの2つ以上を含むことができることが企図される。したがって、複数の上記のシステム及び方法を、単一のシステム又は方法で一緒に使用することができる。
本出願に開示された実施形態は、全ての点において、例示的であり、限定的ではないと考えられるべきである。本発明の範囲は、前述の説明によってではなく、添付の特許請求の範囲によって示され、特許請求の範囲の同等性の意味及び範囲内に入るすべての変更は、その中に包含されることが意図される。
図中のフローチャート及び/又はブロック図は、本発明の概念の様々な例示的な実施形態による、システム、方法、及び、コンピュータプログラム製品の実施可能なアーキテクチャ、機能、及び、操作を示す。この点に関して、フローチャート又はブロック図の各ブロックは、指定された論理機能を実施するための1つ又は複数の実施可能命令を備える、モジュール、セグメント、又は、命令の一部を表すことができる。代替の実施では、ブロックに記載されている機能が図に記載されている順序から外れる場合がある。例えば、連続して示される2つのブロックは、実際には実質的に同時に実行されてもよく、又は、ブロックが含まれる機能に応じて時には逆の順序で実施されてもよい。また、ブロック図及び/又はフローチャートの各ブロック、並びに、ブロック図及び/又はフローチャートのブロックの組み合わせは、指定された機能又は動作を実施するか、又は、特殊目的ハードウェア及びコンピュータ命令の組み合わせを実施する特殊目的ハードウェアベースのシステムによって実施され得ることにも留意されたい。

Claims (20)

  1. ストレージのための少なくとも1つのコンピュータファイルを安全且つ確実に暗号化するプロセッサのための方法であって、前記ファイルは、コンテンツデータ及び関連するメタデータを含み、前記方法は、
    少なくとも1つの暗号化キーを生成するステップと、
    暗号化のための少なくとも1つのファイルの選択するステップと、
    計算暗号法及び理論暗号法の組み合わせに基づいてアルゴリズムを実施するステップであって、前記アルゴリズムは、前記ファイルの前記コンテンツデータ部分をnコンテンツチャンクのチェーンに解析し、各前記チャンクにチャンクIDが割り当てられ、チャンクごとに前記少なくとも1つの暗号化キーを使用して、前記コンテンツチャンクのそれぞれを暗号化し、各前記コンテンツチャンクを複数のコンテンツシャードに符号化し解析し、前記チャンクIDを暗号化し、前記増大メタデータを複数のメタデータシャードに解析し、それによって前記メタデータを変更する、ステップと、
    前記複数のコンテンツシャードをストレージのために少なくとも1つのロケーションに送るステップと、
    前記複数のメタデータシャードをストレージのために少なくとも1つのロケーションに送るステップと、を備え、
    前記暗号化及び符号化されたコンテンツデータファイルのためのストレージのための前記少なくとも1つのロケーションは、前記暗号化及び符号化されたメタデータのためのストレージのための前記少なくとも1つのロケーションと異なる、方法。
  2. 前記チャンクIDを符号化するステップに続いて、
    前記暗号化されたチャンクIDによって前記メタデータを増大させるステップと、
    前記少なくとも1つのキーを複数のキーシャードに解析するステップと、
    前記複数のキーシャードを暗号化するステップと、
    前記暗号化された複数のキーシャードを前記増大メタデータに追加するステップと、を更に備える、請求項1に記載の方法。
  3. 前記暗号化されたキーシャードと前記チャンクID情報とが別々に記憶される、請求項2に記載の方法。
  4. メタデータとキーとを暗号化する前記ステップは、SSSSを使用して実施される、請求項2に記載の方法。
  5. 前記プロセスの前記計算暗号法部分は、リードソロモン(Reed-Solomon)符号の使用を含む、請求項1に記載の方法。
  6. 前記コンテンツデータ暗号化技術は、AES-256の使用を含む、請求項1に記載の方法。
  7. コンテンツデータは、符号化の前に完全に暗号化される、請求項1に記載の方法。
  8. メタデータにおける前記ファイル属性は、暗号化されていない、請求項1に記載の方法。
  9. 少なくとも一部のメタデータは、前記ローカルデバイスの保管部に記憶される、請求項1に記載の方法。
  10. メタデータストレージ、キーストレージ、及び、データストレージの数のそれぞれは、設定可能であり、それぞれが3に限定されない、請求項1に記載の方法。
  11. メタデータシャード、キーシャード、及び、データシャードのパラメータt及びnが別々に設定可能であり、t=2及びn=3に制限されない、ここで、tは再構成に必要なコンテンツシャード数であり、nは記憶するコンテンツシャード数である、請求項1に記載の方法。
  12. キーが暗号化及び符号化されたデータファイル及び関連するメタデータを安全なストレージから安全且つ確実に再構成するためのプロセッサ型サーバであって、
    前記サーバは、
    ファイル暗号化エンジンとメタデータ暗号化エンジンとを含むチャンク化と暗号化とのためのデータ処理エンジンと、
    シャードバッファと、
    変更及びシャード化されたメタデータを少なくとも一時的に記憶するためのストレージと、
    スケジューラモジュール及びストレージ選択モジュールを含む同期処理ユニットと、
    データを記憶するためのネットワークインターフェイスと、
    再構成のためのファイルのユーザ選択のためのグラフィックユーザインターフェイス(GUI)又はファイルシステムインターフェイスの少なくとも1つと、備える、サーバ。
  13. 表示のためのユーザ選択オプションを生成するための知識ベースを更に備える、請求項12に記載のサーバ。
  14. 人工知能(AI)モジュールを更に備え、前記AIモジュールは、少なくともイベントログコレクタと、アルゴリズムを生成するためのデータアナライザと、パラメータチューナと、実施部とを備える、請求項12に記載のサーバ。
  15. 前記ストレージ選択モジュールは、前記データ処理エンジンに構成された最適化アルゴリズムを実施する、請求項12に記載のサーバ。
  16. 前記データ処理エンジンは、データ重複排除のないストレージを導くように構成される、請求項12に記載のサーバ。
  17. 前記データ処理エンジンは、nからのt(t out of n)シナリオ構築のために使用される、請求項12に記載のサーバ。
  18. 少なくとも1つの暗号化されたコンピュータファイルをストレージから安全且つ確実に再構築するためのプロセッサ型サーバのための方法であって、暗号法は、計算暗号法及び理論暗号法の両方を有し、前記暗号法は、nチャンクに解析され、各前記チャンクは複数のストレージに別々に記憶された各シャードを有するnシャードに解析された前記少なくとも1つの暗号化されたファイルのデータコンテンツと、少なくとも1つの暗号化キーに組み込まれ、その後、n部分に解析され、前記n部分のそれぞれが別々に記憶された前記少なくとも1つの暗号化されたコンピュータファイルのメタデータと、を備え、 前記方法は、
    暗号化時間を含む、認証された使用による再構築のための選択のための暗号化されたファイルのリストを送るステップと、
    再構築のための少なくとも1つのファイルの選択時に、前記プロセッサがtはn未満である少なくともtメタデータ部分を識別するステップと、
    ストレージにおける前記ファイルためのメタデータのすべての解析部分を識別することによって前記メタデータを再構築するステップと、
    前記プロセッサがチャンクごとにtはチャンクごとに異なる可能性があり、各tは関連するnより小さい少なくともtのコンテンツシャードを識別するステップと、
    各チャンクを再構築し、前記コンテンツデータファイルを再構成するステップと、
    前記再構築されたデータファイルを前記ユーザに送るステップと、を備える、方法。
  19. コンテンツシャード数は、暗号化の時点でユーザが設定可能であり、各tに限定されず、nがt=2及びn=3である、請求項18に記載の方法。
  20. 前記プロセッサ型サーバは、ユーザインターフェイスをコントロールし、前記暗号化ファイルのリストは、選択のために前記ユーザインターフェイスに送られる、請求項18に記載の方法。
JP2021569892A 2019-05-22 2020-05-14 強化セキュリティ、レジリエンス、及び、コントロールによる分散データストレージのための方法及びシステム Active JP7173646B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2022172006A JP7504495B2 (ja) 2019-05-22 2022-10-27 強化セキュリティ、レジリエンス、及び、コントロールによる分散データストレージのための方法及びシステム

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US201962851146P 2019-05-22 2019-05-22
US62/851,146 2019-05-22
PCT/US2020/032781 WO2020236500A1 (en) 2019-05-22 2020-05-14 Method and system for distributed data storage with enhanced security, resilience, and control

Related Child Applications (1)

Application Number Title Priority Date Filing Date
JP2022172006A Division JP7504495B2 (ja) 2019-05-22 2022-10-27 強化セキュリティ、レジリエンス、及び、コントロールによる分散データストレージのための方法及びシステム

Publications (2)

Publication Number Publication Date
JP2022528578A true JP2022528578A (ja) 2022-06-14
JP7173646B2 JP7173646B2 (ja) 2022-11-16

Family

ID=73457198

Family Applications (2)

Application Number Title Priority Date Filing Date
JP2021569892A Active JP7173646B2 (ja) 2019-05-22 2020-05-14 強化セキュリティ、レジリエンス、及び、コントロールによる分散データストレージのための方法及びシステム
JP2022172006A Active JP7504495B2 (ja) 2019-05-22 2022-10-27 強化セキュリティ、レジリエンス、及び、コントロールによる分散データストレージのための方法及びシステム

Family Applications After (1)

Application Number Title Priority Date Filing Date
JP2022172006A Active JP7504495B2 (ja) 2019-05-22 2022-10-27 強化セキュリティ、レジリエンス、及び、コントロールによる分散データストレージのための方法及びシステム

Country Status (10)

Country Link
US (2) US11281790B2 (ja)
EP (1) EP3973687A4 (ja)
JP (2) JP7173646B2 (ja)
KR (2) KR102451053B1 (ja)
CN (2) CN113994626B (ja)
AU (3) AU2020279052B2 (ja)
CA (2) CA3182645A1 (ja)
IL (2) IL293198A (ja)
MX (2) MX2021011531A (ja)
WO (1) WO2020236500A1 (ja)

Families Citing this family (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI712914B (zh) * 2019-09-12 2020-12-11 奕智鏈結科技股份有限公司 文件碎形化加密引擎及其技術
US20210111876A1 (en) * 2019-10-11 2021-04-15 Atakama LLC Secure session for decryption
US11327678B2 (en) * 2020-02-10 2022-05-10 Druva Inc. Restoring differential data during device migration
US11966502B2 (en) * 2020-03-17 2024-04-23 Forensifile, Llc Digital file forensic accounting and management system
US11748166B2 (en) * 2020-06-26 2023-09-05 EMC IP Holding Company LLC Method and system for pre-allocation of computing resources prior to preparation of physical assets
WO2022189462A1 (en) * 2021-03-08 2022-09-15 Softiron Limited Secure recovery of security credential information
US20220318648A1 (en) * 2021-03-30 2022-10-06 Bank Of America Corporation Artificial intelligence (ai)-based blockchain management
US11526498B2 (en) * 2021-03-31 2022-12-13 Gm Cruise Holdings Llc Storage of shard data
CN113407987B (zh) * 2021-05-24 2023-10-20 支付宝(杭州)信息技术有限公司 保护隐私的确定业务数据特征有效值的方法及装置
CN114153374B (zh) * 2021-08-04 2022-06-28 北京天德科技有限公司 一种元数据与数据共同存储的分布式存储系统
WO2023018470A1 (en) 2021-08-13 2023-02-16 Micron Technology, Inc. Undo capability for memory devices
US20230177191A1 (en) * 2021-12-06 2023-06-08 Clocr, Inc Methods and Systems for Accessing Information Stored in an Online Vault
US20230237467A1 (en) * 2022-01-24 2023-07-27 Coinbase, Inc. Risk Analysis System for Cold Restore Requests for Digital Wallets
CN114844887B (zh) * 2022-03-30 2024-04-19 广州市华懋科技发展有限公司 新型互联网独立平台系统及其数据交互方法
TWI783895B (zh) * 2022-04-01 2022-11-11 國立勤益科技大學 隨機式rs碼之qr碼驗証系統及方法
US20230325100A1 (en) * 2022-04-08 2023-10-12 Micron Technology, Inc. Fine grained resource management for rollback memory operations
US11620393B1 (en) * 2022-05-14 2023-04-04 Aswath Premaradj System and method for facilitating distributed peer to peer storage of data
CN114936008B (zh) * 2022-06-06 2023-08-18 上海威固信息技术股份有限公司 一种数据处理方法、系统、电子设备和存储介质
CN115118751B (zh) * 2022-07-15 2024-04-19 广东浪潮智慧计算技术有限公司 一种基于区块链的监管系统、方法、设备和介质
CN115567203A (zh) * 2022-09-23 2023-01-03 太保科技有限公司 一种恢复秘密信息的方法、装置、设备及存储介质
CN116611988B (zh) * 2023-05-23 2024-04-26 释空(上海)展示制作有限公司 图像处理方法、电子设备和存储介质
CN117527193A (zh) * 2023-10-20 2024-02-06 合芯科技有限公司 一种基于国密ceph对象存储的加密方法及装置

Citations (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH11503547A (ja) * 1995-04-11 1999-03-26 キネテック インコーポレイテッド データ処理システムにおけるデータの識別
US20050097318A1 (en) * 2001-03-21 2005-05-05 Microsoft Corporation On-disk file format for a serverless distributed file system
US20060026425A1 (en) * 2001-03-26 2006-02-02 Microsoft Corporation Encrypted key cache
JP2009539169A (ja) * 2006-05-31 2009-11-12 ストアウィズ エルティーディー. ストレージ用論理データオブジェクトの変換方法およびシステム
JP2010045670A (ja) * 2008-08-15 2010-02-25 Tokyo Denki Univ ネットワークシステム
US20120226904A1 (en) * 2004-10-25 2012-09-06 Security First Corp. Secure data parser method and system
JP2013511103A (ja) * 2009-11-16 2013-03-28 マイクロソフト コーポレーション 信頼できるコンピューティング・サービスとデータ・サービスのためのコンテナを利用しないデータ
US20160196440A1 (en) * 2010-09-20 2016-07-07 Security First Corp. Systems and methods for secure data sharing
US20170005797A1 (en) * 2015-07-02 2017-01-05 Payfont Limited Resilient secret sharing cloud based architecture for data vault
WO2017065209A1 (ja) * 2015-10-16 2017-04-20 国立大学法人東北大学 情報処理システム、情報処理装置、情報処理方法、及び、プログラム
JP2017126314A (ja) * 2016-01-13 2017-07-20 株式会社ZenmuTech コンピュータプログラム、秘密管理方法及びシステム

Family Cites Families (220)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6976165B1 (en) * 1999-09-07 2005-12-13 Emc Corporation System and method for secure storage, transfer and retrieval of content addressable information
JP4554806B2 (ja) 2000-05-11 2010-09-29 株式会社日立製作所 受信方法及び送信方法
JP2002044071A (ja) 2000-05-16 2002-02-08 Hitachi Ltd 受信方法
US7636724B2 (en) * 2001-08-31 2009-12-22 Peerify Technologies LLC Data storage system and method by shredding and deshredding
KR101001048B1 (ko) * 2003-04-25 2010-12-14 애플 인크. 보안 네트워크를 통한 콘텐츠의 분배 방법 및 그 시스템
US7512814B2 (en) * 2004-11-09 2009-03-31 Fortiva Inc. Secure and searchable storage system and method
US20070011469A1 (en) * 2005-07-11 2007-01-11 Simdesk Technologies Secure local storage of files
US20070016771A1 (en) * 2005-07-11 2007-01-18 Simdesk Technologies, Inc. Maintaining security for file copy operations
US8209363B2 (en) * 2007-10-09 2012-06-26 Cleversafe, Inc. File system adapted for use with a dispersed data storage network
US10289688B2 (en) * 2010-06-22 2019-05-14 International Business Machines Corporation Metadata access in a dispersed storage network
US9632722B2 (en) * 2010-05-19 2017-04-25 International Business Machines Corporation Balancing storage unit utilization within a dispersed storage network
US20070083467A1 (en) * 2005-10-10 2007-04-12 Apple Computer, Inc. Partial encryption techniques for media data
BRPI0618725A2 (pt) * 2005-11-18 2011-09-06 Rick L Orsini método analisador de dados seguro e sistema
US9286308B2 (en) * 2005-12-22 2016-03-15 Alan Joshua Shapiro System and method for metadata modification
US7593939B2 (en) * 2006-04-07 2009-09-22 Google Inc. Generating specialized search results in response to patterned queries
US8667273B1 (en) * 2006-05-30 2014-03-04 Leif Olov Billstrom Intelligent file encryption and secure backup system
US8397083B1 (en) * 2006-08-23 2013-03-12 Netapp, Inc. System and method for efficiently deleting a file from secure storage served by a storage system
US7920700B2 (en) * 2006-10-19 2011-04-05 Oracle International Corporation System and method for data encryption
US20090271762A1 (en) * 2008-04-29 2009-10-29 Sugarcrm Inc. Business software application system and method
US9128877B1 (en) * 2007-04-19 2015-09-08 Robert E. Cousins Systems, methods and computer program products including features of transforming data involving a secure format from which the data is recoverable
US7856437B2 (en) * 2007-07-31 2010-12-21 Hewlett-Packard Development Company, L.P. Storing nodes representing respective chunks of files in a data store
US20090070752A1 (en) * 2007-09-06 2009-03-12 International Business Machines Corporation Method and system for optimization of an application
US8549326B2 (en) * 2007-10-20 2013-10-01 Blackout, Inc. Method and system for extending encrypting file system
CN101939946B (zh) * 2008-01-07 2013-04-24 安全第一公司 使用多因素或密钥式分散对数据进行保护的系统和方法
US20090319772A1 (en) * 2008-04-25 2009-12-24 Netapp, Inc. In-line content based security for data at rest in a network storage system
US8903973B1 (en) * 2008-11-10 2014-12-02 Tanium Inc. Parallel distributed network management
US9483486B1 (en) * 2008-12-30 2016-11-01 Veritas Technologies Llc Data encryption for a segment-based single instance file storage system
US8788831B2 (en) * 2009-03-20 2014-07-22 Barracuda Networks, Inc. More elegant exastore apparatus and method of operation
US10447474B2 (en) * 2009-04-20 2019-10-15 Pure Storage, Inc. Dispersed data storage system data decoding and decryption
US10395054B2 (en) * 2011-06-06 2019-08-27 Pure Storage, Inc. Updating distributed storage network software
US8744071B2 (en) * 2009-04-20 2014-06-03 Cleversafe, Inc. Dispersed data storage system data encryption and encoding
US8654971B2 (en) * 2009-05-19 2014-02-18 Security First Corp. Systems and methods for securing data in the cloud
US8731190B2 (en) * 2009-06-09 2014-05-20 Emc Corporation Segment deduplication system with encryption and compression of segments
US8401181B2 (en) * 2009-06-09 2013-03-19 Emc Corporation Segment deduplication system with encryption of segments
US8762348B2 (en) * 2009-06-09 2014-06-24 Emc Corporation Segment deduplication system with compression of segments
US8918365B2 (en) * 2009-06-19 2014-12-23 Blekko, Inc. Dedicating disks to reading or writing
US10230692B2 (en) * 2009-06-30 2019-03-12 International Business Machines Corporation Distributed storage processing module
US9009575B2 (en) * 2009-07-30 2015-04-14 Cleversafe, Inc. Rebuilding a data revision in a dispersed storage network
EP2462549B1 (en) * 2009-08-07 2019-10-02 Eco-mail Development, LLC Teired key communication system and method in support of controlled vendor message processing
US8443185B2 (en) * 2009-08-07 2013-05-14 Eco-Mail Development, Llc System for management and processing of electronic vendor mail
US9122579B2 (en) * 2010-01-06 2015-09-01 Intelligent Intellectual Property Holdings 2 Llc Apparatus, system, and method for a storage layer
US8918534B2 (en) 2009-09-29 2014-12-23 Cleversafe, Inc. Writing data slices to ready and non-ready distributed storage units in a distributed storage network
US8478937B2 (en) * 2009-09-30 2013-07-02 Cleversafe, Inc. Method and apparatus for dispersed storage memory device utilization
US9413529B2 (en) * 2009-10-30 2016-08-09 International Business Machines Corporation Distributed storage network and method for storing and retrieving encryption keys
US9900150B2 (en) 2009-10-30 2018-02-20 International Business Machines Corporation Dispersed storage camera device and method of operation
US9866426B2 (en) * 2009-11-17 2018-01-09 Hawk Network Defense, Inc. Methods and apparatus for analyzing system events
US8918897B2 (en) * 2009-11-24 2014-12-23 Cleversafe, Inc. Dispersed storage network data slice integrity verification
WO2011076463A1 (en) * 2009-12-23 2011-06-30 International Business Machines Corporation Deduplication of encrypted data
US9922063B2 (en) * 2009-12-29 2018-03-20 International Business Machines Corporation Secure storage of secret data in a dispersed storage network
US8918674B2 (en) * 2010-01-28 2014-12-23 Cleversafe, Inc. Directory file system in a dispersed storage network
US8527496B2 (en) * 2010-02-11 2013-09-03 Facebook, Inc. Real time content searching in social network
US9262643B2 (en) * 2010-02-22 2016-02-16 Sookasa Inc. Encrypting files within a cloud computing environment
US8566552B2 (en) * 2010-03-12 2013-10-22 Cleversafe, Inc. Dispersed storage network resource allocation
US9176824B1 (en) * 2010-03-12 2015-11-03 Carbonite, Inc. Methods, apparatus and systems for displaying retrieved files from storage on a remote user device
EP2553905B1 (en) * 2010-03-31 2018-05-09 Security First Corp. Systems and methods for securing data in motion
US9047218B2 (en) * 2010-04-26 2015-06-02 Cleversafe, Inc. Dispersed storage network slice name verification
US9679040B1 (en) * 2010-05-03 2017-06-13 Panzura, Inc. Performing deduplication in a distributed filesystem
US9678981B1 (en) * 2010-05-03 2017-06-13 Panzura, Inc. Customizing data management for a distributed filesystem
US9678968B1 (en) * 2010-05-03 2017-06-13 Panzura, Inc. Deleting a file from a distributed filesystem
US8874868B2 (en) * 2010-05-19 2014-10-28 Cleversafe, Inc. Memory utilization balancing in a dispersed storage network
US8621580B2 (en) * 2010-05-19 2013-12-31 Cleversafe, Inc. Retrieving access information in a dispersed storage network
US10911230B2 (en) * 2010-05-19 2021-02-02 Pure Storage, Inc. Securely activating functionality of a computing device in a dispersed storage network
WO2011150346A2 (en) * 2010-05-28 2011-12-01 Laurich Lawrence A Accelerator system for use with secure data storage
US8909858B2 (en) * 2010-06-09 2014-12-09 Cleversafe, Inc. Storing encoded data slices in a dispersed storage network
US20120016633A1 (en) * 2010-07-16 2012-01-19 Andreas Wittenstein System and method for automatic detection of anomalous recurrent behavior
US8842746B2 (en) * 2010-08-02 2014-09-23 Cleversafe, Inc. Receiving encoded data slices via wireless communication
US9454431B2 (en) * 2010-11-29 2016-09-27 International Business Machines Corporation Memory selection for slice storage in a dispersed storage network
US10198492B1 (en) * 2010-12-28 2019-02-05 Amazon Technologies, Inc. Data replication framework
US8468132B1 (en) * 2010-12-28 2013-06-18 Amazon Technologies, Inc. Data replication framework
US8924739B2 (en) * 2011-01-05 2014-12-30 Apple Inc. System and method for in-place encryption
US8909657B2 (en) * 2011-01-14 2014-12-09 Apple Inc. Content based file chunking
WO2012103499A1 (en) * 2011-01-27 2012-08-02 O'hare Mark S Systems and methods for securing data
US8694752B2 (en) * 2011-02-01 2014-04-08 Cleversafe, Inc. Transferring data in response to detection of a memory system imbalance
US9251097B1 (en) * 2011-03-22 2016-02-02 Amazon Technologies, Inc. Redundant key management
US8983960B1 (en) * 2011-03-28 2015-03-17 Google Inc. Opportunistic job processing
US8874991B2 (en) * 2011-04-01 2014-10-28 Cleversafe, Inc. Appending data to existing data stored in a dispersed storage network
US9268964B1 (en) * 2011-04-04 2016-02-23 Symantec Corporation Techniques for multimedia metadata security
US8707393B2 (en) * 2011-05-09 2014-04-22 Cleversafe, Inc. Providing dispersed storage network location information of a hypertext markup language file
WO2012158654A2 (en) * 2011-05-14 2012-11-22 Bitcasa, Inc. Cloud file system with server-side deduplication of user-agnostic encrypted files
WO2012167094A1 (en) * 2011-06-01 2012-12-06 Security First Corp. Systems and methods for secure distributed storage
US8762770B2 (en) * 2011-07-06 2014-06-24 Cleversafe, Inc. Distribution of a customized preview of multi-media content
US8533231B2 (en) * 2011-08-12 2013-09-10 Nexenta Systems, Inc. Cloud storage system with distributed metadata
US9092385B2 (en) * 2011-08-17 2015-07-28 Cleversafe, Inc. Facilitating access of a dispersed storage network
US8874935B2 (en) * 2011-08-30 2014-10-28 Microsoft Corporation Sector map-based rapid data encryption policy compliance
US9274864B2 (en) * 2011-10-04 2016-03-01 International Business Machines Corporation Accessing large amounts of data in a dispersed storage network
US9129039B2 (en) * 2011-10-18 2015-09-08 Ut-Battelle, Llc Scenario driven data modelling: a method for integrating diverse sources of data and data streams
US8769310B2 (en) * 2011-10-21 2014-07-01 International Business Machines Corporation Encrypting data objects to back-up
US8683286B2 (en) * 2011-11-01 2014-03-25 Cleversafe, Inc. Storing data in a dispersed storage network
US9804928B2 (en) * 2011-11-14 2017-10-31 Panzura, Inc. Restoring an archived file in a distributed filesystem
US8356050B1 (en) * 2011-11-21 2013-01-15 Yahoo! Inc. Method or system for spilling in query environments
US9203625B2 (en) * 2011-11-28 2015-12-01 Cleversafe, Inc. Transferring encoded data slices in a distributed storage network
KR20130064521A (ko) * 2011-12-08 2013-06-18 삼성전자주식회사 데이터 저장 장치 및 그것의 데이터 관리 방법
US9430286B2 (en) * 2011-12-12 2016-08-30 International Business Machines Corporation Authorizing distributed task processing in a distributed storage network
US20130238900A1 (en) * 2011-12-12 2013-09-12 Cleversafe, Inc. Dispersed storage network secure hierarchical file directory
US9052824B2 (en) * 2012-01-26 2015-06-09 Upthere, Inc. Content addressable stores based on sibling groups
US9465861B2 (en) * 2012-01-31 2016-10-11 International Business Machines Corporation Retrieving indexed data from a dispersed storage network
WO2013166520A1 (en) * 2012-05-04 2013-11-07 Box, Inc. Repository redundancy implementation of a system which incrementally updates clients with events that occurred via cloud-enabled platform
US8825752B1 (en) * 2012-05-18 2014-09-02 Netapp, Inc. Systems and methods for providing intelligent automated support capable of self rejuvenation with respect to storage systems
EP2667337A3 (en) * 2012-05-22 2014-03-12 Hasso-Plattner-Institut für Softwaresystemtechnik GmbH Transparent control of access invoking real-time analysis of the query history
US20130339749A1 (en) * 2012-06-19 2013-12-19 Philippe Spuehier Distributed biometric data storage and validation
US9037856B2 (en) * 2012-07-18 2015-05-19 Nexenta Systems, Inc. System and method for distributed deduplication of encrypted chunks
US9547774B2 (en) * 2012-07-18 2017-01-17 Nexenta Systems, Inc. System and method for distributed deduplication of encrypted chunks
US9904788B2 (en) * 2012-08-08 2018-02-27 Amazon Technologies, Inc. Redundant key management
US9154298B2 (en) * 2012-08-31 2015-10-06 Cleversafe, Inc. Securely storing data in a dispersed storage network
US20140082376A1 (en) * 2012-09-14 2014-03-20 Texas Tech University System System, Method and Apparatus for Securely Saving/Retrieving Data on a Data Storage
US10623386B1 (en) * 2012-09-26 2020-04-14 Pure Storage, Inc. Secret sharing data protection in a storage system
US11032259B1 (en) * 2012-09-26 2021-06-08 Pure Storage, Inc. Data protection in a storage system
US9146830B2 (en) * 2012-10-26 2015-09-29 Jsmapreduce Corporation Hybrid local/remote infrastructure for data processing with lightweight setup, powerful debuggability, controllability, integration, and productivity features
US9483657B2 (en) 2013-01-14 2016-11-01 Accenture Global Services Limited Secure online distributed data storage services
CN103118089A (zh) * 2013-01-22 2013-05-22 华中科技大学 一种基于多个云存储系统的安全存储方法及其系统
US20140214886A1 (en) * 2013-01-29 2014-07-31 ParElastic Corporation Adaptive multi-client saas database
US10148548B1 (en) * 2013-01-29 2018-12-04 Axway, Inc. System and method for real-time analysis of incoming data
US10055441B2 (en) * 2013-02-05 2018-08-21 International Business Machines Corporation Updating shared group information in a dispersed storage network
CA2900504A1 (en) * 2013-02-13 2014-08-21 Security First Corp. Systems and methods for a cryptographic file system layer
US20150178007A1 (en) * 2013-03-15 2015-06-25 Cloudifyd, Inc. Method and system for integrated cloud storage management
US9356782B2 (en) * 2013-03-15 2016-05-31 Unsene, Inc. Block encryption
US10075523B2 (en) * 2013-04-01 2018-09-11 International Business Machines Corporation Efficient storage of data in a dispersed storage network
US9405926B2 (en) 2014-06-30 2016-08-02 Paul Lewis Systems and methods for jurisdiction independent data storage in a multi-vendor cloud environment
US10984116B2 (en) 2013-04-15 2021-04-20 Calamu Technologies Corporation Systems and methods for digital currency or crypto currency storage in a multi-vendor cloud environment
US10043017B2 (en) 2013-04-15 2018-08-07 Paul Lewis Systems and methods for jurisdiction independent data storage in a multi-vendor cloud environment
US20160154851A1 (en) * 2013-04-24 2016-06-02 Hitachi Ltd. Computing device, storage medium, and data search method
US20140337491A1 (en) * 2013-05-08 2014-11-13 Box, Inc. Repository redundancy implementation of a system which incrementally updates clients with events that occurred via a cloud-enabled platform
US9195826B1 (en) * 2013-05-30 2015-11-24 Emc Corporation Graph-based method to detect malware command-and-control infrastructure
US9432341B2 (en) * 2013-05-30 2016-08-30 International Business Machines Corporation Securing data in a dispersed storage network
US9158927B1 (en) * 2013-06-24 2015-10-13 Amazon Technologies, Inc. Cross-region recovery of encrypted, erasure-encoded data
US9158472B2 (en) * 2013-06-25 2015-10-13 Google Inc. Hierarchical chunking of objects in a distributed storage system
US9774401B1 (en) * 2013-07-15 2017-09-26 Paul Borrill Entangled links, transactions and trees for distributed computing systems
US9979751B2 (en) * 2013-09-20 2018-05-22 Open Text Sa Ulc Application gateway architecture with multi-level security policy and rule promulgations
US9367557B1 (en) * 2013-09-26 2016-06-14 Emc Corporation System and method for improving data compression
US9189402B1 (en) * 2013-09-26 2015-11-17 Emc Corporation Method for packing and storing cached data in deduplicated cache system of a storage system
US8935446B1 (en) * 2013-09-26 2015-01-13 Emc Corporation Indexing architecture for deduplicated cache system of a storage system
US9514146B1 (en) * 2013-09-26 2016-12-06 Emc Corporation System and method for improving data compression of a storage system in an online manner
US10838990B1 (en) * 2013-09-26 2020-11-17 EMC IP Holding Company LLC System and method for improving data compression of a storage system using coarse and fine grained similarity
US9336143B1 (en) * 2013-09-26 2016-05-10 Emc Corporation Indexing a deduplicated cache system by integrating fingerprints of underlying deduplicated storage system
US9390116B1 (en) * 2013-09-26 2016-07-12 Emc Corporation Insertion and eviction schemes for deduplicated cache system of a storage system
US10216754B1 (en) * 2013-09-26 2019-02-26 EMC IP Holding Company LLC System and method for balancing compression and read performance in a storage system
US9225691B1 (en) * 2013-09-27 2015-12-29 Emc Corporation Deduplication of encrypted dataset on datadomain backup appliance
US9483509B2 (en) * 2013-10-02 2016-11-01 Google Inc. Dynamic shuffle reconfiguration
US11128448B1 (en) * 2013-11-06 2021-09-21 Pure Storage, Inc. Quorum-aware secret sharing
US10331695B1 (en) * 2013-11-25 2019-06-25 Amazon Technologies, Inc. Replication coordination service for data transfers between distributed databases
CN103595730B (zh) * 2013-11-28 2016-06-08 中国科学院信息工程研究所 一种密文云存储方法和系统
US9280678B2 (en) * 2013-12-02 2016-03-08 Fortinet, Inc. Secure cloud storage distribution and aggregation
US10187358B2 (en) * 2013-12-03 2019-01-22 Amazon Technologies, Inc. Data transfer optimizations
US9665306B1 (en) * 2013-12-18 2017-05-30 EMC IP Holding Company LLC Method and system for enhancing data transfer at a storage system
US9223679B1 (en) * 2014-02-25 2015-12-29 Emc Corporation Lightweight, non-intrusive, and flexible apparatus to obtain system and process state
US9529834B2 (en) * 2014-02-26 2016-12-27 International Business Machines Corporation Concatenating data objects for storage in a dispersed storage network
US9665429B2 (en) * 2014-02-26 2017-05-30 International Business Machines Corporation Storage of data with verification in a dispersed storage network
US9667738B2 (en) * 2014-03-24 2017-05-30 Tanium Inc. Local data caching for data transfers on a network of computational devices
US10298555B2 (en) * 2014-04-04 2019-05-21 Zettaset, Inc. Securing files under the semi-trusted user threat model using per-file key encryption
US9697228B2 (en) * 2014-04-14 2017-07-04 Vembu Technologies Private Limited Secure relational file system with version control, deduplication, and error correction
WO2016010604A2 (en) * 2014-04-28 2016-01-21 Topia Technology, Inc. Systems and methods for security hardening of data in transit and at rest via segmentation, shuffling and multi-key encryption
US9542239B2 (en) * 2014-04-30 2017-01-10 International Business Machines Corporation Resolving write request conflicts in a dispersed storage network
US20190036648A1 (en) * 2014-05-13 2019-01-31 Datomia Research Labs Ou Distributed secure data storage and transmission of streaming media content
SG11201609471TA (en) * 2014-05-13 2016-12-29 Cloud Crowding Corp Distributed secure data storage and transmission of streaming media content
US20150356305A1 (en) * 2014-06-05 2015-12-10 Cleversafe, Inc. Secure data access in a dispersed storage network
US9798754B1 (en) * 2014-06-12 2017-10-24 EMC IP Holding Company LLC Method to efficiently track I/O access history using efficient memory data structures
US20160224638A1 (en) * 2014-08-22 2016-08-04 Nexenta Systems, Inc. Parallel and transparent technique for retrieving original content that is restructured in a distributed object storage system
US9397832B2 (en) * 2014-08-27 2016-07-19 International Business Machines Corporation Shared data encryption and confidentiality
DE102014113430A1 (de) * 2014-09-17 2016-03-17 Bundesdruckerei Gmbh Verteilte Datenspeicherung mittels Berechtigungstoken
EP2998881B1 (en) * 2014-09-18 2018-07-25 Amplidata NV A computer implemented method for dynamic sharding
US9727423B2 (en) * 2014-09-30 2017-08-08 Code 42 Software, Inc. Shared file system predictive storage techniques
US9288617B1 (en) * 2014-10-30 2016-03-15 Deep Rock Ventures, Inc. Mobile media communications system
US10229127B1 (en) * 2014-12-18 2019-03-12 EMC IP Holding Company LLC Method and system for locality based cache flushing for file system namespace in a deduplicating storage system
US9906510B2 (en) * 2015-02-10 2018-02-27 Airwatch Llc Virtual content repository
US10586063B2 (en) * 2015-03-20 2020-03-10 Samsung Electronics Co., Ltd. Method and apparatus for storing file by using a plurality of cloud storages
US10496611B1 (en) * 2015-03-20 2019-12-03 EMC IP Holding Company LLC Method and system for file name based command execution in a storage system
US9916458B2 (en) * 2015-03-31 2018-03-13 EMC IP Holding Company LLC Secure cloud-based storage of data shared across file system objects and clients
US9875249B1 (en) * 2015-03-31 2018-01-23 Maginatics Llc Reducing database fragmentation
US10191914B2 (en) * 2015-03-31 2019-01-29 EMC IP Holding Company LLC De-duplicating distributed file system using cloud-based object store
US10032038B2 (en) * 2015-04-29 2018-07-24 Apple Inc. File system support for rolling keys
US20160335447A1 (en) * 2015-05-15 2016-11-17 Alcatel-Lucent Usa, Inc. Secure enterprise cdn framework
US9813248B2 (en) * 2015-05-27 2017-11-07 Quest Software Inc. Content-based encryption keys
US10402122B2 (en) * 2015-05-29 2019-09-03 Pure Storage, Inc. Transferring encoded data slices in a dispersed storage network
US10169125B2 (en) * 2015-05-29 2019-01-01 International Business Machines Corporation Re-encoding data in a dispersed storage network
US10055420B1 (en) * 2015-06-30 2018-08-21 EMC IP Holding Company LLC Method to optimize random IOS of a storage device for multiple versions of backups using incremental metadata
KR20180052603A (ko) * 2015-07-08 2018-05-18 클라우드 크라우딩 코포레이션 카메라로부터 신호들을 보안 전송하기 위한 시스템 및 방법
US10042704B2 (en) * 2015-07-31 2018-08-07 International Business Machines Corporation Validating stored encoded data slice integrity in a dispersed storage network
US10496614B2 (en) * 2015-10-07 2019-12-03 Oracle International Corporation DDL processing in shared databases
US9680809B2 (en) * 2015-10-12 2017-06-13 International Business Machines Corporation Secure data storage on a cloud environment
US10838923B1 (en) * 2015-12-18 2020-11-17 EMC IP Holding Company LLC Poor deduplication identification
US10482413B2 (en) * 2015-12-18 2019-11-19 Amazon Technologies, Inc. Data transfer tool for secure client-side data transfer to a shippable storage device
US9934389B2 (en) * 2015-12-18 2018-04-03 Amazon Technologies, Inc. Provisioning of a shippable storage device and ingesting data from the shippable storage device
US9887998B2 (en) * 2015-12-18 2018-02-06 Amazon Technologies, Inc. Security model for data transfer using a shippable storage device
EP3395031B1 (en) * 2016-02-19 2021-11-24 NEC Corporation Method for providing a proof of retrievability
US11048823B2 (en) * 2016-03-09 2021-06-29 Bitspray Corporation Secure file sharing over multiple security domains and dispersed communication networks
US10931402B2 (en) * 2016-03-15 2021-02-23 Cloud Storage, Inc. Distributed storage system data management and security
ES2899933T3 (es) 2016-03-15 2022-03-15 Datomia Res Labs Ou Gestión y seguridad de datos del sistema de almacenamiento distribuido
US10496494B1 (en) * 2016-03-31 2019-12-03 EMC IP Holding Company LLC Multilayer manifest for data storage systems
JP6905697B2 (ja) 2016-04-27 2021-07-21 学校法人東京電機大学 電子メールシステム
US10452859B2 (en) * 2016-06-10 2019-10-22 Apple Inc. File system metadata protection
CN109219945B (zh) * 2016-06-30 2021-11-19 英特尔公司 Hdmi偏斜补偿通信方法、设备及机器可读存储介质
US11463421B2 (en) * 2016-08-08 2022-10-04 Record Sure Limited Method of generating a secure record of a conversation
US10868674B2 (en) * 2016-08-12 2020-12-15 ALTR Solutions, Inc. Decentralized database optimizations
US10581807B2 (en) * 2016-08-29 2020-03-03 International Business Machines Corporation Using dispersal techniques to securely store cryptographic resources and respond to attacks
US10587406B1 (en) * 2016-12-15 2020-03-10 Amazon Technologies, Inc. File system encryption with key rotation
US11030697B2 (en) * 2017-02-10 2021-06-08 Maximus, Inc. Secure document exchange portal system with efficient user access
US11025596B1 (en) * 2017-03-02 2021-06-01 Apple Inc. Cloud messaging system
US11233642B2 (en) * 2017-04-27 2022-01-25 Hewlett-Packard Development Company, L.P. Regulating document access
US10474587B1 (en) * 2017-04-27 2019-11-12 EMC IP Holding Company LLC Smart weighted container data cache eviction
US10102150B1 (en) * 2017-04-28 2018-10-16 EMC IP Holding Company LLC Adaptive smart data cache eviction
US10095624B1 (en) * 2017-04-28 2018-10-09 EMC IP Holding Company LLC Intelligent cache pre-fetch
US10491386B2 (en) * 2017-06-01 2019-11-26 International Business Machines Corporation Slice-level keyed encryption with support for efficient rekeying
EP3665606B1 (en) * 2017-08-10 2024-03-27 Shardsecure, Inc., A Delaware, US Corporation Method for securing data utilizing microshard fragmentation
US20190173854A1 (en) * 2017-11-22 2019-06-06 Michael Beck Decentralized information sharing network
US10630652B2 (en) 2017-12-29 2020-04-21 Janine Darling Data-centric secure data technology, archiving, and storage system
US20200137035A1 (en) 2017-12-29 2020-04-30 Stash America Llc Secure, On-Demand Generation of Web Content
US11176265B2 (en) 2017-12-29 2021-11-16 Stash America Llc Data-centric interactive data security system
US10931450B1 (en) * 2018-04-27 2021-02-23 Pure Storage, Inc. Distributed, lock-free 2-phase commit of secret shares using multiple stateless controllers
US11409892B2 (en) * 2018-08-30 2022-08-09 International Business Machines Corporation Enhancing security during access and retrieval of data with multi-cloud storage
SG11202103517TA (en) * 2018-10-12 2021-05-28 Tzero Ip Llc Doubly-encrypted secret parts allowing for assembly of a secret using a subset of the doubly-encrypted secret parts
EP3654578B1 (en) * 2018-11-16 2022-04-06 SafeTech BV Methods and systems for cryptographic private key management for secure multiparty storage and transfer of information
US10607027B1 (en) * 2018-12-05 2020-03-31 Cyberark Software Ltd. Secretless secure data distribution and recovery process
US11544388B2 (en) * 2018-12-07 2023-01-03 Iex Group, Inc. Distributed parallel data protection system and method
US20200193035A1 (en) * 2018-12-13 2020-06-18 Andres De Jesus Andreu Method and system for data security via entropy and disinformation based information dispersal
EP3918484A4 (en) * 2019-01-29 2023-03-29 Cloud Storage, Inc. METHOD FOR REPAIRING ENCODE AND MEMORY NODES FOR MINIMUM MEMORY REGENERATION CODES FOR DISTRIBUTED MEMORY SYSTEMS
US11226867B2 (en) * 2019-04-29 2022-01-18 Hewlett Packard Enterprise Development Lp Backups of file system instances of encrypted data objects
US11100235B2 (en) * 2019-04-29 2021-08-24 Hewlett Packard Enterprise Development Lp Backups of file system instances with root object encrypted by metadata encryption key
US11323252B2 (en) * 2019-10-11 2022-05-03 Atakama LLC Relay network for encryption system
CN111343479A (zh) * 2020-03-04 2020-06-26 深圳市朗强科技有限公司 远距离传输场景中音视频数据的发送、接收方法及设备
US11165610B1 (en) * 2021-03-08 2021-11-02 Nxp Usa, Inc. De-emphasis controller for transmit driver in wireline communication

Patent Citations (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH11503547A (ja) * 1995-04-11 1999-03-26 キネテック インコーポレイテッド データ処理システムにおけるデータの識別
US20050097318A1 (en) * 2001-03-21 2005-05-05 Microsoft Corporation On-disk file format for a serverless distributed file system
US20060026425A1 (en) * 2001-03-26 2006-02-02 Microsoft Corporation Encrypted key cache
US20120226904A1 (en) * 2004-10-25 2012-09-06 Security First Corp. Secure data parser method and system
JP2009539169A (ja) * 2006-05-31 2009-11-12 ストアウィズ エルティーディー. ストレージ用論理データオブジェクトの変換方法およびシステム
JP2010045670A (ja) * 2008-08-15 2010-02-25 Tokyo Denki Univ ネットワークシステム
JP2013511103A (ja) * 2009-11-16 2013-03-28 マイクロソフト コーポレーション 信頼できるコンピューティング・サービスとデータ・サービスのためのコンテナを利用しないデータ
US20160196440A1 (en) * 2010-09-20 2016-07-07 Security First Corp. Systems and methods for secure data sharing
US20170005797A1 (en) * 2015-07-02 2017-01-05 Payfont Limited Resilient secret sharing cloud based architecture for data vault
WO2017065209A1 (ja) * 2015-10-16 2017-04-20 国立大学法人東北大学 情報処理システム、情報処理装置、情報処理方法、及び、プログラム
JP2017126314A (ja) * 2016-01-13 2017-07-20 株式会社ZenmuTech コンピュータプログラム、秘密管理方法及びシステム

Also Published As

Publication number Publication date
WO2020236500A1 (en) 2020-11-26
EP3973687A1 (en) 2022-03-30
AU2020279052B2 (en) 2022-10-06
IL286453A (en) 2021-12-01
AU2020279052A1 (en) 2021-12-09
IL286453B (en) 2022-06-01
KR20220005098A (ko) 2022-01-12
MX2022006501A (es) 2022-07-04
CA3139159C (en) 2023-02-14
JP2023015141A (ja) 2023-01-31
US20200372163A1 (en) 2020-11-26
KR20220140639A (ko) 2022-10-18
CN113994626B (zh) 2023-01-17
EP3973687A4 (en) 2023-09-13
AU2022263473A1 (en) 2022-12-08
CA3139159A1 (en) 2020-11-26
CN116232582A (zh) 2023-06-06
MX2021011531A (es) 2022-06-30
NZ782231A (en) 2023-08-25
AU2022263473B2 (en) 2024-01-04
CA3182645A1 (en) 2020-11-26
JP7504495B2 (ja) 2024-06-24
KR102451053B1 (ko) 2022-10-05
US20210397731A1 (en) 2021-12-23
IL293198A (en) 2022-07-01
US11281790B2 (en) 2022-03-22
JP7173646B2 (ja) 2022-11-16
CN113994626A (zh) 2022-01-28
AU2024202176A1 (en) 2024-05-02

Similar Documents

Publication Publication Date Title
JP7173646B2 (ja) 強化セキュリティ、レジリエンス、及び、コントロールによる分散データストレージのための方法及びシステム
Celesti et al. Adding long-term availability, obfuscation, and encryption to multi-cloud storage systems
US10467096B2 (en) Securely storing data in a dispersed storage network
US9122888B2 (en) System and method to create resilient site master-key for automated access
CN107430668B (zh) 用于个人设备和云数据的安全分布式备份
CA2882602A1 (en) Systems and methods for secure data sharing
Adluru et al. Hadoop eco system for big data security and privacy
AU2015203172B2 (en) Systems and methods for secure data sharing
Zerfos et al. SDFS: Secure distributed file system for data-at-rest security for Hadoop-as-a-service
Mar Secured virtual diffused file system for the cloud
Sahbudin et al. A web client secure storage approach in multi-cloud environment
Jogdand et al. CSaaS-a multi-cloud framework for secure file storage technology using open ZFS
Hwang et al. Fulfilling mutual nonrepudiation for cloud storage
NZ794009A (en) Method and system for distributed data storage with enhanced security, resilience, and control
Resende et al. Enforcing privacy and security in public cloud storage
CN112764677A (zh) 一种在云存储中增强数据迁移安全性的方法
Chen et al. A design for scalable and secure key-value stores
Khoda Parast CephArmor: Secure interface on high-performance clustered storage solution
EP2375626A1 (en) Data storage
Akintoye et al. A Survey on Storage Techniques in Cloud Computing
Premathilaka Cloud-based document management framework for business process optimization
Mar Securing Files in the Cloud
Di Pietro et al. Towards threat-adaptive dynamic fragment replication in large scale distributed systems
Singhal et al. Managing Data Retention Policies at Scale
Chaitanya Addressing performance challenges in secure storage systems

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20211119

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20211119

A871 Explanation of circumstances concerning accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A871

Effective date: 20211119

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20220607

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20220906

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20221027

R150 Certificate of patent or registration of utility model

Ref document number: 7173646

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150