algoritmul RSA este algoritmul de criptografie asimetrică. Asimetric înseamnă de fapt că funcționează pe două chei diferite, adică cheia publică și cheia privată. După cum Numele descrie că cheia publică este dată tuturor și cheia privată este păstrată privată.

un exemplu de criptografie asimetrică:

  1. un client (de exemplu browser) trimite cheia publică către server și solicită anumite date.
  2. serverul criptează datele folosind cheia publică a clientului și trimite datele criptate.
  3. Clientul primește aceste date și le decriptează., deoarece acest lucru este asimetric, nimeni altcineva, cu excepția browser-ul poate decripta datele, chiar dacă o terță parte are cheia publică a browser-ului.

    ideea! Ideea RSA se bazează pe faptul că este dificil să se factorizeze un număr întreg mare. Cheia publică constă din două numere în care un număr este multiplicarea a două numere prime mari. Și cheia privată este, de asemenea, derivată din aceleași două numere prime. Deci, dacă cineva poate factoriza numărul mare, cheia privată este compromisă., Prin urmare, puterea de criptare se află în totalitate pe Dimensiunea cheii și dacă dublăm sau triplăm Dimensiunea cheii, puterea criptării crește exponențial. Cheile RSA pot fi de obicei 1024 sau 2048 biți lungi, dar experții cred că cheile de 1024 biți ar putea fi rupte în viitorul apropiat. Dar până acum pare a fi o sarcină imposibilă.

    Să ne învețe mecanismul din spatele algoritm RSA :

      >> Generarea de chei Publice :
    
    
  4. Selectați doi prim nu este. Să presupunem că P = 53 și Q = 59.,Acum, prima parte a cheii publice: n = P * Q = 3127.
  5. Cheia Noastră Publică este făcut de n și e
  6. >> Generarea Cheii Private :

    
    
  7. Avem nevoie pentru a calcula Φ(n) :Astfel încât Φ(n) = (P-1)(Q-1) deci, Φ(n) = 3016
  8. Acum calcula Cheia Privată, d : d = (k*Φ(n) + 1) / e pentru un număr întreg kFor k = 2, valoarea lui d este 2011.,
  9. Acum suntem gata cu Cheia Publică ( n = 3127 și e = 3) și Cheia Privată(d = 2011)

    Acum ne va cripta „HI” :

    
    
  10. Conversie literele cu cifre : H = 8 și m = 9
  11. Astfel de Date Criptat c = 89e mod n. Astfel noastră de Date Criptate iese a fi 1394
  12. Acum vom decripta 1394 :

  13. Date Decriptate = cd mod n. Astfel noastră de Date Criptate iese la fi 89
  14. 8 = H și I = 9 adică „BUNĂ”.,

    mai Jos este C punerea în aplicare de algoritm RSA pentru valori mici:

    
    

    
    

    Ieșire :

    Message data = 12.000000Encrypted data = 3.000000Original Message Sent = 12.000000

    Acest articol este contribuit, prin Mohit Gupta_OMG 🙂. Dacă vă place GeeksforGeeks și ar dori să contribuie, de asemenea, puteți scrie un articol folosind contribute.geeksforgeeks.org sau e-mail la art. [email protected]. Vezi articolul apare pe GeeksforGeeks pagina principală și de a ajuta alte Geeks.