Blowfish

Krüptograafias on Blowfish võtmega sümmeetriline plokkšiffer, mille tegi 1993. aastal Bruce Schneier ja mis on alates 1993. aastast lisatud (kokku pandud) paljudesse krüpteerimistoodetesse. Blowfishil on hea krüpteerimiskiirus tarkvaras ja kuni 2008. aastani ei ole leitud selle krüptoanalüütilist ründemudelit. Kuid AES plokkšifreeringu algoritmile on nüüd rohkem tähelepanu pööratud.

Schneier tegi Blowfishi üldotstarbelise algoritmina, et asendada vana DES-algoritmi ning kõrvaldada teiste krüpteerimisalgoritmide probleemid ja raskused. Blowfishi avaldamise ajal olid paljud teised algoritmid patenteeritud või salajased. Schneier on öelnud, et "Blowfish on patenteerimata ja jääb selleks kõikides riikides. Algoritm on käesolevaga avalikustatud ja seda võib igaüks vabalt kasutada."

Konstruktsiooni põhijooned on võtmetest sõltuvad S-boxid ja väga keeruline võtmete ajakava. Blowfish on üks kiiremaid plokkšifreid, mida paljud inimesed kasutavad, välja arvatud võtmete muutmisel. Iga uus võti tuleb eeltöödelda, mis võtab sama kaua aega kui umbes 4 kilobaidi teksti krüpteerimine, mis on teiste plokkšifritega võrreldes väga aeglane. See takistab selle kasutamist teatavates rakendustes (näiteks kõige väiksemates manussüsteemides, nagu varajased kiipkaardid), kuid teistes rakendustes ei ole see probleemiks. Ühes rakenduses on see isegi hea: OpenBSD-s kasutatavas paroolide peitmise meetodis kasutatakse Blowfishist pärinevat algoritmi, mis kasutab aeglast võtme ajakava; idee on, et nõutav lisatöötluskoormus annab kaitse sõnastikurünnakute vastu. Vt võtme tugevdamine.

Blowfishil on 64-bitine plokisuurus ja muutuva võtmepikkusega 0 kuni 448 bitti. See on 16-ringiline Feistel-kood ja kasutab suuri võtmest sõltuvaid S-kaste. See on oma ülesehituselt sarnane CAST-128-le, mis kasutab fikseeritud S-kaste.

1996. aastal leidis Serge Vaudenay teada-tähtsa teksti rünnaku, mille murdmiseks on vaja 28r + 1 teada-tähtsa teksti, kus r on voorude arv. Lisaks sellele leidis ta ka nõrkade võtmete klassi, mida saab sama rünnakuga avastada ja murda ainult 24r + 1 teadaoleva tekstiga. Seda rünnakut ei saa kasutada tavalise Blowfishi vastu; see eeldab võtmetest sõltuvate S-kastide tundmist. Vincent Rijmen tutvustas oma doktoritöös teise astme diferentsiaalrünnakut, mis suudab murda neli vooru ja mitte rohkem. Siiski ei ole teada, kuidas murda kõiki 16 vooru, välja arvatud jõhker otsing. 1996. aastal leiti ühes avaldatud C-koodis märkide laiendamise viga.

Kuni 2008. aastani ei olnud avalikult teada ühtegi head krüptoanalüüsi Blowfishi täisringi versiooni kohta. Kuid 2007. aastal märkis Bruce Schneier, et kuigi Blowfish on endiselt kasutusel, soovitas ta selle asemel kasutada uut Twofishi algoritmi.

Seotud leheküljed

Küsimused ja vastused

K: Mis on Blowfish?


V: Blowfish on 1993. aastal Bruce Schneieri poolt loodud sümmeetriline plokkšiffer. Sellest ajast alates on see lisatud paljudesse krüpteerimistoodetesse.

K: Milleks on Blowfish loodud?


V: Blowfish tehti üldotstarbelise algoritmina, et asendada vana DES-algoritm ning kõrvaldada teiste krüpteerimisalgoritmide probleemid ja raskused.

K: Kui pikk võib Blowfishi võtme pikkus olla?


V: Blowfishi võtme pikkus võib olla vahemikus 0 kuni 448 bitti.

K: Millised on Blowfishi konstruktsiooni mõned omadused?


V: Mõnede konstruktsiooni omaduste hulka kuuluvad võtmest sõltuvad S-kastid ja väga keerukas võtme ajakava.

K: Kas Blowfishi täisringi versiooni kohta on teadaolevalt tehtud krüptoanalüüs?


V: 2008. aasta seisuga ei ole teadaolevalt võimalik murda täielikku 16 vooru, välja arvatud toorest otsingut.

K: Millist tüüpi rünnakut leidis Serge Vaudenay Blowfishi vastu?


V: Serge Vaudenay leidis teadaoleva tekstiga rünnaku, mille murdmiseks on vaja 28r + 1 teadaolevat puhasteksti, kus r on voorude arv. Ta leidis ka nõrkade võtmete klassi, mida on võimalik avastada ja murda sama rünnaku abil ainult 24r + 1 teadaoleva algtekstiga.

K: Kas Bruce Schneier soovitab nüüd Blowfishi asemel kasutada Twofishi?


V: Jah, Bruce Schneier soovitab nüüd Blowfishi asemel kasutada Twofishi, kuna selle turvameetmed on paremad kui vanemate algoritmide, näiteks DESi või isegi uuemate, näiteks AESi puhul.

AlegsaOnline.com - 2020 / 2023 - License CC3