ダイスウェア パスフレーズ ホームページ

5 diceこのページの目的はたった一つ。PGPなどの暗号ソフト、セキュリティプログラムで使うパスフレーズを作るための、よりよい方法をあなたに伝えることだ。このページは暗号に関する予備知識を持たない人向けに書かれている。

パスフレーズとは何か?

パスフレーズとは、単語や文字の列であって、あなたがコンピュータにタイプすることで確かにあなた本人であるとコンピュータに知らせ、特別なこと(秘密のメッセージを暗号化したり復号化したりすることなど)をコンピュータにさせるためのものである。例えば、 Phil Zimmermannの作ったポピュラーな暗号化ソフト PGP を使うためには、あなたは自分のパスフレーズを作る必要がある。文章に署名したり暗号を復号したりするときには、あなたはそのパスフレーズを入力しなくてはならない。

パスフレーズとパスワードの違いはその長さだけである。パスワードはたいてい短い。6〜10文字である。パスフレーズはたいていもっと長い。100文字やそれ以上になることもある。パスフレーズはパスワードよりも長いので、パスフレーズの方が安全 (secure) である。現代のパスフレーズは Sigmund N. Porter が 1982 年に発明した。

コンピュータ上のデータや文章のプライバシーを保つためにあなたができる最も重要なことは、よいパスフレーズを選ぶことである。パスフレーズは以下の特徴を持つべきである。

ダイスウェアとは何か?

ダイスウェア (Diceware) とは、ダイス(さいころ)を使って「ダイスウェア単語一覧」と呼ばれる単語一覧から単語をランダムに選び、パスフレーズを作る方法のことである。その単語一覧では、各単語の前に 5個の数字がついている。各数字は1から6の間になっている。したがって、5回ダイスを転がすと、単語一覧から一つの単語を得ることができる。

以下に「ダイスウェア単語一覧」からの短い抜粋を示す:

      16655     clause
      16656     claw
      16661     clay
      16662     clean
      16663     clear
      16664     cleat
      16665     cleft
      16666     clerk
      21111     cliche
      21112     click
      21113     cliff
      21114     climb
      21115     clime
      21116     cling
      21121     clink
      21122     clint
      21123     clio
      21124     clip
      21125     clive
      21126     cloak
      21131     clock

完全な「ダイスウェア単語一覧」 は 7776 個の短い英単語、省略形、そして思い出しやすい文字列からできている。各単語の平均長は4.2文字である。最も長い単語は 6 文字である。この一覧は Peter Kwangjun Suk がインターネットニューズグループ sci.crypt にポストした、もっと長い単語一覧を元にしている。

ダイスウェアを使う

「ダイスウェア単語一覧」を使うには一個以上のダイス(さいころ)が必要である。ダイスはボードゲームに付属してくることも多いし、おもちゃ屋、趣味の店、手品の店などで単独でも売られている。トイザらスではダイスの5個セットが$1.49で売られている。

  1. 最初に「ダイスウェア単語一覧」をダウンロードし、コンピュータ上に保存する。必要なら印刷してもいい。それからブラウザの「バック」ボタンを使ってこのページに戻ってくる。
  2. 次に、パスフレーズに何個の単語を使うかを決める。PGP や Viacrypt や類似の暗号化プログラムを使うときのお勧めは5個の単語を使ったパスフレーズである。面倒なら4個でもそれなりの防御になるだろう。偏執狂的な人であっても、6単語からなるパスフレーズなら、近い将来の攻撃は防げるだろう。
  3. さて、ダイスを転がして結果を紙に書き留めよう。出た目は5個づつまとめて5桁の数字として書く。そしてパスフレーズに必要な単語の数だけ、その5桁の数字を作っていく。一つのダイスを5回ふってもいいし、5個のダイスを一回ふってもいいし、その中間のどんな組み合わせでもいい。複数のダイスを一度にふるときには、ダイスの目を左から右に読んでいくことにする。
  4. 「ダイスウェア単語一覧」の中から、一致する5桁の数字を探し、その隣にある単語を探す。例えば、 21124 だったらパスフレーズに使う次の単語は "clip" となる。
  5. 終わったら、あなたが見つけた単語列があなたの新たなパスフレーズとなる。それを暗記する。そして書き留めた紙を廃棄するか、絶対に安全な場所に閉まっておく。これで全部完了である!

勧めにしたがって、5単語からなるパスフレーズを作るとしよう。5×5すなわち25回ダイスをふる必要がある。例えば出た目が以下のようであったとする。

      1, 6, 6, 6, 5, 1, 5, 6, 5, 3, 5, 6, 3, 2, 2, 3, 5, 6,
      1, 6, 6, 5, 2, 2, それから 4


紙に5個づつまとめて結果を記入する。

      1 6 6 6 5
      1 5 6 5 3
      5 6 3 2 2
      3 5 6 1 6
      6 5 2 2 4

それから各5桁の数を「ダイスウェア単語一覧」から探し出し、その隣に書いてある単語を書き留める。

      1 6 6 6 5     cleft
      1 5 6 5 3     cam
      5 6 3 2 2     synod
      3 5 6 1 6     lacy
      6 5 2 2 4     yr
      

パスフレーズは以下のようになる。

      cleft cam synod lacy yr
 

ちょっとしたコツ

どうしてダイスウェアを使うの?

インターネットにはどうやってパスフレーズを選ぶかについて、非常に多種類のアドバイスがある。よいアドバイスも多いが、中にはよくないものもある。しかしほとんどすべてのアドバイスは、「何が他人に推測しにくいか」という判断をユーザに要求する。どうやってその判断をするかについては説明していなかったり、複雑な数学的な計算をあなたにしろというものもある。それに比べれば、ダイスウェアのパスフレーズ生成方法は以下の長所を持っている。

ダイスウェアの「完全に規定されている」という性質は PGP の新規ユーザにとってはとても重要である。以下に述べるのは、 インターネットのニューズグループ alt.security.pgp に 1996年の1月に投稿された、ある人の経験談である。

「私は、個人的な話をしたいと思います。それは、安全なパスワードを選択するのがいかに大切かを確信するのは初心者にとってどんなに難しいか、そして安全なパスワードをどうやって構成するかを初心者に理解させるのがどんなに難しいか、という話です。私はインターネットとセキュリティ関連について長い経験を持っています。一方、私の妹はまったくの初心者でインターネットのアカウントを開設したばかりです。妹は[ 中西部 ] に住んでおり、私は [ 西海岸 ] に住んでいます。そのため、私たちはとても個人的な電子メールを大量にやりとりしています。

最近、妹は自分のインターネットのパスワードをご主人に教えたいと思いました。そうすれば、ご主人もインターネットが使えるからです。しかしまた、妹は、ご主人が読めない個人的なメッセージの交換を私とできるようにしたいとも望んでいました。私はもちろん妹に PGP を紹介しました。

他人が簡単に推測できないパスワードを選ぶのは大切である。それから理想的なパスワードは、他では意味をなさないナンセンスな単語である。…私は妹にそういう通常のレクチャをしました。私は、誕生日、記念日、名前は選んじゃだめだと話しました。私はランダムな文字や数字の組み合わせについては教えませんでした。というのは私たちは世界的な規模のセキュリティを必要としているわけではなく、単に私たちの手紙を妹のご主人に見られたくないだけだったからです。さて、それで、妹がPGPパスワードを選んだ後で、私はそれを破ってみようと思いました。ところが、しょっぱなの単語がずばり的中してしまったのです! あまりにもあっさりと私が見つけてしまったので、妹はびっくりしてしまいました。でも妹の選んだ単語というのは妹を知っている人なら誰でも試しそうな語だったのです。そこで私はパスワード選択についてのいくつかのコツを妹に授けました。その後でもう一度妹にパスワードを選ばせました。今度も、3回トライしたら正しい語を見破ってしまいました。とうとう妹は降参し、私がパスワードを選んであげたのでした。」

もしもこの記事を書いた人の妹さんがダイスウェアを使ったとしたなら、彼女が最初に作ったパスフレーズでも完全に安全であり、彼女以外に知られることはなかったでしょうに。

リンクと参考文献

パスフレーズとダイスウェアについての情報は以下を参照してください。

PGP パスフレーズ使用についての調査 (A Survey of PGP Passphrase Usage) PGPユーザがパスフレーズを作るときに実際にやっていることを調べるために私が行ったちょっとした世論調査。改善のためのアドバイスつき。

Diceware for Passphrase Generation and Other Cryptographic Applications ダイスウェアの他の利用法と、ダイスウェアの安全性に関する分析。

Passgen: A Password Generator Java Applet ユーザが選べるテンプレートを元にし、キーボードの時間の遅れを使ってランダムなパスワードを生成する。ダイスウェアの方法よりは安全ではないが、ログインパスワードや類似のアプリケーションには適する。ソースコードつき。

Other Papers on Cryptography by Arnold Reinhold P=?NP -- who cares?, cryptanalysis of histocompatibility, etc.

日本語版のダイスウェアページ 翻訳および管理は結城浩が行っている。

S. N. Porter, A Password Extension for Improved Human Factors,
Advances in Cryptology: A Report on CRYPTO 81, Allen Gersho, editor, volume 0, U.C. Santa Barbara Dept. of Elec. and Computer Eng., Santa Barbara, 1982. Pages 81--81. Also in Computers & Security, Vol. 1. No. 1, 1982, North Holland Press.


PGPに関してさらに情報を得るためには以下を参照のこと。

MIT の PGP 配付サイト
(訳注: PGP を米国から海外にダウンロードするのは米国の法律に反する行為です。)

Fran Litterio の暗号、PGP、プライバシーのページ (Fran Litterio's Cryptography, PGP and Your Privacy Page)

PGP Inc.'s Home Page


以下に、パスフレーズの作り方について書いている他の三つのサイトを示す。これらのサイトの情報が誤っているとは言わないが、ただ、多くの人々にとっては複雑過ぎるだろう。見てもらってあなたご自身で判断していただきたい。

Randall T. Williams による「パスフレーズFAQ

Grady Ward による「パスフレーズの選びかたFAQ

Jerry Whiting による「よいパスフレーズの衛生学 (Good Passphrase Hygiene)


Arnold G. Reinhold
e-mail: reinhold@world.std.com
PGP Fingerprint:
FA C3 82 FB 05 5E 03 1A 34 04 79 EA 9E 76 7B 67
Copyright (c) 1996,1997 Arnold G. Reinhold, Cambridge, Mass. USA.
The author hereby grants rights for free non-commercial electronic
distribution of this entire text with attribution.
Last updated March 24, 1997

Japanese Translation:

結城浩 (Hiroshi Yuki)
e-mail: hyuki@hyuki.com
PGP Fingerprint:
10 42 77 93 C7 83 EA 72 AE B7 8F B6 3E 90 BA 08

Japanese Translation Copyright (c) 1996,1997,1999 Hiroshi Yuki, Tokyo JAPAN.
The author hereby grants rights for free non-commercial electronic
distribution of this entire text with attribution.
Last updated December 31. 1999