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   w/var/www/html/fyndo/pharma/fyndo/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