-
Notifications
You must be signed in to change notification settings - Fork 141
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[Feature Request] Support more than 8 characters password #112
Comments
DES crypt... |
第一限制:
|
|
直接在背後轉換會有問題,因為 crypt 現在只吃 8 碼,但登入可以打超過 8 碼(logind 吃 14 碼),在背後轉無法確認超過的部分是不是使用者想要的,如果在轉換的那次不小心 8 位以後輸入錯誤,之後會無法登入。 |
good point. 所以這時要讓使用者再輸入一次確認? 不過這樣大概會讓很多做自動 login 的 app 壞掉 XD |
我覺得可以有個宣導期,過了之後登入強迫改密碼。 |
吾忘 hash 會撞,因此 32–63 實指「無 collisions」所需之 因不愼假設資料結構需向舊相容,我未列入擴大其欄位之方法。
可參考 https://github.com/ccns/dreambbs/blob/9b3e98f9d7/lib/passwd.c#L89。 若可擴大
上述計算顯示暴力逐一破解是 不可行 的(不過忘了寫上結論,還請見諒)。但若破解 6 碼密碼已有一定難度,設定 32–64 碼長的密碼眞的有必要嗎?(不過,由於人造密碼遠弱於隨機密碼,還是需要 > 8 碼密碼以彌補其強度) DreamBBS 之密碼最長 36 (= 由於站臺之 社會角色之差異,DreamBBS 未啟用賬號退場機制,也無法有效籍助 即使密碼長度不變,改用非 DES hashing 仍有一定作用。考慮 DES hashing 每碼僅 lower 7 bits 有效,8 碼密碼至少可有 2⁸ = 256 種 hash 相同的輸入。超出 8 碼的話,hash 相同的輸入爲 223ⁿ⁻⁸ 倍。 另外,由於 |
覺得目前更重要的是如何在 login 成功以後. 對於"不是太簡單的 password"的定義可以再討論. 我的提議是需字數 >= 7 + 含有 non-alnum 的 char. (不論 crypt system 多強~ 只要 user 設定 password 是 1111 這種爛密碼~. 仍然是很容易被破~) |
如果要儘可能維持與連線軟體的相容,又要有滾動式密碼自動更新的可靠驗證的話,以下方式或許可行。 假設 PttBBS 將採用 SHA-256 hashing。
此外,若以上任一階段被執行時,登入後會顯示相應訊息告知使用者說其密碼發生了什麼變化的話,可幫助使用者掌握其密碼的更新情況。 |
Latest NIST password guideline explicitly said don't add complexity restrictions. We need to support longer passwords, not enforcing special characters in the pw. |
問題描述
目前 ptt 只支援最高 8 個字元的密碼,希望能將上限提升至 32 或 64 字元以提升帳號安全性
pttbbs/include/pttstruct.h
Line 49 in 4d56e77
我沒有寫過 C ,但就 code-level 並沒有特別對 8 個字元限制特別說明,我只能猜想或許限制是在儲存層 ?
The text was updated successfully, but these errors were encountered: