【パスワード解析】Windows環境でHashcatにCPUとGPUを認識させてみた!-AMD Ryzen 7530U-

ノウハウ

【パスワード解析】Windows環境でHashcatにCPUとGPUを認識させてみた!-AMD Ryzen 7530U-

YouTubeの動画撮影を行うため、HashcatにGPUだけでなく、CPUも認識させてみました!

【パスワード解析】Windows環境でHashcatにCPUとGPUを認識させてみた!-AMD Ryzen 7530U-

実際にCPUとGPUを認識させるのは、単純なインストールなので手順は簡単ですが、予想よりもメンドかった…
前回の動画を作る前より、HashcatにCPU・GPUを認識させる手順は、ネット検索をして知っておりました。
前回の動画でこの内容を設けなかったのは、私がHashcatをインストールした際、
私の環境では既にGPUが認識していたので、前回の動画では特に取り上げませんでした。
たぶん、動画視聴者の環境でも、最新のHashacatをインストールした際、
GPUが認識されると思います。

今回、動画ではあえてOpenCLをインストールし、CPUを認識させましたが、
動画で語っている通り、GPUが認識しているのであればインストールしなくてもOKです。
※別途、グラフィックボードを買ったのであれば、必要になるかもです。
そういえば昔、Hashcatは後述する三つのソフトウェアをインストールしないと、
動作しない過去があったですね…
これは昔書かれたサイトを見ると、分かります。
そういう意味では、今はHashcat本体だけで良いのでラクな時代になりましたね。

私が使っているPC環境は下記です。

・私のPCスペック
CPU:AMD Ryzen™ 5 7530U
CPUの内蔵GPU:AMD Radeon™ Graphics
         GPUコア数:7
         グラフィックス周波数:2000MHz
メモリ:DDR4 16GB

YouTube動画制作の際、Hashcatをインストールしただけでしたが、
何もインストールしなくとも、CPUに内蔵しているGPUだけ認識しておりました。

HashcatにCPU・GPUを認識させるには、何のソフトウェアが必要?

私の使っているCPUは、AMD Ryzenシリーズなのですが、ネット検索すると割とすぐ出てきました。
サイトには、「HashcatにGPUを認識する方法」と記載があったのですが、
私の環境では、「①NVIDIA Driverのインストール」の段階で、
IntelのCPUじゃないので、インストール出来ない…と表示されました…
サイトに書いてあったCPUもAMD Ryzenなんだけどな…

①NVIDIA Driverのインストール ←ここで挫折(インストールできないじゃん)…
②CUDA Toolkitのインストール
③OpenCL Runtime for Intelのインストール

それでも、めげずにどうにか出来ないかと思った結果、下記を試しました。
失敗した時と違うのは、上記の①だけです。
今度は、①AMD Radeon™ HD 7530M用のドライバーのインストールが完了したので、
②・③もインストールしました。
前述の通り、MD Ryzen5のCPUを使用しておりますが、Hashcatのホームページを見ると、
AMD社製のCPUでもIntelのOpenCLのソフトウェアが必要との事でした。
※Intelって書いてあると、AMDのCPUって認識するの?って思いますよね…

③OpenCL Runtime for Intelは、CPUで有名なIntel社が提供しているのですが、
ダウンロードに会員登録が必要なので、ちょっと面倒くさいです…
ま、会員登録したけどさ…

でもって今度は全部、インストール成功しましたね。

①AMD Radeon™ HD 7530M用のドライバー
 AMD Radeon™ グラフィックス・ドライバー
https://www.amd.com/ja/support

②CUDA Toolkit
https://developer.nvidia.com/cuda-downloads

③OpenCL Runtime for Intel
https://www.intel.com/content/www/us/en/developer/articles/tool/opencl-drivers.html

インストールが完了したので、Hashcatの状態を再確認してみましょう!
確認コマンドは、「Hashcat -I」です。

すると今度は、HashcatがCPUとGPUの両方を認識しているではありませんか(成功)!

CPUとGPUの性能計測!どっちが速い?

無事にHashcatにCPUとGPUを認識する事が出来たので、それぞれのベンチマークを計測してみましょう。
すると、下記の結果でした!

 ・Device #1=GPU(CPUの内蔵GPU)
   1秒間=約25億回
 ・Device #2=CPU
   1秒間=約7億回

圧倒的にGPUの方がベンチマークが高いですね!
その差、約3.5倍、GPUの方が速いです!

YouTube動画でも解説しましたが、GPUは特殊コアをいくつも内蔵しており、
並列処理が得意なので、パスワード解析のような何度も同じ処理をする場合、
CPUよりもベンチマークが高い事があります。
私の環境では、CPUの内蔵GPUを使っておりますが、
PCショップで市販されている高額なグラフィックボードを使った場合、数倍~数十倍のベンチマークが出たりします。
とはいえ、Hashcatのためにわざわざ高額なグラフィックボードを買う人は、稀だと思います。

結論としては、「GPUの方が速い!」ので、
皆さんの環境でHashcatが最初からGPUを認識しているのであれば、
今回の手順の通り、OpenCLをインストールする必要は無いと思います。
私は、HashcatがCPUとGPUを認識させた後、
①AMD Radeon™ HD 7530M用のドライバーと②CUDA Toolkitをアンインストールしましたよ…
その後、再度、「Hashcat -I」で、認識デバイスを確認した結果、
両方、認識していたので、結局、①と②は不要だったんだな…という事がわかりました。


タイトルとURLをコピーしました