1

我正在尝试在两方之间实现一个基本的安全通道,可以保护自己免受字典和阻止重放攻击。

我想使用 RSA 公钥密码系统作为保护通道的一种手段。但是,我想知道以下情况是否有效:

  1. A 生成私钥和公钥
  2. A向B发送公钥
  3. B 用公钥加密消息
  4. B 将加密消息发送给 A
  5. 现在 A 可以使用私钥解密消息。

现在这一切都很好。但是,如果 A 想安全地向 B 发送消息怎么办。这是否意味着我们需要两对密钥。那么 A 将拥有 B 的公钥,而 B 将拥有 A 的公钥?这是真的?这可行吗?此外,是否需要某种形式的随机散列或填充来防止块重放攻击?

4

1 回答 1

1

看看Diffie-Hellman 密钥协议,这是一种允许两方在仅公开通信时建立(共享)私钥的协议。防止重放攻击可以通过频繁重新协商密钥来防止重放消息被接收方解密,和/或通过在加密消息中包含时间戳和接收端的有限可接受窗口。

于 2012-04-29T12:01:29.903 回答