Tạo mã hash API

Tính MD5, SHA-1, SHA-256, SHA-384, SHA-512 và CRC32 của chuỗi hoặc file trong một lần gọi, xuất hex hoặc base64, hỗ trợ ký HMAC.

GETPOSThttps://apibox.io.vn/v1/hash
Bảo mật & Mã hoá▶ Dùng thử online

API hash tính checksum và giá trị băm mật mã của một chuỗi hoặc một file. Mặc định API trả về tất cả thuật toán cùng lúc – MD5, SHA-1, SHA-256, SHA-384, SHA-512 và CRC32 – hoặc chỉ những thuật toán bạn liệt kê trong algorithm (phân tách bằng dấu phẩy, ví dụ sha256,md5).

Dữ liệu đầu vào có thể là text (query hoặc JSON), body dạng text thô, hoặc dữ liệu nhị phân: upload file qua trường multipart file, gửi thẳng byte trong body, hay truyền base64 qua file_base64. Dung lượng file tối đa theo gói (Free 5 MB, Starter 20 MB, Pro 50 MB). Phản hồi kèm số byte đã băm.

Đặt hmac_key để nhận chữ ký HMAC thay vì hash thường (HMAC-SHA256 là chuẩn mà đa số dịch vụ webhook dùng), và encoding=base64 để xuất base64 thay cho hex. CRC32 luôn trả về 8 ký tự hex.

Tham số

TênVị tríKiểuBắt buộcMặc định
textbody|querystringcóChuỗi cần băm (UTF-8). Không cần khi gửi file hoặc body text thô.
filebodyfilekhôngFile cần băm: trường multipart file, body nhị phân thô, hoặc base64 qua file_base64. Tối đa 5/20/50 MB tuỳ gói.
algorithmbody|querystringkhôngallall hoặc danh sách md5, sha1, sha256, sha384, sha512, crc32 phân tách bằng dấu phẩy (tên khác algorithms).
encodingbody|querystringkhônghexhex hoặc base64 (CRC32 luôn là hex).
hmac_keybody|querystringkhôngKhoá bí mật: trả về chữ ký HMAC thay vì hash thường.

Ví dụ

curl -X POST "https://apibox.io.vn/v1/hash" \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"text":"hello world"}'

Kết quả trả về

{
  "encoding": "hex",
  "bytes": 11,
  "hashes": {
    "md5": "5eb63bbbe01eeed093cb22bb8f5acdc3",
    "sha1": "2aae6c35c94fcfb415dbe95f408b9ce91ee846ed",
    "sha256": "b94d27b9934d3e08a52e52d7da7dabfac484efe37a5380ee9088f7ace2efcde9",
    "sha384": "fdbd8e75a67f29f701a4e040385e2e23986303ea10239211af907fcbb83578b3e417cb71ce646efd0819dd8c088de1bd",
    "sha512": "309ecc489c12d6eb4cc40f50c902f2b4d0ed77ee511a7c7a9bcd3ca86d4cd86f989dd35bc5ff499670da34255b45b0cfd830e81f605dcf7dc5542e93ae9cd76f",
    "crc32": "0d4a1185"
  }
}

Ứng dụng

  • Kiểm tra tính toàn vẹn file bằng checksum SHA-256 sau khi tải lên/tải xuống
  • Tính chữ ký HMAC-SHA256 để test code xác thực webhook
  • Tạo cache key hoặc ETag từ nội dung
  • Loại bỏ file trùng lặp dựa trên mã hash

Hỏi đáp

Tính chữ ký HMAC-SHA256 thế nào?

Gửi POST {"text": "payload", "algorithm": "sha256", "hmac_key": "khoa-bi-mat"}. Thêm "encoding": "base64" nếu bên cung cấp yêu cầu base64 (như Shopify) thay vì hex (GitHub, Stripe).

Có hash được file thay vì chuỗi không?

Được. Upload qua trường multipart "file", gửi byte thô trong body, hoặc truyền "file_base64" trong JSON. Giới hạn là dung lượng file theo gói (5/20/50 MB).

MD5 còn an toàn không?

Không dùng cho mật khẩu hay chữ ký: MD5 và SHA-1 đã bị phá về va chạm. Chúng vẫn ổn cho checksum thông thường và tương thích hệ thống cũ; với bảo mật hãy dùng SHA-256/SHA-512, còn mật khẩu nên dùng bcrypt hoặc Argon2.

API liên quan

Bắt đầu với 1.000 request miễn phí mỗi tháng. Nhận API key miễn phí →