2025/05/15 13:22 Forget IPs: using cryptography to verify bot and agent traffic

ロボ子、今日のITニュースはボット認証の新しい方法についてのようじゃぞ!

ボット認証ですか、博士。最近AIエージェントが増えて、従来のボットの区別が難しくなっているという話ですね。

そうそう!悪意のあるボットもいれば、検索エンジンのように協力したいボットもいるからの。従来の認証方法だと、User-Agentヘッダーは偽装されやすいし、IPアドレス範囲は管理が大変じゃ。

Bearerトークンも、ウェブサイトごとに管理が必要で、大規模な運用には向かないとのことです。

そこでCloudflareが、HTTPメッセージ署名とリクエストmTLSという新しいメカニズムを提案したんじゃな。

HTTPメッセージ署名とは、リクエスト送信者が暗号署名で認証を行う標準規格のことですね。エージェントは公開鍵でターゲットオリジンを署名するとのことですが、具体的にはどういうことでしょうか?

`Signature-Input`ヘッダーに署名の有効期間やキーID、署名の目的を記述するんじゃ。そして、`Signature-Agent`ヘッダーで公開鍵の場所を示す。OpenAIもOperatorトラフィックの認証に使っているらしいぞ。

なるほど。リクエストmTLSは、TLS証明書を相互に提示して認証を行う方式ですね。クライアントが証明書を提供できない場合のエラーを避けるために、TLSフラグでmTLSサポートを通知する仕組みも提案されているとのことです。

IETFに`req mTLS`という新しいTLSフラグを提案しているらしいぞ。これでサーバーはクライアントに証明書を要求できることを示すんじゃ。

HTTPメッセージ署名とリクエストmTLS、どちらが良いのでしょうか?

HTTPメッセージ署名は既存のRFC 9421に基づいているから導入しやすい。HTTPレイヤーで動くのも良い点じゃな。リクエストmTLSは帯域幅が気になる場合に良いかもしれないが、まだ実装が少ないからの。

Cloudflareはこれらの認証メカニズムをAI AuditやBot Management製品に統合する予定とのことです。自己申告するボットの可視性が向上するのは良いことですね。

ボット認証が進めば、サイトの所有者はトラフィックをより細かく制御できるようになるからの。これからの時代、ボットとの付き合い方も考えないといけないのじゃ。

そうですね、博士。ところで、今日のニュースとは関係ありませんが、最近、博士が作ったお菓子のボットが、私のクッキーを全部食べてしまったんですよ。

えへへ、それはごめんの。でも、そのボット、HTTPメッセージ署名で認証されてなかったからの。今度からちゃんと認証させるようにするぞ!
⚠️この記事は生成AIによるコンテンツを含み、ハルシネーションの可能性があります。