403Webshell
Server IP : 217.160.0.135  /  Your IP : 216.73.217.85
Web Server : Apache
System : Linux www 6.18.52-i1-ampere #1203 SMP Mon Sep 14 18:29:59 CEST 2026 aarch64
User : sws1074145052 ( 1074145052)
PHP Version : 8.3.32
Disable Function : NONE
MySQL : OFF  |  cURL : ON  |  WGET : ON  |  Perl : ON  |  Python : OFF  |  Sudo : OFF  |  Pkexec : OFF
Directory :  /lib/python3/dist-packages/Cryptodome/SelfTest/PublicKey/__pycache__/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Command :


[ Back ]     

Current File : /lib/python3/dist-packages/Cryptodome/SelfTest/PublicKey/__pycache__/test_ECC.cpython-311.pyc
�

8�tc�{�	�4�ddlZddlZddlmZddlmZddlmZddlm	Z	m
Z
mZddlm
Z
Gd�dej��ZGd	�d
ej��ZGd�dej��ZGd
�dej��ZGd�dej��Zedddd�d�d�d���pgZeD]-Zejejejfd�Zeedejze���.Gd�dej��Zedddd�d�d �d���pgZeD]-Zejejejfd!�Zeedejze���.Gd"�d#ej��Zedd$d%d&�d'�d(�d���pgZeD]-Zejejejfd)�Zeedejze���.Gd*�d+ej��ZGd,�d-ej��ZGd.�d/ej��Z Gd0�d1ej��Z!Gd2�d3ej��Z"Gd4�d5ej��Z#ifd6�Z$e%d7krd8�Z&ej'd9�:��dSdS);�N)�list_test_cases)�load_test_vectors)�ECC)�EccPoint�_curves�EccKey)�Integerc��eZdZd�Zd�ZdS)�TestEccPointc�4�tjd���j}tjd���j}	||zJ�#t$r}dt	|��vsJ�Yd}~nd}~wwxYw	||z
}J�#t$r}dt	|��vsJ�Yd}~dSd}~wwxYw)N�P-256��curve�P-384Fznot on the same curve)r�generate�pointQ�
ValueError�str)�self�p1�p2�es    �H/usr/lib/python3/dist-packages/Cryptodome/SelfTest/PublicKey/test_ECC.py�test_mixzTestEccPoint.test_mix+s���
�\��
(�
(�
(�
/��
�\��
(�
(�
(�
/��	5���G�G��M���	5�	5�	5�*�c�!�f�f�4�4�4�4�4�4�4�4�4�����	5����	5��"�H�B��M���	5�	5�	5�*�c�!�f�f�4�4�4�4�4�4�4�4�4�4�����	5���s-�=�
A$�A�A$�(A/�/
B�9B�Bc�|�tjdddd���}|�t|��d��dS)Nr
l}	&_ni9�
��]}!�5$7�P�%^-�&l-
�k%j��&�*/n�;[j�H�**�7
�i/v{-l]W]��[@i��MmlQ�;i?XU�,�p)r�d�point_x�point_yaEccKey(curve='NIST P-256', point_x=20573031766139722500939782666697015100983491952082159880539639074939225934381, point_y=108863130203210779921520632367477406025152638284581252625277850513266505911389, d=75467964919405407085864614198393977741148485328036093939970922195112333446269))r�	construct�assertEqual�repr)rrs  r�	test_reprzTestEccPoint.test_repr<s]��
�]��j�#p�#q�s�s�s��	
����b���$@�	A�	A�	A�	A�	A�N)�__name__�
__module__�__qualname__rr"�r#rrr)s7������5�5�5�"A�A�A�A�Ar#rc�x�eZdZdZedd��Zedd��Zd�Zd�Zd�Z	d	�Z
d
�Zd�Zd�Z
d
�Zd�ZdS)�TestEccPoint_NIST_P256zOTests defined in section 4.3 of https://www.nsa.gov/ia/_files/nist-routines.pdfl���,�;zQC�l�:a*N<x�n.h�&#/_"$^lV"�`�,�1kW�y��pY�LG+-
�pJ�|?W�@lk�k�dg\[W9r*9.B,LI�5/f�:hcX�UlCdc'�2�gs1�E
��+�.��-'�a!Tc��tdd��}|�|j��|�||j��dS�Nr�r�set�pointSr �r�pointWs  r�test_setzTestEccPoint_NIST_P256.test_setO�A���!�Q�����
�
�4�;����������-�-�-�-�-r#c��|j���}|�||j��|�|j��|�||j��|�|j|j��dS�N�r.�copyr r-�pointT�assertNotEqualr/s  r�	test_copyz TestEccPoint_NIST_P256.test_copyT�y����!�!�#�#��������-�-�-��
�
�4�;����������-�-�-����D�K���5�5�5�5�5r#c��|j}|j|z}|�||j�����dSr4�r.r �point_at_infinity�r�negS�sums   r�test_negatez"TestEccPoint_NIST_P256.test_negate[�A����|���k�D� ������d�k�;�;�=�=�>�>�>�>�>r#c��d}d}|j|jz}|�|j|��|�|j|��|���}|j|z}|�||j��||jz}|�||j��||z}|�||��dS�Nl~�(iM�)E=�kdHpit3&�EpmR
��rldB�hE@	hF�TVL��
�.�E
$u�d�K].X
�r.r7r �x�yr=�r�pointRx�pointRy�pointR�pais     r�
test_additionz$TestEccPoint_NIST_P256.test_addition`s���T��T����t�{�*�������7�+�+�+������7�+�+�+��&�&�(�(����s�"��������-�-�-��t�{�"��������-�-�-��s��������%�%�%�%�%r#c�*�d}d}|j���}||jz
}|�|j|��|�|j|��|���}|j���}||z
}|�||j��|���}||jz
}|�||j��|���}||z
}|�||��dSrD�r.r6r7r rFrGr=rHs     r�test_inplace_additionz,TestEccPoint_NIST_P256.test_inplace_additionv�	��T��T����!�!�#�#���$�+��������7�+�+�+������7�+�+�+��&�&�(�(����!�!�#�#���#�
��������-�-�-��������$�+���������-�-�-��������#�
�������%�%�%�%�%r#c�*�d}d}|j���}|���|�|j|��|�|j|��|j���}|���}|���|�||��|j���}||z
}|�|j|��|�|j|��dS)Nl�'�6�?0T��.�<6�3��GwG:�]�Hsivl�P�6e�#` �{yO8^g^w{9l�J�@�z�r.r6�doubler rFrGr=rHs     r�
test_doublingz$TestEccPoint_NIST_P256.test_doubling�s���T��T����!�!�#�#���
�
���������7�+�+�+������7�+�+�+��k�+�+�-�-���������
�
���������%�%�%���!�!�#�#���&��������7�+�+�+������7�+�+�+�+�+r#c�\��d}d}d}�j|z}��|j|����|j|���j���}�jdz}��||����t�fd���|�jz}��|j|����|j|��t|���jz}��|j|����|j|��dS)N���_,)�N�$�c�
hKf-5lk<X�k�#El? ��nDf�>1x�0���6�6�OPK�F�Ql�A�TU*�-sX)>~|N�\}T�9�%�D�bu4�urc����jdzS�N����r.�rs�r�<lambda>z=TestEccPoint_NIST_P256.test_scalar_multiply.<locals>.<lambda>�����d�k�B�.>�r#)r.r rFrGr=�assertRaisesrr	�rrrIrJrKrLs`     r�test_scalar_multiplyz+TestEccPoint_NIST_P256.test_scalar_multiply�s*���N��T��T����q��������7�+�+�+������7�+�+�+��k�+�+�-�-����q��������%�%�%�	
���*�&>�&>�&>�&>�?�?�?��T�[��������7�+�+�+������7�+�+�+�����d�k�)�������7�+�+�+������7�+�+�+�+�+r#c��d}d}d}d}|j|z}|j|z|j|zz}|�|j|��|�|j|��dS)NrWl�T��:X�uMKt^5~�{�"/�T�3G1Sl�v�ba�B�>Y5O�g�E���I# �d3ZgXluR�`/�.�
���5E�S�6���p* Pr�r.r7r rFrG�rrrrIrJ�trKs       r�test_joing_scalar_multiplyz1TestEccPoint_NIST_P256.test_joing_scalar_multiply�sm��N��N��T��T���K�!�O����q��4�;��?�2�������7�+�+�+������7�+�+�+�+�+r#c��|�|j���d��|�|j���d��dS)N�� �r r.�size_in_bits�
size_in_bytesr\s r�
test_sizesz!TestEccPoint_NIST_P256.test_sizes��P�������1�1�3�3�S�9�9�9������2�2�4�4�b�9�9�9�9�9r#N�r$r%r&�__doc__rr.r7r1r9rArMrPrUrarfrmr'r#rr)r)Ds�������Y�Y�
�X�R�R�T�T�F��X�R�R�T�T�F�.�.�.�
6�6�6�?�?�?�
&�&�&�,&�&�&�4,�,�,�*,�,�,�6
,�
,�
,�:�:�:�:�:r#r)c�|�eZdZdZeddd��Zeddd��Zd�Zd�Zd	�Z	d
�Z
d�Zd�Zd
�Z
d�Zd�ZdS)�TestEccPoint_NIST_P384zOTests defined in section 4.4 of https://www.nsa.gov/ia/_files/nist-routines.pdflK�<�L���3�Y�U�H[�Am]8$_-'�DM.�/��8�;V~Ho
\"�lE^Pj�WvM�0M7b�KL�8�4\mn&J

"[�!�66p#y|@�z~W�~��p384lQ�'�"�f4�Oc�E-X�J�9i�ja>:��}�@���s�M�LUl�P�}�&zI��y�$�GY�9�Q�%?p�a(�F�v�|E�O�{�c��tddd��}|�|j��|�||j��dS)Nrrsr,r/s  rr1zTestEccPoint_NIST_P384.test_set�sE���!�Q��'�'���
�
�4�;����������-�-�-�-�-r#c��|j���}|�||j��|�|j��|�||j��|�|j|j��dSr4r5r/s  rr9z TestEccPoint_NIST_P384.test_copy�r:r#c��|j}|j|z}|�||j�����dSr4r<r>s   rrAz"TestEccPoint_NIST_P384.test_negate�rBr#c��d}d}|j|jz}|�|j|��|�|j|��|���}|j|z}|�||j��||jz}|�||j��||z}|�||��dS)Nl�^\�m�LH\�%sz.	�_�QHp)wB'�2�h\|Sz9Y�0�7�s\\%l�$	rQ4 �1ml w{g~�OMwr�6bLLU�;�8*�$�0x�rs,rErHs     rrMz$TestEccPoint_NIST_P384.test_addition�s���t��t����t�{�*�������7�+�+�+������7�+�+�+��&�&�(�(����s�"��������-�-�-��t�{�"��������-�-�-��s��������%�%�%�%�%r#c�*�d}d}|j���}||jz
}|�|j|��|�|j|��|���}|j���}||z
}|�||j��|���}||jz
}|�||j��|���}||z
}|�||��dSrDrOrHs     r�_test_inplace_additionz-TestEccPoint_NIST_P384._test_inplace_additionrQr#c�*�d}d}|j���}|���|�|j|��|�|j|��|j���}|���}|���|�||��|j���}||z
}|�|j|��|�|j|��dS)NlLP��eroB�r�0_nCYw�~��s�7xI�|��Z�:Z�e�*�X!Tl�]�e��^A|�\�"Rn0�W�WCs�(��h�}	c5J�B�N�n�N=.�rSrHs     rrUz$TestEccPoint_NIST_P384.test_doublings���t��t����!�!�#�#���
�
���������7�+�+�+������7�+�+�+��k�+�+�-�-���������
�
���������%�%�%���!�!�#�#���&��������7�+�+�+������7�+�+�+�+�+r#c�B��d}d}d}�j|z}��|j|����|j|���j���}�jdz}��||����t�fd���dS)N��4�.v�0Z:�z;ODK#�Gv)�Z5mX�C�Ds�:�f�r�kIl�R@�d�V]9�"O/�'5r}�]�~�A�Y�wHoY4��-�?~w�lf�9�;Y?5.���BieXcXt�q�M�Db7��K6X�}1� �}Xrc����jdzSrYr[r\s�rr]z=TestEccPoint_NIST_P384.test_scalar_multiply.<locals>.<lambda>Br^r#�r.r rFrGr=r_rr`s`     rraz+TestEccPoint_NIST_P384.test_scalar_multiply3s����n��t��t����q��������7�+�+�+������7�+�+�+��k�+�+�-�-����q��������%�%�%�	
���*�&>�&>�&>�&>�?�?�?�?�?r#c��d}d}d}d}|j|z}|j|z|j|zz}|�|j|��|�|j|��dS)Nr|l]8�|$�W�!&%TxF�gqe��Y��TKeM80�,Y���O_l�tdv��O*;q/�$L]�0	�}pn<x�&�"�FF�e5hY�E�~"l�q!j�B%~�^�Y7y�K�\+5�{S�W��x�FJR�1D�w�J�A6g�)4rcrds       rrfz1TestEccPoint_NIST_P384.test_joing_scalar_multiplyDsm��n��n��t��t���K�!�O����q��4�;��?�2�������7�+�+�+������7�+�+�+�+�+r#c��|�|j���d��|�|j���d��dS)Ni��0rjr\s rrmz!TestEccPoint_NIST_P384.test_sizesPrnr#N)r$r%r&rprr.r7r1r9rArMryrUrarfrmr'r#rrrrr�s�������Y�Y�
�X�r�r����F�
�X�r�r����F�
.�.�.�
6�6�6�?�?�?�
&�&�&�,&�&�&�4,�,�,�*@�@�@�"
,�
,�
,�:�:�:�:�:r#rrc�|�eZdZdZeddd��Zeddd��Zd�Zd�Zd	�Z	d
�Z
d�Zd�Zd
�Z
d�Zd�ZdS)�TestEccPoint_NIST_P521zOTests defined in section 4.5 of https://www.nsa.gov/ia/_files/nist-routines.pdfl#�A�5�;�LK�5N��}W,*n�<��UP%�hA=�Cb?iOtiL��
��1�!�@vlv'
Wl##�5�kS7�?�I]�*[n�n��kY�i�[�7�.	 �d9��MT3X=TP�5�_Icc	�n�p521l#�G�J�o�7$��=�?>�D�^`bXkN�o�	tG��`�xw�-dg!;I7�>S{)w�h�\.,�#�l#c�ae�.�tDffI*"�a%�A&4�h�#W�w5�%D2�>n<!�}6�@fN�vF�$>8�v�p�c��tdd��}|�|j��|�||j��dSr+r,r/s  rr1zTestEccPoint_NIST_P521.test_setbr2r#c��|j���}|�||j��|�|j��|�||j��|�|j|j��dSr4r5r/s  rr9z TestEccPoint_NIST_P521.test_copygr:r#c��|j}|j|z}|�||j�����dSr4r<r>s   rrAz"TestEccPoint_NIST_P521.test_negatenrBr#c��d}d}|j|jz}|�|j|��|�|j|��|���}|j|z}|�||j��||jz}|�||j��||z}|�||��dS�Nl#�Y[V=x��Cmu�O�F�l��*�sg	N�p�)�giD>u{9gh0!cK-Op�-�^N���l#U,�R&�9�/@�a}#�>�;cd�{cl@�E�'
98�k�h~a�7���?!-�(�O�+�S�rErHs     rrMz$TestEccPoint_NIST_P521.test_additionss���]��]����t�{�*�������7�+�+�+������7�+�+�+��&�&�(�(����s�"��������-�-�-��t�{�"��������-�-�-��s��������%�%�%�%�%r#c�*�d}d}|j���}||jz
}|�|j|��|�|j|��|���}|j���}||z
}|�||j��|���}||jz
}|�||j��|���}||z
}|�||��dSr�rOrHs     rrPz,TestEccPoint_NIST_P521.test_inplace_addition�s��]��]����!�!�#�#���$�+��������7�+�+�+������7�+�+�+��&�&�(�(����!�!�#�#���#�
��������-�-�-��������$�+���������-�-�-��������#�
�������%�%�%�%�%r#c�*�d}d}|j���}|���|�|j|��|�|j|��|j���}|���}|���|�||��|j���}||z
}|�|j|��|�|j|��dS)Nl#�k�'���<�J� �cm�tW9�T@�%�T$�SD!k��dlPgc�iSW�_�%3byF`($/�r�l#C5�APS?( �w8OoXx�
e�\�**L�3
t�X@��7�N&�x�rZ7�}r.�8QIarSrHs     rrUz$TestEccPoint_NIST_P521.test_doubling�s���]��]����!�!�#�#���
�
���������7�+�+�+������7�+�+�+��k�+�+�-�-���������
�
���������%�%�%���!�!�#�#���&��������7�+�+�+������7�+�+�+�+�+r#c�B��d}d}d}�j|z}��|j|����|j|���j���}�jdz}��||����t�fd���dS)N�#�\??7�g�f@YK
j�r�R)P�6
_�r�	[<lSfPL3Z�M�
�TU��U�3��TM|K\x�l#��QUx��2�?z=�[n�W�q06&�7�m�
�nkt�ztX;Ia^R�m<9-�Te�	�bFl#[�}�5]v�3�n�L�IYjz�Q`:���G�k`O�<Y�[w� `5Q*�*�e7�U�5�q�rc����jdzSrYr[r\s�rr]z=TestEccPoint_NIST_P521.test_scalar_multiply.<locals>.<lambda>�r^r#r~r`s`     rraz+TestEccPoint_NIST_P521.test_scalar_multiply�s����
W��]��]����q��������7�+�+�+������7�+�+�+��k�+�+�-�-����q��������%�%�%�	
���*�&>�&>�&>�&>�?�?�?�?�?r#c���d}d}d}d}|j|z}|j|z}||j|zz
}|�|j|��|�|j|��dS)Nr�l#��|T�B�)I%_
#wUV6C9c�1z7�bn�l�<�#qI�"fu�#0	Xa�j�p�x8=nM�l#=et�EK9��J�Bad�ZY�x�
./j��Va�@3h�M�hA��]_`s}J�+dptl#�XM`�Wi&�G�gwH"�!�e+oe�G$,oQ� Tk��9P�>��@5{U':c�0'=�N�D�H?rcrds       rrfz1TestEccPoint_NIST_P521.test_joing_scalar_multiply�s~��
W��
W��]��]���K�!�O����q����$�+��/�!�������7�+�+�+������7�+�+�+�+�+r#c��|�|j���d��|�|j���d��dS)Ni	�Brjr\s rrmz!TestEccPoint_NIST_P521.test_sizes�rnr#Nror'r#rr�r�Us�������Y�Y�
�X�[�[����F�
�X�[�[����F�
.�.�.�
6�6�6�?�?�?�
&�&�&�,&�&�&�4,�,�,�*@�@�@�",�,�,�:�:�:�:�:r#r�c�P�eZdZdZedZeejejd��Z	dS)�TestEccPoint_PAI_P256�9Test vectors from http://point-at-infinity.org/ecc/nisttv�p256N�
r$r%r&rprrr�Gx�Gy�pointGr'r#rr�r���4������C�C��F�O�E�
�X�e�h���&�
1�
1�F�F�Fr#r�)�	PublicKeyrzpoint-at-infinity.org-P256.txtz&P-256 tests from point-at-infinity.orgc� �t|��Sr4��int��ks rr]r]����C��F�F�r#c�"�t|d��S�N�r��rFs rr]r]����C��2�J�J�r#c�"�t|d��Sr�r��rGs rr]r]�r�r#)r�rFrGc��|j|z}|�|j|��|�|j|��dSr4�r�r rFrG�r�scalarrFrG�results     r�new_testr���D����v�%�������1�%�%�%������1�%�%�%�%�%r#ztest_%dc�P�eZdZdZedZeejejd��Z	dS)�TestEccPoint_PAI_P384r�rsNr�r'r#rr�r��r�r#r�zpoint-at-infinity.org-P384.txtz&P-384 tests from point-at-infinity.orgc� �t|��Sr4r�r�s rr]r]�s��S��V�V�r#c�"�t|d��Sr�r�r�s rr]r]����S��B�Z�Z�r#c�"�t|d��Sr�r�r�s rr]r]�r�r#c��|j|z}|�|j|��|�|j|��dSr4r�r�s     rr�r��r�r#c�P�eZdZdZedZeejejd��Z	dS)�TestEccPoint_PAI_P521r�r�Nr�r'r#rr�r�r�r#r�zpoint-at-infinity.org-P521.txtz&P-521 tests from point-at-infinity.orgc� �t|��Sr4r�r�s rr]r]r�r#c�"�t|d��Sr�r�r�s rr]r]r�r#c�"�t|d��Sr�r�r�s rr]r]r�r#c��|j|z}|�|j|��|�|j|��dSr4r�r�s     rr�r�r�r#c�2�eZdZd�Zd�Zd�Zd�Zd�Zd�ZdS)�TestEccKey_P256c���tdd���}|�|jd��|�|�����|�|jjtdj��|�|jj	tdj
��ttdjtdj
��}tdd|���}|�|jd��|�|�����|�|j|��tdd���}tdd���}dS)Nr
��rrr��rr�point�	secp256r1�
prime256v1)rr r�
failUnless�has_privaterrFrr�rGr�r)r�keyr�s   r�test_private_keyz TestEccKey_P256.test_private_keys1���7�a�(�(�(��������"�"�"�������)�)�*�*�*�������w�v��'9�:�:�:�������w�v��'9�:�:�:�����+�W�V�_�-?�@�@���7�a�u�5�5�5��������"�"�"�������)�)�*�*�*������U�+�+�+��;�!�,�,�,���<�1�-�-�-���r#c��ttdjtdj��}t	d|���}|�|�����|�|j|��dS)Nr�r
�rr�)	rrr�r�r�failIfr�r r)rr�r�s   r�test_public_keyzTestEccKey_P256.test_public_key.sk������+�W�V�_�-?�@�@���7�%�0�0�0�����C�O�O�%�%�&�&�&������U�+�+�+�+�+r#c���tdd���}|���}|�|�����|�|j|j��dS)Nr
�r��r�
public_keyr�r�r r�r�priv_key�pub_keys   r�test_public_key_derivedz'TestEccKey_P256.test_public_key_derived5�c����1�-�-�-���%�%�'�'�����G�'�'�)�)�*�*�*������'�.�9�9�9�9�9r#c�>�|�td���dS)Nc�$�tdd���S)NzP-257r�r��rr'r#rr]z4TestEccKey_P256.test_invalid_curve.<locals>.<lambda>=���f�7�a�.H�.H�.H�r#�r_rr\s r�test_invalid_curvez"TestEccKey_P256.test_invalid_curve<�"�����*�&H�&H�I�I�I�I�Ir#c�v�|�td���|�td���dS)Nc�$�tdd���S)Nr
rr�r�r'r#rr]z0TestEccKey_P256.test_invalid_d.<locals>.<lambda>@r�r#c�D�tdtdj���S)Nr
r�r��rr�orderr'r#rr]z0TestEccKey_P256.test_invalid_d.<locals>.<lambda>As��f�7�g�f�o�F[�.\�.\�.\�r#r�r\s r�test_invalid_dzTestEccKey_P256.test_invalid_d?s<�����*�&H�&H�I�I�I����*�&\�&\�]�]�]�]�]r#c���tjdd���}tjdd���}tjdd���}|���}|���}|���}|�||��|�||��|�||��|�||��|�||��dS)Nr�r
�rr��rrr�r r8�r�private_key�private_key2�private_key3r��public_key2�public_key3s       r�
test_equalityzTestEccKey_P256.test_equalityC�����m�a�w�7�7�7���}�q��8�8�8���}�q��8�8�8�� �+�+�-�-�
�"�-�-�/�/��"�-�-�/�/������l�3�3�3����K��6�6�6�����[�1�1�1����J��4�4�4����J��4�4�4�4�4r#N�	r$r%r&r�r�r�r�r�r�r'r#rr�r�st������.�.�.�$,�,�,�:�:�:�J�J�J�^�^�^�5�5�5�5�5r#r�c�2�eZdZd�Zd�Zd�Zd�Zd�Zd�ZdS)�TestEccKey_P384c���td}tdd���}|�|jd��|�|�����|�|jj|j��|�|jj	|j
��t|j|j
d��}tdd|���}|�|jd��|�|�����|�|j|��tdd���}tdd���}tdd���}dS)Nrsrr�r�r��	secp384r1�
prime384v1�rrr rr�r�rrFr�rGr�r)rrsr�r�s    rr�z TestEccKey_P384.test_private_keyX�:���v����7�a�(�(�(��������"�"�"�������)�)�*�*�*�������t�w�/�/�/�������t�w�/�/�/����$�'�6�2�2���7�a�u�5�5�5��������"�"�"�������)�)�*�*�*������U�+�+�+��6�Q�'�'�'���;�!�,�,�,���<�1�-�-�-���r#c��td}t|j|jd��}t	d|���}|�|�����|�|j|��dS)Nrsrr��	rrr�r�rr�r�r r)rrsr�r�s    rr�zTestEccKey_P384.test_public_keym�l���v������$�'�6�2�2���7�%�0�0�0�����C�O�O�%�%�&�&�&������U�+�+�+�+�+r#c���tdd���}|���}|�|�����|�|j|j��dS)Nrr�r�r�r�s   rr�z'TestEccKey_P384.test_public_key_derivedur�r#c�>�|�td���dS)Nc�$�tdd���S)NzP-385r�r�r�r'r#rr]z4TestEccKey_P384.test_invalid_curve.<locals>.<lambda>}r�r#r�r\s rr�z"TestEccKey_P384.test_invalid_curve|r�r#c�v�|�td���|�td���dS)Nc�$�tdd���S)Nrrr�r�r'r#rr]z0TestEccKey_P384.test_invalid_d.<locals>.<lambda>�r�r#c�D�tdtdj���S)Nrrsr�r�r'r#rr]z0TestEccKey_P384.test_invalid_d.<locals>.<lambda>��$��f�7�7>�v��7L�/N�/N�/N�r#r�r\s rr�zTestEccKey_P384.test_invalid_d�Q�����*�&H�&H�I�I�I����*�'N�'N�	O�	O�	O�	O�	Or#c���tjdd���}tjdd���}tjdd���}|���}|���}|���}|�||��|�||��|�||��|�||��|�||��dS)Nr�rr�r�r�r�s       rr�zTestEccKey_P384.test_equality�r�r#Nr�r'r#rr�r�V�t������.�.�.�*,�,�,�:�:�:�J�J�J�O�O�O�
5�5�5�5�5r#r�c�2�eZdZd�Zd�Zd�Zd�Zd�Zd�ZdS)�TestEccKey_P521c���td}tdd���}|�|jd��|�|�����|�|jj|j��|�|jj	|j
��t|j|j
d��}tdd|���}|�|jd��|�|�����|�|j|��tdd���}tdd���}tdd���}dS)Nr��P-521r�r�r��	secp521r1�
prime521v1r�)rr�r�r�s    rr�z TestEccKey_P521.test_private_key�r�r#c��td}t|j|jd��}t	d|���}|�|�����|�|j|��dS)Nr�rr�r�)rr�r�r�s    rr�zTestEccKey_P521.test_public_key�r�r#c���tdd���}|���}|�|�����|�|j|j��dS)Nrr�r�r�r�s   rr�z'TestEccKey_P521.test_public_key_derived�r�r#c�>�|�td���dS)Nc�$�tdd���S)NzP-522r�r�r�r'r#rr]z4TestEccKey_P521.test_invalid_curve.<locals>.<lambda>�r�r#r�r\s rr�z"TestEccKey_P521.test_invalid_curve�r�r#c�v�|�td���|�td���dS)Nc�$�tdd���S)Nrrr�r�r'r#rr]z0TestEccKey_P521.test_invalid_d.<locals>.<lambda>�r�r#c�D�tdtdj���S)Nrr�r�r�r'r#rr]z0TestEccKey_P521.test_invalid_d.<locals>.<lambda>�rr#r�r\s rr�zTestEccKey_P521.test_invalid_d�rr#c���tjdd���}tjdd���}tjdd���}|���}|���}|���}|�||��|�||��|�||��|�||��|�||��dS)Nr�rr�r�r�r�s       rr�zTestEccKey_P521.test_equality�r�r#Nr�r'r#rrr�rr#rc� �eZdZd�Zd�Zd�ZdS)�TestEccModule_P256c�v�tjd���}|�|�����|�|jt
tdjtdj	��|j
zd��tjd���tjd���dS)Nr
rr�r�r�)rrr�r�r rrrr�r�r�rr�s  r�
test_generatez TestEccModule_P256.test_generate�s����l��)�)�)��������)�)�*�*�*������X�g�f�o�.@�.5�f�o�.@�&B�&B�DG�E�&J�.4�	6�	6�	6�
	��;�'�'�'�'���<�(�(�(�(�(�(r#c�l�tjdd���}|�|�����|�|jtdj��tjdtdjtdj	���}|�
|�����|�|jtdj��tjdd���tjdd���tjdd���dS)Nr
r�r�r��rrrr�r�)rrr�r�r rr�Gr�r�r�rs  r�test_constructz!TestEccModule_P256.test_construct�s����m�'�Q�/�/�/��������)�)�*�*�*������W�V�_�%6�7�7�7��m�'�7�6�?�3E�$+�F�O�$6�8�8�8�����C�O�O�%�%�&�&�&������W�V�_�%6�7�7�7�	�
�F�a�(�(�(�(��
�K�1�-�-�-�-��
�L�A�.�.�.�.�.�.r#c��tdd���}ttdjtdj���}|jt
tjfddi|��|jt
tjfddd�|��dS)	N�
r��rrr�rr
�r���dictrr�r�r_rrr�r�coord�coordGs   r�test_negative_constructz*TestEccModule_P256.test_negative_construct�����R��+�+�+���g�f�o�0�'�&�/�:L�M�M�M�����*�c�m�L�L�7�L�e�L�L�L����*�c�m�R�7�a�R�R�6�R�R�R�R�Rr#N�r$r%r&rrr%r'r#rrr�sF������
)�
)�
)�/�/�/� S�S�S�S�Sr#rc� �eZdZd�Zd�Zd�ZdS)�TestEccModule_P384c�d�td}tjd���}|�|�����|�|jt|j|j	d��|j
z��tjd���tjd���dS)Nrsrrr�r��rrrr�r�r rrr�r�r�rrr�s   rrz TestEccModule_P384.test_generate��������l��)�)�)��������)�)�*�*�*������X�e�h���&�%I�%I�C�E�%Q�R�R�R�	��;�'�'�'�'���<�(�(�(�(�(�(r#c�D�td}tjdd���}|�|�����|�|jtdj��tjd|j|j	���}|�
|�����|�|j|j��tjdd���tjdd���tjdd���dS)Nrsrr�r�rr�r��rrrr�r�r rrr�r�r�r,s   rrz!TestEccModule_P384.test_construct���������m�'�Q�/�/�/��������)�)�*�*�*������W�V�_�%6�7�7�7��m�'�5�8�U�X�N�N�N�����C�O�O�%�%�&�&�&������U�W�-�-�-�	�
�F�a�(�(�(�(��
�K�1�-�-�-�-��
�L�A�.�.�.�.�.�.r#c��tdd���}ttdjtdj���}|jt
tjfddi|��|jt
tjfddd�|��dS)	Nrr�rrsrrrr�r r"s   rr%z*TestEccModule_P384.test_negative_constructr&r#Nr'r'r#rr)r)��F������	)�	)�	)�/�/�/� S�S�S�S�Sr#r)c� �eZdZd�Zd�Zd�ZdS)�TestEccModule_P521c�d�td}tjd���}|�|�����|�|jt|j|j	d��|j
z��tjd���tjd���dS)Nr�rrr	r
r+r,s   rrz TestEccModule_P521.test_generate%r-r#c�D�td}tjdd���}|�|�����|�|jtdj��tjd|j|j	���}|�
|�����|�|j|j��tjdd���tjdd���tjdd���dS)Nr�rr�r�rr	r
r/r,s   rrz!TestEccModule_P521.test_construct0r0r#c��tdd���}ttdjtdj���}|jt
tjfddi|��|jt
tjfddd�|��dS)	Nrr�rr�rrrr�r r"s   rr%z*TestEccModule_P521.test_negative_construct@r&r#Nr'r'r#rr4r4#r2r#r4c�`�g}|tt��z
}|tt��z
}|tt��z
}|tt��z
}|tt
��z
}|tt��z
}|tt��z
}|tt��z
}|tt��z
}|tt��z
}|tt��z
}|tt��z
}|tt��z
}|Sr4)rrr)rrr�r�r�r�r�r�rrr)r4)�config�testss  r�	get_testsr;Hs����E�	�_�\�
*�
*�*�E�	�_�3�
4�
4�4�E�	�_�3�
4�
4�4�E�	�_�3�
4�
4�4�E�	�_�2�
3�
3�3�E�	�_�2�
3�
3�3�E�	�_�2�
3�
3�3�E�	�_�_�
-�
-�-�E�	�_�_�
-�
-�-�E�	�_�_�
-�
-�-�E�	�_�/�
0�
0�0�E�	�_�/�
0�
0�0�E�	�_�/�
0�
0�0�E��Lr#�__main__c�B�tjt����Sr4)�unittest�	TestSuiter;r'r#rr]r]Zs��H�&�y�{�{�3�3�r#�suite)�defaultTest)(r>�time�Cryptodome.SelfTest.st_commonr�Cryptodome.SelfTest.loaderr�Cryptodome.PublicKeyr�Cryptodome.PublicKey.ECCrrr�Cryptodome.Math.Numbersr	�TestCaserr)rrr�r��tv_pai�tvr�rFrGr��setattr�countr�r�r�r�rrr)r4r;r$r@�mainr'r#r�<module>rNs+��>��������9�9�9�9�9�9�8�8�8�8�8�8�$�$�$�$�$�$�>�>�>�>�>�>�>�>�>�>�+�+�+�+�+�+�A�A�A�A�A�8�$�A�A�A�6J:�J:�J:�J:�J:�X�.�J:�J:�J:�XB:�B:�B:�B:�B:�X�.�B:�B:�B:�JC:�C:�C:�C:�C:�X�.�C:�C:�C:�L2�2�2�2�2�H�-�2�2�2�
�	�/�4�<�*�*�.�.�.�.�0�0�
1�
1�
7�
57���C�C�B� �d�b�d�b�d�&�&�&�&��G�!�9�r�x�#7��B�B�B�B�2�2�2�2�2�H�-�2�2�2�
�	�/�4�<�+�+�/�/�/�/�1�1�
2�
2�
8�
68���C�C�B� �d�b�d�b�d�&�&�&�&��G�!�9�r�x�#7��B�B�B�B�2�2�2�2�2�H�-�2�2�2�
�	�/�4�<�*�*�.�.�.�.�0�0�
1�
1�
7�
57���C�C�B� �d�b�d�b�d�&�&�&�&��G�!�9�r�x�#7��B�B�B�B�95�95�95�95�95�h�'�95�95�95�x>5�>5�>5�>5�>5�h�'�>5�>5�>5�B>5�>5�>5�>5�>5�h�'�>5�>5�>5�B#S�#S�#S�#S�#S��*�#S�#S�#S�L"S�"S�"S�"S�"S��*�"S�"S�"S�J"S�"S�"S�"S�"S��*�"S�"S�"S�J�����"�z���3�3�E��H�M�g�&�&�&�&�&�&��r#

Youez - 2016 - github.com/yon3zu
LinuXploit