Проверка настроек криптографии и хешей — что реально важно проконтролировать
Кто часто работает с хешами, знает, что неправильно настроенная криптография — это 90% проблем. Лично я обычно смотрю сначала, чтобы алгоритмы были актуальные — лучше MD5 и SHA1 сразу забыть, ставлю SHA256 или выше. Потом смотрю корректность соль и pepper, чтобы хеши не были просто хешами паролей без доп-добавок. Важно проверить, что библиотека или софт, который генерирует хеш, не режет случайно байты и кодировки — тут нередко просчёты. Еще проверяю время генерации хеша и его длину — должны совпадать с ожиданиями стандарта. Если это серверное приложение — обязательно смотрю, не кэшируются ли пароли в открытом виде до хеширования. Ну и последний момент — это правильность сохранения данных, чтобы хеш не повреждался при хранении или передаче. Кто как ещё проверяет настройки криптофункций и на что в первую очередь обращает внимание?
Согласен, что старые алгоритмы лучше сразу исключать — MD5 и SHA1 давно не вариант. Для паролей важно, чтобы соль была уникальной и хранилась отдельно, иначе толку от сложного хеша мало. Еще заметил, что иногда библиотеки по-разному обращаются с кодировками, и это реально может сломать всю защиту. Главное — не забывать про аккуратное хранение и проверку результата перед использованием.