Kaj je diferencialna kriptoanaliza?

Diferencialna kriptoanaliza je ime za različne metode kriptografskega napada na blokovne šifre z uporabo znanega napada z odprtim besedilom. Diferencialna kriptoanaliza deluje tako, da šifrira znano golo besedilo ali nešifrirano besedilo z uporabo izbranega šifrirnega ključa, da ugotovi, kako deluje postopek šifriranja. Izbrana sta dva vhoda s konstantno razliko med njima, pri čemer je razliko med obema vhodoma mogoče določiti z različnimi operacijami, vključno z uporabo operacije izključno ALI (XOR). Ko se vhodni par požene skozi kodo diferencialne kriptoanalize, se z uporabo šifrirnega ključa oblikuje izhodni par. Vhod je znan, zato kriptograf pazi na vzorce sprememb v izhodu.

Ko je izhod prejet, kriptograf dodeli verjetnosti določenim vhodno-izhodnim parom, da ugotovi, kateri šifrirni ključ je povzročil določene spremembe v izhodnih parih. Različni šifrirni ključi imajo različne verjetnosti, da se določeni izhodi pojavijo za vsak vhod. Te verjetnosti omogočajo kriptografu, da na podlagi vhodnih in izhodnih vzorcev izvede informirana ugibanja o različnih vidikih ključa.

To metodo sta v poznih osemdesetih letih prejšnjega stoletja prvotno razvila Eli Bidham in Adi Shamir. Namenjen je bil napadu na blokovne šifre in preverjanju pomanjkljivosti v algoritmu standarda za šifriranje podatkov (DES) ameriškega nacionalnega urada za standarde, ki se uporablja kot zvezni standard za obdelavo informacij za šifriranje občutljivih neuvrščenih podatkov. Leta 1980 je Don Coppersmith, eden od IBM-ovih programskih inženirjev, ki je pomagal pri oblikovanju DES, dejal, da je IBM že seznanjen z diferencialno kriptoanalizo in si je prizadeval, da je DES odporen proti napadom.

Za uspešno določitev, kateri šifrirni ključ se uporablja v tem procesu, morajo biti izpolnjene nekatere zahteve. Najbolj uspešno je, če lahko kriptograf sam izbere odprto besedilo in prejme izhodno šifrirano besedilo. Diferencialna kriptoanaliza je najbolj primerna za iterativne blokovne šifre. Tovrstne šifre šifrirajo odprto besedilo z isto transformacijo v več krogih z uporabo podključa.

Oblikovalci šifer in kriptografskih kod si prizadevajo zagotoviti, da njihova koda ni ranljiva za to vrsto znanega napada. Eden od teh je uporaba ključev sporočil in omejitve količine šifriranega besedila, prejetega z enim ključem sporočila. To je slabost diferencialne kriptoanalize, ker se zanaša na velike količine odprtega besedila.

Metoda diferencialne kriptoanalize temelji na uporabi določenih tabel za izbiro vhodnega para. Če to vemo, se lahko šifrirni sistem zaščiti pred napadi na različne načine. Ni pomembno, ali je koda nastavljena tako, da izbira iz večjega števila tabel, kot je bilo pričakovano, da izbira iz vseh različnih tabel ali da meša rezultate tabele takoj, ko so rezultati določeni.