首先我們先介紹下什么是 sha1 ?
sha的全稱是:Secure Hash Algorithm(安全哈希算法)主要適用于數(shù)字簽名標(biāo)準(zhǔn) (Digital Signature Standard DSS)里面定義的數(shù)字簽名算法(Digital Signature Algorithm DSA)。對(duì)于長度小于2^64位的消息,SHA1會(huì)產(chǎn)生一個(gè)160位的消息摘要。當(dāng)接收到消息的時(shí)候,這個(gè)消息摘要可以用來驗(yàn)證數(shù)據(jù)的完整性。在傳輸?shù)倪^程中,數(shù)據(jù)很可能會(huì)發(fā)生變化,那么這時(shí)候就會(huì)產(chǎn)生不同的消息摘要。PHP提供的sha1()函數(shù)使用的就是SHA 算法!
在之前介紹的兩篇文章《PHP加密函數(shù)—crypt()函數(shù)加密》和《PHP加密函數(shù)—md5()函數(shù)加密》,相信大家對(duì)加密有一定了解,在本章中我們將繼續(xù)介紹跟MD5()函數(shù)類似的sha1()函數(shù)算法。
sha1()函數(shù)的語法格式如下:
string sha1 ( string $str [, bool $raw_output = false ] )
| 參數(shù) | 描述 | string | 必需。規(guī)定要計(jì)算的字符串。 | raw | 可選。規(guī)定十六進(jìn)制或二進(jìn)制輸出格式:TRUE - 原始 20 字符二進(jìn)制格式FALSE - 默認(rèn)。40 字符十六進(jìn)制數(shù) |
函數(shù)返回一個(gè) 40位的十六進(jìn)制數(shù),如果參數(shù) raw_output 為 true,那么就會(huì)返回一個(gè) 20位的二進(jìn)制數(shù),默認(rèn)是 raw_output 是為 false。
在這里我們要著重的說明下:
sha后面的 1 是阿拉伯?dāng)?shù)字(123456)里的 1 ,不是字母l(L),很多人都會(huì)看成是字母,但是它是阿拉伯?dāng)?shù)字,這里大家一定要注意,不要搞錯(cuò)了!
下面是sha1()函數(shù)的實(shí)例,具體代碼如下:
<?phpheader("Content-Type:text/html; charset=utf-8");$str = " ";echo "字符串:".$str."<br>";echo "TRUE - 原始 20 字符二進(jìn)制格式:".sha1($str, TRUE)."<br>";echo "FALSE - 40 字符十六進(jìn)制數(shù):".sha1($str)."<br>";?>輸出結(jié)果為:

下面實(shí)例是輸出 sha1() 的結(jié)果并對(duì)其進(jìn)行測試:
<?phpheader("Content-Type:text/html; charset=utf-8");$str = " ";echo sha1($str);if (sha1($str) == "b1d5e6240057f21930892531def6597f135252ca "){ echo "<br>I love !"; exit;}?>輸出結(jié)果為:

下面實(shí)例是MD5 和SHA 加密運(yùn)算對(duì)比,具體帶代碼如下:
<?phpheader("Content-Type:text/html; charset=utf-8");$str = " ";echo "MD5的加密結(jié)果:".md5($str)."<br>";echo "<br>";echo "sha1的加密結(jié)果:".sha1($str)."<br>";?>輸出結(jié)果為:

在PHP中的數(shù)據(jù)加密函數(shù)的主要三個(gè) crypt()、md5()以及sha1()就介紹完了,下面的文章我們將介紹PHP加密庫:Mcrypt和Mhash的兩個(gè)擴(kuò)展庫!
【相關(guān)推薦】
1. 相關(guān)專題推薦:《PHP加密函數(shù)》
2.PHP加密函數(shù)—crypt()函數(shù)加密用法實(shí)例
3.PHP加密函數(shù)—md5()函數(shù)加密的實(shí)例用法
4.PHP加密技術(shù)視頻教程
以上就是PHP加密函數(shù)—sha1()函數(shù)加密的實(shí)例用法的詳細(xì)內(nèi)容,更多請(qǐng)關(guān)注 其它相關(guān)文章!
鄭重聲明:本文版權(quán)歸原作者所有,轉(zhuǎn)載文章僅為傳播更多信息之目的,如作者信息標(biāo)記有誤,請(qǐng)第一時(shí)間聯(lián)系我們修改或刪除,多謝。
|
新聞熱點(diǎn)
疑難解答
圖片精選