リンクはフリーです
■■■■■■■■■■
操作性の良いソフト制作
を,目指しています

■■■■■■■■■■
群馬県太田市
ソフトウェア開発
Yamanaka
INDEX ページへ
パスワードテスター
RandWin
パスワードを設定する場合、どの程度のパスワード語句だと解読され易いか、
目安判断を考えるための、パスワード学習ソフトです。

このソフトでは、13文字にDES暗号化されたパスワードを判定する例を取りました。
■設計(解読方法):
8文字程度のパスワードを解読する事は不可能ではありません、
問題は、どれ程の所要時間で解読できるかに尽きます
このソフトでは、ランダム方式・総当たり方式・推測方式・辞書方式を使用して解読を試みています。
文章中にある、所要時間に関しては、
Celelon2GHzマシンでの、 直接照合 7,000,000回/s   DES暗号照合 60,000回/s
とした場合の計算結果です   ※実測ではもう少し回っていた
★ランダム方式 (&並び替えて解読)
指定した文字種からランダムに文字を抽出し、形成した文字列から並び替えをして照合します、
解読出来るまで以上処理を繰り返し行います。
一回の生成での文字列が abc なら 6通りの照合をします、
abc bac cab acb bca cba
一回の生成での文字列が xHw5 なら 24通りの照合をします、
xHw5 Hxw5 wxH5 xwH5 Hwx5 wHx5 wH5x ・・・・・ 5xHw
5文字なら 120通り、
6文字なら 720通り、
7文字なら 5,040通り、
8文字なら 40,320通りの、階乗分の並び替え照合を実行します
8文字の並び替え照合に要する時間は、Celelon2GHzで 約(直接照合 0.006秒  DES暗号照合 0.7秒)掛かります。
ハズレを引き当てると一回の生成につき、無意味な照合(8文字で40,320回)を遂行するリスクを負わなければなりません、
文字数が多い程リスクは多くなりますが、複雑な構成のパスワードの解読なら、成功する確率は上がると思います
ただ、ランダム(あてずっぽう)に生成する文字列ですので保障はありません。
★総当たり方式
指定した文字種の組み合わせを全て照合します
所要時間さえ考えなければ、確実解読できる方法ですが、
文字の種類 ・ 解読するパスワードの文字数が多ければ、膨大な組み合わせが発生します、

◇文字種が a - z の26種 での、文字数からの組み合わせ数
  4文字なら 26^4 = 456,976 通り
  5文字なら 26^5 = 11,881,376 通り
  6文字なら 26^6 = 308,915,776 通り
  7文字なら 26^7 = 8,031,810,176 通り
  8文字なら 26^8 = 208,827,064,576 通り  

◇8文字のパスワードを解読する為に、 aaaaaaaa から始まり zzzzzzzz までを照合した場合
  ※マシンCeleron2GHzのおおよその解読所要時間 (直接照合 & DES暗号照合)

  aaaaaaaa なら、1通り目   0秒
  absolute なら、529,385,563通り目   1分16秒 (2時間27分)
  easypack なら、32,352,336,599通り目   1時間17分 (6日)
  musicbox なら、102,777,594,426通り目   4時間04分 (20日)
  zzzzzzzz なら、208,827,064,576通り目   8時間16分 (40日)
※計算表    easypack の例
8の桁e( 26^7) × ( 5-1)32127240704
7の桁a( 26^6) × ( 1-1)0
6の桁s( 26^5) × ( 19-1)213864768
5の桁y( 26^4) × ( 25-1)10967424
4の桁p( 26^3) × ( 16-1)263640
3の桁a( 26^2) × ( 1-1)0
2の桁c( 26^1) × ( 3-1)52
1の桁k 11 11
合計32,352,336,599 通り目
解読所要時間(s) = 通り目 ÷ 1秒間に照合される回数 (Celelon2GHz 7,000,000回・60,000回)

以上のように、 何通り目でどの文字列が照合されるか決まっているので、解読所要時間は文字の並びに大きく関係してきます、

実際は、a から始まり z で終わりでなくとも良い訳で、プログラム側でどうにでも変えられます
プログラムソフトと一緒に配布している、基本ソース(178行目以降)を見れば分かりますが、ベースになる検索文字の並びを試験的に変えたりしています。
★手打ち解読 (&並び替えと推測)
入力文字を、並び替えをしたり、全て大文字や小文字にしたり、頭文字を大文字にしたりします
一回の手打ちで、1万 - 5万通りの照合をします。

★辞書式解読
語句を記録したファイルから照合する、単純な解読方法です、
かなり強力な解読方法ですが、プログラミング的面白さはありません。
以上、思いついた解読方法をプログラムソフトに組み込みましたが、 暗号アルゴリズムからの解読方法は一つもありません、私のスキルでは不可能です
自身へのフォローですが、一般のパソコンを使って暗号アルゴリズムから容易に解読できるようなら、パスワードの暗号化方式として採用されないでしょう。
■操作法:
インストール作業はありません、RandWin.exeを起動して下さい

◆解読するDES暗号文字◆
13文字のDES暗号を入力します
  パスワード暗号化ソフト CopyCrypt をご利用下さい。
◆1.自動解読
◇辞書:
  RandWin.exe と同じ場所に置いた、dictionary.txt ファイルの文字列リストから照合を行います。

◇総当たり(英数2-4桁):
  記号なしの英数字2-4桁までの総当たりは短時間で完了できるので、操作を自動化。
◆2.条件指定解読
5桁からは、所要時間の問題があるので条件指定方式にしました。

◇ランダム式:
  ランダムに生成した文字列を並び替えを使用して照合します
  所要時間という問題がないので、桁数を気にせずに安易に実行できます。
  ※ランダム式の場合は、 . & / _ - @ ? 記号文字を含むパスワードの解読が出来ます

◇総当たり:
  所要時間に注意してください、
  桁数が大きいと実用的ではありません。
◆3.手打ち解読
入力した文字列を、並び替え / 推測 で照合します。

  例:  “atom”と入力すると、以下の語句を自動にソフトが推測します
    →   atom mota tamo ATOM Atom atomic atom12 atom/4 [atom]
総当り所要時間算出
このソフトを利用するマシンの、1秒間に照合できる回数を数値で入力します
未入力の場合、60,000で算出表示されます。
※一度、適当な暗号を ‘総当たり’ で解読すれば、1秒間に照合できる回数を割り出せます
※passwd(shadow)解読・手打ち解読
注:DES暗号化記録されたものに限る
passwd(shadow)ファイルを、自動解読と、手打ち解読(並び替え・推測)で操作出来ます。
サーバ管理者でないと、passwd(shadow)ファイルを入手する事は出来ません
一般の人は利用できません。

■アンインストール:
単独で動作します、既存の環境に影響を与えません、プログラム収納フォルダごと削除でOK
■洞察:
★ランダム式解読
解読できる保障はありませんが、最大所要時間を気にせずに安易に実行できます、
運に左右され驚くほど短時間に解読出来る場合もあり、スリルがあります。


★総当たり式解読
文字種と文字数が合えば確実に解読する事ができますが、 解読にかかる最大所要時間を把握して実行してください、気の短い人は、4桁までのパスワードの解読まででしょう、
ただ、設計で説明したように、文字列の並びによって解読時間には大きな開きがあります。
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  総当り最大所要時間(s)  =   ( 文字種の個数 ^ 生成文字数 ) / 1秒間に照合される回数

  1秒間に照合される回数(マシンCeleron2GHzのおおよその値)
  RandWin-PS(直接解読)の場合、7,000,000回以上
  RandWin(DES暗号解読)の場合、60,000回以上


★手動式解読
全ての記号を含む、異種混合のパスワードも解読する事が出来ます
並び替え・推測機能が付いていますので、適当な入力でOK。

★辞書式解読
用意した辞書は膨大な大きさなので強力です、適当なパスワードなら解読してしまいます、
自身で、足りない語句を追加していけば、さらに強力になるでしょう。



最低限必要なパスワード設定の目安判断や、運占い・ゲームに使えるでしょう!
☆ 実際に体感してみて下さい ☆
■ダウンロード
------------------------------------------------------
動作確認OS: Windows10
動作確認マシン: PentiumMMX 200MHz / Celeron 2GHz
開発環境: Borland C++Compiler 5.5 / BCC Debeloper
------------------------------------------------------
RandWin-PS.exe (直接解読  パスワード学習用)
  入力した語句を解読します、現在市販されているパソコンは高性能です、演算能力を体感してみて下さい。
RandWin.exe (DES暗号解読  ネット管理者用)
  DES暗号化したパスワードを、解読します。
[RandWin-PS.exe   RandWin.exe   辞書ファイル] 同封
RandWin.zip 709a (約1.72MB)

多忙な、技術・サービス系業種の方にお勧め。
当社開発販売ソフト 見積書・請求書 作成ソフト
リンクフリー
ソフトウェア開発 Yamanaka
Copyright(C) 2004 All rights reserved.