Чердачок Брюса Шнайера. Выпуск №4 “Симметричная криптография”
Существуют два основных типа алгоритмов, основанных на использовании ключей: симметричные алгоритмы и алгоритмы и алгоритмы с открытым ключом.
Симметричные алгоритмы (symmetric algorithms) иногда называют
условными (conventional). Это алгоритмы, в которых ключ шифрования может быть вычислен по ключи расшифровки, и наоборот. В большинстве симметричных алгоритмов ключи шифрования и расшифровки совпадают. Эти алгоритмы, также называемые
алгоритмами с секретным ключом (secret-key algorithms) или
алгоритмами с единственным ключом (signle-key algorithms), требуют, чтобы отправитель и получатель согласовали ключ до начала передачи секретных сообщений. Безопасность симметричного алгоритма зависит от ключа. Шифрование и расшифровка с использованием симметричного алгоритма записывается так:
Ek(M) = C,Dk(C) = M.Симметричные алгоритмы подразделяют на две категории. Одни алгоритмы обрабатывают открытый текст побитово (иногда побайтово). Они называются
потоковыми алгоритмами (stream algorithms) или
потоковыми шифрами (stream ciphers). Другие обрабатывают биты открытого текста по группам. Группы битов называются
блоками (blocks), а алгоритмы —
блочными алгоритмами (block algorithms) или
блочными шифрами (block ciphers). В современных компьютерных алгоритмах типичный размер блока составляет 64 бита — достаточно большое значение, чтобы предотвратить анализ, и в то же время достаточно небольшое для удобной работы.
#ЧБШ