jwt-jws-jwk.py 449 B

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