{"repo":"guillp/jwskate","free":true,"listed":false,"github":"https://github.com/guillp/jwskate","clone":"git clone https://github.com/guillp/jwskate.git","description":"A Pythonic implementation of the JOSE / JSON Web Crypto related RFCs (JWS, JWK, JWA, JWT, JWE)","language":"Python","stars":24,"topics":["aes-encryption","elliptic-curves","jose","jwa","jwe","jwk","jws","jwt","jwt-token","okp"],"license":"MIT","category":"auth-billing-email","readme_excerpt":"A Pythonic implementation of the JOSE set of IETF specifications: [Json Web Signature][rfc7515], [Keys][rfc7517], [Algorithms][rfc7518], [Tokens][rfc7519] and [Encryption][rfc7516] (RFC7515 to 7519), hence the name JWSKATE , and their extensions [ECDH Signatures][rfc8037] (RFC8037), [JWK Thumbprints][rfc7638] (RFC7638), and [JWK Thumbprint URI][rfc9278] (RFC9278), with respects to [JWT Best Current Practices][rfc8725] (RFC8725). - Free software: MIT - Repository: https://github.com/guillp/jwskate/ - Documentation: https://guillp.github.io/jwskate/ Here is a quick usage example: generating a private RSA key, signing some data, then validating that signature with the matching public key: The result of this print will look like this (with the random parts abbreviated to ... for display purposes only): Now let's sign a JWT containing arbitrary claims, this time using an Elliptic Curve ( EC ) key: For most applications, you will often sign with the same key and issuer, and with a pre-determined token lifetime. So you can create a JwtSigner object to simplify this for you: The generated JWT will include the standardized claims ( iss , aud , sub , iat , exp and jti ), together with the extra claims provided to .sign() : Features - Simple, Clean, Pythonic interface - Convenience wrappers around cryptography for all algorithms described in JWA - Json Web Keys (JWK) loading, dumping and generation - Arbitrary data signature and verification using Json Web Keys - Json Web Signatures (JW","default_branch":null,"files":null,"tree":[],"storefront":"/r/guillp","claimed":false,"request_supported":{"post":"https://gitbuyer.com/r/guillp/jwskate/request-supported","requests":0},"note":"indexed from public GitHub; nothing is for sale on this page. Clone it from GitHub. Paid listings live at /search."}