Bỏ qua, tới nội dung
Monu Tools

Giải mã JWT

Giải mã JSON Web Token để kiểm tra header và payload của nó, với thời gian hết hạn và thời gian phát hành dễ đọc. Chạy hoàn toàn trong trình duyệt của bạn; token không bao giờ được tải lên.

Cách dùng Giải mã JWT

  1. 01

    Dán một JWT theo dạng header.payload.signature.

  2. 02

    Đọc header và payload đã giải mã dưới dạng JSON được định dạng.

  3. 03

    Kiểm tra thời gian hết hạn và phát hành, và liệu token đã hết hạn chưa.

Bộ giải mã JWT cho bạn thấy gì

Một JSON Web Token có ba phần cách nhau bằng dấu chấm: phần header mã hóa Base64URL, phần payload mã hóa Base64URL, và phần chữ ký. Bộ giải mã này tách và giải mã hai phần đầu ngay lập tức trong trình duyệt của bạn, để bạn đọc được token thực sự chứa những gì.

Công dụng phổ biến nhất là xem một token do API trả về: ai đã phát hành nó (iss), khi nào nó hết hạn (exp), nó mang những quyền gì (scope hay roles), và nó đã hết hạn hay chưa.

Việc giải mã diễn ra thế nào

Công cụ lấy đoạn header và payload rồi giải mã nội dung Base64URL của chúng về JSON đọc được. Không có gì được gửi đi đâu cả: việc tách và giải mã diễn ra ngay tại chỗ khi bạn dán token vào.

Đọc hạn dùng và dấu thời gian

Hạn dùng được hiện theo giờ địa phương dễ đọc chứ không phải một dấu thời gian Unix thô, nên bạn thấy ngay token còn hiệu lực hay không. Điều tương tự áp dụng cho các trường thời gian khác như iat và nbf, chúng trở thành những ngày giờ bạn thực sự hiểu được.

Giải mã không phải là xác minh

Công cụ này giải mã và hiển thị, nó không xác minh chữ ký với một khóa bí mật. Ai cũng đọc được phần payload của một JWT mà không cần khóa, vì chỉ chữ ký được bảo vệ chứ không phải nội dung.

Để xác minh chữ ký, bạn cần khóa bí mật ký hoặc khóa công khai, và những thứ đó không bao giờ nên nhập vào một công cụ chạy trên trình duyệt. Đừng dán bí mật vào đây.

Quyền riêng tư

Token không bao giờ rời khỏi thiết bị của bạn. Toàn bộ việc giải mã chạy trong trình duyệt, nên không có gì bạn dán vào bị tải lên hay lưu lại.

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

Nó có xác minh chữ ký không?

Không. Nó giải mã và hiển thị header và payload. Xác minh chữ ký cần secret ký hoặc khóa công khai, thứ mà bạn không nên dán vào bất kỳ công cụ web nào.

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

Giải mã đọc header và payload Base64url, vốn không được mã hóa. Xác minh tính lại chữ ký bằng khóa để chứng minh token là chính thống và chưa bị sửa đổi.

Dán token của tôi vào đây có an toàn không?

Việc giải mã diễn ra hoàn toàn trong trình duyệt của bạn, nên token không được tải lên. Tuy vậy, hãy xem token đang hoạt động là bí mật và tránh dán chúng trên máy tính dùng chung.

exp, iat và nbf nghĩa là gì?

Chúng là các claim tiêu chuẩn: iat là thời điểm phát hành, nbf là thời điểm bắt đầu có hiệu lực, và exp là thời gian hết hạn. Trình giải mã chuyển các dấu thời gian Unix này thành giờ địa phương dễ đọc.

Tôi có thể giải mã một token đã hết hạn không?

Có. Hết hạn không thay đổi cách một token được giải mã, nên bạn có thể kiểm tra các claim của token hết hạn và thấy chính xác khi nào nó hết hiệu lực.

Tại sao payload của tôi đọc được mà không cần khóa?

JWT được ký, không được mã hóa. Payload chỉ được mã hóa Base64url, nên ai cũng đọc được. Đừng bao giờ đặt bí mật trong payload của JWT.

Nguồn

Báo lỗi