Articles

Hur Fungerar Public Key Kryptering? / Public Key Cryptography and SSL

Vad är kryptering för offentlig nyckel?

kryptering med offentlig nyckel, eller kryptering med offentlig nyckel, är en metod att kryptera data med två olika nycklar och göra en av nycklarna, den offentliga nyckeln, tillgänglig för alla att använda. Den andra nyckeln är känd som den privata nyckeln. Data krypterade med den offentliga nyckeln kan endast dekrypteras med den privata nyckeln, och data krypterade med den privata nyckeln kan endast dekrypteras med den offentliga nyckeln. Offentlig nyckelkryptering är också känd som asymmetrisk kryptering., Det används ofta, särskilt för TLS / SSL, vilket gör HTTPS möjligt.

Vad är en kryptografisk nyckel?

i kryptografi är en nyckel en bit information som används för kryptering av data så att den visas slumpmässig; ofta är det ett stort antal, eller sträng med siffror och bokstäver. När okrypterade data, även kallad plaintext, sätts in i en krypteringsalgoritm med nyckeln, kommer plaintext ut på andra sidan som slumpmässig data. Men alla med rätt nyckel för dekryptering av data kan sätta tillbaka den i klartext form.,

Plaintext + key = ciphertext:

hello + 2jd8932kd8 = X5xJCSycg14=

Ciphertext + key = plaintext:

X5xJCSycg14= + 2jd8932kd8 = hello

(detta är ett exempel på symmetrisk kryptering, där endast en nyckel används.)

*använda Blowfish algoritm, CBC-läge, Base64-kodning.

hur fungerar kryptering av offentlig nyckel?

offentlig nyckelkryptografi kan verka komplex för den oinitierade; lyckligtvis kom en författare som heter Panayotis Vryonis upp med en analogi som ungefär går enligt följande.

Föreställ dig en bagage med ett lås som två personer, Bob och Alice, använder för att skicka dokument fram och tillbaka., Ett typiskt lås har bara två tillstånd: låst och olåst. Vem som helst med en kopia av nyckeln kan låsa upp bagageutrymmet om det är låst och vice versa. När Bob låser bagageutrymmet och skickar det till Alice, vet han att Alice kan använda sin kopia av nyckeln för att låsa upp bagageutrymmet. Detta är i huvudsak hur det som kallas symmetrisk kryptografi fungerar: en hemlig nyckel används för både kryptering och dekryptering, och båda sidor av en konversation använder samma nyckel.

föreställ dig nu istället att Bob gör en bagage med en speciell typ av lås. Detta lås har tre tillstånd istället för två:

  • A., Låst, nyckel vände hela vägen till vänster
  • B. olåst, i mitten.
  • C. låst, nyckel vände hela vägen till höger.

i stället för en nyckel går två nycklar med detta lås:

  • Nyckel nr 1 kan bara vända åt vänster
  • Nyckel nr 2 kan bara vända åt höger

det betyder att om stammen är låst och nyckeln vrids till position a, kan endast nyckel nr 2 Låsa upp den genom att vrida åt höger, till position B (olåst). Om bagageluckan är låst i läge C kan endast nyckel nr 1 låsa upp den genom att vrida låset åt vänster, till läge B.,

med andra ord kan båda tangenterna låsa stammen – men när den är låst kan bara den andra nyckeln låsa upp den.

låt oss nu säga att Bob gör några dussin kopior av nyckel nr 2, nyckeln som bara blir rätt och delar dem med alla han känner och alla som vill ha en kopia, vilket gör den till sin offentliga nyckel. Han håller nyckel nr 1 för sig själv – det är hans privata nyckel. Vad åstadkommer detta?

  1. Alice kan skicka Bob konfidentiella data via stammen och vara säker på att endast Bob kan låsa upp den., När Alice har låst bagageutrymmet med den offentliga nyckeln, som vänder från vänster till höger, kan bara en nyckel som kan svänga höger till vänster låsa upp den. Det betyder att bara Bobs privata nyckel kan låsa upp den.
  2. Alice kan vara säker på att stammen är faktiskt från Bob, och inte en imitatör, om den är låst med sin privata nyckel. Det finns bara en nyckel som kan låsa stammen så att låset är i position A, eller vände hela vägen till vänster: Bobs privata nyckel. Det är sant att vem som helst kan låsa upp den med den offentliga nyckeln genom att vrida nyckeln till höger, men det är garanterat att stammen är från Bob.,

ersätt plaintext-data för bagage-och kryptografiska nycklar för de fysiska nycklarna från denna analogi, och det här är hur kryptering med offentlig nyckel fungerar. Endast ägaren till den privata nyckeln kan kryptera data så att den offentliga nyckeln dekrypterar den; under tiden kan vem som helst kryptera data med den offentliga nyckeln, men endast ägaren till den privata nyckeln kan dekryptera den.

därför kan vem som helst skicka data säkert till den privata nyckelägaren., Också, vem som helst kan kontrollera att data de får från ägaren av den privata nyckeln är faktiskt från den källan, och inte från en imitatör (se vad är en on-path attack?).

Hur använder TLS/SSL kryptering med offentlig nyckel?

kryptering med offentlig nyckel är extremt användbar för att skapa säker kommunikation via Internet (via HTTPS). En webbplats SSL / TLS certifikat, som delas offentligt, innehåller den offentliga nyckeln, och den privata nyckeln är installerad på ursprungsservern – det är ” ägs ” av webbplatsen.,

TLS-handskakningar använder kryptering med offentlig nyckel för att autentisera ursprungsserverns identitet och för att utbyta data som används för att generera sessionstangenterna. En nyckelväxlingsalgoritm, som RSA eller Diffie-Hellman, använder det offentliga-privata nyckelparet för att komma överens om sessionstangenter, som används för symmetrisk kryptering när handslaget är klart. Klienter och servrar kan komma överens om nya sessionsnycklar för varje kommunikationssession, så att dåliga aktörer inte kan dekryptera kommunikation även om de identifierar eller stjäl en av sessionsnycklarna.