安全地验证来自源的2条消息 - 哪种算法?

时间:2014-05-02 03:08:00

标签: encryption public-key-encryption password-encryption

我正在开展一个项目:

  1. 发件人向多个客户端发送一个256位公钥
  2. 发件人然后通过另一种媒介向这些客户发送第二条消息(任何规模)
  3. 客户将有足够的详细信息假装他们是发件人,但第一张公钥中的私钥除外
  4. 第一个256位公钥必须具有很大的随机性范围,因为我们将使用SHA2并将其用于密码
  5. 我需要验证第二条消息是来自发件人,而不是来自恶意客户端。

    我正在寻找的加密算法类型是什么?我想在第二条消息中嵌入验证密钥,以便非恶意客户端可以验证发件人(或拥有私钥的人)是否发送了这两封邮件,而不是其他客户端。

1 个答案:

答案 0 :(得分:1)

您正在寻找的加密原语是public key signatures。他们完全按照你的描述行事,但我会在你的观点中添加一些评论:

  • 重新 1 :您使用的第一个频道在某种意义上必须是安全的,因此攻击者不能在第一步中假装成服务器。如果另一方知道你是一个人,那么这种安全连接的一个例子就是通过usb棒自己携带它。或者,如果它们都是代码的软件安装,则可以将公钥嵌入源代码中(假设软件以安全的方式到达客户端)。关于密钥大小:对于大多数公钥签名方案,256位密钥非常短。对于椭圆曲线方案,256bit最小,对于RSA,您现在需要2048bit的密钥。
  • 重新 4 :公钥将具有大量的熵(“随机性的巨大范围”的技术术语),但重要的是,为多个应用程序重用密钥是不好的做法。你为什么不在第一步中传输(独立生成的)密码?