Rabbit 流加密

🔐 Rabbit Stream Cipher

📐 工作原理与说明
Rabbit 流加密:用密钥流与明文逐字节异或。
  • 参数:128 位密钥,可配 64 位初始化向量(IV)。
  • 结构:内部维护 8 个状态字与计数器,通过非线性迭代生成密钥流。
  • 加解密:密文 = 明文 ⊕ 密钥流;因异或自反,解密执行同样操作。
  • 安全:同一 (key, IV) 组合绝不可重复使用,否则密钥流可被恢复导致明文泄露。
Rabbit 是一种高性能流加密算法,由Martin Boesgaard等人设计,是eSTREAM项目Profile 1(软件)获胜算法之一。
使用128位密钥,64位IV(可选),速度极快,适合高性能数据加密场景。无专利限制。

📚 深度解析:Rabbit 流加密

💡 常见使用场景

  • eSTREAM 推荐的高速流密码,适合资源受限环境。
  • 在嵌入式或高吞吐场景评估流密码:与 AES-CTR 等方案做性能与安全性对照,再决定是否采用。
说明
Rabbit 以 128 位密钥 + 64 位 IV 驱动内部状态,生成密钥流异或明文。

❓ 常见问题(FAQ)

Rabbit 与 RC4 比?
Rabbit 设计更现代、无 RC4 的初期偏置问题。
流密码有什么使用禁忌?
最关键的是「同一密钥流绝对不能重用」:流密码把明文与密钥流逐位异或,若两组明文用了相同的密钥流(相同密钥 + IV/nonce),把它们异或就能消去密钥、直接得到两明文的异或。因此每次加密必须使用不重复的 nonce;且流密码本身不提供完整性保护,需配合 MAC 或使用 AEAD。
⚠️ 使用说明与注意事项
📖关于「Rabbit 流加密」 ▼

📝工具简介

Encrypt and decrypt with the Rabbit stream cipher in your browser — a fast legacy cipher for education.