あなたが毎日何十回も入力するパスワードには、生まれた場所があります。1960年代初頭、MITにあった1台の巨大なコンピューターです。さらに面白いことに、世界で知られている最初のコンピューターのパスワードは、使い始められてまもなく、まとめて盗まれました。ハッカー集団ではなく、もっとコンピューターの使用時間が欲しかった博士課程の学生によってです。
1台のコンピューター、数十人のユーザー
1960年代初頭のコンピューターは、部屋を埋め尽くし、一度に1つの仕事しかしない機械でした。プログラムをパンチカードに打ち、順番待ちの列に出し、結果を何時間もあとで受け取ります。MITでフェルナンド・コルバトのチームは、これを変えようとしました。同じ機械を、多くの人が同時に端末から使えるシステム、つまり「タイムシェアリング」です。
このシステムはCTSS(Compatible Time-Sharing System)と名付けられました。1961年11月に、MITの改造されたIBM 709で初めて披露され、その後の年にはIBM 7094で動きました。Wikipediaも伝えるとおり、CTSSは、パスワードによるログインを実装した最初のコンピューターシステムと見なされています。
なぜパスワードが必要だった?
問題は単純でした。同じ機械に、数十人のファイルと、それぞれに割り当てられたコンピューターの時間があったのです。誰が誰なのかを区別する方法が必要でした。コルバトは何年もあとにWiredに、各ユーザーに鍵としてパスワードを置くのは「とても単純な解決策」に思えたと語りました。
コルバトは、自分を「最初」と宣言することにも慎重でした。IBMの1960年のSabre予約システムも、おそらくパスワードを使っていたと述べましたが、それについての記録が残っていないため、確かなことはわかりません。パスワードがCTSSに正確にいつ加えられたのかについても、資料によって言うことが違います。わかっているのはこれです。1962年の春にはパスワードのシステムが動いていました。なぜなら、その春にパスワードが盗まれたからです。
アラン・シャーの金曜の夜の計画
アラン・シャーは、MITで博士号を取ろうとしていた研究者で、複雑なシミュレーションを走らせていました。Wiredが伝えるところでは、CTSSで彼に割り当てられたのは週にわずか4時間でした(日に4時間とする資料もあります)。この時間は彼には足りませんでした。
彼の解決策は、頭が良く、同時にいたずら好きでもありました。システムのファイルをオフラインで印刷する機能を利用して、パスワードファイルの出力を求めるパンチカードを用意したのです。カードを金曜の夜遅くに列に出し、土曜の朝早くに来て出力を受け取りました。彼の手には、システムのすべての人のパスワードがありました。
足跡を消すために、パスワードを他のユーザーにも共有しました。Wiredによれば、その1人であるJ.C.R.リックライダーが、研究室長ロバート・ファノのアカウントに入り、皮肉なメッセージを残しました。シャーは一度も捕まらず、事件からおよそ四半世紀後に、ファノ本人に直接打ち明けました。ファノは、博士号は取り消されないと彼に請け合いました。
当時と今
| 当時(1960年代) | 今 |
|---|---|
| 1つのファイルに平文のパスワード | 一方向にハッシュ化されたパスワード |
| 出力を得るにはパンチカード1枚で足りた | アクセスログ、権限の層 |
| 目的: コンピューターの時間を分け合うこと | 目的: ID、お金、個人データを守ること |
| 1台の機械、1つのキャンパス | 1人あたり数十のアカウント |
この物語が今日も教訓になるのは、こういうわけです。パスワードは、発明された日から、人間の行動によって試されてきました。シャーはシステムを破るために複雑な攻撃をしたのではなく、システムがもともと提供していた機能を、思いがけない形で使っただけです。今日の漏えいの重要な部分も、似た単純なミスから生まれています。
コルバトは、タイムシェアリング分野での業績により、1990年にチューリング賞を受けました。彼のチームが「単純な解決策」として加えた鍵は、今日、あなたのメールから銀行まで、あらゆる扉に立っていて、最も弱い環は、今もたいていその鍵を使う人間です。
今日、パスワードの使用を完全にやめ、生体認証やパスキー(passkey)にすっかり切り替える準備はできていると思いますか?