-1

我有两个运行应用程序的 Android 设备。该应用程序使用Bump API交换信息,目的是提供一个共享密钥供以后使用。

具体来说,共享秘密稍后将被发送到中央服务器,然后设备在该服务器上注册为“一对”。

我想出了两种解决方案,但肯定还有其他解决方案。

  1. 决定两个设备中的哪一个可以生成秘密(例如,通过掷硬币)
  2. 让两个设备都输入秘密的一部分并将它们组合起来(例如,将两个贡献相乘或异或)

这种情况的最佳解决方案是什么?

--EDIT-- 我没有尝试安全地通信(我认为 Bump 通道足够安全)。相反,我试图为这个特定问题找到最优雅的解决方案。

4

2 回答 2

5

Diffie-Hellman 密钥交换立即浮现在脑海中。

于 2012-05-29T18:28:34.143 回答
-1

每个设备生成与共享密钥长度相等的随机数据并将其发送到其他设备。共享密钥是这两个部分的异或。

即使一台设备损坏并且只生成零字符串,共享密钥仍然是好的。

于 2012-05-30T11:00:52.430 回答