Кіріспе

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

Негізгі кестелердің кейбір түрлері

Кейбір шифрларда кілттердің қарапайым кестелері бар. Мысалы, TEA блок шифрі 128 биттік кілтті 32 биттік төрт бөлікке бөліп, оларды кезекті турларда қайталап қолданады. DES кілтінің кестесінде 56 биттік кілт 28 биттік екі жартыға бөлінеді; әр жартысы одан әрі жеке қарастырылады. Кезекті турларда екі жартысы бір немесе екі битқа (әр тур үшін көрсетілгендей) солға қарай жылдырылады, содан кейін 48 турлық кілт биттері Permuted Choice 2 (PC 2) арқылы таңдалады – сол жақтан 24 бит және оң жақтан 24 бит. Жылдыру нәтижесінде әр турлық кілтте әртүрлі биттер жиынтығы қолданылады; әр бит 16 турлық кілттің шамамен 14-інде қолданылады. Шифр кілті мен турлық кілттер арасындағы қарапайым байланыстарды болдырмау үшін, байланысты кілт шабуылдары және сырғанау шабуылдары сияқты криптоанализ түрлеріне қарсы тұру мақсатында, көптеген қазіргі заманғы шифрлар турлық кілттерді алуға болатын "кеңейтілген кілтті" жасау үшін күрделі кілт кестелерін қолданады. Rijndael (AES) және Blowfish сияқты кейбір шифрлар кілтті кеңейту үшін шифр алгоритмінің деректер жолында қолданылатын операцияларды пайдаланады, кейде "жеңімде ештеңе жоқ" сандарымен басталады. RC5 сияқты басқа шифрлар кілттерді шифрлау функцияларынан біршама немесе толығымен өзгеше функциялармен кеңейтеді.