CheckPassword80について

[戻る]
jejackjazz 2006/01/24(火) 23:03:16
CheckPssword80のコードは以下の通りです
やってることはよく分かるんですが、キージェネを造るのが難しいです。
誰か知恵を貸してください。
PW.focus();
    PW.document.open();
    PW.document.writeln('<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 
    PW.document.writeln('    var indexbase = " !\\\"#$%&\\\'()*+,-
./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\\\]
^_`abcdefghijklmnopqrstuvwxyz{|}~";');
    PW.document.writeln('    var passlen = keyin.length;');
    PW.document.writeln('    var enqlen  = encrypted.length;');
    PW.document.writeln('    var decrypted = "";');
    PW.document.writeln('    var decryptedPassword = "";');
    PW.document.writeln('    var decryptedPath     = "";');
    PW.document.writeln('    var targetUrl         = "";');
    PW.document.writeln('    var i, j, k, chr1, chr2, nbase;');
    PW.document.writeln('    var needPassword = "' + strNeedPassword 
+ '";');
    PW.document.writeln('    var badPassword  = "' + strBadPassword  
+ '";');
    PW.document.writeln('    if (passlen <= 0)');
    PW.document.writeln('    {');
    PW.document.writeln('        alert(unescape(needPassword));');
    PW.document.writeln('        return ;');
    PW.document.writeln('    }');
//こっからコアなプロセス
    PW.document.writeln('    for (i = 0, j = passlen - 1, k = 0 ; i < 
enqlen ; i++, j--, k=0)');
    PW.document.writeln('    {');
    PW.document.writeln('        if (j < 0)');
    PW.document.writeln('        {');
    PW.document.writeln('            j = passlen - 1;');
    PW.document.writeln('        }');
    PW.document.writeln('        chr1 = indexbase.indexOf
(keyin.charAt(j));');
    PW.document.writeln('        chr2 = indexbase.indexOf
(encrypted.charAt(i));');
    PW.document.writeln('        if (chr2 < (chr1 + j))');
    PW.document.writeln('        {');
    PW.document.writeln('            nbase = (chr1 + j - 
chr2) / 0x5f;');
    PW.document.writeln('            k += (0x5f * Math.ceil
(nbase));');
    PW.document.writeln('        }');
    PW.document.writeln('        k += (chr2 - chr1 - j);');
    PW.document.writeln('        decrypted += indexbase.charAt
(k);');
    PW.document.writeln('    }');
    PW.document.writeln('    if (typeof(opener) == "undefined")');
    PW.document.writeln('    {');
    PW.document.writeln('        window.close();');
    PW.document.writeln('        return ;');
    PW.document.writeln('    }');
    PW.document.writeln('    ' + strIsClose);
    PW.document.writeln('    {');
    PW.document.writeln('        window.close();');
    PW.document.writeln('        return ;');
    PW.document.writeln('    }');
    PW.document.writeln('    opener.document.isOpened = false;');
    PW.document.writeln('    decryptedPassword = decrypted.substring
(decrypted.length - passlen, decrypted.length);');
    PW.document.writeln('    if (keyin == decryptedPassword)');
    PW.document.writeln('    {');
    PW.document.writeln('        decryptedPath = 
decrypted.substring(0, decrypted.length - passlen);');
    PW.document.writeln('        passlen       = 
decryptedPath.length;');
    PW.document.writeln('        for (i = 0 ; i < passlen ; i++)');
    PW.document.writeln('        {');
    PW.document.writeln('            chr1 = 
decryptedPath.charAt(i);');
    PW.document.writeln('            if (chr1 == "%")');
    PW.document.writeln('            {');
    PW.document.writeln('                ' + 
strSubString);
    PW.document.writeln('                targetUrl += 
chr2;');
    PW.document.writeln('                i += 11;');
    PW.document.writeln('            }');
    PW.document.writeln('            else');
    PW.document.writeln('                targetUrl += 
chr1;');
    PW.document.writeln('        }');
    PW.document.writeln('        ' + strIsOpen);
    PW.document.writeln('            ' + targetWin);
    PW.document.writeln('        window.close();');
    PW.document.writeln('    }');
    PW.document.writeln('    else');
    PW.document.writeln('    {');
    PW.document.writeln('        if (defaultUrl.length)');
    PW.document.writeln('        {');
    PW.document.writeln('            ' + strIsOpen);
    PW.document.writeln('                ' + 
defaultWin);
    PW.document.writeln('        }');
    PW.document.writeln('        else');
    PW.document.writeln('        {');
    PW.document.writeln('            alert(unescape
(badPassword));');
    PW.document.writeln('        }');
    PW.document.writeln('        window.close();');
    PW.document.writeln('    }');
    PW.document.writeln('}');

シャノン 2006/01/25(水) 00:25:10
HomepageBuilder についてる簡易パスワード認証スクリプトでしたっけ。
「キージェネの作り方」なんて、白昼堂々聞いていいもんだとは思えませんけどね。正
規の方法でパスワードを教えてもらえばよろしい。

RAPT 2006/01/25(水) 00:26:06
え、これってVC++と関連あるんですか?

RAPT 2006/01/25(水) 00:27:59
# ああ、クラック系なのか

Blue 2006/01/25(水) 00:36:16
> キージェネを造るのが難しいです。
キージェネ
・ソフトウェアを使用する為の登録に必要なレジストキーを不正に生成するプログラム.
・シェアウエアのパスワードで, 入力した名前に応じたパスワードが生成されるような
  場合, そのアルゴリズムを解析し, 不正にパスワードを生成することができるように
  したプログラムのこと. 使えば当然違法.

だって。なんなら違法の説明もつけますか?

Ban 2006/01/25(水) 08:41:52
> 誰か知恵を貸してください。

・まともな掲示板で不正行為の助力を頼んでも相手にされない。
 後々、自分を不利にする証拠を残すだけ。
・変に悩むくらいなら、レジストした方が安いし早いし手間もない。
・そこに固執する必要が本当にあるのか、代替手段がないか模索してみる。

jejackjazz 2006/01/25(水) 11:05:59
どうも失礼しました。
出直してきます。

jejackjazz 2006/01/25(水) 12:34:15
[[解決]]
イヤァ、自分が恥ずかしいです。
失礼します。

古いスレッドには追加発言できません。