§
    ¥”jÂ/  ã                  óF  — 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d
¦  «        re                     ej        j        ¦  «          G d„ dej        ¬	¦  «        Z eed
¦  «        re                     ej        j        ¦  «          G d„ dej        ¬	¦  «        Z eed
¦  «        re                     ej        j        ¦  «          G d„ dej        ¬	¦  «        Z eed
¦  «        re                     ej        j        ¦  «          G d„ dej        ¬	¦  «        Z eed
¦  «        re                     ej        j        ¦  «          G d„ dej        ¬	¦  «        Z eed
¦  «        r!e                     ej        j        ¦  «         dS 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d„¦   «         Z	ej        dd„¦   «         Z
ej        d d„¦   «         Zej        d!d„¦   «         ZdS )"ÚMLDSA44PublicKeyÚdataÚbytesÚreturnc                ó¨   — ddl m} |                     ¦   «         st          dt          j        ¦  «        ‚t          j                             |¦  «        S ©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©Úclsr   r   s      ú~/var/www/finuniver-perm.ru/html/portfolio/venv/lib/python3.11/site-packages/cryptography/hazmat/primitives/asymmetric/mldsa.pyÚfrom_public_bytesz"MLDSA44PublicKey.from_public_bytes   ó\   € àHÐHÐHÐHÐHÐHà×&Ò&Ñ(Ô(ð 	Ý&Ø=ÝÔ9ñô ð õ
 Ô!×;Ò;¸DÑAÔAÐAó    Úencodingú_serialization.EncodingÚformatú_serialization.PublicFormatc                ó   — dS ©z9
        The serialized bytes of the public key.
        N© ©Úselfr   r    s      r   Úpublic_byteszMLDSA44PublicKey.public_bytes   ó   € € € r   c                ó   — dS )z•
        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_rawz!MLDSA44PublicKey.public_bytes_raw&   r(   r   NÚ	signaturer   ÚcontextúBuffer | NoneÚNonec                ó   — dS ©z'
        Verify the signature.
        Nr$   ©r&   r,   r   r-   s       r   ÚverifyzMLDSA44PublicKey.verify/   r(   r   ÚotherÚobjectÚboolc                ó   — dS ©z"
        Checks equality.
        Nr$   ©r&   r4   s     r   Ú__eq__zMLDSA44PublicKey.__eq__:   r(   r   c                ó   — dS ©z!
        Returns a copy.
        Nr$   r*   s    r   Ú__copy__zMLDSA44PublicKey.__copy__@   r(   r   ÚmemoÚdictc                ó   — dS ©z&
        Returns a deep copy.
        Nr$   ©r&   r>   s     r   Ú__deepcopy__zMLDSA44PublicKey.__deepcopy__F   r(   r   )r   r   r   r
   ©r   r   r    r!   r   r   ©r   r   ©N©r,   r   r   r   r-   r.   r   r/   ©r4   r5   r   r6   ©r   r
   )r>   r?   r   r
   ©Ú__name__Ú
__module__Ú__qualname__Úclassmethodr   ÚabcÚabstractmethodr'   r+   r3   r:   r=   rC   r$   r   r   r
   r
      ó  € € € € € Øð	Bð 	Bð 	Bñ „[ð	Bð 	Ôðð ð ñ Ôðð 	Ôðð ð ñ Ôðð 	Ôð
 "&ð	ð ð ð ñ Ôðð 	Ôðð ð ñ Ôðð
 	Ôðð ð ñ Ôðð
 	Ôðð ð ñ Ôðð ð r   r
   )Ú	metaclassr   c                  ó  — 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d„¦   «         Zej        dd„¦   «         Zej        d d„¦   «         ZdS )!ÚMLDSA44PrivateKeyr   c                ó¦   — ddl m} |                     ¦   «         st          dt          j        ¦  «        ‚t          j                             ¦   «         S r   )	r   r   r   r   r   r   r   r   Úgenerate_mldsa44_key©r   r   s     r   ÚgeneratezMLDSA44PrivateKey.generateR   óZ   € àHÐHÐHÐHÐHÐHà×&Ò&Ñ(Ô(ð 	Ý&Ø=ÝÔ9ñô ð õ
 Ô!×6Ò6Ñ8Ô8Ð8r   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_mldsa44_seed_bytesr   s      r   Úfrom_seed_bytesz!MLDSA44PrivateKey.from_seed_bytes^   ó\   € àHÐHÐHÐHÐHÐHà×&Ò&Ñ(Ô(ð 	Ý&Ø=ÝÔ9ñô ð õ
 Ô!×9Ò9¸$Ñ?Ô?Ð?r   r
   c                ó   — dS )zD
        The MLDSA44PublicKey derived from the private key.
        Nr$   r*   s    r   Ú
public_keyzMLDSA44PrivateKey.public_keyj   r(   r   r   r   r    ú_serialization.PrivateFormatÚencryption_algorithmú)_serialization.KeySerializationEncryptionr   c                ó   — dS ©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    ra   s       r   Úprivate_byteszMLDSA44PrivateKey.private_bytesp   r(   r   c                ó   — dS ©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_rawz#MLDSA44PrivateKey.private_bytes_raw~   r(   r   Nr-   r.   c                ó   — dS ©z!
        Signs the data.
        Nr$   ©r&   r   r-   s      r   ÚsignzMLDSA44PrivateKey.sign‡   r(   r   c                ó   — dS r<   r$   r*   s    r   r=   zMLDSA44PrivateKey.__copy__�   r(   r   r>   r?   c                ó   — dS rA   r$   rB   s     r   rC   zMLDSA44PrivateKey.__deepcopy__“   r(   r   )r   rT   )r   r   r   rT   rI   ©r   r   r    r`   ra   rb   r   r   rE   rF   ©r   r   r-   r.   r   r   )r>   r?   r   rT   ©rK   rL   rM   rN   rX   r\   rO   rP   r_   rf   ri   rm   r=   rC   r$   r   r   rT   rT   Q   ó3  € € € € € Øð	9ð 	9ð 	9ñ „[ð	9ð ð	@ð 	@ð 	@ñ „[ð	@ð 	Ôðð ð ñ Ôðð
 	Ôðð ð ñ Ôðð 	Ôðð ð ñ Ôðð 	Ôðð ð ð ñ Ôðð
 	Ôðð ð ñ Ôðð
 	Ôðð ð ñ Ôðð ð r   rT   c                  óö   — e Zd Zedd„¦   «         Zej        dd	„¦   «         Zej        dd
„¦   «         Zej        	 ddd„¦   «         Z	ej        dd„¦   «         Z
ej        d d„¦   «         Zej        d!d„¦   «         ZdS )"ÚMLDSA65PublicKeyr   r   r   c                ó¨   — ddl m} |                     ¦   «         st          dt          j        ¦  «        ‚t          j                             |¦  «        S ©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   z"MLDSA65PublicKey.from_public_bytesŸ   r   r   r   r   r    r!   c                ó   — dS r#   r$   r%   s      r   r'   zMLDSA65PublicKey.public_bytes«   r(   r   c                ó   — dS )z•
        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+   z!MLDSA65PublicKey.public_bytes_rawµ   r(   r   Nr,   r   r-   r.   r/   c                ó   — dS r1   r$   r2   s       r   r3   zMLDSA65PublicKey.verify¾   r(   r   r4   r5   r6   c                ó   — dS r8   r$   r9   s     r   r:   zMLDSA65PublicKey.__eq__É   r(   r   c                ó   — dS r<   r$   r*   s    r   r=   zMLDSA65PublicKey.__copy__Ï   r(   r   r>   r?   c                ó   — dS rA   r$   rB   s     r   rC   zMLDSA65PublicKey.__deepcopy__Õ   r(   r   )r   r   r   ru   rD   rE   rF   rG   rH   ©r   ru   )r>   r?   r   ru   rJ   r$   r   r   ru   ru   ž   rQ   r   ru   c                  ó  — 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d„¦   «         Zej        dd„¦   «         Zej        d d„¦   «         ZdS )!ÚMLDSA65PrivateKeyr   c                ó¦   — ddl m} |                     ¦   «         st          dt          j        ¦  «        ‚t          j                             ¦   «         S rw   )	r   r   r   r   r   r   r   r   Úgenerate_mldsa65_keyrW   s     r   rX   zMLDSA65PrivateKey.generateá   rY   r   r   r   c                ó¨   — ddl m} |                     ¦   «         st          dt          j        ¦  «        ‚t          j                             |¦  «        S rw   )	r   r   r   r   r   r   r   r   Úfrom_mldsa65_seed_bytesr   s      r   r\   z!MLDSA65PrivateKey.from_seed_bytesí   r]   r   ru   c                ó   — dS )zD
        The MLDSA65PublicKey derived from the private key.
        Nr$   r*   s    r   r_   zMLDSA65PrivateKey.public_keyù   r(   r   r   r   r    r`   ra   rb   r   c                ó   — dS rd   r$   re   s       r   rf   zMLDSA65PrivateKey.private_bytesÿ   r(   r   c                ó   — dS rh   r$   r*   s    r   ri   z#MLDSA65PrivateKey.private_bytes_raw  r(   r   Nr-   r.   c                ó   — dS rk   r$   rl   s      r   rm   zMLDSA65PrivateKey.sign  r(   r   c                ó   — dS r<   r$   r*   s    r   r=   zMLDSA65PrivateKey.__copy__  r(   r   r>   r?   c                ó   — dS rA   r$   rB   s     r   rC   zMLDSA65PrivateKey.__deepcopy__"  r(   r   )r   r�   )r   r   r   r�   r   rp   rE   rF   rq   )r>   r?   r   r�   rr   r$   r   r   r�   r�   à   rs   r   r�   c                  óö   — e Zd Zedd„¦   «         Zej        dd	„¦   «         Zej        dd
„¦   «         Zej        	 ddd„¦   «         Z	ej        dd„¦   «         Z
ej        d d„¦   «         Zej        d!d„¦   «         ZdS )"ÚMLDSA87PublicKeyr   r   r   c                ó¨   — ddl m} |                     ¦   «         st          dt          j        ¦  «        ‚t          j                             |¦  «        S ©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   z"MLDSA87PublicKey.from_public_bytes.  r   r   r   r   r    r!   c                ó   — dS r#   r$   r%   s      r   r'   zMLDSA87PublicKey.public_bytes:  r(   r   c                ó   — dS )z•
        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+   z!MLDSA87PublicKey.public_bytes_rawD  r(   r   Nr,   r   r-   r.   r/   c                ó   — dS r1   r$   r2   s       r   r3   zMLDSA87PublicKey.verifyM  r(   r   r4   r5   r6   c                ó   — dS r8   r$   r9   s     r   r:   zMLDSA87PublicKey.__eq__X  r(   r   c                ó   — dS r<   r$   r*   s    r   r=   zMLDSA87PublicKey.__copy__^  r(   r   r>   r?   c                ó   — dS rA   r$   rB   s     r   rC   zMLDSA87PublicKey.__deepcopy__d  r(   r   )r   r   r   r�   rD   rE   rF   rG   rH   ©r   r�   )r>   r?   r   r�   rJ   r$   r   r   r�   r�   -  rQ   r   r�   c                  ó  — 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d„¦   «         Zej        dd„¦   «         Zej        d d„¦   «         ZdS )!ÚMLDSA87PrivateKeyr   c                ó¦   — ddl m} |                     ¦   «         st          dt          j        ¦  «        ‚t          j                             ¦   «         S r�   )	r   r   r   r   r   r   r   r   Úgenerate_mldsa87_keyrW   s     r   rX   zMLDSA87PrivateKey.generatep  rY   r   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_mldsa87_seed_bytesr   s      r   r\   z!MLDSA87PrivateKey.from_seed_bytes|  r]   r   r�   c                ó   — dS )zD
        The MLDSA87PublicKey derived from the private key.
        Nr$   r*   s    r   r_   zMLDSA87PrivateKey.public_keyˆ  r(   r   r   r   r    r`   ra   rb   r   c                ó   — dS rd   r$   re   s       r   rf   zMLDSA87PrivateKey.private_bytesŽ  r(   r   c                ó   — dS rh   r$   r*   s    r   ri   z#MLDSA87PrivateKey.private_bytes_rawœ  r(   r   Nr-   r.   c                ó   — dS rk   r$   rl   s      r   rm   zMLDSA87PrivateKey.sign¥  r(   r   c                ó   — dS r<   r$   r*   s    r   r=   zMLDSA87PrivateKey.__copy__«  r(   r   r>   r?   c                ó   — dS rA   r$   rB   s     r   rC   zMLDSA87PrivateKey.__deepcopy__±  r(   r   )r   r™   )r   r   r   r™   r—   rp   rE   rF   rq   )r>   r?   r   r™   rr   r$   r   r   r™   r™   o  rs   r   r™   )Ú
__future__r   rO   Úcryptography.exceptionsr   r   Ú"cryptography.hazmat.bindings._rustr   r   Úcryptography.hazmat.primitivesr   Úcryptography.utilsr   ÚABCMetar
   ÚhasattrÚregisterr   rT   ru   r�   r�   r™   r$   r   r   ú<module>r¬      sï  ðð
 #Ð "Ð "Ð "Ð "Ð "à 
€
€
€
à BÐ BÐ BÐ BÐ BÐ BÐ BÐ BØ FÐ FÐ FÐ FÐ FÐ FØ 9Ð 9Ð 9Ð 9Ð 9Ð 9Ø %Ð %Ð %Ð %Ð %Ð %ð;ð ;ð ;ð ;ð ; ¤ð ;ñ ;ô ;ð ;ð| €7ˆ<˜Ñ!Ô!ð CØ×Ò˜lÔ0ÔAÑBÔBÐBðFð Fð Fð Fð F #¤+ð Fñ Fô Fð FðR €7ˆ<˜Ñ!Ô!ð EØ×Ò˜|Ô1ÔCÑDÔDÐDð;ð ;ð ;ð ;ð ; ¤ð ;ñ ;ô ;ð ;ð| €7ˆ<˜Ñ!Ô!ð CØ×Ò˜lÔ0ÔAÑBÔBÐBðFð Fð Fð Fð F #¤+ð Fñ Fô Fð FðR €7ˆ<˜Ñ!Ô!ð EØ×Ò˜|Ô1ÔCÑDÔDÐDð;ð ;ð ;ð ;ð ; ¤ð ;ñ ;ô ;ð ;ð| €7ˆ<˜Ñ!Ô!ð CØ×Ò˜lÔ0ÔAÑBÔBÐBðFð Fð Fð Fð F #¤+ð Fñ Fô Fð FðR €7ˆ<˜Ñ!Ô!ð EØ×Ò˜|Ô1ÔCÑDÔDÐDÐDÐDðEð Er   