College-1

Cryptografie!
in !
Cyberspace
college-1
❖
20-10-2014
twee colleges, één werkcollege
• COLLEGE-1
wat is cryptografie
cryptografie van het verleden!
• COLLEGE-2
cryptografie van het heden
gaten in het pantser
2
Syllabus en sheets
staff.fnwi.uva.nl/h.vandermeer/cursuscrypto-cyber.html
sheets de dag na het college te downloaden
Tentamen
1. Sleutelwoord kunnen omzetten in ontcijfersleutel!
2. Kunnen ontcijferen van een bericht in
kolomtranspositie, vigenère, beaufort geheimschrift!
3. Beantwoorden vragen overige stof - zie site
❖
3
Wat is Cryptografie
College-1!
• een voorbeeld!
• terminologie!
• klassieke cryptografie!
College-2!
• openbare sleutel!
• quantum cryptografie
4
Probleemstelling
Julius Caesar heeft een
groot probleem!
“Als ik het aanvalsplan
verstuur valt het vast en
zeker in de handen van
die vreselijke Galliërs!”!
Wat doen we daaraan?
5
Gebruik Cryptografie
CAESAR cryptosysteem
vercijferen = 3 plaatsen verder
A→D B→E … X→A
ontcijferen = 3 plaatsen terug
D→A E→B … A→X
sleutel = 3 plaatsen
andere sleutels 1, 2, 4, 5, …
❖
6
Cryptoanalyse
Cryptanalix
❖
7
Terminologie
cryptologie = cryptografie + cryptoanalyse
cryptografie = geheim schrijven
κρύπτω = verbergen γραφή = geschrift
klaartekst, cryptogram, cijfertekst
cryptoanalyse = breken geheimschrift
known-plaintext, ciphertext-only, chosen-plaintext
steganografie = verborgen schrijven
στέγω = bedekken
traffic analysis = berichtenverkeersanalyse
❖
8
Klassieke cryptografie
NSYJQ
?JSIJW
2
JSHW^UY
4UUTSJSY
(
TS[JNQNL PFSFFQ
0
[JNQNL PFSFFQ
9
FSFQ^XJ
IJHW^UY
2
$
4SY[FSLJW
Netwerk cryptografie
;FOEFS
.
LOPPQQVOU
LOPPQQVOU
Twee onderscheiden opties:
• link encryptie!
• end-to-end encryptie
10
.
0OUWBOHFS
Klassiek cryptosysteem
transpositie
ī
ī
ī
+
i
Ī
Ī
Ī
`
Q
7
ī
ī
ī
v
;
B
Ī
Ī
Ī
T
`
2
CTAFORYGIERP
❖
substitutie
klaaralfabet ABCDEFGHIJKLMNOPQRSTUVWXYZ!
cijferalfabet DEFGHIJKLMNOPQRSTUVWXYZABC!
!
VLUCHT POLITIE = YOXFKW SROLWLH
- een of beide alfabetten gepermuteerd!
- periodiek substitutiepatroon!
- niet periodiek substitutiepatroon!
- meerdere letters tegelijk vervangen!
- woorden en uitdrukkingen vervangen
11
Regels voor veiligheid
Auguste Kerckhoffs, 1883, La Cryptographie Militaire
Veiligheid berust op geheimhouden van de sleutel
niet op geheimhouden van het geheimschrift
… Il faut qu’il n’exige pas le secret, et qu’il puisse sans
inconveniénient tomber entre les mains de l’ennemi …
Praktische criteria:!
- kosten cryptoanalyse versus waarde geheim!
- tijd nodig voor cryptoanalyse versus levensduur geheim
❖
12
Staalkaart systemen
Transpositie!
- Route!
- Kolom!
- Rooster!
Monoalfabetisch!
- Caesar!
- Standaard!
- Monomedinome!
- Playfair!
- Bifid!
- ADFGVX!
- Nomenclatuur!
- Code!
- Encicode!
Polyalfabetisch!
- Porta!
- Vigenère!
- Beaufort!
- Nihilist!
- Progressie!
- Autoclaaf!
13
- Wheatstone!
- Multiplex!
- One-time-pad!
Machine!
- Hagelin!
- Kryha!
- Enigma!
- Purple
Monoalfabeet
Vervanging van A–Z door permutatie van A–Z!
voorbeeld
SLEUTELCONSTRUCTIEMETWOORDOFZIN
plaintext : ABCDEFGHIJKLMNOPQRSTUVWXYZ
ciphertext: SLEUTCONRIMWDFZABGHJKPQVXY
PEST ➞ ATHJ!
In theorie 26! ≈ 4.1026 sleutels
! veel hebben weinig effect zoals Q en X verwisselen!
Caesar-substitutie is eenvoudige letter-opschuiving
❖
14
Vrijmetselaarsgeheimschrift
Trinity Church, New York!
graf van James Leeson † 1794!
!
REMEMBER DEATH
A B C
K L M
T U V
D E F
N O P
W X Y
G H I
Q R S
Z
●
●●
15
Digram-substitutie
&
'
(
)
*
+
,
-
.
/
0
1
2
3
4
5
6
7
8
9
:
;
<
=
>
?
&
1? 8< '- >/ >7 <5 '( +' +< =- )> 2; 0( :1 (/ +/ =< '7 &) /5
'/ 52 /< .: 4: )*
'
&/ ,* 09 &5 93 ;4 ,> (9 /8 4' >2 2- </ 5+ 5& 9& .+ 37 ,, 5; 1- 3= 0= 89 :9 75
( 1< 0< )4 6+ /3 1= ). 91 )7 72 88 -+ 7' 6: :/ 07 2> ,4 <+ 9, 78 >6 8( +. (7 -0
) :; +5 58 =? *; ,7 8; 0+ ?= <1 7: <4 >? //
* &4 (? (.
3/ ;/ .9 69 =, &8 0* <* 3) -8 >( :-
8. '; 42 ?4 1* ,) 1' 4. :0 7( )0 5? >= 0/ ?9 *2 '8 .? =1 7+ <& >< *1
+ 4( 7. 85 +> ;- 6* 8* +( .0 3? 7, 13 9= 32 8) /' :6 => ?, 21 &; /( 62 56 &' ?+
, 2) ;* += 2< 4) 5/ == -9 .( 1( 3- ?) ,( >> ;5 >& 5( '* /+ )8 60 8= *6 *9 >) /- '9 90 57 0> *( &3 -? 84 >; 2+ *8 >5 +: &0 3. 8/ >9 1> 9+ 0; 3; =; )/ <= 44 6'
.
<7 ,0 .* 6- *? 4> 2: 29 1& '5 -& 32 9/ 6/ &1 ** 8: ,& -. 2, >4 ,< 08 &> /* 34
/
;, ?> :* +2 *- +7 ?< (& )3 <) 0) &: ,5 >8 =2 27 3( '6 -( 38 33 ?/ ,/ ;' 7& 9-
0 06 :7 ;6 &9 4& >. +8 7/ 19 /) 0. 5, &( 2. () ', 9? 5- 49 <6 .- 10 40 =* -> (=
1
>* ;= ,8 ;> .2 -< -' /= 3* ?.
.' -1 '. 64 ;0 &- 11 ;9 >' )1 ?( 6. /& )- :> ?-
2 -: *< :( ./ :4 86 47 *5 ?* 2= 01 .6 98 6? '2 9. /; ;) =8 4- .= 9; 9' 63 :< 03
3 12 (' 80 *> 54 +6 1, 28 70 ;8 7< (1
.. 74 ?7 35 -= 73 '+ .; )= =. :, '= /2 &6
4 96 =3 8- ?8 <0 4= <: -- 26 59 ,1 6& *= 5= ?' -/ ;< 8' 51 )' 3& (2 := .& /0 1:
5 =) ,2 9( +, */ +3 <9 3+ 4, 6> )? 3' 3: .3 ?; -2 (8 /: <; 6, +- 76 9* )& ,- &+
6 >, ); *+ -; 9: -7 1/ (6 +0 ;( ,+ +? *7 =0 3< =: ;& *) 23 :. 71 ,= <- <8 92 4<
7 48 =7 .) 8, (> 9> 0, ?3 >1 0? 4/ ,: ;+ ;7 ') /4 ,; ?: ++ <, =+ ,? 05 0: 6) /9
8
7> ,6 ?? -5 (( -6 :+ &) 50 )< =6 ): 7- )( ,3 67 )2 20 8+ 7? 2( +9 '? 16 .4 14
9
>+ '& :: >3 97 1) <' 36 9< ;3 7) +& >: 45 46 17 +1
:
/6 =4 (- *& 8> =/ ., 5) ?1 1+ 15 04 /> ?5 :) 0& 9) 3, ?6 (+ &. =9 -) =' :' (<
/.
AA–ZZ geeft 676! sleutels!
onthouden ondoenlijk
eenvoudiger schema’s
bijvoorbeeld de Playfair
/? -4 66 6( ,. 6< 0- 2&
; =( *. ': ;; &= )+ 2? ;: ;2 7; :5 53 <( +* )9 .1 ?2 (: *0 <? 4+ 18 '1 .8 =& ''
<
1. +4 02 /7 (; 65 *, <3 :& 39 &, :3 00 :8 <> 25 81 2' '0 0' &7 >- )) 4* ), ;.
= &* +) ?0 8& 6= 82 -* (* ?& 6; .> (3 5> -3 /, =5 &? :? '3 '< 5. 24 &< 61 )5 -,
> 7= 3> 94 2/ 87 5* '4 99 '> 4; <2 ;? ,9 (4 /1 ,' 83 30 41 5: *: 7* 55 79 &2 (,
? 43 2* .5 5' <. *' 1; 5< *3 ;1 31 && 68 << 77 8? )6 :2 (5 95 .< >0 (0 4? +; .7
pt: NOOIT GEDACHT TOCH GEKREGEN!
ct: ZRMQW BSIBH KVOQT LODPH ZODK
❖
16
Kolomtranspositie
sleutel →
2
)
*
*
&
3
-
:
*
3
9
2
3
*
8
;
;
9
*
4
.
0
7
&
*
3
,
2
:
&
3
3
?
,
=
8
,
9
>
*
=
←transpositieblok
pt: DE VRAGEN VAN HET TENTAMEN ZIJN NOG GEHEIM XX!
ct: RAENG MDEEA NHVVT EOIGH TYEXE NTMNE ANNZG X
splitsing eenvoudig en eenduidig!
RAENGM DEEANH VVTEOI GHTYEX ENTMNE ANNZGX
❖
17
Transpositie sleutel
➞
➞
➞
➞
➞
➞
➞
2
2
:
:
:
:
:
8
8
8
0
:
:
:
:
:
:
8
8
8
8
Vervang de letters één
voor één door cijfers in de
volgorde van het alfabet
MUSKUS → 253164
❖
18
Kolomtranspositie variant
2
)
*
*
&
3
-
:
*
3
9
2
3
*
8
;
;
9
*
4
.
0
7
&
*
3
,
2
:
&
3
3
?
,
8
,
9
>
*
←transpositieblok niet uitgevuld
pt: DE VRAGEN VAN HET TENTAMEN ZIJN NOG GEHEIM!
ct: RAENG MDEEA NHVVT EOIGH TYEEN TMNEA NNZG
splitsing niet eenduidig en niet eenvoudig!
RAENGM DEEANH VVTEOI GHTYEE NTMNE ANNZG!
RAENGM DEEANH VVTEOI GHTYE ENTMNE ANNZG!
…
❖
19
Dubbele transpositie
)
4
*
3
2
&
*
4
3
&
&
7
3
7
,
1
)
.
'
)
*
;
7
3
7
*
;
&
.
,
.
,
&
3
)
9
*
*
1
&
4
1
:
1
&
3
;
?
*
7
1
*
3
)
.
&
1
*
4
)
*
;
3
&
*
3
)
;
?
7
8
&
4
7
*
,
'
&
*
7
7
1
7
.
3
*
1
)
.
,
2
;
:
*
pt: DEN BRIEL VOOR DE GEUZEN GEVALLEN ALVA NAAR MADRID!
ct: AERRL ODEVN ANDVZ RGMVU EENDI ALABA LEINE LDAOR EG
US Army Double Transposition
❖
20
1
&
'
&
1
*
Periodieke substitutie
Eindige sleutel herhaald gebruikt!
K = k1k2…kp! ! p = de periode
- normaal alfabet Porta, Vigenère!
- teruglopend alfabet Beaufort!
- gemengd alfabet in verschillende varianten!
- sleutelwoord of sleutelzin!
- lange sleutel door progressie Kryha, Hagelin!
- lange sleutel door rotor Enigma, Sigaba
❖
21
Vigenère
&
'
(
)
*
+
,
.
/
0
1
2
3
4
5
6
7
8
9
:
;
<
=
>
?
Blaise de Vigenère!
1523–1596!
1563 Traicté des Chiffres
&
&
'
(
)
*
+
,
.
/
0
1
2
3
4
5
6
7
8
9
:
;
<
=
>
?
'
'
(
)
*
+
,
.
/
0
1
2
3
4
5
6
7
8
9
:
;
<
=
>
?
&
(
(
)
*
+
,
.
/
0
1
2
3
4
5
6
7
8
9
:
;
<
=
>
?
&
'
)
)
*
+
,
.
/
0
1
2
3
4
5
6
7
8
9
:
;
<
=
>
?
&
'
(
*
*
+
,
.
/
0
1
2
3
4
5
6
7
8
9
:
;
<
=
>
?
&
'
(
)
+
+
,
.
/
0
1
2
3
4
5
6
7
8
9
:
;
<
=
>
?
&
'
(
)
*
,
,
.
/
0
1
2
3
4
5
6
7
8
9
:
;
<
=
>
?
&
'
(
)
*
+
.
/
0
1
2
3
4
5
6
7
8
9
:
;
<
=
>
?
&
'
(
)
*
+
,
.
.
/
0
1
2
3
4
5
6
7
8
9
:
;
<
=
>
?
&
'
(
)
*
+
,
-
/
/
0
1
2
3
4
5
6
7
8
9
:
;
<
=
>
?
&
'
(
)
*
+
,
.
0
0
1
2
3
4
5
6
7
8
9
:
;
<
=
>
?
&
'
(
)
*
+
,
.
/
1
1
2
3
4
5
6
7
8
9
:
;
<
=
>
?
&
'
(
)
*
+
,
.
/
0
2
2
3
4
5
6
7
8
9
:
;
<
=
>
?
&
'
(
)
*
+
,
.
/
0
1
3
3
4
5
6
7
8
9
:
;
<
=
>
?
&
'
(
)
*
+
,
.
/
0
1
2
4
4
5
6
7
8
9
:
;
<
=
>
?
&
'
(
)
*
+
,
.
/
0
1
2
3
5
5
6
7
8
9
:
;
<
=
>
?
&
'
(
)
*
+
,
.
/
0
1
2
3
4
6
6
7
8
9
:
;
<
=
>
?
&
'
(
)
*
+
,
.
/
0
1
2
3
4
5
7
7
8
9
:
;
<
=
>
?
&
'
(
)
*
+
,
.
/
0
1
2
3
4
5
6
8
8
9
:
;
<
=
>
?
&
'
(
)
*
+
,
.
/
0
1
2
3
4
5
6
7
9
9
:
;
<
=
>
?
&
'
(
)
*
+
,
.
/
0
1
2
3
4
5
6
7
8
:
:
;
<
=
>
?
&
'
(
)
*
+
,
.
/
0
1
2
3
4
5
6
7
8
9
vercijfer: sleutel M → S ↓ = E!
ontcijfer: sleutel M → E ↑ = S
22
;
;
<
=
>
?
&
'
(
)
*
+
,
.
/
0
1
2
3
4
5
6
7
8
9
:
<
<
=
>
?
&
'
(
)
*
+
,
.
/
0
1
2
3
4
5
6
7
8
9
:
;
=
=
>
?
&
'
(
)
*
+
,
.
/
0
1
2
3
4
5
6
7
8
9
:
;
<
>
>
?
&
'
(
)
*
+
,
.
/
0
1
2
3
4
5
6
7
8
9
:
;
<
=
?
?
&
'
(
)
*
+
,
.
/
0
1
2
3
4
5
6
7
8
9
:
;
<
=
>
Beaufort
&
'
(
)
*
+
,
.
/
0
1
2
3
4
5
6
7
8
9
:
;
<
=
>
?
Sir Francis Beaufort!
1774–1857
&
&
'
(
)
*
+
,
.
/
0
1
2
3
4
5
6
7
8
9
:
;
<
=
>
?
'
?
&
'
(
)
*
+
,
.
/
0
1
2
3
4
5
6
7
8
9
:
;
<
=
>
(
>
?
&
'
(
)
*
+
,
.
/
0
1
2
3
4
5
6
7
8
9
:
;
<
=
)
=
>
?
&
'
(
)
*
+
,
.
/
0
1
2
3
4
5
6
7
8
9
:
;
<
*
<
=
>
?
&
'
(
)
*
+
,
.
/
0
1
2
3
4
5
6
7
8
9
:
;
+
;
<
=
>
?
&
'
(
)
*
+
,
.
/
0
1
2
3
4
5
6
7
8
9
:
,
:
;
<
=
>
?
&
'
(
)
*
+
,
.
/
0
1
2
3
4
5
6
7
8
9
9
:
;
<
=
>
?
&
'
(
)
*
+
,
.
/
0
1
2
3
4
5
6
7
8
.
8
9
:
;
<
=
>
?
&
'
(
)
*
+
,
.
/
0
1
2
3
4
5
6
7
/
7
8
9
:
;
<
=
>
?
&
'
(
)
*
+
,
.
/
0
1
2
3
4
5
6
0
6
7
8
9
:
;
<
=
>
?
&
'
(
)
*
+
,
.
/
0
1
2
3
4
5
1
5
6
7
8
9
:
;
<
=
>
?
&
'
(
)
*
+
,
.
/
0
1
2
3
4
2
4
5
6
7
8
9
:
;
<
=
>
?
&
'
(
)
*
+
,
.
/
0
1
2
3
3
3
4
5
6
7
8
9
:
;
<
=
>
?
&
'
(
)
*
+
,
.
/
0
1
2
4
2
3
4
5
6
7
8
9
:
;
<
=
>
?
&
'
(
)
*
+
,
.
/
0
1
5
1
2
3
4
5
6
7
8
9
:
;
<
=
>
?
&
'
(
)
*
+
,
.
/
0
6
0
1
2
3
4
5
6
7
8
9
:
;
<
=
>
?
&
'
(
)
*
+
,
.
/
7
/
0
1
2
3
4
5
6
7
8
9
:
;
<
=
>
?
&
'
(
)
*
+
,
.
8
.
/
0
1
2
3
4
5
6
7
8
9
:
;
<
=
>
?
&
'
(
)
*
+
,
-
9
.
/
0
1
2
3
4
5
6
7
8
9
:
;
<
=
>
?
&
'
(
)
*
+
,
:
,
.
/
0
1
2
3
4
5
6
7
8
9
:
;
<
=
>
?
&
'
(
)
*
+
vercijfer: sleutel M → X ↑ P!
ontcijfer: sleutel M → P ↑ X
23
;
+
,
.
/
0
1
2
3
4
5
6
7
8
9
:
;
<
=
>
?
&
'
(
)
*
<
*
+
,
.
/
0
1
2
3
4
5
6
7
8
9
:
;
<
=
>
?
&
'
(
)
=
)
*
+
,
.
/
0
1
2
3
4
5
6
7
8
9
:
;
<
=
>
?
&
'
(
>
(
)
*
+
,
.
/
0
1
2
3
4
5
6
7
8
9
:
;
<
=
>
?
&
'
?
'
(
)
*
+
,
.
/
0
1
2
3
4
5
6
7
8
9
:
;
<
=
>
?
&
One-Time-Pad
sleutel + klaartekst ➞ cryptogram
- oneindig lange willekeurige eenmalige sleutel!
- voordeel: absoluut onbreekbaar!
- nadeel: veel sleutelmateriaal nodig
sleutelproductie met!
• radioactief verval, electronische ruis!
• loterij!
• pseudorandom generator (niet meer onbreekbaar!!)
❖
24
Echte cryptografie
25
Liquidatie Yamamoto
Opperbevelhebber Japanse vloot!
Buitengewoon geliefd en populair!
Architect aanval op Pearl Harbour
op 7 december 1941 video!
Liquidatie op 18 april 1943 een
enorme morele klap voor de
Japanse marine
Isoroku Yamamoto (1884 – 1943)!
foto plm. 1940
26
Salomon eilanden 1943
Bericht in JN25 code!
The Commander in Chief
Combined Fleet will inspect
Ballale, Shortland, and Buin in
accordance with the following:!
1. 0600 depart Rabaul on board
medium attack plane (escorted
by 6 fighters);!
2. 0800 arrive Ballale. Immediately
depart for Shortland on board
subchaser … arriving at 0840.!
3. …
❖
27
Uitvoering
Order voor 18 april 1943!
!
Squadron 339 P-38 must at
all costs reach and destroy President attaches extreme
importance to mission
0934 uur het Japanse
eskader wordt door de P-38’s
onderschept en Yamamoto
vindt de dood in de jungle
Artist impression
❖
28
Diplomatieke instructie
El Rey = Philips IV (1605-1665)!
datum Madrid, 27 julio 1658
Don Estevan de Gamarray contreras
demi ans del juerra Castellano al
castillo de Gante Sire de campo
general demis exitos de flandes y
embaxer al estados generales de las
Provincias Unidas del Pays vajo …
❖
29
VENONA
KGB messages 1942-1945
deels hergebruikt one-time-pad
VENONA van start in 1943
tot 1980 sleutelreconstructie!
!
linken van codenamen aan personen
Stanley = Kim Philby Cambridge-5
Viktor = Gen. Fitin
Neighbours = GRU!
!
Spionage tegen Manhattan project
Julius & Ethel Rosenberg † 19-6-1953
Burgess en Maclean 1951
1987 Peter Wright “Spycatcher” 1995 officieel openbaar
30