o
    àý°j¶  ã                   @  s€   d dl mZ d dlZd dlmZ d dlmZ d dlm	Z	 G dd„ dej
d�Ze ejj¡ G d	d
„ d
ej
d�Ze ejj¡ dS )é    )ÚannotationsN)Úopenssl)Ú_serialization)ÚBufferc                   @  sz   e Zd Zeddd„ƒZejd d
d„ƒZejd!dd„ƒZejd"dd„ƒZ	ejd#dd„ƒZ
ejd$dd„ƒZejd%dd„ƒZdS )&ÚEd25519PublicKeyÚdataÚbytesÚreturnc                 C  ó   t j |¡S ©N)Úrust_opensslÚed25519Úfrom_public_bytes©Úclsr   © r   ú¤/root/aizidognhua/tmp/workspace/projects/ec89d86c-575f-41c9-af57-ac45cbdbf775/venv/lib/python3.10/site-packages/cryptography/hazmat/primitives/asymmetric/ed25519.pyr      ó   z"Ed25519PublicKey.from_public_bytesÚencodingú_serialization.EncodingÚformatú_serialization.PublicFormatc                 C  ó   dS )z9
        The serialized bytes of the public key.
        Nr   )Úselfr   r   r   r   r   Úpublic_bytes   ó    zEd25519PublicKey.public_bytesc                 C  r   )z`
        The raw bytes of the public key.
        Equivalent to public_bytes(Raw, Raw).
        Nr   ©r   r   r   r   Úpublic_bytes_raw   r   z!Ed25519PublicKey.public_bytes_rawÚ	signaturer   ÚNonec                 C  r   )z'
        Verify the signature.
        Nr   )r   r   r   r   r   r   Úverify$   r   zEd25519PublicKey.verifyÚotherÚobjectÚboolc                 C  r   )z"
        Checks equality.
        Nr   )r   r!   r   r   r   Ú__eq__*   r   zEd25519PublicKey.__eq__c                 C  r   ©z!
        Returns a copy.
        Nr   r   r   r   r   Ú__copy__0   r   zEd25519PublicKey.__copy__ÚmemoÚdictc                 C  r   ©z&
        Returns a deep copy.
        Nr   ©r   r'   r   r   r   Ú__deepcopy__6   r   zEd25519PublicKey.__deepcopy__N)r   r   r	   r   )r   r   r   r   r	   r   ©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   r   r      s    	r   )Ú	metaclassc                   @  sˆ   e Zd Zeddd„ƒZed dd„ƒZejd!d	d
„ƒZejd"dd„ƒZ	ejd#dd„ƒZ
ejd$dd„ƒZejddd„ƒZejd%dd„ƒZdS )&ÚEd25519PrivateKeyr	   c                 C  s
   t j ¡ S r   )r   r   Úgenerate_key)r   r   r   r   ÚgenerateA   s   
zEd25519PrivateKey.generater   r   c                 C  r
   r   )r   r   Úfrom_private_bytesr   r   r   r   r8   E   r   z$Ed25519PrivateKey.from_private_bytesr   c                 C  r   )zD
        The Ed25519PublicKey derived from the private key.
        Nr   r   r   r   r   Ú
public_keyI   r   zEd25519PrivateKey.public_keyr   r   r   ú_serialization.PrivateFormatÚencryption_algorithmú)_serialization.KeySerializationEncryptionr   c                 C  r   )z:
        The serialized bytes of the private key.
        Nr   )r   r   r   r;   r   r   r   Úprivate_bytesO   r   zEd25519PrivateKey.private_bytesc                 C  r   )zr
        The raw bytes of the private key.
        Equivalent to private_bytes(Raw, Raw, NoEncryption()).
        Nr   r   r   r   r   Úprivate_bytes_rawZ   r   z#Ed25519PrivateKey.private_bytes_rawc                 C  r   )z!
        Signs the data.
        Nr   )r   r   r   r   r   Úsigna   r   zEd25519PrivateKey.signc                 C  r   r%   r   r   r   r   r   r&   g   r   zEd25519PrivateKey.__copy__r'   r(   c                 C  r   r)   r   r*   r   r   r   r+   m   r   zEd25519PrivateKey.__deepcopy__N)r	   r5   )r   r   r	   r5   r-   )r   r   r   r:   r;   r<   r	   r   r,   )r   r   r	   r   )r'   r(   r	   r5   )r.   r/   r0   r1   r7   r8   r2   r3   r9   r=   r>   r?   r&   r+   r   r   r   r   r5   @   s"    
r5   )Ú
__future__r   r2   Ú"cryptography.hazmat.bindings._rustr   r   Úcryptography.hazmat.primitivesr   Úcryptography.utilsr   ÚABCMetar   Úregisterr   r5   r   r   r   r   Ú<module>   s   /4