108 jaar oud diplomatiek telegram

108 jaar oud diplomatiek telegram

Eindelijk ontcijferd

In 1914 onderschepte de commandant van de Nederlandse vredesmissie in Albanië, Lodewijk Thomson, een gecodeerd telegram van een vermoedelijke dubbelspion, Essad Pasha. In 2008 dook het opnieuw op, en sindsdien hebben codekrakers, waaronder de MIVD, tevergeefs geprobeerd dit Albanië-telegram te decoderen. Florentijn van Kampen, computerwetenschapper aan de Radboud Universiteit in Nijmegen, is het nu wel gelukt.

In Pythagoras 49-4 (februari 2010) schreven we eerder over dit mysterieuze telegram. Het bestaat uit 736 decimale getallen onder de honderd, en het getal 119. In die tijd bestonden nog geen computers of codeermachines, en gebeurde al het coderen (cryptografen spreken van vercijferen) met pen en papier. Vercijfersystemen waren toen daarom veel simpeler dan nu. Voor het ontcijferen van zulke handmatige geheimschriften bestaan tegenwoordig ook computerprogramma's.

In zijn publicatie voor de Histocrypt conferentie, afgelopen juni in Amsterdam, schrijft Van Kampen echter: 'Geen van de beschikbare standaard gereedschappen leverde een oplossing op. We weten nu waarom: het telegram was geschreven in een oud Albanees dialect, en de cijfertekst zal vol met fouten'.

  0 1 2 3 4 5 6 7 8 9
1                   1
2   1 2     1   2 74 49
3     7 8   2 10 31 26 39
4 1 13 16 5 24 13 18 24 25 14
5 1 24 3 8 14 20 39 5 10 5
6 1 11 48 52 7 25 1 1 7 43
7                    
8     1             1
9               1 1 1
Tabel 1 De frequenties van de tweecijferige getallen in het Albanië-telegram. Bijvoorbeeld: het getal 28 komt 74 keer voor in het telegram. Het enige getal boven de honderd, 119, wordt in deze tabel vertegenwoordigd door vakje 99.

Het telegram bevat 49 verschillende getallen, die tussen de 1 en 74 keer voorkomen, zie tabel 1. Dit aantal van 49 suggereert, dat elk getal staat voor één letter van een alfabet. Het was echter niet bekend in welke taal het bericht gesteld was. Dat had Nederlands kunnen zijn, of Albanees, of een andere Europese taal. Ons – Latijnse - alfabet heeft slechts 26 letters, maar in andere talen komen daar nog speciale letters bij. Ook kennen talen vaste combinaties van twee letters, zoals in het Nederlands ng, eu, ie, die je met een apart getal zou kunnen vercijferen, waardoor het gebruikte alfabet in feite meer dan 26 letters zou hebben.

Als een vercijferingssyteem iedere keer hetzelfde symbool (een letter, getal of speciaal teken) aan dezelfde letter in de brontekst toekent, heet dit een 'monoalfabetische substitutie'. Het is een van de simpelste manieren om een tekst te vercijferen: bijvoorbeeld A wordt C, B wordt D, C wordt E, en zo verder tot aan Y wordt A en Z wordt B. Uiteraard levert een meer willekeurige toekenning van de letters een sterkere vercijfering op.

Niettemin, de grote zwakte van elke monoalfabetische substitutie is dat het de letterfrequenties intact houdt. De E komt in het Nederlands het vaakst voor, dus in een aldus vercijferde tekst zal de vaakst voorkomende codeletter voor de E staan. Hetzelfde geldt voor de op een na vaakst voorkomende letter, N, en in een stuk tekst van een paar honderd letters, zoals het Albanië-telegram, zou je op die manier de vier of vijf meest voorkomende letters moeten kunnen identificeren.

Met vier of vijf letters ingevuld, is het vaak al mogelijk om sommige woorden in de vercijferde tekst te raden, en dat geeft je meteen weer extra letters waarvan je de vercijfering weet, zodat het systeem als een kaartenhuis in elkaar stort.

Dit veronderstelt wel dat je de gebruikte taal kent, want dat bepaalt de letterfrequenties en of je woorden kunt raden waarvan maar een paar letters bekend zijn. De bestaande geautomatiseerde gereedschappen werkten hier niet, omdat die alleen toegesneden zijn op een beperkt aantal talen, niet op het Albanees.

Eerste aanname: zeldzaam = fout

Nieuw was ook Van Kampens aanpak om mogelijke fouten uit het telegram te filteren. Omdat vercijferen toen handwerk was, werden er altijd fouten bij gemaakt, zeker als het onder grote tijdsdruk moest gebeuren. Van Kampen beperkte zijn analyse in eerste instantie simpelweg tot de getallen die 7 of meer keer voorkwamen (groen in tabel 1), ervan uitgaand dat de meeste zeldzame getallen het resultaat waren van fouten bij het vercijferen. Zo bleven nog maar 29 verschillende getallen over. Dat kwam aardig overeen met het feit dat het Albanese alfabet 36 tekens heeft.

Het 'kraken' van het telegram begon met het inscannen en digitaliseren van een flinke hoeveelheid Albanese tekst uit allerlei andere bronnen, in totaal ruim duizend pagina's. Een zogeheten corpus is nodig om de specifieke statistische eigenschappen en het vocabulaire van een taal tot in detail te kunnen identificeren.

Vervolgens schreef Van Kampen software om de score van een tekst te bepalen, gebaseerd op de frequenties van tetragrammen (vier opeenvolgende letters) in een tekst. Deze score geeft aan hoe goed de tetragramfrequenties overeen komen met die van zijn Albanese corpus.

Er zijn heel veel mogelijkheden om in tabel 1 voor elk getal een letter in te vullen, en elke mogelijkheid genereert een andere 'ontcijferde' tekst. De aanname is nu, dat de echte, niet vercijferde tekst van het telegram de hoogste score zal hebben van alle uitgeprobeerde ontcijferingen.

Daarmee wordt het invullen van de tabel een optimalisatie-probleem, dat werd opgelost met een variant van het hill-climbing algoritme. Dat komt er op neer dat de computer, uitgaand van een willekeurige begintabel, telkens een kleine verandering doorvoert die de meeste winst in de score oplevert, om zo in het 'landschap' van alle scores stap voor stap naar de hoogste top te klimmen. Er is overigens geen garantie dat dit lukt; vaak zijn meerdere pogingen vanuit heel verschillende begintabellen nodig. Dat leverde tabel 2.

  1 2 3 4 5 6 7 8 9
2               sp sp
3   z rr     v u nj t
4 sh q gj r s p o n ll
5 m   l k j i h b  
6 f ë e dh d     x a
Tabel 2 De vercijfertabel op basis van het hill climbing algoritme geeft
een onvolledige, en naar later zou blijken niet geheel juiste oplossing.
De hokjes 28 en 29 coderen voor een spatie in de tekst.

Veel 'één ernaast'-fouten

Maar: met deze vercijfertabel leverde het telegram nog steeds geen leesbare tekst op. De computer had alles gedaan wat hij kon, en nu moest er ook nog menselijk taalgevoel aan te pas komen. Daarbij hielp enorm dat ook spaties vercijferd werden, zodat afzonderlijke woorden in de vercijferde tekst te onderscheiden waren.

Verder nam Van Kampen aan, dat er een systematiek in de vele fouten in de vercijfering zou zitten: namelijk dat meestal degene die het bericht vercijferde zich alleen in de kolom of alleen in de rij vergiste, en er dan maar 1 naast zat. Dus dan vercijferde deze bijvoorbeeld de letter p niet als 46, maar als 56 of 47.

Bekijk bijvoorbeeld dit lange woord in de tekst: 54 45 33 63 48 58 45 56 38 42 56 38. Ontcijferd met tabel 2 levert dit op: kqyenjgjqithsith, wat geen Albanees woord is. Bij nader inzien blijken er maar liefst zes '1 ernaast'-fouten in te zitten, en er ontbreekt een letter:

54 (45=44) 33 63 (48=49) (58=59) (45=44) 56 (38=39) 62 42 56 (38=39) kqyenjgjqithsith wordt dan: kryengritësit ofwel, in het Nederlands, 'opstandelingen'. Het ontcijferen krijgt dan iets van een kruiswoordpuzzel oplossen, met als resultaat tabel 3.

  1 2 3 4 5 6 7 8 9
2               sp sp
3 zh z y xh x v u th t
4 sh s rr r q p o nj n
5 m ll l k j i h gj g
6 f ë e dh d ç c b a
Tabel 3 Gekraakt: de complete vercijfertabel die is gebruikt voor het Albanië-
telegram. Het Albanese alfabet is simpelweg van rechtsonder naar linksboven
in het diagram ingevuld.

Op deze manier heeft Van Kampen de hele tekst zo goed mogelijk gereconstrueerd, al blijven er een aantal vraagtekens in de tekst staan. Zelfs ontcijferd is het telegram lastig te begrijpen, omdat we zo weinig van de historische context weten, en het niet zeker is of Essad Pasha de afzender was. Het telegram is gericht aan ene Mustafa, waarschijnlijk Mustafa Ndroqi, een van de moslimleiders van de boerenopstand die toen gaande was, en het bevat een oproep om een paar honderd man versterking te sturen.

Dat Van Kampen het Albanië-telegram heeft kunnen ontcijferen, nadat onder meer de militaire inlichtingendienst MIVD er zijn tanden op stuk gebeten had, had zeker ook te maken met het feit dat hij een Albanese in zijn directe omgeving had, Diana Zeneli, die hem heeft geholpen met het reconstrueren van de (in een dialect van het) Albanees geschreven tekst.

 

Maar wat stond er nou in dat mysterieuze telegram?

 
 

Gjendur e ngjarjet e këtushme gjatë ngjare, ju kam diftue zotni ju.

Dje kryengritësit kane dërguar lajm dhe na thoshin poqe se nuk na pranoni propozimet tona do të jeni në rrezik se do te vijmë në githë këtyre trathorve.

I thashë qeverija sa të mundet do të kundërshtohet deri në fund tË jetës.

Mustafa Pashë i diftova fjalët te gjithë me dhanë bësen me vdes??  bej nje tradhëti?? ?? ?? ??

E vumë flamurin te Turqisë këtu ka rëndësie të madhe.
Ka mundësi që?? rrëzojshim?? po mundëm jam tu ju?? dhe disa këshillonjsve qi.

Çuen populli die me fjalë para ju. Dhame pergjigje duke u thënë se do te vjimë vuë flamurin e turqiës.

Ju lutem një orë e më parë të dërgoni disa qindra njerëz, njerëz fuqishëm birbo.

Pashas të kam tregova me vehte punët janë njom ligësht.

 

I have been in this situation here for a long time, I am telling you, sir.

Yesterday the insurgents sent news and told us if you do not accept our proposals you will be in danger that all these traitors will come.
 

I told him the government would oppose it as much as it could for the rest of its life.

Mustufa Pashe, I told him all that gave me the pledge to die before betrayal (?)

Placing here the Turkish flag is of great importance.
Maybe it is possible (?) to throw down (?) I can be your (?) and some counsellors.

We responded by telling them that we would come to place the Turkish flag.

Please send as soon as possible a few hundred men, strong men without house or possession.

Pasha, I told you that things are delicate.

 
     

 

 

Bron: Florentijn van Kampen (2022), Thomson's Telegram Decrypting a Secret Message from Albania, 1914. Proceedings of the 5th International Conference on Historical Cryptology, 2022. https://ecp.ep.liu.se/index.php/histocrypt/article/view/398/356