Uvod v šifriranje javnih ključev

Šifriranje javnih ključev imenujemo tudi asimetrično šifriranje ključev. Kot že samo ime pove asimetrični ključ, se za šifriranje javnih ključev uporabljata dva različna ključa. En ključ se uporablja za postopek šifriranja, drugi ključ pa za postopek dešifriranja. Ko se bo ključ odločil za šifriranje in dešifriranje, noben drug ključ ne bo uporabljen. Iz teh dveh ključev se en ključ imenuje javni ključ, drugi pa zasebni.

Predpostavimo, da želite komunicirati s prijatelji prek interneta, če želite komunikacijo varno začeti, morate pridobiti javni in zasebni ključ. Zasebni ključ je tajni ključ, hranite ga kot skrivnost. Če je zasebni ključ oddan drugi osebi, obstaja možnost napada prek tretje osebe.

Recimo, da želi X varno komunicirati z Y, potem morata imeti X in Y javni in zasebni ključ.

  • X naj njen zasebni ključ skriva.
  • X naj svoj javni ključ obvesti Y.
  • Njen zasebni ključ bi moral imeti v skrivnosti.
  • Y mora obvestiti njen javni ključ za X.

Kako deluje šifriranje javnega ključa?

Delovanje šifriranja javnih ključev je razloženo spodaj:

Primer 1

Ko želi X komunicirati z Y, X uporabi javni ključ Y za šifriranje sporočila, je to mogoče, ker Y svoj javni ključ deli X.

  • X pošlje šifrirano sporočilo Y.
  • Y prejme sporočilo od X.
  • Y sporočilo dešifrira z njenim zasebnim ključem.

Opomba: Samo Y ve, da je njen zasebni ključ in sporočilo mogoče dešifrirati z Y-ovim zasebnim ključem. Prednost tega je, da stranka sporočila ne more dešifrirati, ker zasebnega ključa Y ne pozna. Samo zasebni ključ Y lahko sporočilo dešifrira.

Primer 2

Ko želi Y komunicirati z X, Y uporablja javni ključ X za šifriranje sporočila. To je mogoče, ker X deli njen javni ključ Y.

  • Y šifrirano sporočilo pošlje X.
  • X prejme sporočilo od Y
  • X dešifrira sporočilo s pomočjo njenega zasebnega ključa.

Komponente

Sledijo komponente šifriranja javnega ključa:

  • Navadno besedilo: Besedilo, ki je v berljivi obliki in ga lahko razume kdorkoli, se imenuje navadno besedilo. Navadno besedilo se uporablja kot vhod za postopek šifriranja.
  • Ciphertext: Besedilo, ki se pretvori v berljivo obliko v nečitljivi obliki z algoritmom za šifriranje, se imenuje šifrirni tekst. Šifrotekst je izhod procesa šifriranja. Je v nečitljivi obliki in ga nihče ne razume.
  • Javni ključ: Ključ, ki je znan vsem, je znan kot javni ključ. Javni ključ se običajno uporablja za šifriranje na strani pošiljatelja.
  • Zasebni ključ: Ključ, ki ni znan vsem, ki se hrani kot skrivnost, je znan kot zasebni ključ. Zasebni ključ se uporablja za postopek dešifriranja na strani sprejemnika.
  • Algoritem šifriranja: Algoritem, ki se uporablja za pretvorbo navadnega besedila v šifrirano besedilo, je znan kot algoritem za šifriranje.
  • Algoritem dešifriranja: Algoritem, ki se uporablja za pretvorbo šifrskega besedila v navadno besedilo, je znan kot algoritem za dešifriranje.

Algoritmi šifriranja javnih ključev

Sledijo Algoritmi šifriranja z javnim ključem.

Algoritem RSA

RSA je najbolj priljubljen algoritem šifriranja z javnim ključem. Algoritem RSA temelji na matematičnem izračunu. Prepoznavanje in množenje velikega preprostega števila je enostavno, vendar težko določiti njihov faktor. Zasebni in javni ključi, ki se uporabljajo v RSA, so velike številke.

Koraki za algoritme RSA:

  • Izberite dve veliki številki X in Y.
  • Izračunajte zmnožek N = X * Y.
  • Izberite javni ključ E tako, da ni faktor (X - 1) in (Y - 1).
  • Izberite zasebni ključ D tako, da naslednja enačba postane resnična.
  • (D * E) mod (X - 1) * (Y - 1) = 1
  • Za šifriranje izračunajte CT kot CT = PT E mod N.
  • Pošljite CT sprejemniku.
  • Za dešifriranje izračunajte PT kot PT = CT D mod N.
Opomba: V algoritmu RSA je izbira in generacija javnega in zasebnega ključa ključna naloga.

Algoritem kriptografije ElGamal

ElGamal je še en priljubljen algoritem šifriranja javnih ključev.

Generacija ključev ElGamal:

  • Izberite veliko prvo število P kot javni ključ in Q kot zasebni ključ.
  • Izberite drugi šifrirni ključ kot E1.
  • Izberite tretji šifrirni ključ kot E2, tako da je E2 = E Q mod P Šifriranje ključa ElGamal.
  • Izberite naključno število R.
  • Šiftekst izračunajte kot CT = E1 R mod P.
  • Izračunajte drugo šifrirano besedilo CT2 = (PT * E2 R) mod P Šifriranje tipke ElGamal
  • Izračunajte navadno besedilo kot PT = (CT2 * (CT Q) - 1) mod P.

Priporočeni članki

To je vodnik za šifriranje javnih ključev. Tukaj razpravljamo o šifriranju javnega ključa, njegovih sestavnih delih in kako deluje skupaj s primeri. Če želite izvedeti več, si oglejte tudi naslednje članke -

  1. Kaj lahko naredite s simetričnim šifriranjem ključev?
  2. Kriptografija proti šifriranju
  3. Vrste simetričnih algoritmov
  4. Ključne značilnosti Dropboxa