hyb
2026-01-30 7657e1b2fa251a2ea372710ad75cb395a3c0e374
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
Ë
ž¬`iË(ãór—ddlZddlmZddlmZddlmZddlmZddl    m
Z
ddl m Z m Z mZdd    zdd
zz
d z
Zdd zd z
Zddddddddddddded zdfgZGd„dej$«ZGd„dej$«ZGd „d!ej$«Zifd"„Zed#k(rd$„Zej2d%¬&«yy)'éN)Ú    unhexlify)Úlist_test_cases)ÚInteger)ÚSHAKE128)ÚECC)ÚEccKeyÚ    EccXPointÚ_curvesééÀéàéi¾l ;O)µu9d­
NG\cžIÞo’SDY%    »c‚;Í )ré)r l¶<è8ð•i‡ABV    xt%qÚhG?:óøM‰3;<_®zDÚw«I•W/ì2Fo5)+¾"r )élLs§
4EQGCôD>MÎR¬rou1&ýé,’ñdý0›BDqa’IKAáBá*&,³d÷)él±b"yu/màX¦ó~ud¬d#z¢
¡NÿkÄ`{dÙt>'iÚ ŸEëE uš¼=J4')élŒX5VÍ'w,P9F•szL¶™,Ç     †$X1¼i=U& rgk‹1ËSÏ|"åeãPXo)zeQ' )é    l®-h_x aJ=?{O d®G¬;
]:ÈXÎaûuXáNI Õƒwrà"YwÛ\|?û©f>7W .)élÛ¿#ž~ÁmÖp³N"d *[½b@>ÚÍj)©e        ídtiájwP‘JìUªVÌA¢PP[÷)éÿlž+?'Ð]Á-¨w
qÞD+C‚#z;>XIÃ#±D‚    „ºXà79ÊQmF"Ãz08’8$\D.éC7)élA§À&Ð1úA©VÉ9ª&bu)ó%s*¶ Q·.srñu%ô&F3iZ"(r£\!ÈKË!s\æ)il°h[˜~=IÂH”Žs ']TeV}S”TeIV·"ë tœX”\µ}V˜Iµ.·!    p ¸)il²AÃ` 8QÂKùA°ÖQó„%ÃzY0)X$™nø2ÙxP>ËB;c‰ZG]ì.f=‹VJqN;')iÌUªl˜lIwoϦÖQáZ×mjØ=Ëk¬ î†/ joÇx"lñg‰W}&½FäÖ? y,pi…%è)lgx^rP)l0SõKŒ è>e*a`ÉD˜§V/!?an8a_p.]Û«d¶d·a§¢‚yµØ`°i“­;É{rcóD—eZdZdZdZd„Zd„Zd„Zd„Zd„Z    d„Z
d    „Z d
„Z y ) ÚTestEccPoint_Curve448lè4!'ÅM¤Ië.ó>æ.<™ OoÀf åÀfY<ú    l“$+'UfbïCxDóm1,\qt¬<K?:‰!cóB—tdd«ttdz
d«y)NrÚcurve448)r    Ú
CURVE448_P©Úselfs õ~H:\项目\archive\测试组\脚本\Change_password\venv_build\Lib\site-packages\Crypto/SelfTest/PublicKey/test_ECC_Curve448.pyÚ    test_initzTestEccPoint_Curve448.test_init*s€Ü!ZÔ Ü”*˜q‘. *Õ-ócóT—tdd«}|j|jd«y)NrrÚCurve448)r    Ú assertEqualÚcurve©rÚpoints  rÚtest_curve_attributez*TestEccPoint_Curve448.test_curve_attribute.s"€Ü˜!˜ZÓ(ˆØ ×јŸ™ jÕ1r có‚—|jttdtzd«|jttdd«y)NrrÚcurve449)Ú assertRaisesÚ
ValueErrorr    rrs rÚtest_init_failz$TestEccPoint_Curve448.test_init_fail2s.€Ø ×Ñœ*¤i°´:±¸zÔJØ ×Ñœ*¤i°°JÕ?r có—t|jd«}t|jd«}|j||«|j    ||«|j |«|j|j |j «y©Nr)r    Úv1Úv2r#ÚassertNotEqualÚsetÚx©rÚpoint1Úpoint2s   rÚtest_equal_setz$TestEccPoint_Curve448.test_equal_set6sf€Ü˜4Ÿ7™7 JÓ/ˆÜ˜4Ÿ7™7 JÓ/ˆà ×ј Ô(Ø ×јF FÔ+à
‰
6ÔØ ×јŸ™ 6§8¡8Õ,r cóœ—t|jd«}|j«}|j|j|j«yr.)r    r/Úcopyr#r3r4s   rÚ    test_copyzTestEccPoint_Curve448.test_copy@s5€Ü˜4Ÿ7™7 JÓ/ˆØ—‘“ˆØ ×јŸ™ 6§8¡8Õ,r cóä—t|jd«}|j«}|j|j««tdd«}|j|j««yr.)r    r/Úpoint_at_infinityÚ
assertTrue)rr5Úpair6s    rÚtest_paizTestEccPoint_Curve448.test_paiEsV€Ü˜4Ÿ7™7 JÓ/ˆØ×&Ñ&Ó(ˆØ ‰˜×-Ñ-Ó/Ô0ä˜4 Ó,ˆØ ‰˜×0Ñ0Ó2Õ3r cóT—tdd«}d|z}|j|j««t|z}|j|j««|dz}|j    |j
d«t D]&\}}||z}|j    |j
|«Œ(y)Nrrrr)r    r=r<ÚCURVE448_ORDERr#r3Úscalar_base5_test)rÚbaseÚpointHÚdÚresults     rÚtest_scalar_multiplyz*TestEccPoint_Curve448.test_scalar_multiplyMs˜€Ü˜˜JÓ'ˆàT‘ˆØ ‰˜×0Ñ0Ó2Ô3ä $Ñ&ˆØ ‰˜×0Ñ0Ó2Ô3à˜‘ˆØ ×јŸ™ 1Ô%ä*ò    /‰IˆAˆvؘ‘XˆFØ × Ñ ˜VŸX™X vÕ .ñ    /r cóœ—tdd«}|j|j«d«|j|j«d«y)Nrrr é8)r    r#Ú size_in_bitsÚ size_in_bytesr%s  rÚ
test_sizesz TestEccPoint_Curve448.test_sizes]s@€Ü˜!˜ZÓ(ˆØ ×ј×+Ñ+Ó-¨sÔ3Ø ×ј×,Ñ,Ó.°Õ3r N) Ú__name__Ú
__module__Ú __qualname__r/r0rr'r,r7r:r?rGrL©r rrr%s5„à    K€BØ    K€Bò.ò2ò@ò-ò-ò
4ò/ó 4r rcó0—eZdZd„Zd„Zd„Zd„Zd„Zd„Zy)ÚTestEccKey_Curve448cóÄ—td«}td«}tj|d¬«}td|¬«}|j    |j
|«|j |j««|j    |jj|«td«}td«}tj|d¬«}td|¬«}|j    |j
|«|j |j««|j    |jj|«td    |¬«}|jttd    d
¬ «y) NÚp9a8f4925d1519f5775cf46b04b5800d4ee9ee8bae8bc5565d498c28dd9c9baf574a9419744897391006382a6f127ab1d9ac2d8c0a598726bÚp9b08f7cc31b7e3e67d22d5aea121074a273bd2b83de09c63faa73d2c22c5d9bbc836647241d953d40c5b12da88120d53177f80e532c41fa0Úlittle©Ú    byteorderr"©r$ÚseedÚp1c306a7ac2a0e2e0990b294470cba339e6453772b075811d8fad0d1d6927c120bb5ee8972b0d3e21374c9c921b09d1b0366f10b65173992dÚp3eb7a829b0cd20f5bcfc0b599b6feccf6da4627107bdb0d4f345b43027d8b972fc3e34fb4232a13ca706dcb57aec3dae07bdc1c67bf33609rr©r$rE) rrÚ
from_bytesrr#rZr=Ú has_privateÚpointQr3r*r+)rÚ
alice_privÚ    alice_pubÚ alice_pub_xÚkeyÚbob_privÚbob_pubÚ    bob_pub_xs        rÚtest_private_keyz$TestEccKey_Curve448.test_private_keyes)€äð RóSˆ
ÜðQóRˆ    Ü×(Ñ(¨¸hÔGˆ ä˜:¨JÔ7ˆØ ×јŸ™ :Ô.Ø ‰˜Ÿ™Ó)Ô*Ø ×јŸ™Ÿ™ {Ô3ôðPóQˆÜðOóPˆÜ×&Ñ& w¸(ÔCˆ    ä˜:¨HÔ5ˆØ ×јŸ™ 8Ô,Ø ‰˜Ÿ™Ó)Ô*Ø ×јŸ™Ÿ™ yÔ1ô˜:¨JÔ7ˆð     ×Ñœ*¤f°JÀ!ÐÕDr cóЗttdjd¬«}td|¬«}|j    |j ««|j |j|«y)Nr©r$)r$r&)r    r
ÚGxrÚ assertFalser_r#r`)rr&rds   rÚtest_public_keyz#TestEccKey_Curve448.test_public_key€sQ€Üœ' *Ñ-×0Ñ0Ø *ô,ˆä˜:¨UÔ3ˆØ ×јŸ™Ó*Ô+Ø ×јŸ™ UÕ+r cóȗtdd¬«}|j«}|j|j««|j    |j
|j
«y)Nró8HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHrY)rÚ
public_keyrlr_r#r`)rÚpriv_keyÚpub_keys   rÚtest_public_key_derivedz+TestEccKey_Curve448.test_public_key_derived‡sK€Ü 
°Ô9ˆØ×%Ñ%Ó'ˆØ ×ј×,Ñ,Ó.Ô/Ø ×јŸ™¨'¯.©.Õ9r có2—|jtd„«y)Ncó—tdd¬«S)Nró7HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHrY)rrPr rú<lambda>z7TestEccKey_Curve448.test_invalid_seed.<locals>.<lambda>Žs€¬f¸:Ø:Cô/E€r )r*r+rs rÚtest_invalid_seedz%TestEccKey_Curve448.test_invalid_seeds€Ø ×Ñœ*ñ'Eõ    Fr có¢—tjdd¬«}tjdd¬«}tjdd¬«}|j«}|j«}|j«}|j||«|j    ||«|j||«|j    ||«|j    ||«y)Nror")rZr$rs8CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC)rÚ    constructrpr#r1)rÚ private_keyÚ private_key2Ú private_key3rpÚ public_key2Ú public_key3s       rÚ test_equalityz!TestEccKey_Curve448.test_equality‘s¬€Ü—m‘m¨¸
ÔCˆ Ü—}‘}¨'¸ÔDˆ Ü—}‘}¨'¸ÔDˆ à ×+Ñ+Ó-ˆ
Ø"×-Ñ-Ó/ˆ Ø"×-Ñ-Ó/ˆ à ×ј lÔ3Ø ×јK¨Ô6à ×ј [Ô1Ø ×јJ¨ Ô4à ×јJ¨ Õ4r cóò—tjd¬«}|jdt|««|j    |j
d«|j    |j «j
d«y)Nrrjzcurve='Curve448'r")rÚgenerateÚassertInÚreprr#r$rp)rrds  rÚtest_name_consistencyz)TestEccKey_Curve448.test_name_consistency¢sT€Ül‰l Ô,ˆØ  ‰ Ð(¬$¨s«)Ô4Ø ×јŸ™ JÔ/Ø ×јŸ™Ó)×/Ñ/°Õ<r N)    rMrNrOrhrmrsrxr€r…rPr rrRrRcs"„òEò6,ò:ò Fò5ó"=r rRcó—eZdZd„Zd„Zd„Zy)ÚTestEccModule_Curve448cóh—tjd¬«}|j|j««t    t
dj d¬«|jz}|j|j|«tjd¬«}|j||«tjd¬«tjdtj«j¬«}tjdtj«j¬«}|j||«y)Nr"rjr)r$Úrandfunc)rr‚r=r_r    r
rkrEr#r`r1rÚnewÚread)rrdr&Úkey2Úkey1s     rÚ test_generatez$TestEccModule_Curve448.test_generate«sπ܏l‰l Ô,ˆØ ‰˜Ÿ™Ó)Ô*Üœ' *Ñ-×0Ñ0¸
ÔCÀcÇeÁeÑKˆØ ×јŸ™ UÔ+ô|‰| *Ô-ˆØ ×јC Ô&ô      ‰ ˜:Õ&ô|‰| *´x·|±|³~×7JÑ7JÔKˆÜ|‰| *´x·|±|³~×7JÑ7JÔKˆØ ×ј˜tÕ$r có”—td«}td«}tj|d¬«}t|d¬«}t    j
d|¬«}|j |j|«|j|j««t    j
d|¬«}|j |j|«|j|j««t    j
d||¬    «}|j |j|«|j|j««t    j
d
|¬«}y) NrTrUrVrWr"rjrY©r$Úpoint_x)r$rZr‘r) rrr^r    rrzr#r`r=r_rl)rrZÚ    point_hexÚPxr&rds      rÚtest_constructz%TestEccModule_Curve448.test_construct½s€ÜðLóMˆÜðQóRˆ    Ü × Ñ      °XÔ >ˆÜ˜" JÔ/ˆôm‰m *°4Ô8ˆØ ×јŸ™ UÔ+Ø ‰˜Ÿ™Ó)Ô*ôm‰m *°bÔ9ˆØ ×јŸ™ UÔ+Ø ×јŸ™Ó*Ô+ôm‰m *°4ÀÔDˆØ ×јŸ™ UÔ+Ø ‰˜Ÿ™Ó)Ô*ôm‰m *°4Ô8‰r cóŒ—ttdj¬«}|jtt
j fdddœ|¤Ž|jtt
j dd¬«|jtt
j dd¬    «|jtt
j dd
¬    «dd zdd zz
d
z
}|jtt
j d|d
z
¬    «|jtt
j d|¬    «|jtt
j d|d
z¬    «y) Nr)r‘r"r r]rvrYrrrr r )Údictr
rkr*r+rrz)rÚcoordGÚps   rÚtest_negative_constructz.TestEccModule_Curve448.test_negative_constructÕs!€Üœg jÑ1×4Ñ4Ô5ˆàˆ×Ñœ*¤c§m¡mð    )¸:Øñ    )Ø!'ò    )à ×Ñœ*¤c§m¡m¸:Ø&ð    ô    (ð     ×Ñœ*¤c§m¡m¸:Ø"#ð    ô    %à ×Ñœ*¤c§m¡m¸:Ø"#ð    ô    %à ˆs‰FQ˜‘V‰O˜aÑ ˆØ ×Ñœ*¤c§m¡m¸:Ø"# A¡#ð    ô    'à ×Ñœ*¤c§m¡m¸:Ø"#ð    ô    %à ×Ñœ*¤c§m¡m¸:Ø"# A¡#ð    õ    'r N)rMrNrOrŽr”r™rPr rr‡r‡©s„ò%ò$9ó0'r r‡cóv—g}|tt«z }|tt«z }|tt«z }|S©N)rrrRr‡)ÚconfigÚtestss  rÚ    get_testsržës<€Ø €EØ    Œ_Ô2Ó 3Ñ3€EØ    Œ_Ô0Ó 1Ñ1€EØ    Œ_Ô3Ó 4Ñ4€EØ €Lr Ú__main__có<—tjt««Sr›)ÚunittestÚ    TestSuiteržrPr rÚsuiter£ôs€Ü×!Ñ!¤)£+Ó.Ð.r r£)Ú defaultTest)r¡ÚbinasciirÚCrypto.SelfTest.st_commonrÚCrypto.Math.NumbersrÚ Crypto.HashrÚCrypto.PublicKeyrÚCrypto.PublicKey.ECCrr    r
rrArBÚTestCaserrRr‡ržrMr£ÚmainrPr rú<module>r­sòðóÝå5Ý'Ý å ß;Ñ;à ‰Va˜‘f‰_˜qÑ  €
ؐC‘ÐTÑT€ð
 Ø{Ø{ØzØ{Ø{Ø}Ø}Ø|Ø}ðBðCðPؐaјÐðÐô$;4˜H×-Ñ-ô;4ô|C=˜(×+Ñ+ôC=ôL?'˜X×.Ñ.ô?'ðDóð ˆzÒò/à€H‡MM˜gÖ&ðr