John the Ripper
Johnが使用できる攻撃の種類の1つは辞書攻撃である。これは、テキスト文字列のサンプルを取得し、検査対象のパスワードと同じ形式で暗号化して、その出力を検査対象のパスワードと比較する。また、辞書の単語に様々な変更を加えて、これを試すこともできる。これらの変更の多くは、関連するプレーンテキストを変更し、ハッシュ値に対して変化を確認するJohnのシングルアタックモードでも使用される。
Johnは総当たり攻撃も提供している。この攻撃では、プログラムは全てのプレーンテキストに対して暗号学的ハッシュ関数を適用して、入力されたハッシュ値と比較する。Johnは文字の出現頻度を格納したテーブルを使用して、より頻繁に使用される文字を含むプレーンテキストを最初に試す。この攻撃は、辞書の単語リストにないパスワードを解読する場合に役に立つが、実行には長い時間が必要になる。