适用于.NET WCF,.NET CF,Android,Symbian的跨平台AES加密

时间:2011-02-23 10:17:50

标签: .net android encryption compact-framework symbian

我在服务器上托管了WCF服务,需要接受来自各种移动平台的加密值,如Windows Mobile,Symbian,Android,BlackBerry,iPhone等。

对于.NET和所有其他移动平台,我无法获得跨平台AES加密实现(大部分时间我得到Padding无效且无法删除错误)。

任何开发过这种加密解决方案的人都可以使用.NET,.NET CF,Android,Symbian,BlackBerry,iPhone等吗?

3 个答案:

答案 0 :(得分:1)

使用Bouncy Castle C# Cryptography APIs。它拥有您需要的所有内容,并可与上述平台一起使用(保存Symbian和BB)。

答案 1 :(得分:0)

我的2美分.Net,CF,Android& Spring WebServices:

我能够使用AES + CBC + PKCS5Padding

在.Net CF中,您可以找到System.Security.Cryptography.RijndaelManaged(您必须将块大小设置为128,这很重要。)

答案 2 :(得分:0)

实施AES加密时需要注意的几件重要事项: 1.切勿使用纯文本作为加密密钥。始终散列纯文本密钥,然后用于加密。 2.始终使用随机IV(初始化向量)进行加密和解密。真正的随机化很重要。

我最近在Github上发布了针对C#,iOS和Android的跨平台AES加密和解密库。你可以在这里看到它 - https://github.com/Pakhee/Cross-platform-AES-encryption