web-dev-qa-db-ja.com

end2end暗号化メッセージング用の秘密鍵ストレージ

私は非対称暗号化、秘密/公開鍵に精通しています...

WhatsApp、Facebookなどのエンドツーエンドのメッセージ暗号化の「新しい」トレンドについて知りたいです。私の理解では、デバイスはローカルでキーペアを生成し、公開キーのみをサーバー/他のユーザーに送信する必要があります。

ただし、秘密キーがデバイスにのみ保存されている場合、秘密キーがなくなったため、新しいデバイスを使用するときに、サーバーから以前のすべての会話(暗号化されていると思われる)を読み取り/フェッチするにはどうすればよいですか?または、たとえば、ブラウザでFacebookメッセンジャーを使用している場合、秘密鍵を転送しないときに、以前のメッセージを復号化するにはどうすればよいですか?

6
Carlo

FacebookとWhatsappのエンドツーエンドの暗号化について話すとき、両方とも一度に1つのデバイスで機能します。 参照:Facebookヘルプセンター

ただし、秘密キーがデバイスにのみ保存されている場合、新しいデバイスを使用するときに、秘密キーがなくなったため、以前のすべての会話(暗号化されている可能性があります)をサーバーから読み取り/フェッチするにはどうすればよいですか?

Whatsappで新しいデバイスに移動すると、デバイスが他のデバイスと同期して、そのデバイスから送信されたすべてのメッセージを読み取るのを待つ必要があります。 Whatsappは基本的にメッセージを再暗号化します。 Facebookについても同様だと思います。 Whatsappへの参照はここにあります

または、たとえば、ブラウザでFacebookメッセンジャーを使用している場合、秘密キーを転送しないときに、以前のメッセージを復号化するにはどうすればよいですか?

Facebookヘルプセンターで述べたように、シークレットチャット(エンドツーエンドの暗号化されたチャットのFB名)を開始する場合、他のデバイスが同じキーを持っていないため、エンドツーエンドの暗号化に使用されるデバイスのみがメッセージを復号化できます。
Whatsapp Webに関しては、電話クライアントと(エンドツーエンドではなく)安全な接続があり、電話クライアントは他のデバイスとの完全なエンドツーエンド暗号化を持っています。 参考

1
Limit