公共类SecurityModule1 {
public string CreateHash(string strSource)
{
byte[] bytHash;
UnicodeEncoding uEncode = new System.Text.UnicodeEncoding();
byte[] bytSource = uEncode.GetBytes(strSource);
SHA1CryptoServiceProvider sha1 = new SHA1CryptoServiceProvider();
bytHash = sha1.ComputeHash(bytSource);
return Convert.ToBase64String(bytHash);
}
}
你可以解释我在这个安全模块中使用哪种算法并解释该算法
答案 0 :(得分:0)
通过SHA1CryptoServiceProvider在Google中进行的简单搜索将为您提供答案。参考here。
使用加密服务提供程序(CSP)提供的实现计算输入数据的SHA1哈希值。
关于SHA1 here。
SHA-1产生160位(20字节)的哈希值。 SHA-1哈希值通常呈现为十六进制数,长度为40位。
SHA代表"安全哈希算法"。四种SHA算法的结构不同,分别命名为SHA-0,SHA-1,SHA-2和SHA-3。 SHA-0是1993年发布的名为" SHA"的160位散列函数的原始版本:许多应用程序都没有采用它。发布于1995年,SHA-1与SHA-0非常相似,但改变了原始SHA哈希规范以纠正所谓的弱点。 SHA-2发布于2001年,与SHA-1哈希函数有很大不同。
2005年,密码分析师发现对SHA-1的攻击表明该算法可能不够安全,无法继续使用。
它一直持续......