我见过很多关于如何使用RC4加密的算法。例如,这篇wiki文章https://en.wikipedia.org/wiki/RC4解释了KSA和PRGA步骤。
在生成字节之后,它们将被XOR与一条消息一起加密消息。当目标实体接收到消息时,解密该消息的步骤是什么?
这可能是KSA / PGRA的反义词,但是有人能写出它的步骤吗?我试着在网上查找,却找不到一篇文章,我正试着完全理解其中的解密部分。
我猜测的是,接收消息的实体也使用密钥生成相同的字节(使用KSA / PRGA算法),然后用字节对加密的消息进行XOR?
发布于 2017-12-12 00:19:39
你的猜测是正确的。RC4基本上生成一个很长的密钥来适应您的消息。加密和解密只是简单地用RC4的输出对密钥流中的特定位置进行拼接。
一般来说,大多数流密码都是这样工作的。复杂的部分是,该算法应该生成一个非常长的密钥,不容易受到攻击(理想的是一次垫相同长度的消息)。
因此,一旦您理解了使用RC4加密,切换“明文”和“密文”在解释给您解密。
编辑:您可能已经知道这一点,但是重申:不要使用RC4并不会有什么害处。它是不安全的,可以被打破。
https://crypto.stackexchange.com/questions/53888
复制相似问题