Sinds onheuglijke tijden worden cijfers gebruikt om geheimen te bewaren. Een van de oudste cijfersystemen, informatie waarover de geschiedenis ons heeft gebracht, is dwalen. Het werd al in de 5e eeuw voor Christus door de oude Grieken gebruikt. In die tijd voerde Sparta, gesteund door Perzië, een oorlog tegen Athene. De Spartaanse generaal Lysander begon de Perzen te verdenken van een dubbelspel. Hij had dringend echte informatie nodig over hun bedoelingen. Op het meest kritieke moment arriveerde een bode slaaf uit het Perzische kamp met een officiële brief. Na het lezen van de brief eiste Lysander een riem van de boodschapper. Het blijkt dat op deze riem een trouwe vriend (nu zouden we zeggen "geheim agent") Lysandra een versleuteld bericht heeft geschreven. Op de riem van de boodschapper waren verschillende letters in wanorde geschreven, die geen woorden vormden. Bovendien werden de letters niet langs de taille geschreven, maar dwars. Lysander nam een houten cilinder met een bepaalde diameter (zwervend), wikkelde de gordel van de boodschapper er zo omheen dat de randen van de gordel dichtgingen, en de boodschap waarop hij wachtte werd op de gordel opgesteld langs de beschrijvende lijn van de cilinder. Het bleek dat de Perzen van plan waren om de Spartanen te treffen met een verrassende steek in de rug en Lysanders aanhangers doodden. Nadat hij dit bericht had ontvangen, landde Lysander onverwacht en in het geheim in de buurt van de locatie van de Perzische troepen en versloeg ze met een plotselinge slag. Dit is een van de eerste bekende gevallen in de geschiedenis waarin een cijferbericht een uiterst belangrijke rol speelde.
Het was een permutatiecijfer, waarvan de cijfertekst bestaat uit leesbare letters die zijn herschikt volgens een bepaalde, maar voor buitenstaanders niet bekende wet. Het cijfersysteem hier is de permutatie van letters, de acties zijn het opwinden van de riem rond het dwalen. De cijfersleutel is de diameter van de dwaling. Het is duidelijk dat de afzender en ontvanger van het bericht touwen van dezelfde diameter moeten hebben. Dit komt overeen met de regel dat de encryptiesleutel bekend moet zijn bij zowel de afzender als de ontvanger. Dwalen is het eenvoudigste type cijfer. Het is voldoende om verschillende omzwervingen van verschillende diameters op te pikken, en na het opwinden van de riem op een ervan, zou de platte tekst verschijnen. Dit versleutelingssysteem is in de oudheid ontsleuteld. De riem was conisch gewikkeld met een lichte tapsheid. Waar de diameter van de doorsnede van de conische skitala dicht bij de diameter ligt die gebruikt wordt voor encryptie, wordt het bericht gedeeltelijk gelezen, waarna de riem om de skitala met de vereiste diameter wordt gewikkeld.
Julius Caesar maakte veel gebruik van cijfers van een ander type (vervangende cijfers), die zelfs wordt beschouwd als de uitvinder van een van deze cijfers. Het idee van het Caesarcijfer was dat op papier (papyrus of perkament) twee alfabetten van de taal waarin het bericht zal worden geschreven onder elkaar worden geschreven. Het tweede alfabet wordt echter onder het eerste geschreven met een bepaalde (alleen bekend bij de afzender en ontvanger, shift). Voor het Caesarcijfer is deze verschuiving gelijk aan drie posities. In plaats van de corresponderende leesbare letter, die uit het eerste (bovenste) alfabet komt, wordt het onderste letterteken onder deze letter in het bericht geschreven (cijfertekst). Natuurlijk kan zo'n codesysteem nu gemakkelijk worden gebroken, zelfs door een leek, maar in die tijd werd het Caesar-cijfer als onbreekbaar beschouwd.
Een wat ingewikkelder cijfer werd uitgevonden door de oude Grieken. Ze schreven het alfabet uit in de vorm van een 5 x 5 tabel, gaven rijen en kolommen aan met symbolen (dat wil zeggen, ze nummerden ze) en schreven twee symbolen in plaats van een platte letter. Als deze karakters in een bericht als een enkel blok worden gegeven, dan is met korte berichten voor één specifieke tabel zo'n cipher zeer stabiel, zelfs volgens moderne concepten. Dit idee, dat ongeveer tweeduizend jaar oud is, werd tijdens de Eerste Wereldoorlog gebruikt in complexe cijfers.
De ineenstorting van het Romeinse rijk ging gepaard met het verval van cryptografie. De geschiedenis heeft geen belangrijke informatie bewaard over de ontwikkeling en toepassing van cryptografie in de vroege en middeleeuwen. En slechts duizend jaar later herleeft cryptografie in Europa. De zestiende eeuw in Italië is een eeuw van intriges, samenzwering en onrust. De clans Borgia en Medici strijden om politieke en financiële macht. In zo'n atmosfeer worden cijfers en codes van vitaal belang.
In 1518 publiceerde abt Trithemius, een benedictijner monnik die in Duitsland woonde, een boek in het Latijn genaamd Polygrafie. Het was het eerste boek over de kunst van cryptografie en werd al snel vertaald in het Frans en Duits.
In 1556 publiceerde de arts en wiskundige uit Milaan Girolamo Cardano een werk waarin hij het door hem uitgevonden encryptiesysteem beschrijft, dat de geschiedenis ingaat als het "Cardano-rooster". Het is een stuk hard karton met gaten die in willekeurige volgorde zijn uitgesneden. Het Cardano-rooster was de eerste toepassing van het permutatiecijfer.
Het werd zelfs in de tweede helft van de vorige eeuw als een absoluut sterk cijfer beschouwd, met een voldoende hoog niveau van ontwikkeling van de wiskunde. Zo ontwikkelen zich in de roman van Jules Verne "Mathias Sandor" dramatische gebeurtenissen rond een cijferbrief die met een duif is verzonden, maar per ongeluk in de handen van een politieke vijand viel. Om deze brief te lezen, ging hij als dienaar naar de schrijver van de brief om een cijferraster in zijn huis te vinden. In de roman heeft niemand het idee om te proberen een letter te decoderen zonder sleutel, alleen gebaseerd op kennis van het toegepaste cijfersysteem. Trouwens, de onderschepte brief leek op een tabel van 6 x 6 letters, wat een grove fout van de encryptor was. Als dezelfde letter in een string zonder spaties was geschreven en het totale aantal letters met behulp van de optelling niet 36 was, zou de decryptor nog steeds de hypothesen over het gebruikte encryptiesysteem moeten testen.
U kunt het aantal coderingsopties tellen dat wordt geboden door het Cardano-rooster van 6 x 6. het ontcijferen van zo'n rooster gedurende enkele tientallen miljoenen jaren! Cardano's uitvinding bleek uiterst vasthoudend te zijn. Op basis hiervan werd tijdens de Tweede Wereldoorlog een van de meest duurzame marinecijfers in Groot-Brittannië gemaakt.
Inmiddels zijn er echter methoden ontwikkeld die het onder bepaalde omstandigheden mogelijk maken om zo'n systeem snel genoeg te ontcijferen.
Het nadeel van dit rooster is de noodzaak om het rooster zelf betrouwbaar te verbergen voor vreemden. Hoewel het in sommige gevallen mogelijk is om de locatie van de slots en de volgorde van hun nummering te onthouden, leert de ervaring dat het geheugen van een persoon, vooral wanneer het systeem zelden wordt gebruikt, niet kan worden vertrouwd. In de roman "Matthias Sandor" had de overgang van het rooster in de handen van de vijand de meest tragische gevolgen voor de auteur van de brief en voor de hele revolutionaire organisatie waarvan hij lid was. Daarom kan in sommige gevallen de voorkeur worden gegeven aan minder sterke, maar eenvoudigere encryptiesystemen die gemakkelijk uit het geheugen kunnen worden hersteld.
Twee mensen konden met evenveel succes de titel 'vader van de moderne cryptografie' claimen. Het zijn de Italiaan Giovanni Battista Porta en de Fransman Blaise de Vigenère.
In 1565 publiceerde Giovanni Porta, een wiskundige uit Napels, een op substitutie gebaseerd cijfersysteem waarmee elk leesteken op elf verschillende manieren kon worden vervangen door een cijferletter. Hiervoor worden 11 cijferalfabetten genomen, elk van hen wordt geïdentificeerd door een paar letters die bepalen welk alfabet moet worden gebruikt om de leesbare letter te vervangen door een cijferalfabet. Als u Ports-gecodeerde alfabetten gebruikt, moet u niet alleen 11 alfabetten hebben, maar ook een sleutelwoord dat het corresponderende cijfer-alfabet bij elke coderingsstap definieert.
Giovanni Porta's tafel
Meestal is de cijfertekst in het bericht in één stuk geschreven. Op technische communicatielijnen wordt het meestal verzonden in de vorm van vijfcijferige groepen, van elkaar gescheiden door een spatie, tien groepen per lijn.
Het Ports-systeem heeft een zeer hoge duurzaamheid, vooral bij het willekeurig kiezen en schrijven van alfabetten, zelfs volgens moderne criteria. Maar het heeft ook nadelen: beide correspondenten moeten nogal omslachtige tafels hebben die voor nieuwsgierige blikken moeten worden weggehouden. Bovendien moet u het op de een of andere manier eens worden over een trefwoord, dat ook geheim moet zijn.
Deze problemen werden opgelost door diplomaat Vigenère. In Rome maakte hij kennis met de werken van Trithemius en Cardano, en in 1585 publiceerde hij zijn werk "A Treatise on Ciphers". Net als de Ports-methode is de Vigenère-methode gebaseerd op tabellen. Het belangrijkste voordeel van de Vigenere-methode is de eenvoud. Net als het Ports-systeem, vereist het Vigenère-systeem een sleutelwoord (of zin) voor codering, waarvan de letters bepalen met welk van de 26 cijferalfabetten elke specifieke letter van de leesbare tekst wordt gecodeerd. De sleuteltekstletter definieert de kolom, d.w.z. specifiek cijferalfabet. De letter van de cijfertekst zelf bevindt zich in de tabel die overeenkomt met de letter van de leesbare tekst. Het Vigenere-systeem gebruikt slechts 26 cijfervetten en is in sterkte inferieur aan het Ports-systeem. Maar de Vigenere-tabel is gemakkelijk te herstellen uit het geheugen vóór versleuteling en vervolgens te vernietigen. De stabiliteit van het systeem kan worden vergroot door het niet eens te worden over een sleutelwoord, maar over een lange sleutelzin, dan zal de periode van gebruik van cijferalfabeten veel moeilijker te bepalen zijn.
Vigenère-cijfer
Alle encryptiesystemen vóór de twintigste eeuw waren handmatig. Met een lage intensiteit van cijferuitwisseling was dit geen nadeel. Alles veranderde met de komst van de telegraaf en de radio. Met de toename van de intensiteit van de uitwisseling van gecodeerde berichten door technische communicatiemiddelen, is de toegang van onbevoegden tot de verzonden berichten veel gemakkelijker geworden. Vereisten voor de complexiteit van cijfers, de snelheid van encryptie (decryptie) van informatie zijn enorm toegenomen. Het werd noodzakelijk om dit werk te mechaniseren.
Na de Eerste Wereldoorlog begon de encryptie-business zich snel te ontwikkelen. Er worden nieuwe encryptiesystemen ontwikkeld, machines worden uitgevonden die het encryptie (decryptie) proces versnellen. De meest bekende was de mechanische codeermachine "Hagelin". Het bedrijf voor de productie van deze machines is opgericht door de Zweed Boris Hagelin en bestaat nog steeds. De Hagelin was compact, gemakkelijk te gebruiken en bood een hoge sterkte van het cijfer. Deze codeermachine implementeerde het vervangingsprincipe en het aantal gebruikte cijferalfabetten overschreed dat van het Ports-systeem, en de overgang van het ene cijferalfabet naar het andere werd op een pseudo-willekeurige manier uitgevoerd.
Auto Hagellin C-48
Technologisch maakte de werking van de machine gebruik van de werkingsprincipes van optelmachines en mechanische automatische machines. Later onderging deze machine verbeteringen, zowel wiskundig als mechanisch. Dit verhoogde de duurzaamheid en bruikbaarheid van het systeem aanzienlijk. Het systeem bleek zo succesvol dat tijdens de overgang naar computertechnologie de principes die in Hagelin waren vastgelegd elektronisch werden gemodelleerd.
Een andere optie voor de implementatie van het vervangende cijfer waren schijfmachines, die vanaf het begin elektromechanisch waren. Het belangrijkste versleutelingsapparaat in de auto was een set schijven (van 3 tot 6 stuks), gemonteerd op één as, maar niet star, en op zo'n manier dat de schijven onafhankelijk van elkaar rond de as konden draaien. De schijf had twee bases, gemaakt van bakeliet, waarin de contactpunten werden gedrukt volgens het aantal letters van het alfabet. In dit geval waren de contacten van de ene basis op willekeurige wijze inwendig elektrisch verbonden met de contacten van de andere basis in paren. De uitgangscontacten van elke schijf, behalve de laatste, zijn via vaste contactplaten verbonden met de ingangscontacten van de volgende schijf. Bovendien heeft elke schijf een flens met uitsteeksels en verdiepingen, die samen de aard van de stapbeweging van elke schijf bij elke versleutelingscyclus bepalen. Bij elke klokcyclus wordt de codering uitgevoerd door pulserende spanning via het ingangscontact van het schakelsysteem dat overeenkomt met de leesbare letter. Aan de uitgang van het schakelsysteem verschijnt de spanning op het contact, die overeenkomt met de huidige letter van de cijfertekst. Nadat één versleutelingscyclus is voltooid, worden de schijven onafhankelijk van elkaar in een of meerdere stappen geroteerd (in dit geval kunnen sommige schijven bij elke stap volledig inactief zijn). De bewegingswet wordt bepaald door de configuratie van de schijfflenzen en kan als pseudo-willekeurig worden beschouwd. Deze machines waren wijdverbreid en de ideeën erachter werden ook elektronisch gemodelleerd tijdens de komst van het elektronische computertijdperk. De sterkte van de cijfers die door dergelijke machines werden geproduceerd, was ook uitzonderlijk hoog.
Tijdens de Tweede Wereldoorlog werd de Enigma-schijfmachine gebruikt om Hitlers correspondentie met Rommel te versleutelen. Een van de voertuigen viel korte tijd in handen van de Britse inlichtingendienst. Nadat ze er een exacte kopie van hadden gemaakt, konden de Britten geheime correspondentie ontcijferen.
De volgende vraag is relevant: is het mogelijk om een absoluut sterk cijfer te creëren, d.w.z. een die zelfs theoretisch niet zou worden onthuld. De vader van de cybernetica, Norbert Wiener, betoogde: “Elk voldoende lang stuk cijfertekst kan altijd worden ontcijferd, op voorwaarde dat de tegenstander hier voldoende tijd voor heeft … Elk cijfer kan worden ontcijferd als er maar een dringende behoefte aan is en informatie die verondersteld wordt te worden verkregen, is de kosten waard. middelen van inspanning en tijd . Als we het hebben over een cijfer dat is gegenereerd in overeenstemming met een nauwkeurig en ondubbelzinnig gedefinieerd algoritme, hoe complex het ook is, dan is dit inderdaad het geval.
De Amerikaanse wiskundige en informatieverwerkingsspecialist Claude Shannon toonde echter aan dat er een absoluut sterk cijfer kon worden gecreëerd. Tegelijkertijd is er geen praktisch verschil tussen een absoluut sterke cipher en de zogenaamde praktische sterkte ciphers (geïmplementeerd met behulp van speciaal ontwikkelde complexe algoritmen). Een absoluut sterk cijfer moet als volgt worden gegenereerd en gebruikt:
- het cijfer wordt gegenereerd zonder een algoritme, maar op een volledig willekeurige manier (een munt gooien, een kaart willekeurig openen van een goed gemengd kaartspel, een reeks willekeurige getallen genereren door een willekeurige nummergenerator op een ruisdiode, enz..);
- de lengte van de cijfertekst mag niet groter zijn dan de lengte van de gegenereerde cijfertekst, d.w.z. één cijferteken wordt gebruikt om één teken van de leesbare tekst te versleutelen.
Uiteraard moet in dit geval aan alle voorwaarden voor een correcte omgang met ciphers zijn voldaan en vooral mag de tekst niet opnieuw worden versleuteld met een cipher die al een keer is gebruikt.
Absoluut sterke cijfers worden gebruikt in gevallen waarin de absolute onmogelijkheid van decodering door de vijand van de correspondentie moet worden gegarandeerd. Dergelijke cijfers worden met name gebruikt door illegale agenten die op vijandelijk gebied opereren en cijfernotities gebruiken. Het notitieboek bestaat uit pagina's met kolommen met getallen, willekeurig gekozen en een blokcijfer genoemd.
De coderingsmethoden zijn verschillend, maar een van de eenvoudigste is de volgende. De letters van het alfabet zijn genummerd met tweecijferige nummers A - 01, B - 02 … Z - 32. Dan ziet het bericht "Ready to meet" er als volgt uit:
platte tekst - READY TO MEET;
open digitale tekst - 0415191503 11 03181917062406;
blokcijfer - 1123583145 94 37074189752975;
cijfertekst - 1538674646 05 30155096714371.
In dit geval wordt de cijfertekst verkregen door de numerieke optelling van de gewone digitale tekst en de blokcijfer modulo 10 (d.w.z. de eventuele overdrachtseenheid wordt niet in aanmerking genomen). De cijfertekst die bedoeld is voor verzending via technische communicatiemiddelen heeft de vorm van vijfcijferige groepen, in dit geval zou het er als volgt uit moeten zien: 15386 74648 05301 5509671437 16389 (de laatste 4 cijfers worden willekeurig toegevoegd en worden niet in aanmerking genomen). Uiteraard is het noodzakelijk om de ontvanger mee te delen welke pagina van het cipher notebook wordt gebruikt. Dit gebeurt op een vooraf bepaalde plaats in platte tekst (in cijfers). Na versleuteling wordt de gebruikte cipherpad-pagina uitgescheurd en vernietigd. Bij het ontcijferen van het ontvangen cryptogram moet hetzelfde cijfer modulo 10 van de cijfertekst worden afgetrokken. Natuurlijk moet zo'n notitieboekje heel goed en in het geheim worden bewaard, omdat het feit dat het aanwezig is, als het bekend wordt bij de vijand, het falen van de agent betekent.
De komst van elektronische computerapparatuur, met name personal computers, markeerde een nieuw tijdperk in de ontwikkeling van cryptografie. Onder de vele voordelen van computerachtige apparaten kunnen de volgende worden opgemerkt:
a) uitzonderlijk hoge snelheid van informatieverwerking, b) de mogelijkheid om snel een eerder voorbereide tekst in te voeren en te coderen, c) de mogelijkheid om complexe en extreem sterke coderingsalgoritmen te gebruiken, d) goede compatibiliteit met moderne communicatiefaciliteiten, e) snelle visualisatie van tekst met de mogelijkheid om deze snel af te drukken of te wissen, f) de mogelijkheid om op één computer verschillende coderingsprogramma's te hebben die de toegang ertoe blokkeren
onbevoegden die een wachtwoordsysteem of interne cryptobeveiliging gebruiken, g) de universaliteit van het versleutelde materiaal (d.w.z. onder bepaalde voorwaarden kan een computerversleutelingsalgoritme niet alleen alfanumerieke informatie versleutelen, maar ook telefoongesprekken, fotografische documenten en videomateriaal).
Er moet echter worden opgemerkt dat bij het organiseren van de bescherming van informatie tijdens de ontwikkeling, opslag, verzending en verwerking ervan een systematische aanpak moet worden gevolgd. Er zijn veel mogelijke manieren om informatie te lekken, en zelfs goede cryptobescherming garandeert de veiligheid ervan niet, tenzij andere maatregelen worden genomen om het te beschermen.
Referenties:
Adamenko M. Grondslagen van de klassieke cryptologie. Geheimen van cijfers en codes. M.: DMK-pers, 2012. S. 67-69, 143, 233-236.
Simon S. Het boek der cijfers. M.: Avanta +, 2009. S. 18-19, 67, 103, 328-329, 361, 425.