-1

アプリを実行している 2 つの Android デバイスがあります。このアプリはBump APIを使用して情報を交換し、後で使用する共有シークレットを作成します。

具体的には、共有シークレットは後で中央サーバーに送信され、そこでデバイスが「カップル」として登録されます。

私は 2 種類の解決策を思いつきましたが、他にも解決策があるはずです。

  1. 2 つのデバイスのどちらがシークレットを生成できるかを決定します (たとえば、コインを投げることによって)。
  2. 両方のデバイスにシークレットの一部を入力させ、それらを結合させます (たとえば、2 つの寄与を乗算または XOR します)。

この状況の最善の解決策は何ですか?

--編集-- 安全に通信しようとはしていません (バンプ チャネルは十分に安全だと考えています)。むしろ、この特定の問題に対する最もエレガントな解決策を見つけようとしています。

4

2 に答える 2

5

Diffie-Hellman 鍵交換がすぐに思い浮かびます。

于 2012-05-29T18:28:34.143 に答える
-1

各デバイスは、共有シークレットと同じ長さのランダム データを生成し、他のデバイスに送信します。共有シークレットは、この 2 つの部分の XOR です。

1 つのデバイスが壊れて文字列がゼロしか生成されない場合でも、共有シークレットは有効です。

于 2012-05-30T11:00:52.430 に答える