PHP中的內(nèi)置加密函數(shù)有哪些?很多新手對此不是很清楚,為了幫助大家解決這個難題,下面小編將為大家詳細(xì)講解,有這方面需求的人可以來學(xué)習(xí)下,希望你能有所收獲。
Md5()加密算法
方式: 單向加密
語法: md5(string $str [, bool $raw_output = false])
$str:原始字符串
$raw_output:如果可選的raw_output被設(shè)置為true, 那么md5報文摘要將以16字節(jié)長度的原始二進(jìn)制格式返回. 返回以32位字符十六進(jìn)制數(shù)字形式返回散列值
md5二次加密:md5(md5($string, true))
Crypt()加密算法
方式: 單向加密
語法: string crypt(string $str[, string $salt]) , 返回一個基于標(biāo)準(zhǔn)UNIX DES算法或系統(tǒng)上其它可用的替代算法的三列字符串
$str: 需要加密的明文
$salt: 加密時的干擾串,是編碼更安全
注意: 如果加密時沒有加上這個$salt參數(shù), 將隨機(jī)生成一個干擾串, 否則刷新加密秘文不變
算法常量:
[CRYPT_SALT_LENGTH]
默認(rèn)的加密長度。使用標(biāo)準(zhǔn)的 DES 加密,長度為 2
[CRYPT_STD_DES]
基于標(biāo)準(zhǔn) DES 算法的散列使用 "./0-9A-Za-z" 字符中的兩個字符作為鹽值。在鹽值中使用非法的字符將導(dǎo)致 crypt() 失敗。
[CRYPT_EXT_DES]
擴(kuò)展的基于 DES 算法的散列。其鹽值為 9 個字符的字符串,由 1 個下劃線后面跟著 4 字節(jié)循環(huán)次數(shù)和 4 字節(jié)鹽值組成。它們被編碼成可打印字符,每個字符 6 位,有效位最少的優(yōu)先。0 到 63 被編碼為 "./0-9A-Za-z"。在鹽值中使用非法的字符將導(dǎo)致 crypt() 失敗。
[CRYPT_MD5]
MD5 散列使用一個以 $1$ 開始的 12 字符的字符串鹽值。
[CRYPT_BLOWFISH]
Blowfish 算法使用如下鹽值:“$2a$”,一個兩位 cost 參數(shù),“$” 以及 64 位由 “./0-9A-Za-z” 中的字符組合而成的字符串。在鹽值中使用此范圍之外的字符將導(dǎo)致 crypt() 返回一個空字符串。兩位 cost 參數(shù)是循環(huán)次數(shù)以 2 為底的對數(shù),它的范圍是 04-31,超出這個范圍將導(dǎo)致 crypt() 失敗。
CRYPT_SHA256
SHA-256 算法使用一個以 $5$ 開頭的 16 字符字符串鹽值進(jìn)行散列。如果鹽值字符串以 “rounds=<N>$” 開頭,N 的數(shù)字值將被用來指定散列循環(huán)的執(zhí)行次數(shù),這點(diǎn)很像 Blowfish 算法的 cost 參數(shù)。默認(rèn)的循環(huán)次數(shù)是 5000,最小是 1000,較大是 999,999,999。超出這個范圍的 N 將會被轉(zhuǎn)換為最接近的值。
CRYPT_SHA512
SHA-512 算法使用一個以 $6$ 開頭的 16 字符字符串鹽值進(jìn)行散列。如果鹽值字符串以 “rounds=<N>$” 開頭,N 的數(shù)字值將被用來指定散列循環(huán)的執(zhí)行次數(shù),這點(diǎn)很像 Blowfish 算法的 cost 參數(shù)。默認(rèn)的循環(huán)次數(shù)是 5000,最小是 1000,較大是 999,999,999。超出這個范圍的 N 將會被轉(zhuǎn)換為最接近的值。
例:
if(CRYPT_MD5){ echo "MD5加密:".crypt('something','$1$somethin$'); }
網(wǎng)站標(biāo)題:PHP中的內(nèi)置加密函數(shù)有哪些-創(chuàng)新互聯(lián)
地址分享:http://www.rwnh.cn/article24/jhhje.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站設(shè)計、云服務(wù)器、網(wǎng)站收錄、品牌網(wǎng)站建設(shè)、定制開發(fā)、動態(tài)網(wǎng)站
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)
猜你還喜歡下面的內(nèi)容