CAPTCHA
約 5 分で読めます
最終更新: 2026-04-10
CAPTCHA とは
CAPTCHA (Completely Automated Public Turing test to tell Computers and Humans Apart) とは、アクセスしているのが人間かボットかを判別するためのテストです。2000 年にカーネギーメロン大学の Luis von Ahn らが提唱した概念で、Web フォームのスパム送信、ブルートフォース攻撃によるアカウント乗っ取り、チケット買い占めボットなどを防ぐ目的で広く導入されています。
初期の CAPTCHA は歪んだ文字列を読み取らせる方式でしたが、OCR 技術と機械学習の進歩により突破率が上昇し、現在はユーザーの行動パターンを分析するリスクベースの方式へと進化しています。
reCAPTCHA の進化 - v1 から v3 へ
Google が提供する reCAPTCHA は、CAPTCHA の事実上の標準として Web サイトの大半で採用されています。そのバージョンごとの変遷は、ボット対策技術の進化そのものです。
reCAPTCHA v2 の画像チャレンジで信号機や横断歩道を選ばせるのは、Google の自動運転プロジェクト (Waymo) の学習データ収集を兼ねているとされています。ユーザーの回答が道路標識や歩行者の認識精度向上に活用されている点は、v1 の書籍デジタル化と同じ「人間の知能を二次利用する」設計思想の延長です。
CAPTCHA の技術的な仕組み
CAPTCHA がボットと人間を区別する手法は、大きく 3 つのアプローチに分類できます。
- チャレンジベース: 歪んだ文字の入力、画像の分類、パズルのスライドなど、人間には容易だがボットには困難なタスクを課す方式。ユーザーへの負担が大きく、離脱率を上げるデメリットがある。
- 行動分析ベース: マウスの軌跡、キーストロークのタイミング、スクロールパターン、タッチ操作の圧力など、人間特有の行動パターンを検出する方式。reCAPTCHA v3 や hCaptcha がこのアプローチを採用。ユーザーは CAPTCHA の存在すら意識しない。
- Proof of Work: ブラウザに軽量な計算タスクを実行させ、ボットによる大量リクエストのコストを引き上げる方式。Cloudflare Turnstile が採用。人間のデバイスでは数ミリ秒で完了するが、ボットが数千リクエストを送る場合は計算コストが累積する。
現代の CAPTCHA は単一の手法に依存せず、ブラウザフィンガープリント、IP レピュテーション、Cookie の有無、JavaScript の実行環境など複数のシグナルを組み合わせたリスクスコアリングで判定しています。
アクセシビリティの課題
CAPTCHA は「人間であること」を証明させる仕組みですが、すべての人間が同じ方法で証明できるわけではありません。視覚障害者は画像選択チャレンジを完了できず、聴覚障害者は音声 CAPTCHA を利用できません。運動障害のあるユーザーはマウス操作やタッチ操作が困難な場合があります。
W3C の Web Content Accessibility Guidelines (WCAG) は、CAPTCHA に代替手段を提供することを推奨しています。reCAPTCHA v2 は音声チャレンジを代替として提供していますが、音声認識 AI の進歩により音声 CAPTCHA も突破されやすくなっています。
reCAPTCHA v3 や Cloudflare Turnstile のような「見えない CAPTCHA」は、ユーザーに操作を求めないためアクセシビリティの問題を大幅に緩和します。ただし、行動分析に依存するため、スクリーンリーダーやキーボードのみで操作するユーザーの行動パターンが「ボット的」と誤判定されるリスクは残ります。
AI による突破と CAPTCHA の将来
CAPTCHA は本質的に「AI にはできないが人間にはできるタスク」を前提としていますが、AI の能力向上によりこの前提が崩れつつあります。
- 画像認識 AI: 2023 年時点で、画像分類 CAPTCHA の突破率は AI が人間を上回る研究結果が報告されている。信号機や横断歩道の画像選択は、物体検出モデルにとって容易なタスクになった。
- CAPTCHA 解決サービス: 低賃金労働者が手動で CAPTCHA を解く「CAPTCHA ファーム」や、AI と人間を組み合わせたハイブリッド型の解決サービスが存在する。1,000 件あたり数ドルで利用でき、ボットネット運用者のコストとしては十分に安い。
- ブラウザ自動化ツール: Puppeteer や Playwright などのヘッドレスブラウザは、人間のマウス操作やキーストロークを精密にシミュレートできる。行動分析ベースの CAPTCHA も回避される可能性がある。
将来的には、CAPTCHA 単体での防御は限界を迎え、WAF によるレート制限、デバイス認証、パスキーによる本人確認など、複数の防御層を組み合わせたアプローチが主流になると考えられます。CAPTCHA は「ボットを完全に排除する」ツールから「ボットのコストを引き上げる」ツールへと役割が変化しています。
よくある誤解
- CAPTCHA を導入すればボットを完全に防げる
- CAPTCHA 解決サービスや AI による突破手段が存在するため、CAPTCHA だけでボットを完全に排除することはできません。CAPTCHA はボットの攻撃コストを引き上げる手段の一つであり、レート制限、IP レピュテーション、WAF など他の防御策と組み合わせて初めて効果を発揮します。
- 画像選択 CAPTCHA で選ぶ画像は正解が 1 つだけ
- reCAPTCHA v2 の画像チャレンジには「明確な正解」と「グレーゾーン」の画像が混在しています。信号機の柱だけが写った画像を選ぶべきかどうかなど、人間でも判断が分かれるケースがあります。Google はこの曖昧さを利用して、多数のユーザーの回答を統計的に集約し、正解の精度を高めています。
- CAPTCHA が表示されるのは怪しいアクセスだけ
- reCAPTCHA v2 のチャレンジが表示される条件は、ボットの疑いだけではありません。VPN やプロキシの使用、Cookie の削除、シークレットモードでのアクセス、短時間での大量リクエストなど、さまざまな要因でリスクスコアが上昇します。正当なユーザーでも頻繁に CAPTCHA を求められることがあります。