使用同一算法生成的公钥和私钥?

MKT

通过公钥加密的消息可以通过私钥解密吗?

通过私钥加密的消息可以通过公钥解密吗?

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

马丁·波德维斯(Maarten Bodewes)

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

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

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

总而言之,在不牺牲用于加密目的的安全性的情况下,您无法切换密钥。

问:通过私钥加密的消息可以通过公钥解密吗?

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

根据PKCS#1规范:


与第5.1节的加密和解密原语一样,每个原语中的主要数学运算是取幂。RSASP1和RSAVP1与RSADP和RSAEP相同,只不过它们的输入和输出参数的名称相同。它们的区别在于它们旨在用于不同的目的。


在原语之前应用的填充机制对于加密和签名生成而言有很大不同。

问:通过公钥加密的消息可以通过私钥解密吗?

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

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章