RC4 密钥:
  • 字符编码:
  • 格式:
    (格式加密表示输出,解密表示输入)

说明

RC4:Rivest Cipher 4 的缩写,是一种流加密算法,密钥长度可变,它加解密使用相同的密钥。

由 Ron Rivest 在 1987 年设计。它以其简单性和高效性而闻名,并被广泛用于加密通信和数据保护领域。 RC4 算法使用一个变长的密钥(通常为 8 至 256 字节)来生成一个伪随机的密钥流,然后将该密钥流与原始数据进行异或运算以实现加密。解密时,再次将密钥流与密文进行异或运算即可恢复原始数据。

RC4 算法的核心是生成密钥流的过程,该过程基于密钥和伪随机数生成器。它使用了状态向量、置换操作和密钥编排等步骤来生成密钥流。这使得 RC4 算法具有快速、高效的特点。 然而,尽管 RC4 在设计初期被广泛应用,但随着时间的推移,研究人员发现了一些安全漏洞和弱点。例如,RC4 存在针对密钥的偏差攻击和密钥重用等问题。因此,在现代加密应用中,RC4 已经不再被推荐使用。 相比之下,更强大和安全的加密算法,如 AES(Advanced Encryption Standard),已经取代了 RC4 在许多领域的应用。


密钥(偏移)Text 和 Hex
  • Text 表示是文本格式,加密前会使用 UTF-8 编码,把它转成 byte[] 数组
  • Hex 表示是十六进制格式,加密前会把十六进制字符串转成 byte[] 数组
字符编码与格式 加密说明
  • 第一种情况,以 DES 加密为例,密钥下拉框选择“Text”,输入“12345678”,偏移为空;加密字符串“中国abc”,字符编码选择“UTF-8”,表示字符串“中国abc”加密前会以“UTF-8”编码成 byte[] 数组, 加密的输出是十六进制,格式下拉框选择“Hex”,加密的输出结果就是“C886FF3D9DCB37FA1FA0EAD95889DF3E”。 查看示例
  • 另外一种情况,还是以 DES 加密为例,密钥下拉框选择“Text”,输入“12345678”,偏移为空;加密的不是字符串,而是十六进制数据,比如是 [0x01,0x02,0x03,0x04,0x05,0x06,0x07,0x08], 字符编码必须要选择“Hex”,表示加密前,不需要编码了,十六进制数据可以直接转成字节数组,加密的输出是 Base64,格式下拉框选择“Base64”,加密的输出结果就是“up/vqMd1Eq4d/TFcc22l3Q==”。 查看示例
字符编码与格式 解密说明
  • 第一种情况,以 DES 解密为例,密钥下拉框选择“Text”,输入“12345678”,偏移为空;解密第一种情况加密输出的十六进制字符串“C886FF3D9DCB37FA1FA0EAD95889DF3E”,所以格式下拉框选择“Hex”,解密之后的数据编码是“UTF-8”,所以字符编码选择“UTF-8”,解密后的字符串是“中国abc”。 查看示例
  • 另外一种情况,还是以 DES 解密为例,密钥下拉框选择“Text”,输入“12345678”,偏移为空;解密第二种情况加密输出的 Base64 字符串“up/vqMd1Eq4d/TFcc22l3Q==”,所以格式下拉框选择“Base64”,解密之后的数据没有任何编码,是十六进制数据, 所以字符编码选择“Hex”(如果你选择“UTF-8”,肯定会乱码),最后解密后的字符串是“0102030405060708”。 查看示例