Кіріспе

Криптографияда кілттерді жасау процесі
Кілт жасау – криптографияда кілттерді жасау процесі. Кілт шифрланған немесе шифрланбаған деректерді шифрлау және оларды ашу үшін қолданылады. Кілттерді жасауға арналған құрылғы немесе бағдарлама кілт жасағыш немесе keygen деп аталады.

Криптографияда генерациялау

Қазіргі заманғы криптографиялық жүйелерге симметриялық кілт алгоритмдері (мысалы, DES және AES) және ашық кілт алгоритмдері (мысалы, RSA) жатады. Симметриялық кілт алгоритмдері бір ортақ кілтті пайдаланады; деректерді құпия сақтау үшін осы кілтті құпия ұстау қажет. Ашық кілт алгоритмдері мемлекеттік кілт пен жеке кілтті қолданады. Мемлекеттік кілт кез келген адамға (көбінесе цифрлық сертификат арқылы) қолжетімді болады. Жіберуші деректерді алушының ашық кілтімен шифрлайды; тек жеке кілт иесі ғана осы деректерді шифрдан шығара алады. Ашық кілт алгоритмдері симметриялық кілт алгоритмдеріне қарағанда әлдеқайда баяу болғандықтан, TLS және SSH сияқты қазіргі заманғы жүйелер екеуінің үйлесімін қолданады: бір тарап екіншісінің ашық кілтін алады және кішкентай деректерді шифрлайды (симметриялық кілт немесе оны жасау үшін қолданылатын деректер). Әңгімелесудің қалған бөлігі шифрлау үшін (әдетте жылдам) симметриялық кілт алгоритмін пайдаланады. Компьютерлік криптография кілттер ретінде бүтін сандарды қолданады. Кейбір жағдайларда кілттер кездейсоқ сан генераторы (RNG) немесе псевдокездейсоқ сан генераторы (PRNG) арқылы кездейсоқ түрде жасалады. PRNG – бұл компьютерлік алгоритм, ол талдау кезінде кездейсоқ болып көрінетін деректерді шығарады. Жүйелік энтропияны бастапқы деректер ретінде пайдаланатын PRNG-тер көбінесе жақсы нәтижелер береді, себебі бұл PRNG-нің бастапқы шарттарын шабуылдаушыға болжауды қиындатады. Кездейсоқтықты жасаудың тағы бір жолы – жүйеден тыс ақпаратты пайдалану. Veracrypt (дискіні шифрлейтін бағдарламалық қамтамасыз ету) пайдаланушының тышқанның қозғалысын пайдаланып бірегей бастапқы деректерді жасайды, сондықтан пайдаланушылар тышқанды кездейсоқ түрде жылжытуға шақырылады. Басқа жағдайларда кілт парольді және кілт туындыру функциясын пайдалана отырып детерминистік түрде алынады. Көптеген қазіргі заманғы протоколдар алдын ала құпиялылықпен жабдықталған, ол әр сессия үшін жаңа ортақ кілтті жасауды талап етеді. Классикалық криптожүйелер байланыс желісінің бір жағында екі бірдей кілтті жасайды және кілттердің біреуін желінің екінші жағына бір жолмен жеткізеді. Алайда, Diffie–Hellman кілт алмасуды пайдалану кілтті басқаруды жеңілдетеді. Шифрланған деректерді нақты шифрламастан оқудың ең қарапайым әдісі – күшпен сынау шабуылы, яғни кілттің максималды ұзындығына дейін әрбір санды сынап көру. Сондықтан жеткілікті ұзын кілт ұзындығын пайдалану маңызды; ұзын кілттер шабуылға экспоненциалды түрде көбірек уақыт алады, бұл күшпен сынау шабуылын тиімсіз етеді. Қазіргі уақытта 128 биттік кілт ұзындығы (симметриялық кілт алгоритмдері үшін) және 2048 биттік кілт ұзындығы (ашық кілт алгоритмдері үшін) кең таралған.

Сымсыз арналар

Сымсыз арна екі қолданушысымен сипатталады. Пилоттық сигналдарды тарату арқылы осы екі қолданушы олардың арасындағы арнаны бағалай алады және осы арна туралы ақпаратты тек оларға ғана белгілі кілтті жасау үшін пайдаланады. Колданушылар тобы үшін ортақ құпия кілт әрбір қолданушы жұбының арнасы негізінде құрылуы мүмкін.

Оптикалық талшықтар

Кілтті талшықты желідегі фазалық құбылуды пайдалану арқылы да жасауға болады.