Blinkenlights is een neologisme uit de hackercultuur die van oorsprong refereert aan de diagnostische lampjes op mainframe1-computers uit de jaren 60 en 70. Volgens de Jargon file2 dateert de term al uit de jaren 50 en werd hij in de jaren 60 wereldwijd waargenomen. Vandaag wordt de term nog gebruikt voor de statuslampjes van moderne netwerkhardware (modems, netwerkhubs, etc.). Computer hebben nu om tal van redenen geen blinkenlights meer, maar de belangrijkste is dat mensen computers niet langer kunnen volgen door de snelheid waarmee moderne CPU's rekenen. Hoewel er sindsdien meer geavanceerde UI3-mechanismen zijn ontwikkeld, kunnen blinkenlights nog steeds aanwezig zijn als aanvullende statusindicatoren en vertrouwde skeuomorfismen4.

DEC PDP-8
Lampjes op het voorpaneel van een DEC PDP-8 (1965).
stacks
De Harwell Dekatron Computer5 rekent ongeveer met menselijke snelheid. Door naar de lampjes te kijken, kun je de instructies en de veranderende gegevens volgen terwijl de computer het kwadratenprogramma uitvoert dat op de panelen wordt weergegeven.

Hackers6 hebben de term ontleend aan een beroemd nep-waarschuwingsbord met tekst (vaak in Gotisch lettertype7) geschreven in steenkolenduits dat bijna homoniem is met Engelse termen. Er is zelfs een Duitse versie die de parodie parodieert.

blinkenlights
ACHTUNG!

ALLES TURISTEN UND NONTEKNISCHEN LOOKENSPEEPERS! DAS KOMPUTERMASCHINE IST NICHT FÜR DER GEFINGERPOKEN UND MITTENGRABEN!

ODERWISE IST EASY TO SCHNAPPEN DER SPRINGENWERK, BLOWENFUSEN UND POPPENCORKEN MIT SPITZENSPARKEN.
IST NICHT FÜR GEWERKEN BEI DUMMKOPFEN. DER RUBBERNECKEN SIGHTSEEREN KEEPEN DAS COTTONPICKEN HÄNDER IN DAS POCKETS MUSS.

ZO RELAXEN UND WATSCHEN DER BLINKENLICHTEN!
blinkenlights
Actung!

Der Komputermaschine ist nicht für der gefingerpoken und mittengraben! Oderwise ist easy to schnappen der springenwerken, blowen ze fusen, und poppencörken mit spitzenspärken.

Ist nicht für gewerken bei Dumköpfen! Rubbernecken sighteeren keepen der verdamten händer in ze pockets müß.

Just relaxen und watchen der blinkenlights.
blinkenlights
ATTENTION

This room is fullfilled mit special electronische equippment.

Fingergrabbing and pressing the cnoeppkes from the computers is allowed for die experts only!

So all the "lefthanders" stay away and do not disturben the brainstorming von here working intelligencies. Otherwise you will be out thrown and kicked anderswhere!

Also: please keep still and only watchen astaunished the blinkenlights.

Opgave

Klare tekst en cijfertekst zijn twee begrippen uit de cryptografie — Oudgrieks: κρυπτός (kryptós, "verborgen, geheim") en γράφειν (gráphein, "schrijven") — de toepassing en de studie van technieken waarmee een klare (leesbare) tekst kan versleuteld worden naar een onleesbare cijfertekst, die op zijn beurt terug kan ontsleuteld worden tot de oorspronkelijke klare tekst. De klare tekst is de oorspronkelijke (leesbare) tekst. De versleutelde (onleesbare) tekst heet de cijfertekst. De woorden versleutelen (klare tekst omzetten naar cijfertekst) en ontsleutelen (cijfertekst omzetten naar klare tekst) verwijzen naar het feit dat er bij het versleutelen en ontsleutelen vaak een sleutel moet gebruikt worden: een extra stuk (geheime) informatie dat je nodig hebt om die acties te kunnen uitvoeren.

We hebben berichten versleuteld met een cryptografische techniek waarbij de sleutel en de cijfertekst even lang zijn (uit evenveel karakters bestaan). De cijfertekst kan je ontsleutelen door de sleutel boven de cijfertekst te zetten. Als voorbeeld gebruiken we deze sleutel en cijfertekst:

    sleutel: e = 2.718281828459045235360287471352662497757247093699959574966967627724076
cijfertekst: 28 ZsTpaumnrhsrkotDscf nameggi cit rhi reenfeie  tüd enomntpeikadrtnenbu !g

Eerst lezen we de sleutel van links naar rechts, op zoek naar de positie waar het cijfer 0 de eerste keer voorkomt. Op die positie in de cijfertekst staat het eerste karakter van de klare tekst: in het voorbeeld is dat de hoofdletter D op positie 18 (als we de karakters van links naar rechts nummeren vanaf nul). Dan lezen we opnieuw de sleutel vanaf het begin, op zoek naar de positie waar het cijfer 1 de eerste keer voorkomt. Op die positie in de cijfertekst staat het tweede karakter van de klare tekst: in het voorbeeld is dat de letter a op positie 7. We herhalen dit om te zoeken waar de cijfers 29 voor het eerst voorkomen in de sleutel: we vinden achtereenvolgens de letter s (onder de eerste 2 op positie 4), een spatie (onder de eerste 3 op positie 22), de letter k (onder de eerste 4 op positie 15), de letter o (onder de eerste 5 op positie 16), de letter m (onder de eerste 6 op positie 25), de letter p (onder de eerste 7 op positie 6), de letter u (onder de eerste 8 op positie 8) en de letter t (onder de eerste 9 op positie 17).

ontsleutelen
Uitgewerkt voorbeeld van de procedure om een cijfertekst te onsleutelen met een gegeven sleutel. Boven en rechts: de cijfertekst (onder/links) en de sleutel (boven/rechts). De karakters van de cijfertekst/sleutel worden van links naar rechts genummerd vanaf nul (grijze cirkels). Karakters op een positie worden ingekleurd op basis van het cijfer in de sleutel; grijs als op die positie geen cijfer staat in de sleutel (karakters op deze posities worden niet gebruikt om de klare tekst te vormen). Linksonder: de procedure waarmee de klare tekst ontsleuteld wordt. Een rood kruis geeft aan dat een cijfer $$c$$ (kolom) minder dan $$i$$ keer (rij) voorkomt in de sleutel.

Als we daarmee klaar zijn, herhalen we de procedure terug van voor af aan, maar nu zoeken we telkens naar de tweede keer dat de cijfers 09 in de sleutel voorkomen. Op diezelfde posities vinden we in de cijfertekst de volgende karakters van de klare tekst. Ook dit blijven we herhalen om achtereenvolgens te zoeken waar de cijfers 09 de derde keer, de vierde keer, … in de sleutel voorkomen. Als een cijfer $$c$$ minder dan $$i$$ keer voorkomt in de sleutel, dan voegen we geen nieuw karakter toe aan de klare tekst als we zoeken waar het cijfer $$c$$ voor de $$i$$-de keer voorkomt in de sleutel. De procedure stopt zodra we voor alle cijfers uit de sleutel het overeenkomstige karakter uit de cijfertekst hebben toegevoegd aan de klare tekst.

De klare tekst is dus even lang (bevat evenveel karakters) als het aantal cijfers in de sleutel. De karakters in de cijfertekst die niet onder een cijfer van de sleutel staan, maken geen deel uit van de klare tekst. Daardoor kan de klare tekst korter zijn dan de cijfertekst en de sleutel. Voor de cijfertekst en de sleutel uit het voorbeeld krijgen we deze klare tekst:

klare tekst: Das komputermaschine ist nicht für der gefingerpoken und mittengraben!

Gevraagd wordt:

Voorbeeld

>>> cijfertekst = '28 ZsTpaumnrhsrkotDscf nameggi cit rhi reenfeie  tüd enomntpeikadrtnenbu !g'
>>> sleutel = 'e = 2.718281828459045235360287471352662497757247093699959574966967627724076'

>>> aantal_cijfers(sleutel)
70

>>> positie_cijfer(3, 2, sleutel)
24
>>> positie_cijfer(6, 3, sleutel)
37
>>> positie_cijfer(9, 42, sleutel)
-1

>>> ontsleutel(cijfertekst, sleutel)
'Das komputermaschine ist nicht für der gefingerpoken und mittengraben!'

>>> cijfertekst = ' ftLsrnUisyTelvWya les   Kahen  Eu9ocr RRll 5ochyV.!s ynle5ITiRta'
>>> sleutel = '6630295(160n897o0338533q1=884868J7Z624$fJ035W3375E13016898B4X9.74'
>>> ontsleutel(cijfertekst, sleutel)
'Listen very carefully. I shall say this only once!'

Epiloog

Net zoals de "Listen very carefully. I shall say this only once!" uit het voorbeeld, hebben we ons voor het testen van ingediende oplossingen geïnspireerd op uitspraken uit 'Allo 'Allo!8. De BBC zond tussen 1982 en 1992 in totaal 85 aflevering uit van deze Britse komediereeks. Ze is deels als parodie op Secret Army9 bedacht en ontwikkeld door Jeremy Lloyd10 en David Croft11, die ook de meeste afleveringen geschreven hebben. De hoofdrollen werden vertolkt door Gorden Kaye12, Carmen Silvera13, Vicki Michelle14 en Sue Hodge15. De reeks staat bekend als een van de succesvolste Britse komedies aller tijden.

cast van 'Allo 'Allo!
Een deel van de cast van de Britse komediereeks 'Allo, 'Allo!.

In de reeks worden zogezegd de volgende talen gesproken: Frans, Duits, Italiaans, Spaans, Zweeds (in seizoen 6) en Engels. In werkelijkheid spreken alle acteurs Engels, maar met verschillende accenten om de verschillende talen te benadrukken. De Britten in de reeks spreken met een opvallend deftig accent, en gebruiken typisch Britse woorden en uitdrukkingen, zoals chinwag (babbeltje), chaps (kerels) en peckish (hongerig). Fransen noemen zij Frogs en Duitsers Jerries. Bijna alle personages kunnen elkaar verstaan, maar er is een taalbarrière tussen de Fransen en de Britse piloten, net als tussen de Britten en de Duitsers.

Door deze taalbarrière kon er een gimmick ingebouwd worden rondom het personage van officer Crabtree. Crabtree is een Brit die maar "zeer matig" Frans spreekt. Om dit effect te benadrukken, zegt hij vaak woorden verkeerd, zoals Good moaning16, een running gag in de reeks. Soms ontstaan zo schuttingwoorden. Voorbeelden zijn: The bummers pissed over on a dick night in plaats van The bombers passed over on a dark night, I was pissing your coffee when I thought I'd drip in for a drunk in plaats van I was passing your cafe when I thought I'd drop in for a drink en Long distance dick in plaats van duck. Dit gebeurt echter alleen maar als hij met een "Frans accent" spreekt. Als hij in gesprek is met andere Britten, is zijn rare uitspraak ineens verdwenen, omdat hij dan "Engels" spreekt.

Later wordt er ook een andere grap opgevoerd met kapitein Hans Geering in Londen; oorspronkelijk sprak hij met een Duits accent en een nogal schuchtere, hoge stem. Wanneer hij echter in Londen met Britten praat, spreekt hij met een diepe stem op vrij deftige toon.