ajout du tp spa
This commit is contained in:
parent
1b032d43db
commit
82fd1974eb
24 changed files with 6961 additions and 0 deletions
0
A1/tp-spa/.Rhistory
Normal file
0
A1/tp-spa/.Rhistory
Normal file
2
A1/tp-spa/.gitignore
vendored
Normal file
2
A1/tp-spa/.gitignore
vendored
Normal file
|
@ -0,0 +1,2 @@
|
|||
*.ipynb_checkpoints
|
||||
*~
|
13
A1/tp-spa/README.md
Normal file
13
A1/tp-spa/README.md
Normal file
|
@ -0,0 +1,13 @@
|
|||
# Simple Power Analysis to Extract a Password
|
||||
|
||||
Exercise with ChipWhisperer boards to find a password by simple power analysis.
|
||||
|
||||
Start the jupyter serve with the following command:
|
||||
|
||||
jupyter notebook
|
||||
|
||||
If this doesn't work, you might need to install some dependencies:
|
||||
|
||||
pip3 install -r requirements.txt
|
||||
|
||||
and try again.
|
4495
A1/tp-spa/SPA.ipynb
Normal file
4495
A1/tp-spa/SPA.ipynb
Normal file
File diff suppressed because one or more lines are too long
305
A1/tp-spa/hex/basic-passwdcheck-CWNANO.hex
Normal file
305
A1/tp-spa/hex/basic-passwdcheck-CWNANO.hex
Normal file
|
@ -0,0 +1,305 @@
|
|||
:020000040800F2
|
||||
:10000000001000201911000861110008611100089A
|
||||
:100010006111000861110008611100080000000072
|
||||
:100020000000000000000000000000006111000856
|
||||
:100030006111000800000000611100086111000852
|
||||
:1000400000000000000000000000000000000000B0
|
||||
:1000500000000000000000000000000000000000A0
|
||||
:100060000000000000000000000000000000000090
|
||||
:100070000000000000000000000000000000000080
|
||||
:100080000000000000000000000000000000000070
|
||||
:100090000000000000000000000000000000000060
|
||||
:1000A0000000000000000000000000000000000050
|
||||
:1000B0000000000000000000000000000000000040
|
||||
:1000C0000000000000000000000000000000000030
|
||||
:1000D0000000000000000000000000000000000020
|
||||
:1000E0000000000000000000000000000000000010
|
||||
:1000F0000000000000000000000000000000000000
|
||||
:1001000000000000000000000000000000000000EF
|
||||
:1001100000000000000000000000000000000000DF
|
||||
:1001200000000000000000000000000000000000CF
|
||||
:1001300000000000000000000000000000000000BF
|
||||
:1001400000000000000000000000000000000000AF
|
||||
:10015000000000000000000000000000000000009F
|
||||
:10016000000000000000000000000000000000008F
|
||||
:10017000000000000000000000000000000000007F
|
||||
:08018000000000000000000077
|
||||
:100188000448054B10B5834203D0044B002B00D024
|
||||
:10019800984710BD04000020040000200000000063
|
||||
:1001A80006480749091A8910CB0F591810B5491084
|
||||
:1001B80003D0044B002B00D0984710BD040000204A
|
||||
:1001C800040000200000000010B5074C2378002B25
|
||||
:1001D80009D1FFF7D5FF054B002B02D0044800E0FA
|
||||
:1001E80000BF0123237010BD0400002000000000A0
|
||||
:1001F80064110008054B10B5002B03D004490548CD
|
||||
:1002080000E000BFFFF7CCFF10BDC04600000000B3
|
||||
:10021800080000206411000802B47146490849002A
|
||||
:10022800095C49008E4402BC7047C046002243085E
|
||||
:100238008B4274D303098B425FD3030A8B4244D3A6
|
||||
:10024800030B8B4228D3030C8B420DD3FF220902E8
|
||||
:1002580012BA030C8B4202D31212090265D0030BA7
|
||||
:100268008B4219D300E0090AC30B8B4201D3CB039D
|
||||
:10027800C01A5241830B8B4201D38B03C01A5241DF
|
||||
:10028800430B8B4201D34B03C01A5241030B8B42E1
|
||||
:1002980001D30B03C01A5241C30A8B4201D3CB02CC
|
||||
:1002A800C01A5241830A8B4201D38B02C01A5241B1
|
||||
:1002B800430A8B4201D34B02C01A5241030A8B42B4
|
||||
:1002C80001D30B02C01A5241CDD2C3098B4201D3CC
|
||||
:1002D800CB01C01A524183098B4201D38B01C01A4A
|
||||
:1002E800524143098B4201D34B01C01A52410309C1
|
||||
:1002F8008B4201D30B01C01A5241C3088B4201D370
|
||||
:10030800CB00C01A524183088B4201D38B00C01A1C
|
||||
:10031800524143088B4201D34B00C01A5241411A43
|
||||
:1003280000D20146524110467047FFE701B5002050
|
||||
:1003380000F006F802BDC0460029F7D076E77047FE
|
||||
:100348007047C04670B50C4D0C4E761BB61005D0E4
|
||||
:10035800002408CD01349847A642FAD100F0FEFEE9
|
||||
:10036800074D084E761BB61005D0002408CD013481
|
||||
:100378009847A642FAD170BD9C1200089C1200084A
|
||||
:100388009C120008A0120008F0B5C64600B50F2A56
|
||||
:1003980043D90B00032603431E400C000300002E24
|
||||
:1003A80040D11500103D2D09AC462D01A8468044CA
|
||||
:1003B80000E03B00676825685F60E7681D60DF60F4
|
||||
:1003C8001F00A56810379D6010344345F1D165467C
|
||||
:1003D8000F230C2401352D014919134045191442E6
|
||||
:1003E80023D08C59AC5104369C1B032CF9D8032418
|
||||
:1003F800043B9B0801339B002240ED18C918561E88
|
||||
:10040800002A07D0002300E02300CA5C5C1CEA54E1
|
||||
:100418009E42F9D104BC9046F0BD0500561E002A44
|
||||
:10042800F0D1F7E7561E0500ECE71A00F6E7C046DC
|
||||
:10043800002382B0054A0193019B934201D902B07F
|
||||
:100448007047019B01330193F6E7C046FE0F000099
|
||||
:1004580010B504002078013400F052F92378002BFD
|
||||
:10046800F8D110BDF8B504000E0005002B1B9E4204
|
||||
:1004780004DC0023A419013C23700AE000F028F9E9
|
||||
:100488002F0028700028F9D001350A28EED1002362
|
||||
:100498003B70F8BD30B58DB002AC00F05DF800F0EF
|
||||
:1004A80087F800F0C5F8062220492000FFF76CFF06
|
||||
:1004B8001F48FFF7CDFF1F48FFF7CAFF1E48FFF789
|
||||
:1004C800C7FF1E48FFF7C4FF1D48FFF7C1FF1D48BF
|
||||
:1004D800FFF7BEFF1C48FFF7BBFF04AD00F0F0F8C4
|
||||
:1004E8001A48FFF7B5FF20212800FFF7BBFF00F0EF
|
||||
:1004F800DFF80023E15CEA5C914214D10133062B5A
|
||||
:10050800F8D11348FFF7A4FF0CE0019B01330193D6
|
||||
:10051800019B002BF9DDFFF78BFFFFF789FF0D48E3
|
||||
:10052800FFF796FFFEE70023F1E7C04696120008A2
|
||||
:1005380080110008A3110008C0110008DD1100088F
|
||||
:10054800FA110008171200081A12000849120008C8
|
||||
:100558007C1200086D120008F0B5902700240125D0
|
||||
:100568000326042397B0FF0505A9380005930695CF
|
||||
:100578000794089600F046FB102305A93800059358
|
||||
:1005880006950794089600F03DFB05230AA80B93EF
|
||||
:100598000A960D94139400F0C9F80723210001A8C6
|
||||
:1005A800019302950394049400F0A2FA17B0F0BDE9
|
||||
:1005B800802170B51B4C8902626988B00A43626168
|
||||
:1005C800636990200B400193019BC023DB000393D8
|
||||
:1005D80001250223032603A9C00504930595079561
|
||||
:1005E800069600F00FFB8021A269C9010A43A261A7
|
||||
:1005F800A3690D480B400293029B236BB3431D4331
|
||||
:100608000A4B2563036096231B0243600023836023
|
||||
:10061800C360036183610C33436100F06BFC08B075
|
||||
:1006280070BDC04600100240240000200038014080
|
||||
:1006380080201E4AF0B55169800201435161536917
|
||||
:1006480087B0034090240093012500260327009BD0
|
||||
:100658008023E40501A920000193029503960497DD
|
||||
:1006680000F0D0FA102301A9200001930295039607
|
||||
:10067800049700F0C7FA042301A92000019302950A
|
||||
:100688000396049700F0BEFA32002000802100F0A3
|
||||
:1006980069FB2A002000102100F064FB2A000421D5
|
||||
:1006A800200000F05FFB07B0F0BDC046001002401C
|
||||
:1006B800902010B501228021C00500F053FB10BD29
|
||||
:1006C800902010B500228021C00500F04BFB10BD22
|
||||
:1006D80037B508256B46DC1D012232232100064868
|
||||
:1006E80000F03AFC002801D120783EBD034A136A85
|
||||
:1006F8002B431362EEE7C046240000200038014077
|
||||
:1007080007B56B46D91D0870024B0122024800F05C
|
||||
:1007180099FC07BD8813000024000020024B1868CC
|
||||
:10072800421C1A607047C04620000020F0B50368DC
|
||||
:1007380085B00500DB072FD42B689B0700D581E027
|
||||
:100748002B681B0700D5BCE02B685B0700D5DFE0F2
|
||||
:100758002B68DB061AD56A69B54C0423012A00D038
|
||||
:100768004BE1616B02260B436363636B1A4362635D
|
||||
:10077800FFF7D4FF0700636B334200D136E1F8215D
|
||||
:10078800626BAB698A43DB0013436363296A002900
|
||||
:1007980000D059E1002013E00C21A54C62680A4002
|
||||
:1007A800042A06D063680B40082B0BD16368DB036F
|
||||
:1007B80008D523689B03BFD56B68002BBCD10120EB
|
||||
:1007C80005B0F0BD6B68012B13D1802322685B0252
|
||||
:1007D80013432360FFF7A2FF80260700B6022368B1
|
||||
:1007E8003342A9D1FFF79AFFC01B6428F7D9032029
|
||||
:1007F800E6E7002B16D123688E4A80261340236033
|
||||
:1008080023688D4AB60213402360FFF787FF07006D
|
||||
:100818002368334200D18FE7FFF780FFC01B6428AD
|
||||
:10082800F6D9E4E7052B05D180232268DB021343C0
|
||||
:100838002360CAE723687F4A1340236023687E4AFF
|
||||
:100848001340C6E70C227A4C6368134206D06368EB
|
||||
:100858001340082B10D16368DB030DD423689B0772
|
||||
:1008680002D5EB68012BAAD1F82122682B698A43AB
|
||||
:10087800DB001343236063E7EA680123002A0FD0F3
|
||||
:100888002268022613432360FFF748FF0700236806
|
||||
:100898003342E9D1FFF742FFC01B0228F7D9A6E788
|
||||
:1008A800226802269A432260FFF738FF0700236870
|
||||
:1008B800334200D144E7FFF731FFC01B0228F6D9C5
|
||||
:1008C80095E7EA6901235A4C002A10D0626A022689
|
||||
:1008D80013436362FFF722FF0700636A334200D0C5
|
||||
:1008E80032E7FFF71BFFC01B0228F6D97FE7626AD1
|
||||
:1008F80002269A436262FFF711FF0700636A3342D8
|
||||
:1009080000D121E7FFF70AFFC01B0228F6D96EE7DE
|
||||
:1009180080220021464C5205E3690091134208D118
|
||||
:10092800E3691343E361E36913400393039B0123E2
|
||||
:1009380000938027414E7F0033683B4206D0AB6866
|
||||
:10094800012B13D1226A1343236230E033683B43FF
|
||||
:100958003360FFF7E3FE019033683B42EFD1FFF7C6
|
||||
:10096800DDFE019BC01A6428F6D940E70122002B5E
|
||||
:1009780014D1236A022793432362236A03329343E1
|
||||
:100988002362FFF7CBFE0600236A3B4225D0FFF720
|
||||
:10099800C5FE2B4B801B9842F6D928E7052B0BD1B7
|
||||
:1009A800216A013B0B432362236A1A432262FFF741
|
||||
:1009B800B5FE022706000DE0236A93430422236252
|
||||
:1009C800236A9343C0E7FFF7A9FE1D4B801B98429B
|
||||
:1009D80000D90CE7236A3B42F5D0009B012B00D0DD
|
||||
:1009E800B6E6E369174A1340E361B1E6FFF796FEFE
|
||||
:1009F800C01B022800D8BEE6F9E6053203D1626BB7
|
||||
:100A08009A436263BBE6626B022613430122636367
|
||||
:100A1800636B93436363FFF781FE0700636B3342A5
|
||||
:100A280000D1B3E6FFF77AFEC01B0228F6D9DEE64E
|
||||
:100A380000100240FFFFFEFFFFFFFBFF00700040B9
|
||||
:100A480088130000FFFFFFEF0C22264C012063688B
|
||||
:100A58001340082B00D1B3E62368234A13402360D0
|
||||
:100A680002292FD1FFF75AFE80260700B604236813
|
||||
:100A7800334221D10F22E36A9343EA6A1343E362C4
|
||||
:100A8800696AAB6A62680B43184980250A401343B8
|
||||
:100A98006360802322685B0413432360FFF73EFEF4
|
||||
:100AA8000600AD0423682B4200D073E6FFF736FE3C
|
||||
:100AB800801B0228F6D99AE6FFF730FEC01B0228F1
|
||||
:100AC800D5D994E6FFF72AFE80250600AD042368F1
|
||||
:100AD8002B4200D15EE6FFF721FE801B0228F6D9E3
|
||||
:100AE80085E6C04600100240FFFFFFFEFFFFC2FF81
|
||||
:100AF800F7B501223E4C060023680F0013408B42D5
|
||||
:100B080012D33268930719D4D3071FD4012322685C
|
||||
:100B18001A40BA425DD833685B0761D4E122354B8D
|
||||
:100B2800D2031A60002008E0236893430B43236034
|
||||
:100B3800236813408B42E4D00120FEBDF0202E49EB
|
||||
:100B48004B688343B06803434B60DDE72A4D726806
|
||||
:100B58002B68012A1AD19B03EED503216B688B43BE
|
||||
:100B680013436B60FFF7DAFD73680190012B15D111
|
||||
:100B78000C226B681340042BC8D0FFF7CFFD019BF4
|
||||
:100B8800C01A1E4B9842F3D90320D6E7022A02D195
|
||||
:100B98009B01E2D4D0E79B07DFD4CDE7022B12D02C
|
||||
:100BA8000C226B681342B1D0FFF7B8FD019BC01A45
|
||||
:100BB800124B9842F4D9E7E7FFF7B0FD019BC01A42
|
||||
:100BC8000E4B9842E0D80C226B681340082BF3D1E7
|
||||
:100BD8009CE722689A43226022681A429BD0ABE7BE
|
||||
:100BE800054A074953680B40F1680B43536095E782
|
||||
:100BF800002002400000002000100240881300007E
|
||||
:100C0800FFF8FFFFF0B50B6887B00393002301914D
|
||||
:100C1800039ADA4001D107B0F0BD01229A4002924E
|
||||
:100C28000299039A0A40009200D18CE0019A10219F
|
||||
:100C3800526816008E43022E0ED107251D40AD00C6
|
||||
:100C48000139A940DC08A4000419276A8F430199D7
|
||||
:100C58000969A9400F43276203245F00BC40E443AD
|
||||
:100C68000568013E2540AC4603251540BD40614658
|
||||
:100C78000D430560012E0FD801998668CD6826407E
|
||||
:100C8800BD40354385604668029915098E430121A8
|
||||
:100C98000D409D4035434560C56801992C408D68DD
|
||||
:100CA8008021BD4049052C43C4600A424BD0012134
|
||||
:100CB800264C0326A5691E400D43A561A4699D081D
|
||||
:100CC8000C400594059C0F242149AD00B6006D1811
|
||||
:100CD800B4409021AF68C905A743002488420CD0CE
|
||||
:100CE8001C490134884208D01B490134884204D089
|
||||
:100CF8001A490134884200D00234B44000993C4378
|
||||
:100D08000E00AC60164CCD4327683E43D10301D496
|
||||
:100D18003E002E4026606768009E3E43910301D442
|
||||
:100D28003E002E406660A768009E3E43D10201D473
|
||||
:100D38003E002E40A660E668009F3743920201D429
|
||||
:100D48002E403700E760013362E7C04600100240DA
|
||||
:100D5800000001400004004800080048000C00485A
|
||||
:100D680000040140002A01D0816170478162FCE7DC
|
||||
:100D7800F8B504000E0015001F002268D36933403F
|
||||
:100D88009B1B59424B41AB4201D0002018E0069B07
|
||||
:100D98000133F3D0069B002B13D123680C491A6842
|
||||
:100DA80003200A401A609A68A331FF318A439A6087
|
||||
:100DB8002200202369321370537000236834237093
|
||||
:100DC800F8BDFFF7ABFC069BC01B9842D5D9E4E7FA
|
||||
:100DD8005FFEFFFF030070B59A681C69056822432F
|
||||
:100DE8005C69C169224328683B4C0A43204002439E
|
||||
:100DF8002A606A6839481C6A0240D86802436A60F7
|
||||
:100E08009A69A8682243364C204002430320AA600E
|
||||
:100E1800344A126B02403448845C802212029142A8
|
||||
:100E280030D1082C2BD82000FFF7F6F90529162910
|
||||
:100E38001F29292924005968E12348081B04C018E0
|
||||
:100E4800FFF7F4F980B202000F2300079A43400F1E
|
||||
:100E58001043E860200070BD5968244B4808C0184A
|
||||
:100E6800FFF7E4F9002480B2EDE75968E123480868
|
||||
:100E78001B04F4E75968802348085B02EFE7012464
|
||||
:100E88000020E0E7082C24D82000FFF7C5F9052248
|
||||
:100E98000E22182222221D005968E1234808DB038C
|
||||
:100EA800C018FFF7C3F980B2D3E75968104B480858
|
||||
:100EB800C018FFF7BBF980B2E8600024CAE7596898
|
||||
:100EC800E1234808DB03F3E75968802348081B023D
|
||||
:100ED800EEE70124BEE7C046F369FFFFFFCFFFFF3F
|
||||
:100EE800FFF4FFFF001002407C1100080048E801F1
|
||||
:100EF8000024F40070B5041E01D1012070BD050066
|
||||
:100F080069352B78DBB2002B02D1020068321370EE
|
||||
:100F18002423012622682B7013682000B343136032
|
||||
:100F2800FFF758FFB042E8D023680A495A68002002
|
||||
:100F38000A4008215A609A688A439A601A681643D8
|
||||
:100F480022001E602023E0666A3268342B7013701A
|
||||
:100F58002070D3E7FFF7FFFFF0B51F0003006A33E7
|
||||
:100F680016001A78040085B00D000220202A39D115
|
||||
:100F78000138002936D0002E34D08022A1685201D1
|
||||
:100F8800914204D12269002A01D105422AD12200C6
|
||||
:100F9800683211780220012924D001211170002221
|
||||
:100FA800E26622321A70FFF7B9FB23008021A2689B
|
||||
:100FB80058331E805E800390490104338A4215D15C
|
||||
:100FC8002269002A10D11E4A1A801E8822005A322D
|
||||
:100FD800108880B2002810D1230020226A33683498
|
||||
:100FE8001A70207005B0F0BDFF22EDE7002AECD1A1
|
||||
:100FF8002269002AF8D07F22E6E713882021013BE6
|
||||
:101008009BB2138020000097039B0022FFF7B0FEDD
|
||||
:10101800002813D1A268236811008022520191424E
|
||||
:1010280007D12269002A04D19B8C33402B800235DA
|
||||
:10103800CCE79B8C33402B700135C7E70320D1E701
|
||||
:10104800FF010000F0B5070085B0039369373B78CE
|
||||
:1010580004000D0016000220202B46D1013800297B
|
||||
:1010680043D0002A41D08023A2685B019A4204D170
|
||||
:101078002369002B01D1014237D1230068331A7844
|
||||
:101088000220012A31D001221A700023E36621339D
|
||||
:101098003B70FFF743FB230050331E805E808026A1
|
||||
:1010A80002907601210052310A8892B2002A0DD1AD
|
||||
:1010B800039B402100932000029BFFF759FE002864
|
||||
:1010C80012D1202368343B7020700EE00B88002278
|
||||
:1010D800013B9BB20B80039B802100932000029B65
|
||||
:1010E800FFF746FE002802D0032005B0F0BDA36834
|
||||
:1010F8002268B34208D12369002B05D12B88023519
|
||||
:10110800DB05DB0D1385CDE72B7801351385C9E7A2
|
||||
:10111800002103E00B4B5B58435004310A480B4B4A
|
||||
:1011280042189A42F6D30A4A02E0002313600432B6
|
||||
:10113800084B9A42F9D300E000BFFFF703F9FFF725
|
||||
:10114800A9F9FEE7A412000800000020040000200E
|
||||
:101158000400002094000020FEE70000F8B5C04617
|
||||
:10116800F8BC08BC9E467047F8B5C046F8BC08BC39
|
||||
:041178009E467047D8
|
||||
:10117C00000408022A2A2A2A2A536166652D6F2D3B
|
||||
:10118C006D61746963203330303020426F6F746945
|
||||
:10119C006E672E2E2E0A00416C69676E696E672091
|
||||
:1011AC00626974732E2E2E2E2E2E2E2E5B444F4ED5
|
||||
:1011BC00455D0A00436865636B696E672043657320
|
||||
:1011CC0069756D20524E472E2E5B444F4E455D0A7D
|
||||
:1011DC00004D6173717565726164696E6720666C30
|
||||
:1011EC006173682E2E2E5B444F4E455D0A0044659C
|
||||
:1011FC006372797074696E67206461746162617383
|
||||
:10120C00652E2E5B444F4E455D0A000A0A0057417D
|
||||
:10121C00524E494E473A20554E415554484F52492B
|
||||
:10122C005A4544204143434553532057494C4C2085
|
||||
:10123C0042452050554E49534845440A00506C6570
|
||||
:10124C0061736520656E7465722070617373776F5E
|
||||
:10125C00726420746F20636F6E74696E75653A20CA
|
||||
:10126C000050415353574F5244204641494C0A00B9
|
||||
:10127C00416363657373206772616E7465642C20BF
|
||||
:10128C0057656C636F6D65210A00683070783300A8
|
||||
:04129C00FD01000848
|
||||
:0412A000D101000870
|
||||
:0412A40000127A00BA
|
||||
:0400000508001119C5
|
||||
:00000001FF
|
809
A1/tp-spa/hex/secret-passwdcheck-CWNANO.hex
Normal file
809
A1/tp-spa/hex/secret-passwdcheck-CWNANO.hex
Normal file
|
@ -0,0 +1,809 @@
|
|||
:020000040800F2
|
||||
:1000000000100020B92E0008012F0008012F000861
|
||||
:10001000012F0008012F0008012F00080000000038
|
||||
:10002000000000000000000000000000012F000898
|
||||
:10003000012F000800000000012F0008012F000818
|
||||
:1000400000000000000000000000000000000000B0
|
||||
:1000500000000000000000000000000000000000A0
|
||||
:100060000000000000000000000000000000000090
|
||||
:100070000000000000000000000000000000000080
|
||||
:100080000000000000000000000000000000000070
|
||||
:100090000000000000000000000000000000000060
|
||||
:1000A0000000000000000000000000000000000050
|
||||
:1000B0000000000000000000000000000000000040
|
||||
:1000C0000000000000000000000000000000000030
|
||||
:1000D0000000000000000000000000000000000020
|
||||
:1000E0000000000000000000000000000000000010
|
||||
:1000F0000000000000000000000000000000000000
|
||||
:1001000000000000000000000000000000000000EF
|
||||
:1001100000000000000000000000000000000000DF
|
||||
:1001200000000000000000000000000000000000CF
|
||||
:1001300000000000000000000000000000000000BF
|
||||
:1001400000000000000000000000000000000000AF
|
||||
:10015000000000000000000000000000000000009F
|
||||
:10016000000000000000000000000000000000008F
|
||||
:10017000000000000000000000000000000000007F
|
||||
:08018000000000000000000077
|
||||
:100188000448054B10B5834203D0044B002B00D024
|
||||
:10019800984710BDBC000020BC00002000000000F3
|
||||
:1001A80006480749091A8910CB0F591810B5491084
|
||||
:1001B80003D0044B002B00D0984710BDBC00002092
|
||||
:1001C800BC0000200000000010B5074C2378002B6D
|
||||
:1001D80009D1FFF7D5FF054B002B02D0044800E0FA
|
||||
:1001E80000BF0123237010BDBC00002000000000E8
|
||||
:1001F800042F0008054B10B5002B03D0044905480F
|
||||
:1002080000E000BFFFF7CCFF10BDC04600000000B3
|
||||
:10021800C0000020042F000802B4714649084900B4
|
||||
:10022800095C49008E4402BC7047C046002243085E
|
||||
:100238008B4274D303098B425FD3030A8B4244D3A6
|
||||
:10024800030B8B4228D3030C8B420DD3FF220902E8
|
||||
:1002580012BA030C8B4202D31212090265D0030BA7
|
||||
:100268008B4219D300E0090AC30B8B4201D3CB039D
|
||||
:10027800C01A5241830B8B4201D38B03C01A5241DF
|
||||
:10028800430B8B4201D34B03C01A5241030B8B42E1
|
||||
:1002980001D30B03C01A5241C30A8B4201D3CB02CC
|
||||
:1002A800C01A5241830A8B4201D38B02C01A5241B1
|
||||
:1002B800430A8B4201D34B02C01A5241030A8B42B4
|
||||
:1002C80001D30B02C01A5241CDD2C3098B4201D3CC
|
||||
:1002D800CB01C01A524183098B4201D38B01C01A4A
|
||||
:1002E800524143098B4201D34B01C01A52410309C1
|
||||
:1002F8008B4201D30B01C01A5241C3088B4201D370
|
||||
:10030800CB00C01A524183088B4201D38B00C01A1C
|
||||
:10031800524143088B4201D34B00C01A5241411A43
|
||||
:1003280000D20146524110467047FFE701B5002050
|
||||
:1003380000F0F0F802BDC0460029F7D076E7704714
|
||||
:1003480003460B437FD4002243088B4274D303092E
|
||||
:100358008B425FD3030A8B4244D3030B8B4228D3CF
|
||||
:10036800030C8B420DD3FF22090212BA030C8B42F5
|
||||
:1003780002D31212090265D0030B8B4219D300E095
|
||||
:10038800090AC30B8B4201D3CB03C01A5241830B1A
|
||||
:100398008B4201D38B03C01A5241430B8B4201D3CA
|
||||
:1003A8004B03C01A5241030B8B4201D30B03C01AF3
|
||||
:1003B8005241C30A8B4201D3CB02C01A5241830A6D
|
||||
:1003C8008B4201D38B02C01A5241430A8B4201D39C
|
||||
:1003D8004B02C01A5241030A8B4201D30B02C01AC6
|
||||
:1003E8005241CDD2C3098B4201D3CB01C01A52412D
|
||||
:1003F80083098B4201D38B01C01A524143098B42B6
|
||||
:1004080001D34B01C01A524103098B4201D30B019E
|
||||
:10041800C01A5241C3088B4201D3CB00C01A5241C3
|
||||
:1004280083088B4201D38B00C01A524143088B4288
|
||||
:1004380001D34B00C01A5241411A00D20146524121
|
||||
:10044800104670475DE0CA0F00D04942031000D340
|
||||
:100458004042534000229C4603098B422DD3030A95
|
||||
:100468008B4212D3FC22890112BA030A8B420CD3A5
|
||||
:10047800890192118B4208D3890192118B4204D3CE
|
||||
:1004880089013AD0921100E08909C3098B4201D34E
|
||||
:10049800CB01C01A524183098B4201D38B01C01A88
|
||||
:1004A800524143098B4201D34B01C01A52410309FF
|
||||
:1004B8008B4201D30B01C01A5241C3088B4201D3AE
|
||||
:1004C800CB00C01A524183088B4201D38B00C01A5B
|
||||
:1004D8005241D9D243088B4201D34B00C01A524132
|
||||
:1004E800411A00D20146634652415B10104601D3BF
|
||||
:1004F8004042002B00D54942704763465B1000D349
|
||||
:10050800404201B5002000F005F802BD0029F8D0EE
|
||||
:1005180016E770477047C04670B50C4D0C4E761BF9
|
||||
:10052800B61005D0002408CD01349847A642FAD168
|
||||
:1005380002F0E4FC074D084E761BB61005D00024E7
|
||||
:1005480008CD01349847A642FAD170BD643100083D
|
||||
:10055800643100086431000868310008F0B505000E
|
||||
:1005680083074AD0541E002A44D0CEB20300032287
|
||||
:1005780002E00135013C3DD301332E701342F8D11E
|
||||
:10058800032C2FD9FF220A40150215432A041543CC
|
||||
:100598000F2C35D92700103F3F093E01B4461E00F5
|
||||
:1005A8001A0010366644156055609560D5601032A3
|
||||
:1005B800B242F8D10F260C2201373F012640DB1941
|
||||
:1005C8003700224217D03E1FB608B400A4461A00CE
|
||||
:1005D8001C1D644420C2A242FCD103240136B6008B
|
||||
:1005E8009B193C40002C05D0C9B21C191970013365
|
||||
:1005F8009C42FBD1F0BD3400F4E714000300BFE7D0
|
||||
:100608002700E0E7114B70B51C680500A06B0028B7
|
||||
:1006180003D000230561436170BD183000F0AAF8CB
|
||||
:10062800A06300280CD00A4B01220360094B4360E9
|
||||
:10063800094B83600B238381002302614361E8E750
|
||||
:10064800064B00224221064800F050F858000020CE
|
||||
:100658000E33CDAB34126DE6ECDE05009C3000089D
|
||||
:10066800B4300008184B70B51D68AC6B002C0ED068
|
||||
:1006780020696169154A164B01F016FD0122002315
|
||||
:1006880012184B41580040082261636170BD182060
|
||||
:1006980000F070F8041EA8630FD00E4B012203600F
|
||||
:1006A8000D4B43600D4B83600B2383810023026154
|
||||
:1006B800436107480A4A064BE6E70A4B00224E21E7
|
||||
:1006C800094800F013F8C046580000202D7F954CCB
|
||||
:1006D8002DF451580E33CDAB34126DE6ECDE050027
|
||||
:1006E8002E7F954C9C300008B430000830B51C00B3
|
||||
:1006F8000A4B05001B6885B0D868002A0AD0084B49
|
||||
:100708000292019300912B002200064900F020F884
|
||||
:1007180000F0BCFD044B1A00F2E7C0465800002068
|
||||
:10072800E8300008F8300008F4300008130010B56D
|
||||
:100738000022FFF7DBFFC0460CB400B583B004AB62
|
||||
:1007480004CB019300F01EF903B008BC02B01847AF
|
||||
:100758000EB400B582B003AB0100054804CB0068B5
|
||||
:10076800019300F00FF902B008BC03B01847C04667
|
||||
:100778005800002010B5034B0100186800F064F819
|
||||
:1007880010BDC0465800002010B5034B0100186882
|
||||
:1007980000F004F810BDC0465800002070B50500F0
|
||||
:1007A800002915D00C1F2368002B27DB280001F037
|
||||
:1007B800ABFA244B1A68002A05D0A2420CD921684A
|
||||
:1007C8006018824224D0626028001C6001F09EFA02
|
||||
:1007D80070BDA34203D81A005368002BF9D11168E1
|
||||
:1007E8005018A0421BD027D821686018834207D030
|
||||
:1007F80063605460280001F089FAE9E7E418D5E756
|
||||
:1008080018685B6884466144216063605460F1E75E
|
||||
:10081800106852688446614421606260D4E72068A9
|
||||
:100828000918501811608342E4D118685B6884463F
|
||||
:10083800614411605360DDE70C2328002B6001F050
|
||||
:1008480065FAC5E7DC000020F8B50323CD1C9D43FD
|
||||
:10085800083506000C2D2AD20C25A94229D83000CB
|
||||
:1008680001F052FA2A4F3A68002A0AD013685B1B33
|
||||
:1008780004D441E023685B1B1FD522005468002C78
|
||||
:10088800F8D17B68002B3DD02900300000F0F0FB48
|
||||
:10089800431C2AD00323C41C9C43A04205D0211A20
|
||||
:1008A800300000F0E5FB431C1FD0256010E0002D50
|
||||
:1008B800D3DA0C2300203360F8BD0B2B05D863680E
|
||||
:1008C800A2421DD0536003E014002360E4182560A1
|
||||
:1008D800300001F01BFA200007220B30231D904343
|
||||
:1008E800C21AE9D01B1AA350E6E70C233000336084
|
||||
:1008F80001F00CFA0020DFE70B2BE5D81400536851
|
||||
:100908003B60E5E70021300000F0B2FB7860BBE710
|
||||
:10091800DC000020936810B5013B9360002B04DADB
|
||||
:100928009469A34207DB0A2905D01368581C106094
|
||||
:100938000800197010BD00F0ADFBFBE7F8B5060024
|
||||
:100948000F00002B0DD01400D51802E00134AC4282
|
||||
:1009580007D021783A003000FFF7DCFF431CF5D1BF
|
||||
:10096800F8BD0020FCE7C046936810B51400002BC2
|
||||
:1009780002D10020536010BD00F08CFE0023A3605C
|
||||
:100988006360F8E7F0B54E46DE4657464546E0B5A3
|
||||
:10099800A1B00490039191461C00002804D08369FB
|
||||
:1009A8000593002B00D1BEE0AD4B039A9A4200D1CB
|
||||
:1009B800C0E0AC4B039A9A4200D1CDE0AA4B039A0F
|
||||
:1009C8009A4200D147E1039A93891B0700D4B9E002
|
||||
:1009D80013690593002B00D1B4E0002308AD6B61C7
|
||||
:1009E80020336B761033AB762F3B98464B461B78FB
|
||||
:1009F80007949E4F002B00D189E0252B00D125E1DB
|
||||
:100A08004E4603E0252B00D1AAE026007378741C1B
|
||||
:100A1800002BF7D14B46E31A9A4678D053464A46FC
|
||||
:100A280003990498FFF78AFF431C70D06B695344FD
|
||||
:100A38006B617378002B6AD00122002352426A60EE
|
||||
:100A4800443201342B60EB60AB60AB54AB6506E01D
|
||||
:100A58004346C01B834034002A6813432B60217827
|
||||
:100A68000522380001F05EF8661C0028F0D12B68DA
|
||||
:100A7800B246DA0602D543222021A9541A0702D524
|
||||
:100A880043222B21A95421782A2900D06EE0079A05
|
||||
:100A9800111D12680791002A00DABAE0EA6061784D
|
||||
:100AA800A61C2E2900D17AE0714B03221800994622
|
||||
:100AB80001F038F8002800D18FE04B46C01A4023D7
|
||||
:100AC80083402A68317813432B600622731C6948D7
|
||||
:100AD8009946297601F026F8002800D188E0664B6F
|
||||
:100AE800002B00D18EE007AB0093039A634B2900DB
|
||||
:100AF800049800E000BF83465B46013307D06B696A
|
||||
:100B08005B446B614B461B78002B00D075E7039B59
|
||||
:100B18009B895B061DD4686921B03CBC9046994608
|
||||
:100B2800A246AB46F0BD00F08DFD4D4B039A9A42AC
|
||||
:100B380000D03EE7049B5B680393039A93891B07E5
|
||||
:100B480000D545E70399049800F01AFB002800D166
|
||||
:100B580043E701204042DFE7049B9B68039332E7A9
|
||||
:100B68004B46E31A9A4600D166E757E70A00303A3F
|
||||
:100B7800A246092A95D8EB68180001E0340001362E
|
||||
:100B880083001B1831785B0098180A00303A092A4C
|
||||
:100B9800F4D9B246E860A61C2E2900D084E7534653
|
||||
:100BA80059782A293BD1079B1A1D079252469178FA
|
||||
:100BB800D61C022294461B68E2446B60002B00DBC3
|
||||
:100BC80072E701235B426B60294B032218009946A8
|
||||
:100BD80000F0A8FF002800D06FE7B14656463178EC
|
||||
:100BE80006222448297600F09DFF002800D076E7E9
|
||||
:100BF80007AB0093039A214B2900049800F0E4F80E
|
||||
:100C0800834679E70722079B073393430833079303
|
||||
:100C180075E75242EA60022213432B603FE70A005D
|
||||
:100C28000023303A6B601800092A01D910E01E0031
|
||||
:100C380083001B1871785B0098180A00303A731CFF
|
||||
:100C4800092AF4D99A46023668602DE74C46F3E63D
|
||||
:100C5800B246013628E7049BDB680393B3E6C04637
|
||||
:100C6800642F0008442F0008242F000828310008AA
|
||||
:100C78003031000834310008000000004509000840
|
||||
:100C880010B504001300034A10680A002100FFF79A
|
||||
:100C980079FE10BD58000020F0B54F464646D646AE
|
||||
:100CA800C0B51F00089B914698468A680B690600E4
|
||||
:100CB8000C00934200DA13004A4613604322A25CF8
|
||||
:100CC800002A02D04A460133136023689A065AD58F
|
||||
:100CD8004B461B6806209A1C4B461A60236819006D
|
||||
:100CE800184208D1E16800258A1A19218A46190094
|
||||
:100CF800A244002A3FDC4323E35C5A1E93418A0640
|
||||
:100D08000AD53020E1184331087045215A1C615C2E
|
||||
:100D1800A2184332023311702200390043323000E6
|
||||
:100D2800C047431C19D006232068A26821690340E4
|
||||
:100D3800042B30D08A423ADD00239946521A914456
|
||||
:100D48001A34002502E001354D4530DA012322002E
|
||||
:100D580039003000C047431CF5D1012040421CBC7B
|
||||
:100D680090469946A246F0BD4B46E2681B6801359D
|
||||
:100D7800D31AAB4220DD0123524639003000C04768
|
||||
:100D8800431CF1D1E9E706221A4212D04323E35C5F
|
||||
:100D98005A1E9341C0E74B46E0681B68C31AD84304
|
||||
:100DA800C017184081468A42C8DC002BC8DC0020E6
|
||||
:100DB800D5E74A46126895E743232168E35C5A1E43
|
||||
:100DC80093418A069DD4A7E7F0B557469A46432330
|
||||
:100DD8009C464E464546DE468C446346E0B587B0A1
|
||||
:100DE80003930B7E914680460C00109A6E2B00D11F
|
||||
:100DF800D8E000D871E0732B00D11AE100D881E067
|
||||
:100E0800752B00D1FFE0782B00D00BE10B68782020
|
||||
:100E18004521605494498B46116840C911601806F1
|
||||
:100E280003D4580601D53604360CDA0702D5202239
|
||||
:100E3800134323601027002E00D1C2E04323002271
|
||||
:100E4800E2546368A360002B00DAC5E0042221683D
|
||||
:100E580091432160002E00D083E0002B00D0BDE03C
|
||||
:100E6800039D082F00D18CE0039B5B1B2361534635
|
||||
:100E780005AA009321004B464046FFF70DFF431C8F
|
||||
:100E880022D023692A0049464046D047431C1BD03C
|
||||
:100E980022680598E368920700D47FE01A1A002AAE
|
||||
:100EA80000DC7BE026000025193606E0E36805989B
|
||||
:100EB80001351A1AAA4200DC70E0012332004946C3
|
||||
:100EC8004046D047431CF1D10120404207B03CBC0A
|
||||
:100ED80090469946A246AB46F0BD632B00D184E00C
|
||||
:100EE8001FD8002B69D0582B00D09BE045216354B4
|
||||
:100EF8005E4923688B46116840C91160180600D402
|
||||
:100F08008FE792E76F2B7ED0702B00D08AE02023EA
|
||||
:100F1800096878200B4345212360605452498B4669
|
||||
:100F28007AE7642B01D0692B7CD111682368081DEE
|
||||
:100F380010601D064AD50A681600002A03DB4B4BD1
|
||||
:100F48000A279B467DE743222D21A15462687642F9
|
||||
:100F5800A260002A02DB042293432360434B0A2742
|
||||
:100F68009B46039D00E0060039003000FFF7E4F9D6
|
||||
:100F78005B465B5C013D2B70BE42F4D2082F00D06B
|
||||
:100F880072E72368DB0700D46EE76368226993423F
|
||||
:100F980000DD69E73023013D2B7065E7984295DA5B
|
||||
:100FA800180093E7136809681D1D606915601B68C0
|
||||
:100FB8000E0601D449064BD418600023039D236113
|
||||
:100FC80055E7202322689A43226037E75D06B2D5A9
|
||||
:100FD80000228E5E3200B0E7002EC2D15B462500AB
|
||||
:100FE8001A7842234235E2543BE713682500191D5D
|
||||
:100FF80011601A684223E254413B4235236143237E
|
||||
:101008000022E25433E7116820680D1D15600606BA
|
||||
:1010180001D440061ED40E686F2B1DD0134B0A272F
|
||||
:101028009B460BE742222500A35401234235236146
|
||||
:10103800E5E71368191D11601D6862680021280022
|
||||
:1010480000F070FD00280BD0401B60602061D6E7DF
|
||||
:101058001880B2E70E88DFE7044B08279B46EDE6C9
|
||||
:1010680060682061CBE7C046503100083C31000879
|
||||
:10107800002370B5064C05000800236001F076F8DF
|
||||
:10108800431C00D070BD2368002BFBD02B60F9E710
|
||||
:1010980058010020F8B505000E001400002802D001
|
||||
:1010A8008369002B29D02D4B9C422BD02C4B9C4282
|
||||
:1010B80046D02C4B9C424ED0A369A360A3891B0742
|
||||
:1010C80026D52369002B23D0FF22F7B26169164089
|
||||
:1010D8002268D31A99422ADD0133A1680139A16037
|
||||
:1010E800511C2160177062699A422BD0A389DB07D3
|
||||
:1010F80001D50A2E26D03000F8BD00F0A3FA174B10
|
||||
:101108009C42D3D16C68A369A360A3891B07D8D478
|
||||
:101118002100280000F034F8002819D1FF222369A3
|
||||
:10112800F7B2616916402268D31A9942D4DC2100CB
|
||||
:10113800280000F04DF900280AD122680123CCE7E5
|
||||
:10114800AC68B9E72100280000F042F90028D2D0A5
|
||||
:1011580001267642CFE7EC68AEE7C046642F000868
|
||||
:10116800442F0008242F000810B5044B0A001B6800
|
||||
:1011780001001800FFF78EFF10BDC0465800002080
|
||||
:101188003E4B70B51D6806000C00002D02D0AB69FF
|
||||
:10119800002B1BD03A4B9C421ED03A4B9C424CD061
|
||||
:1011A800394B9C4260D00C23E25E93B2190719D5E3
|
||||
:1011B8002169002921D0DA072ED50023A3606369AD
|
||||
:1011C80000205B42A36100292ED070BD280000F0EA
|
||||
:1011D80039FA2B4B9C42E0D16C680C23E25E93B247
|
||||
:1011E8001907E5D4D90641D55B0728D42169082316
|
||||
:1011F8001343A3819BB20029DDD1A0228020920055
|
||||
:1012080080001A408242D6D02100300000F042FC13
|
||||
:10121800A3892169DA07D0D400229B0700D4626928
|
||||
:10122800A26000200029D0D10C22A35E1A06CCD5DA
|
||||
:1012380040221343A3810138C7E7AC68B3E7616B69
|
||||
:1012480000290AD023004433994204D03000FFF724
|
||||
:10125800A5FA0C23E25E0023636324239A43002348
|
||||
:10126800216963602160C2E7EC689CE70923336069
|
||||
:10127800402301201A43A2814042A6E758000020DB
|
||||
:10128800642F0008442F0008242F000810B50620FA
|
||||
:1012980000F0F4FD012000F07FFFC046F0B5C6461F
|
||||
:1012A80000B58B8980460C001A0745D44A68002A85
|
||||
:1012B80063DDE56A002D3BD04246414616680022B0
|
||||
:1012C8000A60216ADA045CD4012300224046A84758
|
||||
:1012D800431C61D0A389E56A216A5B0706D5636868
|
||||
:1012E800C01A636B002B01D0236CC01A00230200C4
|
||||
:1012F8004046A847431C46D143461B680C21625E02
|
||||
:10130800002B56D01D2B01D0162B5DD10023636016
|
||||
:10131800236923604346616B1E60002908D02300BF
|
||||
:101328004433994202D04046FFF738FA00236363FA
|
||||
:10133800002004BC9046F0BD0E69002EF8D00A6863
|
||||
:101348000E60951B00229B0700D14A69A260002D00
|
||||
:1013580004DCEDE736182D1A002DE9DD2B003200EC
|
||||
:10136800216A4046A76AB8470028F3DC40220120DA
|
||||
:10137800A38940421343A381DBE70A6C002A98DC67
|
||||
:10138800D6E7606DA9E70023636023692360A3891A
|
||||
:10139800DB04BFD56065BDE743461B68002B99D0C9
|
||||
:1013A8001D2B0DD0162B0BD04022A3891343A381EC
|
||||
:1013B800BFE7636023692360D304ABD56065A9E701
|
||||
:1013C800434600201E60B4E740231A43A281B0E7D9
|
||||
:1013D8000B6970B505000C00002B16D0002802D050
|
||||
:1013E8008369002B15D00E4B9C4210D00D4B9C42AC
|
||||
:1013F80012D00D4B9C4211D00C22A35E002B04D0BE
|
||||
:1014080021002800FFF74AFF00E0002070BD6C684B
|
||||
:10141800F2E700F017F9E6E7AC68EDE7EC68EBE710
|
||||
:10142800642F0008442F0008242F000810B5011E5F
|
||||
:1014380004D0054B1868FFF7CBFF10BD034B0449D8
|
||||
:10144800186800F0D9FAF8E758000020202F0008A3
|
||||
:10145800D91300080020704710B5024900F0CCFAF3
|
||||
:1014680010BDC046D91300080020704770B5682425
|
||||
:101478004A1E54430E0021007431FFF7E5F9051E9A
|
||||
:1014880009D000232200036046600C30A86068324F
|
||||
:101498000021FFF763F8280070BDC0461E4B70B5E9
|
||||
:1014A8001D680600AB69002B27D048356B68AC680F
|
||||
:1014B800013B03D51CE06834013B19D30C21625E63
|
||||
:1014C800002AF8D100252000144B65662560656068
|
||||
:1014D800A560E36025616561A561082200215C3093
|
||||
:1014E800FFF73CF86563A563A564E564200070BD5B
|
||||
:1014F8002C68002C05D02500D8E7280000F010F84B
|
||||
:10150800D3E704213000FFF7B1FF041E2860F2D1B1
|
||||
:101518000C233360EAE7C046202F00080100FFFFD4
|
||||
:10152800F0B5D6464F464646384BC0B583620023D1
|
||||
:101538008364C3640365364B82B01B68050001935E
|
||||
:10154800984260D02800FFF7A9FF68602800FFF7DD
|
||||
:10155800A5FFA8602800FFF7A1FF6E680024E860D7
|
||||
:1015680004233000746634607460B460F3603461DE
|
||||
:101578007461B461082200215C30FEF7EFFF254B4F
|
||||
:10158800254F9A467362254B37639946B362244BBD
|
||||
:101598003662F362AE6898463000224B7466346057
|
||||
:1015A8007460B460F36034617461B461082200212E
|
||||
:1015B8005C30FEF7D3FF534673624B46B362434633
|
||||
:1015C8003763F3623662EE68174B3000F360746677
|
||||
:1015D80034607460B46034617461B46108220021BD
|
||||
:1015E8005C30FEF7BBFF534673624B46B36243461B
|
||||
:1015F800F362012336623763AB6102B01CBC9046CC
|
||||
:101608009946A246F0BD012383619BE76114000857
|
||||
:10161800202F0008111F0008A91F00083D1F0008FF
|
||||
:101628007D1F0008090001001200020010B5034BDD
|
||||
:101638000349186800F0E0F910BDC046202F0008E3
|
||||
:10164800D9130008836910B5002B01D1FFF768FF93
|
||||
:1016580010BDC0467047C0467047C0467047C04678
|
||||
:101668007047C04610B5034B0349186800F0A2F94B
|
||||
:1016780010BDC046580000205D14000810B5034B8B
|
||||
:101688000349186800F096F910BDC04658000020BC
|
||||
:1016980071140008F0B54546DE4657464E46E0B59B
|
||||
:1016A800936883B000900C009046002B6DD08B8916
|
||||
:1016B8001A0700D471E00A69002A00D16DE0424699
|
||||
:1016C80016689A0700D475E0A36A00279A46B54BB6
|
||||
:1016D80000259946216A002D16D02B004D4500D9CA
|
||||
:1016E800B04B3A000098D047002800DCD5E04346CC
|
||||
:1016F8009B683F182D1A181A4346986045D0A36A6C
|
||||
:10170800216A9A46002DE8D1376875680836E2E7FD
|
||||
:101718004B461B689A464B465F6808239C46E14443
|
||||
:10172800002FF5D03A000A21504600F0FBF90028B6
|
||||
:1017380000D1CEE053460130C61A3300BB469F4263
|
||||
:1017480000D99B46206822696369904204D9A2683F
|
||||
:101758009D18AB4500DD92E05B4500DDF9E0A56A28
|
||||
:101768005246216A0098A847051E00DC95E0761BC2
|
||||
:101778000120002E00D1E4E043469B68AA447F1B69
|
||||
:101788005D1B43469D6000D095E0002003B03CBC43
|
||||
:1017980090469946A246AB46F0BD21000098FFF757
|
||||
:1017A800EFFC002800D0F9E04246A38916689A07A2
|
||||
:1017B80000D589E7DA0778D4002291468022920082
|
||||
:1017C80000279346A5682068002F53D05A46134235
|
||||
:1017D80000D181E0AA46BD4200D9AFE09022D200F4
|
||||
:1017E80013422ED02169451AAC4660690195420022
|
||||
:1017F8001218D00F8218781C5210604492469042FA
|
||||
:1018080001D9824602005B0500D4AFE011000098C0
|
||||
:10181800FFF71AF8051E00D1BAE0019A216900F015
|
||||
:10182800C1F9A389604A134080221343A381524619
|
||||
:10183800019B2561E818BA463D00D31A2060626111
|
||||
:10184800A3605246494600F001FAA3685D1BA560F3
|
||||
:101858003D00002723685344236043469B68A944FE
|
||||
:101868005D1B43469D6000D18FE7A5682068A3896A
|
||||
:10187800002FABD13268776891460836A4E7514605
|
||||
:101888002A0000F0E3F9236821005B19236000981F
|
||||
:10189800FFF79EFD002800D169E70C22A35E4022D5
|
||||
:1018A80001201343A381404270E70023B146002082
|
||||
:1018B8009A4600271E00002F00D129E7002800D0F3
|
||||
:1018C8003BE73A000A21504600F02CF9002800D0E6
|
||||
:1018D80030E77B1C1E0031E72369834217D3636915
|
||||
:1018E8009A46BB4213D8314B38009F4200D9304842
|
||||
:1018F8005146FEF725FD53464A464343216A009860
|
||||
:10190800A56AA8470028C8DD05007F1BA5E7BD42DA
|
||||
:1019180000D93D002A00494600F098F9A3682268DA
|
||||
:101928005B1B5219A3602260002BEED121000098A6
|
||||
:10193800FFF74EFD0028B0D17F1B8EE73D00BA4669
|
||||
:101948007FE721000098FFF743FD002800D113E747
|
||||
:10195800A3E75A46514600F079F95A46A3685D460E
|
||||
:101968009B1AA36023685B44236000E7009800F09B
|
||||
:10197800CFF9051E00D05AE7009D21692800FEF71F
|
||||
:101988000DFF8022A3899343743A1BB22A6086E72D
|
||||
:101998000C23009A13600C22A35E80E701204042CA
|
||||
:1019A800F4E6C04600FCFF7F7FFBFFFFFEFFFF7FE2
|
||||
:1019B800FFFFFF7FF0B5C646483000B588460700F0
|
||||
:1019C8000026002813D07B68BC685D1E0CD4A38950
|
||||
:1019D800012B06D90E22A35E013302D02000C04796
|
||||
:1019E80006436834013DF2D23F68002FEBD1300046
|
||||
:1019F80004BC9046F0BDC046F8B54746CE4680B513
|
||||
:101A080007004837804689460026002F14D07B6897
|
||||
:101A1800BC685D1E0DD4A389012B07D90E22A35ED5
|
||||
:101A2800013303D021004046C84706436834013DCE
|
||||
:101A3800F1D23F68002FEAD130000CBC904699469D
|
||||
:101A4800F8BDC04670B50C001D000E23C95E96B0E7
|
||||
:101A58001600002914DB6A4600F0CEFA00280FDBD6
|
||||
:101A6800F022019B12021340094A944663445A42E9
|
||||
:101A780053412B608023DB003360002016B070BD1B
|
||||
:101A880000232B60A3891B06F4D540233360F4E7B9
|
||||
:101A980000E0FFFF70B58B8982B006000C009B0741
|
||||
:101AA80007D523004733236023610123636102B014
|
||||
:101AB80070BD01AB6A46FFF7C5FF0099050030000D
|
||||
:101AC800FEF7C2FE002810D08022154BB362A3890E
|
||||
:101AD80020601343009A1BB26261019AA3812061BE
|
||||
:101AE800002A0CD12B43A381E1E70C22A35E9A05BF
|
||||
:101AF800DDD40322934302221343A381D1E70E23AB
|
||||
:101B0800E15E300000F08CFA002802D10C22A35EBE
|
||||
:101B1800E8E70322A3899343012213431BB2E1E7B9
|
||||
:101B28006114000870B5CDB2830734D0531E002A63
|
||||
:101B38001BD00278AA4219D0032404E0013B14D335
|
||||
:101B48000278AA4212D001302042F7D1032B0ED8D6
|
||||
:101B5800002B0AD00278AA4208D0C31802E0027803
|
||||
:101B6800AA4203D001308342F9D1002070BDFF2280
|
||||
:101B78000C06240C114021430C04084E0C43026847
|
||||
:101B880007496240511891433142E3D1043B043084
|
||||
:101B9800032BF4D8DCE71300D8E7C04680808080A8
|
||||
:101BA800FFFEFEFEF0B5C64600B50F2A43D90B006E
|
||||
:101BB800032603431E400C000300002E40D11500ED
|
||||
:101BC800103D2D09AC462D01A846804400E03B009D
|
||||
:101BD800676825685F60E7681D60DF601F00A568AB
|
||||
:101BE80010379D6010344345F1D165460F230C240E
|
||||
:101BF80001352D01491913404519144223D08C5938
|
||||
:101C0800AC5104369C1B032CF9D80324043B9B08D5
|
||||
:101C180001339B002240ED18C918561E002A07D030
|
||||
:101C2800002300E02300CA5C5C1CEA549E42F9D100
|
||||
:101C380004BC9046F0BD0500561E002AF0D1F7E717
|
||||
:101C4800561E0500ECE71A00F6E7C046F0B5C64692
|
||||
:101C580000B588420CD98B18984209D2531E002A25
|
||||
:101C680003D0CA5CC254013BFBD204BC9046F0BD11
|
||||
:101C78000F2A0CD80500561E002AF6D0002300E0D3
|
||||
:101C88002300CA5C5C1CEA549E42F9D1EDE70B00C4
|
||||
:101C9800032603431E400C000300002E2ED115001E
|
||||
:101CA800103D2D09AC462D01A846804400E02B00CC
|
||||
:101CB8001D00276810351F6067685F60A7689F6010
|
||||
:101CC800E7681034DF604345F1D165460F230C24E3
|
||||
:101CD80001352D01491913404519144211D08C5969
|
||||
:101CE800AC5104369C1B032CF9D80324043B9B08F5
|
||||
:101CF80001339B00ED18C9182240BCE7561E0500A9
|
||||
:101D0800BCE71A00B7E7C0467047C0467047C046F0
|
||||
:101D1800F8B507000C00150000291BD0002A15D0C3
|
||||
:101D280000F0A4F92600A84201D33000F8BD29002C
|
||||
:101D38003800FEF789FD061EF7D021002A00FFF7BC
|
||||
:101D480031FF21003800FEF729FDEEE7FEF726FDFA
|
||||
:101D58000026EAE71100FEF777FD0600E5E7C04632
|
||||
:101D680010B580210400FEF76FFD6064002807D0DD
|
||||
:101D780002000023803208C09042FCD1002010BD30
|
||||
:101D880001204042FBE7C046426C10B50023002A00
|
||||
:101D980001D0180010BDFFF7E3FF0300F9E7C046C4
|
||||
:101DA80070B505000C0016001F2907D8436C002BDE
|
||||
:101DB80009D0A4001B1918681E6070BD16230360A3
|
||||
:101DC80001204042F9E7FFF7CBFF002801D16B6CF7
|
||||
:101DD800EFE701204042F0E770B505000C001F292D
|
||||
:101DE80020D8436C002B0ED08A009B181A68002A52
|
||||
:101DF80009D0012A14D0511C0ED0002120001960EE
|
||||
:101E08009047002070BD280000F07AF822000100F9
|
||||
:101E1800280000F061F8F5E7162303600120F1E7D8
|
||||
:101E28000020EFE71623036001204042EAE7C0469E
|
||||
:101E380070B505000C001F291DD8436C002B10D06D
|
||||
:101E4800A2009B181A68002A09D0511C11D0012A37
|
||||
:101E58000DD00021200019609047002070BD01209E
|
||||
:101E6800FCE7FFF77DFF002805D16B6CE8E703204E
|
||||
:101E7800F4E70220F2E701204042EFE710B5034BF8
|
||||
:101E880001001868FFF7A8FF10BDC04658000020E1
|
||||
:101E980010B5044B0A001B6801001800FFF780FF0B
|
||||
:101EA80010BDC04658000020054B10B51B68002027
|
||||
:101EB8005A6C002A00D010BD1800FFF751FFFAE74E
|
||||
:101EC8005800002010B5034B01001868FFF7B0FF59
|
||||
:101ED80010BDC04658000020002370B5074C05000F
|
||||
:101EE80008001100236000F029F9431C00D070BDE0
|
||||
:101EF8002368002BFBD02B60F9E7C046580100206F
|
||||
:101F080010B500F00BF910BD70B50C000E25495F37
|
||||
:101F180000F0B6F8002803DB636D1B18636570BD1D
|
||||
:101F2800A389024A1340A381F9E7C046FFEFFFFFE8
|
||||
:101F380000207047F8B516001F000C228B5E0C00BD
|
||||
:101F480005000E22895EDA0508D4094A28001340E4
|
||||
:101F5800A38132003B0000F029F8F8BD00220223DB
|
||||
:101F680000F070F80C22A35E0E22A15EEDE7C046D9
|
||||
:101F7800FFEFFFFF70B50C000E25495F00F062F817
|
||||
:101F8800431C06D08023A2895B011343A3816065AB
|
||||
:101F980070BDA389014A1340A381F9E7FFEFFFFF52
|
||||
:101FA80010B50E23C95E00F015F810BD70B5050018
|
||||
:101FB800080011000022064C22601A0000F0E4F824
|
||||
:101FC800431C00D070BD2368002BFBD02B60F9E7C1
|
||||
:101FD80058010020002370B5064C05000800236056
|
||||
:101FE80000F08CF8431C00D070BD2368002BFBD098
|
||||
:101FF8002B60F9E758010020002370B5074C050055
|
||||
:1020080008001100236000F081F8431C00D070BD67
|
||||
:102018002368002BFBD02B60F9E7C046580100204D
|
||||
:10202800002370B5064C05000800236000F07EF818
|
||||
:10203800431C00D070BD2368002BFBD02B60F9E750
|
||||
:102048005801002070B50500080011000022064C58
|
||||
:1020580022601A0000F07AF8431C00D070BD236893
|
||||
:10206800002BFBD02B60F9E7580100200B1F1B68E1
|
||||
:10207800181F002B00DB70470B58C018FBE7C04641
|
||||
:1020880070B50500080011000022064C22601A00F5
|
||||
:1020980000F064F8431C00D070BD2368002BFBD00F
|
||||
:1020A8002B60F9E758010020F0B5CE4647461504E5
|
||||
:1020B8002D0C2E0080B50704140C3F0C9946030C18
|
||||
:1020C8007E435D43674363437F19340CE4199C46A0
|
||||
:1020D800A54203D980235B029846C4444B46434338
|
||||
:1020E8005143250C36046544360C2404A4195B19A5
|
||||
:1020F800591820000CBC90469946F0BD5822012082
|
||||
:10210800014B40421A6070475801002058220120B4
|
||||
:10211800014B40421A6070475801002058220120A4
|
||||
:10212800014B40421A607047580100205822024B68
|
||||
:1021380000201A607047C04658010020582201202C
|
||||
:10214800014B40421A607047580100205822012074
|
||||
:10215800014B40421A607047580100205822012064
|
||||
:10216800014B40421A60704758010020044A136826
|
||||
:10217800002B03D01818106018007047014BF9E7BE
|
||||
:10218800E40000206001002058220120014B404259
|
||||
:102198001A60704758010020FEE7C046002382B04D
|
||||
:1021A800054A0193019B934201D902B07047019BF4
|
||||
:1021B80001330193F6E7C046FE0F00000378002BB9
|
||||
:1021C80000D17047033B03700130F7E710B50400F6
|
||||
:1021D8002078013400F064F92378002BF8D110BD81
|
||||
:1021E800F8B504000E0005002B1B9E4204DC0023FA
|
||||
:1021F800A419013C23700AE000F03AF92F00287076
|
||||
:102208000028F9D001350A28EED100233B70F8BD2B
|
||||
:1022180030B58BB000F070F800F09AF800F0D8F8FC
|
||||
:10222800294C02AD2000FFF7C9FFA01DFFF7C6FF2C
|
||||
:102238002648FFF7CBFF2648FFF7C8FFFFF7AEFF9A
|
||||
:102248002448FFF7C3FFFFF7A9FF2348FFF7BEFFA6
|
||||
:10225800FFF7A4FF2148FFF7B9FFFFF79FFF2048CA
|
||||
:10226800FFF7B4FF1F48FFF7B1FF00F0F9F81E4869
|
||||
:10227800FFF7ACFF20212800FFF7B2FF00F0E8F8D5
|
||||
:102288000023E15CEA5C914217D10133062BF8D1B7
|
||||
:102298001648FFF79BFFA01DFFF798FF0CE0019B76
|
||||
:1022A80001330193019B8B42F9DBFFF777FFFFF7BF
|
||||
:1022B80075FF0F48FFF78AFFFEE7FEF7D3F90D49D0
|
||||
:1022C800FEF724F90023ECE700000020842F000823
|
||||
:1022D800A72F0008C42F0008E12F0008FE2F0008D0
|
||||
:1022E8001B3000081E3000084D3000088030000800
|
||||
:1022F80071300008A0860100F0B590270024012560
|
||||
:102308000326042397B0FF0505A938000593069511
|
||||
:102318000794089600F046FB102305A9380005939A
|
||||
:1023280006950794089600F03DFB05230AA80B9331
|
||||
:102338000A960D94139400F0C9F80723210001A808
|
||||
:10234800019302950394049400F0A2FA17B0F0BD2B
|
||||
:10235800802170B51B4C8902626988B00A436261AA
|
||||
:10236800636990200B400193019BC023DB0003931A
|
||||
:1023780001250223032603A9C005049305950795A3
|
||||
:10238800069600F00FFB8021A269C9010A43A261E9
|
||||
:10239800A3690D480B400293029B236BB3431D4373
|
||||
:1023A8000A4B2563036096231B0243600023836066
|
||||
:1023B800C360036183610C33436100F06BFC08B0B8
|
||||
:1023C80070BDC04600100240E800002000380140FF
|
||||
:1023D80080201E4AF0B5516980020143516153695A
|
||||
:1023E80087B0034090240093012500260327009B13
|
||||
:1023F8008023E40501A92000019302950396049720
|
||||
:1024080000F0D0FA102301A9200001930295039649
|
||||
:10241800049700F0C7FA042301A92000019302954C
|
||||
:102428000396049700F0BEFA32002000802100F0E5
|
||||
:1024380069FB2A002000102100F064FB2A00042117
|
||||
:10244800200000F05FFB07B0F0BDC046001002405E
|
||||
:10245800902010B501228021C00500F053FB10BD6B
|
||||
:10246800902010B500228021C00500F04BFB10BD64
|
||||
:1024780037B508256B46DC1D0122322321000648AA
|
||||
:1024880000F03AFC002801D120783EBD034A136AC7
|
||||
:102498002B431362EEE7C046E800002000380140F5
|
||||
:1024A80007B56B46D91D0870024B0122024800F09F
|
||||
:1024B80099FC07BD88130000E8000020024B18684B
|
||||
:1024C800421C1A607047C046D8000020F0B5036867
|
||||
:1024D80085B00500DB072FD42B689B0700D581E06A
|
||||
:1024E8002B681B0700D5BCE02B685B0700D5DFE035
|
||||
:1024F8002B68DB061AD56A69B54C0423012A00D07B
|
||||
:102508004BE1616B02260B436363636B1A4362639F
|
||||
:10251800FFF7D4FF0700636B334200D136E1F8219F
|
||||
:10252800626BAB698A43DB0013436363296A002942
|
||||
:1025380000D059E1002013E00C21A54C62680A4044
|
||||
:10254800042A06D063680B40082B0BD16368DB03B1
|
||||
:1025580008D523689B03BFD56B68002BBCD101202D
|
||||
:1025680005B0F0BD6B68012B13D1802322685B0294
|
||||
:1025780013432360FFF7A2FF80260700B6022368F3
|
||||
:102588003342A9D1FFF79AFFC01B6428F7D903206B
|
||||
:10259800E6E7002B16D123688E4A80261340236075
|
||||
:1025A80023688D4AB60213402360FFF787FF0700B0
|
||||
:1025B8002368334200D18FE7FFF780FFC01B6428F0
|
||||
:1025C800F6D9E4E7052B05D180232268DB02134303
|
||||
:1025D8002360CAE723687F4A1340236023687E4A42
|
||||
:1025E8001340C6E70C227A4C6368134206D063682E
|
||||
:1025F8001340082B10D16368DB030DD423689B07B5
|
||||
:1026080002D5EB68012BAAD1F82122682B698A43ED
|
||||
:10261800DB001343236063E7EA680123002A0FD035
|
||||
:102628002268022613432360FFF748FF0700236848
|
||||
:102638003342E9D1FFF742FFC01B0228F7D9A6E7CA
|
||||
:10264800226802269A432260FFF738FF07002368B2
|
||||
:10265800334200D144E7FFF731FFC01B0228F6D907
|
||||
:1026680095E7EA6901235A4C002A10D0626A0226CB
|
||||
:1026780013436362FFF722FF0700636A334200D007
|
||||
:1026880032E7FFF71BFFC01B0228F6D97FE7626A13
|
||||
:1026980002269A436262FFF711FF0700636A33421A
|
||||
:1026A80000D121E7FFF70AFFC01B0228F6D96EE721
|
||||
:1026B80080220021464C5205E3690091134208D15B
|
||||
:1026C800E3691343E361E36913400393039B012325
|
||||
:1026D80000938027414E7F0033683B4206D0AB68A9
|
||||
:1026E800012B13D1226A1343236230E033683B4342
|
||||
:1026F8003360FFF7E3FE019033683B42EFD1FFF709
|
||||
:10270800DDFE019BC01A6428F6D940E70122002BA0
|
||||
:1027180014D1236A022793432362236A0332934323
|
||||
:102728002362FFF7CBFE0600236A3B4225D0FFF762
|
||||
:10273800C5FE2B4B801B9842F6D928E7052B0BD1F9
|
||||
:10274800216A013B0B432362236A1A432262FFF783
|
||||
:10275800B5FE022706000DE0236A93430422236294
|
||||
:10276800236A9343C0E7FFF7A9FE1D4B801B9842DD
|
||||
:1027780000D90CE7236A3B42F5D0009B012B00D01F
|
||||
:10278800B6E6E369174A1340E361B1E6FFF796FE40
|
||||
:10279800C01B022800D8BEE6F9E6053203D1626BF9
|
||||
:1027A8009A436263BBE6626B0226134301226363AA
|
||||
:1027B800636B93436363FFF781FE0700636B3342E8
|
||||
:1027C80000D1B3E6FFF77AFEC01B0228F6D9DEE691
|
||||
:1027D80000100240FFFFFEFFFFFFFBFF00700040FC
|
||||
:1027E80088130000FFFFFFEF0C22264C01206368CE
|
||||
:1027F8001340082B00D1B3E62368234A1340236013
|
||||
:1028080002292FD1FFF75AFE80260700B604236855
|
||||
:10281800334221D10F22E36A9343EA6A1343E36206
|
||||
:10282800696AAB6A62680B43184980250A401343FA
|
||||
:102838006360802322685B0413432360FFF73EFE36
|
||||
:102848000600AD0423682B4200D073E6FFF736FE7E
|
||||
:10285800801B0228F6D99AE6FFF730FEC01B022833
|
||||
:10286800D5D994E6FFF72AFE80250600AD04236833
|
||||
:102878002B4200D15EE6FFF721FE801B0228F6D925
|
||||
:1028880085E6C04600100240FFFFFFFEFFFFC2FFC3
|
||||
:10289800F7B501223E4C060023680F0013408B4217
|
||||
:1028A80012D33268930719D4D3071FD4012322689F
|
||||
:1028B8001A40BA425DD833685B0761D4E122354BD0
|
||||
:1028C800D2031A60002008E0236893430B43236077
|
||||
:1028D800236813408B42E4D00120FEBDF0202E492E
|
||||
:1028E8004B688343B06803434B60DDE72A4D726849
|
||||
:1028F8002B68012A1AD19B03EED503216B688B4301
|
||||
:1029080013436B60FFF7DAFD73680190012B15D153
|
||||
:102918000C226B681340042BC8D0FFF7CFFD019B36
|
||||
:10292800C01A1E4B9842F3D90320D6E7022A02D1D7
|
||||
:102938009B01E2D4D0E79B07DFD4CDE7022B12D06E
|
||||
:102948000C226B681342B1D0FFF7B8FD019BC01A87
|
||||
:10295800124B9842F4D9E7E7FFF7B0FD019BC01A84
|
||||
:102968000E4B9842E0D80C226B681340082BF3D129
|
||||
:102978009CE722689A43226022681A429BD0ABE700
|
||||
:10298800054A074953680B40F1680B43536095E7C4
|
||||
:10299800002002405400002000100240881300006C
|
||||
:1029A800FFF8FFFFF0B50B6887B003930023019190
|
||||
:1029B800039ADA4001D107B0F0BD01229A40029291
|
||||
:1029C8000299039A0A40009200D18CE0019A1021E2
|
||||
:1029D800526816008E43022E0ED107251D40AD0009
|
||||
:1029E8000139A940DC08A4000419276A8F4301991A
|
||||
:1029F8000969A9400F43276203245F00BC40E443F0
|
||||
:102A08000568013E2540AC4603251540BD4061469A
|
||||
:102A18000D430560012E0FD801998668CD682640C0
|
||||
:102A2800BD40354385604668029915098E430121EA
|
||||
:102A38000D409D4035434560C56801992C408D681F
|
||||
:102A48008021BD4049052C43C4600A424BD0012176
|
||||
:102A5800264C0326A5691E400D43A561A4699D085F
|
||||
:102A68000C400594059C0F242149AD00B6006D1853
|
||||
:102A7800B4409021AF68C905A743002488420CD010
|
||||
:102A88001C490134884208D01B490134884204D0CB
|
||||
:102A98001A490134884200D00234B44000993C43BA
|
||||
:102AA8000E00AC60164CCD4327683E43D10301D4D9
|
||||
:102AB8003E002E4026606768009E3E43910301D485
|
||||
:102AC8003E002E406660A768009E3E43D10201D4B6
|
||||
:102AD8003E002E40A660E668009F3743920201D46C
|
||||
:102AE8002E403700E760013362E7C046001002401D
|
||||
:102AF800000001400004004800080048000C00489D
|
||||
:102B080000040140002A01D0816170478162FCE71E
|
||||
:102B1800F8B504000E0015001F002268D369334081
|
||||
:102B28009B1B59424B41AB4201D0002018E0069B49
|
||||
:102B38000133F3D0069B002B13D123680C491A6884
|
||||
:102B480003200A401A609A68A331FF318A439A60C9
|
||||
:102B580022002023693213705370002368342370D5
|
||||
:102B6800F8BDFFF7ABFC069BC01B9842D5D9E4E73C
|
||||
:102B78005FFEFFFF030070B59A681C690568224371
|
||||
:102B88005C69C169224328683B4C0A4320400243E0
|
||||
:102B98002A606A6839481C6A0240D86802436A6039
|
||||
:102BA8009A69A8682243364C204002430320AA6051
|
||||
:102BB800344A126B02403448845C802212029142EB
|
||||
:102BC80030D1082C2BD82000FDF726FB0529162923
|
||||
:102BD8001F29292924005968E12348081B04C01823
|
||||
:102BE800FDF724FB80B202000F2300079A43400F31
|
||||
:102BF8001043E860200070BD5968244B4808C0188D
|
||||
:102C0800FDF714FB002480B2EDE75968E12348087A
|
||||
:102C18001B04F4E75968802348085B02EFE70124A6
|
||||
:102C28000020E0E7082C24D82000FDF7F5FA05225B
|
||||
:102C38000E22182222221D005968E1234808DB03CE
|
||||
:102C4800C018FDF7F3FA80B2D3E75968104B48086B
|
||||
:102C5800C018FDF7EBFA80B2E8600024CAE75968AB
|
||||
:102C6800E1234808DB03F3E75968802348081B027F
|
||||
:102C7800EEE70124BEE7C046F369FFFFFFCFFFFF81
|
||||
:102C8800FFF4FFFF001002401C2F00080048E80175
|
||||
:102C98000024F40070B5041E01D1012070BD0500A8
|
||||
:102CA80069352B78DBB2002B02D102006832137031
|
||||
:102CB8002423012622682B7013682000B343136075
|
||||
:102CC800FFF758FFB042E8D023680A495A68002045
|
||||
:102CD8000A4008215A609A688A439A601A6816431B
|
||||
:102CE80022001E602023E0666A3268342B7013705D
|
||||
:102CF8002070D3E7FFF7FFFFF0B51F0003006A332A
|
||||
:102D080016001A78040085B00D000220202A39D157
|
||||
:102D18000138002936D0002E34D08022A168520113
|
||||
:102D2800914204D12269002A01D105422AD1220008
|
||||
:102D3800683211780220012924D001211170002263
|
||||
:102D4800E26622321A70FFF7B9FB23008021A268DD
|
||||
:102D580058331E805E800390490104338A4215D19E
|
||||
:102D68002269002A10D11E4A1A801E8822005A326F
|
||||
:102D7800108880B2002810D1230020226A336834DA
|
||||
:102D88001A70207005B0F0BDFF22EDE7002AECD1E3
|
||||
:102D98002269002AF8D07F22E6E713882021013B28
|
||||
:102DA8009BB2138020000097039B0022FFF7B0FE20
|
||||
:102DB800002813D1A2682368110080225201914291
|
||||
:102DC80007D12269002A04D19B8C33402B8002351D
|
||||
:102DD800CCE79B8C33402B700135C7E70320D1E744
|
||||
:102DE800FF010000F0B5070085B0039369373B7811
|
||||
:102DF80004000D0016000220202B46D101380029BE
|
||||
:102E080043D0002A41D08023A2685B019A4204D1B2
|
||||
:102E18002369002B01D1014237D1230068331A7886
|
||||
:102E28000220012A31D001221A700023E3662133DF
|
||||
:102E38003B70FFF743FB230050331E805E808026E3
|
||||
:102E480002907601210052310A8892B2002A0DD1EF
|
||||
:102E5800039B402100932000029BFFF759FE0028A6
|
||||
:102E680012D1202368343B7020700EE00B880022BA
|
||||
:102E7800013B9BB20B80039B802100932000029BA7
|
||||
:102E8800FFF746FE002802D0032005B0F0BDA36876
|
||||
:102E98002268B34208D12369002B05D12B8802355B
|
||||
:102EA800DB05DB0D1385CDE72B7801351385C9E7E5
|
||||
:102EB800002103E00B4B5B58435004310A480B4B8D
|
||||
:102EC80042189A42F6D30A4A02E0002313600432F9
|
||||
:102ED800084B9A42F9D300E000BFFDF71DFBFFF74E
|
||||
:102EE80097F9FEE76C31000800000020BC000020C4
|
||||
:102EF800BC0000205C010020FEE70000F8B5C046D9
|
||||
:102F0800F8BC08BC9E467047F8B5C046F8BC08BC7B
|
||||
:042F18009E4670471A
|
||||
:102F1C00000408025C00002000000000000000001B
|
||||
:102F2C000000000000000000000000000000000095
|
||||
:102F3C000000000000000000000000000000000085
|
||||
:102F4C000000000000000000000000000000000075
|
||||
:102F5C000000000000000000000000000000000065
|
||||
:102F6C000000000000000000000000000000000055
|
||||
:102F7C0000000000000000002A2A2A2A2A53616659
|
||||
:102F8C00652D6F2D6D6174696320333030302042B4
|
||||
:102F9C006F6F74696E672E2E2E0A00416C69676E16
|
||||
:102FAC00696E6720626974732E2E2E2E2E2E2E2E95
|
||||
:102FBC005B444F4E455D0A00436865636B696E6701
|
||||
:102FCC002043657369756D20524E472E2E5B444F1E
|
||||
:102FDC004E455D0A004D6173717565726164696E71
|
||||
:102FEC006720666C6173682E2E2E5B444F4E455DD8
|
||||
:102FFC000A0044656372797074696E672064617449
|
||||
:10300C0061626173652E2E5B444F4E455D0A000A6A
|
||||
:10301C000A005741524E494E473A20554E4155549D
|
||||
:10302C00484F52495A454420414343455353205736
|
||||
:10303C00494C4C2042452050554E49534845440A72
|
||||
:10304C0000506C6561736520656E746572207061EB
|
||||
:10305C007373776F726420746F20636F6E74696E14
|
||||
:10306C0075653A200050415353574F524420464106
|
||||
:10307C00494C0A00416363657373206772616E7417
|
||||
:10308C0065642C2057656C636F6D65210A00000028
|
||||
:10309C005245454E54206D616C6C6F6320737563A3
|
||||
:1030AC0063656564656400002E2E2F2E2E2F2E2E48
|
||||
:1030BC002F2E2E2F2E2E2F2E2E2F2E2E2F2E2E2F1E
|
||||
:1030CC006E65776C69622F6C6962632F7374646CC4
|
||||
:1030DC0069622F72616E642E630000002C2066758D
|
||||
:1030EC006E6374696F6E3A20000000006173736543
|
||||
:1030FC007274696F6E2022257322206661696C657B
|
||||
:10310C00643A2066696C6520222573222C206C6938
|
||||
:10311C006E65202564257325730A0000232D302B42
|
||||
:10312C0020000000686C4C0065666745464700004F
|
||||
:10313C0030313233343536373839414243444546E1
|
||||
:10314C0000000000303132333435363738396162A3
|
||||
:08315C006364656600000000D9
|
||||
:04316400FD01000861
|
||||
:04316800D101000889
|
||||
:10316C007565377A72006B777773763D3232736898
|
||||
:10317C007576723177686F68667270307364756CCF
|
||||
:10318C00767768666B31697532786E786B716832F8
|
||||
:10319C004C5A464F544959445A474535584B45505B
|
||||
:1031AC004436474C574E3744525049484D5750447B
|
||||
:1031BC003200000000127A005C00002000000000C9
|
||||
:1031CC00642F0008442F0008242F00080000000082
|
||||
:1031DC0000000000000000000000000000000000E3
|
||||
:1031EC0000000000000000000000000000000000D3
|
||||
:1031FC0000000000000000000000000000000000C3
|
||||
:10320C0000000000000000000000000000000000B2
|
||||
:0C321C00000000000000000000000000A6
|
||||
:0400000508002EB908
|
||||
:00000001FF
|
BIN
A1/tp-spa/img/passwdcheck-main.png
Normal file
BIN
A1/tp-spa/img/passwdcheck-main.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 97 KiB |
370
A1/tp-spa/img/passwdcheck.c.html
Normal file
370
A1/tp-spa/img/passwdcheck.c.html
Normal file
|
@ -0,0 +1,370 @@
|
|||
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
|
||||
<!-- Created by htmlize-1.57 in css mode. -->
|
||||
<html>
|
||||
<head>
|
||||
<title>passwdcheck.c</title>
|
||||
<style type="text/css">
|
||||
<!--
|
||||
body {
|
||||
color: #655370;
|
||||
background-color: #fbf8ef;
|
||||
}
|
||||
.comment {
|
||||
/* font-lock-comment-face */
|
||||
color: #2aa1ae;
|
||||
background-color: #ecf3ec;
|
||||
}
|
||||
.comment-delimiter {
|
||||
/* font-lock-comment-delimiter-face */
|
||||
color: #2aa1ae;
|
||||
background-color: #ecf3ec;
|
||||
}
|
||||
.function-name {
|
||||
/* font-lock-function-name-face */
|
||||
color: #6c3163;
|
||||
font-weight: bold;
|
||||
}
|
||||
.highlight-numbers-number {
|
||||
/* highlight-numbers-number */
|
||||
color: #4e3163;
|
||||
}
|
||||
.hl-line {
|
||||
/* hl-line */
|
||||
background-color: #efeae9;
|
||||
}
|
||||
.keyword {
|
||||
/* font-lock-keyword-face */
|
||||
color: #3a81c3;
|
||||
font-weight: bold;
|
||||
}
|
||||
.link {
|
||||
/* link */
|
||||
color: #2aa1ae;
|
||||
text-decoration: underline;
|
||||
}
|
||||
.preprocessor {
|
||||
/* font-lock-preprocessor-face */
|
||||
color: #6c3163;
|
||||
}
|
||||
.rainbow-delimiters-depth-1 {
|
||||
/* rainbow-delimiters-depth-1-face */
|
||||
color: #3a81c3;
|
||||
}
|
||||
.rainbow-delimiters-depth-2 {
|
||||
/* rainbow-delimiters-depth-2-face */
|
||||
color: #6c3163;
|
||||
}
|
||||
.rainbow-delimiters-depth-3 {
|
||||
/* rainbow-delimiters-depth-3-face */
|
||||
color: #2d9574;
|
||||
}
|
||||
.rainbow-delimiters-depth-4 {
|
||||
/* rainbow-delimiters-depth-4-face */
|
||||
color: #67b11d;
|
||||
}
|
||||
.rainbow-delimiters-depth-5 {
|
||||
/* rainbow-delimiters-depth-5-face */
|
||||
color: #b1951d;
|
||||
}
|
||||
.sp-show-pair-match {
|
||||
/* sp-show-pair-match-face */
|
||||
color: #ba2f59;
|
||||
font-weight: bold;
|
||||
text-decoration: underline;
|
||||
}
|
||||
.sp-show-pair-match-content {
|
||||
}
|
||||
.string {
|
||||
/* font-lock-string-face */
|
||||
color: #2d9574;
|
||||
}
|
||||
.type {
|
||||
/* font-lock-type-face */
|
||||
color: #ba2f59;
|
||||
font-weight: bold;
|
||||
}
|
||||
.variable-name {
|
||||
/* font-lock-variable-name-face */
|
||||
color: #715ab1;
|
||||
}
|
||||
|
||||
a {
|
||||
color: inherit;
|
||||
background-color: inherit;
|
||||
font: inherit;
|
||||
text-decoration: inherit;
|
||||
}
|
||||
a:hover {
|
||||
text-decoration: underline;
|
||||
}
|
||||
-->
|
||||
</style>
|
||||
</head>
|
||||
<body>
|
||||
<pre>
|
||||
<span class="comment-delimiter"><span class="sp-show-pair-match"><span class="hl-line"> /*</span></span></span><span class="comment"><span class="sp-show-pair-match-content"><span class="hl-line">
|
||||
</span></span></span><span class="comment"><span class="sp-show-pair-match-content"> This file is part of the ChipWhisperer Example Targets
|
||||
Copyright (C) 2012-2015 NewAE Technology Inc.
|
||||
|
||||
This program is free software: you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License as published by
|
||||
the Free Software Foundation, either version 3 of the License, or
|
||||
(at your option) any later version.
|
||||
|
||||
This program is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with this program. If not, see <a href="http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
#include "hal.h"
|
||||
#include <stdint.h>
|
||||
#include <stdlib.h>
|
||||
#include <stdio.h"><</a></span></span><span class="comment"><span class="sp-show-pair-match-content"><span class="link"><a href="http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
#include "hal.h"
|
||||
#include <stdint.h>
|
||||
#include <stdlib.h>
|
||||
#include <stdio.h">http://www.gnu.org/licenses/</a></span></span></span><span class="comment"><span class="sp-show-pair-match-content"><a href="http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
#include "hal.h"
|
||||
#include <stdint.h>
|
||||
#include <stdlib.h>
|
||||
#include <stdio.h">>.
|
||||
</a></span></span><span class="comment-delimiter"><span class="sp-show-pair-match"> <a href="http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
#include "hal.h"
|
||||
#include <stdint.h>
|
||||
#include <stdlib.h>
|
||||
#include <stdio.h">*/</a></span></span><a href="http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
#include "hal.h"
|
||||
#include <stdint.h>
|
||||
#include <stdlib.h>
|
||||
#include <stdio.h">
|
||||
</a> <a href="http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
#include "hal.h"
|
||||
#include <stdint.h>
|
||||
#include <stdlib.h>
|
||||
#include <stdio.h">
|
||||
</a><span class="preprocessor"> <a href="http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
#include "hal.h"
|
||||
#include <stdint.h>
|
||||
#include <stdlib.h>
|
||||
#include <stdio.h">#include</a></span><a href="http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
#include "hal.h"
|
||||
#include <stdint.h>
|
||||
#include <stdlib.h>
|
||||
#include <stdio.h"> </a><span class="string"><a href="http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
#include "hal.h"
|
||||
#include <stdint.h>
|
||||
#include <stdlib.h>
|
||||
#include <stdio.h">"hal.h"</a></span><a href="http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
#include "hal.h"
|
||||
#include <stdint.h>
|
||||
#include <stdlib.h>
|
||||
#include <stdio.h">
|
||||
</a><span class="preprocessor"> <a href="http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
#include "hal.h"
|
||||
#include <stdint.h>
|
||||
#include <stdlib.h>
|
||||
#include <stdio.h">#include</a></span><a href="http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
#include "hal.h"
|
||||
#include <stdint.h>
|
||||
#include <stdlib.h>
|
||||
#include <stdio.h"> </a><span class="string"><span class="rainbow-delimiters-depth-1"><a href="http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
#include "hal.h"
|
||||
#include <stdint.h>
|
||||
#include <stdlib.h>
|
||||
#include <stdio.h"><</a></span></span><span class="string"><a href="http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
#include "hal.h"
|
||||
#include <stdint.h>
|
||||
#include <stdlib.h>
|
||||
#include <stdio.h">stdint.h</a></span><span class="string"><span class="rainbow-delimiters-depth-1"><a href="http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
#include "hal.h"
|
||||
#include <stdint.h>
|
||||
#include <stdlib.h>
|
||||
#include <stdio.h">></a></span></span><a href="http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
#include "hal.h"
|
||||
#include <stdint.h>
|
||||
#include <stdlib.h>
|
||||
#include <stdio.h">
|
||||
</a><span class="preprocessor"> <a href="http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
#include "hal.h"
|
||||
#include <stdint.h>
|
||||
#include <stdlib.h>
|
||||
#include <stdio.h">#include</a></span><a href="http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
#include "hal.h"
|
||||
#include <stdint.h>
|
||||
#include <stdlib.h>
|
||||
#include <stdio.h"> </a><span class="string"><span class="rainbow-delimiters-depth-1"><a href="http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
#include "hal.h"
|
||||
#include <stdint.h>
|
||||
#include <stdlib.h>
|
||||
#include <stdio.h"><</a></span></span><span class="string"><a href="http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
#include "hal.h"
|
||||
#include <stdint.h>
|
||||
#include <stdlib.h>
|
||||
#include <stdio.h">stdlib.h</a></span><span class="string"><span class="rainbow-delimiters-depth-1"><a href="http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
#include "hal.h"
|
||||
#include <stdint.h>
|
||||
#include <stdlib.h>
|
||||
#include <stdio.h">></a></span></span><a href="http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
#include "hal.h"
|
||||
#include <stdint.h>
|
||||
#include <stdlib.h>
|
||||
#include <stdio.h">
|
||||
</a><span class="preprocessor"> <a href="http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
#include "hal.h"
|
||||
#include <stdint.h>
|
||||
#include <stdlib.h>
|
||||
#include <stdio.h">#include</a></span><a href="http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
#include "hal.h"
|
||||
#include <stdint.h>
|
||||
#include <stdlib.h>
|
||||
#include <stdio.h"> </a><span class="string"><span class="rainbow-delimiters-depth-1"><a href="http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
#include "hal.h"
|
||||
#include <stdint.h>
|
||||
#include <stdlib.h>
|
||||
#include <stdio.h"><</a></span></span><span class="string"><a href="http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
#include "hal.h"
|
||||
#include <stdint.h>
|
||||
#include <stdlib.h>
|
||||
#include <stdio.h">stdio.h</a></span><span class="string"><span class="rainbow-delimiters-depth-1"><a href="http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
#include "hal.h"
|
||||
#include <stdint.h>
|
||||
#include <stdlib.h>
|
||||
#include <stdio.h">></a></span></span>
|
||||
|
||||
<span class="preprocessor"> #define</span> <span class="variable-name">BUFLEN</span> <span class="highlight-numbers-number">64</span>
|
||||
|
||||
<span class="keyword"> static</span> <span class="type">void</span> <span class="function-name">delay_2_ms</span><span class="rainbow-delimiters-depth-1">(</span><span class="type">void</span><span class="rainbow-delimiters-depth-1">)</span>;
|
||||
|
||||
<span class="type"> void</span> <span class="function-name">my_puts</span><span class="rainbow-delimiters-depth-1">(</span><span class="type">char</span> *<span class="variable-name">c</span><span class="rainbow-delimiters-depth-1">)</span>
|
||||
<span class="rainbow-delimiters-depth-1"> {</span>
|
||||
<span class="keyword">do</span> <span class="rainbow-delimiters-depth-2">{</span>
|
||||
putch<span class="rainbow-delimiters-depth-3">(</span>*c<span class="rainbow-delimiters-depth-3">)</span>;
|
||||
|
||||
<span class="rainbow-delimiters-depth-2">}</span> <span class="keyword">while</span> <span class="rainbow-delimiters-depth-2">(</span>*++c<span class="rainbow-delimiters-depth-2">)</span>;
|
||||
<span class="rainbow-delimiters-depth-1"> }</span>
|
||||
|
||||
<span class="keyword">static</span> <span class="type">void</span> <span class="function-name">delay_2_ms</span><span class="rainbow-delimiters-depth-1">()</span>
|
||||
<span class="rainbow-delimiters-depth-1">{</span>
|
||||
<span class="keyword">for</span> <span class="rainbow-delimiters-depth-2">(</span><span class="keyword">volatile</span> <span class="type">unsigned</span> <span class="type">int</span> <span class="variable-name">i</span>=<span class="highlight-numbers-number">0</span>; i < <span class="highlight-numbers-number">0xfff</span>; i++ <span class="rainbow-delimiters-depth-2">){</span>
|
||||
;
|
||||
<span class="rainbow-delimiters-depth-2">}</span>
|
||||
<span class="rainbow-delimiters-depth-1">}</span>
|
||||
|
||||
<span class="type">void</span> <span class="function-name">my_read</span><span class="rainbow-delimiters-depth-1">(</span><span class="type">char</span> *<span class="variable-name">buf</span>, <span class="type">int</span> <span class="variable-name">len</span><span class="rainbow-delimiters-depth-1">)</span>
|
||||
<span class="rainbow-delimiters-depth-1">{</span>
|
||||
<span class="keyword">for</span><span class="rainbow-delimiters-depth-2">(</span><span class="type">int</span> <span class="variable-name">i</span> = <span class="highlight-numbers-number">0</span>; i < len; i++<span class="rainbow-delimiters-depth-2">)</span> <span class="rainbow-delimiters-depth-2">{</span>
|
||||
<span class="keyword">while</span> <span class="rainbow-delimiters-depth-3">(</span>buf<span class="rainbow-delimiters-depth-4">[</span>i<span class="rainbow-delimiters-depth-4">]</span> = getch<span class="rainbow-delimiters-depth-4">()</span>, buf<span class="rainbow-delimiters-depth-4">[</span>i<span class="rainbow-delimiters-depth-4">]</span> == <span class="string">'\0'</span><span class="rainbow-delimiters-depth-3">)</span>;
|
||||
|
||||
<span class="keyword">if</span> <span class="rainbow-delimiters-depth-3">(</span>buf<span class="rainbow-delimiters-depth-4">[</span>i<span class="rainbow-delimiters-depth-4">]</span> == <span class="string">'\n'</span><span class="rainbow-delimiters-depth-3">)</span> <span class="rainbow-delimiters-depth-3">{</span>
|
||||
buf<span class="rainbow-delimiters-depth-4">[</span>i<span class="rainbow-delimiters-depth-4">]</span> = <span class="string">'\0'</span>;
|
||||
<span class="keyword">return</span>;
|
||||
<span class="rainbow-delimiters-depth-3">}</span>
|
||||
<span class="rainbow-delimiters-depth-2">}</span>
|
||||
buf<span class="rainbow-delimiters-depth-2">[</span>len - <span class="highlight-numbers-number">1</span><span class="rainbow-delimiters-depth-2">]</span> = <span class="string">'\0'</span>;
|
||||
<span class="rainbow-delimiters-depth-1">}</span>
|
||||
|
||||
<span class="type">int</span> <span class="function-name">main</span><span class="rainbow-delimiters-depth-1">(</span><span class="type">void</span><span class="rainbow-delimiters-depth-1">)</span>
|
||||
<span class="rainbow-delimiters-depth-1">{</span>
|
||||
platform_init<span class="rainbow-delimiters-depth-2">()</span>;
|
||||
init_uart<span class="rainbow-delimiters-depth-2">()</span>;
|
||||
|
||||
<span class="type">char</span> <span class="variable-name">passwd</span><span class="rainbow-delimiters-depth-2">[</span><span class="highlight-numbers-number">32</span><span class="rainbow-delimiters-depth-2">]</span>;
|
||||
<span class="type">char</span> <span class="variable-name">correct_passwd</span><span class="rainbow-delimiters-depth-2">[]</span> = <span class="string">"xxxxx"</span>;
|
||||
|
||||
<span class="keyword">while</span><span class="rainbow-delimiters-depth-2">(</span><span class="highlight-numbers-number">1</span><span class="rainbow-delimiters-depth-2">){</span>
|
||||
|
||||
my_puts<span class="rainbow-delimiters-depth-3">(</span><span class="string">"*****Safe-o-matic 3000 Booting...\n"</span><span class="rainbow-delimiters-depth-3">)</span>;
|
||||
|
||||
<span class="comment-delimiter">//</span><span class="comment">Give them one last warning
|
||||
</span> my_puts<span class="rainbow-delimiters-depth-3">(</span><span class="string">"WARNING: UNAUTHORIZED ACCESS WILL BE PUNISHED\n"</span><span class="rainbow-delimiters-depth-3">)</span>;
|
||||
|
||||
<span class="comment-delimiter">//</span><span class="comment">Get password
|
||||
</span> my_puts<span class="rainbow-delimiters-depth-3">(</span><span class="string">"Please enter password to continue: "</span><span class="rainbow-delimiters-depth-3">)</span>;
|
||||
my_read<span class="rainbow-delimiters-depth-3">(</span>passwd, <span class="highlight-numbers-number">32</span><span class="rainbow-delimiters-depth-3">)</span>;
|
||||
|
||||
<span class="type">uint8_t</span> <span class="variable-name">passbad</span> = <span class="highlight-numbers-number">0</span>;
|
||||
<span class="keyword">for</span><span class="rainbow-delimiters-depth-3">(</span><span class="type">uint8_t</span> <span class="variable-name">i</span> = <span class="highlight-numbers-number">0</span>; i < <span class="keyword">sizeof</span><span class="rainbow-delimiters-depth-4">(</span>correct_passwd<span class="rainbow-delimiters-depth-4">)</span>; i++<span class="rainbow-delimiters-depth-3">){</span>
|
||||
<span class="keyword">if</span> <span class="rainbow-delimiters-depth-4">(</span>correct_passwd<span class="rainbow-delimiters-depth-5">[</span>i<span class="rainbow-delimiters-depth-5">]</span> != passwd<span class="rainbow-delimiters-depth-5">[</span>i<span class="rainbow-delimiters-depth-5">]</span><span class="rainbow-delimiters-depth-4">){</span>
|
||||
passbad = <span class="highlight-numbers-number">1</span>;
|
||||
<span class="keyword">break</span>;
|
||||
<span class="rainbow-delimiters-depth-4">}</span>
|
||||
<span class="rainbow-delimiters-depth-3">}</span>
|
||||
|
||||
<span class="keyword">if</span> <span class="rainbow-delimiters-depth-3">(</span>passbad<span class="rainbow-delimiters-depth-3">){</span>
|
||||
delay_2_ms<span class="rainbow-delimiters-depth-4">()</span>;
|
||||
delay_2_ms<span class="rainbow-delimiters-depth-4">()</span>;
|
||||
my_puts<span class="rainbow-delimiters-depth-4">(</span><span class="string">"Wrong password. Access denied!\n"</span><span class="rainbow-delimiters-depth-4">)</span>;
|
||||
my_puts<span class="rainbow-delimiters-depth-4">(</span><span class="string">"\n"</span><span class="rainbow-delimiters-depth-4">)</span>;
|
||||
led_error<span class="rainbow-delimiters-depth-4">(</span><span class="highlight-numbers-number">1</span><span class="rainbow-delimiters-depth-4">)</span>;
|
||||
<span class="rainbow-delimiters-depth-3">}</span> <span class="keyword">else</span> <span class="rainbow-delimiters-depth-3">{</span>
|
||||
my_puts<span class="rainbow-delimiters-depth-4">(</span><span class="string">"Access granted, welcome!\n"</span><span class="rainbow-delimiters-depth-4">)</span>;
|
||||
led_ok<span class="rainbow-delimiters-depth-4">(</span><span class="highlight-numbers-number">1</span><span class="rainbow-delimiters-depth-4">)</span>;
|
||||
<span class="rainbow-delimiters-depth-3">}</span>
|
||||
|
||||
<span class="comment-delimiter">//</span><span class="comment">All done;
|
||||
</span> <span class="keyword">while</span><span class="rainbow-delimiters-depth-3">(</span><span class="highlight-numbers-number">1</span><span class="rainbow-delimiters-depth-3">)</span>;
|
||||
<span class="rainbow-delimiters-depth-2">}</span>
|
||||
|
||||
<span class="keyword">return</span> <span class="highlight-numbers-number">1</span>;
|
||||
<span class="rainbow-delimiters-depth-1">}</span>
|
||||
|
||||
|
||||
</pre>
|
||||
</body>
|
||||
</html>
|
BIN
A1/tp-spa/img/spa_password_diffexample.png
Normal file
BIN
A1/tp-spa/img/spa_password_diffexample.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 66 KiB |
BIN
A1/tp-spa/img/spa_password_h_vs_0_overview.png
Normal file
BIN
A1/tp-spa/img/spa_password_h_vs_0_overview.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 73 KiB |
BIN
A1/tp-spa/img/spa_password_h_vs_0_zoomed.png
Normal file
BIN
A1/tp-spa/img/spa_password_h_vs_0_zoomed.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 75 KiB |
BIN
A1/tp-spa/img/spa_password_list_char1.png
Normal file
BIN
A1/tp-spa/img/spa_password_list_char1.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 84 KiB |
101
A1/tp-spa/passwdcheck.c
Normal file
101
A1/tp-spa/passwdcheck.c
Normal file
|
@ -0,0 +1,101 @@
|
|||
/*
|
||||
This file is part of the ChipWhisperer Example Targets
|
||||
Copyright (C) 2012-2015 NewAE Technology Inc.
|
||||
|
||||
This program is free software: you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License as published by
|
||||
the Free Software Foundation, either version 3 of the License, or
|
||||
(at your option) any later version.
|
||||
|
||||
This program is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
#include "hal.h"
|
||||
#include <stdint.h>
|
||||
#include <stdlib.h>
|
||||
#include <stdio.h>
|
||||
|
||||
#define BUFLEN 64
|
||||
|
||||
static void delay_2_ms(void);
|
||||
|
||||
void my_puts(char *c)
|
||||
{
|
||||
do {
|
||||
putch(*c);
|
||||
|
||||
} while (*++c);
|
||||
}
|
||||
|
||||
static void delay_2_ms()
|
||||
{
|
||||
for (volatile unsigned int i=0; i < 0xfff; i++ ){
|
||||
;
|
||||
}
|
||||
}
|
||||
|
||||
void my_read(char *buf, int len)
|
||||
{
|
||||
for(int i = 0; i < len; i++) {
|
||||
while (buf[i] = getch(), buf[i] == '\0');
|
||||
|
||||
if (buf[i] == '\n') {
|
||||
buf[i] = '\0';
|
||||
return;
|
||||
}
|
||||
}
|
||||
buf[len - 1] = '\0';
|
||||
}
|
||||
|
||||
int main(void)
|
||||
{
|
||||
platform_init();
|
||||
init_uart();
|
||||
|
||||
char passwd[32];
|
||||
char correct_passwd[] = "xxxxx";
|
||||
|
||||
while(1){
|
||||
|
||||
my_puts("*****Safe-o-matic 3000 Booting...\n");
|
||||
|
||||
//Give them one last warning
|
||||
my_puts("WARNING: UNAUTHORIZED ACCESS WILL BE PUNISHED\n");
|
||||
|
||||
//Get password
|
||||
my_puts("Please enter password to continue: ");
|
||||
my_read(passwd, 32);
|
||||
|
||||
uint8_t passbad = 0;
|
||||
for(uint8_t i = 0; i < sizeof(correct_passwd); i++){
|
||||
if (correct_passwd[i] != passwd[i]){
|
||||
passbad = 1;
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
if (passbad){
|
||||
delay_2_ms();
|
||||
delay_2_ms();
|
||||
my_puts("Wrong password. Access denied!\n");
|
||||
my_puts("\n");
|
||||
led_error(1);
|
||||
} else {
|
||||
my_puts("Access granted, welcome!\n");
|
||||
led_ok(1);
|
||||
}
|
||||
|
||||
//All done;
|
||||
while(1);
|
||||
}
|
||||
|
||||
return 1;
|
||||
}
|
||||
|
||||
|
8
A1/tp-spa/requirements.txt
Normal file
8
A1/tp-spa/requirements.txt
Normal file
|
@ -0,0 +1,8 @@
|
|||
ipython
|
||||
jupyter_client
|
||||
jupyter
|
||||
jupyter_contrib_nbextensions
|
||||
nbparameterise
|
||||
matplotlib
|
||||
numpy
|
||||
|
87
A1/tp-spa/scripts/Setup_CW308_87C51.ipynb
Normal file
87
A1/tp-spa/scripts/Setup_CW308_87C51.ipynb
Normal file
|
@ -0,0 +1,87 @@
|
|||
{
|
||||
"cells": [
|
||||
{
|
||||
"cell_type": "code",
|
||||
"execution_count": null,
|
||||
"metadata": {},
|
||||
"outputs": [],
|
||||
"source": [
|
||||
"import chipwhisperer as cw\n",
|
||||
"\n",
|
||||
"try:\n",
|
||||
" if not scope.connectStatus:\n",
|
||||
" scope.con()\n",
|
||||
"except NameError:\n",
|
||||
" scope = cw.scope()\n",
|
||||
"\n",
|
||||
"try:\n",
|
||||
" if SS_VER == \"SS_VER_2_1\":\n",
|
||||
" target_type = cw.targets.SimpleSerial2\n",
|
||||
" elif SS_VER == \"SS_VER_2_0\":\n",
|
||||
" raise OSError(\"SS_VER_2_0 is deprecated. Use SS_VER_2_1\")\n",
|
||||
" else:\n",
|
||||
" target_type = cw.targets.SimpleSerial\n",
|
||||
"except:\n",
|
||||
" SS_VER=\"SS_VER_1_1\"\n",
|
||||
" target_type = cw.targets.SimpleSerial\n",
|
||||
"\n",
|
||||
"try:\n",
|
||||
" target = cw.target(scope, target_type)\n",
|
||||
"except:\n",
|
||||
" print(\"INFO: Caught exception on reconnecting to target - attempting to reconnect to scope first.\")\n",
|
||||
" print(\"INFO: This is a work-around when USB has died without Python knowing. Ignore errors above this line.\")\n",
|
||||
" scope = cw.scope()\n",
|
||||
" target = cw.target(scope, target_type)\n",
|
||||
"\n",
|
||||
"\n",
|
||||
"print(\"INFO: Found ChipWhisperer😍\")"
|
||||
]
|
||||
},
|
||||
{
|
||||
"cell_type": "code",
|
||||
"execution_count": null,
|
||||
"metadata": {},
|
||||
"outputs": [],
|
||||
"source": [
|
||||
"scope.default_seutp()\n",
|
||||
"target.baud = 4800\n",
|
||||
"#Reset chip - this is NEEDED for device to start.\n",
|
||||
"#Also you can reset it \n",
|
||||
"def reset_target(scope):\n",
|
||||
" scope.io.tio3 = False\n",
|
||||
" time.sleep(0.05)\n",
|
||||
" scope.io.tio3 = True\n",
|
||||
" time.sleep(0.05)\n",
|
||||
" scope.io.tio3 = False\n",
|
||||
" \n",
|
||||
"reset_target(scope)\n",
|
||||
"\n",
|
||||
"print(\"**************************************************************\")\n",
|
||||
"print(\"Use jumpers on H1/H3/H5 to select application. \")\n",
|
||||
"print(\"Default should work by opening terminal & see testing printed.\")\n",
|
||||
"print(\"Call reset_8751() to reset target (needed when changing jumpers\")"
|
||||
]
|
||||
}
|
||||
],
|
||||
"metadata": {
|
||||
"kernelspec": {
|
||||
"display_name": "Python 3",
|
||||
"language": "python",
|
||||
"name": "python3"
|
||||
},
|
||||
"language_info": {
|
||||
"codemirror_mode": {
|
||||
"name": "ipython",
|
||||
"version": 3
|
||||
},
|
||||
"file_extension": ".py",
|
||||
"mimetype": "text/x-python",
|
||||
"name": "python",
|
||||
"nbconvert_exporter": "python",
|
||||
"pygments_lexer": "ipython3",
|
||||
"version": "3.9.5"
|
||||
}
|
||||
},
|
||||
"nbformat": 4,
|
||||
"nbformat_minor": 2
|
||||
}
|
94
A1/tp-spa/scripts/Setup_CW308_CEC1702.ipynb
Normal file
94
A1/tp-spa/scripts/Setup_CW308_CEC1702.ipynb
Normal file
|
@ -0,0 +1,94 @@
|
|||
{
|
||||
"cells": [
|
||||
{
|
||||
"cell_type": "code",
|
||||
"execution_count": null,
|
||||
"metadata": {},
|
||||
"outputs": [],
|
||||
"source": [
|
||||
"import chipwhisperer as cw\n",
|
||||
"\n",
|
||||
"try:\n",
|
||||
" if not scope.connectStatus:\n",
|
||||
" scope.con()\n",
|
||||
"except NameError:\n",
|
||||
" scope = cw.scope()\n",
|
||||
"\n",
|
||||
"try:\n",
|
||||
" if SS_VER == \"SS_VER_2_1\":\n",
|
||||
" target_type = cw.targets.SimpleSerial2\n",
|
||||
" elif SS_VER == \"SS_VER_2_0\":\n",
|
||||
" raise OSError(\"SS_VER_2_0 is deprecated. Use SS_VER_2_1\")\n",
|
||||
" else:\n",
|
||||
" target_type = cw.targets.SimpleSerial\n",
|
||||
"except:\n",
|
||||
" SS_VER=\"SS_VER_1_1\"\n",
|
||||
" target_type = cw.targets.SimpleSerial\n",
|
||||
"\n",
|
||||
"try:\n",
|
||||
" target = cw.target(scope, target_type)\n",
|
||||
"except:\n",
|
||||
" print(\"INFO: Caught exception on reconnecting to target - attempting to reconnect to scope first.\")\n",
|
||||
" print(\"INFO: This is a work-around when USB has died without Python knowing. Ignore errors above this line.\")\n",
|
||||
" scope = cw.scope()\n",
|
||||
" target = cw.target(scope, target_type)\n",
|
||||
"\n",
|
||||
"\n",
|
||||
"print(\"INFO: Found ChipWhisperer😍\")"
|
||||
]
|
||||
},
|
||||
{
|
||||
"cell_type": "code",
|
||||
"execution_count": null,
|
||||
"metadata": {},
|
||||
"outputs": [],
|
||||
"source": [
|
||||
"print (\"***********************************************\")\n",
|
||||
"print (\"1. Ensure J3 on UFO Board routines CLKFB to HS1/IN\")\n",
|
||||
"\n",
|
||||
"scope.gain.gain = 40\n",
|
||||
"scope.gain.mode = \"high\"\n",
|
||||
"scope.adc.samples = 400\n",
|
||||
"scope.adc.offset = 0\n",
|
||||
"scope.adc.basic_mode = \"rising_edge\"\n",
|
||||
"scope.clock.clkgen_src = \"extclk\"\n",
|
||||
"scope.clock.clkgen_mul = 8\n",
|
||||
"scope.clock.clkgen_div = 2\n",
|
||||
"scope.clock.adc_src = \"clkgen_x1\"\n",
|
||||
"scope.trigger.triggers = \"tio4\"\n",
|
||||
"scope.io.tio1 = \"serial_rx\"\n",
|
||||
"scope.io.tio2 = \"serial_tx\"\n",
|
||||
"scope.io.hs2 = None\n",
|
||||
"\n",
|
||||
"ext_freq = scope.clock.freq_ctr\n",
|
||||
"print(\"Input frequency of %d Hz\" % ext_freq)\n",
|
||||
"\n",
|
||||
"if ext_freq > 11850000 and ext_freq < 12150000:\n",
|
||||
" print(\"CLK frequency in expected range.\")\n",
|
||||
"else:\n",
|
||||
" print(\"WARNING: CLK frequency outside of expected range.\")"
|
||||
]
|
||||
}
|
||||
],
|
||||
"metadata": {
|
||||
"kernelspec": {
|
||||
"display_name": "Python 3",
|
||||
"language": "python",
|
||||
"name": "python3"
|
||||
},
|
||||
"language_info": {
|
||||
"codemirror_mode": {
|
||||
"name": "ipython",
|
||||
"version": 3
|
||||
},
|
||||
"file_extension": ".py",
|
||||
"mimetype": "text/x-python",
|
||||
"name": "python",
|
||||
"nbconvert_exporter": "python",
|
||||
"pygments_lexer": "ipython3",
|
||||
"version": "3.9.5"
|
||||
}
|
||||
},
|
||||
"nbformat": 4,
|
||||
"nbformat_minor": 2
|
||||
}
|
106
A1/tp-spa/scripts/Setup_CW308_D2000.ipynb
Normal file
106
A1/tp-spa/scripts/Setup_CW308_D2000.ipynb
Normal file
|
@ -0,0 +1,106 @@
|
|||
{
|
||||
"cells": [
|
||||
{
|
||||
"cell_type": "code",
|
||||
"execution_count": null,
|
||||
"metadata": {},
|
||||
"outputs": [],
|
||||
"source": [
|
||||
"import chipwhisperer as cw\n",
|
||||
"\n",
|
||||
"try:\n",
|
||||
" if not scope.connectStatus:\n",
|
||||
" scope.con()\n",
|
||||
"except NameError:\n",
|
||||
" scope = cw.scope()\n",
|
||||
"\n",
|
||||
"try:\n",
|
||||
" if SS_VER == \"SS_VER_2_1\":\n",
|
||||
" target_type = cw.targets.SimpleSerial2\n",
|
||||
" elif SS_VER == \"SS_VER_2_0\":\n",
|
||||
" raise OSError(\"SS_VER_2_0 is deprecated. Use SS_VER_2_1\")\n",
|
||||
" else:\n",
|
||||
" target_type = cw.targets.SimpleSerial\n",
|
||||
"except:\n",
|
||||
" SS_VER=\"SS_VER_1_1\"\n",
|
||||
" target_type = cw.targets.SimpleSerial\n",
|
||||
"\n",
|
||||
"try:\n",
|
||||
" target = cw.target(scope, target_type)\n",
|
||||
"except:\n",
|
||||
" print(\"INFO: Caught exception on reconnecting to target - attempting to reconnect to scope first.\")\n",
|
||||
" print(\"INFO: This is a work-around when USB has died without Python knowing. Ignore errors above this line.\")\n",
|
||||
" scope = cw.scope()\n",
|
||||
" target = cw.target(scope, target_type)\n",
|
||||
"\n",
|
||||
"\n",
|
||||
"print(\"INFO: Found ChipWhisperer😍\")"
|
||||
]
|
||||
},
|
||||
{
|
||||
"cell_type": "code",
|
||||
"execution_count": null,
|
||||
"metadata": {},
|
||||
"outputs": [],
|
||||
"source": [
|
||||
"print(\"***********************************************\")\n",
|
||||
"print(\"1. Ensure J3 on UFO Board routines CLKFB to HS1/IN\")\n",
|
||||
"print (\"2. Confirm baud settings\")\n",
|
||||
" \n",
|
||||
"scope.gain.gain = 45\n",
|
||||
"scope.adc.samples = 25000\n",
|
||||
"scope.adc.offset = 0\n",
|
||||
"scope.adc.basic_mode = \"rising_edge\"\n",
|
||||
"scope.clock.clkgen_freq = 7370000\n",
|
||||
"scope.clock.adc_src = \"extclk_x1\"\n",
|
||||
"scope.trigger.triggers = \"tio4\"\n",
|
||||
"#TX/RX backwards from XMEGA\n",
|
||||
"scope.io.tio1 = \"serial_tx\"\n",
|
||||
"scope.io.tio2 = \"serial_rx\"\n",
|
||||
"scope.io.hs2 = None\n",
|
||||
"\n",
|
||||
"#Sample delay - you may need to increase this!\n",
|
||||
"time.sleep(0.5)\n",
|
||||
"\n",
|
||||
"ext_freq = scope.clock.freq_ctr\n",
|
||||
"\n",
|
||||
"if ext_freq > 10:\n",
|
||||
"\n",
|
||||
" baud = int((115200 / 32E6) * ext_freq)\n",
|
||||
" print(\"Based on extclk of %d Hz, setting baud to %d\" % (ext_freq, baud))\n",
|
||||
" target.baud = baud\n",
|
||||
" \n",
|
||||
"else:\n",
|
||||
" raise IOError(\"Did not detect external clock from D2000. Confirm jumpers and rerun, or increase delay before sample.\")"
|
||||
]
|
||||
},
|
||||
{
|
||||
"cell_type": "code",
|
||||
"execution_count": null,
|
||||
"metadata": {},
|
||||
"outputs": [],
|
||||
"source": []
|
||||
}
|
||||
],
|
||||
"metadata": {
|
||||
"kernelspec": {
|
||||
"display_name": "Python 3",
|
||||
"language": "python",
|
||||
"name": "python3"
|
||||
},
|
||||
"language_info": {
|
||||
"codemirror_mode": {
|
||||
"name": "ipython",
|
||||
"version": 3
|
||||
},
|
||||
"file_extension": ".py",
|
||||
"mimetype": "text/x-python",
|
||||
"name": "python",
|
||||
"nbconvert_exporter": "python",
|
||||
"pygments_lexer": "ipython3",
|
||||
"version": "3.9.5"
|
||||
}
|
||||
},
|
||||
"nbformat": 4,
|
||||
"nbformat_minor": 2
|
||||
}
|
112
A1/tp-spa/scripts/Setup_CW308_ESP32.ipynb
Normal file
112
A1/tp-spa/scripts/Setup_CW308_ESP32.ipynb
Normal file
|
@ -0,0 +1,112 @@
|
|||
{
|
||||
"cells": [
|
||||
{
|
||||
"cell_type": "code",
|
||||
"execution_count": null,
|
||||
"metadata": {},
|
||||
"outputs": [],
|
||||
"source": [
|
||||
"import chipwhisperer as cw\n",
|
||||
"\n",
|
||||
"try:\n",
|
||||
" if not scope.connectStatus:\n",
|
||||
" scope.con()\n",
|
||||
"except NameError:\n",
|
||||
" scope = cw.scope()\n",
|
||||
"\n",
|
||||
"try:\n",
|
||||
" if SS_VER == \"SS_VER_2_1\":\n",
|
||||
" target_type = cw.targets.SimpleSerial2\n",
|
||||
" elif SS_VER == \"SS_VER_2_0\":\n",
|
||||
" raise OSError(\"SS_VER_2_0 is deprecated. Use SS_VER_2_1\")\n",
|
||||
" else:\n",
|
||||
" target_type = cw.targets.SimpleSerial\n",
|
||||
"except:\n",
|
||||
" SS_VER=\"SS_VER_1_1\"\n",
|
||||
" target_type = cw.targets.SimpleSerial\n",
|
||||
"\n",
|
||||
"try:\n",
|
||||
" target = cw.target(scope, target_type)\n",
|
||||
"except:\n",
|
||||
" print(\"INFO: Caught exception on reconnecting to target - attempting to reconnect to scope first.\")\n",
|
||||
" print(\"INFO: This is a work-around when USB has died without Python knowing. Ignore errors above this line.\")\n",
|
||||
" scope = cw.scope()\n",
|
||||
" target = cw.target(scope, target_type)\n",
|
||||
"\n",
|
||||
"\n",
|
||||
"print(\"INFO: Found ChipWhisperer😍\")"
|
||||
]
|
||||
},
|
||||
{
|
||||
"cell_type": "code",
|
||||
"execution_count": null,
|
||||
"metadata": {},
|
||||
"outputs": [],
|
||||
"source": [
|
||||
"scope.gain.gain = 55\n",
|
||||
"scope.gain.mode = 'high'\n",
|
||||
"scope.adc.samples = 5000\n",
|
||||
"scope.adc.offset = 0\n",
|
||||
"scope.adc.basic_mode = \"rising_edge\"\n",
|
||||
"scope.clock.clkgen_freq = 7372800\n",
|
||||
"scope.clock.adc_src = \"clkgen_x4\"\n",
|
||||
"scope.clock.adc_phase = 128\n",
|
||||
"scope.trigger.triggers = \"tio4\"\n",
|
||||
"scope.io.tio1 = \"serial_rx\"\n",
|
||||
"scope.io.tio2 = \"serial_tx\"\n",
|
||||
"scope.io.tio3 = True #Run condition\n",
|
||||
"scope.io.pdic = False #SPI forwarding off\n",
|
||||
"scope.io.hs2 = \"clkgen\"\n",
|
||||
"\n",
|
||||
"target.baud = 38400\n",
|
||||
"\n",
|
||||
"print(\"\\n***ESP 32 Target Usage Notes***\")\n",
|
||||
"print(\" Call set_bootloader to enter BOOTLOADER so external USB-Serial cable will work.\")\n",
|
||||
"print(\" Call set_run to enter RUN mode.\")\n",
|
||||
"print(\" Jumper TDI to GND to disable boot-up messages (reduce noise if looking at boot decryption).\")\n",
|
||||
"\n",
|
||||
"\n",
|
||||
"def set_bootloader():\n",
|
||||
" scope.io.tio3 = False\n",
|
||||
" scope.io.tio1 = None\n",
|
||||
" scope.io.tio2 = None\n",
|
||||
" \n",
|
||||
" #Toggle reset\n",
|
||||
" scope.io.nrst = False\n",
|
||||
" time.sleep(0.05)\n",
|
||||
" scope.io.nrst = None #Pulls high by default\n",
|
||||
"\n",
|
||||
"def set_run():\n",
|
||||
" scope.io.tio3 = True\n",
|
||||
" scope.io.tio1 = \"serial_rx\"\n",
|
||||
" scope.io.tio2 = \"serial_tx\"\n",
|
||||
" \n",
|
||||
" #Toggle reset\n",
|
||||
" scope.io.nrst = False\n",
|
||||
" time.sleep(0.05)\n",
|
||||
" scope.io.nrst = None #Pulls high by default"
|
||||
]
|
||||
}
|
||||
],
|
||||
"metadata": {
|
||||
"kernelspec": {
|
||||
"display_name": "Python 3",
|
||||
"language": "python",
|
||||
"name": "python3"
|
||||
},
|
||||
"language_info": {
|
||||
"codemirror_mode": {
|
||||
"name": "ipython",
|
||||
"version": 3
|
||||
},
|
||||
"file_extension": ".py",
|
||||
"mimetype": "text/x-python",
|
||||
"name": "python",
|
||||
"nbconvert_exporter": "python",
|
||||
"pygments_lexer": "ipython3",
|
||||
"version": "3.9.5"
|
||||
}
|
||||
},
|
||||
"nbformat": 4,
|
||||
"nbformat_minor": 2
|
||||
}
|
84
A1/tp-spa/scripts/Setup_CW308_MPC5748G.ipynb
Normal file
84
A1/tp-spa/scripts/Setup_CW308_MPC5748G.ipynb
Normal file
|
@ -0,0 +1,84 @@
|
|||
{
|
||||
"cells": [
|
||||
{
|
||||
"cell_type": "code",
|
||||
"execution_count": null,
|
||||
"metadata": {},
|
||||
"outputs": [],
|
||||
"source": [
|
||||
"import chipwhisperer as cw\n",
|
||||
"\n",
|
||||
"try:\n",
|
||||
" if not scope.connectStatus:\n",
|
||||
" scope.con()\n",
|
||||
"except NameError:\n",
|
||||
" scope = cw.scope()\n",
|
||||
"\n",
|
||||
"try:\n",
|
||||
" if SS_VER == \"SS_VER_2_1\":\n",
|
||||
" target_type = cw.targets.SimpleSerial2\n",
|
||||
" elif SS_VER == \"SS_VER_2_0\":\n",
|
||||
" raise OSError(\"SS_VER_2_0 is deprecated. Use SS_VER_2_1\")\n",
|
||||
" else:\n",
|
||||
" target_type = cw.targets.SimpleSerial\n",
|
||||
"except:\n",
|
||||
" SS_VER=\"SS_VER_1_1\"\n",
|
||||
" target_type = cw.targets.SimpleSerial\n",
|
||||
"\n",
|
||||
"try:\n",
|
||||
" target = cw.target(scope, target_type)\n",
|
||||
"except:\n",
|
||||
" print(\"INFO: Caught exception on reconnecting to target - attempting to reconnect to scope first.\")\n",
|
||||
" print(\"INFO: This is a work-around when USB has died without Python knowing. Ignore errors above this line.\")\n",
|
||||
" scope = cw.scope()\n",
|
||||
" target = cw.target(scope, target_type)\n",
|
||||
"\n",
|
||||
"\n",
|
||||
"print(\"INFO: Found ChipWhisperer😍\")"
|
||||
]
|
||||
},
|
||||
{
|
||||
"cell_type": "code",
|
||||
"execution_count": null,
|
||||
"metadata": {},
|
||||
"outputs": [],
|
||||
"source": [
|
||||
"scope.gain.gain = 45\n",
|
||||
"scope.adc.samples = 5000\n",
|
||||
"scope.adc.offset = 0\n",
|
||||
"scope.adc.basic_mode = \"rising_edge\"\n",
|
||||
"scope.clock.clkgen_freq = 16000000\n",
|
||||
"scope.clock.adc_src = \"clkgen_x4\"\n",
|
||||
"scope.trigger.triggers = \"tio4\"\n",
|
||||
"scope.io.tio1 = \"serial_rx\"\n",
|
||||
"scope.io.tio2 = \"serial_tx\"\n",
|
||||
"scope.io.hs2 = \"clkgen\"\n",
|
||||
"\n",
|
||||
"target.baud = 38400\n",
|
||||
"\n",
|
||||
"print(\"Ensure CW308 Board has +5.0V power supply\")"
|
||||
]
|
||||
}
|
||||
],
|
||||
"metadata": {
|
||||
"kernelspec": {
|
||||
"display_name": "Python 3",
|
||||
"language": "python",
|
||||
"name": "python3"
|
||||
},
|
||||
"language_info": {
|
||||
"codemirror_mode": {
|
||||
"name": "ipython",
|
||||
"version": 3
|
||||
},
|
||||
"file_extension": ".py",
|
||||
"mimetype": "text/x-python",
|
||||
"name": "python",
|
||||
"nbconvert_exporter": "python",
|
||||
"pygments_lexer": "ipython3",
|
||||
"version": "3.9.5"
|
||||
}
|
||||
},
|
||||
"nbformat": 4,
|
||||
"nbformat_minor": 2
|
||||
}
|
104
A1/tp-spa/scripts/Setup_Generic.ipynb
Normal file
104
A1/tp-spa/scripts/Setup_Generic.ipynb
Normal file
|
@ -0,0 +1,104 @@
|
|||
{
|
||||
"cells": [
|
||||
{
|
||||
"cell_type": "code",
|
||||
"execution_count": null,
|
||||
"metadata": {},
|
||||
"outputs": [],
|
||||
"source": [
|
||||
"import chipwhisperer as cw\n",
|
||||
"\n",
|
||||
"try:\n",
|
||||
" if not scope.connectStatus:\n",
|
||||
" scope.con()\n",
|
||||
"except NameError:\n",
|
||||
" scope = cw.scope()\n",
|
||||
"\n",
|
||||
"try:\n",
|
||||
" if SS_VER == \"SS_VER_2_1\":\n",
|
||||
" target_type = cw.targets.SimpleSerial2\n",
|
||||
" elif SS_VER == \"SS_VER_2_0\":\n",
|
||||
" raise OSError(\"SS_VER_2_0 is deprecated. Use SS_VER_2_1\")\n",
|
||||
" else:\n",
|
||||
" target_type = cw.targets.SimpleSerial\n",
|
||||
"except:\n",
|
||||
" SS_VER=\"SS_VER_1_1\"\n",
|
||||
" target_type = cw.targets.SimpleSerial\n",
|
||||
"\n",
|
||||
"try:\n",
|
||||
" target = cw.target(scope, target_type)\n",
|
||||
"except:\n",
|
||||
" print(\"INFO: Caught exception on reconnecting to target - attempting to reconnect to scope first.\")\n",
|
||||
" print(\"INFO: This is a work-around when USB has died without Python knowing. Ignore errors above this line.\")\n",
|
||||
" scope = cw.scope()\n",
|
||||
" target = cw.target(scope, target_type)\n",
|
||||
"\n",
|
||||
"\n",
|
||||
"print(\"INFO: Found ChipWhisperer😍\")"
|
||||
]
|
||||
},
|
||||
{
|
||||
"cell_type": "code",
|
||||
"execution_count": null,
|
||||
"metadata": {},
|
||||
"outputs": [],
|
||||
"source": [
|
||||
"if \"STM\" in PLATFORM or PLATFORM == \"CWLITEARM\" or PLATFORM == \"CWNANO\":\n",
|
||||
" prog = cw.programmers.STM32FProgrammer\n",
|
||||
"elif PLATFORM == \"CW303\" or PLATFORM == \"CWLITEXMEGA\":\n",
|
||||
" prog = cw.programmers.XMEGAProgrammer\n",
|
||||
"elif \"neorv32\" in PLATFORM.lower():\n",
|
||||
" prog = cw.programmers.NEORV32Programmer\n",
|
||||
"elif PLATFORM == \"CW308_SAM4S\":\n",
|
||||
" prog = cw.programmers.SAM4SProgrammer\n",
|
||||
"else:\n",
|
||||
" prog = None"
|
||||
]
|
||||
},
|
||||
{
|
||||
"cell_type": "code",
|
||||
"execution_count": null,
|
||||
"metadata": {},
|
||||
"outputs": [],
|
||||
"source": [
|
||||
"import time\n",
|
||||
"time.sleep(0.05)\n",
|
||||
"scope.default_setup()\n",
|
||||
"def reset_target(scope):\n",
|
||||
" if PLATFORM == \"CW303\" or PLATFORM == \"CWLITEXMEGA\":\n",
|
||||
" scope.io.pdic = 'low'\n",
|
||||
" time.sleep(0.1)\n",
|
||||
" scope.io.pdic = 'high_z' #XMEGA doesn't like pdic driven high\n",
|
||||
" time.sleep(0.1) #xmega needs more startup time\n",
|
||||
" elif \"neorv32\" in PLATFORM.lower():\n",
|
||||
" raise IOError(\"Default iCE40 neorv32 build does not have external reset - reprogram device to reset\")\n",
|
||||
" else: \n",
|
||||
" scope.io.nrst = 'low'\n",
|
||||
" time.sleep(0.05)\n",
|
||||
" scope.io.nrst = 'high_z'\n",
|
||||
" time.sleep(0.05)"
|
||||
]
|
||||
}
|
||||
],
|
||||
"metadata": {
|
||||
"kernelspec": {
|
||||
"display_name": "Python 3 (ipykernel)",
|
||||
"language": "python",
|
||||
"name": "python3"
|
||||
},
|
||||
"language_info": {
|
||||
"codemirror_mode": {
|
||||
"name": "ipython",
|
||||
"version": 3
|
||||
},
|
||||
"file_extension": ".py",
|
||||
"mimetype": "text/x-python",
|
||||
"name": "python",
|
||||
"nbconvert_exporter": "python",
|
||||
"pygments_lexer": "ipython3",
|
||||
"version": "3.10.5"
|
||||
}
|
||||
},
|
||||
"nbformat": 4,
|
||||
"nbformat_minor": 4
|
||||
}
|
80
A1/tp-spa/scripts/Setup_Notduino.ipynb
Normal file
80
A1/tp-spa/scripts/Setup_Notduino.ipynb
Normal file
|
@ -0,0 +1,80 @@
|
|||
{
|
||||
"cells": [
|
||||
{
|
||||
"cell_type": "code",
|
||||
"execution_count": null,
|
||||
"metadata": {},
|
||||
"outputs": [],
|
||||
"source": [
|
||||
"import chipwhisperer as cw\n",
|
||||
"\n",
|
||||
"try:\n",
|
||||
" if not scope.connectStatus:\n",
|
||||
" scope.con()\n",
|
||||
"except NameError:\n",
|
||||
" scope = cw.scope()\n",
|
||||
"\n",
|
||||
"try:\n",
|
||||
" if SS_VER == \"SS_VER_2_1\":\n",
|
||||
" target_type = cw.targets.SimpleSerial2\n",
|
||||
" elif SS_VER == \"SS_VER_2_0\":\n",
|
||||
" raise OSError(\"SS_VER_2_0 is deprecated. Use SS_VER_2_1\")\n",
|
||||
" else:\n",
|
||||
" target_type = cw.targets.SimpleSerial\n",
|
||||
"except:\n",
|
||||
" SS_VER=\"SS_VER_1_1\"\n",
|
||||
" target_type = cw.targets.SimpleSerial\n",
|
||||
"\n",
|
||||
"try:\n",
|
||||
" target = cw.target(scope, target_type)\n",
|
||||
"except:\n",
|
||||
" print(\"INFO: Caught exception on reconnecting to target - attempting to reconnect to scope first.\")\n",
|
||||
" print(\"INFO: This is a work-around when USB has died without Python knowing. Ignore errors above this line.\")\n",
|
||||
" scope = cw.scope()\n",
|
||||
" target = cw.target(scope, target_type)\n",
|
||||
"\n",
|
||||
"\n",
|
||||
"print(\"INFO: Found ChipWhisperer😍\")"
|
||||
]
|
||||
},
|
||||
{
|
||||
"cell_type": "code",
|
||||
"execution_count": null,
|
||||
"metadata": {},
|
||||
"outputs": [],
|
||||
"source": [
|
||||
"scope.gain.gain = 45\n",
|
||||
"scope.adc.samples = 3000\n",
|
||||
"scope.adc.offset = 1250\n",
|
||||
"scope.adc.basic_mode = \"rising_edge\"\n",
|
||||
"scope.clock.clkgen_freq = 7370000\n",
|
||||
"scope.clock.adc_src = \"clkgen_x4\"\n",
|
||||
"scope.trigger.triggers = \"tio4\"\n",
|
||||
"scope.io.tio1 = \"serial_tx\"\n",
|
||||
"scope.io.tio2 = \"serial_rx\"\n",
|
||||
"scope.io.hs2 = \"clkgen\""
|
||||
]
|
||||
}
|
||||
],
|
||||
"metadata": {
|
||||
"kernelspec": {
|
||||
"display_name": "Python 3",
|
||||
"language": "python",
|
||||
"name": "python3"
|
||||
},
|
||||
"language_info": {
|
||||
"codemirror_mode": {
|
||||
"name": "ipython",
|
||||
"version": 3
|
||||
},
|
||||
"file_extension": ".py",
|
||||
"mimetype": "text/x-python",
|
||||
"name": "python",
|
||||
"nbconvert_exporter": "python",
|
||||
"pygments_lexer": "ipython3",
|
||||
"version": "3.9.5"
|
||||
}
|
||||
},
|
||||
"nbformat": 4,
|
||||
"nbformat_minor": 2
|
||||
}
|
BIN
A1/tp-spa/traces/lab2_1b_passwords_full.p
Normal file
BIN
A1/tp-spa/traces/lab2_1b_passwords_full.p
Normal file
Binary file not shown.
109
A1/tp-spa/traces/password_hw.ipynb
Normal file
109
A1/tp-spa/traces/password_hw.ipynb
Normal file
|
@ -0,0 +1,109 @@
|
|||
{
|
||||
"cells": [
|
||||
{
|
||||
"cell_type": "code",
|
||||
"execution_count": null,
|
||||
"metadata": {},
|
||||
"outputs": [],
|
||||
"source": [
|
||||
"# Flash target\n",
|
||||
"\n",
|
||||
"import chipwhisperer as cw\n",
|
||||
"\n",
|
||||
"PLATFORM='CWNANO'\n",
|
||||
"\n",
|
||||
"try:\n",
|
||||
" %run \"scripts/Setup_Generic.ipynb\"\n",
|
||||
"except:\n",
|
||||
" %run \"../scripts/Setup_Generic.ipynb\"\n",
|
||||
"scope.adc.samples = 1000\n",
|
||||
"\n",
|
||||
"programmer = cw.programmers.STM32FProgrammer\n",
|
||||
"try:\n",
|
||||
" fw_path = 'hex/basic-passwdcheck-CWNANO.hex'\n",
|
||||
" cw.program_target(scope, programmer, fw_path)\n",
|
||||
"except FileNotFoundError:\n",
|
||||
" fw_path = '../hex/basic-passwdcheck-CWNANO.hex'\n",
|
||||
" cw.program_target(scope, programmer, fw_path)"
|
||||
]
|
||||
},
|
||||
{
|
||||
"cell_type": "code",
|
||||
"execution_count": null,
|
||||
"metadata": {},
|
||||
"outputs": [],
|
||||
"source": [
|
||||
"def serial_read():\n",
|
||||
" res = ''\n",
|
||||
" num_char = target.in_waiting()\n",
|
||||
" while num_char > 0:\n",
|
||||
" res += target.read(num_char, 10)\n",
|
||||
" time.sleep(0.01)\n",
|
||||
" num_char = target.in_waiting()\n",
|
||||
" return res"
|
||||
]
|
||||
},
|
||||
{
|
||||
"cell_type": "code",
|
||||
"execution_count": null,
|
||||
"metadata": {
|
||||
"scrolled": true
|
||||
},
|
||||
"outputs": [],
|
||||
"source": [
|
||||
"def cap_pass_trace(password):\n",
|
||||
" if not password.endswith('\\n'):\n",
|
||||
" password += '\\n'\n",
|
||||
" reset_target(scope)\n",
|
||||
" ret = serial_read()\n",
|
||||
" scope.arm()\n",
|
||||
" target.flush()\n",
|
||||
" target.write(password)\n",
|
||||
" ret = scope.capture()\n",
|
||||
" if ret:\n",
|
||||
" print('Timeout happened during acquisition') \n",
|
||||
" trace = scope.get_last_trace()\n",
|
||||
" return trace"
|
||||
]
|
||||
},
|
||||
{
|
||||
"cell_type": "code",
|
||||
"execution_count": null,
|
||||
"metadata": {},
|
||||
"outputs": [],
|
||||
"source": [
|
||||
"def pass_response(password):\n",
|
||||
" if not password.endswith('\\n'):\n",
|
||||
" password += '\\n'\n",
|
||||
" reset_target(scope)\n",
|
||||
" ret = serial_read()\n",
|
||||
" target.flush()\n",
|
||||
" target.write(password)\n",
|
||||
" time.sleep(0.1)\n",
|
||||
" res = serial_read()\n",
|
||||
" return res"
|
||||
]
|
||||
}
|
||||
],
|
||||
"metadata": {
|
||||
"kernelspec": {
|
||||
"display_name": "Python 3",
|
||||
"language": "python",
|
||||
"name": "python3"
|
||||
},
|
||||
"language_info": {
|
||||
"codemirror_mode": {
|
||||
"name": "ipython",
|
||||
"version": 3
|
||||
},
|
||||
"file_extension": ".py",
|
||||
"mimetype": "text/x-python",
|
||||
"name": "python",
|
||||
"nbconvert_exporter": "python",
|
||||
"pygments_lexer": "ipython3",
|
||||
"version": "3.9.2"
|
||||
}
|
||||
},
|
||||
"nbformat": 4,
|
||||
"nbformat_minor": 2
|
||||
}
|
82
A1/tp-spa/traces/password_sim.ipynb
Normal file
82
A1/tp-spa/traces/password_sim.ipynb
Normal file
|
@ -0,0 +1,82 @@
|
|||
{
|
||||
"cells": [
|
||||
{
|
||||
"cell_type": "code",
|
||||
"execution_count": null,
|
||||
"metadata": {},
|
||||
"outputs": [],
|
||||
"source": [
|
||||
"import pickle\n",
|
||||
"import random\n",
|
||||
"import time\n",
|
||||
"\n",
|
||||
"traces_to_load = pickle.load(open(\"traces/lab2_1b_passwords_full.p\", \"rb\"))\n",
|
||||
"known_passwd = \"h0px3\"\n",
|
||||
"\n",
|
||||
"def cap_pass_trace(pass_guess):\n",
|
||||
" global traces_to_load, known_passwd\n",
|
||||
" \n",
|
||||
" if pass_guess.endswith(\"\\n\") is False:\n",
|
||||
" raise ValueError(\"Password guess must end with \\\\n\")\n",
|
||||
" \n",
|
||||
" pass_guess = pass_guess.strip(\"\\n\")\n",
|
||||
" \n",
|
||||
" trylist = \"abcdefghijklmnopqrstuvwxyz0123456789 \\x00\"\n",
|
||||
" \n",
|
||||
" if len(pass_guess) > 5:\n",
|
||||
" raise ValueError(\"Only guesses up to 5 chars recorded, sorry about that.\")\n",
|
||||
" \n",
|
||||
" for a in pass_guess:\n",
|
||||
" if a not in trylist:\n",
|
||||
" raise ValueError(\"Part of guess (%c) not in recorded enumeration list (%s)\"%(a, trylist))\n",
|
||||
" \n",
|
||||
" #Only recorded is correct passwords\n",
|
||||
" recorded_pw = \"\"\n",
|
||||
" for i in range(0, len(pass_guess)):\n",
|
||||
" if known_passwd[i] != pass_guess[i]:\n",
|
||||
" recorded_pw += \" \"\n",
|
||||
" else:\n",
|
||||
" recorded_pw += pass_guess[i]\n",
|
||||
" \n",
|
||||
" time.sleep(0.05)\n",
|
||||
" \n",
|
||||
" return traces_to_load[recorded_pw][random.randint(0, 99)][:1000]\n",
|
||||
"\n",
|
||||
"\n",
|
||||
"def pass_response(pass_guess):\n",
|
||||
" if pass_guess.strip(\"\\n\") == known_passwd:\n",
|
||||
" return \"Access granted, welcome!\"\n",
|
||||
" else:\n",
|
||||
" return \"Wrong password. Access denied!\""
|
||||
]
|
||||
},
|
||||
{
|
||||
"cell_type": "code",
|
||||
"execution_count": null,
|
||||
"metadata": {},
|
||||
"outputs": [],
|
||||
"source": []
|
||||
}
|
||||
],
|
||||
"metadata": {
|
||||
"kernelspec": {
|
||||
"display_name": "Python 3",
|
||||
"language": "python",
|
||||
"name": "python3"
|
||||
},
|
||||
"language_info": {
|
||||
"codemirror_mode": {
|
||||
"name": "ipython",
|
||||
"version": 3
|
||||
},
|
||||
"file_extension": ".py",
|
||||
"mimetype": "text/x-python",
|
||||
"name": "python",
|
||||
"nbconvert_exporter": "python",
|
||||
"pygments_lexer": "ipython3",
|
||||
"version": "3.9.2"
|
||||
}
|
||||
},
|
||||
"nbformat": 4,
|
||||
"nbformat_minor": 2
|
||||
}
|
Loading…
Reference in a new issue