Bokchiffer

Den aktuella versionen av sidan har ännu inte granskats av erfarna bidragsgivare och kan skilja sig väsentligt från versionen som granskades den 25 november 2017; kontroller kräver 20 redigeringar .

Ett bokchiffer  är en typ av chiffer där varje vanlig textelement (varje bokstav eller ord) ersätts av en pekare (till exempel sida, rad och kolumnnummer) av ett liknande element i en extra nyckeltext.

För dekryptering måste du ha både den privata texten och en extra nyckeltext. Som tilläggstext användes ofta vanliga böcker, eller böcker som både avsändaren och adressaten med största sannolikhet hade [1] .

Skapande historia

Hittills har forskare och historiker ingen tydlig information om när och av vem bokchiffret först användes. Ett av de tidigaste exemplen på detta chiffer är känt som Aeneas bokchiffer , som refererar till steganografi . Det är möjligt att detta första försök att använda handskriven text för kryptering var början på skapandet av ett bokchiffer [2] .

Dessutom kan man inte undgå att lägga märke till likheten mellan användningen av ett bokchiffer och kryptering med hjälp av Polybius-torget . Dessutom är bokchiffret en av metoderna som Polybius föreslagit , endast avsevärt förbättrad. I Polybius-rutan tilldelas varje bokstav två siffror, och för samma bokstäver kommer siffrorna också att vara identiska. Fördelen med ett bokchiffer är att varje bokstav i källtexten kommer att ha sin egen identifierare. Men om till exempel en sida i en bok är uppdelad i ett stort antal olika kvadrater av Polybius, kommer krypteringssystemen att vara desamma.

Senare, 1849, arbetade Meissner i Braunschweig med studien och förbättringen av bokchifferet , och mer nyligen Voltaire i Winterthur . I Sovjetunionen användes bokchifferet flitigt och undersöktes av det bolsjevikiska partiet RSDLP(b) . Skapandet av flera av dess modifieringar tillskrivs den berömda bolsjeviken Elena Dmitrievna Stasova .

Praktisk implementering och varianter av algoritmer

Kryptering med en dikt

Kärnan i bokchiffermetoden är valet av vilken text som helst från en bok, där antalet ord som börjar med en viss bokstav eller koordinaterna (linje, nummer på en rad) för bokstäverna själva fungerar som ett chiffer av det ursprungliga meddelandet . I detta fall kan flera tecken motsvara en första bokstav [3] .

Som ett exempel på praktiskt genomförande, låt oss vända oss till memoarerna från den berömde socialdemokraten Viktor Katin-Yartsev, som ledde St. Petersburgs "Kampens Union" [4] .

Låt oss sätta nyckeln till chiffret kommer att vara ett utdrag ur en dikt av A. S. Pushkin : "zigenare" .

Det är nödvändigt att kryptera ordet: "Gymnasium". Den första bokstaven i ordet är "G", vi betecknar den 4/4, där täljaren är strängen, nämnaren är ordningen på bokstäverna i denna sträng. Det rekommenderades att införa mer variation genom att låna ett brev från olika ställen i nyckeln, för att göra det svårt för externa experter att tyda vad som skrevs. Då blir chiffret för ordet "Gymnasium" följande text: "4/4, 7/3, 7/19, 4/9, 2/4, 1/14, 3/8, 1/11".

Eller binärt: 0010000100, 0011100011, 0011110011, 0010001001, 0001000100, 0000101110, 0001101000, 0001010.

I ett poetiskt chiffer är nyckeln en förutbestämd dikt, som är skriven i en rektangel av en överenskommen storlek. Denna rektangel är nyckelsidan i bokchifferet.

Trots att kryptering direkt med nyckelboken är lätt att använda, har denna metod betydande nackdelar. Om kryptering inte görs noggrant, kan till exempel upprepade numeriska sekvenser göra det lättare för en angripare att dekryptera texten. Det väcker också frågan om att använda mellanslag eller specifika beteckningar som inte bara kan förenkla uppgiften att hacka, utan också göra processen att läsa meddelandet problematisk för mottagaren direkt.

I detta avseende kommer vi att överväga flera mer avancerade varianter av denna krypteringsmetod.

Andra världskrigets bokchiffer [5]

Huvudkomponenten i denna metod var de så kallade rasterna, fyrkantiga ark med ett visst antal hål. Tecknen och raderna som finns på båda sidor av rasterbladet kallades "nyckelrubriker", med hjälp av vilka meddelandet krypterades, liksom dess efterföljande dekryptering. För att bestämma den initiala platsen för meddelandet i den centrala delen av rastret användes gruppindikatorer, som var placerade på förberedda platser.

Minsta storlek på det överförda meddelandet skulle vara minst 35 tecken, maximalt - högst 115.

Budskapet måste vara kort och tydligt, användningen av stereotypa fraser och upprepningar var förbjuden. Det var tillåtet att använda förkortningar, dock inte kortare än tre tecken, med undantag för ordet "Kilometer", som ersattes med "KM".

Grupper med fem chiffertexttecken skrevs på raderna 1 till 24. Mellanrummet i det övre högra hörnet användes för att identifiera avsändaren av meddelandet. Varje rad och kolumn på rasterbladet måste innehålla exakt 3 hål. Placeringen av hålen måste uppfylla följande villkor:

  1. Det vänstra hålet måste vara inom 14-19 kolumner, det mellersta inom 15-25 och det högra inom 21-26.
  2. Hålen måste fördelas på ett sådant sätt att varje kolumn endast innehöll 1 hål innan det andra dök upp i det.

Ett alfabet med 26 tecken användes för att identifiera varje fält i rastret. Å ena sidan var kolumnerna numrerade från 1 till 13 och å andra sidan från 14 till 26. Med början från den 1:a kolumnen spelades vissa teckensekvenser in i 2:a och 3:e raden, dessa sekvenser tillsammans med de numeriska. , var "nyckelrubriker".

Låt oss nu överväga en av huvudkomponenterna i denna krypteringsmetod - "nyckelhuvudet", med hjälp av vilken ytterligare kryptering och dekryptering av meddelandet kommer att utföras.

Låt nyckeln i detta fall vara följande uppsättning tecken: " fsgjhcvmxzqrt ", det är viktigt att dess längd inte överstiger 13 tecken. I enlighet med reglerna skrivs denna nyckel in på den andra raden, direkt under den numeriska sekvensen 1-13. Konstruktionen av en numerisk sekvens för vidare arbete utförs enligt följande:

  1. Nyckelns bokstäver är numrerade i alfabetisk ordning, det vill säga vi måste tilldela siffran 3 till bokstaven "c", men eftersom det kommer först av alla bokstäverna i alfabetet i denna sekvens, tilldelar vi siffran 1 till det, f till siffran 2 osv.
  2. Sedan skrivs den resulterande numeriska sekvensen i den fjärde kolumnen.

Vi skriver på den fjärde raden, under sekvensen 14-26, den resulterande numeriska sekvensen, och i den tredje - sekvensen, som bildas enligt följande: numret 1 tilldelas symbolen a, eftersom det kommer först i alfabetet har valt, 2 - b, 3- c etc. Efter allt detta tar vi bort nyckeln från den andra raden.

Den resulterande uppsättningen av numeriska och teckensekvenser kallas "nyckelrubriken".

Efter att ha bekantat oss med den teoretiska delen av metoden, låt oss gå vidare till den praktiska och illustrera hur detta chiffer fungerar med hjälp av följande exempel.

Låt oss säga att vi vill kryptera meddelandet "En blidkare är en som matar en krokodil i hopp om att den ska äta upp honom sist"

Låt oss till att börja med fylla i "nyckelrubriker" Till att börja med arbetar vi med kolumner under sekvensen 1-13. I den andra kolumnen skriver vi teckensekvensen: " uytetjgshdbvx ", i den tredje kolumnen: " bicedakflmghj ", och i den fjärde kolumnen skriver vi den numeriska sekvensen som vi fick tidigare, det vill säga " 2 9 3 5 4 1 11 6 12 13 7 8 10". Nu med raderna under sekvensen 14 - 26 kommer vi att göra detsamma, men med sekvenserna "mgdhacnbvzxl I", "bicedakflmghj" och "2 9 3 5 4 1 11 6 12 13 7 8 10". raster, som börjar med en godtyckligt fritt fält.

Efter det, i enlighet med den övre numeriska sekvensen, skriver vi ren text kolumn för kolumn till höger sida av rastret. Till exempel motsvarar siffran 1 i den översta raden kolumnen med tecken " aoahl ", vi skriver det först på rad 1 till höger, etc. Vi lämnar den femte raden fri, eftersom det kommer att vara indikatorgruppen i början av meddelandet, som är format enligt följande: de första 2 tecknen tas från den andra och tredje kolumnen i den vänstra delen av rastret (från raden där meddelandet börjar, i detta exempel från det sjunde), väljs det tredje tecknet godtyckligt kommer det fjärde och femte tecknet från den andra och tredje raden i den övre delen av rastret (17:e kolumnen).

För att dekryptera meddelandet var det nödvändigt att bara känna till nyckeln, i vårt fall är det sekvensen av tecken "fsgjhcvmxzqrt" och indikatorgruppen, för att veta från vilket fält i rastret meddelandet börjar. Sedan, genom att göra alla steg i omvänd ordning, får vi det ursprungliga meddelandet.

Den moderna versionen av bokchifferet

Överväg nu en modernare version av denna krypteringsmetod, som utvecklades 2010 [6] .

Tidigare betraktade vi detta chiffer endast ur krypteringsynpunkt baserat på alla böcker, teckensekvenser etc., men nu, med uppfinningen av ett stort antal elektroniska enheter, kommer vi att försöka titta på denna krypteringsmetod från andra sidan.

Om du tittar närmare på filerna som vi använder på datorer, oavsett om de är musik, foton, dokument eller videor, har de alla en liknande struktur, de representeras alla som bitar, 0 eller 1. Om vi ​​betraktar en dator som ett arkiv av denna typ av fil, varför inte använda den som en "nyckelbok" för att kryptera meddelanden.

Låt oss ta en närmare titt på idén med denna algoritm.

Nyckeln i detta fall kommer att vara en uppsättning vanliga datorfiler: (Fil 1, Fil 2 ,..., Fil N).

Det första steget är att välja talet k: k∈N, k≥1.

Därefter konverterar vi källtexten till en binär sekvens och delar upp den i s delar, där varje del har en längd på k bitar. Om längden på den sista delen är mindre än k, fyller vi den med nollor.

Efter de två första stegen är vår text en uppsättning som består av s delar, låt oss beteckna den med D: D = (D1…Ds).

Låt oss göra de föregående stegen, men inte med vanlig text, utan med en uppsättning filer som vi valde i början som nyckel: (Fil 1, Fil 2 ... Fil N).

Vi representerar varje fil som en bitsekvens, som vi sedan delar upp i delar, längden på varje del är k bitar, om mindre så fyller vi resten med nollor.

Efter att ha gjort den här operationen med alla filer får vi en uppsättning block och tilldelar en adress till var och en av dem. Adressen kommer att bestå av numret på filen från vilken detta block tas emot och numret på själva blocket från uppsättningen av alla block som utgör denna fil.

Efter det ersätter vi varje del av Di, där i ∈(1 ... s) med en godtyckligt vald blockadress, som ett resultat av vilket vi får att den ursprungliga klartexten har förvandlats till en uppsättning slumpmässiga adresser : (adress 1 ... adress s).

För att dekryptera den resulterande texten behöver vi samma nyckel som vi använde för att kryptera den vanliga texten, det vill säga en uppsättning (fil 1, fil 2 ... fil N) och själva det krypterade testet.

För varje adress hittar vi filen som motsvarar den genom fil- och blocknummer som adressen innehåller.

Därefter ersätter vi varje chiffertextadress med motsvarande element D från uppsättningen (D1… Ds) och konverterar den till den ursprungliga klartexten.

Applikationshistorik

ett 2 3 fyra 5 6 7 åtta 9 tio
ett H P O W E L OCH E R
2 H E B O E L b H Och Till
3 H E E FRÅN E L MEN jag D
fyra E Y FRÅN MEN D Och FRÅN b Till O
5 H O G Och B O FRÅN S G R
6 Och E D MEN P R Och Till R
7 H E FRÅN T S D Och FRÅN jag H
åtta E T O M H O G Och X FRÅN
9 Och OCH jag Till O T O
tio T MEN Till H Och T b FRÅN jag
Om texten började med ordet "Rapportera", kan den enligt en sådan tabell krypteras på flera sätt: "4/3, 5/2, 8/6, 2/3, 1/5, 7/7, 10/1, 6 /2…” eller “10/9, 1/4, 8/3, 5/5, 1/5, 8/8, 9/9, 6/2…”, etc. Täljaren för varje bråkdel är radnumret och nämnaren är kolumnnumret. Eftersom tabellen inte innehåller bokstaven "Ш" används istället bokstaven "Ш", men detta stör inte dekrypteringen av meddelandet. Ett av revolutionärernas misstag var emellertid den frekventa användningen av verk av de författare av demokraterna som var kända av polisen. Detta gjorde det mycket lättare att dechiffrera de hemligstämplade meddelandena, eftersom själva idén om kryptering var känd för polisen. Skydd gavs endast när nyckeln var en "hemlig dikt". Ett annat misstag som underlättar dekryptering var den frekventa användningen av standardord och uttryck: "Informera ...", "Jag skickar dig ...", "utseende", "adress" och så vidare. Den frekventa användningen av samma nyckeldikt gjorde också meddelandena lättare att läsa för polisen, som utnyttjade dessa fel effektivt.
  1. I oktober 1901 begärde Nadezhda Krupskaya , genom sin agent Concordia Zakharova, att en biografi om Spinoza skulle skickas till München som en nyckelbok:

"Kommunicera med Nikolaev...Key: A Biography of Spinoza , s. 60".

.

  1. I januari 1902 valdes biografin om Leo Tolstoj som ett chiffer av Kharkov-kommittén för RSDLP .
  2. Sommaren 1902 vänder sig RSDLP åter till Spinozas biografi:

”I allmänhet vill kommittén upprätta ordentliga relationer, de gamla kopplingarna har gått förlorade ... Chifferet föreslår att kommittén med en citron på Spinoza, en biografisk upplaga av Pavlenkov, anger sidan med ett nummer och sedan med en bråkdel: täljaren anger linjen ovanifrån, nämnaren - bokstaven från vänster sida "

Säkerhet

En märkbar fördel med bokchifferet är frånvaron av problem i samband med förberedelse och överföring av den hemliga nyckeln, eftersom kodtexten finns i flera exemplar samtidigt. Men detta chiffer, liksom andra, är föremål för alla vanliga metoder för kryptoanalys. Och dessa verktyg tillåter kryptoanalytikern att gissa kodorden med en sannolikhet som inte är noll, och ibland helt bryta koden genom att avslöja nyckeltexten. Att avslöja kodtexten är dock inte det enda sättet att bryta bokchifferet. Bokchifferet är fortfarande mottagligt för frekventa kryptoanalysmetoder, eftersom ofta samma sidor i en bok används för kryptering, och ofta samma ord på dessa sidor. Så till exempel kunde William Friedman och hans fru Elizabeth Friedman bryta bokchifferet utan en bok, eftersom korrespondenter ibland använde samma sida och radbeteckning för samma bokstav flera gånger. Familjen Friedman lyckades läsa korrespondensen från indiska nationalister som glorifierade underrättelseinformation med hjälp av ett bokchiffer baserat på en gammal tysk-engelsk ordbok. Vid tiden för rättegången lyckades de få det sista beviset - själva ordboken [10] .

Om chifferet används mer noggrant, kommer dess tillförlitlighet att öka markant, eftersom det kommer att fungera som ett homofoniskt chiffer med ett extremt stort antal ekvivalenter. Detta kommer dock att ordnas till priset av en mycket stor chiffertextexpansion.

I litteratur

I Arthur Conan Doyles deckare The Valley of Terror får huvudpersonen Sherlock Holmes ett meddelande på posten krypterat med ett bokchiffer , men har dock ingen information om vilken nyckelbok som används. Han knäcker chiffret och gissar framgångsrikt att boken var Whitakers populära almanacka

Utbildningen av officerarna i den österrikisk-ungerska armén att använda bokchifferet i Yaroslav Haseks Adventures of the Good Soldier Schweik är extremt parodisk - alla officerare sitter och läser 161 sidor av boken "Sins of the Fathers", trots det faktum att denna sida finns i kryptografiboken. Dessutom kom den ödesdigra Schweik med fel volym. I slutändan kommer officerarna till den "tröstande" slutsatsen att det inte kommer att finnas tid för chiffer i kriget [11] .

Hjälten i Graham Greenes roman Vår man i Havanna , den ödmjuke dammsugarförsäljaren Wormald, använder ett bokchiffer i början av sin parodiska spionagekarriär. Hans närmaste vän, Dr Hasselbacher, märker omedelbart utseendet på en ny bok: Shakespeare for Youth, och läser utan större svårighet de falska rapporterna, till och med med samma exemplar av boken. Green, själv en före detta underrättelseagent, visar bokchiffrets opålitlighet.

Ken Follets bok Nyckeln till Rebecca berättar om en tysk spion i Kairo som använde Daphne du Mauriers roman Rebecca som grund för ett chiffer.

I The Presumption of Death använder Lord Peter Wimsey , på uppdrag för brittisk underrättelsetjänst i det nazistiskt ockuperade Europa i det stora fosterländska kriget, ett chiffer baserat på John Donnes skrifter . Tyskarna, som misstänker att underrättelsetjänsten kommer att välja klassiska verk av engelsk litteratur för kryptering, sållar systematiskt igenom sådana verk tills de hittar det rätta, vilket praktiskt taget leder till tillfångatagandet av spioner. Wimsey skapar sedan ett nytt chiffer baserat på en opublicerad text som bara han själv och hans fru känner till.

Anteckningar

  1. A.V. Babash, G.P. Shankin "History of cryptography. Del I. M .: Helios, 2002 ";
  2. Y. Volkova: "Kryptografins historia";
  3. V. V. Yashchenko: "Introduktion till kryptografi" ;.
  4. 1 2 A. V. Sinelnikov: "Rysslands chiffer och revolutionärer";
  5. Michael van der Meulen "Wehrmachts bokchiffersystem"
  6. Changda Wang, Shiguang Ju "En ny metod för att implementera bokchiffer"
  7. Nihilistchifferet och dess utveckling arkiverat 4 mars 2016 på Wayback Machine ;
  8. A. V. Sinelnikov: "Cifer och revolutionärer i Ryssland. Del 2";.
  9. Albert C. Leighton, Stephen M. Matyas "Sökandet efter nyckelboken till Nicholas Trists bokchiffer"
  10. The Friedman Legacy: A Tribute to William and Elizebeth Friedman på NSA:s plats, s.197-198 Arkiverad 27 maj 2010 på Wayback Machine ;
  11. J. Hasek "Den gode soldaten Schweiks äventyr (del 3, kapitel 1)" .

Litteratur