如果RSA为给定的明文生成完全相同的密文,是否存在风险?
发布于 2011-02-23 23:56:28
使用1024位公钥的RSA加密对消息进行加密,最大长度为117字节,对应的密文长度为128字节。更一般地,对于所有密钥大小和标准PKCS#1填充模式,密文总是比明文长。因此,它们不能彼此相等。
如果你考虑后填充输入(即128字节的字符串求幂),那么一个固定点(一个在求幂过程中不变的数字)可能会暴露部分私钥;但是,你不会偶然碰到它。或者,更确切地说,你只会以微不足道的概率命中它(如果你愿意,你可以强制它,但无论如何没有人能阻止你泄露自己的私钥)。攻击者不会通过这种随机事件获得额外的信息,因为这样的相等性可能已经被攻击者测试过了……所以答案是:不,这里面没有风险。
发布于 2011-02-23 10:11:47
您应该仅对(a)用于对称密码的随机生成的会话密钥(b)用作签名机制一部分的加密散列函数使用RSA算法。
具体而言,请参阅Handbook of Applied Cryptography的第290页(第8章:)
仅在随机和与随机输入无法区分的输入上使用RSA的一个非常好的好处是,您永远不会有密文被解释为明文的风险。
直接在数据上使用RSA是危险的。
发布于 2015-04-20 03:21:46
是的,但这是极其罕见的。对于每个−密钥,存在(gcd(e 1,p−1)+1)(gcd(e−1,q−1)+1)个这些值。
https://stackoverflow.com/questions/5086172
复制相似问题