[TNO-logo]
Museum logo

Overige verhalen en anekdoten 1978 - 1983

Computerbeveiliging en IWIS-TNO

Op een gegeven dag was er grote paniek bij IWIS-TNO. Men moest de TNO-salarissen uitbetalen, doch de bij IWIS aanwezige CYBER begaf het steeds. De gehele schijfinhoud werd "opgeblazen". De fout leek ergens te zitten in het operating systeem in combinatie met de Cobol-programmatuur. Kon het Physisch Laboratorium een helpende hand bieden ? De salarissen moesten betaald worden...

De verdachte Cobol-module leek bij ons te werken op ons testsysteem. Bij IWIS ging het systeem plat. Nieuwe disk I/O-drivers (PP-programma) werden vertaald en geladen. Geen verbetering. Waar zaten de verschillen tussen het IWIS-systeem en ons testsysteem dan ? Hadden wij wel alle systeemcorrecties aangebracht ? Uiteindelijk kwamen wij er achter wat er aan de hand was. Onze beveiligingscode beveiligde de PP-code tegen overschrijving door "te lange" parameterlijsten, een type beveiligingslek dat nu nog steeds populair is bij UNIX- en netwerkcrackers. Bij IWIS gebeurde dat per ongeluk door het overschrijden van tabelgrenzen. Zodra onze correctie aangebracht was, kon men de fout uit het Cobol-programma gaan halen.

De privacy-problemen van de CYBER

Voor bepaalde oefeningen en door het Laboratorium ontwikkelde spelletjes kreeg de Hogere Krijgsschool (HKS) een aantal terminallijnen op de CYBER 74 tot hun beschikking. Een van de HKS-leraren was zo enthousiast over het gebruik van de CYBER, dat hij een foto voor de Defensiekrant van zichzelf liet maken tijdens de "computerles". De Computergroep werd getipt dat het op die wijze publiceren van de terminalwachtwoorden, die haarscherp op het bord stonden, "enigszins" tegen alle elementaire eisen van beveiliging indruiste. De desbetreffende officier heeft daarop van verschillende kanten een dusdanige opvoeding in computerbeveiliging gehad, dat hij waarschijnlijk nu nog met een grote boog om computers heen loopt.

Een andere externe Krijgsmacht-gebruiker van de CYBER had iets opgevangen over een publieke discussie over de te ontwikkelen privacy-wetgeving, later de Wet Persoonsregistraties (WPR) geheten. Groot was de schrik toen in de Staatscourant het bericht verscheen dat de volledige personeelsdatabase van een Krijgsmachtonderdeel aanwezig was op het CYBER 74-systeem, TNO-locatie Waalsdorp.
Het Laboratorium werd geacht de houder te zijn in de zin van de nog aan te nemen privacy-wet.... Op dit soort publiciteit zat het Laboratorium in de tijd van de vele Onkruit-acties niet te wachten....

Gestructureerd programmeren

Tussen midden en einde van de zeventiger jaren woedde een hevige discussie in de computerwereld over "gestructureerd programmeren": Wat hield dat nou in ? Kon dat nou ook met Basic en Fortran, had je daar echt Pascal voor nodig  of moest je Prof. E.Dijkstra volgen en ieder statement 'bewijzen' ?

Ook binnen de Computergroep woedde een dergelijke discussie. Systeemprogrammering ging er pragmatisch mee om. De programmeergroep was vertegenwoordigd in een NGI-werkgroep die "puristisch" keek naar de bewijsbaarheidsdenkbeelden van Prof. Edsgar Dijkstra en ook de anderen in de Computergroep (CG) hadden iets gelezen in de vakliteratuur.

Groot was de schrik toen een aanpassing nodig was van een systeeminterface van het door het Laboratorium ontwikkelde pakket om de Calcomp-plotter aan te sturen: alle kaarten met regels commentaar en beschrijving waren uit de kaartenbak gehaald. Omdat de "kwaliteitseisen" van gestructureerd programmeren vereisten dat één routine om wille van de inzichtelijkheid niet meer dan één pagina mocht beslaan, had een CG-medewerker alle commentaarregels uit een aantal subroutines en functies gehaald zodat deze nu wel op één printerpagina pasten.

Een andere collega, die ergens ook een "bel" had horen luiden, probeerde zoveel mogelijk statements (niet-standaard Fortran-mogelijkheid) op één kaart te krijgen waardoor de bovengenoemde "paginagrens" opgerekt werd. Uitleggen van wat ze fout deden en wat gestructureerd programmeren nu werkelijk inhield, vergde in die, in vele opzichten, "pionierstijd" nog het nodige missiewerk.

Om gestructureerd programmeren in Fortran te ondersteunen werd begin 1979 het pakket FTS (ForTran Structured) aangeschaft. FTS was een "pre-processor" die gestructureerde constructies als IF- ELSE - ENDIF, DO..ENDDO en CASE-structuren vertaalde naar Fortraní66 code. Later werd dit pakket door TNO aangepast waardoor het echte Fortraní77 code kon aanmaken.



05/01/2002