23-10-2023
Раундом (или циклом) в криптографии называют один из последовательных шагов обработки данных в алгоритме блочного шифрования.[1] В шифрах Фейстеля (построенных в соответствии с архитектурой сети Фейстеля) и близких ему по архитектуре шифрах – один шаг шифрования, в ходе которого одна или несколько частей шифруемого блока данных подвергается модификации, путём применения круговой функции.[2]
Также, в криптографических протоколах раундом называется временной интервал, в котором активен только один из участников, либо период времени между двумя точками синхронизации.[3]
Содержание |
Архитектура построения блочных шифров, доминирующая в настоящее время в традиционной криптографии, в которой весь процесс шифрования блока выполняется за серию шагов (раундов). На каждом раунде блок делится на изменяемую и постоянную части. С помощью функции шифрования из постоянной части и раундового ключа вырабатывается модифицирующий код, который используется для модификации изменяемой части посредством операции гаммирования.[2] Широкое распространение сети Фейстеля получили потому, что они удовлетворяют всем требованиям к алгоритмам симметричного шифрования, и в то же время достаточно просты и компактны.
В ходе шифрации используется функция F, называемая образующей. Каждый раунд состоит из вычисления функции F для одной ветви и побитового выполнения операции XOR результата F с другой ветвью. После этого ветви меняются местами. Считается, что оптимальное число раундов - от 8 до 32. Важно то, что увеличение количества раундов значительно увеличивает криптостойкость алгоритма.[4] Возможно, эта особенность и повлияла на активное распространение сети Фейстеля, так как для большей криптостойкости достаточно увеличивать количество раундов, не изменяя сам алгоритм. В последнее время количество раундов не фиксируется, а лишь указываются допустимые пределы.
Раунд (цикл) криптографического протокола (round, pass of cryptographic protocol) — в криптографических протоколах с двумя участниками — временной интервал, в котором активен только один из участников. Другое название — проход (pass) протокола. Цикл (раунд) завершается формированием и отсылкой сообщения с последующим переходом активного участника в состояние ожидания и передачей активности другому участнику. В протоколах с тремя и более участниками в синхронном случае цикл — период времени между двумя точками синхронизации.
К очередной точке синхронизации каждый участник должен отослать все сообщения, которые ему предписано передать другим участникам в текущем цикле. В протоколах интерактивного доказательства циклом (раундом) часто называют комбинацию из трех шагов: заявка, запрос, ответ. В асинхронном случае понятие цикла (раунда) условно.[3]
Раунд (в криптографии).