CoderTools

Twofish 加密/解密

AES 决赛算法 - 128 位分组密码,支持最高 256 位密钥

安全提示

本工具完全在浏览器本地处理数据。请勿分享您的加密密钥。生产环境请使用强随机生成的密钥。

Twofish 支持固定密钥长度:128 位(16 字节)、192 位(24 字节)或 256 位(32 字节)。分组大小始终为 128 位(16 字节)。
格式选项

关于 Twofish

Twofish 是由 Bruce Schneier 团队设计的对称密钥分组密码,是高级加密标准(AES)竞赛的五个决赛算法之一。虽然最终 Rijndael 被选为 AES,但 Twofish 仍然是一种高度安全且广受尊重的加密算法。

Twofish 使用 128 位分组大小,支持 128、192 和 256 位密钥长度。它采用 Feistel 网络结构,进行 16 轮加密,并使用密钥相关的 S 盒来增强安全性。

主要特性

  • 128 位分组大小,支持 128/192/256 位密钥
  • 16 轮 Feistel 网络结构
  • 密钥相关 S 盒提高安全性
  • 无版税、无专利 - 可自由使用

加密模式

  • CBC: 密码分组链接 - 每个分组在加密前与前一个密文分组异或。推荐用于大多数场景。
  • ECB: 电子密码本 - 每个分组独立加密。不建议用于敏感数据,因为模式可能可见。
  • CFB: 密码反馈 - 将分组密码转换为流密码。自同步且错误传播。
  • OFB: 输出反馈 - 类似 CFB 但独立生成密钥流。无错误传播。

算法对比

算法 密钥长度 分组大小 安全性 速度
Twofish 128/192/256 bits 128 bits 优秀 快速
AES 128/192/256 bits 128 bits 优秀 快速
Blowfish 32-448 bits 64 bits 良好 快速
3DES 112/168 bits 64 bits 中等 较慢

安全注意事项

  • 目前没有已知的针对 Twofish 的实际攻击方法
  • 该算法已被全球密码学家广泛分析
  • 使用 CBC、CFB 或 OFB 模式 - 敏感数据避免使用 ECB
  • 始终使用密码学安全的随机数生成器生成密钥和 IV

应用场景

  • 安全的文件和磁盘加密
  • VPN 和安全通信协议
  • 敏感信息的数据库加密
  • 密码管理器和凭证存储应用

参考资料