Поддерживать
www.wikidata.ru-ru.nina.az
Ne sleduet putat s SIMD SIMD iterativnaya kriptograficheskaya hesh funkciya razrabotannaya Gaetan Leurent Charles Bouillaguet Pierre Alain Fouque Byla vydvinuta kak kandidat na konkurs standarta SHA 3 provodimyj Nacionalnym institutom standartov i tehnologij SShA gde proshla vo vtoroj raund SIMDSozdan 2008Opublikovan Oktyabr 2008Razmer hesha 256 ili 512 bitChislo raundov 4Tip hesh funkciya Sushestvuyut dva varianta hesh funkcii SIMD 256 i SIMD 512 preobrazuyushie soobshenie proizvolnoj dliny v 256 ili 512 bitnoe hesh znachenie nazyvaemoe takzhe dajdzhestom soobsheniya Krome togo vozmozhno opredelit hesh funkcii SIMD n kak usechenie funkcij SIMD 256 i SIMD 512 dlya n lt 256 i 256 lt n lt 512 sootvetstvennoyu Kak utverzhdayut sozdateli glavnoj osobennostyu hesh funkcii yavlyaetsya znachitelnoe rasshirenie soobsheniya kotoroe pozvolyaet zashititsya ot differencialnogo kriptoanaliza AlgoritmObshee opisanie i parametry Glavnoj chastyu hesh funkcii h yavlyaetsya funkciya szhatiya C 0 1 p 0 1 m 0 1 p displaystyle C colon 0 1 p times 0 1 m to 0 1 p Chtoby vychislit h M soobshenie M razbivaetsya na k chastej Mi displaystyle M i po m bit Zatem k chastyam soobsheniya iterativno primenyaetsya funkciya szhatiya Hi 1 C Hi Mi displaystyle H i 1 C H i M i Nachalnoe sostoyanie H0 displaystyle H 0 ili angl oboznachaetsya IV displaystyle IV i yavlyaetsya fiksirovannym dlya kazhdoj funkcii semejstva SIMD Okonchatelnyj rezultat raboty hesh funkcii poluchaetsya primeneniem finaliziruyushej funkcii finalization function D 0 1 p 0 1 n displaystyle D colon 0 1 p to 0 1 n k Hk 1 displaystyle H k 1 Funkciya szhatiya C v rezhime Devisa Mejera obychno stroitsya s ispolzovaniem funkcii blochnogo shifrovaniya Em displaystyle E m C h m Em h h displaystyle C h m E m h otimes h odnako dlya hesh funkcii SIMD ispolzuyutsya neskolko uluchshenij Semejstvo hesh funkcij SIMD ispolzuet sleduyushie parametry Razmer hesha n Razmer bloka soobsheniya m Razmer vnutrennego sostoyaniya Hi displaystyle H i pSIMD 256 256 512 512SIMD 512 512 1024 1024 Vnutrennee sostoyanie predstavleno matricej 32 bitnyh slov razmerom 4 4 dlya SIMD 256 i 8 4 dlya SIMD 512 S256 A0B0C0D0A1B1C1D1A2B2C2D2A3B3C3D3 S512 A0B0C0D0A1B1C1D1A2B2C2D2A3B3C3D3A4B4C4D4A5B5C5D5A6B6C6D6A7B7C7D7 displaystyle S 256 begin bmatrix A 0 amp B 0 amp C 0 amp D 0 A 1 amp B 1 amp C 1 amp D 1 A 2 amp B 2 amp C 2 amp D 2 A 3 amp B 3 amp C 3 amp D 3 end bmatrix qquad S 512 begin bmatrix A 0 amp B 0 amp C 0 amp D 0 A 1 amp B 1 amp C 1 amp D 1 A 2 amp B 2 amp C 2 amp D 2 A 3 amp B 3 amp C 3 amp D 3 A 4 amp B 4 amp C 4 amp D 4 A 5 amp B 5 amp C 5 amp D 5 A 6 amp B 6 amp C 6 amp D 6 A 7 amp B 7 amp C 7 amp D 7 end bmatrix Funkciya szhatiya Funkciya szhatiya SIMD postroena na osnove konstrukcii Devisa Mejera s nekotorymi izmeneniyami Vo pervyh vmesto funkcii szhatiya C h m Em h h displaystyle C h m E m h otimes h ispolzuetsya funkciya C h m Em h m h displaystyle C h m E m h otimes m otimes h Vo vtoryh vmesto operacii XOR dlya Em h m displaystyle E m h otimes m i h displaystyle h v SIMD primenyayutsya neskolko dopolnitelnyh raundov Fejstelya s h v kachestve vhodnogo klyucha Eto dejstvie vypolnyaet funkciya P 0 1 p 0 1 p 0 1 p displaystyle P colon 0 1 p times 0 1 p to 0 1 p Takim obrazom funkciya szhatiya opredelena kak C h m P h Em h m displaystyle C h m P h E m h otimes m Kak utverzhdayut avtory hesh funkcii SIMD eti modifikacii obespechivayut takoj zhe uroven bezopasnosti kak i originalnaya konstrukciya Devisa Mejera no v to zhe vremya predotvrashayut nekotorye vidy atak mnozhestvennyh blokov multi block attacks Rasshirenie soobsheniya Rasshirenie soobsheniya message expansion hesh funkcii SIMD 256 sootv SIMD 512 preobrazuet blok soobsheniya v 512 bit sootv 1024 bita v rasshirennoe soobshenie razmerom 4096 bit sootv 8192 bit s minimalnym rasstoyaniem v 520 sootv 1032 Ispolzovanie seti Fejstelya Ispolzovanie struktury Fejstelya hesh funkciej SIMD postroeno analogichno semejstvu hesh funkcij MD SHA Aj i Dj i 1 Wj i ϕi Aj i 1 Bj i 1 Cj i 1 si Api j i 1 ri displaystyle A j i left D j i 1 boxplus W j i boxplus phi i A j i 1 B j i 1 C j i 1 right lll s i boxplus A p i j i 1 lll r i Bj i Aj i 1 ri displaystyle B j i A j i 1 lll r i Cj i Bj i 1 displaystyle C j i B j i 1 Dj i Cj i 1 displaystyle D j i C j i 1 ili v bolee udobnom formate Step A0B0C0D0A1B1C1D1A2B2C2D2A3B3C3D3 W0W1W2W3 ϕ r s p D0 W0 ϕi A0 B0 C0 s Ap 0 rA0 rB0C0 D1 W1 ϕi A1 B1 C1 s Ap 1 rA1 rB1C1 D2 W2 ϕi A2 B2 C2 s Ap 2 rA2 rB2C2 D3 W3 ϕi A3 B3 C3 s Ap 3 rA3 rB3c3 displaystyle Step left begin bmatrix A 0 amp B 0 amp C 0 amp D 0 A 1 amp B 1 amp C 1 amp D 1 A 2 amp B 2 amp C 2 amp D 2 A 3 amp B 3 amp C 3 amp D 3 end bmatrix begin bmatrix W 0 W 1 W 2 W 3 end bmatrix phi r s p right begin bmatrix left D 0 boxplus W 0 boxplus phi i A 0 B 0 C 0 right lll s boxplus A p 0 lll r amp A 0 lll r amp B 0 amp C 0 left D 1 boxplus W 1 boxplus phi i A 1 B 1 C 1 right lll s boxplus A p 1 lll r amp A 1 lll r amp B 1 amp C 1 left D 2 boxplus W 2 boxplus phi i A 2 B 2 C 2 right lll s boxplus A p 2 lll r amp A 2 lll r amp B 2 amp C 2 left D 3 boxplus W 3 boxplus phi i A 3 B 3 C 3 right lll s boxplus A p 3 lll r amp A 3 lll r amp B 3 amp c 3 end bmatrix dlya SIMD 256 Step A0B0C0D0A1B1C1D1A2B2C2D2A3B3C3D3A4B4C4D4A5B5C5D5A6B6C6D6A7B7C7D7 W0W1W2W3W4W5W6W7 ϕ r s p D0 W0 ϕi A0 B0 C0 s Ap 0 rA0 rB0C0 D1 W1 ϕi A1 B1 C1 s Ap 1 rA1 rB1C1 D2 W2 ϕi A2 B2 C2 s Ap 2 rA2 rB2C2 D3 W3 ϕi A3 B3 C3 s Ap 3 rA3 rB3c3 D4 W4 ϕi A4 B4 C4 s Ap 4 rA4 rB4C4 D5 W5 ϕi A5 B5 C5 s Ap 5 rA5 rB5C5 D6 W6 ϕi A6 B6 C6 s Ap 6 rA6 rB6C6 D7 W7 ϕi A7 B7 C7 s Ap 7 rA7 rB7c7 displaystyle Step left begin bmatrix A 0 amp B 0 amp C 0 amp D 0 A 1 amp B 1 amp C 1 amp D 1 A 2 amp B 2 amp C 2 amp D 2 A 3 amp B 3 amp C 3 amp D 3 A 4 amp B 4 amp C 4 amp D 4 A 5 amp B 5 amp C 5 amp D 5 A 6 amp B 6 amp C 6 amp D 6 A 7 amp B 7 amp C 7 amp D 7 end bmatrix begin bmatrix W 0 W 1 W 2 W 3 W 4 W 5 W 6 W 7 end bmatrix phi r s p right begin bmatrix left D 0 boxplus W 0 boxplus phi i A 0 B 0 C 0 right lll s boxplus A p 0 lll r amp A 0 lll r amp B 0 amp C 0 left D 1 boxplus W 1 boxplus phi i A 1 B 1 C 1 right lll s boxplus A p 1 lll r amp A 1 lll r amp B 1 amp C 1 left D 2 boxplus W 2 boxplus phi i A 2 B 2 C 2 right lll s boxplus A p 2 lll r amp A 2 lll r amp B 2 amp C 2 left D 3 boxplus W 3 boxplus phi i A 3 B 3 C 3 right lll s boxplus A p 3 lll r amp A 3 lll r amp B 3 amp c 3 left D 4 boxplus W 4 boxplus phi i A 4 B 4 C 4 right lll s boxplus A p 4 lll r amp A 4 lll r amp B 4 amp C 4 left D 5 boxplus W 5 boxplus phi i A 5 B 5 C 5 right lll s boxplus A p 5 lll r amp A 5 lll r amp B 5 amp C 5 left D 6 boxplus W 6 boxplus phi i A 6 B 6 C 6 right lll s boxplus A p 6 lll r amp A 6 lll r amp B 6 amp C 6 left D 7 boxplus W 7 boxplus phi i A 7 B 7 C 7 right lll s boxplus A p 7 lll r amp A 7 lll r amp B 7 amp c 7 end bmatrix dlya SIMD 512 gde ϕi displaystyle phi i logicheskaya funkciya displaystyle boxplus slozhenie po modulyu 232 displaystyle 2 32 i si displaystyle lll s i ciklicheskij sdvig vlevo na si displaystyle s i bit Ispolzuyutsya 4 parallelnye yachejki Fejstelya dlya SIMD 256 sootv 8 dlya SIMD 512 kotorye vzaimodejstvuyut mezhdu soboj iz za perestanovok pi displaystyle p i Perestanovki vybirayutsya takim obrazom chtoby obespechit horoshee peremeshivanie Dlya SIMD 256 opredeleno p i x x 1 mod4 if i is evenx 2 mod4 if i is odd displaystyle p i x begin cases x 1 pmod 4 amp mbox if i mbox is even x 2 pmod 4 amp mbox if i mbox is odd end cases Sootvetstvenno dlya SIMD 512 p 0 x x 1 mod8 if x 0 mod2 x 1 mod8 otherwise displaystyle p 0 x begin cases x 1 pmod 8 amp mbox if x 0 pmod 2 x 1 pmod 8 amp mbox otherwise end cases V celom funkciya szhatiya otrabatyvaet za 4 raunda kazhdyj iz kotoryh sostoit iz 8 shagov step plyus odin dopolnitelnyj finalnyj raund Finalnaya funkciya szhatiya Posle togo kak vse bloki soobsheniya byli szhaty sovershaetsya eshe odin dopolnitelnyj vyzov funkcii szhatiya s razmerom soobsheniya v kachestve vhodnogo parametra Pri etom dlina soobsheniya vychislyaetsya v bitah po modulyu 22m displaystyle 2 2 m esli neobhodimo Dlya finalnoj funkcii szhatiya ispolzuetsya nemnogo izmenennyj metod rasshireniya soobsheniya dlya SIMD 256 vmesto O M NTT128 M X127 displaystyle O M NTT 128 M X 127 ispolzuetsya O M NTT128 M X127 X125 displaystyle O M NTT 128 M X 127 X 125 Sootvetstvenno dlya SIMD 512 vmesto O M NTT256 M X255 displaystyle O M NTT 256 M X 255 ispolzuetsya O M NTT256 M X255 X253 displaystyle O M NTT 256 M X 255 X 253 Takim obrazom diapazon rasshirennyh soobshenij dlya finalnogo etapa otlichaetsya ot diapazona rasshirennyh soobshenij blokov tela soobsheniya Posle primeneniya finalnoj funkcii szhatiya na vyhod podaetsya sleduyushee strokovoj predstavlenie A0 A1 A2 A3 B0 B1 B2 B3 displaystyle A 0 A 1 A 2 A 3 B 0 B 1 B 2 B 3 dlya SIMD 256 A0 A1 A2 A3 A4 A5 A6 A7 B0 B1 B2 B3 B4 B5 B6 B7 displaystyle A 0 A 1 A 2 A 3 A 4 A 5 A 6 A 7 B 0 B 1 B 2 B 3 B 4 B 5 B 6 B 7 dlya SIMD 512 V sluchaj SIMD n na vyhod podayutsya pervye n bit SIMD 256 n lt 256 ili SIMD 512 256 lt n lt 512 Naprimer dlya SIMD 384 na vyhode budet A0 A1 A2 A3 A4 A5 A6 A7 B0 B1 B2 B3 displaystyle A 0 A 1 A 2 A 3 A 4 A 5 A 6 A 7 B 0 B 1 B 2 B 3 Vektor inicializacii Kazhdaya hesh funkciya semejstva SIMD ispolzuet sobstvennyj vektor inicializacii IV chtoby izbezhat svyazej mezhdu vyhodnymi rezultatami razlichnyh funkcij SIMD n IV dlya funkcii SIMD n opredelyaetsya sleduyushim obrazom IV SIMD Compress 0 SIMD i v1 0 0 gde stroka zapisana v ASCII i dopolnena nulyami a i desyatichnoe predstavlenie n Znacheniya IV dlya razlichnyh hesh funkcij semejstva SIMD SIMD 224IVA0 30xeebfea740x70c303460x4b5387180x4f06a655B0 30xa22aad990x434a528c0x355e2a290x8523b76eC0 30x20bcf05e0x9eb5b91a0x4ddc22e80xce0ae099D0 30x9d4dda030xae00fc410x40279fc80x9f0ec1f5SIMD 256IVA0 30x99dae06a0xc3d432390x4979de730x3ee5d052B0 30xda4d98d00xcf5c52be0x655cbaf90x2a9d238eC0 30xfd892a600x8a471f8c0x86ce033f0x0ff768d3D0 30xfad01f140x9eeef3b30x68aec37a0x6b209d72 displaystyle begin array c c c c c hline amp amp SIMD 224IV amp amp hline A 0 3 amp 0xeebfea74 amp 0x70c30346 amp 0x4b538718 amp 0x4f06a655 B 0 3 amp 0xa22aad99 amp 0x434a528c amp 0x355e2a29 amp 0x8523b76e C 0 3 amp 0x20bcf05e amp 0x9eb5b91a amp 0x4ddc22e8 amp 0xce0ae099 D 0 3 amp 0x9d4dda03 amp 0xae00fc41 amp 0x40279fc8 amp 0x9f0ec1f5 hline end array begin array c c c c c hline amp amp SIMD 256IV amp amp hline A 0 3 amp 0x99dae06a amp 0xc3d43239 amp 0x4979de73 amp 0x3ee5d052 B 0 3 amp 0xda4d98d0 amp 0xcf5c52be amp 0x655cbaf9 amp 0x2a9d238e C 0 3 amp 0xfd892a60 amp 0x8a471f8c amp 0x86ce033f amp 0x0ff768d3 D 0 3 amp 0xfad01f14 amp 0x9eeef3b3 amp 0x68aec37a amp 0x6b209d72 hline end array SIMD 384IVA0 30x3a8f3d6f0x756a10870x5d5318aa0xbbca76f7A4 70x26a3a9590xaca1e37e0xb40c46420x904085d9B0 30xf46f6c9b0x9ab248ef0xdbbfc9cc0xcc8821faB4 70x354d3c2e0xda334fb10x68ed79ce0xa5bc107dC0 30x2da6fdc30xfbafce000x4c9a69540xb61f0fafC4 70xf56099b50xa3a5bdfb0xf83e09770x7eb15372D0 30x91195b410xfcb9404e0x214e6c840x88740b3aD4 70xba03a4b10xa82202fc0x994fddfb0xb2e1a1deSIMD 512IVA0 30xb314b8060x676cf96e0xed91a4710x5f306791A4 70x4ea515ee0xde2a06cf0xc9c968510x4f49a403B0 30xf778d95b0x6e5e21da0xad5706710x4584c064B4 70xac201a0f0xd4ce2a860xc6d663f40x8ec5d766C0 30x14c1303a0xb5b890d50x82e61e950x94f47683C4 70x6ebc9ce70xf9af5b290xf41777980xf6cec3eeD0 30xd10eca9e0xea3c1b820x5061c3190x0c2a9f5cD4 70xfcfc980e0xbab373c60x1699d7c90x0822d6af displaystyle begin array c c c c c hline amp amp SIMD 384IV amp amp hline A 0 3 amp 0x3a8f3d6f amp 0x756a1087 amp 0x5d5318aa amp 0xbbca76f7 A 4 7 amp 0x26a3a959 amp 0xaca1e37e amp 0xb40c4642 amp 0x904085d9 B 0 3 amp 0xf46f6c9b amp 0x9ab248ef amp 0xdbbfc9cc amp 0xcc8821fa B 4 7 amp 0x354d3c2e amp 0xda334fb1 amp 0x68ed79ce amp 0xa5bc107d C 0 3 amp 0x2da6fdc3 amp 0xfbafce00 amp 0x4c9a6954 amp 0xb61f0faf C 4 7 amp 0xf56099b5 amp 0xa3a5bdfb amp 0xf83e0977 amp 0x7eb15372 D 0 3 amp 0x91195b41 amp 0xfcb9404e amp 0x214e6c84 amp 0x88740b3a D 4 7 amp 0xba03a4b1 amp 0xa82202fc amp 0x994fddfb amp 0xb2e1a1de hline end array begin array c c c c c hline amp amp SIMD 512IV amp amp hline A 0 3 amp 0xb314b806 amp 0x676cf96e amp 0xed91a471 amp 0x5f306791 A 4 7 amp 0x4ea515ee amp 0xde2a06cf amp 0xc9c96851 amp 0x4f49a403 B 0 3 amp 0xf778d95b amp 0x6e5e21da amp 0xad570671 amp 0x4584c064 B 4 7 amp 0xac201a0f amp 0xd4ce2a86 amp 0xc6d663f4 amp 0x8ec5d766 C 0 3 amp 0x14c1303a amp 0xb5b890d5 amp 0x82e61e95 amp 0x94f47683 C 4 7 amp 0x6ebc9ce7 amp 0xf9af5b29 amp 0xf4177798 amp 0xf6cec3ee D 0 3 amp 0xd10eca9e amp 0xea3c1b82 amp 0x5061c319 amp 0x0c2a9f5c D 4 7 amp 0xfcfc980e amp 0xbab373c6 amp 0x1699d7c9 amp 0x0822d6af hline end array Uluchsheniya dlya vtorogo raunda konkursa SHA 3Izmeneniyam podverglis 2 chasti algoritma perestanovki permutations p i displaystyle p i i ciklicheskie sdvigi rotations Pri vybore novyh perestanovok avtory hesh funkcii rukovodstvovalis sleduyushimi kriteriyami Perestanovki dolzhny obespechivat polnoe peremeshivanie posle treh raundov sootv dvuh dlya SIMD 256 Neobhodimo ispolzovat nechetnoe chislo perestanovok Rezultat kompozicii lyubyh dvuh perestanovok ne dolzhen byt fiksirovannym Rezultat chetyreh posledovatelnyh perestanovok ne dolzhen davat ishodnyj rezultat SIMD 256 Ishodnye perestanovki p i x x 1 mod4 if i is evenx 2 mod4 if i is odd displaystyle p i x begin cases x 1 pmod 4 amp mbox if i mbox is even x 2 pmod 4 amp mbox if i mbox is odd end cases Novye perestanovki p 0 j j 1p 1 j j 2p 2 j j 3 displaystyle begin cases p 0 j j otimes 1 p 1 j j otimes 2 p 2 j j otimes 3 end cases gde p i pimod3 displaystyle p i p i mod 3 Takim obrazom kolichestvo perestanovok uvelichilos s 2 do 3 SIMD 512 Ishodnye perestanovki p 0 x x 1 mod8 if x 0 mod2 x 1 mod8 otherwise displaystyle p 0 x begin cases x 1 pmod 8 amp mbox if x 0 pmod 2 x 1 pmod 8 amp mbox otherwise end cases Novye perestanovki p 0 j j 1p 1 j j 6p 2 j j 2p 3 j j 3p 4 j j 5p 5 j j 7p 6 j j 4 displaystyle begin cases p 0 j j otimes 1 p 1 j j otimes 6 p 2 j j otimes 2 p 3 j j otimes 3 p 4 j j otimes 5 p 5 j j otimes 7 p 6 j j otimes 4 end cases gde p i pimod7 displaystyle p i p i mod 7 Takim obrazom kolichestvo perestanovok uvelichilos s 4 do 7 Psevdokod SIMD1 function MessageExpansion M f f pomechaet finalnuyu funkciyu szhatiya 2 if f 0 then 3 y i NTT M X127 sootvetstvenno X255 dlya SIMD 512 4 else 5 y i NTT M X127 X125 sootvetstvenno X255 X253 dlya SIMD 512 6 end if 7 Vychislit Z i j primenyaya vnutrennie kody I 185 i I 233 k y i 8 Vychislit W i j primenyaya perestanovki dlya Z i j 9 Vernut W i j 10 end function 11 12 function Round S i r 13 S Step S W 8i 0 IF r0 r1 14 S Step S W8i 1 IF r1 r2 15 S Step S W 8i 2 IF r2 r3 16 S Step S W 8i 3 IF r3 r0 17 S Step S W 8i 4 MAJ r0 r1 18 S Step S W 8i 5 MAJ r1 r2 19 S Step S W 8i 6 MAJ r2 r3 20 S Step S W 8i 7 MAJ r3 r0 21 return S 22 end function 23 24 function SIMD Compress IV M f 25 W MessageExpansion M f 26 S IV xor M 27 S Round S 0 3 20 14 27 28 S Round S 1 26 4 23 11 29 S Round S 2 19 28 7 22 30 S Round S 3 15 5 29 9 31 S Step S IV 0 IF 15 5 32 S Step S IV 1 IF 5 29 33 S Step S IV 2 IF 29 9 34 S Step S IV 3 IF 9 15 35 return S 36 end function 37 38 function SIMD M 39 Razdelit soobshenie M na chasti M i 0 lt i lt k 40 M k 1 dopolnyaetsya nulyami 41 S IV 42 for 0 lt i lt k do 43 S SIMD Compress S M i 0 44 end for 45 S SIMD Compress S M 1 46 return Truncate S 47 end functionPrimery rezultatovSoobshenie M SIMD 256 M Pustoe soobshenie 8029e81e7320e13ed9001dc3d8021fec695b7a25cd43ad805260181c35fcaea80x00 0x01 0x02 0x3f 5bebdb816cd3e6c8c2b5a42867a6f41570c4b917f1d3b15aabc17f24679e6acdSoobshenie M SIMD 512 M Pustoe soobshenie 51a5af7e243cd9a5989f7792c880c4c3168c3d60c4518725fe5757d1f7a69c63 66977eaba7905ce2da5d7cfd07773725f0935b55f3efb954996689a49b6d29e00x00 0x01 0x02 0x3f 8851ad0a57426b4af57af3294706c0448fa6accf24683fc239871be58ca913fb ee53e35c1dedd88016ebd131f2eb0761e97a3048de6e696787fd5f54981d6f2cBystrodejstvieNezavisimye testy proizvoditelnosti algoritma SIMD provedennye s pomoshyu benchmarka eBASH pokazali sleduyushie rezultaty skorost ukazana v ciklah na bajt cpb Processor Core i5 Core 2 45 nm Core 2 65 nm SIMD 256 7 51 cpb 9 18 cpb 11 34 cpbSIMD 512 8 63 cpb 10 02 cpb 12 05 cpb Pri etom okolo poloviny vremeni raboty hesh funkcii uhodit na operaciyu rasshireniya soobsheniya Number Theoretic Transform NTT yavlyaetsya samoj dorogostoyashej v plane proizvoditelnosti chastyu algoritma Funkciya szhatiya SIMD obladaet chastichno parallelnoj arhitekturoj chto pozvolyaet sozdavat effektivnye realizacii algoritma s ispolzovaniem vektornyh instrukcij SIMD Dannye instrukcii dostupny na mnogih shiroko izvestnyh arhitekturah SSE na x86 AltiVec na PowerPC IwMMXt na ARM Chto kasaetsya trebovanij predyavlyaemyh k RAM hesh funkcii SIMD neobhodima pamyat dlya hraneniya vnutrennego sostoyaniya 64 bajta dlya SIMD 256 i 128 bajt dlya SIMD 512 i pamyat dlya vyhodnyh znachenij NTT 4 64 256 bajt dlya SIMD 256 i 4 128 512 bajt dlya SIMD 512 Rezultaty konkursa SHA 3 dlya SIMDHesh funkciya SIMD ne byla otobrana v kachestve finalista konkursa SHA 3 Eksperty konkursa otmetili chto hotya hesh funkciya SIMD vo mnogom povtoryaet algoritmy semejstv MD SHA no uluchsheniya sdelannye avtorami dejstvitelno pozvolili zashitit SIMD ot mnogih tipov atak naprimer kollizionnaya ataka Krome togo izmeneniya provedyonnye dlya vtorogo raunda smogli zashitit hesh funkciyu SIMD ot ataki na osnove differencialnogo kriptoanaliza provedyonnuyu Mendel i Nad kotoroj byla podverzhena SIMD v svoej iznachalnoj realizacii Odnako vysokie trebovaniya k RAM i nalichiyu SIMD instrukcij dlya horoshej proizvoditelnosti delayut hesh funkciyu plohim kandidatom dlya realizacii na FPGA Glavnym obrazom po etoj prichine hesh funkciya SIMD ne popala v finalnuyu stadiyu konkursa PrimechaniyaKandidaty vtorogo raunda konkursa SHA 3 Oficialnoe opisanie hesh funkcii SIMD s 9 Oficialnyj sajt hesh funkcii SIMD Oficialnoe opisanie hesh funkcii SIMD s 7 8 Uluchsheniya hesh funkcii SIMD dlya vtorogo raunda konkursa SHA 3 s 1 2 Oficialnoe opisanie hesh funkcii SIMD s 22 Oficialnoe opisanie hesh funkcii SIMD s 43 270 Oficialnyj sajt eBASH benchmark Otchyot s rezultatah vtorogo raunda konkursa SHA 3 Realizaciya na FPGA kandidatov konkursa SHA 3 Literatura angl Data obrasheniya 18 dekabrya 2013 Arhivirovano iz originala 2 dekabrya 2013 goda SHA 3 competition 2007 2012 angl Data obrasheniya 18 dekabrya 2013 19 dekabrya 2013 goda SHA 3 second round candidates angl Data obrasheniya 18 dekabrya 2013 Arhivirovano 10 aprelya 2012 goda angl Data obrasheniya 18 dekabrya 2013 Arhivirovano iz originala 4 dekabrya 2013 goda Meltem Sonmez Turan Ray Perlner Status Report on the Second Round of the SHA 3 Cryptographic Hash Algorithm Competition angl Gaetan Leurent SHA 3 submission SIMD Is a Message Digest angl 12 iyunya 2011 goda Gaetan Leurent SIMD Is a Message Digest Presentation angl 12 iyunya 2011 goda Gaetan Leurent Tweaking SIMD angl 12 iyunya 2011 goda Charles Bouillaguet Pierre Alain Fouque Gaetan Leurent Security Analysis of SIMD angl Hongbo Yu and Xiaoyun Wang Cryptanalysis of the Compression Function of SIMD angl
Вершина