1

ここに投稿された質問をフォローアップしたいと思います。

複数の異なるキーによる暗号化?

作成したWebアプリにGnuGPソリューションを実装しましたが、スケーラビリティの問題にすぐに陥り、少し行き詰まっていることを認めなければなりません。基本的に、複数の公開鍵を使用してファイルを暗号化すると、それらすべての人がファイルを復号化できるのは事実です。素晴らしい。しかし、このファイルを100人と共有するとしたら、どうすればよいでしょうか。

私が遭遇した最初の制限はコマンドライン制限であり、1行に100個の公開鍵を入れることはできません。

2番目の制限は、新しい人を追加したり、誰かへのアクセスを取り消したりするたびに、101または99キーで再暗号化する必要があることです。これは、非常に時間とCPUを消費します。

3番目の制限はさらに悪いです。たとえば、フォルダーを共有している場合、フォルダーにアクセスするすべての新しいユーザーは、フォルダーの各ファイルのすべてのユーザーで再暗号化する必要があります。

これはすべて非常に汚い/ハッキーなようです..誰かがより良い解決策を持っているでしょうか?

ありがとう

4

1 に答える 1

1

フォルダごとにランダムなAES秘密鍵を作成し、それを使用してファイルを暗号化します。たとえば、AESEAXを使用します。次に、アクセスを許可するユーザーの公開鍵を使用して、この鍵を暗号化します。後で人を追加する場合は、「admin」秘密鍵を使用して復号化し、公開鍵を使用して秘密鍵を暗号化するだけです。EAX暗号の初期カウンターとして、ファイル名にハッシュ(SHA-256など)を使用できます。

コマンドラインツールに関しては、このようなものをプログラミングすることをお勧めします(たとえば、C / C++および関連するGnuPG自体とJavaアプリのBouncyCastleを使用します)。

于 2011-12-21T22:36:21.267 に答える