0

TƯƠNG LAI CỦA JWT: JWT.IO CÓ HỖ TRỢ THUẬT TOÁN ML-DSA MỚI ĐƯỢC CHUẨN HÓA KHÔNG?

Cùng với sự phát triển của máy tính lượng tử (Quantum Computing), các hệ thống mã hóa hiện tại (như RSA, ECDSA) đang đứng trước nguy cơ bị bẻ khóa. Để đối phó với viễn cảnh này, thế giới công nghệ đang chuyển mình sang Mật mã Hậu lượng tử (Post-Quantum Cryptography - PQC). Trong đó, thuật toán chữ ký số ML-DSA đang là tâm điểm chú ý đối với việc mã hóa và xác thực JSON Web Tokens (JWT).

Câu hỏi đặt ra đối với các lập trình viên hiện nay là: Liệu công cụ quen thuộc jwt.io có hỗ trợ xác thực các token sử dụng thuật toán ML-DSA hay không?


1. ML-DSA Là Gì Và Tại Sao Lại Quan Trọng?

ML-DSA (Module-Lattice-Based Digital Signature Algorithm), trước đây được biết đến với cái tên CRYSTALS-Dilithium, là thuật toán chữ ký số hậu lượng tử vừa được Viện Tiêu chuẩn và Công nghệ Quốc gia Mỹ (NIST) chính thức chuẩn hóa trong tài liệu FIPS 204.

Không giống như RSA hay Elliptic Curve dựa trên bài toán phân tích thừa số nguyên tố hay logarit rời rạc (những bài toán mà máy tính lượng tử có thể giải dễ dàng), ML-DSA dựa trên bài toán mạng tinh thể (lattice-based). Thuật toán này được chứng minh là an toàn ngay cả trước những cỗ máy tính lượng tử mạnh nhất.


2. Sự Đổ Bộ Của ML-DSA Vào Tiêu Chuẩn JWT (JOSE)

Để sử dụng ML-DSA trong JWT, Nhóm đặc trách kỹ thuật Internet (IETF) hiện đang tích cực làm việc để đưa thuật toán này vào chuẩn JOSE (JSON Object Signing and Encryption) thông qua bản nháp (draft) draft-ietf-cose-dilithium.

Bản nháp này đã định nghĩa 3 tham số thuật toán mới sẽ được xuất hiện trong phần Header ("alg") của JWT:

  • ML-DSA-44
  • ML-DSA-65
  • ML-DSA-87

Ví dụ: Một Header của JWT an toàn hậu lượng tử sẽ có dạng như sau:

{
  "alg": "ML-DSA-65",
  "typ": "JWT"
}

3. jwt.io Có Hỗ Trợ ML-DSA Không?

Câu trả lời được chia làm hai khía cạnh: Giải mã (Decoding)X xác thực (Verification).

Về mặt Giải mã (Decoding): Có.

Bản chất của JWT là chuỗi Base64Url được mã hóa. Do đó, nếu bạn paste một token được ký bằng ML-DSA vào trang jwt.io, nền tảng này vẫn có thể giải mã và hiển thị chính xác nội dung Header (cho thấy thuật toán ML-DSA-65) và phần Payload của bạn một cách bình thường.

Về mặt Xác thực chữ ký (Signature Verification): Sẽ hỗ trợ trong tương lai gần.

Trang jwt.io xác minh chữ ký mã hóa dựa vào các thư viện Web Crypto được tích hợp sẵn. Hiện tại, vì ML-DSA mới được NIST chuẩn hóa và bản nháp IETF vẫn đang trong quá trình hoàn thiện thành RFC chính thức, jwt.io chưa thể ngay lập tức cung cấp giao diện nhập Public Key tinh thể (Lattice Key) để verify chữ ký ML-DSA-X.

Tuy nhiên, jwt.io được quản lý bởi Auth0 (Okta) - một trong những gã khổng lồ dẫn đầu về quản lý danh tính (Identity Management). Auth0 luôn theo sát các tiêu chuẩn của IETF. Ngay khi chuẩn JOSE cho ML-DSA (RFC mới) được phê duyệt và các hàm Web Crypto API trên trình duyệt cập nhật để hỗ trợ hàm tinh thể học, jwt.io chắc chắn sẽ bổ sung tính năng "Verify Signature" cho các token này.


4. Tình Hình Áp Dụng Thực Tế Hiện Nay

Mặc dù jwt.io chưa thể tự động verify chữ ký ML-DSA tại thời điểm này, nhưng các hệ sinh thái công nghệ backend đã bắt đầu tích hợp PQC:

  • Vào giữa năm 2026, framework Vapor (của ngôn ngữ Swift trên server) cùng thư viện jwt-kit đã công bố hỗ trợ chính thức cho token ML-DSA, tận dụng các API mã hóa lượng tử bảo mật từ Swift Crypto và Apple CryptoKit.
  • Các hệ thống Identity Provider như Duende IdentityServer (của hệ sinh thái .NET) cũng đã có nhiều bài thử nghiệm proof-of-concept (POC) để cấp phát token sử dụng CRYSTALS-Dilithium/ML-DSA.

💡 Lời Kết

Việc jwt.io hỗ trợ toàn diện việc xác thực ML-DSA chỉ là vấn đề thời gian. Trong lúc chờ đợi sự hỗ trợ chính thức trên các công cụ UI/Debugger, các kỹ sư phần mềm hoàn toàn có thể bắt đầu nghiên cứu và xây dựng các hệ thống tạo token hậu lượng tử ở tầng Backend để đi trước đón đầu xu hướng bảo mật tuyệt đối này.


All rights reserved

Viblo
Hãy đăng ký một tài khoản Viblo để nhận được nhiều bài viết thú vị hơn.
Đăng kí