首先我們先介紹下什么是 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()函數的語法格式如下:
string sha1 ( string $str [, bool $raw_output = false ] )
參數 | 描述 | string | 必需。規定要計算的字符串。 | raw | 可選。規定十六進制或二進制輸出格式:TRUE - 原始 20 字符二進制格式FALSE - 默認。40 字符十六進制數 |
函數返回一個 40位的十六進制數,如果參數 raw_output 為 true,那么就會返回一個 20位的二進制數,默認是 raw_output 是為 false。
在這里我們要著重的說明下:
sha后面的 1 是阿拉伯數字(123456)里的 1 ,不是字母l(L),很多人都會看成是字母,但是它是阿拉伯數字,這里大家一定要注意,不要搞錯了!
下面是sha1()函數的實例,具體代碼如下:
<?phpheader("Content-Type:text/html; charset=utf-8");$str = " ";echo "字符串:".$str."<br>";echo "TRUE - 原始 20 字符二進制格式:".sha1($str, TRUE)."<br>";echo "FALSE - 40 字符十六進制數:".sha1($str)."<br>";?>
輸出結果為:
下面實例是輸出 sha1() 的結果并對其進行測試:
<?phpheader("Content-Type:text/html; charset=utf-8");$str = " ";echo sha1($str);if (sha1($str) == "b1d5e6240057f21930892531def6597f135252ca "){ echo "<br>I love !"; exit;}?>
輸出結果為:
下面實例是MD5 和SHA 加密運算對比,具體帶代碼如下:
<?phpheader("Content-Type:text/html; charset=utf-8");$str = " ";echo "MD5的加密結果:".md5($str)."<br>";echo "<br>";echo "sha1的加密結果:".sha1($str)."<br>";?>
輸出結果為:
在PHP中的數據加密函數的主要三個 crypt()、md5()以及sha1()就介紹完了,下面的文章我們將介紹PHP加密庫:Mcrypt和Mhash的兩個擴展庫!
【相關推薦】
1. 相關專題推薦:《PHP加密函數》
2.PHP加密函數—crypt()函數加密用法實例
3.PHP加密函數—md5()函數加密的實例用法
4.PHP加密技術視頻教程
以上就是PHP加密函數—sha1()函數加密的實例用法的詳細內容,更多請關注 其它相關文章!
鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯系我們修改或刪除,多謝。
新聞熱點
疑難解答