Rabbit 加密解密工具

Rabbit 流加密算法的在线加解密,支持 Base64 / Hex 输出,可选 IV 偏移量,数据仅在本地运算

输入
输出(Base64)
输出
密钥
IV
Rabbit 加解密过程相同:密文 = 明文 XOR 密钥流;明文 = 密文 XOR 密钥流
快捷示例
Rabbit 说明
Rabbit是由 Martin Boesgaard、Mette Vesterager 等人于 2003 年设计的流加密(Stream Cipher)算法, 它是 eSTREAM 项目(ECRYPT Stream Cipher Project)的最终入选算法之一,专为高性能软件实现而设计。

算法参数:
• 密钥长度:128 位(16 字节)
• IV 长度:64 位(8 字节),可选
• 内部状态:513 位(8 个 32 位状态变量 + 8 个 32 位计数器 + 1 位进位标志)

算法原理:
Rabbit 的核心是一个基于非线性耦合的 128 位状态计数器系统
• 使用 8 个 32 位状态变量(X₀~X₇)和 8 个 32 位计数器(C₀~C₇)
• 每次迭代更新计数器(使用 Arithematic Addition + Carry)
• 状态变量通过 g 函数((x+C)² XOR ((x+C)² >> 32))进行非线性更新
• 每次迭代输出 128 位密钥流,与明文/密文 XOR

算法特点:
• 高性能:专为 32/64 位 CPU 优化,速度极快
• 紧凑:128 位密钥 + 64 位 IV,状态仅 513 位
• 安全性:经过 eSTREAM 严格评审,无已知有效攻击
• 流加密:无需填充,不依赖块大小

安全性说明:
• Rabbit 是 eSTREAM Profile 1(软件)最终入选算法
• 无已知的密码分析攻击可以破解完整的 Rabbit
• 使用 IV 可以产生不同密钥流(推荐使用 IV)
• 相同密钥 + 相同 IV 会产生相同的密钥流(不要重用密钥/IV 对)

典型应用场景:
• 高性能流加密(如流媒体、实时通信)
• 嵌入式系统和资源受限设备
• 替代 RC4 用于需要更高安全性的场景
• 教学和研究用途

所有运算在浏览器本地完成,数据不会上传到服务器