Trên GitHub, panva/jose đã đạt 7.7k sao, nhóm Security, ngôn ngữ TypeScript. JWA, JWS, JWE, JWT, JWK, JWKS for Node.js, Browser, Cloudflare Workers, Deno, Bun, and other Web-interoperable runtimes
Tóm tắt dựng từ metadata GitHub của chính dự án — chưa có bài review TopGit. Trang sẽ tự động cập nhật khi bài review đầy đủ được xuất bản.
VÌ SAO CHƯA CÓ REVIEW
TopGit viết bài đầy đủ cho repo có nhiều sao nhất và được yêu cầu nhiều nhất. Trang này là snapshot trong thời gian chờ — xem README gốc ở tab READ ME.
jose is a JavaScript module for JSON Object Signing and Encryption, providing support for JSON Web Tokens (JWT), JSON Web Signature (JWS), JSON Web Encryption (JWE), JSON Web Key (JWK), JSON Web Key Set (JWKS), and more. The module is designed to work across various Web-interoperable runtimes including Node.js, browsers, Cloudflare Workers, Deno, Bun, and others.
Sponsor
If you want to quickly add JWT authentication to JavaScript apps, feel free to check out Auth0's JavaScript SDK and free plan. Create an Auth0 account; it's free!
💗 Help the project
Support from the community to continue maintaining and improving this module is welcome. If you find the module useful, please consider supporting the project by becoming a sponsor.
Dependencies: 0
jose has no dependencies and it exports tree-shakeable ESM1.
Documentation
jose is distributed via npmjs.com, jsr.io, jsdelivr.com, and github.com.
example ESM import1
import * as jose from 'jose'
JSON Web Tokens (JWT)
The jose module supports JSON Web Tokens (JWT) and provides functionality for signing and verifying tokens, as well as their JWT Claims Set validation.
JWT Claims Set Validation & Signature Verification using the jwtVerify function
Using a remote JSON Web Key Set (JWKS)
Using a local JSON Web Key Set (JWKS)
Signing using the SignJWT class
Utility functions
Decoding Token's Protected Header
Decoding JWT Claims Set prior to its validation
Encrypted JSON Web Tokens
The jose module supports encrypted JSON Web Tokens and provides functionality for encrypting and decrypting tokens, as well as their JWT Claims Set validation.
Decryption & JWT Claims Set Validation using the jwtDecrypt function
Encryption using the EncryptJWT class
Utility functions
Decoding Token's Protected Header
Key Utilities
The jose module supports importing, exporting, and generating keys and secrets in various formats, including PEM formats like SPKI, X.509 certificate, and PKCS #8, as well as JSON Web Key (JWK).
Key Import Functions
JWK Import
Public Key Import (SPKI)
Public Key Import (X.509 Certificate)
Private Key Import (PKCS #8)
Key and Secret Generation Functions
Asymmetric Key Pair Generation
Symmetric Secret Generation
Key Export Functions
JWK Export
Private Key Export
Public Key Export
JSON Web Signature (JWS)
The jose module supports signing and verification of JWS messages with arbitrary payloads in Compact, Flattened JSON, and General JSON serialization syntaxes.
Signing - Compact, Flattened JSON, General JSON
Verification - Compact, Flattened JSON, General JSON
Using a remote JSON Web Key Set (JWKS)
Using a local JSON Web Key Set (JWKS)
Utility functions
Decoding Token's Protected Header
JSON Web Encryption (JWE)
The jose module supports encryption and decryption of JWE messages with arbitrary plaintext in Compact, Flattened JSON, and General JSON serialization syntaxes.
Encryption - Compact, Flattened JSON, General JSON
Decryption - Compact, Flattened JSON, General JSON
Utility functions
Decoding Token's Protected Header
Other
The following are additional features and utilities provided by the jose module:
Calculating JWK Thumbprint
Calculating JWK Thumbprint URI
Verification using a JWK Embedded in a JWS Header
Unsecured JWT
JOSE Errors
Supported Runtimes
The jose module is compatible with JavaScript runtimes that support the utilized Web API globals and standard built-in objects or are Node.js.
The following runtimes are supported (this is not an exhaustive list):
Bun
Browsers
Cloudflare Workers
Deno
Electron
Node.js
Please note that certain algorithms may not be available depending on the runtime used. You can find a list of available algorithms for each runtime in the specific issue links provided above.
Supported Versions
Version
Security Fixes 🔑
Other Bug Fixes 🐞
New Features ⭐
Runtime and Module type
v6.x
Security Policy
✅
✅
Universal2 ESM1
Specifications
Details
JSON Web Signature (JWS) - RFC7515
JSON Web Encryption (JWE) - RFC7516
JSON Web Key (JWK) - RFC7517
JSON Web Algorithms (JWA) - RFC7518
JSON Web Token (JWT) - RFC7519
JSON Web Key Thumbprint - RFC7638
JSON Web Key Thumbprint URI - RFC9278
JWS Unencoded Payload Option - RFC7797
CFRG Elliptic Curve ECDH and Signatures - RFC8037
Fully-Specified Algorithms for JOSE - RFC9864
ML-DSA for JOSE - RFC9964
The algorithm implementations in jose have been tested using test vectors from their respective specifications as well as RFC7520.
Footnotes
CJS style let jose = require('jose') is possible in Node.js versions where the require(esm) feature is enabled by default (^20.19.0 || ^22.12.0 || >= 23.0.0). ↩ ↩2 ↩3
Assumes runtime support of WebCryptoAPI and Fetch API ↩
panva/jose thuộc nhóm Security trên TopGit, cùng 13 topic GitHub. Trang Trending và Topics liệt kê các repo cùng số sao và cùng ngôn ngữ để so sánh.
Đọc thêm về panva/jose ở đâu?
Trang TopGit này là một snapshot — tab "Readme" hiển thị nguyên văn README của repo (đã bỏ link, giữ ảnh). Repo GitHub ở github.com/panva/jose là nguồn chính thức.
panva/jose có phải mã nguồn mở không?
Có — panva/jose phát hành theo license MIT, nghĩa là mã nguồn mở để đọc, fork và (tùy license) tái sử dụng. Mã: github.com/panva/jose.
panva/jose có website riêng không?
TopGit chưa ghi nhận URL trang chủ cho panva/jose. Phần README ở tab phía trên thường có link demo, hoặc xem mô tả GitHub của repo.
panva/jose dùng license gì?
panva/jose phát hành theo license MIT. Nên mở file LICENSE trên GitHub để xác nhận — license metadata đôi khi lệch với thực tế dự án.
panva/jose là gì?
panva/jose (panva/jose) là dự án TypeScript trên GitHub. Theo mô tả gốc: JWA, JWS, JWE, JWT, JWK, JWKS for Node.js, Browser, Cloudflare Workers, Deno, Bun, and other Web-interoperable runtimes
Vì sao panva/jose được xếp vào nhóm Security?
TopGit xếp panva/jose vào nhóm Security dựa trên GitHub topics và mô tả của repo (gắn thẻ: "browser", "bun", "cloudflare-workers"). Việc phân loại dựa trên metadata thật của repo, không phải đoán theo cảm tính biên tập.
Đọc đầy đủ README ở tab phía trên.
Vẫn đang phân vân về jose?
Một cú bấm sẽ gửi câu hỏi kèm trang này cho AI — xem AI nói gì về jose.