Sissejuhatus avaliku võtme krüptimisse

Avaliku võtme krüptimist nimetatakse ka asümmeetrilise võtme krüptimiseks. Kuna nimi ise ütleb asümmeetrilise võtme, kasutatakse avaliku võtme krüptimiseks kahte erinevat võtit. Üht võtit kasutatakse krüpteerimisprotsessiks ja teist võtit dekrüpteerimisprotsessiks. Kui võti on krüptimiseks ja dekrüptimiseks otsustatud, siis teist võtit ei kasutata. Nendest kahest võtmest nimetatakse ühte võtit avalikuks ja teist privaatvõtmeks.

Oletame, et soovite suhelda sõpradega Interneti kaudu, turvalise suhtluse alustamiseks peate hankima nii avaliku kui ka privaatvõtme. Privaatvõti on salajane võti, peaksite seda saladuses hoidma. Kui privaatvõti antakse teisele osapoolele, on rünnaku võimalus kolmanda osapoole kaudu.

Oletame, et X soovib Y-ga turvaliselt suhelda, nii X-il kui Y-l peaks olema avalik võti ja privaatvõti.

  • X peaks hoidma tema privaatvõtit saladuses.
  • X peaks oma avalikku võtit Y-le teatama.
  • Peaksite tema privaatvõtit saladuses hoidma.
  • Y peaks oma avalikku võtit X-i teavitama.

Kuidas avaliku võtme krüptimine töötab?

Allpool selgitatakse avaliku võtme krüptimise toimimist:

1. juhtum

Kui X soovib Y-ga suhelda, kasutab X sõnumi krüptimiseks Y-i avalikku võtit, see on võimalik, kuna Y jagab oma avalikku võtit X-iga.

  • X saadab krüptitud teate Y-le.
  • Y saab sõnumi X-ilt.
  • Y dekrüpteerib sõnumi, kasutades teda, st Y privaatset võtit.

Märkus. Ainult Y teab, et tema privaatvõtit ja sõnumit saab dešifreerida Y privaatse võtme abil. Selle eeliseks on see, et osapool ei saa sõnumit dekrüpteerida, kuna ta ei tea Y privaatset võtit. Ainult Y privaatne võti saab sõnumi dekrüpteerida.

2. juhtum

Kui Y soovib X-iga suhelda, kasutab Y sõnumi krüptimiseks X-i avalikku võtit. See on võimalik, kuna X jagab Y-le oma avalikku võtit.

  • Y saadab krüptitud sõnumi X-i.
  • X saab sõnumi Y-lt
  • X dekrüpteerib sõnumi tema, st X privaatse võtme abil.

Komponendid

Järgnevalt on toodud avaliku võtme krüptimise komponendid:

  • Lihttekst: teksti, mis on loetavas vormingus ja mis on kõigile arusaadav, nimetatakse lihttekstiks. Krüpteerimisprotsessis kasutatakse sisendina lihtteksti.
  • Ciphertext: see on tekst, mis teisendatakse krüpteerimisalgoritmi abil mitteloetavas vormingus loetavaks vorminguks, mida nimetatakse krüptteksteks. Krüptotekst on krüptimisprotsessi väljund. See on loetamatu vormingus ja keegi ei saa sellest aru.
  • Avalik võti: võtit, mis on kõigile teada, tuntakse avaliku võtmena. Krüpteerimiseks kasutatakse saatja poolel tavaliselt avalikku võtit.
  • Privaatvõti: võtit, mis pole kõigile teada ja mida hoitakse saladuses, tuntakse kui privaatvõtit. Privaatvõtit kasutatakse dekrüpteerimiseks vastuvõtja poolel.
  • Krüptimisalgoritm: algoritmi, mida kasutatakse lihtteksti teisendamiseks šifreteks, nimetatakse krüpteerimisalgoritmiks.
  • Dekrüptimisalgoritm: šifreerimisalgoritmina nimetatakse algoritmi, mida kasutatakse šifriteksti muutmiseks tavaliseks tekstiks.

Avaliku võtme krüptimise algoritmid

Järgnevalt on toodud avaliku võtme krüptimise algoritmid.

RSA algoritm

RSA on populaarseim avaliku võtme krüptimisalgoritm. RSA algoritm põhineb matemaatilistel arvutustel, mille abil tuvastati ja suure algarvu korrutamine on lihtne, kuid nende teguri arvestamine on keeruline. RSA-s kasutatavad privaatsed ja avalikud võtmed on suured algarvud.

RSA algoritmide sammud:

  • Valige kaks suurt algarvu X ja Y.
  • Arvutage korrutis N = X * Y.
  • Valige avalik võti E nii, et see ei oleks teguriteks (X - 1) ja (Y - 1).
  • Valige privaatvõti D selliselt, et järgmine võrrand saaks tõeks.
  • (D * E) mod (X - 1) * (Y - 1) = 1
  • Krüpteerimiseks arvutage CT kui CT = PT E mod N.
  • Saatke CT vastuvõtjale.
  • Krüptimiseks arvutage PT kui PT = CT D mod N.
Märkus: RSA algoritmis on avaliku võtme ja privaatvõtme valimine ja genereerimine kriitiline ülesanne.

ElGamali krüptograafia algoritm

ElGamal on veel üks populaarne avaliku võtme krüptimisalgoritm.

ElGamali võtme genereerimine:

  • Valige suur peaminister P avaliku võtmena ja Q privaatvõtmena.
  • Valige teine ​​krüptimisvõti väärtuseks E1.
  • Valige kolmas krüptimisvõti väärtuseks E2, nii et E2 = E Q mod P ElGamali võtme krüptimine.
  • Valige juhuslik arv R
  • Arvutage šifretekst CT = E1 R mod P abil.
  • Arvutage teise Cipheri tekst CT2 = (PT * E2 R) mod P ElGamali võtme dekrüptimine
  • Arvutage lihttekst nii, et PT = (CT2 * (CT Q) - 1) mod P.

Soovitatavad artiklid

See on avaliku võtme krüptimise juhend. Siin käsitleme avaliku võtme krüptimist, selle komponente ja kuidas see koos näidetega töötab. Lisateabe saamiseks võite vaadata ka järgmisi artikleid -

  1. Mida saate teha sümmeetrilise võtme krüptimisega?
  2. Krüptograafia vs krüptimine
  3. Sümmeetriliste algoritmide tüübid
  4. Dropboxi põhijooned

Kategooria: