我正在寻找加密密码字段以便在登录系统中使用,因此我想匹配加密以确保用户输入了正确的详细信息。
由于某种原因,Security.Cryptography在Silverlight中没有MD5服务,所以我还在寻找不同的方法。
之前我曾用过这个:
public string Md5Encrypt(string originalPassword)
{
//Declarations
Byte[] originalBytes;
Byte[] encodedBytes;
MD5 md5;
//Instantiate MD5CryptoServiceProvider, get bytes for original password and compute hash (encoded password)
md5 = new MD5CryptoServiceProvider();
originalBytes = ASCIIEncoding.Default.GetBytes(originalPassword);
encodedBytes = md5.ComputeHash(originalBytes);
//Convert encoded bytes back to a 'readable' string
return BitConverter.ToString(encodedBytes);
}
但现在不行。
任何人都可以在Silverlight C#
中为我提供一个简单的加密方法示例由于
答案 0 :(得分:2)
您可以在Silverlight中使用HashLib:http://hashlib.codeplex.com/(查看HashLib.HashFactory.HashCryptoNotBuildIn命名空间内)
另外,BouncyCastle.Crypt 1.7版本具有Silverlight 2.0及更高版本,其中大多数加密/散列函数可用:http://www.bouncycastle.org/csharp/
最后为了您的救援,Mono源代码总是在这里拯救您:https://github.com/mono/mono/blob/master/mcs/class/corlib/System.Security.Cryptography/SHA512Managed.cs如果它针对.NET 2.0或更高版本,您可以将任何cypto代码复制到您的项目中。