IT用語
(
ひよぺん
)
Home
コラム
用語集
About
検索
Ctrl K
Esc
見つかりませんでした
調べたいIT用語を入力してね
Argon2
あるごんつー
セキュリティ
用語集
› 🔒 セキュリティ › Argon2
【あるごんつー】
Argon2 とは?
最終更新:
2026年3月25日
💡 パスワードハッシュの「現在の最適解」
📌 このページのポイント
Argon2d(
GPU
耐性)、Argon2i(サイドチャネル耐性)、Argon2id(両方)の3種類
新規プロジェクトではArgon2idが推奨
CPU
だけでなくメモリも大量消費するため、
GPU
/
ASIC
による並列攻撃に強い
bcrypt
やscryptの後継として位置づけられる
Argon2 vs bcrypt — メモリ硬度の違い
Argon2(推奨)
パスワード
+
Salt
Argon2
CPU時間
メモリ消費
↑ 両方を大量に要求
ハッシュ値
bcrypt(従来)
パスワード
+
Salt
bcrypt
CPU時間のみ
ハッシュ値
Argon2はメモリも大量に使うため、GPU並列攻撃に強い
Argon2のイメージ — メモリ硬度でブルートフォースに対抗
ひよこ
bcrypt
とどう違うの?
ペンギン先生
bcrypt
は
CPU
時間を消費して攻撃を遅くする。Argon2は
CPU
時間に加えてメモリも大量に消費する。
GPU
は計算は得意だけどメモリが限られているから、メモリを大量に要求するArgon2は
GPU
での並列攻撃に特に強い。
bcrypt
の72
バイト
制限もArgon2にはない。新規プロジェクトならArgon2idを選ぼう
ひよこ
3種類あるけどどれを使う?
ペンギン先生
Argon2id一択。Argon2dは
GPU
攻撃に強いけど
サイドチャネル攻撃
に弱い。Argon2iは
サイドチャネル攻撃
に強いけど
GPU
攻撃耐性が低い。Argon2idは前半をArgon2iモードで(サイドチャネル対策)、後半をArgon2dモードで(
GPU
対策)実行するハイブリッド。
OWASP
もArgon2idを推奨しているよ
ひよこ
パラメータ
はどう設定する?
ペンギン先生
3つの
パラメータ
を設定する。①メモリ(推奨: 64MB以上)、②反復回数(推奨: 3回以上)、③並列度(推奨:
CPU
コア数)。
OWASP
推奨のミニマム設定はArgon2id、メモリ19MiB、反復2回、並列度1。
サーバー
のスペックに合わせて「ハッシュ計算に200ms〜500msかかる」設定を見つけるのが目安だよ
ひよこ
実装方法は?
ペンギン先生
各言語に
ライブラリ
がある。
Node.js
ならargon2パッケージ、
Python
ならargon2-cffi、Goならgolang.org/x/crypto/argon2、
PHP
は7.2からpassword_hash()でArgon2idをネイティブサポート。出力形式は$argon2id$v=19$m=65536,t=3,p=4$
ソルト
$ハッシュ で、
パラメータ
と
ソルト
が
ハッシュ値
に含まれるから別途保存する必要がないよ
まとめ:ざっくりこれだけ覚えればOK!
「Argon2」って出てきたら「パスワードハッシュの最新推奨
アルゴリズム
」と思えればだいたいOK!
📖 おまけ:英語の意味
「Argon2」
= アルゴン2
💬 希ガスのArgon(アルゴン)に由来。化学元素から名前を取るのはハッシュアルゴリズムの伝統だよ
🔗 あわせて読みたい
bcrypt とは?
暗号化 とは?
ハッシュ関数 とは?
シェアする
X
URLコピー
← 用語集にもどる