Razlika između Block Cipher i Stream Cipher
Sadržaj
Blok šifra i tok šifre su metode koje se koriste za pretvaranje ravnice u šifru izravno i pripadaju obitelji simetričnih ključnih šifri.
Glavna razlika između šifre bloka i toka šifre je u tome što blok šifrira i dešifrira blok odjednom. S druge strane, šifra struje šifrira i dešifrira poduzimajući jedan bajt odjednom.
- Usporedni grafikon
- definicija
- Ključne razlike
- Zaključak
Usporedni grafikon
Osnove za usporedbu | Blokirajte šifru | Stream šifra |
---|---|---|
Osnovni, temeljni | Pretvara ravnicu uzimajući ujedno i njezin blok. | Pretvara preuzimajući jedan bajt ravnice odjednom. |
Složenost | Jednostavan dizajn | Složeni komparativno |
Nema upotrijebljenih bitova | 64 Bita ili više | 8 bita |
Zbunjenost i difuzija | Koristi i zbunjenost i difuziju | Oslanja se samo na zbrku |
Korišteni su načini algoritma | ECB (elektronski knjižni kod) CBC (šifra blok šifre) | CFB (povratne informacije o šifri) OFB (izlazne povratne informacije) |
preokretljivost | Povratak u šifrirano je teško. | Za šifriranje koristi XOR koji se lako može vratiti u ravnicu. |
izvršenje | Feistel Cipher | Vernam Cipher |
Definicija blok šifre
Blok šifra uzima i razgrađuje ga u fiksnu veličinu blokova i pretvara jedan blok odjednom. Na primjer, imamo jasan "STREET_BY_STREET" potreban za šifriranje. Koristeći bock šifru, "STREET" se prvo treba šifrirati, zatim "_BY_", a na kraju "STREET".
U stvarnoj praksi komunikacija se odvija samo u dijelovima. Stoga STREET zapravo znači binarni ekvivalent ASCII karaktera STREET. Nakon toga, svaki algoritam kriptira ih; rezultirajući bitovi se transformiraju natrag u njihov ASCII ekvivalent.
Evidentan problem u vezi s uporabom Block šifri je ponavljanje , za koje se stvara ista šifra. Dakle, kriptanalizator bi nagovijestio što olakšava otkrivanje ponavljajućih nizova ravnice. Kao rezultat toga, može otkriti cjelinu.
Da biste prevladali od ovog problema način vezivanja koristi se. U ovoj tehnici, prethodni blok šifre pomiješan je s trenutnim blokom, tako da je šifra nejasna, što izbjegava ponavljajuće obrasce blokova s istim sadržajem.
Definicija Stream Cipher-a
Cream Stream šifrira jedan bajt tog trenutka umjesto da koristi blokove. Uzmimo primjer, pretpostavimo da je izvornik (običan) "plavo nebo" u ASCII (tj. formatu). Kada pretvorite ove ASCII u ekvivalentne binarne vrijednosti, dat će izlaz u obliku 0 i 1. Neka bude prevedeno 010111001.
Za šifriranje i dešifriranje, a generator pseudo slučajnih bita koristi se u kojem su učitani ključ i običan. Generator pseudo slučajnih bita stvara niz 8-bitnih brojeva koji su naizgled slučajni poznati kao kljuca, Neka ključ za unos bude 100101011. Sada su ključ i obični XORed. Logiku XOR-a lako je razumjeti.
XOR daje izlaz 1 kada je jedan ulaz 0, a drugi 1. Izlaz je 0 ako su oba ulaza 0 ili su oba ulaza 1.
Zbunjenost je metoda koja jamči da šifra nema pojma o izvornoj ravnici.
difuzija je strategija koja se koristi za povećanje suvišnosti ravnice širenjem na redove i stupce.
- Tehnika blok šifriranja uključuje enkripciju jednog bloka odjednom, tj. Pojedinačno. Slično tome, dešifrirajte oznaku uzimajući jedan blok za drugim. Suprotno tome, tehnika šifriranja u streamu uključuje enkripciju i dešifriranje po jednog bajta.
- Blok šifra koristi i zbrku i difuziju, dok se šifra struje oslanja samo na zbrku.
- Uobičajena veličina bloka mogla bi biti 64 ili 128 bita u blok šifri. Nasuprot tome, 1 bajt (8 bita) odjednom se pretvara u šifru toka.
- Blok šifra koristi ECB (elektronski knjižni kod) i CBC (šifra blok šifre) načini algoritama. Naprotiv, Stream šifra koristi CFB (povratne informacije o šifri) i OFB (izlazne povratne informacije) načini algoritama.
- Stream šifra koristi XOR funkciju za pretvaranje ravnice u šifru, i to je razlog zašto je lako obrnuti XORed bitove. Dok Block šifra ne koristi XOR za to.
- Blok šifra koristi isti ključ za šifriranje svakog bloka, dok šifri za tok koristi drugačiji ključ za svaki bajt.
Zaključak:
Blok šifra i tok šifre razlikuju se u načinu na koji se ravnina šifrira i dešifrira. Ideja blok šifre je podijeliti ravnicu na blokove i dodatno šifrirati te blokove. Dok se kodni tok pretvara običan po malo sličan stream.