セキュリティ
パスキーは罠です。使用しないでください
Passkeys are a trap. Do not use them (nonfunctional.substack.com)
要約
この記事は、パスキーが便利で安全だと宣伝されているものの、ユーザーの利益を最優先に設計されていないと主張しています。パスキーはFIDOアライアンスによって推進されていますが、そのメンバーにはBig Techや政府機関が含まれ、消費者擁護団体は参加していません。パスキーは、パスワードやTOTP(認証アプリ)とは異なり、ユーザーが自身の認証情報に対して最終的な管理権を持てなくなる可能性があると指摘しています。
全文翻訳
パスキーは罠です。使用しないでください。
対象読者: ウェブ上の非技術的な一般市民
The Hack
2026年10月10日
2
シェア
あらゆるウェブサイトがパスワードの使用をやめさせようとしているようです。代わりにパスキーと呼ばれるものを使用するように求められています。もしパスワードに慣れていて、これらの曖昧なパスキーを完全に理解していないのであれば、これは少し懸念すべきことです。
ウェブサイトは、パスキーがより安全であるか、より便利であるか、あるいはそれに類する有益なものであると述べています。パスキーがパスワードよりもはるかに安全であり、実際に便利であることは事実ですが、それが全てではありません。パスキーはあなたの利益を優先するように設計されていません。トロイの木馬のように、パスキーは表面上は確かにエレガントですが、内部には何か問題のあるものが隠されています。
重要なのは、他のどのようなログイン認証情報とも異なり、パスキーに対して最終的な制御権を持てないということです。パスワードであれば、どこに書き留めるかを選ぶことができます。認証アプリであれば、自分でどれを使用するかを決めることができます(それらは pretty interchangeable です)。物理的なセキュリティキーであれば、本当に信頼できる同僚に渡すことさえできます。しかし、パスキーには、それを使用しているウェブサイトが、あなたがそれらに対してやりたいことを徐々にできなくさせる隠されたダイヤルが付いています。それがどのように可能になるかを後で説明しますが、まず、誰があなたにパスキーを使用させたいのかを見てみましょう。
パスキーは、FIDOアライアンスの発明です。これは、Big Tech、小規模テック企業、各国政府、諜報機関、銀行、さまざまな公共機関、さらにはMozillaのような少数の非営利団体など、多くの異なる競合する利害関係者のコンソーシアムであり、皆がパスキーが良い、正当な大義であるという点で合意できます。
FIDOアライアンスのメンバーはそれぞれ独自の利害を持っています。Big Techは、より多くの広告を販売するために、私たちの生活に小さな不便をもたらしたいと考えています。諜報機関は、世界中のすべての人々を追跡したいと考えています。銀行は、免責から解放されたいと考えています。小規模テック企業は、責任を軽減するための安価なソリューションを求めています。Mozillaは、特定の主張を譲らずに済ませたいと考えています。これらの動機が悪いとは特に主張しません。しかし、消費者擁護団体がFIDOアライアンスのメンバーではないことは注目に値します。(これは、例えば、ウェブ上の標準を決定する組織であるWorld Wide Web Consortiumとは対照的です。通常の企業メンバーに加えて、公共利益団体だけでなく、大学や、1989年にWorld Wide Webを発明したイギリスのコンピュータ科学者であるTim Berners-Leeも参加しています。正直なところ、もしガンダルフ自身がW3Cに参加したとしても、場違いではないでしょう。)FIDOアライアンスに関しては、ユーザー自身の利益のために強い主張をする人は誰もいません。
なぜ今、誰もがパスキーを使用する必要があるのか、一般に提示されている理由は、パスワードが安全ではないということです。この点については同意します。数十億ドル規模のアメリカのIT企業SolarWindsのサーバーが、solarwinds123というパスワードを使用していたことが有名になったことを考えてみてください。ハワイ州緊急管理庁(誤ったミサイル警報を発令したのと同じ組織)は、写真の背景にある机の付箋によって、誤ってパスワードを漏洩しました。もしあなたのセキュリティがパスワードに依存しているなら、誰かがどこかで、何らかの方法でそれを解明し、すでにあなたの銀行口座にアクセスしているのではないかと常に不安になるでしょう。
一方で、パスワードの良い点は、非常に直感的で、誰もがその仕組みを理解しており、人々は何世紀にもわたってそれを使用してきました。そして、どこに保存するか、誰と共有するかを選ぶことができます。これを心に留めておいてください。
(これも心に留めておいてください:Netflixはあなたがパスワードを共有することを望んでいません。)
しかし、FIDOアライアンスがパスキーで解決したと主張するセキュリティ問題は、すでに解決されている問題です。まず二要素認証(特に、ワンタイムコード付きのテキストメッセージまたはメールを受信する)によって、次に、より堅牢なTime-Based One-Time Passwords(TOTP)システムによって解決されました。一般的には「認証アプリ」と呼ばれます。
TOTPの素晴らしい点は、テキストメッセージやメール、さらにはインターネットにさえ依存しないことです。あなたの認証アプリソフトウェアは、現在の時刻(およびあなた固有の「シード」または「キー」と呼ばれるランダムな開始番号)に基づいて30秒ごとにランダムに見える数値を生成するだけで、ウェブサイトがあなたがあなたであることを確認するために必要なのはこれだけです。認証アプリという言葉は誤解を招きます。なぜなら、ウェブサイトは特定のアプリ、例えばGoogle Authenticatorをダウンロードする必要があることを強く示唆する傾向があるからです。実際には、TOTPにはオープンスタンダード(RFC 6238)があります。つまり、これらのランダムに見える数値を生成するために使用される公式は公開されているため、特定のソフトウェアを使用する必要はありません。ほとんどの場合、ウェブサイトが提案しているからといってGoogle Authenticatorを使用する必要はありません。スマートフォンを使用する必要さえありません。ラップトップや、90年代のゲームボーイでさえこの目的のために使用できます。まともな時間を伝えられ、数行のコードを処理できる限り、好きなソフトウェアやハードウェアを使用できます。Pythonで自分でソフトウェアを書くこともできますし、もし少量のジェット燃料を燃やす気分なら、LLMに書いてもらうこともできます。
TOTPは素晴らしいソリューションです。もし誤って机の上の写真でTOTPを漏洩してしまっても、コードが期限切れになるまでの数分間しかリスクはありません。TOTPはパスワードよりも直感的ではありませんが、少なくともパスワードのように、どこに保存するかを選ぶことができます。どこに置くか、どのソフトウェアを使用してコードを生成するかを選ぶことができます。そして、パスワード123のように推測しやすいTOTPコードで自分自身を撃つことは容易ではありません。それらはランダムに見える数字にすぎず、すべてのTOTPコードは推測するのが同じくらい困難です。ああ、さらに、ビジネスで不在の間、Netflixアカウントに一時的にログインしてもらうために、友人にコードを送ることもできます。本当に望むなら、TOTPシード自体を共有して、友人があなた自身のTOTPコードを生成できるようにし、彼らが彼らの友人にNetflixアカウントにログインさせることもできます。パスワードを紙に書き留めるのと同じように、すべてのTOTPシードを紙に書き留めると奇妙な顔をされるかもしれませんが、結局のところ、このデータはあなたが好きなように扱うものです。オープンスタンダードは素晴らしいと思いませんか?
(NetflixもあなたがTOTPキーを共有することを望んでいません。)
では、パスキーは何が違うのでしょうか?さて、表面上はTOTPと非常によく似ています。どちらもオープンスタンダード(TOTPはRFC 6238、パスキーはWebAuthn)を持っているので、パスキーもTOTPと同じような素晴らしい特性を持っているはずですよね?一見するとそう思えるでしょう。実際、ちょうど今、私は無料のオープンソースソフトウェアを使用してパスキーを生成し、それを友人にメールで送信しました。そして今、私たちは両方ともそのパスキーを使用して同じウェブサイトにアクセスできます。ウェブサイト、FIDOアライアンス、あるいは私の時間を親切にも異議なく独占させてくれた友人にも、許可を求める必要は全くありませんでした。さらに、パスキーを使用するために数字を手で入力する必要も、魔法の言葉を覚える必要もありません。パスキーはただ機能します。それだけを見ると、パスキーは確かに便利です。そして、パスキーで何でもできるような気がします。
(しかし、Netflixはあなたがパスキーを共有することを望んでいません。)
では、どこに落とし穴があるのでしょうか?
落とし穴は、他に「パスキー」と呼ばれるものがあり、それは私が説明したような良いものとは全く異なるということです。
実際、「パスキー」と呼ばれるものはたくさんあり、FIDOアライアンスは意図的にすべてに同じ名前を付けています。これは、ユーザーを意図的に混乱させ、細かい文字をよく見ないように促すために行われたのだと信じています。実際、技術文書では、パスキーを定義するWebAuthn標準では、「パスキー」という言葉はほとんど使用されていません。代わりに、発見可能なものが存在します。