Партнерка на США и Канаду по недвижимости, выплаты в крипто
- 30% recurring commission
- Выплаты в USDT
- Вывод каждую неделю
- Комиссия до 5 лет за каждого referral
Криптосистемы с секретным ключом подразделяются на два вида:
блочные (block) и поточные (stream) криптосистемы.
Блочная криптосистема (блочный шифр) разбивает открытый текст M на последовательные блоки
.... и зашифровывает каждый блок с помощью одного и того же обратимого преобразования
, выбранного в соответствии с ключом k
....
Примерами блочных систем являются: des (режим электронной кодовой книги - есв), ГОСТ 28147-89 (режим простой замены [20,76]. Размер блоков открытого и шифрованного текста в этих криптосистемах равен 64 битам. В американском стандарте шифрования AES размер блока равен 128. В настоящее время такой размер блоков более актуален.
ГОСТ 28147-89
Рассмотрим подробнее отечественный стандарт ГОСТ 28147-89, используемый с 1989 года до настоящего времени.
Всего у стандарта четыре режима использования:
1. Режим простой замены;
2. Режим гаммирования;
3. Режим гаммирования с обратной связью;
4. Режим имитовставки.
Начнем изложение с режима простой замены. Отечественный ГОСТ менее известен, чем американский DES, но они имеют много общего, а именно принцип построения в соответствии со схемой Фейстеля. Описываемый режим работы соответствует режиму электронной кодовой книги есв (Electronic Codebook) для алгоритма des по стандарту fips pub 81 (I980).
Введем необходимые понятия и обозначения.
Ключом (сеансовым, разовым) является 256-битная последовательность W = [
••••
], которая разбивается на восемь 32-битных блока следующим образом:
,
,
..
![]()
Эти блоки используются в процедуре размножения ключа (key shedule) для получения тридцати двух 32-битных блоков
по правилу
![]()
=
.
Долговременным ключом К является набор из восьми таблиц замены
4-х битных двоичных векторов, которые разбиваются на восемь последовательно идущих 4-битных векторов, каждый из которых преобразуется в 4-битный вектор по соответствующей таблице замены из
. Наконец, через T обозначим преобразование циклического сдвига на 11 разрядов 32-битных двоичных векторов в сторону старшего разряда.
Каждый 64-битный блок открытого текста
( i = 1,2,…) разбивается на две равные части
![]()
которые определяют начальные векторы
и
рекурренты второго порядка вида
, j = 0,1.....
следующим образом
=
,
=
,
Через "®" и "+" обозначены соответственно операции побитового сложения двоичных векторов по модулю два и сложения целых чисел по модулю 232. Здесь и далее не различаем целые числа и их двоичное представление, все определяется операциями, которые к ним применяются.
В приведенных обозначениях 64-битный блок шифртекста
получается из значений
и
,
описанной выше рекурренты, следующей перестановкой бит
.
Расшифрование производится в обратном порядке.
В стандарте указано, что этот режим используется только для выработки и зашифрования таблиц замены
при их передаче по каналам связи с обеспечением имитозащиты (подтверждением подлинности).
Режим сцепления блоков шифра (Cipher Block Chaining - CBC). Этот режим использования блочного шифра, как показал Фейстель (H. Feistel), предпочтителен для шифрования открытых текстов и является более устойчивым к атакам криптоаналитиков.
Если обозначить через
(
), преобразование зашифрования (расшифрования) , то получение блоков шифрованного текста
,
.... из блоков
,
открытого текста описывается соотношением
, i=1,2,…
Начальное значение
является несекретным и передается вместе с шифртекстом.
Соответственно процесс расшифрования определяется соотношением
, i=1,2, … .
Иногда используются подобные CBC режимы, например, режим рсвс (Propagating Cipher Block Chaning) и режим РВС (Plaintext Block Chaning),соотношения зашифрования и расшифрования, для которых имеют соответственно вид


![]()
Например, режим рсвс используется в системе Kerberos [48].
Поточная криптосистема (поточный шифр) разбивает открытый текст M на порции, буквы(знаки) или биты
,…., и зашифровывает каждый знак
с помощью обратимого преобразования
, выбранного в соответствии со знаком
ключевого потока (key stream)
,
,… .
В отечественной литературе (см. например, ГОСТ 28147-89) такие системы называются системами гаммирования, а последовательность
,
,… называется гаммой.
Примерами поточных криптосистем являются:
- система Вернама (где
(
)=(
) XOR
,![]()
,
),
- ГОСТ 28147-89 (режимы гаммирования и гаммирования с обратной связью),
- des (режимы CFB и OFB).
В свою очередь поточные криптосистемы подразделяются на
синхронные поточные системы (synchronous stream cipher) и самосинхронизирующиеся поточные системы (self synchronous stream cipher). Первые отличаются тем, что ключевой поток в них получается независимо от открытого и шифрованного текстов. Поэтому, если какая-нибудь буква шифрованного текста потеряна при передаче, то получатель на приемном конце должен пересинхронизировать свой ключевой поток, выбросив и соответствующий знак ключа для правильного расшифрования последующих знаков шифртекста.
Алгоритм, который вырабатывает ключевой поток (гамму), должен быть либо детерминистическим, чтобы воспроизвести одинаковые потоки на приемном и передающем концах связи, либо случайным, что часто непрактично в силу необходимости передачи и хранения ключевой информации большого объема. Этот алгоритм называют генератором ключевого потока (running key generator-RKG, key stream generator). Если генератор детерминистический, то он должен зависеть от секретного ключа.
|
Из за большого объема этот материал размещен на нескольких страницах:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 |


