Security 公钥和私钥是否使用相同的算法生成?

Security 公钥和私钥是否使用相同的算法生成?,security,encryption,public-key-encryption,Security,Encryption,Public Key Encryption,用公钥加密的消息能否用私钥解密 用私钥加密的消息能否用公钥解密 公钥和私钥是使用相同的算法生成的吗?按各自的顺序:是、是和是 实际上,只有公钥可以解密由私钥加密的内容,反之亦然 还要注意的是,“public”和“private”这两个名称都是任意的。只是不对称密钥对的最佳用途是让其中一个密钥为机密,另一个为其他人所知,因此: 使用公钥的人可以向您发送只有您才能解密的消息,而使用私钥 您可以发送只能用公钥解密的消息,这样人们就知道您是真正的作者 问:公钥和私钥是使用相同的算法生成的吗 一般来说

公钥加密的消息能否用私钥解密

私钥加密的消息能否用公钥解密


公钥和私钥是使用相同的算法生成的吗?

按各自的顺序:是、是和是

实际上,只有公钥可以解密由私钥加密的内容,反之亦然

还要注意的是,“public”和“private”这两个名称都是任意的。只是不对称密钥对的最佳用途是让其中一个密钥为机密,另一个为其他人所知,因此:

  • 使用公钥的人可以向您发送只有您才能解密的消息,而使用私钥
  • 您可以发送只能用公钥解密的消息,这样人们就知道您是真正的作者
问:公钥和私钥是使用相同的算法生成的吗

一般来说,它们不是使用相同的算法生成的。对于RSA,它们可以以相同的方式生成,但大多数加密库使用已知的公共指数。这意味着,如果已知私钥,则很容易推断出公钥。在许多密钥格式中,公钥包含在私钥中,或者可以根据私钥格式的信息轻松计算

请注意,理论上可以生成一个密钥对,其中公共指数的熵与私有指数的熵相同。一些HSM允许这样的操作

总之,在不牺牲加密安全性的情况下,您无法切换密钥

Q:用私钥加密的消息能用公钥解密吗

从理论上讲,如果您的加密库允许的话,可能会出现这种情况。但是,大多数库不允许这样做。首先,如上所述,这不是一个安全的操作。此外,许多库会假设任何使用私钥加密的内容都应该使用填充模式生成数字签名。在这种情况下,解密可能会失败;如果不这样做,你的密文是不安全的-所以这可能更糟

根据PKCS#1规范:


每个基元的主要数学运算是指数运算, 与第5.1节的加密和解密原语相同。RSASP1 和RSAVP1与RSADP和RSAEP相同,只是名称不同 他们的输入和输出参数;他们是如此的杰出 用于不同的目的


在原语之前应用的填充机制在加密和签名生成方面有很大不同

问:用公钥加密的消息能用私钥解密吗


这就是非对称加密的基本思想。这意味着“是的”。

您在谈论哪种密码系统/加密?使用私钥加密消息通常不是一种有用的操作。您应该使用私钥进行签名或解密,并使用公钥进行加密和验证。每次使用时使用合适的填充物是绝对必要的。i、 e.尽管签名和解密使用相同的密钥,但它们是非常不同的。如果您没有选择主题,请在研究完手头的主题后使用。通常,RSA公钥和私钥不是使用相同的方法创建的。它们的计算方法相同,但公共指数通常是预先配置的值,如3、7或第四个费马值(65537)。这意味着,如果您知道私钥,那么您也知道公钥。当然,如果您的私钥包含密钥对生成参数,也会出现这种情况。为什么投票关闭然后回答?你的投票是正确的,我怀疑这个问题是否会被转移…@DuncanJones我本来不打算这么做,但后来我看到了另外两个答案。