Công cụ tạo hash SHAKE128 (đầu ra mở rộng)

Tạo đầu ra SHAKE128 với độ dài bất kỳ (8–16384 bit) từ văn bản, hex hoặc Base64 ngay trong trình duyệt. Hàm đầu ra mở rộng FIPS 202, xuất hex hoặc Base64.

Bội số của 8, từ 8 đến 16384 bit.

SHAKE128

Chạy hoàn toàn trong trình duyệt. Dữ liệu của bạn không bao giờ bị tải lên.

Tạo hash SHAKE128 là gì?

SHAKE128 là hàm đầu ra mở rộng thuộc họ SHA-3 với mức bảo mật 128 bit: thay vì kích thước giá trị băm cố định, bạn tự chọn số bit đầu ra mong muốn. Công cụ này tính SHAKE128 của văn bản hoặc byte thô với độ dài đầu ra tùy chỉnh (mặc định 256 bit).

Cách sử dụng Tạo hash SHAKE128

  1. Nhập hoặc dán dữ liệu vào ô Văn bản cần băm — giá trị băm cập nhật ngay khi bạn gõ (ô trống sẽ hiện hash của đầu vào rỗng).
  2. Chọn Mã hóa đầu vào: Văn bản (UTF-8) băm các ký tự dưới dạng UTF-8, còn Byte dạng hex hoặc Base64 băm các byte thô sau khi giải mã.
  3. Đặt Độ dài đầu ra (bit) — bội số của 8 trong khoảng 8 đến 16384 (mặc định 256).
  4. Chọn Định dạng đầu ra (hex chữ thường, hex chữ hoa hoặc Base64) rồi nhấn Sao chép.

Ví dụ

Đầu vào
abc
Đầu ra
5881092dd818bf5cf8a3ddb793fbcba74097d5c526a6d35f97b83351940f2cc8

SHAKE128("abc") với độ dài đầu ra mặc định 256 bit.

Khi nào nên dùng Tạo hash SHAKE128

Dùng SHAKE128 khi một giao thức yêu cầu nó (ví dụ Ed448 dùng SHAKE256, ML-KEM/Kyber và ML-DSA/Dilithium dùng SHAKE128/256), để sinh một dòng byte giả ngẫu nhiên từ seed, hoặc để có giá trị băm với độ dài không chuẩn. Nếu chỉ cần một hàm băm thông thường, SHA3-256 hoặc SHA-256 đơn giản hơn và được hỗ trợ rộng rãi hơn. Khi cần dùng khóa, hãy ưu tiên KMAC thay vì băm chung khóa với thông điệp.

Tạo hash SHAKE128 hoạt động như thế nào

SHAKE128 là một hàm đầu ra mở rộng (XOF) thuộc FIPS 202. Nó dùng cùng cấu trúc sponge Keccak-f[1600] như SHA-3 với capacity 256 bit (rate 1344 bit) và hậu tố miền 1111 (byte đệm 0x1F). Sau khi hấp thụ đầu vào, sponge được vắt (squeeze) ra đúng số bit bạn yêu cầu, nên độ dài đầu ra là một tham số chứ không phải đặc tính cố định của thuật toán. Đầu ra ngắn hơn là tiền tố của đầu ra dài hơn. Mức bảo mật trước va chạm là min(output/2, 128) bit.

Các Trường Hợp Sử Dụng Phổ Biến

  • Tái tạo đầu ra SHAKE trong đặc tả các thuật toán hậu lượng tử
  • Tạo dấu vân tay với độ dài tùy chỉnh (ví dụ 128 hoặc 1024 bit)
  • Tạo test vector cho bản cài đặt SHA-3 / XOF
  • Mở rộng một seed thành nhiều byte giả ngẫu nhiên để kiểm thử

Lưu Ý Bảo Mật

SHAKE128 là hàm được NIST phê duyệt và chưa có tấn công thực tế nào được biết đến. Bản thân nó không phải hàm băm mật khẩu và cũng không phải MAC — hãy dùng KMAC128 để xác thực có khóa. Mọi thứ chạy cục bộ trong trình duyệt của bạn.

Câu Hỏi Thường Gặp

SHAKE128-256 có giống SHA3-256 không?

Không. Chúng dùng chung hoán vị Keccak nhưng khác capacity và hậu tố miền, nên kết quả hoàn toàn không liên quan.

Nếu yêu cầu nhiều bit hơn, phần đầu có thay đổi không?

Không. Đầu ra SHAKE128 dài hơn chính là đầu ra ngắn hơn được nối thêm các byte. Ví dụ 128 bit đầu tiên của SHAKE128("abc") chính là kết quả 128 bit.

Đầu ra dài hơn có an toàn hơn không?

Chỉ tới mức bảo mật 128 bit. Khi đầu ra vượt quá 256 bit, khả năng kháng va chạm vẫn dừng ở 128 bit.

Khám phá thêm danh mục