Over HandcijfersHandcijfers, ook pen-en-papier cijfers of door militairen veldcijfers genoemd, zijn encryptiemethodes die uitgevoerd worden met pen en papier. Veel van deze klassieke cijfers werden ontwikkeld in de tweeduizend jaar van cryptologische geschiedenis. Met elk nieuw cijfer dat ontwikkeld werd, vonden codebrekers nieuwe cryptoanalytische aanvallen om deze te breken, en verbeterden de codemakers hun cijferalgoritmes of vonden zij nieuwe methodes om de veiligheid van hun handcijfers te verbeteren. Handcijfers zijn steeds een compromis geweest tussen veiligheid en praktische overwegingen. Zeer veilige cijfers waren meestal ingewikkeld, onpraktisch en gevoelig voor fouten. Dit was een nadeel in tactische omstandigheden. Anderzijds waren praktische en minder complexe cijfers meestal minder veilig. Niettemin bewezen deze minder veilige cijfers dikwijls hun nut in omstandigheden waar de tijd om ze te breken de tactische waarde overschreed. Op deze pagina vindt u enkele methodes en technieken die het resultaat zijn van vele jaren evolutie in klassieke cryptografie. We zullen het hier niet hebben over de simpele cijfermethodes zoals Caesar Shift, ROT-13 of de vele variaties op Vigenére, welke gemakkelijk te breken zijn met niet meer dan een pen en wat papier. (zie klassieke cijfers voor meer info). We beperken ons hier tot de meer complexe cijfers die hun strepen verdienden tot in de twintigste eeuw. Sommige van de beschreven technieken kunnen nuttig zijn om uw eigen handcijfer te ontwikkelen. One-time Pad
De one-time pad encryptie is een speciaal type pen-en-papier cijfer en heeft zijn eigen pagina. Lees de one-time pad pagina voor meer informatie. Dubbele TranspositieDe Dubbele Transpositie of Dubbele Kolomtranspositie was één van de veiligste en populairste handcijfers tijden de Tweede Wereldoorlog. Het cijfer werd gebruikt door zowel de Geallieerden als de Asmogendheden en een regelmatige verandering van goed geselecteerde sleutels bood een goede weerstand tegen cryptanalytische aanvallen. Het was tevens eenvoudig in gebruik, hoewel langzaam bij langere berichten. Een nadeel is dat letterfrequentie analyse een normale letterdistributie toont, gelijkaardig aan klare tekst, wat transpositie verraad. Indien genoeg cijfertekst voorhanden is die met dezelfde sleutel werd vercijferd, kan een aanval met meervoudig anagramming succesvol zijn, hoewel zeer moeilijk. Een zeer effectieve manier om het anagramming tegen te gaan is de letters van de klare tekst eerst fractioneren (zie verder) De klare tekst om te vercijferen:
Een X mag gebruikt worden om woorden of zinnen te scheiden indien er anders onduidelijkheid zou kunnen ontstaan. De tekst wordt vervolledigd met X'en tot het totaal aantal letters een veelvoud is van 5 (spaties niet meerekenen). De sleutelwoorden: ALADIN en CONSPIRACY We kunnen nu onze eerste transpositie uitvoeren. Maak een raster met de breedte van het eerste sleutelwoord en schrijf het sleutelwoord in het raster. Onder het sleutelwoord schrijven we de volgorde van het aflezen van de klare tekst. Geef het volgnummer 1 aan de sleutelwoordletter die eerst voorkomt in het alfabet, de volgende 2, enzovoort. Indien twee identieke letter voorkomen in het sleutelwoord zal de meest linkse letter het laagst volgnummer krijgen. Schrijf de klare tekst in het raster, linksboven beginnend en rij per rij. Het eerste transpositieraster:
Vervolgens maken we een tweede raster met het tweede sleutelwoord. We geven de letter van het sleutelwoord opnieuw volgnummers volgens hun positie in het alfabet. We lezen nu de tekst in het eerste raster af per kolom in de volgorde van het eerste sleutelwoord. Schrijf de afgelezen letters in het tweede raster, ook hier linksboven beginnen en rij per rij. Het tweede transpositieraster:
De uiteindelijke cijfertekst wordt kolom per kolom afgelezen volgens de volgorde van het sleutelwoord. De uiteindelijke cijfertekst in groepen van vijf letters:
Om de Dubbele Transpositie te ontcijferen werken we in omgekeerde volgorde. Eerst maken we een raster met het tweede sleutelwoord en bepalen we de korte en lange kolommen (vanwege de lege plaatsen op het einde van het raster). De cijfertekst wordt kolom per kolom in het raster geschreven volgens de volgorde van het tweede sleutelwoord. Vervolgens maken we een raster voor het eerste sleutelwoord en bepalen ook hier de lange en korte kolommen. We lezen het raster van het tweede sleutelwoord rij per rij, en voeren de tekst kolom per kolom in het raster van het eerste sleutelwoord. Tenslotte lezen we de klare tekst rij per rij af. In werkelijkheid worden veel langere sleutelwoorden of zinnen gebruikt van 20 of meer letters om grote stukken tekst te vercijferen. Onderbroken Transpositie
De Onderbroken Transpositie is een verdere complicatie van de normale transpositie. In plaats van het raster rij per rij in te vullen wordt de tekst op zeer onregelmatige wijze in het raster geschreven door het gebruik van twee gebieden. Dit resulteert in een complexe transpositie van de letters. Eerst bepalen we het exacte aantal rijen en kolommen (vergeet niet aan te vullen met X'en om een laatste groep van vijf letters te bekomen). Vervolgens vullen we een rij met letters totdat we een bepaald getal tegen komen van het sleutelwoord. Als het eerste getal op de achtste positie staat vullen we de eerste rij in tot de achtste positie. We vervolgen op de volgende rij tot aan de tweede positie enzovoort. Als we aan het einde van de laatste positie komen vervolgen we met de resterende letters in de overblijvende lege plaatsen in te vullen. In ons voorbeeld is hete verschil tussen de twee gebieden zichtbaar door de grote en kleine letters. De klare tekst:
We gebruiken het sleutelwoord CONSPIRACY Links zien we het raster na het vullen de het eerste gebied en recht zien we hetzelfde raster volledig gevuld:
Eens het raster gevuld is lezen we het kolom per kolom af volgens de volgorde van het sleutelwoord, net als bij een gewone transpositie. Er zijn verschillende mogelijkheden van onderbroken transpositie. Zo is er de methode met grote driehoeken. Elk driehoekig gebied start bij de eerste sleutelwoordpositie en gaat met elke volgende rij één stap verder naar rechts. In onderstaand voorbeeld zien we twee driehoekige gebieden. Ook hier lezen we de kolommen af volgens de volgorde van het sleutelwoord. Zoals u merkt geeft deze methode een heel ander resultaat dan de normale transpositie.
Gewoonlijk is de onderbroken transpositie één van de twee transposities binnen een dubbele transpositie, waardoor deze sterker en complexer wordt. Een van de sterkste handcijfers tijdens de Tweede Wereldoorlog was ongetwijfeld Rasterschlüssel 44, een grille systeem, waarbij de tekstrijen onderbroken werden door zwarte vakken, gevolgd door een transpositie. Fractioneren
Op transpositie gebaseerde cijfers vertonen typische statistische informatie wanneer onderworpen aan letterfrequentie analyse. Het fractioneren of opbreken in verschillende delen van letters alvorens ze te transpositioneren verbeterd de veiligheid van een cijfer aanzienlijk. Een eenvoudige matrix kan letters fractioneren in een horizontaal en een verticaal coördinaat. Het Polybius vierkant is de eenvoudigste manier om fractionering op klare tekst te verrichten. Men kan ook een verhaspeld alfabet gebruiken. Het Polybius vierkant op zich is een zwak mono-alfabetisch substitutiecijfer. Fractionering biedt daarom geen cryptografische sterkte tenzij gecombineerd met andere technieken.
Het Russische Nihilist cijfer gebruikte een Polybius vierkant met dooreen gehaspeld alfabet, waarbij de in cijfers omgezette klaartekst letters werden opgeteld bij een vast aantal cijfers, verkregen uit een sleutelwoord van het vierkant. Het was dus eigenlijk een 'opgepimpte' Vigenère encryptie en daardoor eenvoudig te breken. Dus, goed idee om zulke fractionering te gebruiken, slecht idee om dit Nihilist cijfer niet te combineren met andere technieken. Fractioneer altijd de letters alvorens de tekst te transponeren, bij voorkeur een onregelmatige fractionering (straddling checkerboard), gevolgd door een dubbele of onderbroken dubbele transpositie. Het Straddling Checkerboard
Een belangrijke Russische verbetering aan de fractionering door het Nihilist cijfer is het Straddling Checkerboard, vrij vertaald het spreidend schaakbord. Letters in een normale coördinatenmatrix worden opgebroken in steeds gelijke delen. Het Checkerboard resulteert echter in een zeer onregelmatig patroon. Sommige letters worden voorgesteld door één cijfer, andere door twee cijfers. Door het toewijzen van ééncijferige waarden aan frequent gebruikte letters zal de resulterende cijfertekst kleiner zijn dan een normaal Nihilist cijfer. Bovendien maakt het onregelmatige patroon het ook veel moeilijker om de matrixcombinaties te vinden. Een mogelijke verdere complicatie is het gebruikt van een door elkaar gehaspeld alfabet. De combinatie van fractionering en transpositie bewees er veilig te zijn. Een goed voorbeeld van zo'n combinatie is het VIC Cijfer met dubbele onderbroken transpositie en straddling checkerboard, gebruikt door de Sovjet inlichtingendienst tijdens de Koude Oorlog. Een bericht, op deze wijze vercijferd, weerstond jarenlang alle cryptoanalyse door de codebrekers van het FBI, tot een Sovjetspion die het cijfer gebruikte over liep naar de Amerikanen. Een straddling checkerboard matrix, met de één-cijfer waarden geoptimaliseerd voor de Engelse taal:
De letters van de bovenste rij worden omgezet naar de ééncijferige waarden net erboven. Alle andere letters worden omgezet naar tweecijferige waarden door de rijhoofding en vervolgens de kolomhoofding te nemen. Om getallen om te zetten gebruiken we "FIG" net voor en na getallen, waarbij we de cijferen drie maal uitschrijven om vergissingen bij het verzenden of ontcijferen te vermijden. Laat ons een tekst omzetten met het checkerboard.
In groepen, vervolledigd met nullen:
Het is eenvoudig om de cijfers terug in letters om te zetten en de ééncijferige combinaties te onderscheiden van tweecijferige. Als een cijfercombinatie begint met het rijnummer 2 of 6 is het een tweecijferige code en volgt er dus nog een cijfer voor diezelfde letter. In alle andere gevallen is het een ééncijferige combinatie. Nogmaals, deze fractionering dient gebruikt te worden met ander vercijferingstechnieken zoals transpositie of one-time pad. Na converteren van de klare tekst in cijfers kunnen we gewoon de cijfers in plaats van letters transpositioneren. Natuurlijk kunnen we de volgorde van de letters of van de getallen wijzigen om de complexiteit te vergroten. Het Uitgebreide Straddling
Checkerboard
Het aantal ééncijferige combinaties bepaalt het aantal mogelijke rijen en dus het aantal verschillend karakters die mogelijk zijn. De CT-46 tabel is een voorbeeld van een uitgebreid Straddling Checkerboard. Het is geoptimaliseerd voor gebruik in verschillende talen. Andere variaties met verschillende karaktersets is mogelijk. Een andere versie is TAPIR, gebruikt door de voormalige Oost-Duitse inlichtingendienst en is geoptimaliseerd voor de Duitse taal met speciale karakters en lettercombinaties. De CT-46 tabel:
In de CT-46 tabel hebben alle frequent gebruikte letters in de bovenste rij één cijfer, genomen uit de kolommen (A=1, E=2, I=3 etc). Alle andere karakters zijn een combinatie van een rij-cijfer en een kolom-cijfer (B=70, C=71, W=86, 2=02 etc). Meer Fractionering
Het Polybius vierkant en de Checkerboard matrix verdelen elk afzonderlijk karakter in één of twee delen. Er zijn echter methodes om de letters in nog meer delen te versnipperen wat het nog moeilijker maakt voor de codebrekers om ze bijeen te puzzelen. Het Trifid cijfer werkt met drie matrices met negen karakters elk. Elk karakter wordt geconverteerd in drie cijfers: één voor de gebruikte matrix, één voor de rij en één voor de kolom. Natuurlijk kunnen we de drie matrices ook vullen met een dooreen gehaspeld alfabet. Het systeem is gemakkelijk uit te breiden. Met drie matrices van vier op vier ondersteunen we al 48 karakters. De Trifid fractionering:
De klare tekst vercijferd:
Zoals bij alle fractioneringen dient ook Trifid gecombineerd met andere technieken. Een cryptoanalist zou echter onmiddellijk zien dat de cijfertekst enkel de cijfers 1, 2 en 3 bevat en beseffen dat tenminste één van de onderdelen van de encryptie een Trifid cijfer is. Zonder transpositie zou hij de tekst in stukken per drie cijfers kunnen verdelen en elke combinatie kunnen behandelen als één karakter van een mono-alfabetische substitutie, wat eenvoudig te breken is. Er zijn echter manieren om de aanvaller te misleiden. We kunnen verschillende letters toewijzen aan de drie waarden en willekeurig een letter kiezen. We hebben dan een tabel nodig die zegt welke groep letters voor welk cijfer staan. We kunnen de aanvaller zelfs nog meer misleiden. Als we veelgebruikte letters zoals ETAOIN meer gebruiken dan andere letters creëren we de illusie dat het geen fractionerend cijfer is maar een eenvoudige substitutie, aangezien de letter frequentie analyse een vrijwel normale letterdistributie toont. Hierdoor beseft de aanvaller niet dat een letter niet één aparte letter is maar slechts één derde van een cijfercombinatie voorstelt. We geven de cijfers enkele letters. U kunt ook gebruik maken van een dooreen gehaspeld alfabet. Als u overweegt om uit te breiden naar drie matrices van vier op vier moet u er rekening mee houden dat het cijfer 4 binnen de cijfercombinaties minder frequent gebruikt wordt dan de andere cijfers (het eerste cijfer van de combinatie kan nooit een 4 zijn want er zijn maar drie matrices). In dat geval is het beter om een paar letters minder toe te wijzen aan het cijfer 4 om de oneven distributie te compenseren (minder letters voor een bepaald cijfer betekend dat dezelfde letters meer zullen gebruikt worden).
Het nieuwe resultaat van Trifid met willekeurige letters voor elk van de drie cijfers:
Om dit te ontcijferen kijken we gewoon welk cijfer is toegewezen aan een bepaalde letter en kunt u zo de cijfercombinatie terug samenstellen. Merk op dat een letter kan voorgesteld worden door veel verschillende combinaties van drie letters. In het voorbeeld zien we dat de letter E zowel in NAH als WYE werd omgezet. We zien ook dat de cijfertekst letter A één derde is van de klare letter Y, maar ook van E en T. Zelfs zonder combinatie met transpositie is het moeilijk te ontdekken dat Trifid werd gebruikt en letter frequentie analyse is nutteloos. Als combinatie kunnen we bijvoorbeeld een sleutelwoord gebruiken voor het door elkaar halen van het matrix alfabet en een sleutelwoord om na de Trifid omzetting een transpositie uit te voeren op de lettercombinaties. Een harde noot om te kraken. Laat ons nog een stap verder gaan. Vier matrices, elke een mini straddling checkerboard. Het onregelmatige resultaat is een combinatie van twee of drie cijfers, net zoals bij het staddling, maar nu zijn de letters verdeeld in twee of drie delen ip plats van één of twee delen. Dit betekent meer fractionering. Het eerste cijfer van een combinatie is het matrix nummer. Als de letter zich in de bovenste rij bevindt zal het een tweecijferige combinatie zijn. Is de letter in de onderste rij te vinden zal het een driecijferige combinatie zijn. In het voorbeeld gebruiken we een dooreen gehaspeld alfabet, eenvoudig te maken met een sleutelwoord (zie sectie over sleutelwoorden). De bovenste rij van de matrices bevat de 12 meest frequent gebruikte letters. Deze zijn E T A O I N S H R D L C (voor Engels). Zo'n matrices vullen met een dooreen gehaspeld alfabet is niet moeilijk. Markeer eerst de top 12 letters in het dooreen gehaspeld alfabet en vul deze letters in de bovenste rij in. Vervolgens vult u de overige letters in de onderste rij in. De combinatie 444 is om te wisselen tussen letters en cijfers.
Hier het alfabet, gebruikt voor de matrices:
En hier zien we het Quadfid Checkerboard, of hoe je het ook wil noemen want ik vond zonet die naam uit, in actie:
Ook hier kunnen we alvorens een bijkomende transpositie toe te passen de cijfers omzetting in letters, nu met de letters verdeeld over vier kolommen.
|
|
Het resultaat voor beide methodes, kolom per kolom afgelezen. Bemerk het verschillende resultaat:
|
Laat ons nu een alfabet creëren dat gemixt is met de twee sleutelwoorden INDIGO en ENTERPRISE. Eerst maken we een matrix met de breedte van het eerste sleutelwoord en gebruiken dit sleutelwoord als hoofding van de matrix. Vervolgens vullen we het tweede sleutelwoord in de matrix, ook hier elke letter één maal gebruiken. We kunnen de resterende letters ook weer achtereenvolgens of met spaties voor gebruikte letters aanvullen. Het uiteindelijke alfabet wordt kolom per kolom afgelezen, volgens de volgorde van het eerste sleutelwoord.
In onderstaand voorbeeld zien we hetzelfde dubbele sleutelwoord met de twee manieren om de matrix te vullen:
|
Het resultaat van beide manieren, kolom per kolom afgelezen:
|
Er zijn verschillende variaties mogelijk om de matrix te vullen. Men kan de letters spiraalsgewijs invullen van buiten naar binnen, met of tegen de klok in, van rechts naar links enzovoort. Uw verbeelding is de limiet. Deze dooreen gehaspelde alfabetten worden gebruikt om Polybius vierkanten of checkerboards te vullen, of om complexe transpositie reeksen te creëren.
Een eenvoudige manier om pseudo-willekeurige cijfers te genereren is de Lagged Fibonacci Generator. Deze methode wordt ook Chaining genoemd. Bemerk dat dit zeker geen cryptografisch veilige manier is om cijfers te genereren, aangezien de output van deze generator sterk afhangt van de initiële staat en grootte van de generator. De Chaining methode kan echter nuttig zijn als een super-encryptie of om een algoritme te individualiseren.
Om een Chaining uit te voeren tellen we het eerste en tweede cijfer bij elkaar op, modulo 10, en voegen het resultaat achteraan toe aan de reeks cijfers. Vervolgens tellen we het tweede en derde cijfer op enzovoort. Hoe groter de afstand tussen de initiële staat en de gegenereerde cijfers, hoe complexer de relatie is tussen de initiële staat en de gegenereerde cijfers. Modulo 10 betekend dat wanneer de uitkomst groter dan 9 is we er 10 aftrekken)
Voorbeeld van een 10 Lagged Fibonacci Generator (de eerste rij is de initialisatie):
|
We kunnen de grootte van de initiële staat wijzigen, de afstand tussen de twee cijfers die we optellen, of een andere modulo waarde gebruiken.
Deze generator kan gebruikt worden om de resistentie tegen cryptoanalyse te verbeteren bij methodes zoals transpositie. We weten dat een grote hoeveelheid cijfertekst met dezelfde sleutel gevoeliger is voor cryptoanalyse. We kunnen bij een transpositie de gebruikelijke sleutelwoorden gebruiken maar de uiteindelijke transpositie wijzigen per individuele ontvanger door het toevoegen van een serie cijfers. Dit kan het via het persoonlijk nummer van de ontvanger of een ander makkelijk te onthouden getal zijn. Hoewel alle gebruikers dezelfde sleutel hebben zal het eindresultaat verschillen en zullen er minder statistische gegevens zijn voor de aanvaller. Zelfs een schema met individuele berichtsleutels kan ontwikkeld worden.
Als voorbeeld chainen we het persoonlijk nummer 54826 totdat we 10 willekeurige getallen hebben en voegen we deze getallen toe aan een normale kolomhoofding van een transpositie matrix. Het resultaat is een totaal verschillende transpositie.
Het persoonlijk nummer 54826 gechained:
|
Een voorbeeld van een transpositie die beïnvloed is door het persoonlijk nummer (we gebruiken nooit de initiële staat zelf). De nieuwe transpositie-volgorde wordt genomen van de som van de originele transpositie en de gegenereerde cijfers. Een 1 is de eerste kolom, 2 de tweede, enzovoort. 0 wordt de laatste kolom. Bij meerdere identieke cijfers is de meest linkse het eerst aan de beurt.
|
Een geheim getal chainen kan nuttig zijn als super-encryptie. Super-encryptie is een bijkomende vercijfering bovenop de normale vercijfering. Deze werkwijze biedt bijkomende complexiteit en veiligheid. Men kan super-encryptie bijvoorbeeld gebruiken bij een one-time pad. Indien de sleutel gecompromitteerd is zal het voor de onderschepper niet mogelijk zijn om de cijfertekst te ontcijferen met het one-time pad. Het resultaat zouden totaal willekeurige letters lijken. Het chainen is dan gebruikt als bijkomende veiligheid naast de gebruikelijke fysieke veiligheid bij het gebruik van de one-time pads.
Laat ons een one-time pad nemen met eenvoudige conversie A=1 tot Z=26 waarbij de encryptie gebeurt door het pad af te trekken van de klare tekst. Er gebeurt tevens een super-encryptie met het persoonlijk nummer 54826.
Het persoonlijk nummer gechaind:
|
Een one-time pad super-encryptie met het gechainde nummer (aftrekken gebeurt zonder overdracht):
|
Een voorbeeld om het meervoudige aftrekken te verduidelijken zonder overdracht: 2 - 4 - 9 = 9 want 2 - 4 = 12 - 4 = 8 en 8 - 9 = 18 - 9 = 9
Om dit te ontcijferen genereren we de cijfers terug aan de hand van het persoonlijk nummer en tellen de cijfertekst en one-time pad sleutel erbij op zonder overdracht. Meer over one-time pad op op deze pagina.
Een interessante variatie op het Polybius vierkant is de Tap Code. Hiermee is de meest basale vorm van communicatie mogelijk. Waar andere eenvoudige communicatiemethodes zoals morse minstens een lichtstraal, elektrische stroom of geluid nodig hebben om zowel punten als strepen te verzenden heeft de Tap Code enkel pulsen nodig die op verschillende manieren kan verzonden worden, waarbij kloppen wel de allereenvoudigste. Let wel, gezien dit een eenvoudige substitutie is kan de Tap Code makkelijk gebroken worden. Daarom dienen we dit te zien als een methode van transmissie en niet als een methode van vercijfering.
Een eenvoudige Tap Code matrix:
|
Elke te verzenden code wordt gevormd door een combinatie van een rij en een kolom. Volgens de matrix is de letter M te converteren naar 32. Om de letter M te verzenden geven we dus drie kloppen, een kleine pauze en 2 kloppen. Neem een langere pauze tussen de letters. In het voorbeeld hieronder staat een X voor een klop met eender wat je bij de hand hebt, op eender welk oppervlak (gebruik niet je hoofd!). De Tap Code kan gebruikt worden als je duikboot vastzit op de bodem van de oceaan, als je vast zit onder een gebouw na een aardbeving, of om een medegevangene in een andere cel te vragen om de vijl door te geven als hij klaar is (een disclaimer kan hier wel nuttig zijn).
|
We kunnen een Tap Code matrix optimaliseren volgens de letter frequenties. Om het aantal kloppen te reduceren kunnen we de kortste combinaties toewijzen aan de meest gebruikte letters. De zes meest frequente letters vertegenwoordigen ongeveer 50 procent van normale tekst en hen korte combinaties toewijzen zal de transmissietijd aanzienlijk verkorten.
|
Een veilig handcijfer dient sleutelwoorden te gebruiken die gemakkelijk te onthouden zijn, is eenvoudig in uitvoering zonder kans op fouten en biedt een goede veiligheid. Het dient zo mogelijk substitutie, transpositie en fractionering te combineren. De gebruiker moet bepalen of hij de focus wil leggen op veiligheid, gebruiksgemak of snelheid. De encryptiemethodes zoals hierboven beschreven zijn de laatste en sterkste van voor het digitale tijdperk en kunnen een leidraad zijn voor het ontwikkelen van uw eigen algoritme. Vele combinaties, uitbreidingen en aanpassingen van bovenstaande technieken zijn mogelijk. Hoewel het breken van een goed ontworpen handcijfer complexe cryptanalytische technieken vereist zal het echter met moderne computerkracht zonder meer mogelijk zijn hen te breken via een brute-force aanval en aangepaste software (met uitzondering van one-time pad).
Niettegenstaande is er een grondige kennis nodig van cryptografie, en eventueel software design, om een degelijk handcijfer te breken. Indien het gaat om een onbekend algoritme kan het handcijfer zelfs alle cryptanalytische aanvallen weerstaan indien de aanvaller de aard van het algoritme niet kan bepalen. Zoals altijd is cryptografie een risicoanalyse, een balans tussen de moeite en kosten die de beveiliging u waart is, en de hoeveelheid moeite, tijd en kosten die de aanvaller bereid is te willen investeren in het breken. Tenslotte biedt moderne cryptografie ons natuurlijk sterkere en snellere software algoritmes, en handcijfers dienen dan ook aanzien te worden als een alternatief in geval van onbeschikbaarheid van computers of andere codeerapparaten, zij het een minder veilig alternatief.
© Dirk Rijmenants 2004. Last changes: 16
December 2022
Home |