« 2014年7月 | トップページ | 2014年9月 »

2014年8月

2014年8月31日 (日)

KeePass-1.26とDvorakJの相性(Sat Nov 30, 2013)

KeePass-1.26とDvorakJの相性(Sat Nov 30, 2013)

Time-stamp: "Tue Dec 10 16:59:40 JST 2013"

IDとパスワードは紙のノートに記録している。ノートを取り出すのが面倒な ときにパソコンで各サイトのパスワードが確認できたら便利と思う。しか し、パスワードをテキストファイルで保存するわけにはいかない。そこで KeePass(正式(正確)にはKeePass Password Safeらしい。単にPassword Safe と名乗るツールもある)を使っている。

今までのKeePassの使い方は記憶(記録)専用である。紙のノートに書いてい るIDとパスワードを、パソコンからも取り出せるである。覚えているパス ワードがあやふやなときにノートを取り出すよりはパソコンで確認するほう が速い。散らばっている本や書類の中からノートを見つけ出せないときの保 険としてKeePassを使う。KeePassによるIDやパスワードの自動入力は使った ことがない。

パスワードを決める(選ぶ、作る)のも悩む。こちらは早くからパスワード生 成ソフトを使っている。パスワード生成ソフトで何個かパスワードを作って 憶えやすそうなものを紙のノートに書く。それからパスワード変更ページで 新しいパスワードに、手打ち込みで変更する。新しいパスワードでログイン できるようになったらKeePassに記録しているパスワードを新しいもので書 き換える。紙のノートの補助(代替、二重化)としてKeePassを使っている。

KeePassを使うにあたって一番気になったのは、エントリに記録しているパ スワードを変更したとき、それ以前のパスワードは失われてしまうのかとい うことである。紙のノートに書いた変更前のパスワードは消えずに残る。紙 の記録なら変更後のデータのすぐ隣り(あるいは直前)に古いデータ(パスワ ード)がある。以前のデータを参照するに困ることはない。

実は、KeePass上でエントリのパスワードなどを変更すると変更前のエント リが、KeePass-1.x系ではBackupディレクトリに、KeePass-2.x系では各エン トリのHistory(履歴)タブに移される。エントリの一部分を変更しただけで も変更前のエントリが他の場所に丸ごと残される。KeePassに書き込んだエ ントリのデータを一文字変更しただけでも以前のもの(エントリ)が残され る。それが何処にあるかを知らないから無用な心配をする。

KeePassにはパスワード生成ツールが付属している。KeePass-1.x系のパス ワード生成ツールは、エントリのパスワードを新しいものに置き換えるツー ルとしても使えるが、エントリの編集とは独立に単独なツールとしても使え る。紙のノートの代りとして使っていたときはKeePass-1.x系のパスワード ジェネレーターを単独ツールとして使っている。

KeePass-2.x系のパスワードジェネレーターはエントリ編集専用になってい る。単独ツールとしては使えない。メニューのToolsからGenerate Password...を選ぶとPassword Generation Optionsダイアログが出る。この ダイアログでOKボタンを押すと現在のエントリのディレクトリにパスワード だけが入力された新しいエントリが新設される。EditメニューのAdd Entry を実行したのと同じである。

ところで、パスワード変更の際は、現在のパスワードと新しいパスワードの 両方を入力しなければならない。KeePassの自動入力を使いながらのパス ワード変更はどのようにすればよいのだろうか。KeePass初心者の私は紙に 書いたものでパスワード変更作業をしている。KeePassを使い慣れた人はど のようにしているのだろう。

先ず、現在のパスワードをKeePassから入力する。次に現在のエントリのパス ワードをKeePassのパスワード生成ボタンで書き換える。書き換えたパス ワードを新しいパスワードとして入力する。毎日する作業ではないのでモタ つきそうである。

パスワードの変更画面に入力している最中に、KeePassのデータ(パスワー ド)を変更(編集)したくない。KeePassをread onlyで使いたい。パスワード を失なうことはないだろうがログインできない不都合が起きると慌てる。そ ういうときほど普通では考えられないミスをする。紙に書いておけば、パソ コンがヘンになっても消えることはない。

現在のパスワードと新しいパスワードを紙に書きとめておいて手打ち込みす るほうが安心である。普段はKeePassでパスワードを自動入力していても、 パスワード変更作業時はKeePassを使わない。紙に書いたもの(ノート)を見 ながら作業する。KeePassに、パスワード変更作業用のエントリを作ろうと までは思わない。

パスワードが20桁にもなると紙に書き出すのは大変だろう。紙に書かれたパ スワードを手打ち込みするのも大変である。そこで今までは8桁くらいの憶 えやすい、打ち込みやすいパスワードを使ってきた。しかもパスワード変更 は滅多にしない。これではいけないと自動入力を試すことになる。自動入力 にすれば、パスワード変更は面倒だけれど、普段の入力(ログイン)は簡単に なる。そうすればパスワード変更も億劫でなくなる。パスワードは、頭で憶 えておくものという縛り(常識)を捨てるとよいのかもしれない。

KeePassを使っている人のなかには、パスワードを紙に書き出すことを一切 しないでKeePassに任せっきりな人もいるらしい。パスワードを知らない(見 たことない)という。私は、紙に手書きなバックアップがないと不安であ る。手打ち込みのころは紙のノートのバックアップとしてKeePassを使って いた。自動入力になったら紙の記録をKeePassのバックアップとしたい。

KeePassは英語圏でつくられたソフトのため表示が英語になる。慣れないと どう使ってよいのか分からない。日本語化でソフトのメニューは日本語にな るけれどヘルプは英語のままである。たいていのヘルプは、概要が書かれて いるだけで、実際例はほとんど書かれてない。使い慣れた人向けな覚え書き のようなヘルプもある。日本語なら察しがつくことでも英語解説だと、単語 一つ分からないだけで先に進めなくなってしまう。そういうときに実例があ ると助かる。

KeePassの自動入力の方法(手順)を知るために、国産のパスワード管理ソフ トID Managerの日本語解説を読んだ。ソフトは違っても目指すところは同じ である。使い方のヒントが得られる。とくにID ManagerのFAQの内容が役 立った。

現在はwindows7のパソコンを使っているが、KeePassを使い始めたころは windows meのパソコンだった。KeePass-1.x系をパスワードを記録するノー ト代りとして使うにはwindows7になっても困ることはなかった。

KeePassの自動入力を使い始めて最初のトラブルは、IDの後半がちぎれてパ スワードの先頭にくっついてしまい、それがパスワード欄に入力されるトラ ブルだった。

KeePass-1.x系では、自動入力のシーケンスをエントリのNotes(備考)欄に書 き込む。例えば、次のようである。

Auto-Type: {USERNAME}{TAB}{PASSWORD}

先ず、ブラウザに表示したログイン画面のID欄にカーソルがある状態にす る。KeePassを呼び出し、ログイン画面に入力するためのエントリを選択し た状態でPerform Auto-Typeを実行する。ログイン画面のカーソルがあるID 欄にUSERNAMEが入力される。次の{TAB}でタブキーが押したことになる。 カーソルはID入力欄の直下にあるパスワード入力欄に移る。そしてパスワー ドが入力されて止まる。シーケンスの最後に{ENTER}を付けるとログインボ タンを押すことになる。

使い方説明のシーケンスの末尾には{ENTER}がくっついている。私は、末尾 に{ENTER}を付けない。「ログインしたままにする」にチェックが入ってい ることがある。ログインに失敗したときに何が悪いのかが分かりにくい。画 面がパッパッと変わるので見逃してしまう。IDやパスワード入力欄それぞれ に何文字入力されたのかさえ分からない。そのため、ログインボタンは、マ ウスボタンでクリックしている。

ID欄に、IDの末尾までが正しく入力されないでIDの後半部分がパスワードに 取り込まれてしまうトラブルは自動入力のシーケンスの冒頭に{DELAY=100} を付けることで解消した(とりあえず100にする。様子を見ながら増減す る)。

Auto-Type: {DELAY=100}{USERNAME}{TAB}{PASSWORD}

{DELAY=100}は、キー入力の一文字ごとの間に100ミリ秒の間隔を入れる。 {DELAY 100}のように等号をスペースに換えると、それが挟み込まれた場所 に100ミリ秒の間隔を入れる。試しに{DELAY=1000}にしてみると、入力欄に 一文字入ったら次の文字までに1秒の空きが入る様子を見ることができる。

次のトラブルはIDの大文字が小文字になってしまうものだった。トラブった サイトのIDは「ABC12345」のようにアルファベット大文字の三文字と5桁の 数字を連ねたものである。

(注)これは登録時に機械により自動発行されるIDで、登録後に別の文字列に 変更できるという。別に不都合がないのでサイトから押し付けられたものそ のまま使っていう。(注終わり)

このIDが自動入力で、ID欄に「Abc12345」と入力される。とうぜんログイン できない。KeePassのメニューからCopy User Nameを選んでクリップボード にコピーしてログイン画面のID欄に貼り付ければちゃんと「ABC12345」にな る。自動入力のPerform Auto-Typeを使うと「Abc12345」になってしまう。

さらにIDが正しく自動入力されてもログインに失敗するサイトがある。パス ワードが正しく自動入力されないらしい。ログイン画面のパスワード欄に入 力した文字列は、アスタリスク(米じるし)や黒丸になって読めない。確認で きるのは文字数だけである。文字数は正しいパスワードのものであるけれど ログインに失敗する。

以前はパスワード欄のアスタリスク(米じるし)のところにマウスポインタを 近付けると読める文字列になる「パス見え」などという名前のツールがあっ た。これらのツールはwindowsのセキュリティ強化のためか新しいwindowsで は使えなくなっているという。探したら使えるものが見つかる。

解凍するだけで使えるものではなくて、インストール作業の必要なツールで ある。藁にもすがるしかない状態なので入れてみる。

ブラウザのfirefoxではダメだったが、internet explorerならパスワードが 平文で表示される。ログインに失敗するサイトのパスワードを見ると、パス ワードに含まれるアルファベット大文字がすべて小文字に置き換わってい る。

(注)現用のinternet explorer 10ではパスワード欄に入力すると、パスワー ド欄の末尾に目玉のようなマーク(「(*」を時計回りに90度回したもの)が表 示される。これをマウスでクリックすると黒丸の列から文字列に変わる。
普段はfirefoxを使っているためinternet explorerのこの方法は知らなかっ た。ツールがなくてもパスワードの文字列を確認できるのである。パスワー ド文字列を表示しないのはブラウザの機能である。それを解除する裏技があ る。しかし、そのような奥の手を使わなくても確認できる。
あと「入力ボックス」に以下の機能が追加されました。
(1)文字入力ボックスで、文字を入力すると、右端に「x」アイコンが表示 され、クリックすると入力がクリアされます。
(2)パスワード入力ボックスで、パスワードを入力すると、盗み見防止で 「●●●●」という伏せ文字になりますが、右端に「目と眉毛」のようなア イコンが表示され、マウスでプレスしている間、伏せ文字のパスワードが入 力どおりに表示されます。 (引用終わり)
(注終わり)

KeePassに登録されているパスワードの大文字・小文字は正しいものであ る。KeePassメニューのCopy Passwordによりクリップボード経由で(ブラウ ザに表示した)ログイン画面のパスワード欄に貼り付ければログインでき る。自動入力のPerform Auto-Typeメニューを実行したらログインに失敗す る。

ネットを検索しても上記のような症状の報告は見当らない。慣れたKeePass から他のパスワード管理ソフトに乗り換える気にはならない。そこで現在 使っているKeePass-1.x系から別系統のKeePass-2.x系に乗り換えてみること にする。

KeePassにはインストール版の他に解凍するだけで使えるノンインストール 版がある。私はノンインストール版を使っている。解凍したKeePassのディ レクトリをそのまま(実行ファイルとその関連ファイルのすべて)外付けメ ディアにバックアップしている。1.x系と2.x系の両方があっても混同するこ とはない。

KeePass-2.24にしてみるとIDやパスワードの自動入力(Perform Auto-Type) に成功する。アルファベットの大文字が小文字で入力される症状が解消し た。新しいwindowsでは、新しいKeePassを使うべきなのかと思う。

KeePass-1.xとKeePass-2.xは、2.x系のほうが後発であるけれど1.xのバー ジョンアップ版ではないという。両方とも開発・メンテナンスは続行すると ある。2.x系は新しいwindows向けだが、1.x系が新しいwindowsで動かないわ けではない。

しかし、私の環境では1.x系でトラブる。2.x系を使うしかないなに落ち着 く。ただ2.x系は、実行ファイルKeePass.exeの関連ファイルが多い。1.x系 のアーカイブに含まれるのは、実行ファイルKeePass.exe、ヘルプの KeePass.chm、テキストファイルLicense.txtの三つだけである。KeePassを 使い始めるとDatabase.kbd、設定ファイルKeePass.iniの二つが新しく付け 加わる。軽量な1.x系を消すのは惜しい。

KeePass-2.24を使うようになってもKeePass-1.26をそのまま残している。残 しているとトラブる原因が何なのかが気になる。ときおり試してみる。

私は、キー入れ換えツールのDvorakJを使っている。もともとDvorakJは、 QWERTY配列なキーボードをソフト的にDvorak配列にして使うためのツールで ある(らしい)。実際にDvorak配列なキーボードとして使っているのではな い。DvorakJに含まれるSandS(エスアンドエス)という機能を使いたいためで ある。SandSに現われる二つのSはShiftとSpaceのイニシャルからきている。 スペースキーにシフトキーの機能を持たせるのがSandSである。スペース キーを押しながら文字キーを押すと、シフトキーとの同時押しのようにな る。

DvorakJは常駐させるツールであるが機能を一時的に停止させることができ る。KeePass-1.26を使って自動入力のPerform Auto-Typeを使う前に DovorakJの機能を停止させた。そうするとアルファベットの大文字と小文字 が正しく入力されないトラブルが解消してしまった。けっきょくKeePassと DvorakJの相性問題だったようだ。

DvorakJ は、Windows XP, Windows Vista, Windows 7, Windows 8 で動作す る持ち運び可能なキー・リマップ・ソフトです。当初は DvorakJPや高速タイ ピング JLOD配列 (Japanese Layout on Dvorak)といった Dvorak配列の派生 への切り替えに特化していましたが、現在はさまざまなキーボード配列に対 応しています。(引用終わり)

さっそく「KeePass」と「DvorakJ」をキーワードとしてネット検索するとト ラブル報告が見つかる。

最近はWeb上のサービスの認証ポリシーも厳しくなってきて、同じパスワー ドを使いまわすのも難しくなってきている。一方でワシの記憶力は衰えるば かりで、とても設定したパスワードを覚えきれなくなってしまった。そこで パスワード管理ツールを試してみようと、KeePassをインストールしてみ た。とりあえずひとつのサイトのパスワードを登録してみて自動入力をさせ てみると、DvorakJでキーマップを変えているせいか、ぜんぜん違うパス ワードが入ってログインに失敗してしまった(^^;。うーん、どういう使い方 をするのがいいのかなぁ。(引用終わり)

同じ症状の人がようやくみつかった。KeePassとDvorakJの相性問題なのだか ら、いずれはどちらかが歩みよって(おそらくDvorakJのほうから)解決する のではないかと思う。

なお、SandSの提唱者(とされる)木村清氏作のJCtrlによるSandS機能を使う ならDvorakJのような不都合が起きない。それでもDvorakJを使っているの は、JCtrlよりDvorakJのほうがSandSの取りこぼしが少ないからである。タ イプのタイミングで思うように動かないことがある。

(注)私のパソコンにはJavaをインストールしてない。このアプレットは動か ない。どんなものかは分からない。Javaは、ウィルスに狙われやすいらし い。アプレットは動かなくても記事が参考になる。(注終わり)

SandSを使っているのはエディタ(emacs/meadowやvi/vim)への日本語入力(か な漢字変換)としてSKK(Simple Kana to Kanji conversion program)を使う ためである。SKKはとても不親切な、かな漢字変換であり、慣れるまでに時 間がかかる。毎日使えば手放せなくなる。これらのエディターと相性がよい からである。

かな漢字変換としてSKKを使う人はとても少ない(おそらく)。そしてSandSを 必要とする人は、さらに少ない。そのためKeePassとDvorakJとの相性問題の 報告がなかったのだと思う。キーマップを変更するツールは意外なところに 影響することを思い知る。

(注)その後に、DvorakJの本家筋であるAutoHotkeyを使うと、KeePassでIDや パスワードの自動入力する際に大文字と小文字が正しく入力されない症状が 出ないようになった。

| | コメント (0) | トラックバック (0)

« 2014年7月 | トップページ | 2014年9月 »