Giải mã JWT online miễn phí
Giải mã mọi JWT, kiểm tra hạn dùng và xác thực chữ ký bằng secret, PEM hoặc JWK – hoặc ký token mới với HS256/384/512, RS, PS, ES.
Kết quả
Bấm “Chạy” để xem kết quả.
API JWT giúp giải mã, xác thực và tạo JSON Web Token. Ở chế độ decode (mặc định), bạn gửi token – tiền tố Bearer sẽ được bỏ tự động – và nhận về header, payload dạng JSON cùng các claim dễ đọc: issued_at, expires_at, not_before theo định dạng ISO, và token đã expired (hết hạn) hay not_yet_valid (chưa có hiệu lực).
Thêm secret (khoá HMAC dùng chung, hoặc public key RSA/EC dạng PEM PUBLIC KEY hay JWK) để xác thực chữ ký: signature_valid cho biết chữ ký có khớp không, còn valid chỉ là true khi chữ ký đúng và token đang trong thời hạn hiệu lực. Hỗ trợ HS256/384/512, RS256/384/512, PS256/384/512 và ES256/384/512.
Ở chế độ sign (action=sign, hoặc chỉ cần gửi payload), API tạo token đã ký từ payload JSON với thuật toán algorithm (mặc định HS256) và secret (khoá HMAC, hoặc PEM PRIVATE KEY PKCS#8 / JWK private cho thuật toán bất đối xứng). expires_in (giây) tự thêm claim iat và exp. Endpoint chỉ nhận POST để token và khoá không bao giờ nằm trong URL.
Dùng trong code của bạn
curl -X POST "https://apibox.io.vn/v1/jwt" \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{"token":"eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpYXQiOjE3OTQyODczMTQsImV4cCI6MTc5NDI5MDkxNCwic3ViIjoidXNlcl8xMjMiLCJyb2xlIjoiYWRtaW4ifQ.Dle3BtqLL449n-RirNMbP23azwGNJ57klSgX2-x1rH4","secret":"my-secret"}'const res = await fetch('https://apibox.io.vn/v1/jwt', {
method: 'POST',
headers: {
Authorization: 'Bearer YOUR_API_KEY',
'Content-Type': 'application/json',
},
body: JSON.stringify({
"token": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpYXQiOjE3OTQyODczMTQsImV4cCI6MTc5NDI5MDkxNCwic3ViIjoidXNlcl8xMjMiLCJyb2xlIjoiYWRtaW4ifQ.Dle3BtqLL449n-RirNMbP23azwGNJ57klSgX2-x1rH4",
"secret": "my-secret"
}),
});
const data = await res.json();
console.log(data);import requests
res = requests.post(
"https://apibox.io.vn/v1/jwt",
headers={"Authorization": "Bearer YOUR_API_KEY"},
json={"token": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpYXQiOjE3OTQyODczMTQsImV4cCI6MTc5NDI5MDkxNCwic3ViIjoidXNlcl8xMjMiLCJyb2xlIjoiYWRtaW4ifQ.Dle3BtqLL449n-RirNMbP23azwGNJ57klSgX2-x1rH4", "secret": "my-secret"},
timeout=30,
)
print(res.json())<?php
$ch = curl_init('https://apibox.io.vn/v1/jwt');
curl_setopt_array($ch, [
CURLOPT_RETURNTRANSFER => true,
CURLOPT_CUSTOMREQUEST => 'POST',
CURLOPT_HTTPHEADER => ['Authorization: Bearer YOUR_API_KEY', 'Content-Type: application/json'],
CURLOPT_POSTFIELDS => '{"token":"eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpYXQiOjE3OTQyODczMTQsImV4cCI6MTc5NDI5MDkxNCwic3ViIjoidXNlcl8xMjMiLCJyb2xlIjoiYWRtaW4ifQ.Dle3BtqLL449n-RirNMbP23azwGNJ57klSgX2-x1rH4","secret":"my-secret"}',
]);
$response = curl_exec($ch);
print_r(json_decode($response, true));Tài liệu API → Nhận API key miễn phí
Hỏi đáp
Dán token vào đây có an toàn không?
Token và secret chỉ được xử lý trong bộ nhớ trên Cloudflare Workers, không được lưu lại. Dù vậy, hãy cẩn trọng với secret production: ưu tiên token test và đổi ngay secret nếu nghi bị lộ.
Xác thực token RS256 thế nào?
Gửi POST {"token": "eyJ...", "secret": "-----BEGIN PUBLIC KEY-----..."}. Public key dạng JWK (chuỗi JSON) cũng dùng được. Thuật toán được đọc từ header của token.
Vì sao "valid" trả về null?
Vì bạn chưa gửi secret hoặc key nên không thể kiểm tra chữ ký. Token chỉ được giải mã; signature_valid và valid sẽ là null cho đến khi có khoá.