問題は次のとおりです。2 つのクライアント間で暗号化された接続を確立する必要があります (したがって、少なくとも 1 つのシークレット (キー) が必要です)。彼らは、パブリック チャネルを介した通信のみを許可されています。また、彼らはお互いの秘密を知りません。
tl;dr
アリス、ボブ、カールが部屋にいます。彼らはお互いを知りません。アリスはカールが理解できない秘密をボブに伝えたいと思っています。彼女はどうやってこれを行うことができますか?
問題は次のとおりです。2 つのクライアント間で暗号化された接続を確立する必要があります (したがって、少なくとも 1 つのシークレット (キー) が必要です)。彼らは、パブリック チャネルを介した通信のみを許可されています。また、彼らはお互いの秘密を知りません。
tl;dr
アリス、ボブ、カールが部屋にいます。彼らはお互いを知りません。アリスはカールが理解できない秘密をボブに伝えたいと思っています。彼女はどうやってこれを行うことができますか?
彼らはまだそれほどオープンではないチャネルを確立する必要があります。たとえば、ボブはアリスに公開鍵を渡します。彼女はこの鍵を使用して秘密を暗号化し、秘密鍵を使用して解読できるようにボブに返します。
(カールがより強く、ボブに十分近い場合、とにかく役に立たないことに注意してください)。
公開鍵アプローチを検討する必要があると思います。これは、各人が2つの関連するキーを持っている場所です。パブリックとプライベート。公開鍵はメッセージの暗号化に使用されますが、メッセージを復号化できるのは秘密鍵のみです。
参照-http://en.wikipedia.org/wiki/Public-key_cryptography#Description