Blowfish

V kriptografiji je Blowfish simetrična blokovna šifra s ključem, ki jo je leta 1993 izdelal Bruce Schneier in je bila od leta 1993 vključena (sestavljena) v veliko število izdelkov za šifriranje. Blowfish ima dobro stopnjo šifriranja v programski opremi in do leta 2008 ni bil najden noben model kriptoanalitičnega napada nanj. Vendar je algoritem blokovne šifre AES zdaj deležen večje pozornosti.

Schneier je algoritem Blowfish ustvaril kot algoritem za splošno uporabo, ki naj bi nadomestil stari algoritem DES ter odpravil težave in probleme drugih algoritmov za šifriranje. V času, ko je bil izdan Blowfish, so bili številni drugi algoritmi lastniški ali skrivnostni. Schneier je dejal: "Blowfish ni patentiran in bo to ostal v vseh državah. Algoritem je s tem postavljen v javno domeno in ga lahko vsakdo prosto uporablja."

Glavne značilnosti zasnove vključujejo od ključa odvisne škatle S in zelo zapleten razpored ključev. Blowfish je ena najhitrejših blokovnih šifer, ki jo uporablja veliko ljudi, razen pri spreminjanju ključev. Vsak nov ključ je treba predhodno obdelati, kar traja enako dolgo kot šifriranje približno 4 kilobajtov besedila, kar je v primerjavi z drugimi blokovnimi šiframi zelo počasno. To preprečuje njegovo uporabo v nekaterih aplikacijah (na primer v najmanjših vgrajenih sistemih, kot so zgodnje pametne kartice), pri drugih aplikacijah pa to ni težava. V eni od aplikacij je to pravzaprav dobro: metoda šifriranja gesel, ki se uporablja v OpenBSD, uporablja algoritem, ki izhaja iz Blowfisha in uporablja počasen razpored ključev; ideja je, da dodaten potreben računski napor zagotavlja zaščito pred slovarskimi napadi. Glej krepitev ključa.

Blowfish ima 64-bitno velikost bloka in spremenljivo dolžino ključa od 0 do 448 bitov Je 16-okrogla Feistelova šifra in uporablja velika polja S, ki so odvisna od ključa. Po strukturi je podobna šifri CAST-128, ki uporablja fiksna polja S.

Leta 1996 je Serge Vaudenay odkril napad z znanim besedilom, ki za zlom potrebuje 28r + 1 znanih besedil, pri čemer je r število krogov. Poleg tega je našel tudi razred šibkih ključev, ki jih je mogoče odkriti in zlomiti z istim napadom z le 24r + 1 znanimi odprtimi besedili. Tega napada ni mogoče uporabiti proti običajnemu Blowfishu; predpostavlja namreč poznavanje S-boxov, ki so odvisni od ključa. Vincent Rijmen je v svojih doktorskih člankih predstavil diferencialni napad drugega reda, s katerim je mogoče zlomiti štiri kroge in nič več. Še vedno ni znan način za zlom vseh 16 krogov, razen iskanja z grobo silo. Leta 1996 je bila v eni od objavljenih kod v jeziku C odkrita napaka v razširitvi znaka.

Do leta 2008 ni bila javno znana nobena dobra kriptoanaliza za polno zaokroženo različico Blowfisha. Leta 2007 pa je Bruce Schneier opozoril, da je Blowfish sicer še vedno v uporabi, vendar namesto njega priporoča uporabo novega algoritma Twofish.

Sorodne strani

Vprašanja in odgovori

V: Kaj je Blowfish?


O: Blowfish je simetrična blokovna šifra s ključem, ki jo je leta 1993 ustvaril Bruce Schneier. Od takrat je bila vključena v številne izdelke za šifriranje.

V: Za kaj je bil ustvarjen Blowfish?


O: Blowfish je bil narejen kot algoritem za splošno uporabo, da bi nadomestil stari algoritem DES ter odpravil težave in probleme drugih algoritmov za šifriranje.

V: Kako dolg je lahko ključ za Blowfish?


O: Dolžina ključa za Blowfish je lahko od 0 do 448 bitov.

V: Katere so nekatere značilnosti zasnove Blowfisha?


O: Nekatere značilnosti zasnove vključujejo od ključa odvisna polja S in zelo zapleten razpored ključev.

V: Ali je znana kakšna kriptoanaliza različice Blowfisha s polnim krogom?


O: Od leta 2008 ni znan noben način za razbitje polnih 16 krogov, razen iskanja z grobo silo.

V: Kakšno vrsto napada na Blowfish je odkril Serge Vaudenay?


O: Serge Vaudenay je odkril napad z znanim besedilom, ki za zlom potrebuje 28r + 1 znanih besedil, pri čemer je r število krogov. Našel je tudi razred šibkih ključev, ki jih je mogoče odkriti in zlomiti s tem istim napadom z le 24r + 1 znanimi odprtimi besedili.

V: Ali Bruce Schneier zdaj priporoča uporabo ključa Twofish namesto Blowfish?


O: Da, Bruce Schneier priporoča uporabo Twofisha namesto Blowfisha zaradi njegovih izboljšanih varnostnih ukrepov v primerjavi s starejšimi algoritmi, kot je DES, ali celo novejšimi, kot je AES.

AlegsaOnline.com - 2020 / 2023 - License CC3