Uvod u simetrične algoritme

Simetrični algoritmi također poznati kao algoritmi tajnih ključeva naširoko se koriste u šifriranju skupnih podataka ili u tijeku podataka. Ovo je vrsta kriptografskog algoritma koja šifrira i dešifrira podatke koristeći isti ključ (što ovaj algoritam čini simetričnim). Naziva se tajnim ključem, jer korišteni ključ čuva u tajnosti od strane sustava koji su uključeni u proces šifriranja i dešifriranja. Šifriranje ovog algoritma nije lako razbiti ako osoba koja pokušava dešifrirati nema tajni ključ, morat će koristiti napredne tehnike da ga razbije. Ti su algoritmi po pravilu vrlo brzi, što je razlog više da se oni koriste kada postoji potreba za šifriranjem velikih količina podataka. Fig1.a prikazuje osnovnu simetričnu enkripciju ključeva:

Slika1.a Šifriranje ključa simetričnog ključa

Vrste simetričnih algoritama

Široko simetrični algoritmi razvrstavaju se u dva

  • Blok
  • potok

Blokirajte algoritme

Algoritmi blokova kriptiraju podatkovni blok po blok (više bajtova). Blok se odnosi na specificirani skup bitova i ti se bitovi mijenjaju / šifriraju pomoću tajnog ključa. Postoji nedostatak kod algoritama blokova, a to je, pretpostavimo da ćemo šifrirati podatke mrežnog toka, te podatke sustav šifriranja zadržava u svojim memorijskim komponentama. To zadržavanje podataka vrši se kada sustav zapravo čeka kompletne blokove podataka. Ovo vrijeme čekanja može dovesti do sigurnosnog jaza koji može ugroziti sigurnost i integritet podataka. Da bismo izbjegli ovu prijetnju, možemo smanjiti blok i spojiti podatke s prethodno šifriranim blokom podataka dok ne budu primljeni daljnji blokovi, jednostavnim riječima ova se tehnika naziva povratna veza. Ovaj će algoritam šifrirati samo ako je primljen kompletan blok.

Algoritmi struje

Umetnuti algoritmi unose podatke po bajtu, a ponekad čak i po malo. U slučaju algoritma struje, sustav ne zadržava podatke u memoriji, pa se može reći da je to mnogo sigurnije u usporedbi s algoritmom bloka, jer se podaci ne zadržavaju u sustavu bez šifriranja.

Nadalje, u nastavku su navedene nekoliko vrsta algoritama za šifriranje

  • DES i Triple DES
  • RC2
  • Blowfish

DES i Triple DES

DES označava standard šifriranja podataka koji uzima 64-bitni obični tekst i šifrira se u 64-bitni širok tekst i dešifrira natrag uz pomoć 56-bitnog ključa. Kod DES proces enkripcije započinje s početnom fazom permutacije gdje će unos uzimati kao 64-bitne podatke i permutirati ih na unaprijed definiran način. Nakon čega slijedi početna permutacija da će 16 krugova Feistel šifre (Feistel šifra uzeti ulaz i podijeliti ga na dva dijela i izvršiti šifriranje na samo jedan dio) gdje će svaki krug koristiti različiti šifru od 48bit. U svrhu šifriranja i dešifriranja koristi šifru i preokreće algoritam šifriranja. Konačno, podaci prolaze kroz završnu fazu permutacije kako bi dobili šifrični tekst. Slično kao DES Triple DES nije ništa drugo nego šifra DES koja se ponavlja 3 puta. Fig2.a prikazuje generičku arhitekturu algoritma DES.

Opća arhitektura algoritma DES

RC2

Ovo je algoritam blok šifriranja u kojem se podaci u početku dijele na veličinu bloka od 8 bajta i ti se blokovi obrađuju odvojeno. Ovaj se algoritam široko koristio 90-ih. Rc2 šifra koristi tajni korisnički ključ čija se veličina može razlikovati od jednog do 128 bajta. Ovaj tajni korisnički ključ uzima i koristi algoritam za proširenje ključeva i šifrira podatke. Ovaj je algoritam dizajniran na takav način da se može lako implementirati u 16-bitne mikroprocesore. Ovdje nema Feistel rundi, umjesto toga podaci se podvrgavaju 18 krugova miješanja i miješanja. Fig2.b prikazuje generičku arhitekturu algoritma RC2.

Opća arhitektura algoritma RC2

Blowfish

Ovo je asimetrični algoritam koji zamjenjuje DES. Ovdje se koristi veličina bloka 64 bita, a veličina ključeva kreće se od 32 do 448 bita. Šifriranje uz upotrebu bljeskalice sastoji se ponajprije od dvije faze

  • Okrugla funkcija
  • Izlazni rad

Funkcija zaokruživanja vrši sljedeće korake

  1. Key izbjeljivanje, gdje se uzima lijevi dio ulaznih podataka i na njemu se vrši ekskluzivno ILI rad.
  2. U drugom koraku koristi S-kutije, ove S-kutije mapiraju 8-bitne podatke u 32-bitne, a izlaz se kombinira s kombinacijom dodavanja i XOR operacija
  3. Gornja dva koraka kombinirano zajedno nazivaju F funkcijom. S izlazom F funkcije i desnom stranom ulaznih podataka izvodi se XOR operacija.
  4. Posljednji korak uključuje zamjenu izlaza.

Izlazna funkcija otkriva konačnu zamjenu i izvodi izbjeljivanje izlaza. Rezultat ove funkcije je šifrotekst okruga. Dešifriranje uz pomoć sifa uključuje uporabu iste strukture kao i kodiranje jer se koristi Feistel šifrom, ali okrugle tipke moraju se koristiti obrnutim redoslijedom. Glavna prednost ovog algoritma je ta što je on dostupan u javnoj domeni, tako da je lako dostupan. Nedostaci su u osnovi malo vremena za stvaranje ključeva i ako je veličina bloka mala, podložna je napadima.

Primjene simetričnih algoritama

Neka od mjesta na kojima se koristi algoritam simetričnog šifriranja su

  • Transakcije s karticama koriste se za sprečavanje krađe identiteta i prijevara.
  • Da biste potvrdili identitet glasnika.
  • Hashing i generacija slučajnih brojeva
  • Šifriranje baze podataka

Zaključak - Simetrični algoritmi

Simetrični algoritmi mnogo su brži i učinkovitiji u usporedbi s asimetričnim algoritmima. To je još veći razlog zašto se oni koriste u skupno šifriranje. Ali njegov je nedostatak to što je upravljanje ključevima vrlo iscrpno, stoga je održavanje u velikoj mjeri dosadan zadatak, gdje moramo imati visoku razinu sigurnosti, da bismo to postigli, moramo održati životni ciklus ključa generiranog korištenjem zasebnog sustava, Stoga uvijek moramo koristiti ispravnu enkripciju kako bismo izbjegli napade na naše podatke.

Preporučeni članci

Ovo je vodič za simetrične algoritme. Ovdje ćemo razgovarati o uvodu i vrstama simetričnih algoritama zajedno s DES i trostrukim DES. Možete i proći kroz naše druge predložene članke da biste saznali više -

  1. Što je WebSocket?
  2. Sigurnost web aplikacija
  3. Karijera u web razvoju
  4. Karijere u web dizajnu
  5. Blokirajte šifarske načine rada
  6. Primjeri C ++ algoritma

Kategorija: