Chuyển đến ô nhập JWT

Giải mã JWT - Giải mã và xác minh JWT trong trình duyệt của bạn

// giải mã JWT mà không gửi dữ liệu đến máy chủ

Chỉ xử lý phía client — dữ liệu của bạn không bao giờ rời khỏi trình duyệt
Nhập Token
Thả tệp JWT hoặc văn bản vào đây

Cách giải mã JWT Token

1

Dán JWT Token của bạn

Sao chép JSON Web Token của bạn và dán vào ô nhập liệu. Bộ giải mã JWT tự động phân tích và giải mã token được mã hóa Base64URL ngay lập tức.

2

Xem Claims đã giải mã

Kiểm tra header và payload JWT đã giải mã. Xem các claim như iss, sub, exp và iat ở định dạng JSON hoặc bảng với dấu thời gian dễ đọc.

3

Xác minh Chữ ký JWT

Nhập khóa bí mật hoặc khóa công khai để xác minh chữ ký của token. Hỗ trợ thuật toán HS256, HS384, HS512 (HMAC) để xác thực chữ ký.

JSON Web Token (JWT) là gì?

header . payload . chữ ký

JSON Web Token (JWT) là một tiêu chuẩn mở (RFC 7519) để truyền thông tin an toàn giữa các bên dưới dạng đối tượng JSON nhỏ gọn, an toàn cho URL. JWT thường được sử dụng cho xác thực, ủy quyềntrao đổi thông tin trong các ứng dụng web hiện đại, API và hệ thống đăng nhập một lần (SSO).

header

Chứa loại token và thuật toán ký (ví dụ: HS256, RS256, ES256).

{"alg": "HS256", "typ": "JWT"}

payload

Chứa các claim: đã đăng ký (iss, exp, sub), công khai và riêng tư.

{"sub": "user123", "exp": 1699999999}

chữ ký

Chữ ký mật mã xác minh token chưa bị giả mạo.

HMACSHA256(base64(header).base64(payload), secret)

Các trường hợp sử dụng JWT phổ biến

Xác thực API

JWT là tiêu chuẩn để bảo mật REST API. Sau khi đăng nhập, máy chủ cấp JWT mà client đưa vào header Authorization: Bearer cho các yêu cầu tiếp theo.

Đăng nhập một lần (SSO)

JWT cho phép xác thực liền mạch trên nhiều ứng dụng. Một lần đăng nhập tạo ra token hoạt động trên tất cả các dịch vụ được kết nối trong tổ chức của bạn.

Trao đổi thông tin

Truyền dữ liệu an toàn giữa các bên. Chữ ký đảm bảo danh tính người gửi và thông điệp không bị thay đổi trong quá trình truyền.

Xác thực ứng dụng di động

Xác thực không trạng thái lý tưởng cho ứng dụng di động. Không cần phiên phía máy chủ—JWT chứa tất cả thông tin người dùng cần thiết.

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

Bộ giải mã JWT này có an toàn để sử dụng với token production không?

Có, bộ giải mã JWT này hoàn toàn an toàn. Tất cả việc giải mã và xác minh diễn ra hoàn toàn trong trình duyệt của bạn sử dụng JavaScript. Token và khóa bí mật của bạn không bao giờ được gửi đến bất kỳ máy chủ nào. Bạn có thể xác minh điều này bằng cách kiểm tra các yêu cầu mạng trong công cụ phát triển của trình duyệt—không có dữ liệu nào rời khỏi thiết bị của bạn.

Sự khác biệt giữa giải mã và xác minh JWT là gì?

Giải mã đơn giản chỉ chuyển đổi header và payload được mã hóa Base64URL trở lại JSON có thể đọc được. Bất kỳ ai cũng có thể giải mã JWT mà không cần khóa. Xác minh kiểm tra chữ ký mật mã để đảm bảo token chưa bị giả mạo và được cấp bởi nguồn đáng tin cậy. Xác minh yêu cầu khóa bí mật (cho HMAC) hoặc khóa công khai (cho RSA/ECDSA).

Những thuật toán ký JWT nào được hỗ trợ?

Công cụ này có thể giải mã JWT được ký với bất kỳ thuật toán nào. Để xác minh chữ ký, chúng tôi hiện hỗ trợ thuật toán HMAC (HS256, HS384, HS512) sử dụng Web Crypto API. Hỗ trợ xác minh RSA (RS256, RS384, RS512) và ECDSA (ES256, ES384, ES512) đang được lên kế hoạch.

Tại sao xác minh chữ ký JWT của tôi thất bại?

Các lý do phổ biến bao gồm: 1) Khóa bí mật sai—đảm bảo bạn đang sử dụng đúng khóa đã ký token. 2) Định dạng sai—thử chuyển đổi giữa UTF-8 và Base64 nếu khóa bí mật của bạn được mã hóa Base64. 3) Thuật toán không khớp—kiểm tra claim alg trong header khớp với phương pháp xác minh của bạn. 4) Token đã bị sửa đổi—bất kỳ thay đổi nào đối với header hoặc payload đều làm vô hiệu chữ ký.

Các claim JWT tiêu chuẩn có nghĩa là gì?

Các claim đã đăng ký được định nghĩa trong RFC 7519:

  • iss (nhà phát hành) – Ai đã phát hành token
  • sub (chủ thể) – Người dùng hoặc thực thể mà token đại diện
  • aud (đối tượng) – Người nhận dự định của token
  • exp (hết hạn) – Dấu thời gian Unix khi token hết hạn
  • nbf (không trước) – Token không hợp lệ trước thời điểm này
  • iat (phát hành lúc) – Khi token được tạo
  • jti (ID JWT) – Định danh duy nhất cho token