app-MAIL-temp/poc/jwt-jws-jwk.py

18 lines
449 B
Python

"""
ssh-keygen -t rsa -b 4096 -m PEM -f jwtRS256.key
# Don't add passphrase
openssl rsa -in jwtRS256.key -pubout -outform PEM -out jwtRS256.key.pub
"""
from jwcrypto import jwk, jws, jwt
with open("jwtRS256.key", "rb") as f:
key = jwk.JWK.from_pem(f.read())
Token = jwt.JWT(header={"alg": "RS256"}, claims={"info": "I'm a signed token"})
Token.make_signed_token(key)
print(Token.serialize())
# verify
jwt.JWT(key=key, jwt=Token.serialize())