Мне любопытно, как работает восстановление пароля для файлов, защищенных паролем. And I want to know the exact flow of the 7-zip encryption mechanism.
7-zip
использует алгоритм шифрования AES-256 в режиме CBC для шифрования файлов или папок. Ключ генерируется из введенной пользователем парольной фразы на основе хэш-функции SHA-256. SHA-256 выполняется 2 19 (524 288) раз, чтобы увеличить стоимость исчерпывающего поиска. Кроме того, чтобы снизить риск атак по словарю, соль добавляется к исходной парольной фразе перед генерацией хэша.
Мой первый вопрос how does key_derivation function work to generate a 256-bit key
? Какое значение имеет IV для режима AES CBC и как он создается?
Мой второй и most important question
- это как проверяется ключ для расшифровки 7-zip архива? Я имею в виду, как работает его функция key_verification?