Autorelatieve Code

Ik heb weer eens een code bedacht. Dat wil zeggen, het zou me verbazen als hij niet al bestaat, maar aangezien ik daar niet van op de hoogte ben heb ik hem in ieder geval óók bedacht. Ik geloof dat ik iets minder vindingrijk ben in het verzinnen van namen voor mijn vindingen, dus als u nog iets minder dors weet dan de voorlopige werktitel ‘Autorelatieve Code’, gaarne.

Het idee is tamelijk simpel, alleen legt het niet zo makkelijk uit. Net als het leven zelf dus eigenlijk zeg maar. Daarom zal ik het zo veel mogelijk met visualia proberen te doen.

Begin met het alfabet in een kringetje te zetten, aldus:Zozuziet lopen de 26 letters in hun gebruikelijke volgorde van A tot Z in een rechtsomme cirkel, en na de Z komt weer de A. De grijze cijfers staan voor de posities van de desbetreffende letters in het alfabet: A = 1; P = 16, etc. Dat is handig voor zometeen.

Deze alfabetcirkel vormt de basis voor de code; hiermee kunnen we een tekst coderen. Hoe dat gebeurt is door middel van het zetten van stappen in de cirkel, met de klok mee, te beginnen bij de A:

Voor elke letter van de te coderen tekst legt men een stap van vastgelegde afstand rechtsom in de alfabetcirkel af, en begint men voor elke nieuwe letter steeds bij het eindpunt van de vorige stap. De afstand van een stap is gelijk aan het getal van de positie van de desbetreffende letter in het alfabet (de grijze cijfers).

Zie? Ik zei toch dat het lastig uitlegde? Als het goed is snapt u er nu niks meer van. Ik snap het zèlf nauwelijks als ik het zo formuleer. Terwijl het zo simpel is. Taal is fraai hoor, maar schrijnend arm, somtijds. Daarom maar gauw aan de slag.

We gaan een woord coderen, laten we zeggen, dief. We beginnen bij de eerste letter, de d. Om een letter te coderen moeten we weten welke positie hij in het alfabet heeft. U zult denk ik wel weten dat dat voor de d de vierde is, maar zo niet, dan kunt u dat gemakkelijk nagaan aan de hand van de grijze cijfers in de alfabetcirkel. Vooral bij de hogere cijfers is dat wel handig.

Bij de d hoort dus de 4. En 4 is dan ook de afstand die we kloksgewijs moeten afleggen in de alfabetcirkel om de letter d te coderen. Zoals ik hierboven zei beginnen we te tellen bij de A, en door daarvandaan een afstand van vier letters af te leggen (de blauwe pijl) komen we uit bij de E (rood omcirkeld):

Ziedaar! We hebben de eerste letter van onze tekst dief gecodeerd: de d is een E geworden.

Die E nu vormt het uitgangspunt voor het coderen van de volgende letter, de i. Begonnen we daarnet te tellen bij de A; nu gaan we verder vanaf de E. Ditmaal moeten we de afstand afleggen die bij de i hoort, en aangezien de i de negende letter van het alfabet is (zie weer de grijze cijfers) leggen we deze keer een afstand van negen letters af. Komen we uit bij de N, en, precies, dat is dus onze tweede gecodeerde letter:Nu moet het principe duidelijk beginnen te worden. De laatst gecodeerde letter vormt telkens het uitgangspunt voor de codering van de volgende letter.  Voor de derde letter van onze tekst, de e, gaan we dus verder vanaf de N, en omdat de e de vijfde letter van het alfabet is gaan we vijf stappen naar rechts, hetgeen ons op de S brengt:De laatste letter moet nu geen probleem meer zijn, dunkt me. De uitgangsletter is de S, de f is de zesde letter van het alfabet en dus gaan we zes stappen naar rechts. De vierde en laatste letter wordt dus de Y:En hop! De tekst dief is nu geheel vercodeerd, in ENSY.

Voilà. Dat is nu mijn nieuwe code. Ziet u dat het eigenlijk wel meevalt, qua ingewikkeld? Bijna suf te noemen, zou men haast mompelen. Wat is hier precies de lol aan, en waarom zeg je niet gewoon metéén dat de d een E wordt, de i een N, etcetera, zonder dat hele gedoe met die cirkel? Nou, omdat de d helemaal niet altijd een E wordt, noch de i altijd een N, etcetera.

Kijk bijvoorbeeld maar eens wat er gebeurt als we ons woord willen verlengen tot, bijvoorbeeld, diefje. We waren bij de Y gebleven, dus dat wordt weer de uitgangsletter voor de j. De j is de tiende letter van het alfabet, en dus gaan we vanaf de Y tien letters naar rechts. We zijn inmiddels de cirkel rond, maar dat geeft helemaal niets, we tellen gewoon tien letters met de klok mee, en aldus komen we op de I:

En vanaf de I gaan we voor de e weer weer vijf plekken verder, wat ons andermaal op de N brengt:

ENSYIN dus. Oftewel, hier is de e geen S geworden zoals bij dief, maar een N, terwijl die N bij dief net nog voor de i stond. Met andere woorden: in deze code is er geen saaie één-op-één relatie tussen tekst en codering, maar wordt de codering van elke letter bepaald door die van de voorgaande letters. De code is van zichzelf afhankelijk; anders gezegd: autorelatief. Noem mij een nerd, maar dat vind ik lol.

Zelf proberen? Ja hè, ik ruik u al popelen van verlangen om met deze fenomenale vinding aan de slag te gaan. Nou, dat kan! Ik heb namelijk met mijn door promotieconcentratie hypergeactiveerde brein een Excelscriptje gebouwd waarmee u hoogstpersoonlijk korte Autorelatieve Codes kunt bakken, en weer ontbakken ook. Klik hier en volg de instructies. WBGS LGJMRK!

31 gedachten over “Autorelatieve Code

  1. Ha! Is inderdaad veel eenvoudiger dan het lijkt. Je zou zelfs kunnen zeggen dat het eigenlijk misschien zelfs wel nauwelijks een code is maar vooral heel erg op een code lijkt. Of je 3 schrijft of B is per slot van rekening tamelijk arbitrair. En of je 3 uitschrijft met een cijfer of op een andere wijze evenzo.

    Als ik een naam voor mag stellen: mimicrycode (mimicry, I cry!).

    Like

    1. Cool! Dit inspireert mij tot het bakken van de Code der Codes: eentje waarbij het voor elke letter volstrekt arbitrair is met welke letter je hem codeert! Of meerdere letters! Of geen! Oh boy, dat ik dit niet eerder heb bedacht! Rbukci2p fjr po fhfyens8*!

      Like

        1. Nee, nog veel weergalozer: je mag ter plekke bedenken met welk(e) teken(s) je de letter(s) van je tekst codeert! Niemand die er dan ooit nog uitkomt! Goed, ook jijzelf en de geadresseerde niet, maar nou niet op details letten hè.

          Like

      1. Oh, wacht, ik vat wat je bedoelt. Ja, mee eens: het is een herschrijving van de informatie volgens een arbitrair maar consistent systeem. Maar goed, is een code dat niet per definitie altijd? Natuurlijk zijn echte codes meestal bedoeld om ook nog eens moeilijk kraakbaar te zijn, maar het proces is hetzelfde.

        Like

  2. Beste Dirk:
    Een uitspreekbare versie van een lettercode zou je de klinkers zoals A of O kunnen verwisselen..Lijkt je dat geen simpele oplossing ?
    voorbeeld :”Uun kand kin du wis daun’,(leidt het gezogde)’ Raadseltje: Welk spreekwoord staat hier dan ? … Nu nog de medeklinkers uitspeekbaar’ verwisselen.. wat jij ?

    Like

  3. Wow: briljant!

    ‘Luzlu’ of ‘Onsea’ lijken me wel wat als namen… is uit te spreken en betekent bij decodering ovendien ‘taal’, nu ja, bij onze Finoegrische buren, maar toch.

    Voor de uitspreekbaarheid kun je een regel inbouwen die bij elke tweede, derde of vierde letter (afhankelijk van hoe zwaar je de medeklinkerclusters wil hebben) automatisch doorgaat naar de eerstvolgende klinker en dan weer gewoon verder telt. Exceltechnisch gezien wel weer wat uitdagender, maar niet onmogelijk, toch?

    Of je spreekt ’t gewoon in ’t Welsh uit natuurlijk, dan kan ’t meestal gewoon ;-)

    Like

    1. Dank!

      Okee, dat is tamelijk opmerkelijk: een Fins woord dat er na ARC’ificatie Hongaarsig uitziet, en vice versa. Fraaie woorden ook nog eens! Alleen aarzel ik dit systeem een ‘taal’ te noemen.

      @ Uitspreekbaarheid: Hoei, dat is misschien te doen. Zelf zat ik meer te denken aan: voor elke codeerletter staat een consonant en een vocaal, en je mag zelf kiezen welke je neemt. Vereist echter wel de aanwezigheid van 26 vocalen. Niet onmogelijk (met verdubbeling, nasalisering e.d. erbij zit je al gauw op een stuk of 20) maar even wat gepuzzel.
      Dus, zegmaar, dat je als codetekst ABNT hebt, en dat de A dan voor, zeg, een p of een e staat; de B voor een ç of een ü, de N voor een k of een ã en de T voor een r of een o. Naar eigen esthetisch inzicht kun je dan kiezen voor bijvoorbeeld püko, eçko, eçãr of pção. Een soortgelijk systeem gebruik ik voor het Účla (nog in aanbouw), en daar werkt het.

      Of gewoon Welsh dus, inderdaad.

      Like

      1. Slim ja en erg variabel met die keuzes. Een andere mogelijkheid is er een mooie formule op los te laten. Onze klinkers zijn verbazingwekkend mooi verdeeld over ons alfabet:
        a=1, e=5, i=9, 0=15, u=21. Dus dat zijn intervallen van 4-4-6-6(-6 terug naar a) en dat lijkt me regelmatig genoeg voor een wiskundige om je optelsom afhankelijk van je volgende letter zo aan te passen dat de uitkomst voor ’t Nederlandse woordpatroon regelmatig genoeg op een klinker uitkomt. Of zie ik dit als simpele taalliefhebber helemaal verkeerd?

        En dat laatste verwijst dan ook weer naar mijn keuze voor Luzlu of Onsea natuurlijk: ik hoop wel dat je de taal ‘erachter of ervoor’ ook ooit gaat onthullen ;-)

        Like

      1. Tja, dat krijg je als je slimme scriptjes gaat schrijven om de massa te onderwijzen, die moet je dom houden, naar ’t schijnt (waar die Tudors allemaal niet goed voor zijn, hè).

        @Englandspiel: lees Jelte Rep of De Jong, bijzonder interessant!

        Like

  4. Ja,Dirk, een ontworpen geheimtaal is leuk voor een speels raadselspel met elkaar,maar is ook het terrein van sommige mystici en spionnen-ketens
    De code van de z.g. ”enigma-machine” van de Nazi’s is gelukkig nog op tijd door de Polen en Engelsen gekraakt..Zodoende kon men alle oorlogs-strategieen van hen feilloos onderscheppen..En zie daar,nuttige informatie om Europa grondiger te kunnen bevrijden met de juiste tegen-strategie – en daardoor ook betere beschermingsfactoren voor(oa) de Amerikaanse en Engels geallieerden..
    (Zie bv. ook ”Het Englandspiel”- wikipedia) hier werd bewust valse informatie aan de Duiters doorgegeven (oa) om hen falikant te kunnen misleiden..
    Jaja..slim,hoor !

    Like

      1. Je bedoelt de 13e Eeuws Mysticus? Ja, zijn manuscripten zitten stampvol geheime verwijzingen en mysterieuze codes. Wat zouden ze ons te vertellen hebben?

        Like

Plaats een reactie