私は MPI を使用して課題用のパスワード クラッカーを作成していますが、これまで使用したことのない python を使用することにしました。私が行っているのは、パスワードが 5 文字の長さで文字のみであると想定しているだけで複雑ではありません。プログラム内でパスワードをハードコードして比較します。
今、私はそのまま保存してpassword = list("aaamm")
いて、クラッカーと呼ばれるメソッドを持っています
cracker(password, alphabet, thispass, position):
password = original password, alphabet = map(chr, range(97, 123))
そして、このパスは最初は等しい =list("aaaaa")
私はPythonを使用したことがないので、チェックするアルゴリズムを開発するのに苦労しています。thispass[0] == password[0]
それらが等しい場合は、次の位置に移動します this pass[1] == password[1]
、そうでない場合は、「a」を「b」にインクリメントして比較しますpassword[0]
.
MPIプロセス用のクラッカー関数にも位置があります。最初のプロセスが「a」から「m」までをチェックしている間、2つのプロセスが位置(= 0、つまりこのパスの「a」)で動作します2 つ目は "n" から "z" までです。
プログラムの反対側で、クラッカー関数を呼び出す場所からアルファベットのサイズを既に分割しています。
私の主な問題は、比較mypass[0]
するpassword[0]
ことです。理想的にはこれをループ内に配置するのが良いでしょうが、「a」から始まり、アルファベットの範囲が何であれ、ループを作成する方法を決定できません。
これが初めてなので、上のすべてが乱雑である場合はご容赦ください。