Stream Cipher vs Block Cipher | State Cipher vs Block Cipher
U kriptografiji su Stream šifri i Block šifre dva algoritma za enkripciju / dešifriranje koji pripadaju grupi simetričnih ključnih šifri. Šifra obično koristi kao usputni tekst i stvara šifrični tekst kao izlaz. Blok šifre šifrira blok bita fiksne duljine koristeći pretvarajuću transformaciju. Stream šifri kriptiraju tokove bitova različite duljine i koriste različite transformacije na svaki bit.
Što je tok šifre?
Strujni šifri pripadaju obitelji simetričnih ključnih šifri. Šifre streama kombiniraju bitove običnog teksta s pseudo slučajnim bitovima šifri pomoću XOR (ekskluzivne ili) operacije. Šifre streama šifriraju cifre običnog teksta jednu po jednu s različitim transformacijama za uzastopne znamenke. Budući da šifriranje svake znamenke ovisi o trenutnom stanju elektroničkog šifriranog toka, šifre toka su također poznate kao šifre stanja. Obično se pojedinačni bitovi / zalogaji koriste kao jednocifrene. Da biste izbjegli sigurnosna pitanja, treba osigurati da se isto početno stanje ne koristi više puta. Najčešće korišteni šifrant protoka je RC4.
Što je blok šifra?
Blok šifra je još jedna simetrična ključna šifra. Blok šifre djeluju na blokove (grupe bita) fiksne duljine. Blok šifre koriste fiksnu (nepromjenjivu) transformaciju za sve znamenke u bloku. Na primjer, kada je x-bitni blok običan tekst (zajedno s tajnim ključem) naveden kao ulaz u motor blok šifriranja, on proizvodi odgovarajući x-bitni blok šifričnog teksta. Stvarna transformacija ovisi o tajnom ključu. Slično tome, algoritam za dešifriranje vraća izvorni x-bitni blok otvorenog teksta koristeći x-bitni blok šifričnog teksta i gornji tajni ključ kao ulaz. Ako je ulazna poruka preduga u odnosu na veličinu bloka, ona će se raščlaniti na blokove i ti će se blokovi (pojedinačno) kriptirati pomoću istog ključa. Međutim, s obzirom na to da se koristi isti ključ, svaki ponovljeni niz u običnom tekstu postaje isti ponovljeni niz u šifriranom tekstu, što bi moglo izazvati sigurnost. Popularne blok šifre su DES (šifriranje podataka podataka) i AES (napredni standard šifriranja).
Koja je razlika između šifre struje i šifre bloka?
Iako i šifri za protok i blok šifre pripadaju obitelji simetričnih šifrirnih šifri, postoje neke ključne razlike. Blok šifre šifriraju blokove bita fiksne duljine, dok se kodi za tok kombiniraju bitove običnog teksta s pseudo slučajnim bitovima šifri pomoću XOR operacije. Iako blok šifre koriste istu transformaciju, tok šifre koriste različite transformacije na temelju stanja motora. Stream šifre obično se pokreću brže od blok šifri. U pogledu složenosti hardvera, tok šifre su relativno manje složeni. Stream šifre su tipična sklonost blok šifri kada je običan tekst dostupan u različitim količinama (npr. Sigurna WiFi veza), jer blok šifre ne mogu raditi izravno na blokovima kraćim od veličine bloka. Ali ponekad, razlika između šifriranih tokova i blok šifri nije baš jasna. Razlog je taj što se, kada se koriste određeni načini rada, blok šifra može koristiti kao šifer toka omogućavajući šifriranje najmanje dostupne jedinice podataka.