ó õùPc@sÞdZddlZddlmZddlmZmZmZddlTddl m Z ddl m Z ddlTd„Zd „Zd „Zd ejfd „ƒYZid „ZedkrÚd„ZejddƒndS(s$Id$iÿÿÿÿN(tRSA(tlist_test_casesta2b_hextb2a_hex(t*(tRandom(t PKCS1_v1_5cCs-d}y||7}Wntk r(dSXdS(Ntii(t TypeError(tstt((sB..\python\site-packages\Crypto\SelfTest\Signature\test_pkcs1_15.pytisStr"s  cCs0x)dddgD]}|j|dƒ}qW|S(s6Remove white spaces, tabs, and new lines from a strings s t R(treplace(R tc((sB..\python\site-packages\Crypto\SelfTest\Signature\test_pkcs1_15.pytrws*scCsAtt|ƒƒ}t|ƒddkr7tdƒ‚nt|ƒS(s=Convert a text string with bytes in hex form to a byte stringiis"Even number of characters expected(tbRtlent ValueErrorR(R tclean((sB..\python\site-packages\Crypto\SelfTest\Signature\test_pkcs1_15.pytt2b0stPKCS1_15_TestscBs€eZidd6dd6dd6ddefdd d efid d6d d6d d6ddeffZd„Zd„Zd„ZRS(sû0a 66 79 1d c6 98 81 68 de 7a b7 74 19 bb 7f b0 c0 01 c6 27 10 27 00 75 14 29 42 e1 9a 8d 8c 51 d0 53 b3 e3 78 2a 1d e5 dc 5a f4 eb e9 94 68 17 01 14 a1 df e6 7c dc 9a 9a f5 5d 65 56 20 bb abtns01 00 01tesû01 23 c5 b6 1b a3 6e db 1d 36 79 90 41 99 a8 9e a8 0c 09 b9 12 2e 14 00 c0 9a dc f7 78 46 76 d0 1d 23 35 6a 7d 44 d6 bd 8b d5 0e 94 bf c7 23 fa 87 d8 86 2b 75 17 76 91 c1 1d 75 76 92 df 88 81tds”30 81 a4 02 01 00 30 42 31 0b 30 09 06 03 55 04 06 13 02 55 53 31 1d 30 1b 06 03 55 04 0a 13 14 45 78 61 6d 70 6c 65 20 4f 72 67 61 6e 69 7a 61 74 69 6f 6e 31 14 30 12 06 03 55 04 03 13 0b 54 65 73 74 20 55 73 65 72 20 31 30 5b 30 0d 06 09 2a 86 48 86 f7 0d 01 01 01 05 00 03 4a 00 30 47 02 40 0a 66 79 1d c6 98 81 68 de 7a b7 74 19 bb 7f b0 c0 01 c6 27 10 27 00 75 14 29 42 e1 9a 8d 8c 51 d0 53 b3 e3 78 2a 1d e5 dc 5a f4 eb e9 94 68 17 01 14 a1 df e6 7c dc 9a 9a f5 5d 65 56 20 bb ab 02 03 01 00 01sï06 db 36 cb 18 d3 47 5b 9c 01 db 3c 78 95 28 08 02 79 bb ae ff 2b 7d 55 8e d6 61 59 87 c8 51 86 3f 8a 6c 2c ff bc 89 c3 f7 5a 18 d9 6b 12 7c 71 7d 54 d0 d8 04 8d a8 a0 54 46 26 d1 7a 2a 8f besp-----BEGIN RSA PRIVATE KEY----- MIIBOwIBAAJBAL8eJ5AKoIsjURpcEoGubZMxLD7+kT+TLr7UkvEtFrRhDDKMtuII q19FrL4pUIMymPMSLBn3hJLe30Dw48GQM4UCAwEAAQJACUSDEp8RTe32ftq8IwG8 Wojl5mAd1wFiIOrZ/Uv8b963WJOJiuQcVN29vxU5+My9GPZ7RA3hrDBEAoHUDPrI OQIhAPIPLz4dphiD9imAkivY31Rc5AfHJiQRA7XixTcjEkojAiEAyh/pJHks/Mlr +rdPNEpotBjfV4M4BkgGAA/ipcmaAjcCIQCHvhwwKVBLzzTscT2HeUdEeBMoiXXK JACAr3sJQJGxIQIgarRp+m1WSKV1MciwMaTOnbU7wxFs9DP1pva76lYBzgUCIQC9 n0CnZCJ6IZYqSt0H5N7+Q+2Ro64nuwV/OSQfM6sBwQ== -----END RSA PRIVATE KEY-----sThis is a test s¢4a700a16432a291a3194646952687d5316458b8b86fb0a25aa30e0dcecdb 442676759ac63d56ec1499c3ae4c0013c2053cabd5b5804848994541ac16 fa243a4ds?E08973398DD8F5F5E88776397F4EB005BB5383DE0FB7ABDC7DC775290D052E6D 12DFA68626D4D26FAA5829FC97ECFA82510F3080BEB1509E4644F12CBBD832CF C6686F07D9B060ACBEEE34096A13F5F7050593DF5EBA3556D961FF197FC981E6 F86CEA874070EFAC6D2C749F2DFA553AB9997702A648528C4EF357385774575Ft010001s?00A403C327477634346CA686B57949014B2E8AD2C862B2C7D748096A8B91F736 F275D6E8CD15906027314735644D95CD6763CEB49F56AC2F376E1CEE0EBF282D F439906F34D86E085BD5656AD841F313D72D395EFE33CBFF29E4030B3D05A28F B7F18EA27637B07957D32F2BDE8706227D04665EC91BAF8B1AC3EC9144AB7F21tabcs360AD5A78FB4A4030EC542C8974CD15F55384E836554CEDD9A322D5F4135C6267 A9D20970C54E6651070B0144D43844C899320DD8FA7819F7EBC6A7715287332E C8675C136183B3F8A1F81EF969418267130A756FDBB2C71D9A667446E34E0EAD 9CF31BFB66F816F319D0B7E430A5F2891553986E003720261C7E9022C0D9F11Fc Cs-x&tt|jƒƒD]}|j|}t|dƒrOtj|dƒ}n?gd D]#}tt|d|ƒdƒ^qV}tj|ƒ}|dj ƒ}y|j t |dƒƒWn|j t |dƒƒnXt j |ƒ}|j|jƒƒ|j|ƒ}|j|t |dƒƒqWdS( NiRRRiiii(RRR(trangeRt _testDataR Rt importKeytlongRt constructtnewtupdateRRtPKCSt failUnlesstcan_signtsignt assertEqual( tselftitrowtkeytxtcompsthtsignerR ((sB..\python\site-packages\Crypto\SelfTest\Signature\test_pkcs1_15.pyt testSign1šs 0c Cs3x,tt|jƒƒD]}|j|}t|dƒrUtj|dƒjƒ}n?gdD]#}tt|d|ƒdƒ^q\}tj |ƒ}|dj ƒ}y|j t |dƒƒWn|j t |dƒƒnXtj |ƒ}|j|jƒƒ|j|t |dƒƒ}|j|ƒqWdS( NiRRiiii(RR(RRRR RRt publickeyRRRR R!RRR"tfailIfR$tverifyR#( R'R(R)R*R+R,R-tverifiertresult((sB..\python\site-packages\Crypto\SelfTest\Signature\test_pkcs1_15.pyt testVerify1¯s 0cCsªtjƒj}tjd|ƒ}x‚ttttt t t t fD]b}|jƒ}|j tdƒƒtj|ƒ}|j|ƒ}|j||ƒ}|j|ƒq@WdS(Nisblah blah blah(RR treadRtgeneratetMD2tMD5tSHAtSHA224tSHA256tSHA384tSHA512tRIPEMDR!RR"R%R2R#(R'trngR*thashmodR-R.R R4((sB..\python\site-packages\Crypto\SelfTest\Signature\test_pkcs1_15.pyttestSignVerifyÄs% (t__name__t __module__R8R:RR/R5RB(((sB..\python\site-packages\Crypto\SelfTest\Signature\test_pkcs1_15.pyR7s*    cCsg}|ttƒ7}|S(N(RR(tconfigttests((sB..\python\site-packages\Crypto\SelfTest\Signature\test_pkcs1_15.pyt get_testsÒst__main__cCstjtƒƒS(N(tunittestt TestSuiteRG(((sB..\python\site-packages\Crypto\SelfTest\Signature\test_pkcs1_15.pytØst defaultTesttsuite(t __revision__RItCrypto.PublicKeyRtCrypto.SelfTest.st_commonRRRt Crypto.HashtCryptoRtCrypto.SignatureRR"tCrypto.Util.py3compatR RRtTestCaseRRGRCRMtmain(((sB..\python\site-packages\Crypto\SelfTest\Signature\test_pkcs1_15.pyts      ›