425 Too Early(RFC 8470)は、TLS 1.3 の早期データ(0-RTT とも呼ばれます)に関するコードです。TLS セッションを再開するクライアントは、往復 1 回分を節約するために、ハンドシェイクが完了する前に最初のリクエストをハンドシェイクと一緒に送信できます。早期データは攻撃者にリプレイされる可能性があるため、副作用のないリクエストにしか安全に使えません。
早期データでリクエストを受け取り、その処理のリスクを避けたいサーバーは、425 で応答できます。その場合クライアントは、ハンドシェイクの完了後に自動的にリクエストを再試行しなければなりません。早期データのリクエストを転送する CDN などの中継サーバーは Early-Data: 1 ヘッダーを付けるので、オリジンはリプレイが害になる場合に 425 を返せます。
レスポンス例
HTTP
HTTP/1.1 425 Too Early
Date: Fri, 06 Nov 2026 10:15:32 GMT
Content-Length: 0 SEO とリダイレクトチェック
ブラウザーは 425 を自動的に処理するため、ユーザーの目に触れることはありません。クローラーやリダイレクトチェッカーが 0-RTT を使うことはまれなので、SEO 上の実質的な影響はありません。
よくある原因と主な用途
- 再開された TLS 1.3 接続で
POSTが早期データとして送られ、リプレイを防ぐためにサーバーが拒否した場合。 - 0-RTT を有効にした CDN の背後にあるオリジンが、
Early-Data: 1が付いたリクエストを拒否している場合。 - リプレイを安全に扱えないアプリケーションが、早期データをすべて 425 で拒否している場合。