根据使用的密钥,是否有任何算法从不同的明文生成相同的密文?这看起来类似于蜂蜜加密,但我不需要让每个键都提供真实的数据。我希望指定一组密钥和相应的明文。
例如,用key1加密的“嘿嘿”和用key2加密的“拜”都会变成"aaa“。用key1和key2解密将成功并返回相应的明文,而使用任何其他密钥解密则会失败。
发布于 2018-06-26 14:04:02
有一种方法可以使用RSA来实现。所以,如果有n1 = p1 * q1,还有n2 = p2 * q2,并且每个都有一个密钥对pub1,priv1和pub2,priv2。
然后,如果您使用Integer组n3和n3 = n2 * n1,那么对于对中的每个元素( Integer组n2中的元素;Integer组n1中的元素),将有一个映射到( Integer组n3中的元素)。
这听起来可能令人困惑,但后来发生了一些很酷的事情。假设Bob在n1、pub1、priv1中有一个密钥对,在n2、pub2、priv2中有一个密钥对。
因此,如果您用pub1(使用模块化n1)和m2与pub2(使用模块化n2)加密,然后使用我前面说过的映射,以便从n3获得一个元素。(encWithPub1(m1),encWithPub2(m2)) = ( cipheredMessages )和cipheredMessages属于n3的整数群。
如果你把这条cipheredMessages信息发送给鲍勃和鲍比。鲍勃将用priv1 (模块化n1)破译并得到m1。鲍比会用priv2 (模组n2)破译并得到m2。因此,通过发送一封密文,Bob和Bobby都得到了各自的明文。
抱歉,如果这有点混乱,但我不知道怎么在这里写公式.
https://crypto.stackexchange.com/questions/60302
复制相似问题