§
    .Ph  ã                  ó  — d dl mZ d dlZd dlmZmZ d dlmZ d dl	m
Z
 d dlmZ  G d„ dej        ¬	¦  «        Ze                     ej        j        ¦  «          G d
„ dej        ¬	¦  «        Ze                     ej        j        ¦  «         dS )é    )ÚannotationsN)ÚUnsupportedAlgorithmÚ_Reasons)Úopenssl)Ú_serialization)ÚBufferc                  ó®   — e Zd Zedd„¦   «         Zej        dd	„¦   «         Zej        dd
„¦   «         Zej        dd„¦   «         Z	ej        dd„¦   «         Z
dS )ÚX25519PublicKeyÚdataÚbytesÚreturnc                ó¨   — ddl m} |                     ¦   «         st          dt          j        ¦  «        ‚t          j                             |¦  «        S ©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©Úclsr   r   s      úp/var/www/html/test/jupyter/venv/lib/python3.11/site-packages/cryptography/hazmat/primitives/asymmetric/x25519.pyr   z!X25519PublicKey.from_public_bytes   s\   € àHÐHÐHÐHÐHÐHà×'Ò'Ñ)Ô)ð 	Ý&ØEÝÔ7ñô ð õ
 Ô"×4Ò4°TÑ:Ô:Ð:ó    Úencodingú_serialization.EncodingÚformatú_serialization.PublicFormatc                ó   — dS )z9
        The serialized bytes of the public key.
        N© )Úselfr   r   s      r   Úpublic_byteszX25519PublicKey.public_bytes   ó   € € € r   c                ó   — dS )z`
        The raw bytes of the public key.
        Equivalent to public_bytes(Raw, Raw).
        Nr    ©r!   s    r   Úpublic_bytes_rawz X25519PublicKey.public_bytes_raw&   r#   r   ÚotherÚobjectÚboolc                ó   — dS )z"
        Checks equality.
        Nr    )r!   r'   s     r   Ú__eq__zX25519PublicKey.__eq__-   r#   r   c                ó   — dS ©z!
        Returns a copy.
        Nr    r%   s    r   Ú__copy__zX25519PublicKey.__copy__3   r#   r   N)r   r   r   r
   )r   r   r   r   r   r   ©r   r   )r'   r(   r   r)   ©r   r
   )Ú__name__Ú
__module__Ú__qualname__Úclassmethodr   ÚabcÚabstractmethodr"   r&   r+   r.   r    r   r   r
   r
      sÂ   € € € € € Øð	;ð 	;ð 	;ñ „[ð	;ð 	Ôðð ð ñ Ôðð 	Ôðð ð ñ Ôðð 	Ôðð ð ñ Ôðð
 	Ôðð ð ñ Ôðð ð r   r
   )Ú	metaclassc                  óè   — e Zd Zedd„¦   «         Zedd„¦   «         Zej        dd„¦   «         Zej        dd„¦   «         Z	ej        dd„¦   «         Z
ej        dd„¦   «         Zej        dd„¦   «         ZdS )ÚX25519PrivateKeyr   c                ó¦   — ddl m} |                     ¦   «         st          dt          j        ¦  «        ‚t          j                             ¦   «         S r   )	r   r   r   r   r   r   r   r   Úgenerate_key)r   r   s     r   ÚgeneratezX25519PrivateKey.generate>   sZ   € àHÐHÐHÐHÐHÐHà×'Ò'Ñ)Ô)ð 	Ý&ØEÝÔ7ñô ð õ Ô"×/Ò/Ñ1Ô1Ð1r   r   r   c                ó¨   — ddl m} |                     ¦   «         st          dt          j        ¦  «        ‚t          j                             |¦  «        S r   )	r   r   r   r   r   r   r   r   Úfrom_private_bytesr   s      r   r>   z#X25519PrivateKey.from_private_bytesI   s\   € àHÐHÐHÐHÐHÐHà×'Ò'Ñ)Ô)ð 	Ý&ØEÝÔ7ñô ð õ
 Ô"×5Ò5°dÑ;Ô;Ð;r   r
   c                ó   — dS )zI
        Returns the public key associated with this private key
        Nr    r%   s    r   Ú
public_keyzX25519PrivateKey.public_keyU   r#   r   r   r   r   ú_serialization.PrivateFormatÚencryption_algorithmú)_serialization.KeySerializationEncryptionr   c                ó   — dS )z:
        The serialized bytes of the private key.
        Nr    )r!   r   r   rB   s       r   Úprivate_byteszX25519PrivateKey.private_bytes[   r#   r   c                ó   — dS )zr
        The raw bytes of the private key.
        Equivalent to private_bytes(Raw, Raw, NoEncryption()).
        Nr    r%   s    r   Úprivate_bytes_rawz"X25519PrivateKey.private_bytes_rawf   r#   r   Úpeer_public_keyc                ó   — dS )zY
        Performs a key exchange operation using the provided peer's public key.
        Nr    )r!   rH   s     r   ÚexchangezX25519PrivateKey.exchangem   r#   r   c                ó   — dS r-   r    r%   s    r   r.   zX25519PrivateKey.__copy__s   r#   r   N)r   r9   )r   r   r   r9   r0   )r   r   r   rA   rB   rC   r   r   r/   )rH   r
   r   r   )r1   r2   r3   r4   r<   r>   r5   r6   r@   rE   rG   rJ   r.   r    r   r   r9   r9   =   s  € € € € € Øð2ð 2ð 2ñ „[ð2ð ð	<ð 	<ð 	<ñ „[ð	<ð 	Ôðð ð ñ Ôðð
 	Ôðð ð ñ Ôðð 	Ôðð ð ñ Ôðð 	Ôðð ð ñ Ôðð
 	Ôðð ð ñ Ôðð ð r   r9   )Ú
__future__r   r5   Úcryptography.exceptionsr   r   Ú"cryptography.hazmat.bindings._rustr   r   Úcryptography.hazmat.primitivesr   Úcryptography.utilsr   ÚABCMetar
   Úregisterr   r9   r    r   r   ú<module>rS      s  ðð
 #Ð "Ð "Ð "Ð "Ð "à 
€
€
€
à BÐ BÐ BÐ BÐ BÐ BÐ BÐ BØ FÐ FÐ FÐ FÐ FÐ FØ 9Ð 9Ð 9Ð 9Ð 9Ð 9Ø %Ð %Ð %Ð %Ð %Ð %ð(ð (ð (ð (ð ( ¤ð (ñ (ô (ð (ðV × Ò ˜Ô,Ô<Ñ =Ô =Ð =ð:ð :ð :ð :ð : ¤ð :ñ :ô :ð :ðz × Ò ˜,Ô-Ô>Ñ ?Ô ?Ð ?Ð ?Ð ?r   