web-dev-qa-db-ja.com

暗号化されたボリューム全体を毎回アップロードする必要なしに、暗号化されたファイルをクラウドサービスで同期します。

状況:

  • ユーザーには、暗号化された形式でクラウドサービス(MegaやDropboxなど)で同期を維持したいGBに相当するフォルダーがいくつかあります。

  • ユーザーは単一の暗号化されたボリュームを同期したくないので、これは明らかに、最小のファイルであっても毎回単一のボリュームを再アップロードするためです変更;

さまざまな理由で 、VeraCryptまたはEFSが除外されていることは明らかです。

解決策は何ですか?

20
nico

これは明らかに、最小のファイルが変更されるたびに単一のボリュームを再アップロードすることを意味します。

これは、さまざまな理由から、VeraCryptまたはEFSを除外することは明らかです。

それは真実ではない。 VeraCryptは、内部のファイルが変更されるたびに暗号化されたボリューム全体を再暗号化せず、 Dropboxはボリューム全体をアップロードしません ほんの一部が変更された場合:

Dropboxは、転送するデータを可能な限りスマートにすることで、可能な限り最高のパフォーマンスを実現しようとします。ファイル全体ではなく、ファイルに加えられた変更のみをアップロードします。

13
techraf

オンラインに存在するゼロ知識ファイル同期サービスの1つを使用できます。例は http://www.spideroak.comhttps://www.boxcryptor.com/en などです。信頼できるものを1つ選んでください。

基本的に、それらはDropboxのようなサービスを提供しますが、ファイルがサーバーにアップロードされる前に、コンピューターを離れることのないパスワードを使用して、ローカルですべてのファイルを自分のマシンで暗号化することを約束します。

それらのいくつかはファイルへのWebアクセスも提供しますが、Webで機能するソリューションはすべて資格情報を保護できないJavaScriptを使用して実装される可能性があるため、おそらくそれを避けます。

もちろん、これらのサービスのソフトウェアのどこかにバックドアがないことを完全に確信することは決してできませんが、それは、独自のサービスを導入するのではなく、完成した製品を使用する代償です。

https://librevault.com/ バックドアがないことを確認するためにソースコードを検査する必要がある場合は、この方法が適している可能性がありますが、まだ準備が整っていないようです。多分他のゼロ知識オープンソースソリューションが周りにあります。もしあったなら、私はこれらのうちの1つを支持します。

4
Out of Band

WinSCPはフォルダーをクラウド上の(個別に)暗号化されたファイルと同期できます。また、クラウドストレージプロバイダーが提供する頻繁に不安定な同期プログラムの代わりにSFTPを使用します。 https://winscp.net/eng/docs/file_encryption

FTPSはまだサポートされていません( https://winscp.net/forum/viewtopic.php?t=26434 )。

WinSCPの優れた機能は、暗号化コードが十分に文書化されていることです。スタンドアロンの復号化ツールも提供されています。

3
gueste

すべての新しいファイルを複製場所にコピー(およびファイルを削除)する「シャドウコピー」デザインパターンを使用して、シャドウコピー内の個々のファイルを暗号化できます。バックアップ/同期ソリューションは、暗号化されたシャドウコピーを目的としています。

これはスクリプトで実行できますが、リスクと非効率性が伴います。

このパターンを使用すると、ローカルの電子メールクライアントは影響を受けず、暗号化された変更のみをバックアップ/同期します。

2
schroeder

数年前にこの質問をしました Superuser 。当時私が思いついた解決策は、 BoxCryptorを使用してファイルを暗号化することでした(これはまさにあなたが求めていることを行います)次に、暗号化されたファイルをDropboxにアップロードします。

この方法では、ファイルの数やサイズなど、一部の情報が漏洩することに注意してください。また、ファイル名は有料版でのみ暗号化されます。


バックアップサービスの包括的なスプレッドシート †を作成した後、ファイルをSpiderOakに移動しました。それははるかに便利であり、ゼロ知識バックアップは最終的に同じ(またはより良い)セキュリティを提供します。現在、Boxcryptorは、税務書類など、めったに復号化する必要がないものにのみ使用しています。

注:このスプレッドシートは数年前のものであり、情報、特に価格設定は古くなっている可能性があります

これは問題の多い質問であり、過度に詳細な説明が必要です。暗号化されたボリュームを1つのファイルオブジェクトとして扱っていると仮定します。

推論は、ファイルの暗号化に関する1つの小さな詳細に要約できます。基本的に、「適切な」暗号化方法は、「チャンク」ではなく完全にファイルを暗号化します。したがって、小さな変更(1バイト)により、まったく新しいファイルコンテンツが生成されます。

ファイルをチャンク暗号化することでこの事実を回避するソリューションを提案している場合、長期暗号化ストレージの全体的なポイントを見落としていることになります。

それが、上記の技術的な問題に対する哲学的な答えです。したがって、考慮する必要があるのは、ファイルボリュームを再編成して、サイズを最小限に抑え、暗号化されたファイルのサブセットへの変更を最小限に抑えることです。これにより、同期や移動が簡単になります。

ただし、技術的には、暗号化されたファイルの一部を同期することはできません。あなたが実際にそうするならば、それは良いセキュリティ慣行に反します。暗号化されたファイルの増分更新を可能にするソリューションに投資する前に、基礎となる暗号を真剣に検討します。セキュリティを犠牲にしない、この問題に対する「良い」解決策はまだ見ていません。

1
selt

私はあなたの仮定が間違っていると思います。 VeraCryptは実際、デルタ変更に対応した形式を使用しています。これは、DropBoxや類似のクラウドストレージで完全に使用できることを意味します。私はそうするので、私はこれを知っています!クラウドに同期されている大きなボリュームがいくつかあります。

重要なことは、デルタ処理を使用するクラウドストレージ同期クライアントを使用していることを確認することです(たとえば、ブロックレベルで変更をチェックし、変更されたブロックのみを同期します)。場合。

1
Julian Knight

クラウドサービスをローカルパスとして「マウント」できる場合、borgbackup(BSDライセンス)は非常に優れたソリューションです。これは、暗号化されたバックアップを作成するpythonベースのツールです。サーバーは「データ」の大規模なブロブしか認識しないため、ファイル構造やメタデータも明らかになりません(「マウント」と言います)。 、なぜならborgはサーバーがborgを実行することも必要とするからです。これはクラウドでの単純なファイルホスティングでは不可能です)。

それができない場合は、「重複」( http://duplicity.nongnu.org/ ;思い出すとGPLライセンス)を調査できます。これは、クラウド上で何も必要とせず、サポートしています。これまでに約20の異なるクラウドプロバイダー。私は何年にもわたって重複性を使用しましたが、ボーグに切り替えたのは、ボーグが古い履歴のプルーニングをより適切にサポートしているためです(ご希望の場合は自動的に行われます)。重複はその前線でひどく得点します。

ただし、クラウドの場合、現在はさらに多くのクラウドプロバイダーをサポートし、ローカルで暗号化できるrclone(MITライセンス)を使用しています(状況を正しく理解していれば、これまではGoogleドライブしか使用していませんでした)。 Rcloneはrsyncと非常によく似ており、私の経験ではかなり高速です。もちろんRcloneは、ファイルサイズやディレクトリ構造などのファイルメタデータを明らかにします。気にしないので大丈夫です。あなたが気にかけたら、それはあなたのために機能しません。

0
sitaram

私は cryptomator を使用しており、ほとんど満足しています。どちらかと言えば、それはJavaで書かれているため、Javaランタイムに280MBの依存関係を取り込むため、GUIはデスクトップとうまく統合できず、HDPIでうまく拡張できません。

それ以外は良い仕事をします(暗号化コードなどを監査していないことに注意してください)。これは無料のオープンソースであり、ファイル名を暗号化します。

0
user9651