Кіріспе

Криптографияда кілт өлшемі немесе кілт ұзындығы криптографиялық алгоритм (мысалы, шифр) қолданатын кілттегі биттер санын білдіреді. Кілт ұзындығы алгоритмнің қауіпсіздігінің жоғарғы шегін анықтайды (яғни, алгоритмге қарсы ең жылдам белгілі шабуылдың логарифмдік өлшемі), себебі барлық алгоритмдердің қауіпсіздігі күш қолдану арқылы бұзылуы мүмкін. Идеалды жағдайда, алгоритмнің қауіпсіздігінің ең төменгі шегі кілт ұзындығымен бірдей болуы керек (яғни, алгоритмнің дизайны кілт ұзындығына тән қауіпсіздік деңгейін төмендетпейді). Көптеген симметриялық кілт алгоритмдері кілт ұзындығына тең қауіпсіздікпен жасалған. Бірақ, дизайннан кейін жаңа шабуылдар табылуы мүмкін. Мысалы, Triple DES 168 биттік кілтпен жасалған, бірақ қазір 2112 күрделілігі бар шабуыл белгілі (яғни, Triple DES қазір тек 112 бит қауіпсіздікке ие, ал кілттегі 168 биттің 56-сы шабуылдың нәтижесінде қауіпсіздік үшін "тиімсіз" болды). Дегенмен, егер қауіпсіздік (түсінігі бойынша "кіруге жұмсалатын күш мөлшері") нақты қолданба үшін жеткілікті болса, кілт ұзындығы мен қауіпсіздіктің сәйкес келуі маңызды емес. Бұл асимметриялық кілт алгоритмдері үшін маңызды, өйткені мұндай алгоритмнің бұл қасиетті қанағаттандыратыны белгісіз; эллиптік қисық криптографиясы кілт ұзындығының шамамен жартысына тең тиімді қауіпсіздікпен ең жақын нәтиже береді.

Маңыздылығы

Кілттер шифрдің жұмысын басқару үшін қолданылады, сондықтан шифрланған мәтінді (шифрлық мәтін) қарапайым мәтінге тек дұрыс кілт ғана айналдыра алады. Көпте қолданылатын шифрлардың барлығы дерлік жалпыға белгілі алгоритмдерге немесе ашық кодты бағдарламалық қамтамасыздылыққа негізделген. Сондықтан жүйенің қауіпсіздігін тек кілтті алудың қиындығы анықтайды, егер аналитикалық шабуыл болмаса (яғни қолданылатын алгоритмдер мен хаттамалардағы «құрылымдық осалдық») және кілт басқа жолмен қолжетімді болмаса (мысалы, ұрлық, қорқыту немесе компьютерлік жүйелерді бұзу арқылы). Жүйенің қауіпсіздігі тек кілтке байланысты болуы керек деген кең таралған түсінікті Август Керкхоффс (1880 жылдары) және Клод Шеннон (1940 жылдары) нақтылады; бұл мәлімдемелер Керкхоффс принципі және Шеннонның максимасы деп аталады. Сондықтан кілттің ұзындығы күшпен сынап көру шабуылына (кәз келген шифрлау алгоритміне қарсы қолданылуы мүмкін) төтеп беруге жеткілікті үлкен болуы керек – яғни, оны орындау тым ұзақ уақыт алады және/немесе тым көп жадты қажет етеді. Шеннонның ақпарат теориясы бойынша жұмысы, «толық құпиялылықты» қамтамасыз ету үшін кілттің ұзындығы хабарламаның ұзындығына тең болуы және бір рет қана қолданылуы керек екенін көрсетті (бұл алгоритм «бір реттік блокнот» деп аталады). Осыған байланысты және мұндай ұзын кілттерді басқарудың практикалық қиындықтарын ескере отырып, қазіргі заманғы криптографиялық тәжірибе шифрлаудың талабы ретінде толық құпиялылық тұжырымын қабылдамайды, және оның орнына есептеу қауіпсіздігіне назар аударады, онда шифрланған мәтінді бұзу үшін қажетті есептеу ресурстары шабуылшы үшін қолжетімсіз болуы керек.

Кілттің өлшемі және шифрлау жүйесі

Шифрлау жүйелері көбінесе отбасыларға жіктеледі. Көбінесе кездесетін отбасыларға симметриялық жүйелер (мысалы, AES) және асимметриялық жүйелер (мысалы, RSA және Эллиптік қисық криптографиясы [ECC]) жатады. Олар қолданылатын негізгі алгоритм бойынша топтастырылуы мүмкін (мысалы, ECC және Фейстель шифрлері). Олардың криптографиялық күрделілігі әртүрлі болғандықтан, бірдей қауіпсіздік деңгейі үшін қолданылатын алгоритмге байланысты кілттің әртүрлі өлшемдері болуы мүмкін. Мысалы, асимметриялық RSA-да қолданылатын 1024 биттік кілтпен қамтамасыз етілген қауіпсіздік, симметриялық алгоритмдегі 80 биттік кілтпен қамтамасыз етілген қауіпсіздікке шамамен тең деп есептеледі. Бөлшектелген сан ерекше формада болды; RSA кілттеріне арнайы сандық өріс ілгісі қолданыла алмайды. Есептеу шамамен 700 биттік RSA кілтін бұзумен тең. Дегенмен, бұл 1024 биттік RSA кілттерінің қауіпсіз онлайн саудада қолданылуын тоқтату керектігін алдын ала ескерту болуы мүмкін, себебі олар жақын арада бұзылуы мүмкін. Криптография профессоры Арьен Ленстра: "Соңғы рет біз ерекше санды ерекше емес, бөлшектеуге қиын санға жалпылау үшін тоғыз жыл жұмсадық" деді және 1024 биттік RSA кілттері өліме деп сұрағанда: "Осы сұраққа жауап – толыққанды иә" деді. 2015 жылғы Logjam шабуылы Diffie Hellman кілттерін алмастыру кезінде тек бір немесе бірнеше 1024 биттік немесе одан кішігірім негізгі модульдер қолданылғанда қосымша қауіптерді көрсетті. Бұл практика, сол кезде кең таралған, аз ғана санды бұзу арқасында үлкен көлемдегі байланыстың құпиялылығын бұзуға мүмкіндік береді.

Қатаң шабуыл

Егер симметриялық шифр қазіргі уақытта оның алгоритміндегі құрылымдық әлсіздіктерді пайдаланып бұзу мүмкін болмаса да, "күшпен іздеу" деп аталатын шабуыл арқылы кілттердің барлық кеңістігін қарап шығуға болады. Ұзын симметриялық кілттер күшпен іздеу үшін экспоненциалды түрде көп жұмыс қажет етеді, сондықтан жеткілікті ұзын кілт мұндай шабуылды тиімсіз етеді. n биттік кілт болғанда, 2n мүмкін кілт болады. Бұл сан n өскен сайын өте жылдам өседі. Барлық мүмкін 128 биттік кілттерді сынап көру үшін қажетті операциялар саны (2128) алдағы уақытта дәстүрлі цифрлық есептеу техникалары үшін қолжетімсіз деп есептеледі. Дегенмен, Гровер алгоритмін іске асыра алатын кванттық компьютер кілттерді тиімдірек іздеуге қабілетті. Егер жеткілікті өлшемдегі кванттық компьютер 128 биттік кілтті 64 биттік қауіпсіздік деңгейіне дейін төмендетсе, бұл DES-ке тең болар еді. Осы себептердің бірі AES 256 биттік және одан да ұзын кілттерді қолдайды.

Симметриялық алгоритм кілттерінің ұзындығы

IBM-нің Lucifer шифры 1974 жылы Data Encryption Standard стандартына негіз болатын ретінде таңдалды. Lucifer кілтінің ұзындығы 128 биттен 56 битке дейін қысқартылды, сол кезде NSA және NIST мұны үкіметтік емес қорғау үшін жеткілікті деп сақтады. NSA-ның үлкен есептеу ресурстары мен бюджеті бар; Whitfield Diffie және Martin Hellman сияқты кейбір криптографтар бұл шифрды соншалықты әлсіз еткенін, NSA компьютерлерінің күш қолданып, параллель есептеу арқылы DES кілтін бір күнде бұза алатынын айтты. NSA мұны жоққа шығарып, DES-ті күшпен бұзуға "шамамен 91 жыл" кететінін мәлімдеді. Алайда, 90-жылдардың соңында DES-ті ірі корпорациялар немесе үкіметтер сатып ала алатын арнайы құрылғылармен бірнеше күнде бұзуға болатыны анық болды. Cracking DES (O'Reilly and Associates) кітабы 1998 жылы шектеулі ресурстары бар кибер құқықтар тобының күшпен шабуылы арқылы 56 биттік DES-ті бұзуға қол жеткізгені туралы айтады; EFF DES крекеріне қараңыз. Осы демонстрацияға дейін 56 бит жалпы қолданысқа арналған симметриялық алгоритм кілттері үшін жеткіліксіз ұзындық деп есептелді. Осы себепті DES көптеген қауіпсіздік салаларында 168 биттік кілттерді (үштік кілт) пайдаланғанда 112 бит қауіпсіздік қамтамасыз ететін Triple DES-ке алмастырылды. 2015 жылдан бері NIST-тің нұсқауларында "кілт келісімін қамтамасыз ету үшін 112 биттен кем қауіпсіздік күші бар кілттерді пайдалануға тыйым салынды" делінген. NIST бекіткен симметриялық шифрлау алгоритмдеріне үш кілтті Triple DES және AES кіреді. Екі кілтті Triple DES және Skipjack алгоритмдеріне берілген рұқсат 2015 жылы алынып тасталды; NSA-ның Fortezza бағдарламасында қолданылатын Skipjack алгоритмі 80 биттік кілттерді пайдаланады.

Асимметриялық алгоритм кілттерінің ұзындығы

Жария кілт криптожүйелерінің тиімділігі бүтін сандарды есепке келтіру сияқты белгілі бір математикалық мәселелердің (есептеу және теориялық) шешілмейтіндігіне байланысты. Бұл мәселелерді шешу көп уақыт алады, бірақ әдетте барлық мүмкін кілттерді күшпен тексеруден гөрі жылдам. Сондықтан, асимметриялық кілттер симметриялық алгоритмдердің кілттеріне қарағанда шабуылға қарсы тең кедергі үшін ұзын болуы керек. Көбінесе қолданылатын әдістер болашақта жеткілікті қуатты кванттық компьютерлерге қарсы осал болады деп есептеледі. 2015 жылдан бері NIST RSA үшін кемінде 2048 биттік кілттерді ұсынады, бұл 2002 жылдан бері қабылданған 1024 биттік кілттердің ұсынысын жаңарту. 1024 биттік RSA кілттері 80 биттік симметриялық кілттерге, 2048 биттік RSA кілттері 112 биттік симметриялық кілттерге, 3072 биттік RSA кілттері 128 биттік симметриялық кілттерге және 15360 биттік RSA кілттері 256 биттік симметриялық кілттерге тең келеді. 2003 жылы RSA Security 1024 биттік кілттер 2006 және 2010 жылдар аралығында бұзылуы мүмкін екенін мәлімдеді, ал 2048 биттік кілттер 2030 жылға дейін жеткілікті болады. 2020 жылға дейін бұзылған ең үлкен RSA кілті 829 биттен тұратын RSA 250 кілті болып табылады. Шектелген өрістегі Диффи-Хеллман алгоритмі бірдей кілт өлшемдері үшін RSA-мен салыстырылатын кілт күшіне ие. Диффи-Хеллманды бұзу жұмысы дискретті логарифм мәселесіне негізделген, ол RSA күшіне негізделген бүтін сандарды есепке келтіру мәселесімен байланысты. Осылайша, 2048 биттік Диффи-Хеллман кілті 2048 биттік RSA кілтімен шамалас күшке ие. Эллиптикалық қисық криптографиясы (ECC) – бұл симметриялық алгоритмге қарағанда екі есе аз биттерді қажет ететін, қысқа кілттермен бірдей қауіпсіздікті қамтамасыз ететін асимметриялық алгоритмдердің балама жиынтығы. 256 биттік Эллиптикалық қисық Диффи-Хеллман (ECDH) кілті 128 биттік AES кілтімен шамалас қауіпсіздік факторына ие. NSA бұрын құпия ақпаратты SECRET деңгейіне дейін қорғау үшін 256 биттік ECC және TOP SECRET үшін 384 бит ұсынған; 2015 жылы ол 2024 жылға қарай квантқа төзімді алгоритмдерге өту жоспарларын жариялады және сол уақытқа дейін барлық құпия ақпарат үшін 384 битті ұсынады.