Klassiska chiffer

I kryptografi är ett klassiskt chiffer en typ av kryptoalgoritm som användes historiskt men som nu för det mesta inte längre används. Till skillnad från moderna kryptografiska algoritmer kan de flesta klassiska chiffer kodas av för hand. Begreppet “klassiska chiffer” inkluderar de enkla system som har använts sedan grekisk- och romartid fram till andra världskriget inklusive senare.

Två typer av klassiska chiffer tas upp i denna lektion:

Transpositionschiffer

En krypteringsmetod som innebär att sändaren kastar om bokstäverna i ett avsett ord eller mening. Vid korta meddelanden är detta en högst osäker metod.

Obs: I exemplen nedan hanteras klartext i små bokstäver och kryptotext i stora bokstäver

Exempel 1

klartext: The brown fox jumped over the krypteras i en matris med 6 kolumner och 4 rader; med nyckeln k = 4,6

T H E B R O
W N F O X J
U M P E D O
V E R T H E

Efter kryptering (Man läser av klartexten per kolumn): TWUVHNMEEFPRBOETRXDHOJOE

Exempel 2

Hur många kombinationer av bokstäver kan göras i namnet Diginto?

I matematik finns något som heter FAKULTET som kan hjälpa oss att ta fram antal kombinationer. Det gäller för heltal som är större än noll och som är lika med produkten av alla heltal från 1 upp till och med talet självt. I namnet Diginto finns 7 bokstäver: 7! = 7 x 6 x 5 x 4 x 3 x 2 x 1 = 5 040 kombinationer.

För att konvertera texten skulle vi kunna använda en tabell i vilken rymmer ett lämpligt antal kombinationer. Desto mer kombinationer säkrare bli kryptotexten.

Exempel 3

Meningen Många olika kombinationer innehåller 23 bokstäver. Detta innebär att det finns 23! olika bokstavskombinationer för denna mening.
23! = 23 x 22 x 21 ….. 3 x 2 x 1 = 2585 2016 7388 8497 6640 000

Tycker du att den mängden av kombinationer kan kontrolleras av en människa? Nej inte en chans. Även för en dator som exempelvis kan kontrollera 1 000 000 kombinationer per dygn skulle det vara en tidskrävande uppgift, och det skulle krävas en riktig lång tid.

Exempel 4

Nu ska krypteras texten: Detta är ett hemligt meddelande genom att placera bokstäver på två rad där varannan bokstav ut på den övre raden och varannan på den nedre enligt en bestämd ordning (andra raden börjar bokstäver i andra kolumnen). För att synliggöra detta används en tabell som inte har någon kryptonyckel som i exempel 1.

D T A R T H M I T E D L N E
E T Ä E T E L G M D E A D

Vill man göra texten ännu obegriplig för obehöriga kan man placera ihop de båda raderna till en lång rad

DTARTHMITEDLNEETÄETELGMDEAD

I exemplen ovan kunde vi observera att varje bokstav behåller sin identitet men byter position enligt ett visst mönster. Vi har också observerat att detta förenklar dekrypteringen av korta text (inte många kombinationer) för de obehöriga betydligt.

Substitutionschiffer

Substitutionschiffer innebär att alla alfabetets tecken byts mot en annan bokstav, siffra eller symbol. Ett enkelt exempel kan vara att förskjuta alfabetet ett eller flera steg. Två substitutionschiffer är mest kända: Monoalfabetiska och Polyalfabetiska.

Monoalfabetiska krypteringsmetoder

Exempel 1

Klartexten hola ska krypteras med kryptonyckel 3 (från bokstaven D flyttas alfabetet på något sätt)

a b c d e f g h i j k l m n o
D E F G H I J K L M N O P Q R

Kryptotext: KROD

eller

a b c d e f g h i j k l m n o p q r s t u v w x y z
X Y Z A B C D E F G H I J K L M N O P Q R S T U V W

Kryptotext: ELIX

Denna sorts chiffer är känd som Ceasarchiffer så benämnt eftersom det användes av Julius Caesar, Kejsare av Rom, i sin hemliga korrespondens. Han använde nyckeln 3 = C, hans egen initial. Ceasarchiffret som kan uttryckas matematisk så här:

  • C = (p + k)(mod b)
  • C är kongruent med (p + k) i modulen b (Engelska alfabet b = 26 och svenska b = 29)
  • C = (p + 3)(mod 26) eller Ceasarchiffer

Exempel 2

  • Klartext: Vem är tjuven?
  • Kryptonyckel: 4
a b c d e f g h i j k l m n o p q r s t u v w x y z å ä ö
E F G H I J K L M N O P Q R S T U V W X Y Z Å Ä Ö A B C D

Kryptotext: ZIQ CV XNYZIR? eller ZIQCVXNYZIR?

Exempel 3

Med tabellen nedan kryptera numeriskt klartext Båten är borta!

0 1 2 3 4 5
5 A B C D E F
6 G H I J K L
7 M N O P Q R
8 S T U V W X
9 Y Z Å Ä Ö .!?

Kryptotext: 51 92 81 54 71 93 75 51 72 75 81 50 95

Exempel 4

Kryptera texten: defend the east wall of the castle med nyckel 1

a b c d e f g h i j k l m n o p q r s t u v w x y z
B C D E F G H I J K L M N O P Q R S T U V W X Y Z A

Kryptotext: EFGFOE UIF FBTU XBMM PG UIF DBTUMF

Kryptotext: EFGFOEUIFFBTUXBMMPGUIFDBTUMF

Polyalfabetisk chiffer

Ett mer komplicerat substitutionskrypto är Vigenere-chiffert, som bygger på att sändaren använder sig av en särskild krypteringsnyckel som gör att kryptoalfabetet ändras, exempelvis för varje tecken. Denna sorts krypteringsmetoder använde en så kallade Vigenere-tabellen som innehåller 26 olika kryptoalfabet, där vart och ett är förskjutet med ett steg i förhållande till det föregående. Vilket alfabet som används för en viss bokstav bestäms av ett nyckelord”.

A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
a A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
b B C D E F G H I J K L M N O P Q R S T U V W X Y Z A
c C D E F G H I J K L M N O P Q R S T U V W X Y Z A B
d D E F G H I J K L M N O P Q R S T U V W X Y Z A G H
e E F G H I J K L M N O P Q R S T U V W X Y Z A B C D
f F G H I J K L M N O P Q R S T U V W X Y Z A B C D E
g G H I J K L M N O P Q R S T U V W X Y Z A B C D E F
h H I J K L M N O P Q R S T U V W X Y Z A B C D E F G
i I J K L M N O P Q R S T U V W X Y Z A B C D E F G H
j J K L M N O P Q R S T U V W X Y Z A B C D E F G H I
k K L M N O P Q R S T U V W X Y Z A B C D E F G H I J
l L M N O P Q R S T U V W X Y Z A B C D E F G H I J K
m M N O P Q R S T U V W X Y Z A B C D E F G H I J K L
n N O P Q R S T U V W X Y Z A B C D E F G H I J K L M
o O P Q R S T U V W X Y Z A B C D E F G H I J K L M N
p P Q R S T U V W X Y Z A B C D E F G H I J K L M N O
q Q R S T U V W X Y Z A B C D E F G H I J K L M N O P
r R S T U V W X Y Z A B C D E F G H I J K L M N O P Q
s S T U V W X Y Z A B C D E F G H I J K L M N O P Q R
t T U V W X Y Z A B C D E F G H I J K L M N O P Q R S
u U V W X Y Z A B C D E F G H I J K L M N O P Q R S T
v V W X Y Z A B C D E F G H I J K L M N O P Q R S T U
w W X Y Z A B C D E F G H I J K L M N O P Q R S T U V
x X Y Z A B C D E F G H I J K L M N O P Q R S T U V W
y Y Z A B C D E F G H I J K L M N O P Q R S T U V W X
z Z A B C D E F G H I J K L M N O P Q R S T U V W X Y

Exempel 1

Kryptera texten a simple example med en nyckel-stream battista. Vigenere-tabellen ska användas så här: Första kolumnen är för klartexten och första raden för kryptotexten. Varje bokstav i klartexten hittas i fösta kolumnen till vänster. Därefter hittar du bokstaven i kryptonyckeln på den första raden i tabellen.

  • Generera nyckel-stream:
Klartext a s i m p l e e x a m p l e
Nyckel-stream b a t t i s t a b a t t i s
  • Nu är vi efter den första bokstaven i klartexten: Hitta “a” till vänstter och nyckel b (har färgmarkerats i tabellen). Det blir B
  • Nu är vi efter den andra bokstaven i klartexten: Hitta “s” till vänster och nyckel a. Det blir S
  • Nu är vi efter den tredje bokstaven i klartexten: Hitta “i” till vänster och nyckel t. Det blir B
  • u är vi efter den tredje bokstaven i klartexten: Hitta “m” till vänster och nyckel t. Det blir F
  • och så vidare, se tabellen nedan
Klartext a s i m p l e e x a m p l e
Nyckel-stream b a t t i s t a b a t t i s
Kryptotext B S B F X D X E Y A F I T W