豆知識:MD5ってナニ?

 このブログの(σ(^^)が把握している)読者層のリテラシーは、「MD5チェックサムは常識でしょ」って人達と、下手すると聞いたことすらない人達と両極端っぽいので、いつも書き方に苦労します。
 今回は、最近よくダウンロード用リンクと一緒についてるMD5の意味を解説してみます。むしろ「MD5ってナニ?」って人には読み飛ばされそうな悪寒w。まぁ、聞かれたら「これ読め」って言おう。
 MD5は暗号化なんかに使われる乱数発生アルゴリズムの1つです。ある元データを与えると、固定長(32文字)の乱数(ハッシュ値)を返してくれます。また、
・元データが同じなら常に結果も同じ
・元データがちょっとでも違うと結果が全然違ったものになる
・確率統計的に別データが偶然同じ結果になる可能性は激しく低い
・ハッシュ値から元データを逆算出するのは途方もない計算量が必要
という特徴をもっています。
 例えばパスワードをあるシステム上に保存しておく場合、MD5化してから保存しておくと、もしその保存ファイルが漏洩しても、そこから元パスワードを解析することは事実上不可能だが、ユーザが入力したパスワードの判定はそれもMD5化して比較すればOK、という訳です(MD5ハッシュ化後の値を持っていてもパスワード欄に入れられない)。
 ではどうしてダウンロードのリンクにこれがくっついているかというと、ファイルの改竄検知のためです。送信者と受信者がそれぞれMD5ハッシュ値を計算して比較すれば、途中経路でウィルス感染したり壊れたりしなかったことが保証できるわけです。もちろん、MD5値も改竄されてしまっては元も子もないので、これらは別経路で伝達することが望ましいです。当ブログでもダウンロード用ファイルはブログとは別区画に置き、権限設定を分けてあります。万一このブログがクラックされても、ダウンロードファイルは改変できない訳です。逆に、メールの添付ファイルのMD5値を本文に書いても、改竄防止という観点ではあまり意味がないですね。添付ファイルを改竄できるんなら本文だって改変できたはずですから。まぁ、ファイル破損チェックにはなるので全く無意味だとは言わないですが。
 レジストリファイルはもし壊れたり改竄されていたりすると、システムに深刻なダメージを与えかねないので、こうした予防措置を講じている訳です。ダウンロードしてご利用になる方は、是非落としたファイルのハッシュ比較をしてみて下さい(これくらいのファイルなら一瞬で計算できます)。
 実際にWindowsで手元のファイルのMD5ハッシュ値を計算するには、ElleFileInfo[窓の杜]あたりが良いでしょう。ファイルをドロップするだけです。MD5は元ファイルがちょっとでも違えば結果が大きくかわる性質があるので、32文字全部比較しなくとも、先頭や末尾の数桁だけ比較すれば実用上は充分でしょう。

■余談

 いやぁ、しかし乱数発生アルゴリズムが暗号に使えると気づいた人は偉いよ。目から鱗。今や数学者もIT絡みで大儲けできる時代ですもんね。もうちょっと英語と数学が得意だったら暗号の学会CRYPTO2004とか聴講にいったらエキサイティングだったろうな。ちょっと古いですが、AES/CRYPTO98のの訪問記なんて読んでるとワクワクする。学会発表の質疑応答の場で手が挙がって「解読方法を思いついた」って破られちゃうってどういうことよ?破ったおまえはそれをその場で暗算で解いたんかと問いつめたいw。
 CRYPTO2004の記事も『Sofrware Design』11月号に載ってたが、スゴく楽しそう。「今晩の臨時セッションでなにやらスゴいアルゴリズムが発表されるらしい」みたいな噂が飛び交ったり、スタンディングオベーションが起きたり。そこいらの学術学会にはない興奮とスピード感に溢れてそうな世界ですね。

WindowsMediaPlayer10のチューン

【コラム】Windows XPスマートチューニング 第142回 WMP10のフルスクリーン時に現れるシークバーのタイミングを変更する (MYCOM PC WEB)
 WindowsMediaPlayer10で動画などをフルスクリーン再生する時、シークバーなど上下のコントロール部分が自動的に隠れるますよね?あの時間を高速化するレジストリ設定が載っていたので、regファイルにしてみました。あのコントローラー、視聴中にちょっとマウスを触ってしまうだけで出現するので結構ウザいんですよね。とっとと消えてくれるなら良いことです。
 実際のタイムアウトまでの時間はσ(^^)の好みの値になってますが、よろしければどうぞ。ダウンロードした.regファイルをダブルクリックするだけです。まだ遅い、という人は上記リンクを参考にメモ帳などで数値を書き換えてからご使用ください。ちなみにカーソルのタイムアウトはコントロールが消えた時点からの時間みたいです。カーソルを最速にしてもコントロールより先に消えることはないようです。

WMP10フルスクリーン再生時、コントロールを素早く引っ込める [MD5: E28E972DF37AAB72B08C79003114FFC1]

M200、その後

 サーバー整備そっちのけで、ようやく一通りセットアップが完了しました。

■メモリ

 TC1100と同じPC2700の200pinだったので、あっちに増設した512MBを抜いて移植。1GBに。TC1100は512MBで充分だろう。

■無線LAN

 前にも書いた通り標準では802.11bなので、以前、VAIO TR1に取り付けた802.11a/b/gのEM-500AGというカードを移植。製品サイトが消えていて最新ドライバを探すのに苦労したけど、なんとかぁゃιぃftpサイトで発見。無事認識。東芝独自ツールConfig Freeでも見えてるし、本体横のハードスイッチでのON/OFFも無問題。微妙に11aの感度が悪い気がする。同じアクセスポイントの電波なのに、11b/gよりもレベルが低い。アンテナが11a用じゃないから??てかAtherosのユーティリテイでみると100%なのに、システムのゲージは「中」。なんで?まぁ、元々アクセスポイントの出力を1/4に絞ってあったので、少し上げてみるか。
 ちなみにAtherosチップなのでBIOS起動画面からCentrinoロゴが消滅w。

■液晶

 やっぱ12インチでSXGA+(1400×1050)は文字ちっさいすね。デスク上なら気にならないけど、ソファなんかで腿にのっけて使うと、字の小さめなサイトなんかはちょっと目を細めてしまう。Operaなんで、120%くらいに拡大してみたり。でも、その分、MS Journalなんかで手書きした時の解像度感はGood。

■ACアダプタ

 普通にデカい。てか平均的。→がAmazonのマーケットプレイスで安く出ていたので注文してみた。
後日追記:プラグ形状があわず使えませんでしたorz

■加速度センサー

 縦横の自動検知のために加速度センサーが内蔵されているんですが、これを利用して縦振り、横振りにイベントを割り当てられるユーティリティがついてる。スレート状態で水平に持ち、エイっと向こう->手前に揺するとスタートメニューが開いて愉快。スタートメニューに慣性が働いているカンジ。一見の価値アリ。

■クロスメニュー

 スレート状態でも使える液晶脇に十字ボタンがあり、長押しすると「クロスメニュー」と呼ばれるSONYのXMB(クロスメニューバー)のようなランチャーが出現。これは便利かも。

■Bluetoosh

 海外ではオプション販売されている純正ユニットをオーダー。なかなか海外発送してくれて、在庫もってるショップが見つからなくて、なんとか発見したアメリカのショップは(海外オーダーは)電話かFAXのみ。「Dir Sir,」なんて書き出しの手紙文を書くなんて何年ぶりだろ。ともあれFAXで注文してみた。現地時間の月曜までレスポンスはないだろうな。

■Configfree

 東芝独自のネットワーク・ユーティリティ。VAIOでもお世話になってた同種ソフトと同じく、無線LANのESSIDで各種設定を自動切り替えできるので、
・それぞれの場所で手近なプリンタをデフォルトに
・自宅ではサーバーとのデータ同期スクリプトを起動
・ホットスポットのESSIDならファイアウォールをオン
する、なんてことができる。これは便利。
 P.O.R.的な使い方もできるかも。

■マシン名

天獄 1 (1)
天獄 (1)
あちゃ、白青だ…

 所有台数が多くLANを組んでいる人にとって、マシン名をつけることは最大の楽しみであり、悩みの種でしょう。てか決まんねー。白(シルバー)黒のツートンカラーなので、正当派メイド服着用キャラの系統で考えてるんですがね。ただあんまり長いのや綴りがややこしいのはマイン名としては不向き。「天誅」の砂姫(SAKI)あたりかなぁ。


P.S.
 TC1100は当面naokAに貸しっぱなしになると思うけど、前々から時々あらわれる画面の赤線がウザいので修理に出す。BIOS設定画面から出るのでハード的な問題確定。出たりでなかったりするので証拠写真をプリントして添付。金曜の午後に電話したら土曜午前にはペリカン便がピックアップに来た。完了もこれくらい素早いといいな。

M200購入

というワケで、結局M200の現行(PenM/1.4GHz)モデルを買ってしまいました。
PenM/1.6GHzだと90nmプロセスルールのDothanコアだということにも気づいたんですが、
【特集】第2世代Pentium M “Dothan” – デスクトップ環境でテストする(MYCOM PC WEB)
の記事を見てもそんなにパフォーマンスはかわらないみたいだし、駆動時間がむしろビミョーに減る(現行5時間->新型4.7時間)し、おそらく3万以上はつくだろう価格差を補う価値はないかなと。VRAMは元々64MBである必要もないと思うし。
もう1点気になったのは、無線LAN。現行が11bで、新型は11b/g。まぁ、これもVAIOに取り付けた11a/b/gのMiniPCIが刺されば良し。ダメならIntelの2200BGが\4,000位で手に入るので、いいかと。
そんな思考プロセスをhkondo氏と分散協調処理で考えつつ、「現行で充分」という結論に達しました。
都内の卸問屋みたいなところで買ってきましたが、ドット欠けもナサゲで快調に動いています。
第一印象としては、TC1100よりもペンが細くて持ちやすい。ただ、画面が大きいだけあって、画面を立てた通常スタイルでタップすると、画面がユラユラと揺れて使いにくいかも。あと電源ボタンも位置も本体側ではなく液晶のフレーム左下についてて扱いにくいかも。
TabletPCって普段店頭で仕様する機会がなく、以前展示会やセミナーなどで見かけた時に見逃してた点として、半角/全角キーの位置がF1の左にある(1の左にない)というのがあって、気づいて少し鬱に。軽量自慢のLet’s Noteに手を出さなかったのはこれが理由だった、ってくらい嫌いな配置だったのに…
でもまぁ、先日作った変換、無変換キーを無効化パッチを改良して、無変換キーを全半キーとして機能するようにしてみたり。親指でいつでもIMEのON/OFFができていいカンジ。

最近のWindows 10(Creator Update位から?)では以下のレジストリ書き換えではダメっぽいです。今は、Ctrl2Capでしのいでいます。

一応置いときます。利用方法、注意点は上記エントリを参照して下さい。

無変換キーを全半キーにし、変換キーを無効化 [MD5: 40786401A018812A61E940FABBE8C391]
上記+CAPS→Ctrl [MD5: 098339CBA434B95D758BD277F63E516E]