
    ~h                     D    d dl mZ ddlmZ ddlmZ  G d de      Zd Zy	)
    )InvalidSignature   )JWSAlgorithm   )OKPKeyc                   &    e Zd ZdZdZd Zd Zd Zy)EdDSAAlgorithmEdDSAz1Edwards-curve Digital Signature Algorithm for JWSc                 ,    t        j                  |      S N)r   
import_key)selfraw_datas     Z/opt/mcp/mcp-sentiment/venv/lib/python3.12/site-packages/authlib/jose/rfc8037/jws_eddsa.pyprepare_keyzEdDSAAlgorithm.prepare_key   s      **    c                 F    |j                  d      }|j                  |      S )Nsign)
get_op_keyr   )r   msgkeyop_keys       r   r   zEdDSAAlgorithm.sign   s    '{{3r   c                 j    |j                  d      }	 |j                  ||       y# t        $ r Y yw xY w)NverifyTF)r   r   r   )r   r   sigr   r   s        r   r   zEdDSAAlgorithm.verify   s8    )	MM#s# 		s   & 	22N)__name__
__module____qualname__namedescriptionr   r   r    r   r   r	   r	      s    DEK+ r   r	   c                 6    | j                  t                      y r   )register_algorithmr	   )clss    r   register_jws_rfc8037r%      s    >+,r   N)cryptography.exceptionsr   rfc7515r   okp_keyr   r	   r%   r!   r   r   <module>r)      s    4 " \ (-r   