Кіріспе

Криптографияда роторлы машина – хабарларды шифрлау және дешифрлеу үшін қолданылатын электромеханикалық ағынды шифрлеу құрылғысы. Роторлы машиналар 20 ғасырдың көп бөлігінде криптографиялық жаңалықтардың ең жетілген деңгейін білдірді; олар 1920-1970 жылдары кеңінен қолданылды. Ең белгілі мысалы – неміс Энигма машинасы, оның нәтижесі Екінші дүниежүзілік соғыс кезінде одақтастар тарапынан дешифрленді, нәтижесінде "Ультра" деп аталған барлау ақпараты алынды.

Сипаттама

Роторлы машинаның негізгі құралы – екі жағында электрлік контактілер жиынтығы бар айналмалы дискілер, яғни дөңгелектер немесе барабандар деп аталатын роторлар жиынтығы. Контактілер арасындағы сымдар әріптердің белгілі бір ретте алмасуын қамтамасыз етеді, оларды күрделі жолмен ауыстырады. Өзінен-өзі бұл аз қорғаныс ұсынады; алайда, әрбір әріпті шифрлау алдында немесе кейін роторлар өз орнын ауыстырып, алмасуды өзгертеді. Осы арқылы роторлы машина әрбір перне басылғанда өзгеретін күрделі полиалфавиттік алмастыру шифрын жасап шығарады.

Өмірбаян

Классикалық криптографияда шифрлаудың ең алғашқы әдістерінің бірі – қарапайым алмастыру шифры, онда хабардағы әріптер құпия схема қолданылып жүйелі түрде ауыстырылды. Моноалфавиттік алмастыру шифрлары тек бір алмастыру схемасын ғана пайдаланды, кейде «әліпбе» деп аталады; оны, мысалы, жиілік талдау арқылы оңай бұзуға болады. Біршама қауіпсіз болған бірнеше алфавит қолданатын полиалфавиттік шифрлар да болды. Мұндай жүйелер қолмен жасалатындықтан, тек бірнеше түрлі әліпби ғана қолданылуы мүмкін еді; одан күрделісі практикалық емес болар еді. Алайда, аз ғана алфавит қолданып, шифрлар шабуылға ұшырауға жағдай тудыратын. Роторлы машиналардың өнертабысы көп алфавитті шифрлауды механикаландырып, көптеген алфавиттерді пайдаланудың практикалық жолын қамтамасыз етті. Ең алғашқы криптоаналитикалық әдіс – жиілік талдау, онда әр тілге тән әріп үлгілері моноалфавиттік алмастыру шифрында қолданылатын алмастыру әліпбиі туралы ақпаратты табу үшін пайдаланылуы мүмкін. Мысалы, ағылшын тілінде E, T, A, O, I, N және S әріптерін шифрлық мәтінде анықтау оңай, себебі олар өте жиі кездеседі, олардың сәйкес шифрлық мәтін әріптері де жиі кездеседі. Сонымен қатар, NG, ST және басқалар сияқты биграммалар да жиі кездеседі, ал басқалары өте сирек кездеседі (мысалы, U-дан басқа кез келген әріппен жалғастырылған Q). Ең қарапайым жиілік талдауы шифрдағы жай мәтіннің әрпіне әрқашан бір шифрланған мәтіннің әрпін ауыстыруға негізделген: егер бұл жағдай болмаса, хабарламаны шешу қиынырақ болады. Көптеген жылдар бойы криптографтар жиі кездесетін әріптерді бірнеше түрлі алмастыру арқылы айқын жиіліктің көрінуін жасыруға тырысты, бірақ бұл әдіс жай мәтін әріптерін алмастырудағы үлгілерді толыққанды жасыра алмады. Мұндай схемалар 16 ғасырда кеңінен бұзылып жатты. 15 ғасырдың ортасында Альберти жаңа техниканы ойлап тапты, ол қазір полиалфавиттік шифрлар деп аталады, ол бір алмастыру әліпбиінен гөрі көптерін пайдаланудың тиімділігін мойындады; ол сондай-ақ хабарламада пайдалану үшін көптеген алмастыру үлгілерін «жасау» үшін қарапайым әдіс ойлап тапты. Екі тарап кішкентай көлемде ақпарат алмасты (ол кілт деп аталады) және оны көптеген алмастыру әліпбиін жасау үшін пайдаланды, соның салдарынан жай мәтіннің әр әрпі үшін көптеген түрлі алмастырулар қолданылды. Бұл идея қарапайым және тиімді болғанымен, күткеннен де қиын пайдаланылатын болып шықты. Көптеген шифрлар Альбертидің әдісін толыққанды жүзеге асырмады, сондықтан оларды бұзу оңай болды (мысалы, Виженер шифры). 1840 жылдарға дейін (Баббидж) полиалфавиттік шифрлардың кез келгенін сенімді түрде бұза алатын ешқандай техника белгілі болған жоқ. Оның әдісі шифрлық мәтіннің қайталанатын үлгілерін де іздеді, олар кілттің ұзындығы туралы ақпарат береді. Бұл мәлімет белгілі болғаннан кейін, хабарлама, негізінен, кілттің ұзындығындай болатын хабарламалардың сериясына айналады, оларға қалыпты жиілік талдауын қолдануға болады. Чарльз Бэббидж, Фридрих Касиски және Уильям Фридман осы техникаларды дамытуға ең көп үлес қосушылардың қатарында болды. Шифрлаушылар пайдаланушыларды әр әріп үшін әртүрлі алмастыруды қолдануға тырысты, бірақ бұл әдетте өте ұзын кілтті білдірді, бұл бірнеше мәселе тудырды. Ұзын кілтті қажетті тараптарға (қауіпсіз) жеткізу үшін көбірек уақыт қажет, сондықтан кілтті тарату кезінде қателер жиі болады. Сонымен қатар, көптеген пайдаланушылардың ұзақ, әріптік кемелдікті сақтауға шыдамдылығы жоқ, әсіресе уақыт қысымында немесе майдан жағдайында. Мұндай типтегі «соңғы» шифр мұндай «ұзын» кілтті қарапайым үлгіден (мүмкіндігінше автоматты түрде) жасауға болатын шифр болар еді, онда жиілікті санау және статистикалық шабуылдар тиімсіз боларлықтай көптеген алмастыру әліпбилері болар еді. Энигма және жалпы роторлы машиналар осы қажеттілікке жауап берді, себебі олар өте көп әріпті, жай мәтіннің әр әрпі үшін әртүрлі алмастыру әліпбиін пайдаланды және автоматты болды, пайдаланушылардан ерекше қабілеттерді талап етпеді. Олардың хабарларын бұрынғы шифрларға қарағанда бұзу әлдеқайда қиын болды.

Механикаландыру

Қарапайым алмастыруды орындау үшін машина жасау оңай. 26 шамға қосылған 26 қосқышы бар электр жүйесінде кез келген қосқыштардың бірі шамдардың біреуін жарықтандырады. Егер әрбір қосқышты пернетақтадағы түймемен байланыстырса, ал шамдар әріптермен белгіленген болса, онда мұндай жүйені шифрлау үшін түймелер мен шамдар арасындағы қосылыстарды таңдауға болады: мысалы, әріпті теру шамның сол әріппен белгіленгенін жандырады. Дегенмен, қосылыстар бекітілген, сондықтан қауіпсіздік деңгейі төмен. Роторлы машиналар әрбір түйме басылғанда қосылыстарды өзгертеді. Қосылыстар ротордың ішіне орналастырылады, содан кейін әрбір әріп басылған сайын тісті дөңгелек арқылы айналады. Осылайша, бірінші рет басылғанда «a» шығарса, келесі рет басылғанда «b» шығуы мүмкін. Пернетақтадағы әрбір әріп ротордың орнын өзгертеді және жаңа алмастыруды қамтамасыз етеді, полиалфавиттік алмастыру шифрын іске асырады. Ротордың көлеміне байланысты, бұл қолмен шифрлаудан қауіпсіз болуы мүмкін. Егер роторда әрбір әріп үшін бір-бірден 26 орын болса, онда барлық хабарламалар 26 әріптен тұратын қайталанатын кілтті пайдаланады. Кілттің өзі (көбінесе ротордың қосылыстарына жасырылған) белгісіз болса да, осы типтегі шифрларды бұзу әдістеріне бұл ақпарат қажет емес. Сондықтан, мұндай бір роторлы машинаны пайдалану оңай болғанымен, ол басқа жартылай полиалфавиттік шифрлау жүйесінен қауіпсіз емес. Бірақ бұл мәселені оңай шешуге болады. Роторларды бірінің қасына бірін тізіп, тісті дөңгелектермен байланыстырыңыз. Бірінші ротор толық айналғаннан кейін, оның жанындағы роторды бір позицияға жылжырыңыз. Енді кілт қайталанатын болмайынша 26 × 26 = 676 әріпті (латын алфавиті үшін) теру қажет, бірақ бұл үшін тек екі әріптен/саннан тұратын кілтті жеткізу жеткілікті. Егер 676 әріптен тұратын кілт жеткіліксіз болса, тағы бір роторды қосуға болады, нәтижесінде 17,576 әріптен тұратын кезең пайда болады. Шифрлауды оңай дешифрлеу үшін кейбір роторлы машиналар, әсіресе «Энигма» машинасы, симметриялық кілт алгоритмін қолданды, яғни бірдей параметрлермен екі рет шифрлау бастапқы хабарламаны қалпына келтіреді (инволюцияға қараңыз).

Өнертабыс

Роторлы машинаның тұжырымы бірнеше өнертапқыштарға дербес түрде шамамен бір уақытта келді. 2003 жылы алғашқы өнертапқыштардың 1915 жылы голландтық екі әскери-теңіз офицері Тео А. ван Хенгель (1875–1939) және Р. П. С. Шпенглер (1875–1955) болғандығы анықталды (De Leeuw, 2003). Бұрын бұл өнертабыс тәуелсіз жұмыс істейтін төрт өнертапқышқа: Эдвард Хеберн, Арвид Дамм, Хьюго Кох және Артур Шербиусқа жатқызылған болатын. АҚШ-та Эдвард Хью Хеберн 1917 жылы бір роторды пайдалана отырып, роторлы машина құрастырды. Ол әскерилерге осындай жүйені, «Хеберн роторлы машинасы» деп аталатынын сату арқылы бай болатынына сенімді болды және бірден бес роторлы машиналардың бірнеше түрін жасады. Дегенмен, оның жетістігі шектеулі болды және ол 1920 жылдары банкротқа ұшырады. 1931 жылы ол АҚШ Әскери-теңіз күштеріне аз ғана машина сатты. Хеберн машиналарында роторларды ашып, сымдарын бірнеше минут ішінде өзгертуге болады, сондықтан бір жаппай өндірілген жүйе көптеген пайдаланушыларға сатылып, олар өздері роторлық кілттерді жасауға мүмкіндік алатын еді. Шифрды түсіндіру үшін роторларды алып тастап, оларды кері бұрып, схеманы өзгерту қажет болды. Хебернге беймәлім, АҚШ Армиясының SIS бөлімінен Уильям Ф. Фридман жүйедегі кемшілікті тез арада көрсетті, бұл оның шифрларын және ұқсас конструкциялық ерекшеліктері бар кез келген машинаның шифрын жеткілікті еңбекпен бұзуға мүмкіндік беретінін дәлелдеді. Роторлы машинаны ойлап тапқан тағы бір ертедегі өнертапқыш – голландиялық Хьюго Кох, ол 1919 жылы роторлы машинаға патент алды. Шамамен сол уақытта Швецияда Арвид Герхард Дамм басқа роторлық конструкцияны ойлап тапты және патенттеді. Алайда, роторлы машинаны 1918 жылы роторлы машинаға патент тапсырған Артур Шербиус танымал етті. Кейіннен Шербиус «Энигма» машинасының дизайнын жасап, оны сатуға шығарды.

Энигма машинасы

Ең танымал роторлық шифрлау құрылғысы – Екінші дүниежүзілік соғыс кезінде қолданылған неміс «Энигма» машинасы, оның бірнеше түрі болды. Стандартты «Энигма» моделі, «Энигма I», үш роторды пайдаланды. Роторлар тізбегінің соңында қосымша, айналмайтын диск – «рефлектор» орналасқан, ол кіретін электрлік сигналды сол жақтағы басқа контактіге қайтаратын және осылайша шифрмәтінді жасау үшін үш роторлық тізбек арқылы «кері шағылыстыратын» болды. Басқа роторлық шифрлау машиналарына сигнал жіберілгенде, ол роторлар арқылы өтіп, екінші жағынан шамдарға жететін. Алайда, «Энигма» да сигнал шамдарға жеткенше дисктер арқылы «кері шағылыстырылатын» еді. Бұл жүйенің артықшылығы – хабарды шешу үшін құрылғыға ештеңе жасаудың қажеті болмады, машина «симметриялық» болды. «Энигма» рефлекторы әріптің өзіне шифрлануына мүмкіндік бермейтін, сондықтан «А» әрпі ешқашан «А» әрпіне айналмайтын. Бұл поляк және кейін британдық мамандарға шифрды бұзуға көмектесті. (Шифрлауды талдау туралы қараңыз.) Шербиус Риттер есімді механикалық инженермен бірігіп, Берлинде «Chiffriermaschinen AG» компаниясын құрды, содан кейін 1923 жылы Бернде, ал 1924 жылы Стокгольмде өткен Дүниежүзілік почта конгресінде «Энигманы» жұртшылыққа көрсетті. 1927 жылы Шербиус Кохтың патенттерін сатып алды, ал 1928 жылы машинаның алдына плагбордты – негізінен айналмауы мүмкін, қолмен қайта сымдалған төртінші роторды қосты. 1929 жылы Шербиус қайтыс болғаннан кейін Вилли Корн «Энигманың» техникалық дамуын басқарды. Басқа да алғашқы роторлық машиналар сияқты, Шербиус коммерциялық сәттілікке жете алмады. Алайда, бірінші дүниежүзілік соғыс кезінде олардың кодтары бұзылғаны туралы ақпараттарға жауап ретінде, неміс қарулы күштері байланыс жүйесін қамтамасыз ету үшін «Энигманы» қабылдады. Рейхсмарине 1926 жылы «Энигманы» қабылдады, ал неміс армиясы 1928 жыл шамасында басқа бір түрін қолдана бастады. «Энигма» (бірнеше түрінде) – Шербиус компаниясы және оның ізбасары «Heimsoth & Reinke» неміс әскерилеріне және нацистік партияның қауіпсіздік ұйымы SD сияқты мекемелерге жеткізген роторлық машина. Поляктар неміс армиясының «Энигмасын» 1932 жылдың желтоқсанынан бастап, оны пайдалануға бергеннен кейін көп ұзамай бұзды. 1939 жылдың 25 шілдесінде, Гитлердің Польшаға шабуылына бес апта қалғанда, Польша Бас штабының Шифрлау бюросы өзінің «Энигма» шифрлау әдістері мен жабдықтарын француз және британ тараптарымен бөлісті, бұл Польшаның нацистік Германияға қарсы ортақ қорғанысқа қосқан үлесі болды. Дилли Нокс 1937 жылы Испания Азамат соғысы кезінде коммерциялық «Энигма» машинасымен испан ұлтшылдарының хабарламаларын бұзған болатын. Бірнеше айдан кейін, поляктардың әдістерін пайдалана отырып, британдықтар Польшаны немістер басып алғаннан кейін Парижге жеткен Польша Шифрлау бюросының криптологтарымен бірлесіп «Энигма» шифрларын оқи бастады. Поляктар Германия армиясының «Энигмасын» – сонымен қатар Люфтваффе «Энигма» трафигін де – 1940 жылдың мамыр-маусым айларында Франциядағы PC Бруно станциясындағы жұмыс немістердің басып кіруімен тоқтатылғанға дейін бұзуды жалғастырды. Британдықтар «Энигманы» бұзуды жалғастырды және ақырында АҚШ-тың көмегімен жұмысты неміс теңіз күштерінің «Энигма» трафигіне (поляктар соғысқа дейін оқыған) кеңейтті, әсіресе Атлант мұхиты шайқасы кезінде U- қайықтарына және одан.

Әртүрлі машиналар

Екінші дүниежүзілік соғыс кезінде (ЕДЖС) немістер де, одақтастар да қосымша роторлы машиналар жасады. Немістер Lorenz SZ 40/42 және Siemens және Halske T52 машиналарын Baudot кодын қолданатын телепринтер трафигін шифрлау үшін пайдаланды; бұл трафик одақтастарға «Fish» деп белгілі болды. Одақтастар Typex (британдық) және SIGABA (американдық) машиналарын әзірледі. Соғыс жылдары швейцариялықтар Enigma машинасының жетілдірілген нұсқасын жасауды бастады, ол NEMA машинасы деп аталды және ЕДЖС аяқталғаннан кейін қолдануға берілді. Роторлары көлденең орналасқан жапондық Enigma машинасының да нұсқасы болды, бірақ ол ешқашан пайдалануға енгізілмеді. Жапондық PURPLE машинасы роторлы машина емес, электрлік қадамдық коммутаторларға негізделген, бірақ тұжырымдамалық тұрғыдан ұқсас болды. Роторлы машиналар компьютерлік дәуірде де қолданыла берді. KL 7 (ADONIS) – 8 роторлы шифрлау машинасы, 1950 жылдан 1980 жылға дейін АҚШ және оның одақтастары тарапынан кеңінен қолданылды. KL 7 машинасымен шифрланған соңғы канадалық хабарлама 1983 жылдың 30 маусымында жіберілді. Кеңес Одағы мен оның одақтастары 1970 жылдарға дейін «Фиалка» деп аталған 10 роторлы машинаны пайдаланды. 2002 жылы Нидерландыда тұратын Татяна ван Варк «Криптограф» деп аталатын бірегей роторлы машинаны құрастырды. Бұл ерекше құрылғы Enigma машинасынан шабыттанды, бірақ 40 нүктелі роторларды қолданады, олар әріптерді, сандарды және кейбір тыныш белгілерді шифрлеуге мүмкіндік береді; әр роторда 509 бөлік бар. Роторлы машинаның бағдарламалық қамтамасыздылуы UNIX операциялық жүйелерінің ерте нұсқаларындағы крипто командасының бір бөлігі ретінде қолданылды. Бұл бағдарламалық қамтамасыздылу криптографиялық әзірлемелерді қару ретінде жіктеген АҚШ экспорттық ережелерін бұзған алғашқы бағдарламалардың бірі болды.