Лучший способ зашифровать определенные поля в SQL Server 2008? - PullRequest
2 голосов
/ 26 мая 2010

Я пишу веб-приложение .NET, которое будет читать и записывать информацию в базу данных SQL Server 2008. Часть этой информации будет носить конфиденциальный характер, поэтому я хочу зашифровать определенные элементы данных.

Я не хочу использовать TDE или любое полное шифрование базы данных по соображениям производительности. Моя главная задача - защитить эти конфиденциальные данные в качестве крайней меры от внедрения SQL-кода или даже взлома сервера базы данных.

Каков наилучший способ сделать это, чтобы сохранить производительность? Быстрее ли использовать функции шифрования SQL Server 2008, такие как EncryptByKey, или будет быстрее шифровать и дешифровать данные в самом веб-приложении .NET? Приложение будет использовать симметричный ключ, хранящийся в защищенном web.config, и хранить зашифрованные значения в БД.

Ответы [ 3 ]

1 голос
/ 03 июня 2010

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

0 голосов
/ 28 мая 2010

Я не использовал шифрование базы данных, но моя рекомендация - шифрование на уровне приложения. Если по каким-либо причинам ваша база данных изменится, логика шифрования будет на уровне приложения, а не на уровне базы данных.

Я не совсем уверен в скоростях между ними, но обслуживание проекта будет легче в дальнейшем, если оно будет поддерживаться на прикладном уровне. Что касается шифрования, этот веб-сайт отлично подходит для разработки логики шифрования и дешифрования, а также для посола.

Шифрование и дешифрование данных с использованием симметричного (Rijndael) ключа

0 голосов
/ 26 мая 2010

Я выполнил шифрование данных в веб-приложении с использованием сторонней библиотеки и думаю, что оно будет медленнее, чем в SQL2008 EncryptByKey.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...