Oramfs ファイル システムが公開され、データ アクセスの性質が隠蔽されている

セキュリティ監査を専門とする Kudelski Security は、データ アクセス パターンをマスクする ORAM (Oblivious Random Access Machine) テクノロジを実装した Oramfs ファイル システムを公開しました。 このプロジェクトは、書き込みおよび読み取り操作の構造を追跡できないファイル システム層を実装した Linux 用の FUSE モジュールを提案しています。 Oramfs コードは Rust で書かれており、GPLv3 に基づいてライセンスされています。

ORAM テクノロジには、暗号化に加えて別の層の作成が含まれるため、データを操作するときに現在のアクティビティの性質を判断することはできません。 たとえば、サードパーティのサービスにデータを保存するときに暗号化が使用されている場合、このサービスの所有者はデータ自体を見つけることはできませんが、どのブロックがアクセスされ、どのような操作が実行されたかを判断できます。 ORAM は、FS のどの部分がアクセスされているか、およびどのような種類の操作 (読み取りまたは書き込み) が実行されているかに関する情報を隠します。

Oramfs は、外部ストレージ上のデータ ストレージの編成を簡素化できるユニバーサル ファイル システム レイヤーを提供します。 データはオプションの認証を使用して暗号化されて保存されます。 ChaCha8、AES-CTR、および AES-GCM アルゴリズムを暗号化に使用できます。 書き込みおよび読み取りアクセスのパターンは、Path ORAM スキームを使用して隠蔽されます。 将来的には、他のスキームも実装される予定ですが、現在の形式では、開発はまだプロトタイプ段階にあり、運用システムでの使用は推奨されていません。

Oramfs は任意のファイル システムで使用でき、ターゲットの外部ストレージの種類に依存しません。ローカル ディレクトリの形式でマウントできる任意のサービス (SSH、FTP、Google Drive、Amazon S3) にファイルを同期できます。 、Dropbox、Google Cloud Storage、Mail.ru Cloud、Yandex.Disk、および rclone でサポートされているサービス、またはマウント用の FUSE モジュールがあるその他のサービス)。 ストレージ サイズは固定されておらず、追加のスペースが必要な場合は、ORAM サイズを動的に増やすことができます。

Oramfs のセットアップは、サーバーとクライアントとして機能するパブリックとプライベートの XNUMX つのディレクトリを定義することになります。 パブリック ディレクトリには、SSHFS、FTPFS、Rclone、およびその他の FUSE モジュールを介して外部ストレージをマウントすることによって外部ストレージに接続されている、ローカル ファイル システム内の任意のディレクトリを指定できます。 プライベート ディレクトリは Oramfs FUSE モジュールによって提供され、ORAM に保存されているファイルを直接操作するように設計されています。 ORAM イメージ ファイルはパブリック ディレクトリにあります。 プライベート ディレクトリでの操作はすべてこのイメージ ファイルの状態に影響しますが、このファイルは外部の観察者にとってはブラック ボックスのように見え、その変化は書き込み操作が実行されたか読み取り操作が実行されたかなど、プライベート ディレクトリ内のアクティビティに関連付けることができません。 。

Oramfs は、最高レベルのプライバシーが必要であり、パフォーマンスが犠牲になる可能性がある領域で使用できます。 データ読み取り操作を含むすべてのストレージ操作により、ファイル システム イメージ内のブロックが再構築されるため、パフォーマンスが低下します。 たとえば、10MB のファイルの読み取りには約 1 秒かかり、25MB のファイルには 3 秒かかります。 10MB の書き込みには 15 秒かかり、25MB の書き込みには 50 秒かかります。 同時に、Oramfs は、Cloudflare によって開発され、オプションで ORAM モードをサポートする UtahFS ファイル システムと比較して、読み取り時に約 9 倍、書き込み時に約 2 倍高速です。

出所: オープンネット.ru

コメントを追加します