JSON Web Algorithms¶
JSON Web Algorithms.
https://tools.ietf.org/html/draft-ietf-jose-json-web-algorithms-40
-
class
josepy.jwa.
JWA
[source]¶ Bases:
josepy.interfaces.JSONDeSerializable
JSON Web Algorithm.
-
class
josepy.jwa.
JWASignature
(name)[source]¶ Bases:
josepy.jwa.JWA
,_abcoll.Hashable
Base class for JSON Web Signature Algorithms.
-
to_partial_json
()[source]¶ Partially serialize.
Following the example, partial serialization means the following:
assert isinstance(Bar().to_partial_json()[0], Foo) assert isinstance(Bar().to_partial_json()[1], Foo) # in particular... assert Bar().to_partial_json() != ['foo', 'foo']
Raises: josepy.errors.SerializationError – in case of any serialization error. Returns: Partially serializable object.
-
classmethod
from_json
(jobj)[source]¶ Deserialize a decoded JSON document.
Parameters: jobj – Python object, composed of only other basic data types, as decoded from JSON document. Not necessarily dict
(as decoded from “JSON object” document).Raises: josepy.errors.DeserializationError – if decoding was unsuccessful, e.g. in case of unparseable X509 certificate, or wrong padding in JOSE base64 encoded string, etc.
-
-
class
josepy.jwa.
_JWAHS
(name, hash_)[source]¶ Bases:
josepy.jwa.JWASignature
-
kty
¶ alias of
josepy.jwk.JWKOct
-
-
class
josepy.jwa.
_JWARS
(name, hash_)[source]¶ Bases:
josepy.jwa._JWARSA
,josepy.jwa.JWASignature
-
class
josepy.jwa.
_JWAPS
(name, hash_)[source]¶ Bases:
josepy.jwa._JWARSA
,josepy.jwa.JWASignature
-
class
josepy.jwa.
_JWAES
(name)[source]¶ Bases:
josepy.jwa.JWASignature
-
josepy.jwa.
HS256
= HS256¶ HMAC using SHA-256
-
josepy.jwa.
HS384
= HS384¶ HMAC using SHA-384
-
josepy.jwa.
HS512
= HS512¶ HMAC using SHA-512
-
josepy.jwa.
RS256
= RS256¶ RSASSA-PKCS-v1_5 using SHA-256
-
josepy.jwa.
RS384
= RS384¶ RSASSA-PKCS-v1_5 using SHA-384
-
josepy.jwa.
RS512
= RS512¶ RSASSA-PKCS-v1_5 using SHA-512
-
josepy.jwa.
PS256
= PS256¶ RSASSA-PSS using SHA-256 and MGF1 with SHA-256
-
josepy.jwa.
PS384
= PS384¶ RSASSA-PSS using SHA-384 and MGF1 with SHA-384
-
josepy.jwa.
PS512
= PS512¶ RSASSA-PSS using SHA-512 and MGF1 with SHA-512
-
josepy.jwa.
ES256
= ES256¶ ECDSA using P-256 and SHA-256
-
josepy.jwa.
ES384
= ES384¶ ECDSA using P-384 and SHA-384
-
josepy.jwa.
ES512
= ES512¶ ECDSA using P-521 and SHA-512