關務人員考試關務四等-資訊處理(選試英文)科別計算機概要114 年第 23 題單選題
UNIX 或 Linux 作業系統在帳號登入密碼驗證時,會使用到一個稱為 salt 的數值。關於 salt 的敍述,下列何者錯誤?
A可以增加駭客破解密碼需要的時間
B可以縮短驗證密碼是否正確的時間正確答案
C不同帳號使用相同密碼時,只要 salt 值不相同,作業系統儲存使用者密碼的雜湊值(hashed value)就會不相同
Dsalt 值是直接儲存於檔案中,未經過加密處理
B正確答案
salt 是加到密碼後再雜湊的隨機值,目的是防彩虹表攻擊,不會加快驗證速度。
為什麼答案是 B
錯誤(即題目要選的答案)。salt 的目的是「增加安全性」,不是加快驗證。驗證時仍需把 salt + 密碼做雜湊再比對,速度不會變快,反而多一個串接動作。
載入中…
完整詳解
Pro · 無限重點 salt 是加到密碼後再雜湊的隨機值,目的是防彩虹表攻擊,不會加快驗證速度。
反向題找錯誤:salt 是為了「增加安全」而非「加快速度」,B 直接秒殺。
逐選項分析
A✕
正確。加了 salt 後,駭客無法使用預先算好的彩虹表(rainbow table)直接比對,必須針對每個 salt 重新計算,大幅增加破解時間。
B✓ 正確
錯誤(即題目要選的答案)。salt 的目的是「增加安全性」,不是加快驗證。驗證時仍需把 salt + 密碼做雜湊再比對,速度不會變快,反而多一個串接動作。
C✕
正確。即使兩個帳號密碼相同,只要 salt 不同,hash(salt+password) 結果就不同,儲存的雜湊值也不同,駭客無法從雜湊值相同推斷密碼相同。
D✕ 陷阱
正確。salt 本來就是明文儲存在 /etc/shadow 中(與雜湊值一起),不需加密。因為 salt 的作用不是保密,而是讓每個帳號的雜湊獨一無二,防止預先計算攻擊。
UNIX/Linux 密碼儲存機制
| 項目 | 說明 | 儲存位置 | 是否加密 |
|---|
| 密碼明文 | 使用者輸入的原始密碼 | 不儲存 | — |
| salt | 隨機字串,每帳號不同 | /etc/shadow | 明文 |
| 雜湊值 | hash(salt+password) | /etc/shadow | 單向雜湊 |
B 選項把「增加安全」偷換成「縮短驗證時間」。salt 的設計哲學是犧牲一點點計算成本換取大量安全性,驗證時反而要多做字串串接。考生若只記得「salt 很好用」容易誤選。