AppleはWWDC 2022でプライベートアクセストークンと呼ばれる技術をデモしましたが、これがCAPTCHAを完全に廃止する可能性があります。
プライベートアクセストークン(PAT)は、HTTPリクエストがボットではなく人間から送信されたことを証明できます。CAPTCHAは現在認証手段として使用されていますが、人間が入力するには時間がかかります。
CAPTCHA は、コンピュータと人間を区別するための完全に自動化された公開チューリング テストとして知られており、Web 上に表示される画像またはパズルです。
「私はロボットではありません」ボタンをクリックすることから始まります。文字を歪めたり、画像内の物体を識別したり、パズルのピースをスライドさせたりと、これらのツールは煩わしいものです。
CAPTCHA は、ログイン情報を盗むために使用されたり、プライバシーを最優先に考えていない企業から提供されたりして、侵害される可能性もあります。
PATはHTTPリクエストをバックグラウンドで自動的に認証します。Webユーザーは何も意識することなく、CloudflareやFastlyなどのクラウドプロバイダーはすでにこの技術を採用しています。
ウェブ上でのユーザー認証
PrivateToken と呼ばれる新しい HTTP 認証方法を使用して、サーバーは暗号化を使用してクライアントが iCloud 認証チェックに合格したことを確認します。
クライアントがトークンを必要とする場合、認証機関(この場合はApple)に連絡します。認証機関は、デバイスのSecure Enclaveに保存されている証明書を使用してトークン発行プロセスを実行します。認証機関は、レート制限と呼ばれる機能も実行できます。
レート制限では、クライアント デバイスが一般的なユーザー パターンに従っているか、または iPhone クリック ファームの一部であるかなどを認識することができます。
Apple ユーザーがパスワード、Touch ID、または Face ID を使用してデバイスにログインし、Safari を開いて Web サイトにアクセスすると、その操作をボットが模倣するのは困難になります。
Cloudflareチャレンジプラットフォーム
署名されたトークンは、複数のステップを経て最終的にサーバーに送信されます。サーバーはデバイスやアクセスするユーザーについて何も知りませんが、認証者を信頼してトークンを検証し、ユーザーは目的のウェブページに移動します。
Cloudflareは、PATを使用するとデバイスデータは分離され、プロセスに関わる関係者間で共有されないと説明しています。Cloudflareは宛先URLを認識しますが、デバイスやユーザーのインタラクション情報は認識しません。
ウェブサイト側が把握しているのはURLとクライアントIPアドレスのみで、デバイスメーカーや認証機関側が把握しているのは認証に必要な最小限のデバイスデータのみです。リンク先のURLやユーザーのIPアドレスは把握していません。
トークンは、クライアントがトークンを複数回提示しようとするリプレイ攻撃を制限する方法として、1 回だけ使用されます。
SafariとWebKit経由でアクセスするWebサーバーは、PATと自動的に連携します。他のデバイスではトークン処理が認識されない可能性があるため、Appleは開発者に対し、ユーザー認証によってメインのWebページがブロックされないようにし、ユーザー認証をオプションとして提示するよう注意を促しています。
Apple によれば、これらのトークンには、Apple ID がサインインした iOS 16 または macOS Ventura 以降を実行しているデバイスが必要だという。Apple ID は証明にのみ使用され、共有されることはない。
コンテンツ配信ネットワーク向けプライバシーパスプロトコル
これはAppleの興味深い動きであり、CAPTCHAを廃止するという目標は崇高なものです。これはまた、Appleユーザーがウェブをこれまでとは異なる方法で体験するもう一つの方法でもあります。
Apple は、iCloud プライベートリレー、メールの非表示、App Tracking Transparency などのテクノロジーを使用して、顧客の個人情報の公開を制限し続けています。
同社はプライベートアクセストークン(PAT)をウェブ標準にするための取り組みを進めていますが、AndroidやWindowsでトークンが動作するかどうかについては言及されていません。これらのプラットフォームのユーザーは、当面はCAPTCHAを我慢するか、MicrosoftとGoogleの取り組みを待つしかないかもしれません。