+
    P(i	                     F     ! R  R4      t  ! R R]4      t ! R R]4      tR# )c                   J   a  ] tR t^t o RtRtRtRtRtRt	R t
R tR tR	tV tR# )
JWSAlgorithmzInterface for JWS algorithm. JWA specification (RFC7518) SHOULD
implement the algorithms for JWS with this base implementation.
NFJWSalgc                    \        4       h)z0Prepare key for signing and verifying signature.NotImplementedError)selfraw_datas   &&a/Users/agent/.openclaw/workspace/venv/lib/python3.14/site-packages/authlib/jose/rfc7515/models.pyprepare_keyJWSAlgorithm.prepare_key   s    !##    c                    \         h)zSign the text msg with a private/sign key.

:param msg: message bytes to be signed
:param key: private key to sign the message
:return: bytes
r   )r	   msgkeys   &&&r   signJWSAlgorithm.sign   s
     "!r   c                    \         h)zVerify the signature of text msg with a public/verify key.

:param msg: message bytes to be signed
:param sig: result signature to be compared
:param key: public key to verify the signature
:return: boolean
r   )r	   r   sigr   s   &&&&r   verifyJWSAlgorithm.verify   s
     "!r    )__name__
__module____qualname____firstlineno____doc__namedescription
deprecatedalgorithm_typealgorithm_locationr   r   r   __static_attributes____classdictcell__)__classdict__s   @r   r   r      s:      DKJN$"" "r   r   c                   F   a a ] tR t^$t oRtV 3R lt]R 4       tRtVt	V ;t
# )	JWSHeadera  Header object for JWS. It combine the protected header and unprotected
header together. JWSHeader itself is a dict of the combined dict. e.g.

    >>> protected = {"alg": "HS256"}
    >>> header = {"kid": "a"}
    >>> jws_header = JWSHeader(protected, header)
    >>> print(jws_header)
    {'alg': 'HS256', 'kid': 'a'}
    >>> jws_header.protected == protected
    >>> jws_header.header == header

:param protected: dict of protected header
:param header: dict of unprotected header
c                   < / pV'       d   VP                  V4       V'       d   VP                  V4       \        SV `	  V4       Wn        W n        R # )N)updatesuper__init__	protectedheader)r	   r,   r-   obj	__class__s   &&& r   r+   JWSHeader.__init__4   s=    JJvJJy!"r   c                v    \        W4      '       d   V# V ! VP                  R 4      VP                  R4      4      # )r,   r-   )
isinstanceget)clsr.   s   &&r   	from_dictJWSHeader.from_dict>   s1    cJ377;'):;;r   )r-   r,   )r   r   r   r   r   r+   classmethodr5   r#   r$   __classcell__r/   r%   s   @@r   r'   r'   $   s(      < < <r   r'   c                   J   a a ] tR t^Et oRtRV 3R llt]R 4       tRtVt	V ;t
# )	JWSObjectz*A dict instance to represent a JWS object.c                N   < \         SV `  VVR 7       Wn        W n        W0n        R# ))r-   payloadN)r*   r+   r-   r=   type)r	   r-   r=   r>   r/   s   &&&&r   r+   JWSObject.__init__H   s,     	 	
 	r   c                :    V P                   R8X  d
   V R,          # R# )z'Alias of ``header`` for JSON typed JWS.jsonr-   N)r>   )r	   s   &r   headersJWSObject.headersQ   s     99>! r   )r-   r=   r>   )compact)r   r   r   r   r   r+   propertyrB   r#   r$   r8   r9   s   @@r   r;   r;   E   s&     4 " " "r   r;   N)r   dictr'   r;   r   r   r   <module>rG      s)    "  "F< <B" "r   