Trình tạo HMAC
Đầu vào
Cấu hình
Thuật toán
Chọn thuật toán băm HMAC
Định dạng khóa
Cách khóa bí mật của bạn được mã hóa
Định dạng đầu ra
Cách hiển thị HMAC được tạo
Đầu ra HMAC
Chi tiết kỹ thuật
Cách hoạt động của trình tạo HMAC
Công cụ làm gì
Trình tạo HMAC này tạo các hash có khóa (chữ ký HMAC) cho một thông điệp bằng khóa bí mật dùng chung. Nó hỗ trợ HMAC SHA-1, HMAC SHA-256, HMAC SHA-384 và HMAC SHA-512, thường được dùng cho xác thực API, xác minh webhook và kiểm tra tính toàn vẹn thông điệp. Bạn có thể chọn cách mã hóa khóa (text, hex hoặc Base64) và xuất HMAC ở dạng hex hoặc Base64. Mọi phép tính đều chạy cục bộ trong trình duyệt của bạn bằng Web Crypto API, vì vậy bí mật của bạn không bao giờ rời khỏi thiết bị.
Các trường hợp sử dụng phổ biến cho lập trình viên
Lập trình viên dùng công cụ tính HMAC trực tuyến để xác minh chữ ký webhook từ các dịch vụ như Stripe, GitHub hoặc Slack, tạo chữ ký request API và gỡ lỗi quy trình ký JWT bằng HMAC. Khi tích hợp API bên thứ ba yêu cầu xác thực HMAC, công cụ này giúp bạn xác nhận chữ ký mong đợi và so sánh với đầu ra từ máy chủ. Nó cũng giúp xác thực hash HMAC trong quá trình kiểm thử, xây dựng ví dụ có thể tái lập và khắc phục sự không khớp về encoding giữa client và server.
Định dạng dữ liệu, kiểu hoặc biến thể
Công cụ HMAC hỗ trợ các thuật toán SHA-1, SHA-256, SHA-384 và SHA-512, với đầu ra ở dạng hex hoặc Base64. Khóa bí mật có thể được cung cấp dưới dạng văn bản thuần (UTF-8), thập lục phân hoặc byte được mã hóa Base64. Nhiều tích hợp công bố chữ ký HMAC ở dạng hex, trong khi một số API yêu cầu Base64; trình tạo này giúp bạn khớp các định dạng đó. Hãy đảm bảo chọn đúng encoding của khóa để tránh chữ ký không khớp.
Các lỗi thường gặp và trường hợp biên
Chữ ký HMAC cực kỳ nhạy với chi tiết đầu vào. Bất kỳ khác biệt nào về encoding thông điệp, khoảng trắng hoặc ký tự xuống dòng đều sẽ thay đổi kết quả. Hãy đảm bảo bạn dùng đúng payload và đúng định dạng khóa (text vs hex vs Base64). SHA-1 được xem là yếu hơn và chỉ nên dùng cho các tích hợp cũ khi bắt buộc. Nếu nền tảng của bạn dùng Base64URL thay vì Base64, bạn có thể cần chuyển đổi đầu ra để so sánh.
Khi nào nên dùng công cụ này thay vì viết mã
Hãy dùng trình tạo HMAC này để kiểm tra nhanh, gỡ lỗi xác minh webhook và xác thực chữ ký ví dụ trong quá trình phát triển. Với hệ thống production, hãy tạo chữ ký HMAC bằng code sử dụng thư viện crypto của nền tảng để đảm bảo encoding nhất quán, xử lý khóa an toàn và so sánh an toàn theo thời gian (timing-safe). Công cụ này lý tưởng cho phát triển, nhưng ứng dụng của bạn nên tính HMAC theo chương trình trong production.