我使用以下命令對進行加密,然後將密碼存儲在MySQL db中。PHP/MySQL:爲加密密碼選擇哪種數據類型(bcrypt,最多100個字符)
目前我已將密碼限制爲最大長度。 20個字符,因爲我不確定是否由於加密輸出,更長的密碼可能會導致問題。
在PHP中我使用的加密如下:
$pw = password_hash($_POST["pw"], PASSWORD_BCRYPT);
密碼是在客戶端trimmend傳遞之前。
有人能告訴我,如果CHAR(60)
足以覆蓋與最多100個字符(數字,大寫和小寫字母,特殊字符)的密碼?
此外,是否有一個共同的最大。應該爲密碼設置字符限制 - 而不會增加漏洞? 我瞭解到有些人一定想使用較長的密碼,如短語等。
本手冊的有答案http://php.net/manual/en/function.password-hash.php –
感謝。所以基於此,我應該將其更改爲CHAR(255),然後可以允許密碼最多爲100個字符,這是正確的嗎? – TaneMahuta
不,它不是.... php文件說使用varchar(255),你不想用char這樣的東西 –