オンラインサービスプロバイダーによって保存されたデータの政府による広範囲な監視に関する最近の啓示に照らして、現在、ゼロ知識サービスが大流行しています。
ゼロ知識サービスは、すべてのデータがサーバーに保存されていないキーで暗号化されて保存されるサービスです。暗号化と復号化は完全にクライアント側で行われ、サーバーはプレーンテキストデータまたはキーを認識しません。その結果、サービスプロバイダーは、たとえ暗号化を解除したい場合でも、第三者にデータを解読して提供することはできません。
例を挙げましょう。SpiderOakは、Dropboxのゼロ知識バージョンとして見ることができます。
プログラマとして、私たちはコードのホスティングサービス(Bitbucket、Assemblaなど)の特定のクラスに対して、最も機密性の高いデータ(コード)に大きく依存し、信頼しています。もちろん私はここでプライベートリポジトリについて話しています-ゼロ知識の概念はパブリックリポジトリには意味がありません。
私の質問は:
ゼロ知識コードホスティングサービスを作成するための技術的な障壁はありますか?たとえば、SVN、Mercurial、Gitなどの一般的なバージョン管理システムで使用されるネットワークプロトコルについて、クライアントとサーバー間で通信されるデータを暗号化するスキームの実装を困難(または不可能)にするものがありますか?サーバーが知らないキー?
今日存在するゼロ知識コードホスティングサービスはありますか?