2011-01-20 196 views

回答

4

無論他們喜歡什麼字符。被告知你的密碼太安全了,簡直令人討厭。

+1

當然,一定要用一些md5,sha1和其他魔法來散列它。當網站限制我的角色時,它確實讓我氣憤,因爲他們這樣做的唯一真正原因是爲了保護自己免受SQL注入,如果他們沒有清理存儲在數據庫中的純文本密碼。我真的希望他們沒有存儲我的密碼明文。所以他們要麼不安全,要麼迫使我不安全。 – 2011-01-20 07:11:33

0

從理論上講,需要纔有。但從編程方便的角度來看,我知道'不應該被允許(mysql注入等,但如果代碼編寫正確,它應該不成問題)。

0

取決於您需要多少安全。我會說大寫和小寫字母,數字和大多數符號(所有的頂行符號,以及問號,逗號,句號以及其他幾個符號)。

您應該儘可能地不受限制。讓人們使用他們想要的角色。

0

他們喜歡的任何字符,以及他們喜歡的任何長度(除非可能不超過您的PHP Post限制)。在一個好的密碼系統中,你只存儲散列,並且在登錄時,你也只發送散列。所以這應該不重要。

即使您存儲了密碼,您也應該轉義您放入數據庫的任何字符串(mysql_real_escape_string),因此任何字符都可以並且應該被允許。如果您存儲了實際的密碼,您可以將長度限制爲字段大小,在這種情況下,我認爲這應該至少爲200個字符。

0

我想你應該知道你正在使用什麼字符集,並且僅限於此。所以如果你不使用UTF8,但是ISO-8859-1,你不希望他們寫多字節字符。

0

標準en-US keybaord上的任何東西都可以。

0

您可以允許在密碼中插入任何字符。 請確保您驗證輸入以防止MySQL注入 - 如果不使用加密。建議至少使用MD5()或SHA1()加密密碼。

0

我認爲應該允許輸入他們想要的每一個字母。但是,您應該強制使用密碼的適當長度以使其更安全。如果可以,我還會建議您使用聯合登錄:

  • openid:lightopenid是一個非常簡單的庫。
  • 謝謝連接
  • Twitter的單點登錄

這些選擇都將是這樣securer