Кіріспе

Unix шифрлау құралы

Unix жүйесінде crypt немесе enigma – шифрлауға қолданылатын пайдалы бағдарлама. Оны бұзу оңай болғандықтан, ол қолданыстан шыққан деп есептеледі. Бағдарлама көбінесе сүзгі ретінде қолданылады және дәстүрлі түрде Энигма машинасы негізіндегі "айналмалы машина" алгоритмі арқылы іске асырылады. Қазіргі заманғы, қанағаттандырарлық жеке компьютерлердің күшпен бұзу әрекеттеріне қарсы қандай да бір қауіпсіздік қамтамасыз ету үшін бұл криптографиялық тұрғыдан тым әлсіз саналады. Unix-тің кейбір нұсқалары криптографиялық бағдарламалық жасақтаманы экспорттауды шектеген сол кездегі заңдар мен ережелерге сәйкес болу үшін crypt(1) командасының тіпті әлсіз нұсқасымен бірге келді. Олардың кейбіреулері жай ғана Цезарь шифрының іске асырылуы болды (іс жүзінде, белгілі кілтпен Цезарь шифры ретінде іске асырылған ROT13-тен қауіпсіз емес).

Тарих

Криптограф Роберт Моррис M 209 негізінде құрылған бағдарлама жазды, ол алғаш рет Unix 3 нұсқасында пайда болды, кодты бұзу эксперименттерін ынталандыру мақсатында; Моррис оны қолмен бұза алды. Деннис Ричи Джеймс Ридстің әдісімен шифрларды автоматты түрде ашуды іске қосты, ал 7-ші нұсқада жаңа Энигма негізіндегі нұсқа пайда болды, оны Ридс пен Питер Ж. Вайнбергер де бұзды.

Шифрлауды бұзу

Криптографияны бұзуға арналған бағдарламалар кеңінен қол жетімді. Боб Болдуиннің 1984-1985 жылдары жазылған Crypt Breaker's Workbench – бұл пайдаланушы түзетуі тиіс тізбектелген қарапайым мәтіндік болжамдар ұсынатын интерактивті құрал. Ол сонымен қатар қазіргі заманғы BSD дистрибутивтерінде қолданылатын жұмыс істейтін crypt(1) іске асыруын қамтамасыз етеді. Питер Селингердің unixcrypt бұзушысы сөздік шабуылына ұқсас қарапайым статистикалық модельді пайдаланады, ол қарапайым мәтіндер жиынтығын кіріс ретінде қабылдайды және ықтимал қарапайым мәтіндерді болжау үшін оны өңдейді, сонымен қатар пайдаланушының араласуын қажет етпейді.

Парольдің хэш-функциясына қатынасы

Сонымен қатар, Unix жүйесінде crypt деп аталатын парольді хэш функциясы да бар. Екеуі де деректерді қорғау үшін қандай да бір деңгейде қолданылса да, олар өзге жағынан мүлдем байланыссыз. Оларды ажырату үшін авторлар көбінесе пайдалы программаны crypt(1) деп, себебі ол Unix нұсқаулықтарының 1-бөлімінде сипатталған, ал парольді хэш функциясын crypt(3) деп атайды, өйткені оның құжаттамасы нұсқаулықтың 3-бөлімінде орналасқан.