Công cụ tạo mã băm đa thuật toán

Băm văn bản bằng 20 thuật toán cùng lúc: MD5, SHA-1, SHA-2, SHA-3, Keccak, RIPEMD-160, BLAKE2, BLAKE3, Whirlpool, SM3, CRC32. Hex hoặc Base64, cập nhật ngay.

Mọi giá trị băm cập nhật ngay khi bạn gõ. Khi để trống sẽ hiển thị giá trị băm của chuỗi rỗng.

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 mã băm (hash) là gì?

Tính giá trị băm của văn bản bằng 20 thuật toán cùng lúc – MD5, SHA-1, SHA-224/256/384/512, SHA3-224/256/384/512, Keccak-256/512, RIPEMD-160, BLAKE2b-512, BLAKE2s-256, BLAKE3, Whirlpool, SM3, MD4 và CRC32 – để bạn so sánh hoặc tìm đúng cái mình cần. Thuật toán yếu được đánh dấu.

Cách sử dụng Tạo mã băm (hash)

  1. Gõ hoặc dán văn bản vào ô Đầu vào; mọi giá trị băm cập nhật ngay lập tức.
  2. Đổi mã hóa đầu vào sang Hex để băm byte thô thay vì văn bản UTF-8.
  3. Chọn Định dạng kết quả: hex chữ thường, hex chữ hoa hoặc Base64.
  4. Sao chép một giá trị từ bảng, hoặc dùng Sao chép để sao chép tất cả các dòng.

Ví dụ

Đầu vào
abc
Đầu ra
MD5: 900150983cd24fb0d6963f7d28e17f72
SHA-1: a9993e364706816aba3e25717850c26c9cd0d89d
SHA-256: ba7816bf8f01cfea414140de5dae2223b00361a396177a9cb410ff61f20015ad
CRC32: 352441c2

Trích đoạn; công cụ hiển thị đủ 20 thuật toán.

Khi nào nên dùng Tạo mã băm (hash)

Dùng để tra giá trị băm của một chuỗi theo nhiều thuật toán, xác định thuật toán nào đã tạo ra một hash đã biết, hoặc so sánh các bản cài đặt. Đừng dùng hàm băm nhanh để lưu mật khẩu – hãy dùng bcrypt, scrypt hoặc Argon2. Với file, hãy dùng công cụ checksum file để ký tự xuống dòng và cách mã hóa không bị thay đổi.

Tạo mã băm (hash) hoạt động như thế nào

Văn bản được mã hóa UTF-8 (hoặc giải mã từ hex) và các byte được đưa vào bản cài đặt WebAssembly của từng thuật toán từ hash-wasm. SHA-2 dùng cấu trúc Merkle–Damgård, SHA-3 và Keccak dùng cấu trúc sponge (chỉ khác nhau ở phần đệm), BLAKE2/BLAKE3 dựa trên hoán vị ChaCha, còn CRC32 là checksum, không phải hàm băm mật mã. Kết quả được kiểm tra với FIPS 180-4, FIPS 202, RFC 7693 và Node.js/OpenSSL trong unit test.

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

  • Tìm thuật toán đã tạo ra một hash đã biết bằng cách so với mọi kết quả
  • Lấy SHA-256 và SHA3-256 của một chuỗi cho dữ liệu kiểm thử
  • Tính hash Keccak-256 (như Ethereum dùng) của văn bản
  • Kiểm tra checksum CRC32 của chuỗi ngắn
  • Cho học sinh thấy thay đổi nhỏ ở đầu vào làm thay đổi mọi giá trị băm

Lưu Ý Bảo Mật

Đầu vào được băm cục bộ và không bao giờ được tải lên. Hàm băm nhanh không phù hợp để lưu trữ mật khẩu.

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

SHA3-256 và Keccak-256 khác nhau thế nào?

Cả hai dùng sponge Keccak, nhưng SHA3-256 (FIPS 202) dùng phần đệm khác với bản đề xuất Keccak gốc. Ethereum dùng Keccak-256, nên hai thuật toán cho kết quả khác nhau với cùng đầu vào.

Vì sao MD5, SHA-1, MD4 và CRC32 bị đánh dấu là yếu?

Có thể tạo va chạm với chúng, nên không được dùng cho chữ ký, chứng chỉ hay bảo đảm toàn vẹn trước kẻ tấn công. Chúng vẫn ổn cho checksum không liên quan bảo mật.

Hash có đảo ngược được không?

Không. Hash là một chiều; các trang "giải mã" chỉ tra cứu giá trị tính sẵn của các đầu vào phổ biến.

Vì sao chương trình của tôi cho hash khác?

Thường là do cách mã hóa: ký tự xuống dòng ở cuối, kiểu xuống dòng Windows hoặc mã hóa không phải UTF-8 làm thay đổi các byte. Hãy dùng đầu vào Hex để băm đúng từng byte.

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