在數位時代,密碼仍然是使用最廣泛的驗證方式之一。但是您知道嗎?許多傳統的密碼政策其實是適得其反的?
美國國家標準與技術研究院 (NIST) 的 SP 800-63B-4 提供了密碼安全性的最新指導,並且其中包含推翻過去「常識」的內容。(長久以來專家們的常識……)。本文將以通俗易懂的語言,為企業中負責以密碼為基礎的使用者驗證系統的人員,以及負責決定此類政策的人員和管理階層,說明這份重要文件的核心內容。
.兩類密碼
。NIST SP 800-63B-4 將密碼分為兩種類型。
1. 密碼 在伺服器端驗證的秘密資訊。在登入時傳送至伺服器,並集中驗證。
.2. 啟動秘密在裝置本機驗證的秘密資訊。例如,智慧型手機的解鎖密碼,不會傳送到伺服器。
.推翻傳統「常識」的新要求
。 ❌ 不該做的事.不強制定期更改密碼
- <!-- /wp:list-item -->
- 理由:頻繁的變更會導致使用者選擇可預測的弱密碼 。
- 不再建議每 90 天更改一次密碼。
- 只有在有侵權證據的情況下,才可要求變更。
<!
不強加複雜性要求
。 .- <!-- wp:list-item -->
- 不得強制執行「永遠包含大小楷字母、數字和符號」等要求 。 <!
- Stated to be rather harmful .
- 理由:這樣的要求會導致使用者使用可預期的模式,例如 “Password1!” 。
無密碼提示
- <!-- /wp:list-item -->
- “What is your mother maid name?
- 這些都是攻擊者寶貴的資訊來源。或者說,這是多處地方都知道的資訊的可能性很高,因此,如果他們可以用這樣的東西重設認證手段,他們就會變成瞎子。
- 單一元素驗證:最少 15 個字元 。
- 單一元素驗證:最少 15 個字元 。
- 多因素認證的一部分:最少 8 個字元 。
- 最大長度:應允許超過 64 個字元 。
- “What is your mother’s maiden name?” (您母親的娘家姓是什麼?)和其他提示和安全問題是禁止的。
1. 密碼長度
.- <!-- /wp:list-item -->
注意:目前的 ISO/IEC 27002 包含一項聲明,其大意是字典中的字詞組合應該在 5.17 使用者責任中刪除 (C) 2)。這是我的疏忽。我必須在下一版中消除它們…
. 2. 字元類型的彈性 1.- <!-- wp:list-item -->
- 接受所有可列印的 ASCII 字元和空格 。
- 這可讓使用者建立易記、強大的密碼 。
- Unicode 字元 (日文、表情符號等) 也應該支援
註解:老實說,我認為這有點難以接受,因為這會帶來 Unicode 標準化的問題。(順帶一提,進行 NFC 正規化應該是好事)。 .
檢驗員必須針對包含下列內容的區塊清單進行檢查:
- <!-- /wp:list-item -->
- 特定於上下文的資訊,例如服務名稱或使用者名稱 。 通用密碼,如 “123456 「或 」password”。
- 先前外洩的密碼 字典中的字詞 <!
4.主動支援密碼管理器
- <!-- wp:list-item -->
- 允許使用密碼管理器(必填)
- 支援自動填寫功能
注意:這是使用密碼管理器的必要條件。最近日本的網站泛濫,連這點都做不到,是怎麼了…
. 啟用貼上功能
注意: 同上。 理由:密碼管理器允許使用者為每個服務使用強大、獨特的密碼
注意:不僅如此,許多密碼管理器還會驗證提交的 URL。這對於抵抗網路釣魚非常重要。
- <!-- wp:list-item -->
- 提供密碼顯示選項 (打字時可見) <!
- This reduces typing errors and user frustration
Note: This is important mainly on smartphones.
伺服器端需求:安全儲存
。對於密碼的儲存也有嚴格的要求:
Requirements
- <!-- wp:list-item -->
- 使用適當的密碼雜湊方案 。
- 使用適當的密碼雜湊方案 。 至少使用 32 位鹽值。
- 同時儲存鹽值和哈希值 。
- Stored in a format resistant to offline attacks .
建議
. .- <!-- /wp:list-item -->
- 將此私人密碼匙與散列密碼分開儲存 。
- 可以完全是數字 。
- Limit consecutive failed attempts to 10 or less . <!
- 常見 PIN 碼(例如 123456)的建議封鎖清單實作 在 AAL3 層級,必須在硬體保護環境(例如安全元件、TPM、TEE)中進行驗證。
- 現有的密碼政策需要檢討 。
- 實作區塊列表功能 確保密碼管理器支援。 重組使用者教育
- 更多可記憶的密碼選擇 。
- 建議使用密碼管理器 。
- 建議使用密碼管理器 。
- 建議使用密碼管理器 。 免於不必要的定期變更。
- 更好的用戶體驗 。
- 長度決定強度 – 長度優先於複雜度 。
- 不需要定期變更 – 除非有證據顯示侵權,否則不會強制變更 。
- Utilise blocklist – 主動封鎖已知的弱密碼 。 推薦使用密碼管理器 – 協助使用者使用技術。 專注於使用者體驗 – 安全性與可用性可以相輔相成。
- 使用僅驗證者知道的私人金鑰的額外加密操作。
啟動密碼 (PIN) 要求
對於裝置中使用的秘密也有要求,例如智慧型手機的解鎖密碼:
- <!-- /wp:list-item -->
- 最少 4 個字元 (建議最少 6 個字元)。
實施影響
這些要求同時影響服務供應商和使用者:
適用於服務供應商
- <!-- wp:list-item -->
For the user
- <!-- wp:list-item -->
摘要
<!NIST SP 800-63B-4 提出了一套以科學為基礎的密碼政策,強調安全性與可用性之間的平衡。重點包括:
- <!-- wp:list-item -->
密碼將繼續在數位身分的管理中扮演重要的角色,透過遵循 NIST SP 800-63B-4 中的指引,您可以建立一個更安全、更方便使用的系統。
您的組織或服務的密碼政策是否符合這些最新標準?現在可能是檢討的時候了。
(此外,我正計劃製作一個獨立的非簡短 YouTube 視訊,提供更多的技術說明。請繼續收看)
最後我沒辦法說得太詳細,但我做了一個 YouTube 影片。請看一下。(我也認為在現場串流或其他方式接受提問時做會比較好,但我在 @ West Coast 時差有點大)