Поведение режима ctr AES256 при переполнении/опрокидывании счетчика

#encryption #aes #encryption-symmetric

Вопрос:

Я пытаюсь понять ожидаемое поведение режима ctr aes256 при переключении счетчика..

например, учитывая это значение:

«iv»: «ФФФФФФФФФФФФФФФФФФФФФФФФФФФФФФФФФФФФФФФФФ»,

Как только приращение увеличивается, оно становится равным 0 или 1? В RFC 3686 указано, что счетчик блоков должен начинаться с 1, но на самом деле в нем не упоминается поведение при полном ролловере. Это где-нибудь задокументировано?

Любая помощь будет признательна, спасибо!

Комментарии:

1. rfc3686 описывает режим CTR, который не соответствует популярным реализациям. Он описывает IV как состоящий из nonce (32-разрядный), IV (64-разрядный) и счетчика (32-разрядный). Все известные мне реализации используют полные 128 бит в качестве IV и начинают подсчет. Возможно, этот RFC-не лучший способ оценить поведение при опрокидывании. В любом случае, это лучше подходит для криптографии .

2. На самом деле, режим CTR небезопасен для использования счетчика, что даже возможно! В современной криптографии мы не используем режим CTR как таковой. Мы используем AES-GCM , который использует CTR внутри компании, или лучше использовать AES-GCM-SIV, чтобы уменьшить проблему неправильного использования.

3. @ArtjomB. crypto.stackexchange.com/questions/71195/…

4. Я голосую за то, чтобы закрыть этот вопрос, потому что он лучше подходил бы для криптографии , но там его уже задавали (см. Комментарий со ссылкой)

5. @ArtjomB. Обратите внимание, что режим CTR, определенный NIST, допускает довольно много методов использования nonce / счетчика и т. Д. Он даже не определяет, является ли он большим или маленьким конечным.