Вопрос по windows-phone-7, aes, aescryptoserviceprovider, encryption, windows-phone – Как использовать алгоритм AES / ECB / PKCS7Padding в Windows Phone 7?

2

Я новичок в разработке Windows Phone. Как я могу использовать алгоритм AES / ECB / PKCS7Padding в WP7?

В то время как гуглил, я видел много предложений о Bouncy Castle. Но я не совсем понял об этом Надувном Замке. Это алгоритм?

Мне нужно зашифровать / расшифровать пароль для отправки на сервер. Во всех других телефонах (Android, iPhone, Blackberry) мы используем алгоритм AES / ECB / PKCS7Padding для этого. Все они дают один и тот же зашифрованный / расшифрованный результат для нашего ввода. Но в Windows Phone я использовал AesManaged Class для шифрования. Но это дает другой зашифрованный результат. В документации MSDN (Документация MSDN) о классе AESManaged они сказали: «Режим шифрования - это всегда CBC, а режим заполнения - всегда PKCS7». Я думаю, может быть, поэтому здесь я получаю другой зашифрованный результат по сравнению с другими телефонами.

Это проблема здесь? Если это так, то как я могу использовать алгоритм AES / ECB / PKCS7Padding в WP7?

Я не вижу никаких свойств для установки режима шифрования в классе AesManaged.

Благодарю.

привет ... ты смог решить твою проблему? Я бегу с подобной проблемой. Любая помощь будет оценена Nirav Bhandari

Ваш Ответ

1   ответ
3

Если вы хотите использовать AES / ECB / PKCS7Padding в Windows Phone, вам следует использовать библиотеку Bouncy Castle.

Эта библиотека не была создана специально для Windows Phone, и вы не можете использовать dll с сайта Bouncy Castle. Вместо этого вы должны загрузить библиотеку с портированным WP7 изВот, (две ссылки внизу статьи)

Теперь вы можете использовать тип Org.BouncyCastle.Crypto.IBufferedCipher.

cipher = CipherUtilities.GetCipher("AES/ECB/PKCS7"); // or PKCS7PADDING, no matter
cipher.Init(false, new KeyParameter(key)); // or something else

Тогда вы должны работать с этой переменной.

И да,

"The cipher mode is always CBC, and the padding mode is always PKCS7"

вот почему вы получаете неправильный результат.

Похожие вопросы