世界を動かす技術を、日本語で。

チケット販売におけるCAPTCHAは終わった

概要

チケット販売におけるボット対策は、従来のCAPTCHAではもはや有効性が低下。 AIの進化により、人間とボットの識別が困難になっている現状。 行動分析やProof of Workもプライバシーやアクセシビリティの課題を抱える。 本人確認や購入制限などの社会的・技術的対策の必要性。 「BAP定理」により、ボット対策・アクセシビリティ・プライバシーの三立は困難。

チケット販売におけるボット問題とCAPTCHAの限界

  • 人気イベント ではチケット需要が供給を大きく上回る現象
  • 転売屋(ticket scalper) による不正取得と再販問題
  • ボット(自動化プログラム) の利用による大量購入の横行
  • 経済的解決策として 価格引き上げ があるが、コミュニティ形成や倫理面から多くの主催者が採用を避ける傾向
  • 技術的解決策として CAPTCHA が頻繁に提案される現状

CAPTCHAの歴史と現状

  • CAPTCHAは 20年以上前 に「人間とボットの識別」を目的に開発
  • 初期は 文字認識 問題(歪んだ文字の判別)を活用
  • 機械学習の進歩 により、文字認識CAPTCHAは既に突破可能
  • 画像認識CAPTCHA (例:バイクの画像を選択)もAIにより容易に解決可能
  • アクセシビリティ対応のため 音声認識CAPTCHA も導入
  • 音声認識AI の進化で、非ネイティブよりもAIの方が高精度に認識可能
  • 新しいCAPTCHA問題のアイデアが枯渇状態

AI時代のボット対策とその課題

  • ボット対策は パズル型CAPTCHA から 行動分析型 へシフト
  • Google reCAPTCHA v3Cloudflare などが「見えないCAPTCHA」や行動分析を導入
  • 行動分析型は 大量の個人データ収集 が前提であり、 プライバシーリスク が高い
  • 誤判定による 正規ユーザーの排除 リスク
  • チケット販売では「売る・売らない」の 二択 しかなく、誤判定の影響が大きい
  • 行動分析でボットスコアが高い場合、結局 従来型CAPTCHA に戻す仕組みが多い

アクセシビリティとボット判定のジレンマ

  • 近年のボットは 本物のブラウザ を使い、 人間と同じAPI で操作
  • スクリーンリーダー 利用者も同じAPIを利用し、ボットと区別が困難
  • マウス操作やタイミングなどのシグナルは アクセシビリティ利用者 にも該当

Proof of Work方式の限界

  • Proof of Work (計算コストをかけさせる方式)はスパム対策には有効
  • チケット転売では 1回の計算コスト が小さくても、 転売利益が圧倒的に大きい ため無効
  • AIによるCAPTCHA突破にも コスト はかかるが、 利益>コスト であれば抑止力にならない
  • 低賃金労働者 を活用したCAPTCHA突破サービスも存在

有効な対策とそのトレードオフ

  • 本人確認やID連携による強いチケット個人化
    • 入場時のID確認などで転売の抑止
    • 同伴者が未定の場合など、正規購入者にも不便
  • 電話番号やクレジットカード等のリソース制限
    • 複数取得は可能だが、大量取得はコスト・手間が増す
    • 不正カード取得などは違法性が高く、一定の抑止力

BAP定理:ボット対策・アクセシビリティ・プライバシーの三立不可

  • データベース設計の CAP定理 になぞらえた「 BAP定理」の提案
    • Bot-resistance(ボット耐性)
    • Accessibility(アクセシビリティ)
    • Privacy-friendliness(プライバシー保護)
  • 3つ全ての両立は不可能で、2つまでの組み合わせしか選べない
    • BA型 :ボット耐性+アクセシブル(プライバシーは犠牲)
    • BP型 :ボット耐性+プライバシー(アクセシビリティは犠牲)
    • AP型 :アクセシビリティ+プライバシー(ボット耐性は犠牲)

結論と今後の展望

  • 法令でアクセシビリティが義務化 されているため、選択肢は限定的
  • ボット対策かプライバシー保護か の二者択一が現実
  • 技術だけで社会的課題を解決するのは困難
  • 法的規制 や社会的な取り組みも必要

Hackerたちの意見

ほとんどの主催者、営利団体を含めて、倫理的な懸念やコミュニティ構築の問題からこの選択肢を選びたくないみたい。代わりに転売屋にチケットを売るのも、ファンに直接売るのと比べて倫理的に良いとは思えないし、コミュニティ構築にも役立たないよね。たとえチケットをIDに割り当てても、転売屋はボットにアクセスを売って、市場価格とチケットの販売価格の差を稼ごうとするだろうし。

チケットを価格を下げながら売るのはどう?早いチケットは高くて、遅いチケットは安い。販売日の最低価格まで10%から20%を保持する感じで。転売屋を苦しめて、FOMOを一気にぶっ壊そう!

じゃあ、残るのは何?成功した悪用イベントごとの利益が200ドルなら、著者のクレジットカード番号や電話番号に制限をかける提案も効果がないよ。あれは、1ドル/イベントくらいの規模の悪用には有効だけど。銀行口座はもっと強固だろうけど、オンライン認証エコシステムが銀行中心に構築されてる国以外では実装が難しそう。一般的な悪用の背景はあるけど、チケットの悪用エコシステムについては何も知らない状態で、ビジネス的に「このバイヤーにチケットを売るかどうかを瞬時に決める」っていうのは絶対必要なのかな?「最初の24時間に受け取った10万件の購入意図の中から、どの1万件にチケットを売るかを決める」っていう風に問題を再定義すれば、もっと多くのツールが使えるはずだよ。もっと多くのツールっていうのは、オフライン分析やクラスタリングのことね。くじ引きだけじゃなくて。(でも、強くパーソナライズされたチケットと組み合わせるのは大事だよ。ボットサービスへの対策としてのアプローチになるから、転売用のチケット購入とは違う。)

それには問題があると思う。ほとんどの人がグループでイベントに行くから、みんながチケットを手に入れないと行きたくないんだよね。例えば、3人で行きたい場合、グループでくじ引きするの?それとも個別に?5人で行きたいときにくじ引きがあったら、複数の人がそれぞれ5枚ずつチケットを買うのが一番いいよね。そうすると、実際には欲しくない人たちがたくさんチケットを買って、1回だけ注文した人が損しちゃう。

(著者です)先着順以外は、プールへの複数エントリーでより良いチャンスを得ようとする人を避けるために強力な本人確認が必要だから、結局「プライバシーを犠牲にする」カテゴリに入っちゃうんだよね。

私が欠けていると思う選択肢は、ユーザーがチケットのくじ引きにランダムに参加する前にコストを支払うことだね。例えば、みんながクレジットカードで0.01ドル支払うとか、クレジットカードでホールディングチャージをするか、身分証明を登録する感じ。これを5分(または1日!)のウィンドウ内でやるの。で、そのウィンドウが終わった後、登録したカードの中からランダムにチケットが配布される。複数のことをチェックできるし、必要なら電話番号やカード、政府のIDも確認できる(プライバシーは下がるけど)。これだと、インターネットアクセスや同時にたくさんのブラウザを動かす能力に基づくくじ引きよりも、公平でストレスが少ない感じがする。転売屋にはもっと偽の身分が必要になるから、やりにくくなると思うけど、実際の比率がどうなるかは興味あるな。何がうまくいかないのか?もう一つ予測するのは、デジタルで購入できないこと。例えば、ルイスの花火大会のチケットは、ルイスの本屋で直接買わなきゃいけない。デジタルチケットシステムを作ってもあまり意味ないよね!

サバンナ・バナナはそうしてるよ。チケットを買うにはくじ引きに参加しなきゃいけない。そして、IDがチケットと一致しないと入れない。これで、転売ではなく家族やファンの手にチケットを保つのに成功してるんだ。

業界が本当にスカルパーを求めてるけど、表向きには反対してるフリをしてるのが鍵だと思う。

学校のバウチャーが悪い理由を聞いたんだけど、単一の支払いシステムなのにね。「進歩的」な人たちは、公立学校が資金や生徒を失うって言ってた。私立学校は優秀な生徒だけを受け入れるからって。だから私は言ったんだ — 学校に選ばせるんじゃなくて、人々に選ばせようよ。学校がいっぱいなら、実際に入れる人をくじ引きで決めればいい。M人の中からN人を選ぶみたいに。シンプルだよね。

(著者です)はい、あらゆる種類の宝くじや抽選が可能な解決策だけど、二重エントリーを避けるためには強力な本人確認が必要で、そのためにはプライバシーを犠牲にすることになるって記事にも書いてある通りです。

数ヶ月前に、Ghost KeysというCAPTCHAの暗号的な代替手段を作ったんだ。これは、小さな寄付を人間の証明として使うもの。寄付をすると、サービス間で繰り返しCAPTCHAを受けずに使える匿名の鍵ペアがもらえる。経済的な摩擦はボット運営者にはスケールしないし、寄付は私たちの非営利団体を支えてるよ。

経済的な摩擦はボットオペレーターにはスケールしないって。キーの数はスケールする必要があるの?もし1ドルで生涯のキーが買えるなら、サインも簡単に自動化できるし、ボットを止める理由は何?

イベントチケットの状況で、チケット価格に1ドル追加するのと比べて、経済的にどう変わるの?(または、あなたの最低寄付基準が何であれ)

現実として、チケット販売者とバンドが主な転売屋になっていて、他の人たちは二次的な転売屋になってる。今やチケットはすべて電子化されていて、チケット販売者が二次市場を運営しているから、「額面価格」なんてもうないし、価格は動的だよ。すべてのチケットが一度にリリースされるわけじゃなくて、多くは最初に「プラチナ」価格で提供される。60年代、70年代、80年代、90年代、00年代のコンサートチケットは2025年のドルで約40〜50ドルだったけど、今はそれが手数料になってる。eBayでチケットの半券を見て、価格や日付をCPI計算機に入れてみて。バンドは転売屋に勝てなかったから、結局自分たちが転売屋になって、チケット会社の助けを借りて法外な価格を設定してる。だから、ボットを止めることは、CAPTCHAが効果的だった時ほど重要じゃなくなった。プロの転売屋が狙うお金がずっと少ないから。

コンサートのチケットがまだその値段で手に入るなんて、スタジアムでの超人気アーティストのショーにはその価格じゃ行けないよね。人気のEDM会場でキャパシティが2000人のアーティストの土曜の夜のチケットは、フロアが約25ドル、VIPが約50ドルだよ。キャパ300人くらいの「スティッキーフロア」バーで、Spotifyで月間リスナーが25万人から300万人のオルタナバンドのチケットも同じくらいの値段かな。Girl in Redのコンサートで最前列にいたら、5000人規模の会場で60ドルかかったよ。そんな単価で超人気アーティストを見たいなら、まとめて買ってフェスに行くしかないね。

私のコンサートチケットは、税金や手数料込みでだいたい40ドルくらいだよ。LiveNationやEtix、DICE、AXSなんかから買ってる。コンサートチケットの値上がりを文句言ってる友達は、毎年同じバンドしか見てないことに気づいてないんだよね。子供の頃に見たような苦労してるバンドはもう苦労してない。だからblink-182は700ドルでも売り切れるんだよ。ファンのほとんどが20代後半から30代で、使えるお金もあって、人数も何百万もいるからね。今のバンドの20ドルのショーに行って、20年後には700ドルになるかもしれないよ。しかも、みんなに「クールになる前に見た」って自慢できるしね。/s

この問題への単純な経済的解決策は、チケット価格を段階的に上げて、転売屋がチケットを再販する魅力をなくすことだよ。The Cureみたいに二次市場を完全に壊すこともできる。プラットフォームを通じてチケットを売って、支払った金額だけで売ることができる。

それだと、スカルパーが買い手と連絡を取って、別の方法での支払いを要求するのを防げるの?

素朴な経済的解決策は、すべてのチケットをオークションにかけることだね。

これはデンマークの法律で、アイルランドや他のいくつかのヨーロッパの国でも同じだと思う。チケットは元の価格以上で売ってはいけない。Ticketmasterなんかは、再販システムで再販時に別の手数料を取るけど、販売価格は購入価格に制限されてるから、まだ喜んで参加してるよ。

人々が間違った価格で物を売ろうとして、自己責任で問題を解決しようとするのには同情できないな。最初から人々が払いたいと思う価格でチケットを売っていれば、プライバシーを侵害したり、こんなことをする必要はなかったはず。彼らがその理由を正当化するために使う言い訳も聞いたけど、全部ナンセンスだよ。

なんでそう思うの?

この問題は、市場が解決する供給と需要の問題を前提にしていることだよ。需要を満たすためにテイラー・スウィフトを増やすことはできないし、異なる地域でテイラー・スウィフトを増やすこともできない。アクトには非常に低くて厳格な上限供給があるから、需要に合わせて価格を上げると、ほとんどの人にとって手が届かないものになっちゃう。それはほとんどの人にとって悪い結果だよね。

アーティストには、少なくとも半分はまともな観客が必要なんだ。これがステージに立つための主な理由だよね。で、最も経済的にチケットを買える人たちはこのグループにはいないし、アクトに対して最も熱心でもない可能性が高い。だから、最高の上限を目指すのではなく、ある程度現実的な中間を目指す自然なインセンティブがあるんだ。つまり、「人々が支払う意欲のある価格」は、アーティストがパフォーマンスする意欲のある価格とはおそらく違うってこと。(編集:オペラハウスが熱心なファンのために安い立ち見席を提供する理由があるのは、アートを生かすためだよ。)

市場価値にすべてを還元しようとする人には全然同情できないな。彼らがその理由を正当化するために使う議論も聞いたけど、全部デタラメだよ。

6月にアムステルダム750周年記念のコンサートがあるんだ(町の周りの高速道路で開催されるけど、閉鎖される)。チケットは無料で、5分で売り切れたけど、すぐにスカルパーから200ユーロで売られてた。https://nos.nl/artikel/2568164-chaos-bij-ticketuitgifte-voor...

これはチケット価格の問題のいい例だね。問題は、最初に売られた価格が公正な市場価格じゃなかったってことだ。

このことを考えたのは私が初めてじゃないと思うけど、TicketmasterがHNに出るたびにこのアイデアに戻ってくるんだ。チケットを時間に基づいて逆進的な価格で売るっていうの。販売はイベントの2ヶ月前から始まって、最初の価格は本当に高額、例えば100万ドルとか。価格は線形にゼロ(または実際のコスト価格)まで下がっていく。どの時点でも、現在の価格と残りの席数が見えるようにする。そうすると、観客はチキンゲームをしてることになる。待てば待つほど価格は下がるけど、チケットが手に入る可能性も下がる。これで、各人が支払う意欲のある最大金額を正確に引き出せると思う。このアイデアは非常に貪欲に聞こえるけど、実際そうなんだ。だから、誰もTicketmasterの取締役会でこの提案をしなかったのが不思議だよ。ただ、私のアイデアは少し貪欲さが少ない。最後のチケットが売れたら、それがコンサートの実際の(そして公正な)チケット価格になって、みんなに差額が返金される。どこまで下がるかわからないから、オーバーペイして後で下がるのを期待するのは良くないよね。Ticketmasterがこれを実施するなら、最後の部分はスキップするだろうけど。私のアイデアにはいくつかの問題があって、エリート主義だし、リスクを負えない層に金融リスクを促進するし、などなどだけど、確実に転売屋の問題は解決するよ。自分の好みを選んでね。

これは逆の第二価格オークションに似たアイデアだね。みんなが支払う意欲のある最大価格を提示して、席を埋めるための最低価格が人々が支払う金額になる。このモデルの利点は、オーバーペイのリスクがないこと。もちろん、オープンビッドの継続的なオークションでは、入札を操作するために他の入札者に影響を与える価格を提示する入札シェーディングの問題があるけど、全体的にはあなたのアイデアに非常に近い経済的なものだよ。

それはオランダ式オークションだね: https://en.wikipedia.org/wiki/Dutch_auction。逆オークションが現在の転売屋問題のシンプルな解決策になると思うよ。需要が供給を上回ると、転売屋が価格を経済的均衡に向かって上げちゃうから、結局チケットの価格は貧乏人にとっても「不公平」になっちゃうし、信頼の問題も出てくるしね…。

転売屋問題は価格設定の問題だよ。転売屋はただのアービトラージャーで、チケットの価格が人工的にすごく低いからね。それを解決したいなら、「なんでチケットの価格が人工的に低いのか?」って自問自答する必要があるよ。答えは多分「アーティストや会場がテーブルの上にお金を置いておきたがっている」じゃないと思うけど。

でも、確実に転売屋問題は解決するよ。 誰も転売屋問題を解決したがらないんだよね。Ticketmasterの独占にとって、転売屋は問題じゃないから。Ticketmasterは、完全に消える可能性のある宝くじのような収入よりも、知られていて一貫したリスクのない収入を重視してる。転売屋はまさにそれをやってる。転売屋はファンにとってだけの問題で、オンラインではチケットの基盤全体を消し去ることができるから問題になるんだ。解決策は、オフラインでの摩擦を導入することだよ。つまり、誰かが現れて限られた数のチケットだけを買う必要があるようにすること。残念ながら、それはシステムに多くの不確実性をもたらし、保証されたキャッシュフローを求めるビジネス側には受け入れられないんだ。でも、真の解決策はTicketmasterの独占を打破することだよ。チケット販売、会場のオーナー、パフォーマーがそれぞれ独立して運営し、各ポイントでリスクを減らす必要があれば、転売屋は排除すべき敵になる。あと、転売が多くのマネーロンダリングを隠してるんじゃないかって全く根拠のない疑いも持ってる。だから、多くの人がそれが続くことに利害関係を持ってると思う。

オークションは価格発見にすごく効果的だよ。これ見てみて: https://community.intercoin.app/t/intercoin-applications-auc... それと、https://community.intercoin.app/t/applications-of-intercoin-...

心配しないで、欲深い、家賃を求める岩はすべてひっくり返されてるから。君のアイデアは彼らにとってはお金がかかりすぎるよ。スカルピングを合法的なビジネスモデルとして受け入れたから、Ticketmasterはほとんどの取引のあらゆる面で利益を上げてる。彼らは君が最大限の不安を抱えて、できるだけ早く買うようにすることで、再販の確率を上げるのが利益になるんだ。ボットやスクレイパーはブラックハットじゃないし、Ticketmasterも「止めよう」とする名目上の努力はしてるけど、どういうわけかその厄介なハッカーたちはTicketmasterにもっとお金を稼がせる方法を見つけちゃうんだよね。Ticketmasterは購入体験を高い摩擦と難しさで作るのが得意だから、そのボットたちは本当に賢いに違いない。(笑)

それとも、無駄なことをやめて、チケットを本当の価値で売ればいいんじゃない?Ticketmasterは潰れるべきだよ!

スカルパーがチケットを買うタイミングは関係なくなるよ。彼らは、買い手が超過分の返金を受け取ることを知っているから、恣意的に高い価格+マージンでチケットを再販できるんだ。だから、最終的には(最終価格+スカルパーのマージン)だけを支払うことになる。ボーナスとして、価格が落ち着いた後にスカルパーからチケットを買えば、決まった価格が手に入るから、もう予想する必要もなくて、心の平和を得られるよ。スカルパーにとっての問題は、チケットを買いすぎると、最終価格が本物の買い手にとって魅力的でなくなる可能性があることだね。

うん、数年抗ボット業界にいると、あんまり驚かないね。先週、ブラウザを全く使わないBinanceのCAPTCHAソルバーを調べてみたんだけど、基本的なHTTPクライアントだけで動いてた。攻撃者は、CAPTCHAが解決されたとマークされるまでの信号収集と応答フローを逆解析してたんだ。ちょっとした難読化があったけど、期待されるテレメトリーを偽造できたみたい。これは、チケット販売やスニーカーのドロップみたいなボットが多い分野では今や普通だね。CAPTCHAはしばしば信号を集めるためのプロトコルになってしまっていて、ブラウザやランタイムにしっかり結びついていないと、偽造されちゃう。PoWが持ちこたえてないのも驚かないよ。誰かがPerimeterXのPoWを逆解析して、CUDAに変換して解決を加速させたみたいだし。ある時点で、ボット用にPoWを遅くしすぎると、低スペックのデバイスを使ってる人間のUXも悪くなっちゃうから難しいよね。