Tạo mã băm MD5 và SHA trực tuyến
Hàm băm mật mã biến mọi dữ liệu đầu vào — một từ, một tài liệu, hay một file ảnh đĩa 4 GB — thành một chuỗi mã nhận dạng ngắn có độ dài cố định. Chỉ cần thay đổi một bit của dữ liệu gốc, chuỗi mã này sẽ thay đổi hoàn toàn. Công cụ tạo mã băm này tính toán cùng lúc 5 loại mã phổ biến nhất: MD5, SHA-1, SHA-256, SHA-384 và SHA-512. Công cụ hỗ trợ cả văn bản và file, đồng thời mọi quá trình xử lý đều diễn ra cục bộ ngay trên trình duyệt của bạn.
Tính năng
- Tạo cùng lúc 5 loại mã, giúp bạn không cần phải đoán xem trang web đã dùng thuật toán nào.
- Hỗ trợ văn bản và file. Văn bản được băm dưới chuẩn UTF-8; file được băm theo từng byte.
- Kiểm tra Checksum. Dán mã checksum cần đối chiếu và công cụ sẽ báo cho bạn biết thuật toán nào khớp — hoặc cảnh báo nếu không có mã nào trùng khớp.
- Xuất kết quả chữ in hoa dành cho các hệ thống hiển thị mã hex in hoa.
- Bảo mật và hoạt động offline: file không bao giờ rời khỏi thiết bị của bạn.
Các ứng dụng phổ biến
Xác minh tệp tải xuống. Các nhà phát hành phần mềm thường cung cấp mã checksum SHA-256 kèm theo các tệp cài đặt và file ISO. Hãy băm (hash) tệp bạn đã tải về và so sánh: nếu hai giá trị khớp nhau, tệp đó đã được tải xuống đầy đủ và không bị can thiệp trong quá trình truyền tải.
Tìm file trùng lặp. Về cơ bản, hai tệp có cùng mã băm SHA-256 là hoàn toàn giống nhau. Băm tệp là một cách nhanh chóng để loại bỏ các hình ảnh hoặc bản sao lưu (backup) trùng lặp.
Lập trình và API. Mã băm được sử dụng cho cache key, ETag, định tuyến nội dung (content addressing) và các cơ chế chữ ký số. Việc tạo giá trị tham chiếu tại đây sẽ giúp ích khi gỡ lỗi (debug) các đoạn mã tính toán mã băm.
Các hệ thống cũ. Một số công cụ cũ vẫn yêu cầu mã checksum MD5 hoặc SHA-1. Chúng vẫn ổn để phát hiện lỗi hỏng hóc ngẫu nhiên, nhưng không nên dùng để chống lại các hành vi cố tình chỉnh sửa tệp.
Sự khác biệt giữa các hàm băm
| Thuật toán | Độ dài đầu ra | Trạng thái |
|---|---|---|
| MD5 | 128 bit (32 ký tự hex) | Không còn an toàn — chỉ dùng làm checksum |
| SHA-1 | 160 bit (40 ký tự hex) | Không còn an toàn — chỉ dùng cho hệ thống cũ |
| SHA-256 | 256 bit (64 ký tự hex) | Khuyên dùng |
| SHA-384 | 384 bit (96 ký tự hex) | Mạnh |
| SHA-512 | 512 bit (128 ký tự hex) | Mạnh |
"Không còn an toàn" (Broken) có nghĩa là các nhà nghiên cứu có thể cố tình tạo ra hai đầu vào khác nhau nhưng có cùng một mã băm (xung đột mã băm). SHA-256 và các biến thể SHA-2 dài hơn hiện chưa có lỗ hổng nào bị khai thác trong thực tế.
Nếu bạn cần tạo mã định danh ngẫu nhiên thay vì mã nhận diện tệp (fingerprint), hãy sử dụng Trình tạo UUID. Để mã hóa các byte thô của tệp thành văn bản thay vì băm chúng, hãy sử dụng Base64.