Pi → Ci → Pi+1 → Ci+1 → ・・・→ Ci+m
このようなチェーンを複数作り,チェーンの先頭と末尾だけを記録した表がレインボーテーブルである. ハッシュ値からパスワードを得るには,ターゲットとなるハッシュ値を還元関数とハッシュ関数に次々に適用していき,テーブル内のハッシュ値とマッチするまでチェインを探索する.hash = H (password || salt) ("||" は文字列結合演算子)
ソルトを利用すると,同じパスワードでもハッシュ値は異なるようにでき,またパスワードを長くしたのと同じ効果が得られる.