Blowfish on yhdysvaltalaisen Bruce Schneierin vuonna 1993 kehittämä salausmenetelmä.

Blowfish-salausta esittävä kaavio.

Blowfish käyttää 16 kierroksen Feistel-salausta, jossa 64-bitin lohko tuottaa 32-bitin mittaisen sanan. Blowfish skaalautuu 128-bitin lohkoon saakka sekä pienempiin lohkoihin. 16 iteraation määrä mahdollistaa avaimet 448 bitin pituuteen saakka.[1] Suunnitteluvaiheessa valittiin lohkojen käsittely yksittäisten bittien käsittelyn sijaan.[1]

Alun perin Schneier kehitti algoritmin syrjäyttämään Yhdysvaltain viranomaisten hyväksymän DES:n (Data Encryption Standard), koska DES oli jo Blowfishin julkaisemisen aikoihin osoittautunut varsin heikoksi salakirjoitusalgoritmiksi. Huhuttiin jopa, että DES:iin olisi tehty sen kehittämisen aikoihin takaovi, jotta Yhdysvaltain viranomaiset olisivat helposti tarvittaessa voineet purkaa salauksen.[2] DES:n heikkoudesta huolimatta sitä käytetään hyvin yleisesti vieläkin salaamaan pankkiautomaatti- ynnä muuta pankkiliikennettä.lähde?

Schneier kaavaili Blowfish:stä luotettavaa salakirjoitusalgoritmia seuraavaksi kymmeneksi vuodeksi, mutta vieläkään ei tiedetä kenenkään suorittaneen tehokasta kryptoanalyysia Blowfish:a vastaan.lähde?

Blowfish määritellään Yhdysvalloissa "tehokkaaksi salausmenetelmäksi", aseeksi, joten sitä käyttäviä ohjelmia ei saa viedä pois maasta ilman erityislupaa. Perusteeksi on annettu, että salauksen myötä terroristien ja rikollisten puuhien seuranta muuttuisi mahdottomaksi.[3]

Blowfishia ei ole patentoitu ja se säilyy sellaisena kaikissa maissa. Algoritmi on julkaistu public domainina ja se on vapaasti kenen tahansa käytettävissä.[1] Blowfishin jälkeen on kehitetty Twofish.[4]

Haavoittuvuudet

muokkaa

Blowfishin versio, jossa on vähennetty kierrosten määrää on havaittu haavoittuvaksi, mutta Blowfishin täysi versio ei ollut tuolloin haavoittuva.[5][6]

Schneier on suositellut uudempaan Twofishiin siirtymistä vuonna 2007.[7]

Katso myös

muokkaa

Aiheesta muualla

muokkaa

Lähteet

muokkaa
  1. a b c B. Schneier: Description of a New Variable-Length Key, 64-Bit Block Cipher (Blowfish) schneier.com. Viitattu 23.9.2022. (englanniksi)
  2. Järvinen, Petteri: Salausmenetelmät, s. 88. (Ensimmäinen painos) Docendo Finland Oy, 2003. ISBN 951-846-183-X.
  3. http://www.pjoy.fi/lehdet/hs080898.htm
  4. B. Schneier: The Twofish Encryption Algorithm schneier.com. joulukuu 1998. Viitattu 23.9.2022. (englanniksi)
  5. Tom Gonzalez: A Reflection Attack on Blowfish (PDF) karbalus.free.fr. 2007. Arkistoitu Viitattu 23.9.2022. (englanniksi)
  6. Orhun Kara & Cevat Manap: A New Class of Weak Keys for Blowfish (PDF) iacr.org. Viitattu 23.9.2022. (englanniksi)
  7. Dahna McConnachie: Bruce Almighty: Schneier preaches security to Linux faithful computerworld.com.au. 27.12.2007. Arkistoitu ”At this point, though, I'm amazed it's still being used. If people ask, I recommend Twofish instead.” Viitattu 23.9.2022. (englanniksi)
Tämä tietotekniikkaan liittyvä artikkeli on tynkä. Voit auttaa Wikipediaa laajentamalla artikkelia.