
    vg\j5                       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\" \S
5      (       a%  \R!                  \R"                  R                  5         " S S\R                  S	9r\" \S
5      (       a%  \R!                  \R"                  R$                  5         " S S\R                  S	9r\" \S
5      (       a%  \R!                  \R"                  R&                  5         " S S\R                  S	9r\" \S
5      (       a%  \R!                  \R"                  R(                  5         " S S\R                  S	9r\" \S
5      (       a%  \R!                  \R"                  R*                  5         " S S\R                  S	9r\" \S
5      (       a&  \R!                  \R"                  R,                  5        gg)    )annotationsN)UnsupportedAlgorithm_Reasons)openssl)_serialization)Bufferc                  l   \ 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S j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)MLDSA44PublicKey   c                    SSK Jn  UR                  5       (       d  [        S[        R
                  5      e[        R                  R                  U5      $ Nr   backendz+ML-DSA-44 is not supported by this backend.)	,cryptography.hazmat.backends.openssl.backendr   mldsa_supportedr   r    UNSUPPORTED_PUBLIC_KEY_ALGORITHMrust_opensslmldsafrom_mldsa44_public_bytesclsdatar   s      j/home/edenadmin/noVNC/venv/lib/python3.13/site-packages/cryptography/hazmat/primitives/asymmetric/mldsa.pyfrom_public_bytes"MLDSA44PublicKey.from_public_bytes   F    H&&((&=99 
 !!;;DAA    c                    gz)
The serialized bytes of the public key.
N selfencodingformats      r   public_bytesMLDSA44PublicKey.public_bytes       r   c                    g)zu
The raw bytes of the public key.
Equivalent to public_bytes(Raw, Raw).

The public key is 1,312 bytes for MLDSA-44.
Nr    r"   s    r   public_bytes_raw!MLDSA44PublicKey.public_bytes_raw&   r'   r   Nc                    gz
Verify the signature.
Nr    r"   	signaturer   contexts       r   verifyMLDSA44PublicKey.verify/   r'   r   c                    gz\
Verify the signature over a precomputed mu (message representative).

mu must be 64 bytes.
Nr    r"   r/   mus      r   	verify_muMLDSA44PublicKey.verify_mu:   r'   r   c                    gz
Checks equality.
Nr    r"   others     r   __eq__MLDSA44PublicKey.__eq__F   r'   r   c                    gz
Returns a copy.
Nr    r)   s    r   __copy__MLDSA44PublicKey.__copy__L   r'   r   c                    gz
Returns a deep copy.
Nr    r"   memos     r   __deepcopy__MLDSA44PublicKey.__deepcopy__R   r'   r   r    )r   bytesreturnr
   r#   _serialization.Encodingr$   z_serialization.PublicFormatrJ   rI   rJ   rI   Nr/   r   r   r   r0   Buffer | NonerJ   Noner/   r   r6   r   rJ   rQ   r<   objectrJ   boolrJ   r
   )rF   dictrJ   r
   __name__
__module____qualname____firstlineno__classmethodr   abcabstractmethodr%   r*   r1   r7   r=   rA   rG   __static_attributes__r    r   r   r
   r
      /   	B 	B 	) , 
	  	  	
 "&	  	
 
  			 	 
		 	 	 
 	 
 	 r   r
   )	metaclassr   c                  h   \ 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S jj5       r\R                  SS	 j5       r\R                  SS
 j5       r\R                  SS j5       rSrg)MLDSA44PrivateKey]   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_mldsa44_keyr   r   s     r   generateMLDSA44PrivateKey.generate^   D    H&&((&=99 
 !!6688r   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_mldsa44_seed_bytesr   s      r   from_seed_bytes!MLDSA44PrivateKey.from_seed_bytesj   F    H&&((&=99 
 !!99$??r   c                    g)z4
The MLDSA44PublicKey derived from the private key.
Nr    r)   s    r   
public_keyMLDSA44PrivateKey.public_keyv   r'   r   c                    gz
The serialized bytes of the private key.

This method only returns the serialization of the seed form of the
private key, never the expanded one.
Nr    r"   r#   r$   encryption_algorithms       r   private_bytesMLDSA44PrivateKey.private_bytes|   r'   r   c                    gz
The raw bytes of the private key.
Equivalent to private_bytes(Raw, Raw, NoEncryption()).

This method only returns the seed form of the private key (32 bytes).
Nr    r)   s    r   private_bytes_raw#MLDSA44PrivateKey.private_bytes_raw   r'   r   Nc                    gz
Signs the data.
Nr    r"   r   r0   s      r   signMLDSA44PrivateKey.sign   r'   r   c                    gz
Signs a precomputed mu (message representative).

mu must be 64 bytes and already incorporates the context, so no
context is accepted here.
Nr    r"   r6   s     r   sign_muMLDSA44PrivateKey.sign_mu   r'   r   c                    gr@   r    r)   s    r   rA   MLDSA44PrivateKey.__copy__   r'   r   c                    grD   r    rE   s     r   rG   MLDSA44PrivateKey.__deepcopy__   r'   r   r    )rJ   rd   )r   r   rJ   rd   rV   r#   rL   r$   z_serialization.PrivateFormatrw   z)_serialization.KeySerializationEncryptionrJ   rI   rM   rN   r   r   r0   rP   rJ   rI   r6   r   rJ   rI   )rF   rW   rJ   rd   rY   rZ   r[   r\   r]   ri   rn   r^   r_   rr   rx   r|   r   r   rA   rG   r`   r    r   r   rd   rd   ]      	9 	9 	@ 	@ 	 
 	) - H	
 
  	  	 
 	  	 
 	 r   rd   c                  l   \ 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S j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)MLDSA65PublicKey   c                    SSK Jn  UR                  5       (       d  [        S[        R
                  5      e[        R                  R                  U5      $ Nr   r   z+ML-DSA-65 is not supported by this backend.)	r   r   r   r   r   r   r   r   from_mldsa65_public_bytesr   s      r   r   "MLDSA65PublicKey.from_public_bytes   r   r   c                    gr   r    r!   s      r   r%   MLDSA65PublicKey.public_bytes   r'   r   c                    g)zu
The raw bytes of the public key.
Equivalent to public_bytes(Raw, Raw).

The public key is 1,952 bytes for MLDSA-65.
Nr    r)   s    r   r*   !MLDSA65PublicKey.public_bytes_raw   r'   r   Nc                    gr-   r    r.   s       r   r1   MLDSA65PublicKey.verify   r'   r   c                    gr4   r    r5   s      r   r7   MLDSA65PublicKey.verify_mu   r'   r   c                    gr:   r    r;   s     r   r=   MLDSA65PublicKey.__eq__   r'   r   c                    gr@   r    r)   s    r   rA   MLDSA65PublicKey.__copy__   r'   r   c                    grD   r    rE   s     r   rG   MLDSA65PublicKey.__deepcopy__   r'   r   r    )r   rI   rJ   r   rK   rM   rN   rO   rR   rS   rJ   r   )rF   rW   rJ   r   rX   r    r   r   r   r      ra   r   r   c                  h   \ 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S jj5       r\R                  SS	 j5       r\R                  SS
 j5       r\R                  SS j5       rSrg)MLDSA65PrivateKeyi  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_mldsa65_keyrh   s     r   ri   MLDSA65PrivateKey.generate  rk   r   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_mldsa65_seed_bytesr   s      r   rn   !MLDSA65PrivateKey.from_seed_bytes  rp   r   c                    g)z4
The MLDSA65PublicKey derived from the private key.
Nr    r)   s    r   rr   MLDSA65PrivateKey.public_key  r'   r   c                    gru   r    rv   s       r   rx   MLDSA65PrivateKey.private_bytes   r'   r   c                    gr{   r    r)   s    r   r|   #MLDSA65PrivateKey.private_bytes_raw.  r'   r   Nc                    gr   r    r   s      r   r   MLDSA65PrivateKey.sign7  r'   r   c                    gr   r    r   s     r   r   MLDSA65PrivateKey.sign_mu=  r'   r   c                    gr@   r    r)   s    r   rA   MLDSA65PrivateKey.__copy__F  r'   r   c                    grD   r    rE   s     r   rG   MLDSA65PrivateKey.__deepcopy__L  r'   r   r    )rJ   r   )r   r   rJ   r   r   r   rM   rN   r   r   )rF   rW   rJ   r   r   r    r   r   r   r     r   r   r   c                  l   \ 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S j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)MLDSA87PublicKeyiW  c                    SSK Jn  UR                  5       (       d  [        S[        R
                  5      e[        R                  R                  U5      $ Nr   r   z+ML-DSA-87 is not supported by this backend.)	r   r   r   r   r   r   r   r   from_mldsa87_public_bytesr   s      r   r   "MLDSA87PublicKey.from_public_bytesX  r   r   c                    gr   r    r!   s      r   r%   MLDSA87PublicKey.public_bytesd  r'   r   c                    g)zu
The raw bytes of the public key.
Equivalent to public_bytes(Raw, Raw).

The public key is 2,592 bytes for MLDSA-87.
Nr    r)   s    r   r*   !MLDSA87PublicKey.public_bytes_rawn  r'   r   Nc                    gr-   r    r.   s       r   r1   MLDSA87PublicKey.verifyw  r'   r   c                    gr4   r    r5   s      r   r7   MLDSA87PublicKey.verify_mu  r'   r   c                    gr:   r    r;   s     r   r=   MLDSA87PublicKey.__eq__  r'   r   c                    gr@   r    r)   s    r   rA   MLDSA87PublicKey.__copy__  r'   r   c                    grD   r    rE   s     r   rG   MLDSA87PublicKey.__deepcopy__  r'   r   r    )r   rI   rJ   r   rK   rM   rN   rO   rR   rS   rJ   r   )rF   rW   rJ   r   rX   r    r   r   r   r   W  ra   r   r   c                  h   \ 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S jj5       r\R                  SS	 j5       r\R                  SS
 j5       r\R                  SS j5       rSrg)MLDSA87PrivateKeyi  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_mldsa87_keyrh   s     r   ri   MLDSA87PrivateKey.generate  rk   r   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_mldsa87_seed_bytesr   s      r   rn   !MLDSA87PrivateKey.from_seed_bytes  rp   r   c                    g)z4
The MLDSA87PublicKey derived from the private key.
Nr    r)   s    r   rr   MLDSA87PrivateKey.public_key  r'   r   c                    gru   r    rv   s       r   rx   MLDSA87PrivateKey.private_bytes  r'   r   c                    gr{   r    r)   s    r   r|   #MLDSA87PrivateKey.private_bytes_raw  r'   r   Nc                    gr   r    r   s      r   r   MLDSA87PrivateKey.sign  r'   r   c                    gr   r    r   s     r   r   MLDSA87PrivateKey.sign_mu  r'   r   c                    gr@   r    r)   s    r   rA   MLDSA87PrivateKey.__copy__  r'   r   c                    grD   r    rE   s     r   rG   MLDSA87PrivateKey.__deepcopy__  r'   r   r    )rJ   r   )r   r   rJ   r   r   r   rM   rN   r   r   )rF   rW   rJ   r   r   r    r   r   r   r     r   r   r   )
__future__r   r^   cryptography.exceptionsr   r   "cryptography.hazmat.bindings._rustr   r   cryptography.hazmat.primitivesr   cryptography.utilsr   ABCMetar
   hasattrregisterr   rd   r   r   r   r   r    r   r   <module>r      s  
 # 
 B F 9 %G GT <!!l00AABO#++ Od <!!|11CCDG GT <!!l00AABO#++ Od <!!|11CCDG GT <!!l00AABO#++ Od <!!|11CCD "r   