Chuyển đến nội dung chính

Tạo Hash miễn phí

Tạo mã băm MD5, SHA-1, SHA-256, SHA-512 và CRC32 từ văn bản hoặc tệp. Xác minh checksum và tính toàn vẹn của dữ liệu.

Hoạt động ngoại tuyến sau khi tải
Mẹo: SHA-256 và SHA-512 có độ bảo mật mật mã cao. SHA-1 là phiên bản cũ và không còn được khuyến nghị cho các ứng dụng nhạy cảm bảo mật. Toàn bộ quá trình băm chạy cục bộ trong trình duyệt — tệp và văn bản không bao giờ được gửi đi.

Checksum vs. băm mật khẩu: Đây là các checksum mục đích chung — không thay thế cho băm mật khẩu (dùng bcrypt, Argon2 hoặc scrypt cho mật khẩu). SHA-1 cũng không phù hợp cho các yêu cầu xác minh tính toàn vẹn nhạy cảm bảo mật.

Công dụng phổ biến

  • Xác Minh Tính Toàn Vẹn Tệp Bằng HashTạo tổng kiểm tra SHA-256 cho tệp đã tải xuống và so sánh với tổng kiểm tra của nhà xuất bản để xác nhận nó chưa bị sửa đổi.
  • Tạo Tổng Kiểm Tra Cho Tính Toàn Vẹn Dữ LiệuTạo hàm băm SHA-256 của văn bản hoặc tệp để phát hiện corruption, xác minh sao lưu và kiểm toán đường ống dữ liệu.
  • Loại Bỏ Tệp Trùng Lặp Bằng HashingXác định tệp trùng lặp bằng cách so sánh hàm băm SHA-256 của chúng — nội dung giống hệt nhau tạo hàm băm giống hệt nhau.
  • Hiểu Hashing Mật KhẩuTìm hiểu cách băm mã hóa hoạt động bằng cách thấy cách thay đổi văn bản tạo ra các tổng kiểm tra hoàn toàn khác nhau.
  • Tạo Hàm Băm Cho Ký APIHiểu ký HMAC bằng cách tính hash của tải API của bạn trước khi gửi các yêu cầu đã ký.

Cách hoạt động

Việc tạo hash chạy hoàn toàn trong trình duyệt bằng sự kết hợp Web Crypto API (cho SHA-1, SHA-256, SHA-384 và SHA-512) và các bản cài đặt tự viết của MD5 và CRC32 — vì Web Crypto API cố ý không hỗ trợ hai thuật toán cũ đó. Không văn bản hay nội dung tệp nào được tải lên đâu cả.

  1. 1
    Đầu vào được đọc thành byte
    Với đầu vào văn bản, TextEncoder tích hợp của trình duyệt chuyển chuỗi thành mảng byte UTF-8. Với tệp đến 500 MB, phương thức arrayBuffer() của File API đọc dữ liệu nhị phân thô trực tiếp vào bộ nhớ — tệp không bao giờ rời khỏi thiết bị.
  2. 2
    Sáu thuật toán chạy song song
    SHA-1, SHA-256, SHA-384 và SHA-512 được giao cho crypto.subtle.digest(), bản cài đặt WebCrypto gốc của trình duyệt. MD5 được tính bằng bản cài đặt RFC 1321 độc lập tích hợp trong công cụ (WebCrypto cố ý loại trừ MD5); với đầu vào lớn, nó nhường cho vòng lặp sự kiện mỗi 4 MB để thẻ vẫn phản hồi. CRC32 dùng bảng tra IEEE 802.3 256 mục tính sẵn để xử lý nhanh từng byte.
  3. 3
    Chuỗi hex hiển thị khi hoàn tất
    Kết quả của mỗi thuật toán được ghi lên giao diện ngay khi hoàn tất — thuật toán nhanh như CRC32 xuất hiện gần như tức thì trong khi SHA-512 trên tệp lớn có thể mất lâu hơn một chút. Cả sáu chạy đồng thời qua Promise.all, nên tổng thời gian chờ do thuật toán chậm nhất quyết định, không phải tổng của chúng.
  4. 4
    Xác minh checksum tùy chọn
    Dán một checksum đã biết vào ô xác minh và công cụ so sánh nó với cả sáu giá trị đã tính. Nó tự nhận diện thuật toán nào khớp (hoặc lẽ ra phải khớp) bằng cách đếm ký tự hex — 32 ký tự là MD5, 40 là SHA-1, 64 là SHA-256, v.v. — rồi báo khớp, không khớp hoặc độ dài không nhận diện được.

Văn bản và tệp của bạn được xử lý hoàn toàn trong trình duyệt — không có gì được gửi đến máy chủ, ghi nhật ký hoặc lưu trữ ngoài phiên trang hiện tại.

Công cụ liên quan

Câu hỏi thường gặp