繁体   English   中英

加密和解密

[英]Encryption & Decryption

我想使用SHA1进行加密。 我的代码是

public static string EncryptPassword(string password)
{
    try
    {
        SHA1 sha1 = new SHA1Managed();
        var bytehash = sha1.ComputeHash(new MemoryStream(new ASCIIEncoding().GetBytes(password)));
        var stringhash = new ASCIIEncoding().GetChars(bytehash).ToString();

        return stringhash;
    }
    catch (Exception ex)
    {
        // Some Exception....
    }

    return null;
}

它不起作用。 它只返回System.Char []。 我在这做错了什么

因为这就是ToString()从一个字符数组返回的内容......

尝试

new string(new ASCIIEncoding().GetChars(bytehash));

并选择莫里斯的答案,这是更聪明的;)

使用GetString而不是GetChars

var stringhash = new ASCIIEncoding().GetString(bytehash);

然而,Spender为您的问题写了一条评论,其中包含另一个问题的链接,可以帮助您解决实际问题。 (@Spender感谢此事)。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM