Introduksjon til ElGamal Encryption

ElGamal kryptosystem kan defineres som kryptografialgoritmen som bruker det offentlige og private nøkkelkonseptet for å sikre kommunikasjonen som skjer mellom to systemer. Det kan betraktes som den asymmetriske algoritmen der kryptering og dekryptering skjer ved bruk av offentlige og private nøkler. For å kryptere meldingen brukes den offentlige nøkkelen av klienten mens meldingen kan dekrypteres ved å bruke den private nøkkelen på serverenden. Dette blir sett på som en av de effektive algoritmene for å utføre kryptering og dekryptering ettersom nøklene er ekstremt tøffe å forutsi. Det eneste formålet med å introdusere signaturen i meldingstransaksjonen er å beskytte den mot MITM, noe som kan oppnås meget effektivt med denne algoritmen.

ElGamal krypteringsalgoritme med eksempel

Sjelkonseptet med denne algoritmametoden er å gjøre det nesten umulig å beregne krypteringsmetoden selv om viss viktig informasjon er kjent for angriperen. Det er hovedsakelig bekymret for vanskeligheten med å utnytte den sykliske gruppen for å finne den diskrete logaritmen.

Det vil være veldig enkelt å forstå ved å bruke et enkelt eksempel. Anta at selv om verdien som g a og g b er verdiene som er kjent for angriperen, vil angriperen synes det er ekstremt vanskelig å finne ut verdien av g ab som ikke er annet enn den spreke verdien.

For å forstå hele scenariet, må vi gå trinnvis på hvordan kryptering og dekryptering av meldinger faktisk skjer. Vi vil vurdere eksemplet på to jevnaldrende som er villige til å utveksle data på en sikker måte ved å utnytte ElGamal-algoritmen. La oss anta at user1 og user2 ønsker å utveksle informasjonen i det skjulte i så fall følgende prosedyre vil bli fulgt.

Trinn 1: Generering av offentlige og private nøkler.

  • Brukeren1 vil prøve å velge et veldig langt eller stort antall x, og i mellomtiden vil han også velge en syklisk gruppe Fx. Fra denne sykliske gruppen vil han videre velge en annen komponent b og ett element mer. Verdiene vil bli valgt på den måten at hvis de går gjennom en bestemt funksjon, vil utfallet være lik 1.
  • Når verdivalgfasen er over, vil en verdi beregnes som vil bli brukt videre til å generere den private nøkkelen. Ved å bruke formelen fm = b c, beregnes verdien. I det nåværende scenariet vil brukeren 1 velge F, fm = b c, a, b som sin offentlige nøkkel mens verdiene til a vil bli lagret som den private nøkkelen som vil bli brukt videre som den private nøkkelen.

Trinn 2: User2 vil kryptere dataene ved å bruke den offentlige nøkkelen til User1.

  • For å begynne krypteringen av meldingen, er det visse verdier som user2 må velge. Brukeren2 vil også kreve å velge en av verdiene p fra den sykliske gruppen. Den sykliske gruppen vil være den samme som for bruker1. Verdien bør velges på en måte slik at Inc passerer med en i den aktuelle funksjonen vil generere utfallet 1.
  • Vet at user2 vil generere noen andre verdier som vil bli brukt til å kryptere meldingen ved å bruke den offentlige nøkkelen. Verdien som genereres vil være Pm = b p. Den andre revalueringen b c vil være lik b ap. Resultatet av denne beregningen blir multiplisert med den andre verdien Z for å komme nærmere krypteringsmetoden. Etter hvert vil verdien bli sendt ved hjelp av utfallet av beregninger på b p, Z * b ap.

Trinn 3: Dekryptering av meldingen ved bruker1.

  • Brukeren 1 vil deretter bruke beregningen av verdiene som er valgt i første og andre fase for å identifisere det passende nummeret som vil bli brukt til å dekryptere den krypterte meldingen. Brukeren 1 vil behandle b ap, og deretter blir utfallet brukt til å dele med Z for å få den dekrypterte verdien. Den dekrypterte verdien er noe som er kryptert i den andre fasen.
  • I scenariet over har brukeren 1 startet prosessen ved å beregne den private og offentlige nøkkelen som er sjelen til algoritmen. Nøkkelen brukes videre av user2 i det andre trinnet for å kryptere metoden.
  • Meldingen er kryptert på en måte slik at de verdsetter beregning i den innledende fasen kan utnyttes for å dekryptere meldingen også. I det tredje trinnet kan det sees at etter at du har dykket hele verdien med tallet som er beregnet i det tredje trinnet, dekrypterer meldingen fullstendig, noe som gjør den lesbar for sluttbrukeren. Den samme tilnærmingen følges hver gang trangen til å sende meldingen trygt oppstår.

Konklusjon - ElGamal-kryptering

ElGamal-algoritmen brukes i kryptering og dekryptering som hovedsakelig anses for sin evne til å gjøre nøkkelforutsigelsene ekstremt tøffe. Å være den asymmetriske algoritmen, den bruker mekanismen til privat og offentlig nøkkel som gjør nøkkelforutsigelsene enda tøffere. Alle applikasjonene som ikke bare vil stole på kanalkryptering for å beskytte dataene sine, kan synes det er nyttig å implementere denne algoritmen i programmet. I tillegg til sikkerheten på applikasjonsnivå, regnes denne algoritmen også som veldig optimal for å håndtere dataoverføringen over det private eller offentlige nettverket.

Anbefalte artikler

Dette har vært en guide til EIGamal Encryption. Her diskuterer vi også introduksjons- og EIGamal Encryption-algoritmen med et eksempel. Du kan også se på følgende artikler for å lære mer–

  1. Asymmetrisk kryptering
  2. Symmetrisk nøkkelkryptering
  3. Advanced Encryption Standard
  4. Krypteringsalgoritme