reshut.jwk

class JwkUsageType(*values)

Bases: StrEnum

JWK Use

SIG = 'sig'
ENC = 'enc'
class JwkKeyType(*values)

Bases: StrEnum

JWK Key Type

RSA = 'RSA'
EC = 'EC'
OKP = 'OKP'
OCT = 'oct'
class JwkCurveType(*values)

Bases: StrEnum

P256 = 'P-256'
P384 = 'P-384'
P521 = 'P-521'
ED25519 = 'Ed25519'
ED448 = 'Ed448'
class RsaJwk

Bases: _Jwk

kty: Literal[JwkKeyType.RSA]
n: str
e: str
d: str
p: str
q: str
dp: str
dq: str
qi: str
kid: str
use: JwkUsageType
alg: Algorithm
class EcJwk

Bases: _Jwk

kty: Literal[JwkKeyType.EC]
crv: Literal[JwkCurveType.P256, JwkCurveType.P384, JwkCurveType.P521]
x: str
y: str
d: str
kid: str
use: JwkUsageType
alg: Algorithm
class OkpJwk

Bases: _Jwk

kty: Literal[JwkKeyType.OKP]
crv: Literal[JwkCurveType.ED25519, JwkCurveType.ED448]
x: str
d: str
kid: str
use: JwkUsageType
alg: Algorithm
class OctetJwk

Bases: _Jwk

kty: Literal[JwkKeyType.OCT]
k: str
kid: str
use: JwkUsageType
alg: Algorithm
from_private_key(algorithm, key, usage=JwkUsageType.SIG, key_id=None)
Return type:

Union[RsaJwk, EcJwk, OkpJwk, OctetJwk]

to_private_key(jwk)
Return type:

RSAPrivateKey | EllipticCurvePrivateKey | Ed25519PrivateKey | Ed448PrivateKey

from_public_key(algorithm, key, usage=JwkUsageType.SIG, key_id=None)
Return type:

Union[RsaJwk, EcJwk, OkpJwk, OctetJwk]

to_public_key(jwk)
Return type:

RSAPublicKey | EllipticCurvePublicKey | Ed25519PublicKey | Ed448PublicKey

from_symmetric_key(algorithm, key, usage=JwkUsageType.SIG, key_id=None)
Return type:

OctetJwk

to_symmetric_key(jwk)
Return type:

bytes