パスワードチェッカー
パスワードについて、組み合わせと解読時間を調べたり、実際のパスワードの解読時間をチェックできる。
※1秒間の計算回数によって、解読時間は変化する。
パスワードで使える文字
パスワードで使える文字は以下の種類がある。
- 数字
- 0〜9 までの 10 個の数字。
- 英小文字
- a〜z までの 26 個の文字。
- 英大文字
- A〜Z までの 26 個の文字。
- 記号
- ! " # $ % & ' ( ) - ^ \ @ [ ; : ] , . / _ = ~ | ` { + * } < > ? の 32 個の記号。
ただし、使える文字が制限されている場合がある。
また、\(バックスラッシュ)の代わりに ¥(円記号)か"使われることがある。
組み合わせと解読時間
- 文字の種類
-
パスワードで使う文字の種類をチェックする。
- 組み合わせの数
-
下のスライダーを移動すると文字数を増減できる。
上記の種類と文字数の組み合わせは
{{ combi }} 通り。
つまり、{{ Jcombi }} 通りになる。 - 解読時間
-
下のスライダーを移動すると解読時における1秒間の計算回数を増減できる。
上記の計算回数で解読するとその最大時間は
{{ analysis }} 秒。
つまり、{{ Janalysis }} になる。
パスワードチェッカー
実際に使っているパスワードの強度を確認できる。
- {{ passLen }} 文字
- 数字が含まれている
- 英小文字が含まれている
- 英大文字が含まれている
- 記号が含まれている
このパスワード「{{ password }}」は、1秒間に {{ times2 }} 回総当たりで解読すると
通常は、総当たりではなく、辞書式など他の方式と組み合わせた解読方法が用いられるため、実際はもっと速く解読できる。計算回数について
1秒間の計算回数について、目安は以下の通り。
参考文献として として上げておく。参考文献 2 では、半精度(FP16)のFLOPS(1秒間の浮動小数点演算回数) を目安としている。しかし、参考文献 1 の実測値(ZIP方式のハッシュ解析)と参考文献 3 の単精度(FP32)のFLOPSを比較して、計算回数が1000桁ほどズレている。そのため、100億回のRTX2080Ti 以外は、単精度(FP32)のFLOPS を1000で割った値で算出している。これは、参考文献 1 における GTX 1600 SUPER と Tesla(NVIDIA) V100 の実測値と参考文献 3 の単精度のFLOPSから1000を割った値がほぼ同じになることから、参考値としても問題ないと判断した。ただし、少なくとも NVIDIA のアーキテクチャであれば問題ないが、Apple M1 Max ではさらに10分の1になったことから、NVIDIA 以外のアーキテクチャでは1桁程度の差が出る可能性がある(RTX2080Ti と M1 Max のFLOPS はほぼ同じ)。
参考文献として として上げておく。参考文献 2 では、半精度(FP16)のFLOPS(1秒間の浮動小数点演算回数) を目安としている。しかし、参考文献 1 の実測値(ZIP方式のハッシュ解析)と参考文献 3 の単精度(FP32)のFLOPSを比較して、計算回数が1000桁ほどズレている。そのため、100億回のRTX2080Ti 以外は、単精度(FP32)のFLOPS を1000で割った値で算出している。これは、参考文献 1 における GTX 1600 SUPER と Tesla(NVIDIA) V100 の実測値と参考文献 3 の単精度のFLOPSから1000を割った値がほぼ同じになることから、参考値としても問題ないと判断した。ただし、少なくとも NVIDIA のアーキテクチャであれば問題ないが、Apple M1 Max ではさらに10分の1になったことから、NVIDIA 以外のアーキテクチャでは1桁程度の差が出る可能性がある(RTX2080Ti と M1 Max のFLOPS はほぼ同じ)。
- 100万回
- 1000万回
- 1億回
- 10億回
-
Intel Iris Plus(GPU)でMD5(鍵長128bit)を演算した場合(実測:9.18億回)
Apple M1 Max 32コアの内蔵 GPUで ZipCrypto 方式の内部ハッシュ(鍵長96bit)を演算した場合(実測:10.408億回)
Intel Core i7-1065G7でMD5(鍵長128bit)を演算した場合(実測:13.225億回)
Apple Ultra 48コアの内蔵 GPUで ZipCrypto 方式の内部ハッシュ(鍵長96bit)を演算した場合(実測:15.787億回)
Sony Playstation 4 で ZipCrypto 方式の内部ハッシュ(鍵長96bit)を演算した場合(推定値:18億回)
- 100億回
-
NVIDIA GeForce RTX 2080Ti 1枚で ZipCrypto 方式の内部ハッシュ(鍵長96bit)を演算した場合(実測値:100億回)
Sony Playstation 5 で ZipCrypto 方式の内部ハッシュ(鍵長96bit)を演算した場合(推定値:103億回)
Xbox Series X で ZipCrypto 方式の内部ハッシュ(鍵長96bit)を演算した場合(推定値:121.5億回)
Apple M1 Max 32コアの内蔵 GPUでMD5(鍵長128bit)を演算した場合(実測:132.753億回)
Apple M1 Ultra 48コアの内蔵 GPUでMD5(鍵長128bit)を演算した場合(実測:171.389億回)
- 1000億回
-
NVIDIA GeForce RTX 4090 1枚で ZipCrypto 方式の内部ハッシュ(鍵長96bit)を演算した場合(推定値:825.7536億回)
NVIDIA GeForce RTX 3090Ti 2枚で ZipCrypto 方式の内部ハッシュ(鍵長96bit)を演算した場合(推定値:799.9488億回) - 1兆回
- スーパーコンピュータ「京」で ZipCrypto 方式の内部ハッシュ(鍵長96bit)を演算した場合(推定値:1兆回)
- 10兆回
- 100兆回
- 1000兆回
- スーパーコンピュータ「富岳」で ZipCrypto 方式の内部ハッシュ(鍵長96bit)を演算した場合(推定値:977兆回)
- 1京回
- iGPU-FP32パフォーマンス(単精度GFLOPS)
- おすすめグラボのベンチマーク性能比較と選び方
- ゲーミングPCのCPU、GPU性能をパスワードクラッキングでベンチマークしてみた
- スーパーコンピュータ「京」はとてつもなく速い
- 仕様 - スーパーコンピュータ「富岳」 : 富士通 - Fujitsu
- ハッシュ計算に利用したソフトhashcat
- ハッシュについて
-
通常、パスワードはそのまま保存されずに、ハッシュアルゴリズムを用いて別の文字列に変換される。ハッシュアルゴリズムによって作成された文字列は、そのままではパスワードとして使えないため、パスワードを知りたい場合はその文字列から解読を行う必要がある。
ZipCrypto は Zip ファイルにパスワードをかけるときに使われるハッシュアルゴリズムである。現在は、比較的簡単に解読できてしまうため、非推奨となっている。
MD5 はハッシュアルゴリズムの1つで、一番良く使われている。前身として、MD4 があり、Windows はこのハッシュアルゴリズムでパスワードを保存している(参考:パスワードの技術概要)。MD4 の解読時間は MD5 と比較しておおよそ半分程度になる。
Mac OS X は、パスワードの保存に、SHA512 というハッシュアルゴリズムを採用している。これは Windows のハッシュアルゴリズムと比較して、2万倍程度の強度がある。つまり、解読時間は MD5 と比較して1万倍になる。