生成流程
1:首先明白大概怎麼生成,首先生成隨機你設置的字符串,或者公式
1.1生成字符串之後:mb_strtolower轉成小寫
1.2生成的算數計算出結果
2:在password_hash(1中結果, PASSWORD_BCRYPT, ['cost' => 10])
3:存入session,注意設置過期時間
4:畫圖,並且設置畫圖相關參數,什麼寬高,背景,擾亂的點,字體。畫圖主要函數imagettftext(),
5:畫完之後建立一塊內存,imagepng,輸出,記住一定要imagedestroy銷燬。這樣就出來了
解密流程
1:獲取表單或者ajax提交的輸入數據,
非算數mb_strtolower(表單數據, 'UTF-8');
2:獲取session裏面保存的password_hash的數據
3:在password_verify比對結果成功刪除session
總結:如果自己寫建議還是算了,費時間。不過可以研究一下反向的