403Webshell
Server IP : 80.87.202.40  /  Your IP : 216.73.216.169
Web Server : Apache
System : Linux rospirotorg.ru 5.14.0-539.el9.x86_64 #1 SMP PREEMPT_DYNAMIC Thu Dec 5 22:26:13 UTC 2024 x86_64
User : bitrix ( 600)
PHP Version : 8.2.27
Disable Function : NONE
MySQL : OFF |  cURL : ON |  WGET : ON |  Perl : ON |  Python : OFF |  Sudo : ON |  Pkexec : ON
Directory :  /lib64/python3.11/site-packages/cryptography/hazmat/backends/openssl/__pycache__/

Upload File :
current_dir [ Writeable] document_root [ Writeable]

 

Command :


[ Back ]     

Current File : /lib64/python3.11/site-packages/cryptography/hazmat/backends/openssl/__pycache__/ec.cpython-311.pyc
�

3�qb_+�
�<�ddlZddlmZmZmZddlmZmZddlm	Z	ddl
mZejrddl
mZdejddfd	�Zd
ddefd�Zdd
�Zdd�Zd
ddedejfd�Zd
ddddedefd�Zd
ddddededdf
d�ZGd�dej��ZGd�dej��ZdS)�N)�InvalidSignature�UnsupportedAlgorithm�_Reasons)�_calculate_digest_and_algorithm�_evp_pkey_derive)�
serialization)�ec)�Backend�signature_algorithm�returnc�n�t|tj��stdtj���dS)Nz/Unsupported elliptic curve signature algorithm.)�
isinstancer	�ECDSArr� UNSUPPORTED_PUBLIC_KEY_ALGORITHM)rs �N/usr/lib64/python3.11/site-packages/cryptography/hazmat/backends/openssl/ec.py�_check_signature_algorithmrs>���)�2�8�4�4�
�"�=��5�
�
�	
�
�
��backendr
c�8�|j�|��}|�||jjk��|j�|��}||jjkrtd���|jjs-|j�	|��dkrtd���|j�
|��}|�||jjk��|j�|���d��}|S)Nz@ECDSA keys with explicit parameters are unsupported at this timer�ascii)
�_lib�EC_KEY_get0_group�openssl_assert�_ffi�NULL�EC_GROUP_get_curve_name�	NID_undef�
ValueError�CRYPTOGRAPHY_IS_LIBRESSL�EC_GROUP_get_asn1_flag�
OBJ_nid2sn�string�decode)r�ec_key�group�nid�
curve_name�sns      r�_ec_key_curve_snr)!s
���L�*�*�6�2�2�E����5�G�L�$5�5�6�6�6�
�,�
.�
.�u�
5�
5�C��g�l�$�$�$��N�
�
�	
�
�L�1�
��L�/�/��6�6�!�;�;��N�
�
�	
���(�(��-�-�J����:���):�:�;�;�;�	��	�	�Z�	(�	(�	/�	/��	8�	8�B�
�Irc�P�|j�||jj��dS)z�
    Set the named curve flag on the EC_KEY. This causes OpenSSL to
    serialize EC keys along with their curve OID which makes
    deserialization easier.
    N)r�EC_KEY_set_asn1_flag�OPENSSL_EC_NAMED_CURVE)r�ec_cdatas  r�_mark_asn1_named_ec_curver.?s2���L�%�%��'�,�5�����rc�N�|j�|��}|�||jjk��|j�|��}|�||jjk��|j�||��rtd���dS)Nz;Cannot load an EC public key where the point is at infinity)r�EC_KEY_get0_public_keyrrrr�EC_POINT_is_at_infinityr)rr-�pointr%s    r�_check_key_infinityr3Ks����L�/�/��9�9�E����5�G�L�$5�5�6�6�6��L�*�*�8�4�4�E����5�G�L�$5�5�6�6�6��|�+�+�E�5�9�9�
��I�
�
�	
�
�
rr(c��	tj|��S#t$r.td�|��t
j���wxYw)Nz${} is not a supported elliptic curve)r	�_CURVE_TYPES�KeyErrorr�formatr�UNSUPPORTED_ELLIPTIC_CURVE)rr(s  r�_sn_to_elliptic_curver9Vs^��
���r�"�$�$�$���
�
�
�"�2�9�9�"�=�=��/�
�
�	
�
���s	��8A�private_key�_EllipticCurvePrivateKey�datac���|j�|j��}|�|dk��|j�d|��}|j�dd��}|j�d|t|��|||j��}|�|dk��|j�|��d|d�S)Nrzunsigned char[]zunsigned int[]�)	r�
ECDSA_size�_ec_keyrr�new�
ECDSA_sign�len�buffer)rr:r<�max_size�sigbuf�
siglen_ptr�ress       r�_ecdsa_sig_signrI`s����|�&�&�{�':�;�;�H����8�a�<�(�(�(�
�\�
�
�/��
:�
:�F���!�!�"2�A�6�6�J�
�,�
!�
!�	�4��T���F�J��0C���C����3�!�8�$�$�$��<���v�&�&���A���7�7r�
public_key�_EllipticCurvePublicKey�	signaturec	���|j�d|t|��|t|��|j��}|dkr|���t
�dS)Nrr>)r�ECDSA_verifyrCr@�_consume_errorsr)rrJrLr<rHs     r�_ecdsa_sig_verifyrPosa���,�
#�
#�	�4��T���I�s�9�~�~�z�7I���C��a�x�x����!�!�!����xrc��eZdZdd�Zedejfd���Zedefd���Z	dej
dejdefd	�Z
dejfd
�Zdejfd�Zdejd
ejdejdefd�Zdedejdefd�ZdS)r;rr
c��||_||_||_t||��}t	||��|_t
||��t||��dS�N��_backendr@�	_evp_pkeyr)r9�_curver.r3��selfr�ec_key_cdata�evp_pkeyr(s     r�__init__z!_EllipticCurvePrivateKey.__init__~�]����
�#���!���
�g�|�
4�
4��+�G�R�8�8���!�'�<�8�8�8��G�\�2�2�2�2�2rrc��|jSrS�rW�rYs r�curvez_EllipticCurvePrivateKey.curve��
���{�rc��|jjSrS�ra�key_sizer`s rrez!_EllipticCurvePrivateKey.key_size��
���z�"�"r�	algorithm�peer_public_keyc��|j�||j��stdtj���|jj|jjkrtd���t|j|j	|��S)Nz1This backend does not support the ECDH algorithm.z2peer_public_key and self are not on the same curve)
rU�+elliptic_curve_exchange_algorithm_supportedrarr�UNSUPPORTED_EXCHANGE_ALGORITHM�namerrrV)rYrgrhs   r�exchangez!_EllipticCurvePrivateKey.exchange�s���
�M�E�E��4�:�
�
�	�
'�C��7���
�
� �%����8�8��D���
� ��
�t�~��O�O�Orc��|jj�|j��}|j�||jjjk��|jj�|��}|j�|��}|jj�	|j��}|j�||jjjk��|jj�
||��}|j�|dk��|j�|��}t|j||��S)Nr>)
rUrrr@rrrr�_ec_key_new_by_curve_nidr0�EC_KEY_set_public_key�_ec_cdata_to_evp_pkeyrK)rYr%�	curve_nid�
public_ec_keyr2rHr[s       rrJz#_EllipticCurvePrivateKey.public_key�s���
�"�4�4�T�\�B�B���
�$�$�U�d�m�.@�.E�%E�F�F�F��M�&�>�>�u�E�E�	��
�>�>�y�I�I�
��
�"�9�9�$�,�G�G���
�$�$�U�d�m�.@�.E�%E�F�F�F��m� �6�6�}�e�L�L���
�$�$�S�A�X�.�.�.��=�6�6�}�E�E��&�t�}�m�X�N�N�Nrc���|jj�|j��}|j�|��}tj||���������S)N)�
private_value�public_numbers)	rUr�EC_KEY_get0_private_keyr@�
_bn_to_intr	�EllipticCurvePrivateNumbersrJrv)rY�bnrus   r�private_numbersz(_EllipticCurvePrivateKey.private_numbers�sg��
�]�
�
7�
7���
E�
E���
�0�0��4�4�
��-�'��?�?�,�,�;�;�=�=�
�
�
�	
r�encodingr7�encryption_algorithmc�T�|j�|||||j|j��SrS)rU�_private_key_bytesrVr@)rYr|r7r}s    r�
private_bytesz&_EllipticCurvePrivateKey.private_bytes�s4���}�/�/��� ���N��L�

�
�	
rr<rc�|�t|��t||j��\}}t|j||��SrS)rrrgrIrU)rYr<r�_s    r�signz_EllipticCurvePrivateKey.sign�sE��
	#�#6�7�7�7�1���)�
�
���a��t�}�d�D�9�9�9rN�rr
)�__name__�
__module__�__qualname__r\�propertyr	�
EllipticCurvera�intre�ECDH�EllipticCurvePublicKey�bytesrmrJryr{r�Encoding�
PrivateFormat�KeySerializationEncryptionr��EllipticCurveSignatureAlgorithmr��rrr;r;}sh������3�3�3�3���r�'�����X���#�#�#�#�#��X�#�P���P�35�3L�P�	�P�P�P�P�(O�B�5�O�O�O�O�"
��!?�
�
�
�
�

��(�

��+�

�,�F�	

�

�

�

�

�

�
:��
:� �?�
:�
�	
:�
:�
:�
:�
:�
:rc���eZdZdd�Zedejfd���Zedefd���Z	dej
fd�Zdej
defd	�Zd
ejdej
defd�Zded
edejddfd�ZdS)rKrr
c��||_||_||_t||��}t	||��|_t
||��t||��dSrSrTrXs     rr\z _EllipticCurvePublicKey.__init__�r]rrc��|jSrSr_r`s rraz_EllipticCurvePublicKey.curve�rbrc��|jjSrSrdr`s rrez _EllipticCurvePublicKey.key_size�rfrc��|j�|j��\}}|jj�|j��}|j�||jjjk��|j���5}|jj�	|��}|jj�	|��}||||||��}|j�|dk��|j�
|��}|j�
|��}	ddd��n#1swxYwYtj||	|j
���S)Nr>)�x�yra)rU� _ec_key_determine_group_get_funcr@rr0rrr�_tmp_bn_ctx�
BN_CTX_getrxr	�EllipticCurvePublicNumbersrW)
rY�get_funcr%r2�bn_ctx�bn_x�bn_yrHr�r�s
          rrvz&_EllipticCurvePublicKey.public_numbers�sn���-�H�H��L�
�
���%��
�"�9�9�$�,�G�G���
�$�$�U�d�m�.@�.E�%E�F�F�F�
�]�
&�
&�
(�
(�	/�F��=�%�0�0��8�8�D��=�%�0�0��8�8�D��(�5�%��t�V�<�<�C��M�(�(����2�2�2��
�(�(��.�.�A��
�(�(��.�.�A�	/�	/�	/�	/�	/�	/�	/�	/�	/�	/�	/����	/�	/�	/�	/��,�q�A�T�[�I�I�I�Is�
B D9�9D=�D=r7c	���|tjjur|jjj}n&|tjjusJ�|jjj}|jj�|j	��}|j�
||jjjk��|jj�
|j	��}|j�
||jjjk��|j���5}|jj�||||jjjd|��}|j�
|dk��|jj�d|��}|jj�||||||��}|j�
||k��ddd��n#1swxYwY|jj�|��dd�S)Nrzchar[])r�PublicFormat�CompressedPointrUr�POINT_CONVERSION_COMPRESSED�UncompressedPoint�POINT_CONVERSION_UNCOMPRESSEDrr@rrrr0r��EC_POINT_point2octrArD)	rYr7�
conversionr%r2r��buflen�bufrHs	         r�
_encode_pointz%_EllipticCurvePublicKey._encode_point�s����]�/�?�?�?���+�G�J�J��]�7�I�I�I�I�I���+�I�J��
�"�4�4�T�\�B�B���
�$�$�U�d�m�.@�.E�%E�F�F�F��
�"�9�9�$�,�G�G���
�$�$�U�d�m�.@�.E�%E�F�F�F�
�]�
&�
&�
(�
(�		8�F��]�'�:�:��u�j�$�-�*<�*A�1�f���F�
�M�(�(��!��4�4�4��-�$�(�(��6�:�:�C��-�$�7�7��u�j�#�v�v���C�
�M�(�(��3��7�7�7�		8�		8�		8�		8�		8�		8�		8�		8�		8�		8�		8����		8�		8�		8�		8��}�!�(�(��-�-�a�a�a�0�0s�B4G�G�Gr|c�p�|tjjus&|tjjus|tjjur[|tjjus$|tjjtjjfvrt
d���|�|��S|j�	||||j
d��S)NzKX962 encoding must be used with CompressedPoint or UncompressedPoint format)rr��X962r�r�r�rr�rU�_public_key_bytesrV)rYr|r7s   r�public_bytesz$_EllipticCurvePublicKey.public_bytess���
�
�.�3�3�3���3�C�C�C���3�E�E�E��}�5�:�:�:�f��*�:��*�<�M�?�?�!�/����
�%�%�f�-�-�-��=�2�2��&�$������
rrLr<rNc��t|��t||j��\}}t|j|||��dSrS)rrrgrPrU)rYrLr<rr�s     r�verifyz_EllipticCurvePublicKey.verify0sM��	#�#6�7�7�7�1���)�
�
���a�	�$�-��y�$�?�?�?�?�?rr�)r�r�r�r\r�r	r�rar�rer�rvrr�r�r�r�r�r�r�r�rrrKrK�s>������3�3�3�3���r�'�����X���#�#�#�#�#��X�#�J�� =�J�J�J�J�&1�M�$>�1�5�1�1�1�1�0��(���*��
�	����2@��@��@� �?�	@�

�@�@�@�@�@�@rr�)rr
rN)�typing�cryptography.exceptionsrrr�*cryptography.hazmat.backends.openssl.utilsrr�cryptography.hazmat.primitivesr�)cryptography.hazmat.primitives.asymmetricr	�
TYPE_CHECKING�,cryptography.hazmat.backends.openssl.backendr
r�r�strr)r.r3r�r9r�rIrP�EllipticCurvePrivateKeyr;r�rKr�rr�<module>r�sB��
�
�
�
�����������
��������9�8�8�8�8�8�8�8�8�8�8�8�	��E�D�D�D�D�D�D�
��;�
�	�
�
�
�
��i��C�����<	�	�	�	�
�
�
�
�
�9�
�#�
�"�:J�
�
�
�
�8�
�8�%?�8�GL�8�
�8�8�8�8��
��)�����	�

�����Y:�Y:�Y:�Y:�Y:�r�9�Y:�Y:�Y:�xb@�b@�b@�b@�b@�b�7�b@�b@�b@�b@�b@r

Youez - 2016 - github.com/yon3zu
LinuXploit