用語集に戻る
プログラミング基礎中級

ソルト

ソルト

一言で言うと

ユーザー毎のランダム値で同パスを別ハッシュ化。

もう少し詳しく

一言で言うと

ユーザー毎のランダム値で同パスを別ハッシュ化。

もう少し詳しく

ソルトとは、パスワードをハッシュ化する前にランダムな文字列を付加する手法です。同じパスワードでもユーザーごとに異なるソルトを使うことで、ハッシュ値が必ず異なるものになります。これによりレインボーテーブル攻撃を無効化できます。ソルトはハッシュ値と一緒にデータベースに保存され、ログイン時の検証にも使われます。bcrypt や Argon2 といったアルゴリズムはソルト生成とハッシュ化を一体化しており、現在のパスワード管理のベストプラクティスとして広く採用されています。

実務でどう使うか

  • ユーザー登録時 ── アカウント作成時にランダムなソルトを生成し、パスワードと組み合わせてハッシュ化して保存します

  • ログイン検証時 ── 保存済みのソルトを取り出し、入力されたパスワードと合わせて再ハッシュして一致を確認します

  • アルゴリズム選定 ── bcrypt・Argon2・scrypt などソルトを内包したアルゴリズムを使うのが現在の標準的な実務慣行です
  • 関連する章

    Ch132 で詳しく学べます。

    関連する用語

    この用語を学べるコース

    この用語を実際に使ってみよう

    チョットデキルなら、5分のレッスンで実際にコードを書いて学べます。

    コース一覧を見る