PHP加密函式crypt常量

2021-08-26 03:07:10 字數 1184 閱讀 4373

在不同的作業系統上,crypt函式可能具有不同的行為,某些作業系統支援多種演算法型別。在安裝php時會檢查當前系統什麼演算法可用以及使用什麼演算法,確切的演算法依賴於呼叫函式時salt引數的格式和長度。安裝php時可以設定一些相關的常量。

常量說明

crypt_salt_length

預設的加密長度。使用標準的des加密,長度為 2。

crypt_std_des

php5.3起,標準的基於des加密有2個字元的salt,來自字母表"./0-9a-za-z"。在salt中使用無效的字元將導致函式呼叫失敗。

crypt_ext_des

php5.3起,擴充套件的基於des加密有9個字元的salt,由1個下劃線,後邊跟4個位元組的迭代次數和4個位元組的salt組成。這些被編碼為可列印字元,每個字元6位,最低有效字元優先。值0到63被編碼為"./0-9a-za-z"。

crypt_md5

php5.3起,md5加密有12個字元的salt,以$1$開始。

crypt_blowfish

php5.3起,blowfish加密有乙個以$2a$開始的salt,乙個兩位數的cost引數"$",以及來自字母表"./0-9a-za-z" 中的22個字元。使用字母表以外的字元將導致函式返回乙個長度為0的字串。"$"引數是以2為底的基於blowfish雜湊演算法的迭代次數的對數,必須在04-31範圍內。在該範圍以外的值將導致函式呼叫失敗。使用此演算法將導致要進行加密的字串被擷取為長度最大為72的字串。php5.3.7起,新增$2x$或$2y$開始的salt,用來處理潛在的高位攻擊。

crypt_sha256

php5.3.2起,sha-256 加密有16個字元的salt,以$5$開始。如果salt字串以"rounds=$" 開始,n的數字值用於表示雜湊迴圈被執行的次數,與blowfish中的cost引數類似。預設的迴圈次數是5000,最小值是1000,最大值是999999999。任何超出這個範圍的n的值將會轉換成最接近的邊界值。

crypt_sha512

php5.3.2起,sha-512 加密有16個字元的salt,以$6$開始。 如果salt字串以"rounds=$" 開始,n的數字值用於表示雜湊迴圈被執行的次數,與blowfish中的cost引數類似。預設的迴圈次數是5000,最小值是1000,最大值是999999999。任何超出這個範圍的n的值將會轉換成最接近的邊界值。

Crypt加密函式簡介(C語言)

定義函式 char crypt const char key,const char salt 函式說明 crypt 是個密碼加密函式,它是基於data encryption standard des 演演算法。crypt只適用於密碼的使用,不適合用於資料加密。crypt 將引數key所指的字串加以加...

Crypt加密函式簡介(C語言)

定義函式 char crypt const char key,const char salt 函式說明 crypt是個密碼加密函式,它是基於data encryption standard des 演演算法。crypt只適用於密碼的使用,不適合用於資料加密。crypt 將引數key所指的字串加以加密...

php加密函式

計應134 實驗班 周露玲 php中能對資料進行加密的函式只要有crypt md5 和shal 還有加密擴充套件庫mcrypt和mash。crypt 函式 crypt 函式可以完成單向加密功能,語法如下 string crypt string str string salt crypt 接受兩個引數...