Internet: Kryptering och offentliga nycklar
Hej jag heter Mia Gil-Epner, jag studerar datavetenskap på UC Berkeley och arbetar
hos försvarsdepartementet med att hålla information säker. Internet är
ett öppet och offentligt system. Alla skickar och tar emot data med gemensamma
anslutningar. Men även om det är ett öppet system utbyter vi ändå en hel del privata
data. Saker som kreditkortsnummer, bankuppgifter, lösenord och e-post. Så
hur håller vi privata uppgifter hemliga? Alla uppgifter kan hållas hemliga med
en process som kallas kryptering, som ändrar meddelandet för att dölja original-
texten. Dekryptering processen som gör meddelandet läsbart. Det är
en enkel idé, och människor har gjort det i århundraden. En av de första välkända
metoderna är Caesarchiffer, döpt efter romerska generalen Julius Caesar
som krypterade sina militärkommandon för att se till att avlyssnade meddelanden
inte skulle kunna läsas av fiender. Caesar Cipher är en algoritm som ersätter
bokstäverna i det ursprungliga meddelandet med en bokstav ett visst antal steg bort i
alfabetet. Om antalet bara är känt av sändaren och mottagaren kallas det för
nyckeln. Den gör att läsaren kan låsa upp det hemliga meddelandet. T.ex. om original
texten är "HEJ" och krypteras med Caesar Chiffer-algoritmen med en nyckel på 5
skulle det vara så här. För att dekryptera meddelandet använder mottagaren nyckeln.
Men det stora problemet med Caesar Chiffer är att vem som helst kan knäcka
det krypterade meddelandet genom att pröva alla nycklar i det engelska alfabetet,
det finns bara 26 bokstäver, vilket gör att det krävs högst 26 försök för att
dekryptera meddelandet. Det är inte svårt att pröva 26 nycklar, det skulle ta högst
en timme eller två. Vi gör det svårare och förskjuter inte varje bokstav lika, vi
förskjuter varje bokstav med olika antal steg. Här visar en tiosiffrig nyckel
hur många steg varje bokstav kommer att förskjutas för att kryptera et meddelande.
Det skulle vara svårt att gissa. Tio siffror har 10 miljarder möjliga lösningar
Självklart är det för svårt för att lösa, det skulle ta en människa flera hundra år.
Det skulle ta en modern dator bara sekunder att pröva 10 miljarder nycklar.
Så i en modern värld där brottslingar är beväpnade med datorer istället för pennor,
hur kan meddelanden krypteras så att de är för svåra att knäcka? För svåra innebär
att det finns för många möjligheter att beräkna inom rimlig tid. Dagens säkra
kommunikation är krypterad med 256-bitars nycklar. Det innebär att en dator som
stöter på ditt meddelande måste pröva så många möjliga alternativ för att hitta
nyckeln och knäcka meddelandet. Även om du hade 100 000 superdatorer och samtliga
kunde pröva en miljon miljarder nycklar i sekunden skulle det ta biljoners biljoner
år att att knäcka ett enda meddelande krypterat med 256 bitar.
Nu blir ju datorchips dubbelt så snabba och hälften så stora drygt varje år. Om
utvecklingen fortsätter i den takten kommer dagens omöjliga problem kunna lösas
om bara några hundra år och 256 bitar kommer inte att räcka till. Faktum är att
vi redan varit tvungna att utöka standard- nyckeln för att inte halka efter datorerna
Den goda nyheten att en längre nyckel inte gör krypteringen svårare men att det
exponentiellt ökar antalet försök det tar för att knäcka ett chiffer. När
avsändaren och mottagaren delar samma nyckel för att kryptera och avkryptera,
heter det symmetrisk kryptering. som med Caesar Chiffer måste den hemliga nyckeln
enas om i privat mellan två personer i förväg. Det går bra för människor, men
då internet är öppet så det är omöjligt för två datorer för att "träffas" privat.
Istället använder datorer asymmetrisk kryptering, en offentlig nyckel som kan
ges till med vem som helst och en privat nyckel. Den offentliga nyckeln krypterar
data och vem som helst kan använda men hemligheten kan bara dekrypteras
med en dator som har tillgång till den privata nyckeln. Det fungerar matematiskt,
men vi tar inte det just nu. Föreställ dig att du har en personlig brevlåda,
där vem som helst kan lägga i post med rätt nyckel. Du kan göra många kopior
av insättningsnyckeln och skicka till någon eller även göra den offentlig. Vem
som helst kan använda den offentliga nyckeln för att öppna brevinkastet och
lägga i meddelanden, men bara du kan öppna brevlådan med din privata nyckel för att
se dina hemliga meddelanden. Du kan även svara med ett säkert meddelande
genom att använda någon annans offentliga insättningsnyckel och skicka meddelanden
utan att någonsin behöva enas om en privat nyckel. Offentliga nycklar är grunden
till all säker kommunikation på det öppna internet med säkerhetsprotokollen
SSL och TLS, som skyddar oss när vi surfar på webben. Din dator använder det
när ser det lilla låset eller bokstäverna https på din webbläsares adressrad
Det innebär att datorn använder sig av offentliga nycklar för säkert datautbyte
med webbplatsen du är på. Ju fler internetanvändare, desto fler privata
data kommer att överföras och behovet att säkra dessa data blir allt viktigare.
Och när datorer blir snabbare och snabbare måste vi utveckla nya sätt att kryptera
på sätt som inte datorer kan knäcka. Det här är mitt jobb och det förändras snabbt.