Uvod u algoritam razmjene ključeva Diffie Hellman

Algoritam razmjene ključeva Diffie Hellman jedna je od prvih praktičnih primjena razmjene javnih ključeva u području kriptografije. Algoritam razmjene ključeva Diffie Hellman jedan je od načina na koji možemo generirati zajednički ključ i dijeliti odvojeno između dviju strana na način da možemo biti sigurni da nitko neće moći preskočiti komunikaciju. Ima jedna važna činjenica koju treba imati na umu o algoritmu to što ne razmjenjujemo informacije u razmjeni, već stvaramo ključ koji se kasnije može koristiti za razmjenu informacija. Budući da nam ova tehnika omogućuje stvaranje ključa za šifriranje s drugom stranom, tada možemo započeti šifriranje tekućih i primanje poruka. Jedan je uspostavljen, čak i ako netko bilježi podatke o prijenosu, nema načina da se podaci dešifriraju.

Algoritam razmjene ključeva Diffie Hellman za stvaranje ključeva

Algoritam se temelji na kriptografiji Elliptic Curve koja je metoda izrade kriptografije javnog ključa zasnovana na strukturi algebre eliptičkih krivulja preko konačnih polja. DH se također koristi funkcijom zamke poput mnogih drugih načina kriptografije s javnim ključem. Jednostavna ideja razumijevanja algoritma DH je sljedeća

1. Prva strana odabere dva glavna broja g i p i kaže ih drugoj strani.

2. Druga strana odabire tajni broj (nazovimo ga a), a zatim izračunava g a mod p i rezultat šalje natrag prvoj stranci, nazovimo rezultat A. Imajte na umu da tajni broj nije poslan bilo kome, samo je rezultat.

3. Tada prva strana učini isto, odabire tajni broj b i izračunava rezultat B slično s

4. korak 2. Zatim se ovaj rezultat šalje drugoj strani.

5. Druga strana uzima primljeni broj B i izračunava B a mod p

6. Prva strana uzima primljeni broj A i izračunava A b mod p

Ovo je mjesto gdje postaje zanimljivo, odgovor u koraku 5 jednak je odgovoru u koraku 4. To znači da će obje strane dobiti isti odgovor, bez obzira na redoslijed izlaganja.

(g a mod p) b mod p = g ab mod p
(g b mod p) a mod p = g ba mod p

Broj koji smo stigli unutar koraka 4 i 5 smatrat ćemo zajedničkim tajnim ključem. Sada se ovaj ključ može koristiti za bilo kakvo šifriranje podataka koji će se prenijeti kao što je vinjak, AES itd.

Algoritam Diffie Hellman

1. tipka = (Y A ) XB mod q -> to je isto što izračunava B

2. Globalni javni elementi

  • q: q je primarni broj
  • a: a <q i α je primitivni korijen q

3. Generacija ključa za korisnika A

  • Odaberite privatni ključ X A Ovdje, X A

Sada, izračunavanje javnog ključa Y A Y A = a XA mod q

4. Generacija ključeva za korisnika B

  • Odaberite privatni ključ X B Ovdje, X B
  • Sada, izračunavanje javnog ključa Y B Y B = a Xb mod q

5. Izračun tajnog ključa pomoću A

  • tipka = (Y B ) XA mod q

6. Izračun tajnog ključa pomoću B

  • tipka = (Y A ) XB mod q

Primjer

1. Alice i Bob koriste javne brojeve P = 23, G = 5

2. Alice je odabrala privatni ključ a = 4, a Bob je odabrao b = 3 kao privatni ključ

3. Alice i bob sada izračunavaju vrijednost x i y na sljedeći način:

  • Alice: x = (5 4 mod 23) = 4
  • Bob: y = (5 3 mod 23) = 10

4. Sada i Alice i Bob međusobno razmjenjuju javne brojeve.

5. Alice i Bob sada računaju simetrične tipke

  • Alice: k a = y a mod p = 10 4 mod 23 = 18
  • Bob: k b = x b mod p = 4 3 mod 23 = 18

6. 18 je zajednički tajni ključ.

Upotreba algoritma Diffie Hellman

Osim korištenja algoritma za generiranje javnih ključeva, postoje i neka druga mjesta na kojima se može koristiti algoritam DH:

  • Šifriranje: Za šifriranje se može koristiti algoritam za razmjenu ključeva Diffie Hellman, jedan od prvih programa to je ElGamal šifriranje. Jedan moderan primjer toga naziva se integrirana shema šifriranja koja pruža sigurnost protiv odabranog običnog teksta i odabranih napada međuspremnika.
  • Ugovor ovjeren lozinkom : Kada dvije strane dijele lozinku, ključni ugovor ovjeren lozinkom može se koristiti za sprečavanje Čovjeka u sredini napada. Ovaj ključni ugovor može biti u obliku Diffie-Hellmana. Sigurni protokol udaljene lozinke dobar je primjer koji se temelji na ovoj tehnici.
  • Naprijed tajnost: Protokoli zasnovani na tajnosti mogu generirati nove parove ključeva za svaku novu sesiju i automatski ih mogu odbaciti na kraju kada je sesija također završena. U tim se protokolima tajnosti, najčešće nego ne, koristi razmjena ključeva Diffie Hellman.

Prednosti Algoritma Diffie Hellman

  • Pošiljalac i primatelj ne trebaju prethodno poznavanje jedno drugoga.
  • Nakon što se ključevi razmjene, komunikacija podataka može se obaviti nesigurnim kanalom.
  • Dijeljenje tajnog ključa je sigurno.

Nedostaci algoritma Diffie Hellman

  • Algoritam se ne može tužiti ni za jednu asimetričnu razmjenu ključeva.
  • Isto tako, ne može se koristiti za potpisivanje digitalnog potpisa.
  • Budući da ne potvrđuje identitet nijedne strane u prijenosu, razmjena ključeva Diffie Hellman podložna je napadu "čovjek-u-sredini".

Zaključak

Zbog svojih prednosti, Diffie Hellman razmjena ključeva pokazala se kao koristan sustav razmjene ključeva. Premda je nekome tko je hvatao mrežu dešifrirao podatke i dobio ključeve, ipak je moguće ako generirani brojevi nisu u potpunosti slučajni. Također, sustav razmjene ključeva omogućuje muškarcu da izvrši srednji napad, kako bi se to izbjeglo, obje strane trebaju biti vrlo oprezne na početku razmjene.

Preporučeni članak

Ovo je vodič za Algoritam razmjene ključeva Diffie Hellman. Ovdje raspravljamo o korištenju, različitim algoritmima, prednostima i nedostacima. Možete i proći naše druge predložene članke da biste saznali više -

  1. Algoritmi strojnog učenja
  2. Algoritam šifriranja
  3. Algoritmi klasifikacije
  4. Vrste algoritama

Kategorija: