ASP.NET, VisualStudio 2010: Web.config не публикуется?

По какой-то загадочной причине, когда я публикую свой веб-сайт, внезапно Web.config не копируется окончание.

Сначала, когда я увидел, что для свойств Web.config установлено значение " m реализует схему хранения конфиденциальных данных для каждого пользователя и сеанса. Данные обычно представляют собой пары "ключ-значение" в кодировке JSON и могут быть короткими и повторяющимися. Я ищу руководства PKCS # 5 , но я планировал использовать AES для алгоритма шифрования, а не DES3. Я планировал случайный IV для каждого элемента данных и ключ, определяемый идентификатором пользователя и паролем или идентификатором сеанса, в зависимости от ситуации.

Одна вещь, которая меня удивила, - это схема заполнения PKCS # 5 для открытого текста. Чтобы дополнить зашифрованный текст до 8-байтовых блоков, в конце добавляются от 1 до 8 байтов, при этом содержимое байтов заполнения отражает количество байтов заполнения (то есть 01 , 0202 , 030303 , до 0808080808080808 ). Моя собственная схема заполнения заключалась в использовании случайных байтов в начале открытого текста, а последний символ открытого текста был бы количеством добавленных байтов заполнения.

Я рассуждал так: в режиме AES-CBC каждый блок является функцией зашифрованного текста предыдущего блока. Таким образом, каждый открытый текст будет иметь элемент случайности, что даст мне еще один уровень защиты от известных атак с открытым текстом, а также от IV и ключевых проблем. Поскольку ожидается, что мой открытый текст будет коротким, я не против держать в памяти всю расшифрованную строку и нарезать отступы спереди и сзади.

Одним из недостатков был бы тот же незаполненный открытый текст, IV и ключ, что приводило бы к другому зашифрованному тексту, что затрудняло бы модульное тестирование (но не невозможно - я могу использовать генератор псевдослучайных заполнений для тестирования и криптографически стойкий для производства ).

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

Поскольку общепризнанный стандарт, такой как PKCS # 5, решил использовать детерминированное заполнение, мне интересно, есть ли что-нибудь еще, упустил, или я считаю, что выгода слишком велика.

5
задан jwhitlock 21 January 2011 в 19:06
поделиться