0 図 3 JAL のログイン画面にアクセス 方イル町編第 ( Q 景示 ) 0 プマークツー′をル 1 崢 こ内 国、 ~ 」 AE マイレ 1 ンバンク第、ツイ - : 当 ・イトマ、フ、へ↓ 1 、 ( み気、 ー第イン出ミ当けり - ドを嶼ミ 強員ロイン ををれのカ物 ・ JA - マイレージ / パスワード認証では、入力しているところを他人から見 られないように隠すのが普通です。しかし、傍目には何を しているのか分からない方法なら、手川頁を人に見せて煙に 巻くこともできるでしよう。 証手法は無限にありますが、誰にとってもベストな手 法を考えるのは難しいので、楽しいもの、強力なもの、簡 単なもの、おもしろいものなど、状況に適した方法を利用 するほうがよいでしよう。たとえば、以下のようなものが 考えられます ( 括弧内は必要な知識や能力です ) 。 ・与えられた地名を地図上でクリックする ( 地名の知識 ) 。 ・詰め将棋の問題を解く ( 将棋の実力 ) 。 表示された楽譜を演奏する ( 楽器と譜面を読む技術 ) 。 ・聞こえる不暗をそのまま弾く ( 絶対立咸 ) パスワードによる認証結果には成功 / 失敗の 2 通りしか ありませんが、この手法なら、知識や能力に応じて認証レ ベルを変えることができるでしよう。全問即答なら問題は ありませんが、回答に時間がかかった場合は、それなりに 注意してサービスを提供するといった酉が必要です。 1 ) ゆ / / 卩′れ“第 - NO 日、一朝を一 0 ー 、ツアース、 各のホット 」 AL カード 入会キ 充ア するのかもしれません。いすれにせよ操作に関する手がか りは皆無なので、それを知らない人がパスワード生成に成 功する確率はかなり低いでしよう。なぞなそ認証よりは操 作が應えにくく、忘れてしまう可能性もありますが、なぞ なそ認証よりレベルを強くすることも弱くすることも簡単 です。 安全の工夫 今回の実装手法では、サーバーから送られるパスワード 今回紹介した方法の有効性は、ふだん利用しているさま を getpassword. cgi で取得しているため、タッピングなど ざまなサイトで検証できます。新たなシステムの使いやす でバケットを盗み見られるとパスワード文字列が漏れてし さは、短期間の実験ではなかなカ斗リ定できません。毎日、さ まいます。ユーザーの操作をもとにローカルにパスワード まざまな認証手法を使っていくうちに、より効果的なアイ を生成すればよいのですが、そうすると操作方法が分かっ デアカ頓に浮かぶ可能性も高くなるでしよう。 てしまい、画像なぞなそ認証の実現は難しくなります。文 今回はソフトウェアによる実装だけ紹介しましたが、デ 字列を日部引ヒして送る方法も考えましたが、パスワードを スクトップ PC などの据置きシステムで利用する場合は、 サーバーのどこかに記録しておくかぎり、危険はなくなり 自宅の鍵の形伏をパスワード文字列に変換するといった、 ません。実際の運用には、もうひと工夫が必要でしよう。 特別なハードウェアの利用も実用的かもしれません。今 楽しし、認証 後、各種のハードウェアやソフトウェアを用いた認証の実 験をおこなおうと思っています。 パスワードを思い出して入力する作業は煩わしいもので ( ますい・としゆき産業技術総合研究所 ) すが、画像なぞなそ認証のような、自分の知識や能力にも [ 赭文献 ] とづく方式ならどうでしようか。認証に使う写真を選んだ [ 1 ] 高田哲司、小池英樹「あわせ絵 : 画像登録と利用通知を用いた正 り、自分しか解けない問題や技術を工夫するのは楽しいで 候補 j 尺カ式による可正方式の強化法」、情報処理学会論文誌、 しよう。知的なトリックを使ったり、ゲーム的な要素をも VOL44 、 No. 8 、 2003 年 8 月 たせることも可能です。自分だけカ駛える認証手法を考え るのは簡単ではありませんが、憶えにくいパスワードをむ りやり暗記するよりもはるかによいのではないでしようか。 おわりに 156 UNIX MAGAZINE 2006 . 3
文房具としての 図 1 言 & 正局と証日 検証 検証 検証 ユーザー 認証局 ルート認証局 証明書 ( 公開鍵 K(R 。ん p ) ) 証明書 ( 公開鍵 K(), ん p ) ) 証明書 ( 公開鍵 K(User,p)) 署名 秘密鍵 K(). ん ) 署名 秘密鍵 K(User,s) 秘密鍵 K ( R 。。 , ) 署名 さきほと。生成した乱数情報は、 -rand オプションで指定 しています。出力先は一。 ut オプションで指定します。 こでは private/cakey. pem を才定していますが、 openssl . cnf で日定を変更した場合は、それに合わせてください。 また、秘名腱を TripIe DES で暗号化するために一 des3 を付けています。そのため、秘密鍵の生成後にパスフレー ズの入力を求められています。これにより、秘密鍵を利用 する際にはパスフレーズが必要になるわけです。 最後の、、 2048 " は鍵長で、 2 , 048 ビットの鍵が生成され ることになります。 通常、鍵の中身を確認することはあまりしませんが、せ 秘密鍵と公開鍵の生成 っかくですからどんなものかみてみましよう ( 図 4 ) 。繰返 それでは、秘密鍵 K(R00tCA,s) と公開鍵 K(R00tCA,p) しになりますが、秘密鍵は人に見られてはいけないもので を生成しましよう。まず、十分な乱数を得るための乱数情 すから、くれぐれも注意してください。 報が格納されたファイルを用意します。このファイルは十 この図では 3 つのコマンドで中身をみています。最初 分ランダムなものを使ったほうがよいのですが、適当な口 の形式は秘密鍵を出力するもの、次の形式は公開鍵を出力 グファイルを利用したりすることもあるようです。ここで するもの、最後の形式は RSA の仕組みでもっとも大事な は、昨今の OS の多くで用意されている /dev/random を 、、法 (modulus)" を出力するものです。、、法 " は公開鍵と 使って生成しましよう ( 図 2 ) 。 秘密鍵のどちらにも含まれているので、これ自体は見られ /dev/random は、カーネル内に十分な乱数カ在しな てもかまいません。 い場合にプロックします。一方、 /dev/urandom という いずれのコマンドも Triple DES で暗号化された cakey デバイスもあります。これは、カーネル内に乱数カ在し . pem を復号しているため、鍵を生成したときに入力したパ ない場合に、齠以乱数を発生させて返します本来は /dev スワードが必要です。 / , 00d00 、から生成したほうか望まし 0 、 0 碆すが、急ぎ 0 証明書署名要求の生成 ときに上記のコマンドでプロックしてしまった場合などは、 証明書を認証局に発行してもらうときは、証明書署名要 代わりに /dev/urandom を使ってもいいでしよう。 求 (CSR : Certificate Signing Request) を出します 2 乱数清報ができたら、 openssl コマンドを実行します。 これは、認証局の署名がない証明書だと考えればいいでし こでは公開鍵暗号方式として RSA を使います。 RSA の鍵ペアを生成するサプコマンドは genrsa です ( 図 3 ) 。 2 証明書予要求と呼ばれることもあります。 図 2 乱数の生成 # dd if=/dev/random of=rand. dat bs=lm count=l 1 十 0 records 1 + 0 records out 1048576 bytes transferred in 0.803 secs ( 1305 823 bytes/sec) 能です ) 。とりあえず、 700 にしておけばいいでしよう。 # chmod 700 private # ロ 65 UNIX MAGAZINE 2006.3
無線い N アダブタを接続して タグ付き V し AN による各種サービス提供 ギガビットネットワーク検証用機器に 最大 1 6 , 1 1 OMTU 対応 *tjl-ANÆ載て」 umboPacket の解析等。 USB 入出力機器 ( モニタ / ボード / マウス ) で端末化 USB2.O 対応で、 K / B やマウスの他 USB 接続 VGA アダブタも接続可。 認証サーバに *samba 、 ldap 、 FreeRADlUS 等のオープンソースソフトウェアを利用。 駆動部品がない低故障率を活かし、連続稼動する認証サーバとして。 無線 LAN 対応、耐環境仕様などで、様々な環境に設置が可能。 VLAN 参加クライアント限定のファイルサーハや WEB サーバに。 無線 LAN アダブタ を接続 VGA 、キーボード、 マウスを接続 / 丿 B し OG サーバに ※ MovabIe Type や 05XOE を使用 社内向け情報公開ツールとしての og のサーバに。 簡易ロードバランサに X オーフンソースソフトウェア balance を使用。 その他の用途に HA 機能を含む、停止しないシステムを安価に構築可能。 FaiIover balance 搭載 時刻配信サーバにオ→ンソースソフトゥェアれ t を使用。 電波時計式や GPS 式の時刻取得テパイスを接続、 ntpd で時刻配信。 ・ VPN ソフトウェア等を搭載し、セキュアなネットワーク環境の構築に ー使用ソフト : 「破し n 」「 OpenVPNJ 等】 ・高耐久性と故障率の低さから認証用サーバとして、プライベート CA や PGP 鍵の保存サーバとして ー使用ソフト : rOpenCAJ rOpenPKSDJ 等】 ・ RFID リーダとの組み合わせで流通管理や入退室管理のサーハとして ・部署毎に判定ルールの違うスバムメールチェッカーとしてい用ソフト : spamassasim 引 ・ USB カメラからの収録した画像データを蓄積・配信するサーバとして に用ソフト : webcam(xawtv に含まれる ) 等ー ・ソースコードの管理サーバとしては用ソフト : rcvsl rsubversiom 引 安心の純国産サーバ品質 OpenMicroServer TM 本体価格 : 53 , 71 5 円 WEB ・直販価格 ( 税込 ) 56 , 400 円 ー OMS - A し 400 / 1281 オープンマイクロサーハ 0 マイクロサーバに必要な機能を て実装 コンバクト・ルータ機能・ DHCP サーバ機 すべ コンヒ・ユータアスリートのベストバートナー にしてついに発売に至りました。 [OpenMicroServer] が、ユーサの声を形 その意匠を受け継ぐ純国産マイクロサーバ を超えるベストセラー [OpenBlockS] 。 なき堅牢性などを誇り、累計出荷台数 2 万台 能・簡易ファイアウォール機能・そして比類 コンバクトなホティ 内蔵日 ashROM が 16MB にユーサ工リア 2MB debian(3.1 SARGE) 対応 ※ 1 圧第後 2MB 。 ギガビットイーサ x2 ボート実装 60 搭載外部機器との接続でテータの I/O 、制御が可能 動作時周辺温度 50 ℃を保証 旧 v6 対応 高クロック数 CPU Au1550 ( 400MHz ) 搭載 PoE 2 対応で AC アダブタなしでも動作可能 抜け防止クランプ LED DIO RoHS 対応鉛フリー USB2.0 x 2 ボート搭載 ※ 2 [Power-Over-Ethernetlo Ethernet ケープルを通して 外部から電力を供給します。 Giga-NlC x2 シンプルさと安定性 SSD/Linux の継承 各種安全規格・妨害電波規制規格等に対応 / 準拠 DC IN US 日 20 x2 ンリアルホ・一ト 1 0 / 100 ( PoE 受電 ) 灯スイッチ FRONT ぶらっとホーム株式会社 東京都千代田区外神田 1 -18-13 秋葉原ダイビル 9F Plat'Home 〒 1 0 ト 0021 お問い合わせは こちら TEL 03 ( 3251 ) 2600 FAX 03 ( 3251 ) 2602 ( 祝祭日を除く平日の午前 9 時 30 分から午後 6 時まで ) URL http://www.plathome℃ 0. jp E-MAIL sales@plathome.co.jp
ェ イ 街 角 の フ ス イ ン タ 96 証 一三 イ マ 増井俊之・ 2001 年 7 月号や 2002 年 1 月号で、パスワード認証 と、たとえ文字列が短くてもふとした拍子に忘れてしまい、 の問題を解決する、、なぞなそ認証 " を紹介しました。この サービス提供者に問い合わせる結果になります。提供者側 方式では専用のサイトの構築が必要で、残念ながら一般の からみると、いくらきちんとした認証システムを構築して Web ページには適用できません。今回は、通常のパスワー も、パスワードを忘れた場合の処理に無駄なコストがかか ド認証を使うサイトで、なぞなそ認証などの任意の認証手 ることになります。パスワードと生体認証などの装置を併 法を利用する方法を考えてみましよう。 用し、ユーザーの便宜と安全性を両立させるシステムもあ ります。しかし、複数のシステムを組み合わせると問題が 増えることも多く、注意が必要です。このような認証シス テムの問題点については、画像認証システムを開発してい るニーモニックの國米氏カ羊細に才甜商しています 1 。 パスワードによる認証システムには長い歴史があり、ひ ノヾスワード認証には数多くの実装があり、攻撃手法やそ ろく使われてきました。その結果、システムの構築方法や れへの対策などもよく知られています。ですから、上に述 安全生に関する多くの知見カ嚆積され、計算機にログイン べたような問題はあっても、適切に運用すれば安全だろう したり Web 上のサービスを利用する場合の認証手法の定 と考える人が多く、今後もすたれることはないでしよう。 番となっています。しかし、ユーザーにとってはひどく使 ーモニックが考案した画像認証方式 なぞなそ認証や、 いにくい面があります。 「あわせ絵」システム [ 1 ] のように、パスワードよりも効果的 辞書に載っている単語や固有名詞の組合せによるパスワ と思われる手法はいろいろあります。しかし、それらを利 ードは、最近では比較的簡単に破られてしまいます。した 用するにはシステム全体に手を入れる必要があり、現実の がって、安全性を保つには、なるべくランダムで長い文字 サービスで運用するのは容易ではありません。認証システ 列を使う必要があります。ところが、長いパスワードは入 ムをゼロから実装するのは大変ですし、新しいシステムの 力に手間がかかるだけでなく、暗記も難しいため、けっきょ 場合、バグなどによるセキュリティ・ホールか有在する確率 くどこかに書き留めることになり、かえってセキュリティ は、パスワード認証などよりもはるかに高くなります。ま の問題がひろがってしまいます。最近は、多くの Web プ た、新しいシステムに戸惑うューザーも多いでしよう。認 ラウザにユーザー名やパスワードを記録する機能があるの 証システムはサービスの中核をなすものではなく、システ で、これを利用すれば Web 上のサービスでパスワードを ムを開発 / 運用する側もこういった面倒は避けたいはずで 入力する必要は少なくなります。とはいっても、パスワー すから、優れた認証システムを知っていても、、認証は、と ドを記億したノート PC を盗まれたりすると、あらゆるサ りあえずパスワードで " ということになるのは目に見えて ービスに自由にアクセスされるため、重要なサービスでこ います。 のような機能を使うのは危険です。 数多くのサービスごとに異なるパスワードを設定する 1 http://www.mneme.co.jp/data/thesis.html バスワード認証の問題点 153 UNIX MAGAZINE 2006 . 3
文房具としての 図 7 証明書署名要求に自己署名する # openssl X509 -req —signkey private/cakey ・ pem —days 3652 —extfile openssl . cnf 疇 - —extensions V3_ca —in careq. pem —out cacert . pem Signature 0k subj ect=/C=JP/O=UNIMAG/OU=UNIMAG Root CA Getting Private key Enter pass phrase for private/cakey ・ pem: # ロ 表 1 証日′瞎署名要求に自己署名する際のオプション オプション 意味 図 7 で窈直 電了署名をする秘名鍵 signkey private/cakey. pem 有効期限 days 3652 ( 10 年 ) 証明書に組み込むバージョン 3 拡張を記したファイル extfile openssl. cnf extfile で推定したファイルの、証明書に組み込むバージョン 3 拡張を定義したセクション名 extensions V3 —ca 電了署名の対象となる証明書署名要求 careq. pem 署名済み証明書の出力先ファイル out cacert. pern がる証明書は X. 509 バージョン 1 のものになってしまい という意味です。すなわち、信頼できる第三者のなかに ます。 の証明書の発行者 ( 自分自身 ) がみあたらなかったという ことです。 このコマンドを実行すると、 cacert. pem というファイ OpenSSL がある Subject の証明書を探す場合には、ま ルカ胙られるはすです。証明書署名要求のときと同じよう ず Subject のハッシュを計算します。そして、第正局の に内容を確認しておきましよう。サプコマンドは X509 を 証明書のファイルが十内されたディレクトリ " のなかで、そ 使いますが、その他のオプションは証明書署名要求の内容 のン、ツシュ値が名前に付いたファイル " を探します。し を確認するときと変わりません ( 図 8 ) この図を見ると、 I 。。日発行者 ) カ : 追加されており、そ たがって、証明書を検証するためには、あらかじめこのよ うなファイルを用意しておかなければなりません。 の DN ( 識別名 ) が自分自身になっていることが分かりま それでは、、、認証局の証明書のファイルが格納されたデ す。また、 Validity が署名した時点から 10 年後までに イレクトリ " とはどこでしようか。これは、 openssl のオ なっていますね。さらに、 x. 509 バージョン 3 の拡張フ プション -CApath で指定することもできますが、省略し ィールドも見えます。このうち、 Basic Constraints が た場合は openssl.cnf で設疋されたディレクトリになりま CA:TRUE であることから、この証明書が認証局用のも す。 ${ca::default-ca} がデフォルトの CA-default であ のであると分かります。 るとすると、 ${CA-default::certs} で設定したディレク 自己署名証明書を検証してみる トリです。最初の設定を変更していなければ、作業してい るディレクトリのなかの certs というディレクトリになり ルート証明書ができたので、この証明書を検証してみま ます。 しよう。自分の秘密鍵で署名したわけですから、証明書に ハッシュは、 openssl の X509 サプコマンドに—hash オ 含まれている公開鍵で検証できるはすですね ( 図 1 からも プションを指定することで計算できます。このハッシュは 分かると思います ) 。証明書の検証に使うのは verify サプ 慣例的に証明書へのシンボリック・リンクとすることが多 コマンドです ( 図 9 ) 。 こでもシンポリック・リンクを作成します ( 図 いので、 おや ? OK とはいわれましたが、なにやらエラーカ咄て 10 ) 。ハッシュのファイル名の末尾には、 、、 .0 " を付けます。 います。うまく署名できていないということでしようか。 これは、同じハッシュの証明書があった場合に数字を変え じつはこのエラーは、 てリンクを張るためにあるようですが、基本的には何も考 「いちおう検証できたけど、この証明書、自己署名やで。だ えすに、、 .0 " を付ければよいと思います。 から、自分自身で検証できただけやで」 ハッシュができたところで、もう一度検証してみましょ 生成時に設定したパスフレーズ 68 UNIX MAGAZINE 2006.3
原理的に優れていても、コストや危険性カ皜くューザー にとって扱いにくい認証システムが急速に普及するとは思 えません。その意味では、パスワード認証システムを使い やすくする方法を考えたほうカ観実的です。 パスワード認証システムの有効利用 さきほど述べたように、パスワード認証の最大の問題は、 入力に手間がかかり、暗記も難しい点にあります。したが って、パスワードを入力したり暗記する方法をやめ、別の 手段でパスワードを生成して入力できるようにすれば、か なり使いやすくなる可能性があります。自分しか知らない 属性をなんらかの方法でパスワード文字列に変換する方式 なら、従来のパスワード認証システムを変更せずに、異な る認証システムカ駛えます。 たとえば、指紋や鍵の形犬を文字列に変換するシステム があれば、その文字列を用いて、通常のパスワード認証を おこなうサービスカ坏リ用できるでしよう。 このように、パスワードを中間言語のようなものと捉え、 なんらかの方法でパスワード文字列を生成することで、任 意の認証手法をパスワード認証システムで使えるようにな ります。その場合、ユーザーは実際のパスワード文字列を 知る必要すらありません。 画像なぞなぞ認証の実装 このような、、中間言語方式 " には、いろいろな実装がある でしよう。たとえば、 USB キーなどのハードウェア、ある Greasemonkey にリスト 1 のスクリプト (imagequiz ・ いはマウス操作やなぞなそ認証といったソフトウェアでパ user. (s) をインストールして図 1 のように設疋し、 M ⅸ i2 に スワードを生成する手法などが考えられます。 アクセスします。すると、パスワード入力欄の色カ畯わっ て imagequiz. cgi カ呼び出され、図 2 のなぞなそ認証画 面が表示されます。表示されている 5 枚の画像のうち、私 と関連のあるものは 1 つだけです。これをクリックして選 1 月号で紹介した Greasemonkey を応用すれば、パス 択すると、別の写真が表示されるので、ふたたひ私に関連 ワード認証を利用するサービスに前述の方式を適用し、パ のあるものをクリックします。これに 5 回連続成功すると スワード入力の代わりに自前の言正システムカ駛えます。 パスワードがパスワード欄に入力されます。 自前の認証をおこなう CGI と、認証結果を取得する この操作ではユーザーはキーポードに触れていません CGI スクリプトを用意し、以下の機能をもつ Greasemon- が、それでもパスワード入力を求めるサイトにログインで key スクリプトから両者を呼び出します。 きます。 ・ password 属性をもつフォームをベージ内で検索する。 画像上の操作を利用する認証 ・そのようなフォームがあれは新しいウインドウを開き、 なぞなそ認証の場合はクリックを 5 回繰り返すという手 自前の認証を実行する CGI を呼び出す。 順があるので、無限に操作すればたまたま認証に成功する ・同時に認言騰吉果を取得する CGI を動かし、得られた結 果をフォームに貼り付ける。 2 http://mixi ・ jp/ 図 1 Greasemonkey の疋 Manaee user Scripts P 叩 0 が まー引℃ k 「 0 を引第叩をに k 「 に M 叩 3 ⅵ日一 ln e を po が ・・レ℃し dp 懿” http・ TiiX1. Exc 地 dp 確 図 2 Mixi のログイン画面にアクセス 万イ価第 0 を〒動 0 カ ) マ、・り喞ツ・ - ルプ 0 ( ) 示ゆ′′ど 00 れ工 0 の一 MO ご朝をツーま AllAWut 1 、 0 00 0 習 00 第 ー松戸駅 : 意まなは 新規豊す ニム 2 ン住こ : いて驟ま 0 ルプ 言ま社ユュイいシニ主リニ皿ら報載驪、 2 いて用めスタノ ) 舅又 Greasemonkey でマイ認証 154 UNIX MAGAZINE 2006.3
Mar. 2006 2006 年 3 月 1 日発行 ( 毎月 1 回 1 日発行 ) 第 21 巻第 3 号通巻 233 号昭和 63 年 9 月 5 日第三種郵便物認可 ユニックス・マガジン 仮想ストレージとしての ファイルシステム 一理想的なファイルシステム ・ストレージのモデル化 ・ファイルシステムの構造 ・ VFS の多層構造化 三二・ラ。 」のン幻ョ」じリっ住引せも プゴセ芳の第匕了 天文学とリ N Ⅸ M 円プログラミングの基礎 国立天文台のネットワーク ネットワーク回線の変更 プログラミング・テクニック newsyslog—do_entry 関数 リ N Ⅸ便利鮎 M00 引 e の活用法 し inux のツールたち Mandriva Linux 2006 文房具としてのリ N Ⅸ プライベート認証局の構築
べ イ プ 11 月号でお話ししたように、秘密鍵と公開鍵は電子認証 局の重要な要素です。もちろん、ルート認証局の証明書も 雹甬の証明書ですから、 x. 509 に則った形式でなければな 宮地利幸 りません。さらに、ルート認証局は、、自己署名証明書 " 、す 森島直人 なわち自分自身の秘密鍵 K(R00tcA,s) で署名した証明書 文房具としての で運用しているのでした。 UNIX すこしだけ準備 こからの作業は openssl.cnf で設疋したディレクトリ 前回 ( 1 月一引は、電子証明書の中身の概略と、 OpenSSL でおこないます。たとえば、 ${ca::default_ca}l がデフォ の設疋ファイルについて説明しました。 ルトの CA-default であれば、 ${CA_default::dir} で設 X. 509 で定義されている電子証明書は、現行ではバージ 定したディレクトリです。前回の設疋をそのまま使ってい ョン 3 カ吏われています。バージョン 3 では拡張フィール るのなら、 /etc/openssl (pkgsrc の OpenSSL を利用し ドが用意され、標準で定められたもの以外にも、利用者が ている場合は /usr/pkg/etc/openssl) になります。 独自に定義したフィールドを使うことができます。 一方、 OpenSSL の設疋ファイル (openssl.cnf) は汎用 # cd /etc/openssl # ロ 的に作られているためか、やや複雑で分かりにくかったか さっそく openssl コマンドを使って・・・・・・といいたいと もしれません。基本的には、設定ファイルの内容が、、セク ころですが、その前に 1 つだけ準備が必要です。 ション " という概念によりいくつかの部分に分割されてい これから作成するのは公開鍵と秘密鍵です。このうち、 ること、セクション内の設疋からほかのセクションを参照 秘密鍵はほかの人に知られてはいけないのでしたね。秘密 する場合があること、これによって木構造のような階層構 鍵カト部に漏れてしまう ( 危殆化する ) と、正明書の持ち主 造となっていることを押さえておけばよいでしよう。 に対するお墨付きが意味をもたなくなり、証明書はその役 また、 OpenSSL を使うときは、 割を果たせなくなります。 # openssl command [ 0 盟 0 〃 s ] [ 佖 s ] とくに認証局の秘密鍵が危殆化すると、その認証局が発 というかたちでサプコマンドを指定します。そして、 req 行した証明書もすべて危殆化してしまいます。ちょうど、 や ca といったいくつかのサプコマンドには、それぞれに 役所のはんこが盗まれてしまったようなものです。役所以 対応したセクションがあるのでした。 外で住民票を発行できるようになったら、その住民票は信 今回は、いよいよプライベート認証局の構築にとりかか 用できませんよね。 ります。まずは、ルート認証局の証明書を発行しましよう。 そこで、秘密鍵を保存するディレクトリのノヾー ツンヨ ンを、他人から見られないように変更しておきます。さき ルート認証局の証明書を作る ほど移動したディレクトリには、以下のようなファイルと ディレクトリがあるはすです。 ルート認証局 (CA) の証明書とは、どのようなものだっ たでしようか。前々回 ( 2005 年 11 月号 ) の最後にも載せ # 1s —F certs/ openssl . cnf private/ た図 1 で、もう一度確認してみましよう。この図を見ると、 # ロ ルート認証局の証明書は、 このうち、最後の private カ化靆を保存しておくディ 秘密鍵 K ( 。 tc 員 ,. 、 ) と公開鍵 K(R00tcA,p) レクトリです ( もちろん、叩 enssl. cnf で設疋することが可 ・証明書に含まれる情報 1 ca セクションの変激 default-ca で言されている値を表します , あるセ 秘密鍵 K(R00tCA,s) による電了著名 クション内でほかのセクション section の変数 narne を参照する場合、 ${section::name} のように記できます。詳しくは、 1 月号の「変数 が必要なようです。 の譿との項 ( 56 ページ ) をこ覧ください。 一三ロ一三 misc/ 64 UNIX MAGAZINE 2006.3
連載 /UNIX Communication Notes 213 り、いつでも、どこでも、どんなところでも、ネットワー クとコンピュータを用いたシステムが介在し、私たちの社 会的活動の基盤となっているのである。 したがって、そういった基盤を支える巨大システムがい ったん停止すると、かってとはくらべものにならない大き な影響をおよばす。たとえば、 2005 年 11 月に発生した東 京証券取引所でのシステム障害により、その日の午前中の オにおよび CB などか涜買停止に追い込まれた。東京証券 取引所では初めてのことだったが、結果として、世界第 2 位の取引高を誇る東京証券市場の国際的な信用は急落した。 あるいは、 2006 年 1 月に起きた ETC の障害により、関 東地区の高速道路料金所では 8 時間にわたって ETC によ る支払いができない状態になった。その影響は、膨大な数 の通行車両におよんだ。残念なことに、最近ではこういっ た例は枚挙に暇がないほどである。しかも、これは特定の 業界だけで起きているわけではない。 このように、巨大システムカ甘是供するサービスカ止す ると、私たちの日常生活にさまざまなかたちで大きな影響 が出てくる。したがって、なんらかの障害対策が必要にな る。 最近は、重要な社会基盤に携わる事業者だけでなく、多 くの企業が BCP (Business Continuity Plan : 事業継 続計画 ) 、あるいは事業継続性の確保に躍起になっている。 BCP を立案する場合には、マネージメント・レベルの対 応だけでは不十分であり、現在の業務を支えるシステムに おける対応手順も定めておかなければ無意味である。従来 の独自システムを利用していたときは、 BCP を保証する 手法がある程度は体系化されていたといってもよい。しか し、オープン系のシステムに移行する過程で、それに代わ る方法が分かりにくくなってきた。誰もが刊架りの状態に あり、経験を積み重ねている途中というのが実情であろう。 教育による体系イヒ このような背景を考えるならば、オープン系の巨大シス テムが主流となった場合の設言 t や実装、運用管理、評価の 各領域における最適な手法をみつけ、体系化していかねば ならない。それには、すでに実務に携わっている技術者を 教育するだけではなく、情報科学関連の大学などにおける 教材などの整備カ坏可欠であろう。 これまでの先端領域における人材育成の経験を通じ、未 44 整備の知見を体系化するには、その領域の教育のなかでさ まざまな知識を集積、分類し、まとめていく手法が肩効で あることが分かっている。 このような取組みを積極的に進めていけば、巨大な情報 通信システムの開発、運用に携わる人材を継続して育成で きるはずである。さらに、体系化された言気 t 技術をより高 度にしていくことも可能になるだろう。 現在、私は内閣官房情報セキュリティ補佐官として活動 しているが、 100 % 大学人に戻ったときには、こまでに述 べた視点に立って、巨大システム構築に関する研究活動を 展開したいと考えている。 前置きがだいぶ長くなってしまったが、本題に入ろう。 前回は、情報資産を把握することの重要性について述べ た。今回は、情報資産の運用管理について考えてみる。 以下では、前回説明した、、情報資産の棚卸し " により、ど のような情報を保有しているかが明確になっていることを 前提にする。もし、皆さんが情報資産の運用管理を検討し 始めているのなら、何はともあオ情報の棚卸しをおこなう べきである。この作業を通じて、情報資産がどのように管 理されているかの実態カ甘巴握できるはずだ。さらに、スト レージ・サーバーなどのシステムも導入すれば、よりよい 情報資産の運用管理の実現も可能になるだろう。 情報資産を運用する体制力ったとして、それを上手に 運用管理するには何をおこなえばよいのだろうか。 共通の認証基盤の形成 もっとも重要なのは、情報資産にアクセスする可能性の あるユーザーを対象とした共通の認証基盤の構築である。 なお、今回は共通の認証基盤の重要性に焦点を絞り、具体 的な構築方法には言及しない。 どんな資産であろうと、誰がどのような権限で利用でき るかを明確に定めているのが普通である。情報資産も例外 ではなく、目的とする情報ごとに、アクセス可能なユーザ ーとその権限を定義しなければならない。ただし、情報資 産の場合には、有形の資産とは異なり、、、誰が " という情報 を統一的に扱う機構が必要になる。その機能を提供するの が、、、共通の認証基盤 " である。 ↑侵資産の UN 工 X MAGAZINE 2006 . 3
インターフェイスの街角 リスト 1 なぞなぞ言 & 乎出しスクリプト (imagequiz ・ user ・ js) / / ==/UserScript= / / @include http://* @replace く input type= password"> with user password / / @namespace http ://pitecan.com/MyPassword @name lmage Qu i z / / ==UserScript= / / Re1eased under the GPL license / / Copyright (c) 2005 , Toshiyuki Masui (http: //pitecan. com) $Date : 2005 ー 12 ー 21 14 : 44 : 53 + 0900 (Wed, 21 Dec 2005 ) $ imagequiz. . 」 S / / getcgi は認証の終了まで待つ。 timeout でタイムアウト。 / / authcgi でマイ認証をおこなった結果を getcgi で取得。 / / マイ認証用のウインドウを開いてマイ認証を実行する。 function getpassword(te){ authcgi getcgi t ime out "http: //pitecan. com/MyPassword/programs/imagequiz ・ cgi" "http : //pitecan . com/MyPassword/programs/getpassword ・ cgi " = 20000 ; d = new Date; id = d. getTime() ; w = window ・ open (authcgi + ”?ur1=” + encodeURlComponent (location. href) + setTimeout (function(){ w. close() ; } ,timeout) ; " w 土 dt 五 = 400 , height=400" ) ; setTimeout (function(){ te . value GM-xm1httpRequest ( { method : "GET" ur1 :getcgi + "?id=tt 十 id, onload:function(details){ ; } , 2000 ) ; / / 最初にパスワードをクリア te. va1ue = details . responseText ; inputs = document. getE1ementsByTagName ( " input" ) ; fo て (var i = 0 ; i く inputs . length; i + + ) { inputs Ci] ; te if()e . type "password"){ te . style . backgroundC010r ; / / マイ認証の色 "#ffff80" te . va1ue getpassword (te) ; ことも考えられます。しかし、どんな操作でログインする かが分からなければ、第三者カ証をすり抜ける確率はほ ほゼロになるでしよう。 そこで、画像の選択を繰り返すのではなく、画像七でマウ スを操作し、それにもとづいて認証をおこなう方法を実装 してみました。まず、 imagequiz. user. js を imagepoint ・ user. js という名前でコピーし、 imagepoint. cgi を呼び出 すように書き換えます。そして、 imagepoint ・ user. js を Greasemonkey に登録し、 JAL のサイト (http://www. UNIX MAGAZINE 2006.3 jal.co. jp/) にアクセスすると、このスクリプトカ鮃び出さ れるようにします。 JAL のサイトにアクセスすると、 1 枚の画像が表示され ます ( 図 3 ) 。この写真は、越後湯沢駅にある新潟の清酒の 帋 ( システムで、いろいろな酒を 1 杯 100 円で飲めるとい うものです。この画像の上でなんらかのマウス操作をおこ なうとパスワードが生成され、さきほどと同様にノヾスワー ド欄に貼り付けられます。操作は、銘柄を順にクリックす るのかもしれませんし、、、八海山 " の部分を何回もクリック 155