# C-52 (codeermachine)

De Hagelin C-52 en CX-52 zijn mechanische codeermachines, ontwikkeld in 1952 door de firma Hagelin Cryptos voor het vercijferen van highlevel militair en diplomatiek berichtenverkeer.

## Geschiedenis

De C-52 en zijn verbeterde versie CX-52 werden in 1952 op de markt gebracht door Hagelin Cryptos (Crypto AG in Zwitserland). Zij waren twee van de vele cryptografische toestellen die ontwikkeld werden door ingenieur en uitvinder Boris Hagelin. De C-52 en CX-52 zijn een verdere ontwikkeling van de succesvolle C-38 en M-209 pin-en-lug-type-codeermachines, die echter een beperkte cryptografische veiligheid boden. Hagelin verhoogde het aantal pinnen per wiel, het aantal schuifregels op de drum en ontwikkelde een flexibel stappensysteem voor de pinwielen. Het resultaat was een ongeziene cryptografische veiligheid die deining veroorzaakte in heel de wereld van cryptoanalyse. Het briljant maar toch eenvoudig volledig mechanisch ontwerp resulteerde in een toestel dat een astronomische sleutelgrootte heeft waardoor een brute force-aanval onmogelijk is. De machine biedt zelfs in het huidige computertijdperk een krachtige vercijfering. Tot op heden is er geen alleen-cijfertekst-aanval bekend voor de C-52 of CX-52. De toestellen kwamen op de markt in volle Koude Oorlog en werden een enorm verkoopsucces. De C-52 en CX-52 werden aangekocht door meer dan 60 landen, wat hen meteen de meest succesvolle codeermachines maakten. Zij bleven in gebruik tot begin jaren 90, toen zij verdrongen werden door de elektronica.

## Beschrijving

De C-52 is een mechanische pin-en-lug-type-codeermachine. De klare tekst wordt letter per letter ingesteld met een draaiknop aan de linkerkant van het toestel, waarna men de letter vercijfert door de hendel aan de rechterkant over te halen. De klare en vercijferde tekst worden samen afgedrukt op een papierstrook door een dubbel printwiel. Dit printwiel heeft één normaal en één reciproque (omgekeerd) alfabet waardoor het ontcijferingsproces identiek is aan het vercijferingsproces. De Cipher- of Decipher-mode kan gekozen worden met een draaiknop aan de linkerkant. In Cipher-mode wordt de tekst afgedrukt in groepen van vijf letters en gebruikt men de letter X als spatie. In Decipher-mode wordt de tekst weer zonder groepen afgedrukt en is de letter X vervangen door een spatie.
Het aantal stappen dat aan de ingestelde klare letter wordt toegevoegd om zijn vercijferde versie te bekomen wordt bepaald door de instellingen van de pinwielen en de lugs op de drum. De C-52 en CX-52 kunnen op een afzonderlijk elektrisch toetsenbord B-52 gemonteerd worden. Deze combinatie noemt men dan de BC-52.
De C-52 heeft zes uitneembare pinwielen. Voor de instelling van de machine kan men kiezen uit een set van 12 wielen met 25, 26, 29, 31, 34, 37, 38, 41, 42, 43, 46 of 47 pinnen. De C-52 produceert een constant aantal stappen van de pinwielen, elk met zijn aantal pinnen die elk priemgetallen zijn, resulterend in een zeer lange periode. De C-52 heeft een drum met 32 schuifregels die mede het aantal stappen van het printwiel bepalen. Vijf van de schuifregels worden gebruikt voor het bewegen van de pinwielen.
De CX-52 werd voorzien van zes pinwielen met elk 47 pinnen en een flexibeler stappensysteem waardoor de pinwielen op een zeer complexe manier bewogen. De vroege CX-52-modellen gebruikten de laatste vijf schuifregels op de drum tevens voor vercijfering, wat resulteerde in zeer complexe richtlijnen bij de instelling van het toestel. Dit probleem werd opgelost in de latere CX-52-modellen door vijf regels exclusief te gebruiken voor de beweging van de pinwielen.

## Cryptografische sterkte

Het aantal sleutelinstellingen hangt af van de zes pinwielen, de lugs op de drum, de instelbare offset van het printwiel en de initiële startpositie van de pinwielen, ook wel de berichtsleutel genoemd. Er zijn 2$^{47}$ mogelijkheden om een pinwiel met 47 pinnen in te stellen. Voor het CX-model geeft dit 7,7 x 10$^{84}$ mogelijkheden. De voorschriften voor goede pininstellingen reduceren dit tot 4,2 x 10$^{83}$, vergelijkbaar met een 278 bit-sleutel, enkel voor de zes wielen. Het aantal mogelijke combinaties met 27 lugs is 4,5 x 10$^{59}$ (de vijf speciale bewegingsregels niet meegerekend). De voorschriften voor goede instelling reduceren dit tot 35.100. Er zijn 26 mogelijke offsetposities voor het printwiel en 47$^6$ verschillende startposities voor de wielen van het CX-model. Het totaal aantal instellingen, het product van al deze getallen, is 4,13 x 10$^{99}$ voor de CX-52, wat vergelijkbaar is met een 331 bit-sleutel. Hierdoor is een brute force-aanval onhaalbaar.
In 1999 stelde H Paul Greenough een gekende-klaartekst-aanval voor in Cryptologia. Een gekende-klaartekst-aanval (Engels: known plaintext attack) is een methode waarbij de cryptoanalist zowel de klare tekst als de vercijferde versie ervan in zijn bezit heeft en hiermee de instellingen van de machine tracht te achterhalen. Tot op vandaag is er echter geen alleen-cijfertekst-methode beschikbaar om CX-52-berichten te breken.

## Verschillende modellen

De C-52 en CX-52 zijn flexibele machines die gemakkelijk aangepast kunnen worden aan de vereisten en wensen van de klant. Zo kan men kiezen voor gewijzigde posities van de vijf schuifregels voor beweging, vaste of verwisselbare schuifregels gebruiken, en bepalen hoe de schuifregels de beweging van de pinwielen bevelen. De klant kon pinwielen gebruiken met een andere letter- en nummervolgorde. Er zijn speciale instelbare printwielen waarmee een eigen volgorde van letters kan gekozen worden. Superencryptie was mogelijk door de vercijfering te combineren met een 5 bits-bandlezer. Al deze variaties, die de vercijfering beïnvloeden, maakten het mogelijk dat iedere klant een machine bezat met unieke cryptografische eigenschappen, niet compatibel met toestellen van andere diensten, organisaties of landen.