# JOSE Guide

This part of the documentation contains information on the JOSE implementation. It includes:

1. JSON Web Signature (JWS)

2. JSON Web Encryption (JWE)

3. JSON Web Key (JWK)

4. JSON Web Algorithm (JWA)

5. JSON Web Token (JWT)

A simple example on how to use JWT with Authlib:

    from authlib.jose import jwt

    with open('private.pem', 'rb') as f:
        key = f.read()

    payload = {'iss': 'Authlib', 'sub': '123', ...}
    header = {'alg': 'RS256'}
    s = jwt.encode(header, payload, key)

Follow the documentation below to find out more in detail.

- JSON Web Signature (JWS)
  - Compact Serialize and Deserialize
  - JSON Serialize and Deserialize
- JSON Web Encryption (JWE)
  - Compact Serialize and Deserialize
- JSON Web Key (JWK)
- JSON Web Token (JWT)
  - JWT Encode
  - JWT Decode
  - JWT with limited Algorithms
  - JWT Payload Claims Validation