ウェブメディアやウェブサービスを運営している皆さんは、
botトラフィックやスパムトラフィック対策にreCAPTCHAを活用されているの
ではないでしょうか?
reCAPTCHA(リキャプチャ)とは、ウェブサイトの制限エリアへのアクセスを試みるボットからサイトを防御するためCAPTCHAを利用するのと同時に、そのCAPTCHAに対する返答を紙の本のデジタル化に活かすシステムである。
オリジナルは2007年にカーネギーメロン大学ピッツバーグ本校にて開発され2009年9月16日にGoogleが買い取ったものです。
そんなreCAPTCHAが4月1日より完全有料化するようなので代替となる
サービスにCloud Flare Turnstileを紹介したいと思います。
reCAPTCHAとは?
reCAPTCHAは冒頭で説明した通り、ユーザー認証が必要な場所などウェブサイトの
制限エリアにおいてbotやスパムの侵入を制限するためのバリデーションサービスです。
2007年にカーネギーメロン大学ピッツバーグ本校にて、「Luis von Ahnら6名が」開発した
CAPTCHAと呼ばれる、画像認証システムの回答データを電子書籍化するプログラムの事です。

ちなみに・・・CAPTCHAの正式名は
「completely automated public Turing test to tell computers and humans apart」(コンピュータと人間を区別する完全に自動化された公開チューリングテスト)の人為的頭字語である。
日本では画像認証と呼ばれている
チャンレンジ/レスポンステスト呼ばれる旧バージョンのCAPTCHAでは、
人間が以下の様な画像を読みその通りに入力することから「画像認証」と呼ばれている。
現在のバージョンは行動分析
Googleが買取V3となったreCPATCHAは訪問者のIPやクッキー、
サイト内の動きなど行動分析学(行動心理学とも言う)に基づく行動パターンをスコアリング
して一定のスコアを持つユーザーを人間とみなす。
そもそもreCPATCHAは100万回まで無料だった
皆さんがご存じの通り、reCPATCHAはリクエスト/チャレンジベースで
100万回まで無料で呼び出すことが出来ていました。
reCPATCHA有料化4月1日より
GoogleからreCAPTCHAに関して、「[Billing Notice] Price changes for Google reCAPTCHA product tiers」というメールが来ました。冒頭部分のスクリーンショットがこちら。
この冒頭部分をGmailの翻訳機能で訳したのがこれです。
2024 年 4 月 1 日より、既存の機能を拡張し、 Google reCAPTCHA製品レベルの追加の価格オプションを提供します。
何を知っておく必要がありますか?
2024 年 4 月 1 日より、 Google reCAPTCHA で次の価格変更が可能になります。
- reCAPTCHA Enterprise にトランザクション保護が組み込まれ、評価 1,000 件あたり 40 ドルから 1 ドルに価格が引き下げられます。 reCAPTCHA Enterprise には、月額 100 万件ではなく 10,000 件の無料評価も含まれます。
- ボット保護のための reCAPTCHA Standard を月額 8 ドルで追加し、1 か月あたり最大 100,000 件の評価が可能です。
- 無料の reCAPTCHA 製品の名前が reCAPTCHA Lite に変更され、月あたり 100 万件の評価から最大 10,000 件の評価に対する保護が提供されます。
23万回チャレンジがあった場合のコスト
仮に23万回リクエストがあった場合を想定してみる。
これは直近90日間分で、リクエストの総数が23.3万。これが上のメールにあった「評価」の数でしょう。reCAPTCHAで人間かどうかの評価をリクエストした数。多分この考え方で合っていると思いますけど、確証もありませんが。
考え方が合っているとして、90日間で23.3万ということは、一か月あたりに換算すると約7.8万。
月あたり1万の制限に変ったのでは全然足りませんね。
有料のEnterprise版に移行しなければならなということになりそうです。
有料のエンタープライズにも1万回まで無料付くので、7.8万-1万で6.8万回
6.8万回を1000回で割って1ドル乗じるので・・・
7.8-1/1000*1=68ドル
1月31日現在の為替レートで68ドル=10,050円
つまり1ヶ月reCAPTCHAを使うと1万円弱かかると言うことになる。
月額8ドル/10,0000チャレンジのStandardでも1200~1500円と言ったところだ。
それにサイトが成長すれば当然Standerdやエンタープライズでも
コストがかさむようになる。
代替品はCloud Flare Turnstileで十分
Ddos攻撃からサイトを守り中がらサイトの高速配信を提供するCDNで有名の
インターネットインフラ事業者クラウドフレアがよりスマートなCAPTCHAである、
Turnstileと言う物を提供しています。
ちなみに、turnstileとは回転式の改札のことのようです。
遊園地とか、動物園、博物館、あるいは海外の地下鉄の改札などにありますよね。
金属のバーなどがあって、それが回転して一人ずつ通るようになっている仕組み。あれです。
正直筆者は、以下の根拠よりCloud Flare Turnstileで十分だと重いっています。
- 煩わしくない
- 検証までがスムーズ
- 無料で10個のウィジェットまで無制限で使える
- 導入が簡単!
十分である根拠①煩わしくない
Cloud Flare Turnstileは、旧式のCAPTCHAの様な煩わしいテキスト認証や
画像認証がありません。現行のreCAPTCHA v3の行動分析と近い挙動をしており、
スムーズな検証が可能です。
これを置き換える高性能なテストで、人間が操作していることを示すシグナルを判断の基準とするのが
特徴。非対話型でユーザー側にチャレンジを求めることなく、
いくつかのセッションデータを元に検証を実行する。
人類の時間を無駄遣いするCAPTCHAの代替技術。Cloudflareが無償提供 – PC Watch (impress.co.jp)
検証までがスムーズ
利便性を欠くシステムとしても知られ、1度のテストで平均32秒の時間が浪費されているという。また、身体的/認知的に問題を解けないケースにおけるアクセシビリティの問題、Cookieなどを利用することによるプライバシーの問題も指摘されてきた。
加えて、Private Access Token(PAT)に対応したデバイスであれば、デバイスの検証をデバイスベンダーへ任せることで、ユーザーのデータ収集を最小限に抑え、よりプライバシーを保護できるという。
macOSおよびiOSの最新バージョンを搭載するデバイスではすでにPATサポートしている。
同社によれば、Turnstileは現時点でCAPTCHAと同程度の精度を発揮できており、認証にかかる時間は約1秒にまで短縮されるという。また、Webサイト管理者側の対応も簡単で、置き換え作業は数分で完了できるいう。
無料で10個のウィジェットまで無制限で使える


Cloud Flare Turnstileは10個のウィジェットまで無料かつチャレンジ回数無制限で利用できる。
もちろんreCAPTCHA同様に一つのウィジェットに複数のドメインが登録できるので、
実質今まで通りのreCAPTCHAと同じように無料で利用できると言うことになる。
Cloud Flare Turnstileの導入方法


ここからは実際にCloud Flare Turnstileに導入/移行する方法を紹介したいと思う。
一番手っ取り早いのは、プラグインを活用する方法だが、
後ほどreCAPTCHAとhCAPTCHAからの移行方法も紹介する。
プラグイン
WordPressにTurnstileを導入するはプラグインが使えます。
いくつかあるようですが、有効インストール数が最も多い
Simple Cloudflare Turnstileで紹介する。
このプラグインをインストールして有効化すると設定ページが開きます。
ここで、Cloudflare TurnstileのAPIキーを求められます。
APIキー入手
必要なキーは「Cloudflare Turnstileにサインアップ」から入手することができます。
ここをアクセスするとCloudflareへのログインが求められます。
英語で表示されますが、右上のドロップダウンリストで日本語を選ぶこともできます。
ここをアクセスするとCloudflareへのログインが求められます。英語で表示されますが、右上のドロップダウンリストで日本語を選ぶこともできます。
アカウント作成


Cloudflareのアカウントがなければこの場で作ります。
メールアドレスとパスワード(自分で決める)を入れて「サインアップ」ボタンをクリックします。
メール内のリンクをクリックします。これでログインできるはずです。
サイト登録


サイト名は自分の識別用ですので、わかり易い名前を入力します。日本語もOKです。
サイトのドメインを入力します。URLではなく、ドメインです。入力したらその下に表示される「xxxxx (カスタムドメインを追加する)」ボタンをクリックします(これがちょっとわかりにくいですが、これがボタンです)。そうすると、下の図のようにドメインが入るはずです。
ウィジェットモードは「管理対象」を選べば良いと思います。サイトの訪問者がちょっと怪しければ人によるアクションを促すモードだと思います。「非インタラクティブ」だとそうした人へのアクションの促しはなく、チェック中であることを表すバーが出るようです。「不可視」は何も表示されず、完全に裏でやるものだと思います。「管理対象」だけしか私は今のところ試していません。
サイトキーとシークレットキーが表示されます。もしこの画面を閉じてしまったら、サイトの一覧を表示し、「Settings」のリンクをクリックすればサイトキーなどの画面が表示されます。
APIキーの入力
Simple Cloudflare Turnstileプラグインの設定画面に、先程取得したサイトキーとシークレットキーを入力します(コピペでOK)。
どのフォーム(画面)でTrunstileを使うかを選択します。基本は、全部チェックすれば良いと思います。
また、もし、他に対応しているプラグインがインストールされていれば、それらも表示されます。
上は、Contact Form 7がインストールされている場合の例です。一通り選択したら「変更を保存」ボタンを押します。
「API応答テスト→」ボタンを押します。
このように「成功!TurnstileはこれらのAPIキーで正しく動作します。」と表示されれるはずです。
問題があった場合は下の図のように「失敗!API設定にエラーがあります。チェックして更新してください。」と表示されます。おそらく、サイトキーなどの入力にミスがあると思われます。入力し直して再度テストしてください。
動作確認
Cloudflare Turnstileが有効化されると、コメントフォームなどにこのような表示が現れます。
ほとんどの場合は、自動でチェックされ、「成功しました!」となるはずです。
ログインフォームも同様です。
まれに、確認が求められることがあります。
この場合はクリックするだけです。通常はこれで成功するはずです。
この場合は、何もせずとも数秒後に再チェックされ、成功するはずです。
reCAPTCHAと比べると、確認が求められる場合でもチェックするだけけで、指定された画像の選択などはありません。楽です。楽すぎて「本当に大丈夫か?」という気がしないでもないですが…。
統計情報
Cloudflare Turnstileの管理画面で統計情報を確認することもできます。
「発行されたチャレンジ」は、Turnstileが表示された回数でしょう。
「インタラクティブな解決」は訪問者に確認を求めた回数(つまり、手動確認)。
「非インタラクティブな解決」は訪問者に確認を求めることなく自動で認証した回数。
まとめ|【reCAPTCHA有料化へ】代替はTurnstile で充分
今回は、4月より完全有料化するGoogleのreCAPTCHAの料金プランの詳細と
シュミレーション、代替となり無料でかつスピーディーでユーザーの利便性を損なわせない
CAPTCHAソリューションであるCloud Flare Turnstileを紹介しました。
- 煩わしくない
- 検証までがスムーズ
- 無料で10個のウィジェットまで無制限で使える
- 導入が簡単!
以上の理由から【reCAPTCHA有料化】の代替はTurnstile で充分と言えます。
ぜひ、導入を検討してみてください。
この後は追加DLC「Turnstile への移行方法」をお楽しみください。
コメント