✖

Vigenèrechiffer

Vigenèrechiffret är ett berömt chiffer som använder flera chifferalfabet, vilket gör det mycket mer motståndskraftigt mot klassisk frekvensanalys.

Principen för kryptering och dekryptering

Vi kan förklara hur krypteringen går till med hjälp av Caesarchiffret. Nyckeln i Vigenèrechiffret är ett valfritt ord som består av bokstäver i det engelska alfabetet, dvs. a—z. Nyckeln kan till exempel vara ordet ”bcf”. Krypteringen går till så att vi skriver upp klartexten och direkt under den nyckeln, som vi upprepar tills den är lika lång som klartexten. För klartexten ”godmorgon” skulle det se ut så här:

Klartext:godmorgon
Nyckel:bcfbcfbcf

Nu krypterar vi alla bokstäver i klartexten med Caesarchiffret och motsvarande nyckel, dvs. nyckeln i samma kolumn. Caesarchiffret är ett förskjutningschiffer, där nyckeln anger hur många steg vi ska förskjuta bokstaven i klartexten, räknat från bokstaven ”a”. Bokstaven ”b” betyder till exempel en förskjutning ett steg i alfabetet ”åt höger”. Bokstaven ”d” betyder tre steg åt höger. Ordet ”hej” skulle vi med Caesarchiffret och nyckeln ”b” kryptera till ”ifk”.

I Caesarchiffret krypterar vi hela texten med en enda bokstav, men i Vigenèrechiffret krypterar vi vanligen med flera bokstäver. Kryptering av texten ”godmorgon” med nyckeln ”bcf” skulle alltså ge följande:

Klartext:godmorgon
Nyckel:bcfbcfbcf
Chiffertext:hqinqwhqs

Den första bokstaven ”g” krypterade vi med nyckeln ”b”, dvs. en förskjutning på ett steg, och därför blir resultatet bokstaven ”h”. Bokstaven ”o” krypterade vi med nyckeln ”c”, dvs. en förskjutning på två steg, och resultatet blir bokstaven ”q”. Osv.

Vi dekrypterar på exakt samma sätt, men i stället för att förskjuta bokstäverna ”åt höger” förskjuter vi dem ”åt vänster”.

Kryptoverktyg online för Vigenèrechiffret

Text:
Nyckel:

Vigenèrekvadraten

Hela förfarandet för kryptering och dekryptering kan också förklaras med Vigenèrekvadraten, ett hjälpmedel som vi kan använda när vi krypterar. Vigenèrekvadraten är en tabell med 26 rader och 26 kolumner. På varje rad står alfabetet, och på varje rad är det förskjutet ett steg:

Om vi har en sådan Vigenèrekvadrat går krypteringen till så här: vi tar bokstaven i klartexten och hittar raden med den bokstaven. Sedan tar vi bokstaven i nyckeln och hittar kolumnen. Bokstaven i chiffertexten är då bokstaven där motsvarande rad och kolumn korsar varandra.

I det föregående exemplet krypterade vi ”godmorgon” med nyckeln ”bcf”. Vi hittar alltså raden som börjar med ”g” och kolumnen som börjar med ”b”. I skärningspunkten mellan raden och kolumnen står bokstaven ”h”, som är bokstaven i chiffertexten.

Vid dekryptering går vi tillväga tvärtom. Om vi vill dekryptera bokstaven ”h” med nyckeln ”b” hittar vi kolumnen ”b”, i den hittar vi raden som innehåller bokstaven ”h”, och bokstaven som står i början av den raden är bokstaven i klartexten.

Vigenèrechiffrets största styrka

Varför var Vigenèrechiffret så starkt på sin tid? Därför att det gjorde klassisk frekvensanalys betydligt svårare. I Caesarchiffret gäller till exempel att två lika bokstäver i klartexten krypteras till samma bokstäver i chiffertexten. Det gäller däremot inte i Vigenèrechiffret, åtminstone inte alltid.

Om vi krypterade texten ”Bulle bulle bulle” med nyckeln ”stan” skulle vi få chiffertexten ”tnlyw uuydx bhdee”. Vi ser att klartexten visserligen innehåller tre likadana ord, men i den färdiga chiffertexten ser varje ord helt olika ut. Det mittersta ordet, ”uuydx”, innehåller dessutom två bokstäver ”u”, som har uppstått ur två olika bokstäver i klartexten: ”bu”.

Valet av nyckel

Hur säkert Vigenèrechiffret är påverkas mycket starkt av valet av nyckel. Medan det i Caesarchiffret var likgiltigt vilken bokstav vi valde, så länge den inte var ”a”, leder olika nycklar i Vigenèrechiffret till olika hög säkerhet.

  • En nyckel som bara består av en bokstav gör Vigenèrechiffret till Caesarchiffret igen.
  • En nyckel som består av flera likadana bokstäver, till exempel ”mmm”, leder också till Caesarchiffret.
  • En text som är krypterad med en kort nyckel är mycket lätt att knäcka.
  • En tillräckligt lång chiffertext som har krypterats med en nyckel som inte är alldeles kort (omkring femtio tecken) är också mycket lätt att knäcka. På en dator tar det några sekunder.
  • En text som är krypterad med en nyckel som är helt slumpmässig och lika lång som själva texten är omöjlig att knäcka.