CoderTools

Mã hóa/Giải mã Twofish

Ứng viên AES - Mã khối 128-bit với Khóa lên đến 256-bit

Thông báo Bảo mật

Công cụ này xử lý tất cả dữ liệu cục bộ trong trình duyệt của bạn. Không bao giờ chia sẻ khóa mã hóa của bạn. Sử dụng khóa mạnh được tạo ngẫu nhiên cho môi trường sản xuất.

Twofish hỗ trợ độ dài khóa cố định: 128-bit (16 byte), 192-bit (24 byte) hoặc 256-bit (32 byte). Kích thước khối luôn là 128-bit (16 byte).
Tùy chọn Định dạng

Giới thiệu về Twofish

Twofish là mật mã đối xứng 128 bit do nhóm 6 người Counterpane (Schneier, Kelsey, Whiting, Wagner, Hall, Ferguson) thiết kế. Cải tiến cốt lõi là S-box phụ thuộc khóa: trong quá trình thiết lập, bốn S-box 8→8 bit được xây dựng từ tài liệu khóa qua hoán vị q0/q1 và nhân MDS trên GF(2⁸).

Mỗi bước Feistel 16 vòng áp dụng g(): hai từ 32 bit qua các S-box và MDS, rồi kết hợp bằng PHT (cộng 32 bit). Làm trắng đầu vào/ra. Không có tấn công 16 vòng đầy đủ từ năm 1998.

Tính năng Chính

  • S-box phụ thuộc khóa qua q0/q1 + MDS — cấu hình S-box duy nhất cho mỗi khóa, chống phân tích vi sai tính trước
  • Ma trận MDS 4×4 trên GF(2⁸) — đầu vào khác không bảo đảm đầu ra có trọng số tối đa
  • PHT (Biến đổi Pseudo-Hadamard) — khuếch tán Feistel hiệu quả bằng cộng 32 bit
  • Làm trắng đầu vào/ra — XOR khóa con trước vòng 1 và sau vòng 16

Các Chế độ Mã hóa

  • CBC: CBC Twofish — khối 128 bit XOR với bản mã trước. Ngưỡng Sweet32 tại 2⁶⁴ khối — thực tế không thể đạt được.
  • ECB: ECB Twofish — mỗi khối 16 byte xử lý độc lập. Chỉ cho thao tác một khối.
  • CFB: CFB Twofish — luồng tự đồng bộ, không có hạn chế Sweet32.
  • OFB: OFB Twofish — luồng khóa xác định, chu kỳ 2¹²⁸ khối.

So sánh Thuật toán

Thuật toán Độ dài Khóa Kích thước Khối Bảo mật Tốc độ
Twofish 128/192/256 bits 128 bits Xuất sắc Nhanh
AES 128/192/256 bits 128 bits Xuất sắc Nhanh
Blowfish 32-448 bits 64 bits Tốt Nhanh
3DES 112/168 bits 64 bits Trung bình Chậm

Lưu ý về Bảo mật

  • Không có tấn công 16 vòng đầy đủ từ năm 1998.
  • S-box phụ thuộc khóa thêm lớp bảo vệ không có trong AES.
  • Người kế thừa Blowfish được khuyến nghị để thay BF-CBC dễ bị Sweet32.
  • AES-256-GCM cho thông lượng cao. Twofish-256 cho VeraCrypt và môi trường không có AES-NI.

Trường hợp Sử dụng

  • Cascade VeraCrypt: Twofish+AES+Serpent cho đa dạng thuật toán
  • Di chuyển Blowfish BF-CBC: khối 128 bit không có Sweet32
  • Môi trường không có AES-NI: triển khai phần mềm thuần túy 128 bit
  • Lưu trữ dài hạn bảo mật cao độc lập với AES

Tài liệu Tham khảo

Menu Nhanh

Chưa có công cụ gần đây