Crypto

Inledning Macau

Caesar-chifferet är en av de tidigaste kända och enklaste chiffererna. Det är en typ av substitution chiffer där varje bokstav i klartext är ’flyttas’ ett visst antal platser ner alfabetet. Till exempel, med ett skift på 1, skulle A ersättas med B, B skulle bli C, och så vidare. Metoden är uppkallad efter Julius Caesar, som tydligen använde den för att kommunicera med sina generaler.

mer komplexa krypteringsscheman som Vigen Augure-chifferet använder Caesar-chifferet som ett element i krypteringsprocessen. Den allmänt kända ROT13 ’encryption’ är helt enkelt en Caesar-chiffer med en förskjutning på 13. Caesar-chifferet erbjuder i huvudsak ingen kommunikationssäkerhet, och det kommer att visas att det lätt kan brytas även för hand.

exempel på ett krypterat meddelande

för att skicka ett krypterat meddelande från en person till en annan är det först nödvändigt att båda parter har nyckeln för chifferet, så att avsändaren kan kryptera det och mottagaren kan dekryptera det. För caesar-chifferet är nyckeln antalet tecken för att flytta chifferalfabetet.

Här är ett snabbt exempel på krypterings-och dekrypteringsstegen som är involverade i caesar-chifferet. Texten Vi kommer att kryptera är ’försvara östra väggen av slottet’, med en förskjutning (Nyckel) av 1.

plaintext: defend the east wall of the castleciphertext: efgfoe uif fbtu xbmm pg uif dbtumf

det är lätt att se hur varje tecken i klartext flyttas upp i alfabetet. Dekryptering är lika enkelt, genom att använda en förskjutning av -1.

plain: abcdefghijklmnopqrstuvwxyzcipher: bcdefghijklmnopqrstuvwxyza

självklart, om en annan nyckel används, kommer chifferalfabetet att flyttas en annan mängd.

matematisk beskrivning 2b

där k är nyckeln (skiftet) som tillämpas på varje bokstav. Efter att ha tillämpat denna funktion är resultatet ett tal som sedan måste översättas tillbaka till en bokstav. Dekrypteringsfunktionen är:

JavaScript exempel på Caesar-chifferet bisexuell

klartext

shift:

chiffertext

andra implementeringar av Caesar-chifferkoden på olika programmeringsspråk, se sidan implementeringar.

för att kryptera dina egna meddelanden i python kan du använda pycipher-modulen. För att installera det, använd pip install pycipher. För att kryptera meddelanden med Caesar-chifferet (eller en annan chiffer, se här för dokumentation):

Cryptanalysis bisexual

se kryptanalys av Caesar-chifferet för ett sätt att automatiskt bryta denna chiffer.

kryptanalys är konsten att bryta koder och chiffer. Caesar-chifferet är förmodligen det enklaste av alla chiffer att bryta. Eftersom skiftet måste vara ett tal mellan 1 och 25, (0 eller 26 skulle resultera i en oförändrad klartext) kan vi helt enkelt prova varje möjlighet och se vilken som resulterar i en läsbar text. Om du råkar veta vad en bit av chiffertexten är, eller du kan gissa en bit, så kan du omedelbart hitta nyckeln.

om detta inte är möjligt är ett mer systematiskt tillvägagångssätt att beräkna frekvensfördelningen för bokstäverna i chiffertexten. Detta består av att räkna hur många gånger varje bokstav visas. Naturlig engelsk text har en mycket tydlig fördelning som kan användas hjälp spricka koder. Denna fördelning är som följer:

engelska Brevfrekvenser

detta betyder att bokstaven e är den vanligaste och visas nästan 13% av tiden, medan z visas mycket mindre än 1 procent av tiden. Tillämpningen av Caesar-chifferet ändrar inte dessa bokstavsfrekvenser, det skiftar dem bara lite (för en förskjutning av 1 blir den vanligaste chiffertextbokstaven f). En kryptanalytiker måste bara hitta skiftet som gör att ciphertext-frekvenserna matchar nära de naturliga engelska frekvenserna och dekrypterar sedan texten med det skiftet. Denna metod kan användas för att enkelt bryta Caesar ciphers för hand.

om du fortfarande har problem, prova avsnittet kryptanalys på sidan substitution cipher. Alla strategier som arbetar med substitutions chiffer kommer också att arbeta med Caesar chiffer (men metoder som fungerar på Caesar chiffer inte nödvändigtvis fungerar på den allmänna substitutions chiffer).

För en metod som fungerar bra på datorer behöver vi ett sätt att ta reda på vilken av de 25 möjliga dekrypteringarna som ser mest ut som engelsk text. Se Cryptanalysis Of The Caesar Cipher för en genomgång av hur man bryter den med quadgram-statistik. Nyckeln (eller shift) som resulterar i en dekryptering med högsta sannolikhet att vara engelsk text är förmodligen rätt nyckel. Naturligtvis, ju mer chiffertext du har, desto mer sannolikt är det att det är sant (Detta är fallet för alla statistiska åtgärder, inklusive frekvensmetoden ovan). Så metoden som används är att ta chiffertexten, försök dekryptera den med varje nyckel och se vilken dekryptering som ser bäst ut. Denna förenklade metod för kryptanalys fungerar bara på mycket enkla chiffer som Caesar chiffer och järnväg staket chiffer, även något mer komplexa chiffer kan ha alldeles för många nycklar för att kontrollera dem alla.

referenser bisexual

  • Wikipedia har en bra beskrivning av krypterings – /dekrypteringsprocessen, historia och kryptanalys av denna algoritm
  • Simon Singhs ’kodboken’ är en utmärkt introduktion till cifrar och koder, och innehåller ett avsnitt om caesar-cifrar.
  • Singh, Simon (2000). Kodboken: vetenskapen om sekretess från Forntida Egypten till Kvantumkryptografi. ISBN 0-385-49532-3.



Lämna ett svar

Din e-postadress kommer inte publiceras.