tigtools

Công cụ tạo mã băm

Tạo mã băm MD5 và SHA cho văn bản hoặc tệp bất kỳ, rồi so sánh với mã kiểm tra dự kiến. Tệp được đọc trên thiết bị của bạn và không bao giờ được tải lên.

Chạy ngay trên trình duyệt Không cần đăng ký

Loại đầu vào

Được tạo mã băm dưới dạng UTF-8 đúng như nội dung đã nhập, bao gồm cả khoảng trắng và ký tự xuống dòng.

Định dạng đầu ra
  • MD5Không phù hợp cho mục đích bảo mật
    —
  • SHA-1Không phù hợp cho mục đích bảo mật
    —
  • SHA-256
    —
  • SHA-384
    —
  • SHA-512
    —

Dán mã kiểm tra từ trang tải xuống. Khi so sánh, hex không phân biệt chữ hoa chữ thường, khoảng trắng hoặc dấu hai chấm; cũng chấp nhận Base64.

Cách sử dụng

  1. Chọn Văn bản rồi nhập hoặc dán văn bản, hoặc chọn Tệp rồi chọn hoặc thả tệp vào.
  2. Xem các giá trị MD5, SHA-1, SHA-256, SHA-384 và SHA-512. Chuyển đổi giữa hex chữ thường, hex chữ hoa và Base64.
  3. Để xác minh tệp tải xuống, hãy dán mã kiểm tra do nhà cung cấp công bố vào ô so sánh. Thuật toán trùng khớp sẽ được tô sáng.
  4. Sao chép một mã băm riêng lẻ hoặc dùng “Sao chép tất cả” để sao chép mọi mã băm cùng tên thuật toán.

Cách hoạt động

Hàm băm chuyển đổi mọi dữ liệu đầu vào thành một dấu vân tay có độ dài cố định. Cùng một dữ liệu đầu vào luôn cho ra cùng một giá trị băm; chỉ cần thay đổi một bit, kết quả sẽ thay đổi hoàn toàn. Vì vậy, hàm băm hữu ích để kiểm tra tệp đã tải xuống có bị hỏng hoặc chỉnh sửa hay không.

SHA-1, SHA-256, SHA-384 và SHA-512 được tính bằng Web Crypto API tích hợp sẵn trong trình duyệt. Web Crypto không hỗ trợ MD5, nên trang này có phần triển khai riêng theo RFC 1321, được kiểm tra bằng các bộ giá trị thử nghiệm tiêu chuẩn. Văn bản được chuyển thành byte UTF-8 trước khi băm, vì vậy “é” được băm thành hai byte; dấu cách hoặc ký tự xuống dòng ở cuối cũng làm thay đổi kết quả.

MD5 và SHA-1 không còn an toàn cho mục đích bảo mật: các nhà nghiên cứu có thể tạo hai dữ liệu đầu vào khác nhau nhưng có cùng giá trị băm. Chúng vẫn phù hợp để phát hiện lỗi hỏng dữ liệu ngoài ý muốn và đối chiếu với checksum do nhà cung cấp công bố, nhưng không dùng cho chữ ký hoặc chứng chỉ. Không dùng hàm băm thông thường để lưu mật khẩu; hãy dùng hàm băm mật khẩu chậm như Argon2, scrypt hoặc bcrypt.

Tệp có dung lượng tối đa 200 MB được đọc vào bộ nhớ. MD5 được tính theo từng khối, xen kẽ các khoảng nghỉ ngắn để trang luôn phản hồi nhanh; thông báo tiến độ cũng được hiển thị. Các tệp rất lớn có thể mất vài giây để xử lý trên điện thoại.

Ví dụ

Xác minh tệp ISO đã tải xuống

Trang tải xuống Linux có công bố checksum SHA-256. Chọn File, thả tệp .iso vào, dán giá trị đã công bố vào ô so sánh rồi kiểm tra dòng “Khớp: … SHA-256”. Nếu không khớp, tệp chưa tải xuống đầy đủ hoặc không phải bản gốc.

Một giá trị thử nghiệm quen thuộc

Văn bản “abc” có mã băm MD5 là 900150983cd24fb0d6963f7d28e17f72 và mã băm SHA-256 là ba7816bf8f01cfea414140de5dae2223b00361a396177a9cb410ff61f20015ad. Dùng giá trị này để kiểm tra xem một công cụ khác có cho cùng kết quả hay không.

Base64 cho HTTP header

Subresource Integrity và một số API yêu cầu mã băm SHA-256 hoặc SHA-384 ở dạng Base64 thay vì HEX. Chuyển định dạng đầu ra sang Base64 rồi sao chép giá trị SHA-384.

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

Tại sao mã băm của tôi khác kết quả từ công cụ khác dù dùng cùng một văn bản?

Thông thường, dữ liệu đầu vào khác nhau ở những điểm khó nhận thấy: ký tự xuống dòng ở cuối, kiểu xuống dòng của Windows (CRLF), bảng mã văn bản khác hoặc dấu cách ở đầu. Công cụ này băm chính xác các byte UTF-8 của nội dung trong ô.

Có thể đảo ngược mã băm để lấy lại văn bản gốc không?

Không. Hàm băm là một chiều. Tuy vậy, vẫn có thể tìm ra các dữ liệu ngắn hoặc phổ biến bằng cách thử lần lượt các khả năng. Vì thế, mật khẩu cần được xử lý bằng thuật toán băm mật khẩu chậm có salt, thay vì hàm băm thông thường.

MD5 còn an toàn để sử dụng không?

Không nên dùng cho mục đích bảo mật. Có thể chủ động tạo ra va chạm MD5 và SHA-1, nên không dùng chúng để bảo vệ khỏi hành vi chỉnh sửa có chủ đích. Chúng vẫn có tác dụng kiểm tra lỗi hỏng dữ liệu ngoài ý muốn, nhưng SHA-256 là lựa chọn mặc định tốt hơn.

Tệp của tôi có được tải lên không?

Không. Tệp được đọc bằng File API của trình duyệt và băm ngay trong tab này. Không có dữ liệu nào được gửi lên máy chủ; trang vẫn hoạt động ngoại tuyến sau khi tải xong.

Tôi có thể tạo mã băm cho tệp lớn tối đa bao nhiêu?

200 MB. Toàn bộ tệp được tải vào bộ nhớ, vì vậy tệp lớn hơn có thể làm đầy bộ nhớ trên điện thoại và máy tính đời cũ. Với tệp lớn hơn, hãy dùng công cụ dòng lệnh như sha256sum hoặc certutil.

Quyền riêng tư

Văn bản và tệp được tạo mã băm ngay trong trình duyệt và không bao giờ được tải lên. Dữ liệu nhập và mã băm không được lưu trữ hoặc gửi đến hệ thống phân tích; chỉ ghi nhận một sự kiện ẩn danh cho biết công cụ đã được sử dụng.