首先我們先介紹下什么是 sha1 ?大理石構件
sha的全稱是:Secure Hash Algorithm(安全哈希算法)主要適用於數字簽名標准 (Digital Signature Standard DSS)里面定義的數字簽名算法(Digital Signature Algorithm DSA)。對於長度小於2^64位的消息,SHA1會產生一個160位的消息摘要。當接收到消息的時候,這個消息摘要可以用來驗證數據的完整性。在傳輸的過程中,數據很可能會發生變化,那么這時候就會產生不同的消息摘要。PHP提供的sha1()函數使用的就是SHA 算法!
在之前介紹的兩篇文章《PHP加密函數—crypt()函數加密》和《PHP加密函數—md5()函數加密》,相信大家對加密有一定了解,在本章中我們將繼續介紹跟MD5()函數類似的sha1()函數算法。
sha1()函數的語法格式如下:
| 1 |
|
| 參數 | 描述 |
| string | 必需。規定要計算的字符串。 |
| raw | 可選。規定十六進制或二進制輸出格式:TRUE - 原始 20 字符二進制格式FALSE - 默認。40 字符十六進制數 |
函數返回一個 40位的十六進制數,如果參數 raw_output 為 true,那么就會返回一個 20位的二進制數,默認是 raw_output 是為 false。
在這里我們要着重的說明下:
sha后面的 1 是阿拉伯數字(123456)里的 1 ,不是字母l(L),很多人都會看成是字母,但是它是阿拉伯數字,這里大家一定要注意,不要搞錯了!
下面是sha1()函數的實例,具體代碼如下:
| 1 2 3 4 5 6 7 |
|
輸出結果為:

下面實例是輸出 sha1() 的結果並對其進行測試:
| 1 2 3 4 5 6 7 8 9 10 |
|
輸出結果為:

下面實例是MD5 和SHA 加密運算對比,具體帶代碼如下:
| 1 2 3 4 5 6 7 |
|
輸出結果為:

在PHP中的數據加密函數的主要三個 crypt()、md5()以及sha1()就介紹完了,下面的文章我們將介紹PHP加密庫:Mcrypt和Mhash的兩個擴展庫!
