Создать сильный ключ для AES-256 из большого ключевого файла - PullRequest
1 голос
/ 03 апреля 2012

Мне было интересно, как создать сильный ключ для AES-256 из содержимого большого файла (от 25 МБ до 5 ГБ). другими словами, большой файл действует как некий ключевой файл, который превращается в короткий ключ для aes. метод генерации ключа должен быть быстрым для больших файлов, детерминированным и работать с любым типом файлов (даже с шаблонами или простыми текстовыми файлами). Я обнаружил, что использование md5 для получения этого ключа довольно медленное и его безопасность не требуется, так как мне не нужно предотвращать подделку файлов. Я просто хочу создать безопасный ключ с небольшими коллизиями. Мне известно, что использование файла не повышает безопасность, как сам ключ.

1 Ответ

1 голос
/ 03 апреля 2012

Я бы использовал md5sum или sha256sum, чтобы получить хеш большого файла.Производительность не будет намного хуже, чем простое чтение всего файла с диска.

Если вам действительно нужна скорость, тогда вы можете использовать Adler-32 , но учтите, что это тривиальноподделать, и не может быть использован для создания сильного ключа для AES.

...