窓の杜Logo
バックナンバー
・ 2006年5月 ・
最終回:めも理、2年生に進級!? (06/05/15)
・ 2006年4月 ・
第152回:NTPサーバーと電話の時報 (06/04/24)
第151回:アプリケーションの強制終了とサッカーのレッドカード (06/04/17)
第150回:サードパーティと車の改造 (06/04/10)
第149回:送るメニューとスタントマン (06/04/03)
・ 2006年3月 ・
第148回:ダウンロードのレジュームと長編マンガの読書 (06/03/27)
第147回:プレイリストとお菓子のレシピ (06/03/20)
第146回:ホットスポットと宅配便 (06/03/13)
第145回:ファイルの関連付けと専門医 (06/03/06)
・ 2006年2月 ・
第144回:SpeedStepとめも理のマラソン (06/02/27)
第143回:CC、BCCとクラス会の案内状 (06/02/20)
第142回:トラックバックと掲載誌の贈呈 (06/02/13)
第141回:ブログと首相の記者会見 (06/02/06)
・ 2006年1月 ・
第140回:ハッシュ値と人間の指紋 (06/01/30)
第139回:ヒューリスティックエンジンと実験室 (06/01/23)
第138回:ネットバンキングとラーメンの出前 (06/01/16)
・ 2005年12月 ・
第137回:グループウェアと職員室 (05/12/19)
第136回:モーフィングとお餅 (05/12/12)
第135回:GIFアニメーションとパラパラマンガ (05/12/05)
・ 2005年11月 ・
第134回:アスキーアートとビーズ細工 (05/11/28)
第133回:相対パスと上の階 (05/11/21)
第132回:アドミニストレーターと賃貸マンションの管理人 (05/11/14)
第131回:デスクトップ検索と専属探偵 (05/11/07)
・ 2005年10月 ・
第130回:パターンファイルと犯罪捜査 (05/10/31)
第129回:仮想メモリとコインロッカー (05/10/24)
第128回:アフィリエイトと販売代理店 (05/10/17)
第127回:アカデミックパッケージと子供料金 (05/10/03)
・ 2005年9月 ・
第126回:ブルースクリーンと朝礼の貧血 (05/09/26)
第125回:スタンバイとビデオの一時停止 (05/09/12)
第124回:ソースコードとペーパークラフト (05/09/05)
・ 2005年8月 ・
第123回:WYSIWYGとレストラン入り口の食品サンプル (05/08/29)
第122回:NASと庭の納屋 (05/08/22)
第121回:アルゴリズムとプラモデルの組み立て説明書 (05/08/08)
第120回:ストリーミングと電話の問い合わせ (05/08/01)
・ 2005年7月 ・
第119回:RAWデータと映画の原作 (05/07/25)
第118回:OCRと教科書の朗読 (05/07/11)
第117回:ベリファイと時間割の確認 (05/07/04)
・ 2005年6月 ・
第116回:マルチモニターと机の合体 (05/06/27)
第115回:ポートと駅の北口 (05/06/20)
第114回:ポップアップと漫画のフキダシ (05/06/13)
第113回:SNSと同窓会のお知らせ (05/06/06)
・ 2005年5月 ・
第112回:代打のバッターと仮想プリンター (05/05/30)
第111回:ルアー釣りとフィッシング詐欺 (05/05/23)
第110回:楽器屋さんと統合アーカイバプロジェクト (05/05/16)
第109回:手抜き感想文とテンプレート (05/05/09)
・ 2005年4月 ・
第108回:ダンボール箱とメディア (05/04/25)
第107回:詰め込みメモとCSV形式 (05/04/18)
第106回:車の免許とタイムスタンプ (05/04/11)
第105回:借りっぱなしの本とWebブラウザーのキャッシュ (05/04/04)
・ 2005年3月 ・
第104回:クロスサイトスクリプティングとかご抜け詐欺 (05/03/28)
第103回:GREPとアンケート調査 (05/03/14)
第102回:タスクトレイと腕時計 (05/03/07)
・ 2005年2月 ・
第101回:QRコードと学校の下駄箱 (05/02/28)
第100回:100回記念企画 窓の杜編集部に行ってみよう!(実写版) (05/02/21)
第99回:ログと学級日誌 (05/02/14)
第98回:マウスジェスチャーと変身ヒーロー (05/02/07)
・ 2005年1月 ・
第97回:Webメールと美人秘書 (05/01/31)
第96回:ごみ箱のデータと学食の下膳台 (05/01/24)
第95回:IMEと執事と国語辞典 (05/01/17)
・ 2004年12月 ・
第94回:エンコード、デコードとカップラーメン (04/12/20)
第93回:ポリゴンとお風呂のタイル (04/12/13)
第92回:RSSと電車の吊り広告 (04/12/06)
・ 2004年11月 ・
第91回:ファイヤーウォールと空港の持ち物検査 (04/11/29)
第90回:スパイウェア、アドウェアと盗聴器 (04/11/22)
第89回:デフォルトとご飯の大盛り (04/11/15)
第88回:PDFと設計図 (04/11/08)
第87回:タブレットとスケッチブック (04/11/01)
・ 2004年10月 ・
第86回:IEコンポーネントとスポンジケーキ (04/10/25)
第85回:共有フォルダと部室の雑誌置き場 (04/10/18)
第84回:スキャンディスクとダムの検査 (04/10/04)
・ 2004年9月 ・
第83回:デバイスのドライバーと車の運転手 (04/09/27)
第82回:サービスパックと家のリフォーム (04/09/13)
第81回:FAQとトイレの張り紙 (04/09/06)
・ 2004年8月 ・
第80回:黒板消し落としとブラクラ (04/08/30)
第79回:予防接種とWindows Update (04/08/23)
第78回:十徳ナイフとファンクション・キー (04/08/09)
第77回:狐や狸と差出人詐称ウイルスメール (04/08/02)
・ 2004年7月 ・
第76回:穴埋め問題とオートコンプリート (04/07/26)
第75回:内線電話とLAN (04/07/12)
第74回:めも理の将棋とアンドゥー (04/07/05)
・ 2004年6月 ・
第73回:始業の準備とスタートアップ (04/06/28)
第72回:バリアフリーとアンチエイリアス (04/06/21)
第71回:太陽と月とRGBとCMYK (04/06/14)
第70回:カタカナ言葉と通信の暗号化 (04/06/07)
 

これ以前の連載一覧

【第140回】

ハッシュ値と人間の指紋

(06/01/30)

めも理 窓太 めも理と窓太
登場人物紹介

 窓の杜高校、超パソコン部の部室。

 あらあら、めも理ちゃん。今日は足取りがふらふらなようです。

 何かショックなことでもあったのでしょうか?

ハッシュ値

めも理  うーん、頭が痛くなってきたわ。

窓太  どうしたんですか、めも理ちゃん。ふらふらになっているみたいですね。

めも理  そうなのよ。

窓太  一体何があったのですか?

めも理  ほかの学校のパソコン部との交流会に参加したのよ。そうしたら、分からない単語ばかり出てきて頭がパンクしそうになってしまったわ。

窓太  それは大変でしたね。めも理ちゃんの頭では、理解できないことばかりだったでしょう。

めも理  ……少しむかつく言い方ね。
 全部が全部分からなかったわけじゃないわよ。でも、“ハッシュ値”という言葉については、まったく理解不能だったわ。
 『ダウンロードしたファイルの確認などに使われている』と聞いたんだけど、何のことやらという感じだったわ。
 ねえ窓太。ハッシュ値って一体何なの?

窓太  そうですね、それは人間の指紋のようなものですよ。

めも理  指紋?

窓太  そうですよ。
 不思議そうな顔をしていますね。それじゃあ少し、ハッシュ値について説明することにいたしましょう。


人間の指紋

4コマまんが
めも理と窓太の4コマまんが
「ハッシュ値」

窓太  さて、めも理ちゃんに質問です。めも理ちゃんがビルの管理をすることになったとします。
 このビルに産業スパイが侵入しようとしています。めも理ちゃんなら、どうやって産業スパイを防ぎますか?

めも理  うーん、まるでスパイ映画みたいね。
 そうね、ビルに入ろうとする人の指紋を入り口で確認して個人を特定すれば、部外者の侵入を防げるんじゃないの?
 実際にテレビのニュース番組などで、指紋から個人を特定する装置があると聞いたことがあるわ。

窓太  ほー、めも理ちゃんも少しは社会の動向を把握しているようですね。
 今回の質問のように、セキュリティのために個人を特定する必要がある場合は、指紋といった各人固有の“体の一部”を利用することがあります。
 実は、同じようなセキュリティの手法がパソコンのデータの世界でも存在するのです。

めも理  えっ、データにも指があって、指紋を採取できるの?

窓太  違いますよ。めも理ちゃんはいつも短絡的なんですから。

めも理  むっ、失礼な言い方ね。  じゃあ、なんでパソコンのデータでも、セキュリティのために“体の一部”のようなものが必要になるの?

窓太  例えばメールの本文が、送り先へ届くまでの間に、改ざんされてしまったらどうなりますか?

めも理  どうなるの?

窓太  もし、メール本文に書かれている『めも理ちゃん大好き』という文章が、『めも理ちゃん大嫌い』と書き替えられているだけでも大変なことになりますよね。

めも理  げっ、それは大変ね。

窓太  同じように、Web上に公開されているファイルやアプリケーションが、第3者によって改ざんされている可能性もあります。
 また、ファイルのダウンロードに失敗して、ダウンロードしたデータが破損している場合もあります。

めも理  なるほど。手に入れたデータが本物と違っていたら非常に困るわね。

窓太  そうでしょう。
 そこで、人間の指紋で個人を特定するように、パソコンのファイルやデータが本物であるかを確認するための手段があります。それがハッシュ値です。

めも理  なるほど。必要性は分かったわ。
 じゃあ、ハッシュ値というのは、具体的にどういうものなの?

窓太  では、ハッシュ値とはどういったものなのか説明しましょう。
 ハッシュ値は、“ハッシュ関数”という特別な計算方法を使って、対象のデータから割り出した短いデータのことです。
 元のデータより短いデータになることから、このハッシュ関数は“要約関数”とも呼ばれています。

めも理  短いデータ? 圧縮みたいなもの?

窓太  ハッシュ値は、データの圧縮とは違います。
 圧縮ファイルは、解凍することで圧縮前のデータに戻すことができますよね。一方、ハッシュ値は元のデータに復元することはできません。
 ハッシュ値は、圧縮したときよりももっと短いデータです。

めも理  ふーん、そんな短いデータが何の役に立つの?

窓太  実はハッシュ値には便利な特長があるのです。
 異なる複数のデータから、ハッシュ関数を使ってそれぞれのハッシュ値を計算したとします。すると、各データからもとめたハッシュ値が同じになることはほとんどありません。
 また、同じデータからハッシュ値を何度計算しても、必ず同じハッシュ値になります。
 ハッシュ値は、各データの指紋みたいなものというわけです。

めも理  理論的なことは分かったけど、実際にどういった場合に利用されているの?

窓太  ハッシュ値はファイルの真偽をチェックするときなどに利用されます。
 Web上に公開されているデータのダウンロードページ上には、あらかじめ計算しておいたそのデータのハッシュ値が掲載されていることがあります。
 この場合、そのデータをダウンロードした人は、ローカルに保存したデータのハッシュ値を計算すれば、ダウンロードページ上のハッシュ値と見比べることができます。
 つまり、Web上にあるデータと、ダウンロードでローカルに保存したデータが同じものであるかどうかを、ハッシュ値をもとに確認できるのです。
 もし、計算したハッシュ値が違っていれば、Web上のデータが第3者により改ざんされたか、ダウンロードの途中などにデータが破損したということになります。

めも理  なるほど。
 でも、ハッシュ値って、ハッシュ関数とやらを使って計算しないといけないんでしょう。
 そんな面倒なことを、私はやりたくないんだけど。

窓太  大丈夫ですよ。めも理ちゃんが計算しなくても、専用のアプリケーションを利用すれば、ファイルをドラッグ&ドロップするだけでハッシュ値を計算できますから。
 それじゃあ、ハッシュ値を計算するアプリケーションを紹介しますね。

  □wMD5sum
http://www.forest.impress.co.jp/lib/sys/file/filecompare/wmd5sum.html

□HashTab Shell Extension
http://www.forest.impress.co.jp/lib/sys/file/fileuty/hashtabshlex.html

窓太  ただし、こういったアプリケーションを使う場合は注意しないといけないことがあります。

めも理  それは何なの?

窓太  ハッシュ値には、使用する関数の違いにより、いくつか種類があります。
 日本でもっとも利用されているハッシュ値は“MD5”という種類です。ほかには、アメリカ政府が標準で採用している“SHA”というハッシュ値もあります。
 種類の異なるハッシュ値同士を比べても意味がありませんので、ファイルの真偽をチェックするときなどは、対応するハッシュ値を計算する必要があります。

めも理  なるほど、種類がたくさんあるのは、ファイルの圧縮と似てるわね。
 ある形式で圧縮されたファイルには、対応する解凍ソフトが必要であるように、ハッシュ値も種類によって使い分けるのね。

窓太  そういうことです。どうやら、ちゃんと理解できたようですね。


要約

めも理  ねえ、窓太。世界はもっとハッシュ値を尊重する必要があると思うのよ。

窓太  どうしたんですか、めも理ちゃん。急に哲学的なことを言い出して。

めも理  それがね、国語の授業で、『小説を読んで400字程度の要約を書く』という宿題があったのよ。

窓太  そういえば昨日、そんな宿題が出たと言っていましたね。

めも理  だから、クラスの頭がいい人の要約をそっくりそのまま写して提出したのよ。そうしたら先生に怒られたの。
 同じデータを要約したんだから、ハッシュ値のように、同じ結果になるはずじゃない。なぜ、私が怒られないといけないの!

窓太  えー、めも理ちゃん。
 国語は数学とは違いますよ。同じ計算方法で計算したら、同じ答えが出るという科目ではないですから。

めも理  むきー、なんでダメなの~!

窓太  はあ、めも理ちゃんに、いらぬ知識を授けてしまったようですね。


今回出てきた用語の解説

【ハッシュ値】 ハッシュ関数と呼ばれる計算方法を使って、ファイルやデータから割り出した短いデータのこと。異なる複数のデータからハッシュ値を計算すると、それぞれのハッシュ値が同じになることはほとんどない。また、同じデータからは必ず同じハッシュ値が割り出される。そのために、データが改ざんされていないかどうかを確認するときなどに利用されている。
 

クロノス・クラウン:柳井 政和




トップページへ
めも理と窓太のパソコン講座 INDEX へ
Copyright ©2006 Impress Watch Corporation, an Impress Group company. All rights reserved.
編集部への連絡は お問い合わせはこちらをクリック まで