Silverlight C#中的MD5或其他加密

时间:2011-04-17 17:57:32

标签: c# encryption silverlight-4.0 login cryptography

我正在寻找加密密码字段以便在登录系统中使用,因此我想匹配加密以确保用户输入了正确的详细信息。

由于某种原因,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#

中为我提供一个简单的加密方法示例

由于

1 个答案:

答案 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代码复制到您的项目中。