[TNO-logo]
Museum logo

MUSEUM "WAALSDORP"

De SCRIBOPHYL: Decoderen van vercijferde en onvercijferde berichten

 

Inleiding

Als onderdeel van de cryptografie bestond er in de jaren zestig van de twintigste eeuw bij  het decoderen van vercijferde en niet vercijferde telexberichten behoefte bij de Verbindingsdienst van de Koninklijke Landmacht aan apparatuur die deze berichten kon vastleggen.

Als eerste werd er een apparaat ontwikkeld, de SCRIBOPHYL (Schrijfmachine met Cyrillisch alfabet voor Russische, Internationale en Baudot Overdrachtssystemen, PHYsisch Laboratorium), dat deze berichten kon opslaan. Deze opslag bestond toen nog uit opslag op ponsband. De ponsband bestond uit een papieren band (strook), waarin de informatie gecodeerd in ronde gaatjes was geponst, geordend in vijf of acht rijen. Vanaf het begin van de jaren vijftig tot aan het eind van de jaren zeventig van de twintigste eeuw was het een wijdverbreid gebruikt computermedium voor zowel data- als programmatuuropslag. De ponsbandstrook was ongeveer 2 cm of 2,54 cm (inch) breed. De mechanische specificaties, waaraan zowel de niet geponste als geponste ponsband diende te voldoen, waren vastgelegd in de zogenaamde ECMA standaard 10 (ECMA-10). Deze standaard werd tot het midden van de jaren 70 van de twintigste eeuw bijgewerkt.


8-gatsponsband in elke gewenste kleur

In de vijfgatsponsband werden de vijfinformatiebit haaks op de band weggeschreven, drie aan de ene zijde en twee aan de andere zijde van de rij kleinere transportgaatjes (sprocket holes). Omdat vijf bits (gaatjes) te weinig waren voor dataopslag, werd de opslag op de ponsband later vergroot naar 8 gaatjes op rij (vijf en drie). In de achtgatstape werden de zogenaamde ASCII-tekens ofwel 6, 7 of 8 bits data geponst. Er waren vele coderingsmethoden in gebruik. Om fouten bij het ponsen en inlezen op te vangen werd er desgewenst een controlebit (pariteitsbit) aan toegevoegd. Dit speciale bit, opgenomen in één rij, zorgde ervoor dat de totale som per kolom oneven was. Het ponsband leesapparaat stopte als er een even aantal gaatjes werd gelezen. Het was dan aan de operator om de fout te constateren en door middel van een aantekening op het printverslag vast te leggen.

Eind jaren vijftig van de twintigste eeuw werd er een telexponsbandapparaat door het toenmalige Physisch Laboratorium RVO-TNO, ten behoeve van bovengenoemde Verbindingsdienst, ontwikkeld (zie “PUNCHROPHYL”). Dit apparaat kon 7-gats (4 en 3 sporen) ponsband aanmaken met de onderstaande organisatie (fig.1).


Fig.1    sporen in de zevengatsponsband

Om vercijferde en onvercijferde berichten (data) te lezen werd er een schrijfautomaat ontwikkeld. Deze kon de door de PUNCHROPHYL aangemaakte ponsbanden lezen en omzetten naar tekst die op een elektrische schrijfmachine werd afgedrukt.

Met de SCRIBOPHYL, deels ingebouwd in een "standaard bureau", konden berichten in elke bestaande telexcode worden verwerkt.

  

Achtergrond

Algemeen

De meest gebruikte telexcodes zijn opgebouwd uit vijf informatie- en twee synchronisatie bits (gaatjes). Met de informatie-bits zijn 25 = 32 verschillende tekens (karakters) weer te geven. Allereerst de letters van het alfabet en enige tekens voor de wagenfuncties van de telexapparatuur. Om toch met de vijf bits meer informatie te kunnen overbrengen, was er één combinatie van de vijf bits gereserveerd om over te gaan naar lettertekens en één combinatie om over te gaan naar de cijfertekens. Hiervoor gold dat er na een “lettercombinatie” steeds letters en na een “cijfercombinatie” steeds cijfers of leestekens werden geschreven.

Een afwijkende telexcode is de Baudot-code. Die is opgebouwd uit tien informatiebits en twee synchronisatiebits. Het is een zogenaamde multiplex-systeem van twee telexkanalen. De eerste vijf bits behoren bij kanaal I, de volgende vijf bits bij kanaal II. In de ponsbanden van de eerder genoemde PUNCHROPHYL werden de codecombinaties voor de kanalen I en II achtereenvolgens geponst. Om de informatie van één kanaal te lezen, moest er om het andere karakter worden gelezen.

De berichten opgenomen in de ponsbanden konden op verschillende manieren in de ponsband zijn ondergebracht.

Soorten berichten

De berichten, die de automaat kon verwerken waren als volgt te onderscheiden:

  • Onvercijferde berichten:
    • Berichten in telexcodes voor bladschrijvers. Dit zijn telexcodes, waarin de apparaatfuncties “terugloop wagen” en “nieuwe regel” zijn opgenomen. Dergelijke apparaatbesturingscodes zijn opgenomen in de volgende typen Telexcodes:
      1. De internationale code nummer 2(CCITT nummer 2).
      2. De Russische Siemenscode (R.S.C.).
      3. De Russische nationale code met positief letterteken (RNC +).
      4. De Russische nationale code met negatief etterteken (RNC -).
    • Berichten in telexcodes voor bandschrijvers. Deze codes bevatten geen “terugloop wagen” en “nieuwe regel”. De groep is te verdelen in 5-bits en 10-bits Telexcodes:
      1. Vijfbits telexcodes
        • Russische ST35 code met Russisch alfabet (R–CT35).
        • Russische ST35 code met Latijns alfabet (R-ST35). Een bijzonder kenmerk van de Russische ST35 is, dat er voor het Russische en het Latijnse alfabet een verschillende code-combinatie voor het teken “letters” werd gebruikt. Aan het letterteken was te zien in welk alfabet de Russische ST35 code was gesteld.
        • De Tsjechische ST35 code (T–ST35).
        • De Poolse ST35 code (P–ST35).
      2. Tienbits telexcode: De Russische Baudot-code (R.B.C. of MKT-2). Bij de Baudot-code hebben de codecombinaties voor letters en cijfers een dubbelfunctie. Deze worden beiden ook als spatie gebruikt. De code kent drie shift modes. Het cyrillische alfabet start een 00000-teken. Omdat het cyrillisch meer tekens kent dan het latijnse alfabet, zijn de tekens !, &, £ en de Bel vervangen door cyrillische tekens.

    Welke tekens er in de diverse telexcodes aan de code-combinatie waren toegevoegd wordt weergegeven in Fig. 1.

  • Vercijferde berichten:
    1. Gecodeerde berichten met wagenfuncties (apparatuurfuncties). De gecodeerde berichten met wagenfuncties konden in de verzonden telexcodes worden weergegeven. In het bericht was er dan een zekere lay-out opgenomen. Hiertoe werd het bericht in groepen van 4, 5 of meer karakters opgedeeld. Deze karakters waren in het algemeen in lettertekens of cijfers gesteld.
    2. Gecodeerde berichten zonder wagenfuncties. Deze berichten werden weergegeven in 32 verschillende codecombinaties (5 bits = 25). De TELEX-zenders, waarvan deze berichten afkomstig waren, zonden met een constante frequentie karakters (codecombinaties van vijf bits) uit. Bevatte een karakter informatie, dan was dat aan de ponsband, gemaakt met de PUNCHROPHYL te herkennen door een geponst gaatje in spoor 6. Een karakter bevatte geen informatie als dit bewuste spoor 6 niet was geponst. Het karakter had dan steeds de codecombinatie:   00000. Dit werd een karakter zonder informatie genoemd, het zogenaamde “idle-time” karakter. Voor het vastleggen van de gecodeerde berichten zonder wagenfunctie werd 7-spoors ponsband gebruikt.

      Waren deze gecodeerde berichten gegenereerd in de Baudot-code, dan werd er alleen bij het karakter van kanaal I aangegeven of één van de twee kanalen informatie bevatte. Voor deze gecodeerde berichten zonder wagenfunctie werd de functie “CRYPTO” op het bedieningspaneel van de “SCRIBOPHYL” ingeschakeld. Voor andere berichten was dat de functie “KLAAR”.


Fig. 1 SCRIBOPHYL codes

Principe en Werking

Principe

Uit de tabel met Telexcode (Fig.1) wordt duidelijk dat een teken uit de lettershift niet aaneen gekoppeld is met een teken uit de cijfershift. In het CCITT-2 codealfabet gaat bijvoorbeeld de A samen met het – teken, terwijl in de R.B.C. codelijst de A samengaat met het cijfer 1. Er zijn 32 letter- en 32 cijfercombinaties mogelijk.

De tekens, die in de verschillende telexcodes in de mode LETTERSHIFT zijn ondergebracht, zijn in één shift-stand van de voor shift-standen geconstrueerde elektrische schrijfmachine weer te geven. De tekens van de CIJFERSHIFT zijn weer te geven met de andere shift-stand van de elektrische schrijfmachine.

De karakters in de ponsbanden van de PUNCHROPHYL werden met een ponsbandlezer binnen gehaald in een vijfbitsegister van de “SCRIBOPHYL”. Las de bandlezer een letterteken, dan werd dat teken opgeslagen in een geheugen (één bit shiftgeheugen). Een cijferteken wiste het geheugen met tekeninformatie. Het betreffende geheugenelement stelde de shift-stand voor de schrijfmachine in. Samen met het vijfbits informatie-register vormde het één bit shiftgeheugen een 6-bits karakter. Hiermee konden in totaal 32 lettercombinaties plus 32 cijfercombinaties worden weergegeven. Een code-omzetter zette een 6-bits code om in een signaal op één van de 64 uitgangen (32 voor letters plus 32 voor cijfers). Deze uitgangen werden gekoppeld met een codekaart. Voor elke soort telexcode was een codekaart aangemaakt. Via deze codekaart werden de signalen van de code-omzetter naar de schrijfmachine gevoerd. Met de omgezette 6-bit informatie werd één schrijfmachinespoel bekrachtigd. Het met deze spoel gekoppelde letter-, cijfer- of leesteken-symbool, werd op bladpapier afgedrukt.

Codekaarten

De codekaarten waren tweezijdige printplaten met gedrukte bedrading. Deze platen waren voorzien van 64 ingaande en 56 uitgaande contactbanen. De ingaande lijnen konden met iedere uitgaande lijn zijn verbonden. Voor elke soort telexcode was er een kaart aanwezig. Door het plaatsen van een codekaart voor één bepaalde telexcode in de SCRIBOPHYL kon een bericht worden geschreven. De binnenkomende lijnen op de codekaart waren dan verbonden met de uitgaande lijnen van de code-omzetter. De uitgaande lijnen van de codekaart op hun beurt met de bekrachtigingsspoelen van de elektrische schrijfmachine.

Om het geregeld uitwisselen van de codekaarten te verminderen waren er een viertal codekaarten tegelijkertijd in de SCRIBOPHYL aanwezig. De keuze voor één van de kaarten werd uitgevoerd met een schakelaar op het bedieningspaneel.

Crypto

Zoals hiervoor aangegeven bevatten cryptoberichten 32 verschillende karakters. Deze karakters werden door 32 verschillende tekens met de lettershift weergegeven. Met de SCRIBOPHYL werd het mogelijk om een ontvangen cryptobericht in willekeurige soort telexcode opgesteld weer te geven. Gaven we een cryptobericht weer in de telexcode voor het Latijnse alfabet, dan werden de wagenfuncties en vijfwerk (= code-combinatie 00000) van de schrijfmachine vervangen door Russische letters, welke in het Latijnse alfabet niet voorkomen. Omgekeerd werden bij zo'n bericht weergegeven in de telexcode voor het Russische alfabet de wagenfuncties en vijfwerk vervangen door Latijnse letters, welke op hun beurt niet voorkomen in het Russische alfabet. Er vond dus een uitwisseling plaats voor de wagenfuncties met niet bestaande codes voor dat alfabet. De letters, welke voor de wagenfuncties en vijfwerk werden gebruikt zijn in onderstaande tabel opgenomen.

Alleen de karakters met informatie werden met de schrijfmachine geschreven. De informatie in spoor 6 van de ponsband zorgde hiervoor (zie paragraaf 1.6). Om een goed overzicht van de cryptoberichten te verkrijgen schreef de schrijfmachine deze in een bepaalde opmaak.

Opmaak voor de cryptoberichten

De cryptoberichten werden in groepen van 3,4 of meer letters getypt met de schrijfmachine. Om naast de groepen geschreven letters nog aantekeningen te kunnen maken was de horizontale afstand tussen de te schrijven groepen letters instelbaar gemaakt, bijvoorbeeld:
        abcd          pqrs          tuvw          xyza         aklm          nijm          fgps          aouy

Deze indeling had het voordeel sneller gelijke delen of zekere patronen in de tekst (het bericht) te ontdekken. Dit vergemakkelijkte het ontcijferen van de cryptoberichten. De te gebruiken opmaak werd mechanisch afgeleid van de positie van de tabulatorrail van de elektrische schrijfmachine. Deze was gemakkelijk in te stellen met de set- en resetknop van de schrijfmachine.

Inverteren

Het kon ook gebeuren dat de ponsband door de PUNCHROPHYL geleverd, geïnverteerd was geponst. De 1 was als 0 geponst en een 0 was als 1 geponst. Het omzetten ervan kon door de SCRIBOPHYL worden uitgevoerd.

Spoelapparaat (zie foto)

Om met de van de telex afkomstige ponsbanden te kunnen omgaan was er bij de ponsbandlezer een spoel-apparaat aanwezig. Dit spoelapparaat kon de ponsband gespannen houden tijdens het lezen van deze band. Tevens kon er snel links- en rechtsom gespoeld worden. Het versneld omspoelen werd noodzakelijk wanneer er in de ponsbanden lange informatieloze delen voorkwamen. Het versneld omspoelen voorkwam daarmee tijdverlies. Ook kon er weer snel naar het begin van een ponsband worden gegaan. Dit was van belang bij informatie die in Baudot-code (twee kanalen) was geponst.

Technische Beschrijving

Opbouwschema

De volgende eenheden zijn in de tekening te onderscheiden (met rechtsboven in de blokken de nummering):

  1. De invoer (nr. 1,2,3 en 4)
  2. De code-omzetter (nr. 5,6,7,8,9,10 en 11)
  3. De elektrische schrijfmachine met besturing (nr. 12 en 12a)
  4. De systeemklok met besturing (nr. 13)

De invoer

Deze bestaat uit:

  1. De ponsbandlezer (nr. 1) met een leessnelheid van maximaal 25 tekens/seconde, tastte de band mechanisch af. Een geponst gat werd als een hoog signaal (een 1) in een register ondergebracht. Een blank deel ( geen geponst gat) werd als een laag signaal (een 0) ondergebracht. De ponsbandlezer werd voorzien van een “tape-out” contact. De SCRYBOPHYL kon daarmee worden stopgezet.
  2. Het ponsbandspoelapparaat (nr. 2) zorgde voor de aan- en afvoer van de te lezen ponsband naar en van de leeskop. Ook was het apparaat voorzien van een strak-band contact. Daarmee werd bij hapering van de ponsbandaanvoer de SCRYBOPHYL stil gezet.
  3. Besturing van de ponsbandlezer (nr. 3).
    De transportsnelheid van de lezer werd bepaald door de maximumsnelheid van de elektrische schrijfmachine (10 tekens per seconde). De besturing voor de lezer gaf 10 impulsen/seconde bij het lezen van 5 bits ponsbanden en 20 impulsen/seconden bij het lezen van 10 bits (Baudot-code) ponsbanden. Bij ponsbanden in Baudot-code werden om het andere karakter gelezen (in het register). De daarbij te gebruiken codekaart (nummer 7 in het schema) stelde de snelheid van 10 of 20 impulsen/seconde in. Eveneens gestuurd door de codekaart leverde de systeemklok met z'n besturing (nummer 13) de impulsen voor de besturing van de ponsbandlezer.
  4. Het leesregister (nr. 4):
    De systeemklok met besturing schreef de gelezen karakters in het leesregister. Voor de Baudot-code werden alleen de karakters van het ingestelde kanaal binnen gelezen. Gezamenlijk stelden het leesregister en het shiftgeheugen de relaisboom (nummer 5) in.
  5. De code-omzetter, die bestond uit:
    • Relaisboom (nr. 5): De relaisboom zette de 6 bits informatie om voor een verbinding van de schrijfmachinebesturing (nr. 12a) met één van zijn uitgangen. Daarmee verscheen er een impuls, gegenereerd door de schrijfmachinebesturing aan deze uitgang.
    • Keuzeschakelaars (nr. 6) die de uitgangen van de relaisboom met de ingangen van één van de vier te verkiezen codekaarten verbonden. De selectie voor een codekaart werd gedaan met één van de vier drukknoppen, rechts op het bedieningspaneel.
    • Codekaarten (nr. 7); deze hadden twee functies.
      1. De codekaart verbond de relaisboomuitgangen met de schrijfspoelen van de schrijfmachine. In de schrijfmachine was er voor elke wagen- en typefunctie een spoel gemonteerd. De verbinding op de codekaart was zodanig aangebracht, dat het juiste letter of cijfer op papier werd afgedrukt.
      2. Op de codekaart was een vaste programma-instelling aangebracht, welke de soort code bepaalde. Een verdere instelling vanaf het bedieningspaneel was daarmee niet nodig. De volgende programma-instellingen op een codekaart konden zijn opgenomen:
        • Baudot-code/geen Baudot-code. Na de keuze voor de Baudot code las de ponsbandlezer met verhoogde snelheid van 20 karakters/sec. Er werd dan één kanaal gelezen. De daarbij voorkomende codes voor letters en cijfers schreven een spatie.
        • Latijns/Russisch In de stand “CRYPTO” werden wagenfuncties in de Latijnse Telexcode omgezet naar Russische Letters. De wagenfuncties en “vijfwerk” van het Russische alfabet werden op hun beurt vervangen door Latijnse letters.
        • ST35 code/geen ST35 code. Bij een ST35 code werd er een markering aangebracht bij het overschakelen van Latijns naar Russisch alfabet en omgekeerd.

      In bijgaande tabel geven de nummers van de uitgangen op de codekaarten aan bij welke letter, cijfer of wagenfunctie deze behoren.

    • Shiftgeheugen + besturing (nr. 8) .
      De elektrische schrijfmachine was niet ingericht om op het lettercommando in de cijfershift te gaan staan. Voor de lettershift werd de shiftspoel van de schrijfmachine continu bekrachtigd. Bij het niet bekrachtigd zijn van de shiftspoel stond de schrijfmachine in de cijfershift stand. Voor het instellen van de shift was een geheugen-element nodig. Dit shiftgeheugen werd gestuurd door de schakelstanden “Klaar/Crypto” op het bedieningspaneel. Het shiftgeheugen stelde het 6e bit voor de relaisboom in en stuurde daarmee de shiftstand van de schrijfmachine.
    • Crypto/klaar schakeling (nr. 9).
      De SCRIBOPHYL in stand “Crypto” werd gebruikt voor Gecodeerde berichten zonder wagenfunctie. De anderen waren te schrijven in de stand “Klaar”. In de stand “Crypto” zette de schakeling de schrijfmachine in de stand “Letters” en verving de wagenfuncties door letters. Ook zorgde de schakeling voor de opmaak van deze geschreven letters.
    • Baudot dubbelfunctie (nr. 10).
      In Baudot-code komt de codecombinatie voor cijfers en letters overeen met die van de spatie. De Baudot-dubbelfunctie schakeling zorgde ervoor dat de functie letters/cijfers en de functie spatie als een spatie-commando naar de schrijfmachine werd gestuurd.
    • CT/ST35 markering (nr. 11).
      Bij de ST35 (CT35) codering werden er twee code-combinaties voor de overgang naar lettertekens gebruikt. Eén in het Latijnse- en één in het Russische alfabet. Als er bij het bij het typen van de schrijfmachine op het bedieningspaneel een lampje brandde, kwam het bij het typen gebruikte alfabet niet overeen met die van de codekaart. Door het bedienen van de knop “CT/ST35” werd er zodra een ander alfabet (andere codekaart) werd gekozen, een letter als herkenning van de overgang naar het andere alfabet op het papier gedrukt.
    • De IBM schrijfmachine met zijn besturing.
      De schrijfsnelheid was standaard: 10 tekens/sec. De schrijf- en wagenfuncties ontving de schrijfmachine van z'n besturing. Het shift-commando werd geleverd door het shift-geheugen. De impulsen voor de IBM besturing vielen niet samen met het schakelen van de relais in de relaisboom. Dit om storing door deze relais te voorkomen. Een terugmelding van de schrijfmachine stopte de systeemklok wanneer de uitvoering van een wagenfunctie op de schrijfmachine langer dan 100 milliseconde duurde. Aan de instelling voor de rechter kantlijn op de IBM schrijfmachine was een micro-schakelaar gekoppeld. Deze regelde de automatische terugloopwagen en nieuwe regel. Ook op de tabulator-rail was een micro-schakelaar aangebracht. Deze bestuurde de tabel-voering. Deze laatste schakelaar werd alleen gebruikt in de stand “Crypto” van de SCRIBOPHYL om ruimte tussen de geschreven kolommen van karakters aan te brengen.
    • Klok en klokbesturing
      De klok voorzag in alle besturingsimpulsen nodig voor bovengenoemde schakelingen. De instelling van de klok en de klokbesturing werd bepaald door de gekozen code-kaart. Als er cryptoberichten werden verwerkt, werd het al of niet schrijven van een karakter met de schrijfmachine bepaald door de informatie in spoor 6 van de ponsband. De melding “wagenfunctie” van de schrijfmachine stopte de systeemklok voor zolang als deze functie duurde.
 

     


Museum logo