2014-09-23 14 views
-4

公共類使用SecurityModule1 {這alorithm的類型在這個

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); 
} 

}

ü可以解釋我的算法是這樣的安全模塊中使用有關算法

+4

SHA1? http://en.wikipedia.org/wiki/SHA-1 – 2014-09-23 15:48:04

+0

這是一種將字符串編碼爲SHA1格式的方法... – 2014-09-23 15:49:02

+0

它有三件事。將字符串編碼爲unicode,計算其SHA1散列值,並返回SHA1散列的基數64表示形式。 – 2014-09-23 15:51:58

回答

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哈希規範以糾正所謂的缺陷。 2001年發佈的SHA-2與SHA-1哈希函數有很大不同。

2005年,密碼分析師發現了對SHA-1的攻擊,表明該算法可能不夠安全,無法繼續使用。

而且它保持和...