diff --git a/docs/jwk/api.rst b/docs/jwk/api.rst new file mode 100644 index 00000000..245e66d0 --- /dev/null +++ b/docs/jwk/api.rst @@ -0,0 +1,6 @@ + +JWK API +^^^^^^^ + +.. automodule:: jose.jwk + :members: diff --git a/docs/jwk/index.rst b/docs/jwk/index.rst new file mode 100644 index 00000000..e59ce362 --- /dev/null +++ b/docs/jwk/index.rst @@ -0,0 +1,27 @@ +JSON Web Key +============== + +JSON Web Keys (JWK) are a JSON data structure representing a cryptographic key. + +Examples +^^^^^^^^ + +Verifying token signatures +-------------------------- + +.. code:: python + + >>> from jose import jwk + >>> + >>> token = "eyJhbGciOiJIUzI1NiIsImtpZCI6IjAxOGMwYWU1LTRkOWItNDcxYi1iZmQ2LWVlZjMxNGJjNzAzNyJ9.SXTigJlzIGEgZGFuZ2Vyb3VzIGJ1c2luZXNzLCBGcm9kbywgZ29pbmcgb3V0IHlvdXIgZG9vci4gWW91IHN0ZXAgb250byB0aGUgcm9hZCwgYW5kIGlmIHlvdSBkb24ndCBrZWVwIHlvdXIgZmVldCwgdGhlcmXigJlzIG5vIGtub3dpbmcgd2hlcmUgeW91IG1pZ2h0IGJlIHN3ZXB0IG9mZiB0by4.s0h6KThzkfBBBkLspW1h84VsJZFTsPPqMDA7g1Md7p0" + >>> hmac_key = { + "kty": "oct", + "kid": "018c0ae5-4d9b-471b-bfd6-eef314bc7037", + "use": "sig", + "alg": "HS256", + "k": "hJtXIZ2uSN5kbQfbtTNWbpdmhkV8FJG-Onbc6mxCcYg" + } + >>> + >>> key = jwk.construct(key_data) + >>> + >>> key.verify(token)