
    (ph                    ,   S SK Jr  S SKrS SKJrJr  S SKJr  S SK	J
r
  S SKJr   " S S\R                  S	9r\R                  \R                   R                  5         " S
 S\R                  S	9r\R                  \R                   R"                  5        g)    )annotationsN)UnsupportedAlgorithm_Reasons)openssl)_serialization)Bufferc                      \ rS rSr\S	S j5       r\R                        S
S j5       r\R                  SS j5       r	\R                  SS j5       r
\R                  SS j5       rSrg)X25519PublicKey   c                    SSK Jn  UR                  5       (       d  [        S[        R
                  5      e[        R                  R                  U5      $ Nr   )backendz3X25519 is not supported by this version of OpenSSL.)	,cryptography.hazmat.backends.openssl.backendr   x25519_supportedr   r   UNSUPPORTED_EXCHANGE_ALGORITHMrust_opensslx25519from_public_bytesclsdatar   s      c/var/www/html/venv/lib/python3.13/site-packages/cryptography/hazmat/primitives/asymmetric/x25519.pyr   !X25519PublicKey.from_public_bytes   sF    H''))&E77 
 ""44T::    c                    g)z)
The serialized bytes of the public key.
N )selfencodingformats      r   public_bytesX25519PublicKey.public_bytes       r   c                    g)zH
The raw bytes of the public key.
Equivalent to public_bytes(Raw, Raw).
Nr   r   s    r   public_bytes_raw X25519PublicKey.public_bytes_raw&   r"   r   c                    g)z
Checks equality.
Nr   )r   others     r   __eq__X25519PublicKey.__eq__-   r"   r   c                    gz
Returns a copy.
Nr   r$   s    r   __copy__X25519PublicKey.__copy__3   r"   r   r   N)r   bytesreturnr
   )r   _serialization.Encodingr   z_serialization.PublicFormatr0   r/   r0   r/   )r(   objectr0   boolr0   r
   )__name__
__module____qualname____firstlineno__classmethodr   abcabstractmethodr    r%   r)   r-   __static_attributes__r   r   r   r
   r
      s    	; 	; 	) , 
	  	  	 
 	 r   r
   )	metaclassc                     \ rS rSr\SS j5       r\SS j5       r\R                  SS j5       r	\R                          SS j5       r
\R                  SS j5       r\R                  SS j5       r\R                  SS j5       rS	rg
)X25519PrivateKey=   c                    SSK Jn  UR                  5       (       d  [        S[        R
                  5      e[        R                  R                  5       $ r   )	r   r   r   r   r   r   r   r   generate_key)r   r   s     r   generateX25519PrivateKey.generate>   sD    H''))&E77  ""//11r   c                    SSK Jn  UR                  5       (       d  [        S[        R
                  5      e[        R                  R                  U5      $ r   )	r   r   r   r   r   r   r   r   from_private_bytesr   s      r   rG   #X25519PrivateKey.from_private_bytesI   sF    H''))&E77 
 ""55d;;r   c                    g)z9
Returns the public key associated with this private key
Nr   r$   s    r   
public_keyX25519PrivateKey.public_keyU   r"   r   c                    g)z*
The serialized bytes of the private key.
Nr   )r   r   r   encryption_algorithms       r   private_bytesX25519PrivateKey.private_bytes[   r"   r   c                    g)zZ
The raw bytes of the private key.
Equivalent to private_bytes(Raw, Raw, NoEncryption()).
Nr   r$   s    r   private_bytes_raw"X25519PrivateKey.private_bytes_rawf   r"   r   c                    g)zI
Performs a key exchange operation using the provided peer's public key.
Nr   )r   peer_public_keys     r   exchangeX25519PrivateKey.exchangem   r"   r   c                    gr,   r   r$   s    r   r-   X25519PrivateKey.__copy__s   r"   r   r   N)r0   r@   )r   r   r0   r@   r5   )r   r1   r   z_serialization.PrivateFormatrM   z)_serialization.KeySerializationEncryptionr0   r/   r2   )rT   r
   r0   r/   )r6   r7   r8   r9   r:   rD   rG   r;   r<   rJ   rN   rQ   rU   r-   r=   r   r   r   r@   r@   =   s    2 2 	< 	< 	 
 	) - H	
 
  	  	 
 	 r   r@   )
__future__r   r;   cryptography.exceptionsr   r   "cryptography.hazmat.bindings._rustr   r   cryptography.hazmat.primitivesr   cryptography.utilsr   ABCMetar
   registerr   r@   r   r   r   <module>r`      ss   
 # 
 B F 9 %( (V   ,,<< =: :z   ,-->> ?r   