什麼是鹽值

計算密碼的雜湊值時,為每位使用者加上的隨機值。使相同的密碼也會得到不同的雜湊值,讓利用事先計算好的雜湊值表格破解變得困難。與雜湊值一起儲存,不需要保密。

日文名稱: ソルト

「鹽值」出現在1領域的2道練習題中(資訊安全基礎等)。

這個名詞所屬的領域: 資訊安全基礎

練習鹽值的題目

網路服務儲存使用者密碼時,先在密碼加上每位使用者各不相同的隨機值(鹽值),再計算雜湊值並儲存。使用鹽值的主要目的是什麼?

  1. A能以鹽值從雜湊值還原原始密碼,以便告知忘記密碼的使用者
  2. B即使有使用者使用相同的密碼,儲存的雜湊值也會不同,使利用事先計算好的雜湊值表格破解變得困難
  3. C縮短雜湊值,以節省資料庫的容量
查看答案與解析

正確答案:B. 即使有使用者使用相同的密碼,儲存的雜湊值也會不同,使利用事先計算好的雜湊值表格破解變得困難

密碼的基本原則是不直接儲存,而是儲存以雜湊函數計算出的雜湊值。登入時計算輸入密碼的雜湊值,再與儲存的值比對。然而若只儲存雜湊值,使用相同密碼的使用者會有相同的雜湊值,只要對照事先計算好常用密碼雜湊值的表格(彩虹表等),就能得知許多密碼。鹽值是為每位使用者隨機產生、加在密碼上的值,與雜湊值一起儲存。鹽值不需要保密,但因為每位使用者的值都不同,相同密碼也會得到不同的雜湊值,事先計算的表格就派不上用場。攻擊者必須針對每位使用者重新計算,所需的工夫大幅增加。

解析中的「鹽值」

出現「鹽值」的題目(2題)

  1. 網路服務儲存使用者密碼時,先在密碼加上每位使用者各不相同的隨機值(鹽值),再計算雜湊值並儲存。使用鹽值的主要目的是什麼?
  2. 儲存密碼時,建議不要直接使用SHA-256這類快速的雜湊函數,而是使用bcrypt或Argon2這類刻意設計成需要較長計算時間的方式。理由是什麼?

半導體、電子電路與資訊計算工具

相關名詞

雜湊函數 GPU 公開金鑰加密 多因素驗證 社交工程 訊息鑑別碼 勒索軟體 最小權限原則 跨網站指令碼(XSS) 零時差攻擊

前往名詞解釋列表