2007-07-06

SHA256を利用したパスワード生成ブックマークレット

worris' ドメイン名でMD5なパスワードを作るBookmarklet

上記エントリーに触発されてパスワードを自動生成するブックマークレットを作成しました。

javascript:
void(new function(){
   var b=document.body,f=arguments.callee,s;
   if(!b)return setTimeout(f,100);
   s=document.createElement('script');
   s.type='text/javascript';
   s.charset='utf-8';
   s.src='http://juce6ox.googlepages.com/pass.js?true,1,8';
   b.appendChild(s)
});
  
上記コードをクリックすると、ブックマークレットが起動します。
右クリックで保存できます。


■特徴

  • サイトのドメイン名を利用
  • SHA256ハッシュを利用
  • 数字と大小の英字を使用したパスワードを生成
  • パスワードにはオプションで2文字まで利用する記号を指定可能($_+=?<>など)※ デフォルトでは記号使用なし
  • パスワード欄に入力済みの文字列を利用
  • パスワード欄に自動書き込み
  • 生成されたパスワードの表示・非表示の設定
  • パスワードの文字数設定 ※最大43文字

■使い方

  1. パスワード欄にキーワードを入力
  2. ブックマークレット実行
  3. ドメイン名とキーワードを元に生成されたパスワードが自動で入力されます ※パスワード入力欄がある場合に
設定項目が5つあります。
ブックマークレット内の s.src の値を書き換えることで設定できます。
pass.js?[v0],[v1],[v2],[v3],[v4] のように?以降にカンマ区切りで書き込みます。
  • [v0]
    パスワードのダイアログ表示[true]・非表示[false]。
    デフォルト値=[true]
  • [v1]
    SHA256ハッシュの何文字目から文字列を抽出するか指定。[0以上の整数]
    デフォルト値=[1]
  • [v2]
    パスワードの文字数
    デフォルト値=[8]
  • [v3]
    記号2文字を指定。[/=, $_, +-, <> など]
    デフォルト値=[01]
  • [v4]
    内部処理でドメイン名と入力文字を結びつける際の間の文字列
    デフォルト値=[ ]

■お願い

このブックマークレットは2つのjavascriptファイルをダウンロードします。
  1. sha256.js (from Schwarz Lanzenreiter )
  2. pass.js
セキュリティ上の観点からも上の2つのファイルをご自身の管理されるウェブスペースやローカルHDD等に配置して、コードを修正の上、ご利用ください。
SHA256ライブラリにつきましては作成者の方のサイトをご参照の上でのご利用をお願いいたします。

●ブックマークレット 変更箇所
⇒ s.src = 'pass.jsの保存場所' (http://~、file://C:/~)
⇒ pass.js?[設定項目をカンマ区切りで]
s.src='http://juce6ox.googlepages.com/pass.js?true,1,8';
  

●pass.js 変更箇所
⇒ u = ['pass.jsの保存場所', 'sha256.jsの保存場所']
⇒ c = 'sha256.jsの文字コード'
var u=['http://juce6ox.googlepages.com/pass.js',
       'http://user1.matsumoto.ne.jp/~goma/js/sha256.js'],
    c='sjis',
    

■作成にあたって参照したサイト一覧

1 件のコメント:

a4016537 さんのコメント...

オプション未使用では62進数となると思いますがどのように進数計算されていますか。VBで言うbigintegerにあたる変数は無かったと思いますが…