Serpent (kriptografia)

Wikipedia, Entziklopedia askea
Iterazioa


Serpent blokeen bidezko zifratze simetrikoko algoritmo bat da. Finalista izatera iritsi zen NIST-en "Advanced Encryption Standard" lehiaketan, Rijndael-en atzetik. Serpent Ross Anderson, Eli Biham eta Lars Knudsenek sortua izan zen.

AESen beste partehartzaileen antzera, Serpentek 128 biteko blokeak erabiltze ditu eta 128, 192 eta 256 biteko luzerako gakoak jasan ditzake. Zifratzea 32 biteko 4 blokeen gainean egiten diren 32 aldaketa-permutazio iterazioen bidez egiten da. Gainera DES algoritmoak bezala, Serpent algoritmoak hasieran eta bukaeran kriptografi esanahirik gabeko permutazioak geitzen dizkio, honela enkriptatu aurreko zifratzea optimizatzen du eta eraginkortasun konputazionala hobetu. Iterazio bakoitzak S-Box beraren 32 kopia erabiltzen ditu bitak launaka hartuz. Serpent eragiketak paraleloki egiteko sortua izan zen, bit bateko 32 desplazamenduak erabiliz.

Serpentek AESko beste partehartzaile batzuk baino ikuskera arduratsuagoa bereganatu zuen, segurtasun marjina handiagoa aukeratuz. Bere diseinatzaileek baieztatu zuten 16 iterazio nahikoak izango liratekeela erasoak sahiesteko baina nahiago izan zuten 32 jartzea, algoritmoaren sendotasuna ziurtatzeko etorkizuneko kriptoanalisietatik babestua geratu ahal izateko.

Segurtasuna[aldatu | aldatu iturburu kodea]

Eraginkorra suertatzen bada, XSL eraso batek Serpent ahuldu dezake (baina ez AES makalduko lukeen bezala). Hala ere, kriptoanalista askok uste dute, XLS eraso baten inplementazioa Indar gorria baino neketsuagoa izango litzatekeela.

Kanpo estekak[aldatu | aldatu iturburu kodea]