Uvod u ElGamal šifriranje

Kriptosistem ElGamal može se definirati kao algoritam kriptografije koji koristi koncept javnog i privatnog ključa za osiguranje komunikacije koja se događa između dva sustava. Može se smatrati asimetričnim algoritmom u kojem se enkripcija i dešifriranje događaju korištenjem javnih i privatnih ključeva. Za šifriranje poruke klijent koristi javni ključ, dok se poruka može dešifrirati pomoću privatnog ključa na kraju poslužitelja. Ovo se smatra jednim od učinkovitih algoritama za provođenje šifriranja i dešifriranja jer su ključevi izuzetno teški za predvidjeti. Jedina svrha uvođenja potpisa u transakciju porukama je zaštita od MITM-a što bi se ovim algoritmom moglo vrlo učinkovito postići.

ElGamal šifriranje algoritam s primjerom

Koncept duše ove metode algoritma je onemogućiti izračunavanje pristupa šifriranja čak i ako su napadaču poznate određene važne informacije. Uglavnom je zabrinut zbog poteškoće u pokretanju cikličke skupine kako bi se pronašao diskretni logaritam.

Bit će to vrlo lako razumjeti jednostavnim primjerom. Pretpostavimo da su čak i ako su vrijednosti poput g a i g b vrijednosti koje su napadaču poznate, napadaču će biti izuzetno teško saznati vrijednost g ab koja nije ništa drugo do puknuta vrijednost.

Da bismo razumjeli cjelokupni scenarij, moramo korak po korak ići na način na koji se zapravo dešava kodiranje i dešifriranje poruka. Razmotrit ćemo primjer dvoje vršnjaka koji su spremni razmjenjivati ​​podatke na siguran način koristeći utjecaj algoritma ElGamal. Pretpostavimo da korisnik1 i user2 žele potajno razmjenjivati ​​podatke, u tom će slučaju biti praćen sljedeći postupak.

Korak 1: Izrada javnih i privatnih ključeva.

  • Korisnik1 će pokušati odabrati vrlo dugačak ili veliki broj x, a u međuvremenu će također odabrati cikličku skupinu Fx. Iz ove cikličke skupine on će dalje birati drugu komponentu b i još jedan element c. Vrijednosti će biti odabrane na način da će ishod biti jednak 1 ako prođe kroz određenu funkciju.
  • Nakon završetka faze odabira vrijednosti izračunat će se vrijednost koja će se dalje koristiti za generiranje privatnog ključa. Primjenom formule fm = b c, vrijednost će se izračunati. U trenutnom scenariju, korisnik1 će za svoj javni ključ odabrati F, fm = b c, a, b, a vrijednosti a bit će spremljene kao privatni ključ koji će se dalje koristiti kao privatni ključ.

2. korak: User2 će šifrirati podatke pomoću javnog ključa User1.

  • Postoje određene vrijednosti koje korisnik treba odabrati da bi započeo šifriranje poruke. Korisnik2 će također trebati odabrati jednu od vrijednosti p iz cikličke skupine. Ciklička skupina bit će ista kao što je bila za korisnika1. Vrijednost treba odabrati na način da Inc prolazi s oznakom u određenoj funkciji generira ishod 1.
  • Znajte da će korisnik2 generirati neke druge vrijednosti koje će se koristiti za šifriranje poruke javnim ključem. Vrijednost koja se generira bit će Pm = b p. Drugo precjenjivanje b c bit će jednako b ap. Ishod ovog računanja množit će se s drugom vrijednošću Z kako bi se približio metodi šifriranja. Na kraju će se vrijednost poslati rezultatom izračuna na b p, Z * b ap.

Korak 3: Dešifriranje poruke na korisničkom kraju.

  • Korisnik1 će tada koristiti izračunavanje vrijednosti koje su odabrane u prvoj i drugoj fazi kako bi identificirao odgovarajući broj koji će se koristiti za dešifriranje šifrirane poruke. User1 će obraditi b ap, a tada će se ishod upotrijebiti za podjelu Z kako bi se dobila dešifrirana vrijednost. Dešifrirana vrijednost je nešto što je šifrirano u drugoj fazi.
  • U gornjem scenariju, korisnik1 je pokrenuo postupak izračunavanjem privatnog i javnog ključa koji je duša algoritma. Korisnički ključ nadalje koristi u drugom koraku za šifriranje metode.
  • Poruka se šifrira na način da se vrijednost izračunata u toj početnoj fazi može utjecati na dešifriranje poruke. U trećem koraku moglo se vidjeti da nakon ronjenja cijela vrijednost s brojem koji se izračunava u trećem koraku sama dešifrira poruku, čineći je čitljivom za krajnjeg korisnika. Isti pristup slijedi se svaki put kada se pojavi potreba za sigurnom prosljeđivanjem poruke.

Zaključak - ElGamal Šifriranje

ElGamal algoritam koristi se u šifriranju i dešifriranju, što se uglavnom smatra njegovom sposobnošću da ključna predviđanja postanu izuzetno teška. Budući da je asimetrični algoritam, on koristi mehanizam privatnog i javnog ključa čineći ključna predviđanja još težim. Sva aplikacija koja se ne želi oslanjati samo na šifriranje kanala radi zaštite svojih podataka može joj biti korisna za implementaciju ovog algoritma u program. Uz sigurnost na aplikacijskoj razini, ovaj se algoritam također smatra vrlo optimalnim za bavljenje prijenosom podataka putem privatne ili javne mreže.

Preporučeni članci

Ovo je vodič za šifriranje EIGamal. Ovdje također raspravljamo o uvođenju i algoritmu EIGamal Encryption s primjerom. Možete također pogledati sljedeće članke da biste saznali više -

  1. Asimetrična enkripcija
  2. Simetrično šifriranje ključa
  3. Napredni standard šifriranja
  4. Algoritam šifriranja

Kategorija: