Кто-нибудь получил практический опыт или ссылку на схему, которая реализует схему управления ключами, которая будет соответствовать стандарту безопасности PCI DSS?
Очевидно, существует немало реализаций, связанных с количеством компаний, совместимых с PCI DSS, но поиск их деталей сложный. Когда он переходит к хранению частных данных, обсуждение обычно останавливается, при использовании которого используется алгоритм шифрования. После этого обычно есть утверждение о правильном хранении закрытого ключа, но не обсуждается практические способы его выполнения или такие вещи, как периодическое изменение ключа или предоставление ключа для приложений и т.д.
В частности, меня интересуют ваши требования из разделов 3.5 и 3.6 стандарта PCI DSS.
3.5.2 Безопасное хранение криптографических ключей в наименьших возможных местах и формах.
3.6.a Проверьте наличие процедур управления ключами для ключей, используемых для шифрования данных держателей карт. Примечание. Многочисленные отраслевые стандарты для управления ключами доступны из различных ресурсов, включая NIST, которые можно найти в http://csrc.nist.gov.
3.6.4. Убедитесь, что процедуры управления ключами реализованы для периодических изменений ключа не реже одного раза в год.
Я рассмотрел публикации криптографии NIST, как предлагает документ требований PCI DSS, но кроме недавних нот Семинар по управлению криптографическими ключами, похоже, не существует много способов реализации реально реализуемых схем или стандартов.
Что я не пытаюсь сделать:
- Храните пароли + соли в качестве хэшей для проверки подлинности,
- Выберите сильный симметрийный алгоритм шифрования данных,
- Избегайте необходимости хранить личные данные в первую очередь.
- Избегайте необходимости в управлении ключами с помощью других механизмов: физической безопасности, безопасности баз данных, драконов и мастеров и т.д.
Все из них являются действительными, но в этом случае не являются ответом. Гайки и болты моих требований находятся в другом вопросе SO .Net Design для хранения и извлечения конфиденциальных данных пользователя, но все это сводится к управлению ключами, поэтому это больше уточненный вопрос.