🌊 RC4 加密解密
浏览器本地 RC4 流密码加密解密工具(又名 ARC4 / Arcfour),纯 JS 实现零依赖。密钥长度 1-256 字节灵活可配,Key / 输入 / 输出均可独立切换 Hex / UTF-8 / Base64 编码,实时显示 UTF-8 字节数(不是字符数)。内置 RFC 6229 官方测试向量一键加载(40/64/128/256 位)与 Wikipedia 经典示例,RC4-drop[N] 硬化选项(0/768/1536/3072 预设),Swap I/O、Roundtrip 自检等进阶功能。顶部常驻 RFC 7465(2015)废弃警示(TLS 禁用 / FMS 2001 攻破 WEP / NOMORE 2015),仅用于教学演示与兼容旧数据。密钥与明文不会由本工具上传。
操作方向
提示:RC4 对称,加密与解密使用完全相同的算法;切换方向仅影响 UI 标签与默认编码预设。
推荐 5-16 字节(40-128 位);最小 1 字节、最大 256 字节。短密钥安全性极低,仅适合学习。
RC4-drop[N](丢弃初始 keystream 字节)
丢弃初始 N 字节 keystream 可规避 FMS / Mantin 早期偏置攻击。注意:加解密双方必须使用相同的 drop 值,否则无法还原。
输出格式
常见问题
RC4 还能用于生产环境吗?
不能。IETF 于 2015 年发布 RFC 7465《Prohibiting RC4 Cipher Suites》明确禁止在 TLS 中使用 RC4。多种实用攻击已被公开:FMS(Fluhrer-Mantin-Shamir 2001)成功攻破 WEP、Klein 2005、AlFardan 等 2013 的 TLS 明文恢复、Bar Mitzvah 2015、NOMORE 2015。主流浏览器(Chrome 48/Firefox 44/Edge)自 2016 年起默认禁用 RC4。新设计请使用 AES-GCM 或 ChaCha20-Poly1305;本工具仅用于解密旧数据或教学演示。
RC4-drop[N] 是什么?该怎么选?
RC4 的前若干字节 keystream 存在统计偏置(FMS 2001、Mantin 2005),通过丢弃前 N 字节可显著降低攻击面。常用取值:
• 0:标准 RC4(RFC 6229 测试向量使用此值);• 768:SCAN 密码学注册表默认值;• 1536:RFC 4345(SSH arcfour128/arcfour256)保守值;• 3072:Mantin 2005 建议上限;• 12288:最保守(本工具未内置,可用自定义)。
注意:加解密双方必须使用相同的 N,否则 keystream 错位、无法还原。
为什么显示"字节数"而不是"字符数"?
RC4 处理的是字节序列,不是字符。在 UTF-8 下一个 ASCII 字符占 1 字节,一个汉字占 3 字节,一个 Emoji(如 🎉)占 4 字节。许多同类工具只显示"字符数"会严重误导:输入"中文"看起来是 2 字符,实际是 6 字节。本工具全程以字节度量,避免"我以为密钥够长了"这类常见错误。
Hex / UTF-8 / Base64 编码怎么选?
密钥:推荐 Hex(每两字符代表 1 字节,无歧义);从 OpenSSL `enc -rc4 -K` 粘贴的就是 Hex。输入:明文用 UTF-8、二进制密文用 Hex 或 Base64。输出:加密默认 Hex(可靠且紧凑),Base64 更短但带 `+/=` 符号;UTF-8 输出仅在确认密文本身就是文本时有效,否则会报「不是有效的 UTF-8」。本工具允许 Key / Input / Output 三处独立切换,匹配不同语言生态(OpenSSL、CryptoJS、Java `Cipher.getInstance("RC4")`、Python `pycryptodome`)。
我的数据安全吗?
所有加密、解密、密钥处理都在你的浏览器本地完成(纯 JavaScript 实现,不调用任何外部 API),密钥与明文不会由本工具上传。本工具通过 RFC 6229 官方测试向量与 Wikipedia 经典示例验证算法正确性。仍建议将本工具用于本地文件或公开测试数据,避免在浏览器里处理高度敏感的真实密钥。
在线 RC4 流密码加密解密工具(又名 ARC4 / Arcfour),浏览器本地处理(纯 JavaScript 实现,零依赖)。密钥长度 1-256 字节灵活可配,Key / 输入 / 输出三处均可独立切换 Hex / UTF-8 / Base64 编码,实时显示 UTF-8 字节数(不是字符数,直接避免「中文字符数 × 3 = 字节数」陷阱)。内置 RFC 6229 官方测试向量(40/64/128/256 位)一键加载,Wikipedia 经典 `RC4("Key","Plaintext")` 示例,以及 RC4-drop[N] 硬化选项(0/768/1536/3072 预设,规避 FMS/Mantin 早期 keystream 偏置)。顶部常驻 RFC 7465(2015)废弃警示:TLS 已禁用 RC4、FMS 2001 攻破 WEP、NOMORE 2015 攻击实例;仅用于教学演示与兼容旧数据,新系统请使用 AES-GCM 或 ChaCha20-Poly1305。Swap I/O 一键翻转方向验证、Roundtrip 自检校验往返一致性。密钥与明文不会由本工具上传。