Syftet med denna sida är att visa steg för steg hur ett krypteringssystem med offentlig nyckel fungerar. Vi använder RSA-algoritmen (uppkallad efter uppfinnarna Rivest, Shamir, Adleman) med mycket små primtal. De grundläggande funktionerna är implementerade i JavaScript (välj "Visa källa" i webbläsaren).
Obs! Den här sidan är endast till för att förklara mekanismen. I praktiken används mer avancerade algoritmer och mycket större primtal!
Att arbeta med ett krypteringssystem med offentlig nyckel har huvudsakligen tre faser:
Nyckelgenerering:
Den som vill ta emot hemliga meddelanden skapar en offentlig nyckel (som publiceras) och en privat nyckel (hemlig). Nycklarna genereras på ett sätt som döljer deras konstruktion och gör det svårt att hitta den privata nyckeln om man bara känner till den offentliga nyckeln.
Kryptering:
Ett hemligt meddelande till vilken person som helst kan krypteras med dennes offentliga nyckel (som kan offentliggöras, som en mailadress).
Dekryptering:
Endast personen som meddelandet är avsett för kan enkelt dekryptera det hemliga meddelandet med den privata nyckeln.
RSA: Generera nycklar
Från två valda primtal genererar datorn den offentliga (publika) nyckeln och den privata nyckeln.