首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >私钥和公钥有何不同?

私钥和公钥有何不同?
EN

Security用户
提问于 2016-03-23 16:20:39
回答 3查看 1.1K关注 0票数 1

在阅读关于DKIM的文章时,我看到发送方的私钥被用来加密散列,然后由接收方使用发件人的公钥解密。

与加密消息相比,这是另一种方式。

由于私钥和公钥都可以用来加密消息(上述两种情况下的邮件或散列),它们有何不同?

  • 为什么不能互换使用呢?
  • 加密算法是否因所使用的密钥而不同(而且--想必--生成的密码文本的强度是不同的?)
EN

回答 3

Security用户

回答已采纳

发布于 2016-03-23 16:30:43

密钥对中的公钥和私钥是基本数学结构的不同方面。

让我们举几个例子:

  • 在RSA中,公钥由一个大的复合整数n(称为模)和一个(通常是短的)奇数(“公共指数”)组成。私钥最终是对n的素因子的认识,在实践中,n= pq对于两个大素数p和q,私钥是p和q。
  • 在ECDSA中,我们操作椭圆曲线,这是一种包含“点”的奇怪的数学动物。曲线是一组一定大小的q,私钥x是非零整数模q(即介于1和q-1之间的整数);公钥是曲线上的一个点,它恰好是在常规的不动点(称为“生成器”)上应用群律x-1次的结果。

在这两种情况下,私钥和公钥之间有很强的数学关系,但它们仍然是非常不同的东西。另外,非对称密码的结构依赖于该算法,并且有相当多的种类。

最后但并非最不重要的一点是,DKIM与加密无关。它是一种使用签名的机制。很明显,你无意中发现了其中的一条,其中一条声称要把签名解释为“加密哈希”。请注意,所有这些解释都是混乱和错误的。

票数 7
EN

Security用户

发布于 2016-03-23 16:31:21

私钥和公钥可以互换使用来加密。这就是问题所在。算法没有(主要)区别,但在密钥的用途上。

通过将私钥保持为私有,您就有了唯一的、秘密的机制来解密来自公钥的消息。这确保只有您才能读取消息。

通过保持公钥公开,世界可以从您的私钥解密消息。这个过程不是为了保守消息的秘密,而是为了让世界能够验证你,而且只有你,加密了消息。

票数 1
EN

Security用户

发布于 2017-05-27 10:51:55

一个有趣的区别是:

在RSA的情况下,您可以从私钥派生出公钥,当然,反之亦然。

票数 1
EN
页面原文内容由Security提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://security.stackexchange.com/questions/118361

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档