Использование AES256 в качестве «дешифрования» в machineKey для SqlMembershipProvider

#encryption #sqlmembershipprovider #aes #machinekey

#шифрование #sqlmembershipprovider #aes #machinekey

Вопрос:

Я создаю пользовательские регистрационные формы для аутентификации на основе форм для сайта SharePoint 2010 и сохраняю пароли как «зашифрованные» в таблице базы данных aspnet_Membership.

Моя настройка в web.config показывает, что параметром ‘decryption’ является «AES». Мой босс просит, чтобы я попытался использовать AES256, поскольку это более безопасно, но у меня возникли проблемы с разработкой, как это сделать. Я искал в Google и «stackoverflow-ing», но пока мне не удалось найти ни одного сообщения, которое объясняло бы, что мне нужно сделать, или где искать хорошую информацию.

Мои вопросы, я думаю, таковы:

  1. является ли «AES256» допустимым значением для параметра «дешифрование» в ?
  2. если нет, то достаточно ли просто сгенерировать более длинный «decryptionkey», чтобы сделать AES более надежным? т. Е. если я сделаю свой ключ дешифрования длиной 64 символа, будет ли это представлять собой AES256?
  3. если я полностью не согласен с моим текущим мышлением, может кто-нибудь направить меня в нужное русло или объяснить (или дать ссылку на объяснение), как обновить мой web.config, чтобы использовать AES256 вместо AES по умолчанию?

На всякий случай, если кто-то захочет сказать «Вам следует использовать Hashed» .. был там, обсуждал это, принято решение использовать Encrypted. Просто подумал, что я уберу это с пути 🙂

Ответ №1:

  1. Нет, вы можете использовать только «AES» в качестве параметра дешифрования для алгоритма AES.

  2. Да, если вы создаете код длиной 256 бит (64 байта), у вас фактически есть AES256. На самом деле, вы могли бы сгенерировать один, который также имеет длину 512 бит. Чем длиннее это значение, тем надежнее шифрование.

  3. Нет необходимости. Кажется, вы это понимаете.

Теперь, в .NET 4.0, они немного улучшили это, позволив использовать SHA256 и для проверки. Смотрите документацию MSDN (archive.org снимок) для получения подробной информации.

Комментарии:

1. Извините, что мне потребовалось так много времени для ответа; SharePoint никогда не спит, и, следовательно, я, похоже, тоже! Большое спасибо за подтверждение моей мысли. Я рад узнать, что я действительно что-то изучаю и понимаю, даже если мне все еще требуется подтверждение в реальном мире 🙂