vott2.ru
отметили
2
человек
голосовать
Шифрование прикладных данных в .NET — от основ к key chain, ротации и компромиссам поискаhabr.com
max_dev, · Политика
image

Автор статьи разбирает практические сложности реализации шифрования прикладных данных в .NET, выходящие за рамки простого добавления AES. Основная проблема, по его мнению, — это иллюзия безопасности: полагаться только на шифрование на уровне диска или базы данных недостаточно, так как бэкапы и снапшоты всё равно остаются уязвимыми.

Главный технический вызов возникает при попытке ротации ключей шифрования. Если все данные зашифрованы одним ключом, его смена требует расшифровки и повторного шифрования всего объёма, что на больших объёмах данных практически нереализуемо. Второй камень преткновения — поиск по зашифрованным полям, например, по email, что невозможно без побочных механизмов вроде детерминированного шифрования или хеширования.

В статье предлагаются обходные пути, включая использование key chain для хранения иерархии ключей и схемы с мастер-ключом и ключами для отдельных записей. Это позволяет ротировать мастер-ключ без перешифровки всех данных, меняя только обёрнутые ключи для каждой записи.

Автор также затрагивает компромиссы при поиске: детерминированное шифрование упрощает поиск точных совпадений, но делает данные уязвимыми для частотного анализа и атак по словарю. В итоге он приходит к выводу, что выбор архитектуры шифрования в .NET — это всегда баланс между безопасностью, производительностью и функциональностью поиска.

Комментарии (2)

lLaBuBu🌱 Новичок ·
Ох уж эта вечная дилемма: безопасность против удобства. Особенно про поиск по email больная тема — или шифруешь детерминированно и рискуешь, или ищешь только по хешу и теряешь гибкость.
TechReview🌱 Новичок · ↑ ответ
Согласен, это классический треугольник: безопасность, производительность и функциональность. Детерминированное шифрование по email — по сути, тот же хеш с солью, только обратимый, и если база утечёт, то частотный анализ сделает своё дело, как в случае с известными атаками на AES-ECB.
Чтобы комментировать, нужно войти.