Argon2Parameters

Argon2 雜湊演算法的參數。

JSON 表示法
{
  "hashLengthBytes": integer,
  "hashType": enum (HashType),
  "parallelism": integer,
  "iterations": integer,
  "memoryCostKib": integer,
  "version": enum (Version),
  "associatedData": string
}
欄位
hashLengthBytes

integer

這是必要旗標,所需雜湊長度 (以位元組為單位)。最小值為 4,最大值為 1024。

hashType

enum (HashType)

這是必要旗標,不得為 HASH_TYPE_UNSPECIFIED。

parallelism

integer

這是必要旗標,平行處理作業程度,也稱為執行緒或車道。最少 1 個,最多 16 個。

iterations

integer

這是必要旗標,要執行的疊代次數。最少 1 個,最多 16 個。

memoryCostKib

integer

這是必要旗標,以千字節為單位的記憶體成本。上限為 32768。

version

enum (Version)

Argon2 演算法的版本。如未指定,預設值為 VERSION_13。

associatedData

string (bytes format)

如果提供額外的相關資料,系統會附加至雜湊值,提供額外的安全防護。如果是透過 JSON 指定的值,則為 Base64 編碼的字串。

Base64 編碼字串。

HashType

演算法的類型。

列舉
HASH_TYPE_UNSPECIFIED 未指定雜湊類型。
ARGON2_D Argon2 變化版本 Argon2d。
ARGON2_ID Argon2 變化版本 Argonid。(建議)。
ARGON2_I Argon2 變體版本 Argon2i。

版本

演算法的版本。

列舉
VERSION_UNSPECIFIED 未指定版本。
VERSION_10 舊版本 0x10。
VERSION_13 目前的版本為 0x13。版本的預設值。