ProtectedData.Unprotect (пароль, энтропия) всегда возвращает значение null в UWP

У меня есть приложение Windows phone8.0 (silverlight), которое я хочу обновить до UWP. в приложении Windows Phone 8.0 я использовал «ProtectedData.Protect (passwordData, entropy)» (mscorlib.extensions.dll, v2.0.5.0) для защиты определенной строки. но когда я пытаюсь использовать «ProtectedData.UnProtect(passwordData, entropy)» или «ProtectedData.Unprotect(passwordData, entropy)» в приложении UWP. я всегда получаю null после выполнения строки кода ProtectedData.UnProtect(passwordData, entropy).

пожалуйста, предложите мне, если что-то пропало?

Спасибо,


comment
Я думаю, что вы не можете использовать mscorlib.extensions.dll — вы должны поддерживать SQLCiper для прозрачного шифрования данных с базой данных SQL Azure — msdn.microsoft.com/en-us/library/ дайте мне знать, если это поддержит ваш вопрос - если да, я добавлю ответ   -  person DeJaVo    schedule 04.01.2016
comment
Привет, DeJaVo, спасибо за ответ. прежде всего извините за вводящее в заблуждение описание проблемы. настоящая проблема в том, что я использовал ProtectedData.Protect(passwordData, entropy) для защиты определенной строки. если я использую ProtectedData.Unprotect(passwordData, entropy) для снятия защиты с той же строки в приложении UWP. он всегда возвращает ноль.   -  person krprakash    schedule 04.01.2016
comment
Какую платформу вы используете? ProtectedData.Protect и ProtectedData.Unprotect предназначен для Windows Phone Silverlight. , их нельзя использовать напрямую в UWP. Вы можете использовать DataProtectionProvider класс вместо этого.   -  person Jay Zuo    schedule 06.01.2016
comment
Привет, Зуо, что, если у меня уже есть приложение Silverlight для Windows Phone в магазине, и в этом приложении я использовал ProtectData.Protect(...) с входом. если я хочу заменить существующее приложение Silverlight приложением UWP в магазине. так что в UWP, как я могу использовать энтропию в классе DataProtectionProvider? я не вижу возможности использовать энтропию там.   -  person krprakash    schedule 06.01.2016


Ответы (1)


https://msdn.microsoft.com/en-us/library/windows/desktop/aa380882(v=vs.85).aspx# мы можем перейти по этой ссылке, чтобы снять защиту данных. туда мы должны импортировать «crypt32.dll».

пример кода здесь. http://www.icodeguru.com/dotnet/ms-visual-csharp-dot-net-unleashed/0672326760/ch35lev1sec4.html

person krprakash    schedule 11.01.2016