開発者 / OAuth
PKCEコードベリファイアとコードチャレンジのジェネレーター
RFC 7636に準拠し、OAuth 2.0 PKCEのコードベリファイア、S256コードチャレンジ、state値を生成します。既存のベリファイアからチャレンジを確認することもできます。
PKCEコードベリファイアとコードチャレンジのジェネレーター: PKCEは、モバイルアプリやシングルページアプリなど、秘密情報を安全に保持できないアプリのOAuth認可コードフローを保護します。ベリファイアは、非予約文字からなるランダムな文字列です。このツールでは、ブラウザの安全な乱数生成機能から偏りなく文字を選びます。チャレンジは、ベリファイアをSHA-256でハッシュ化し、Base64urlエンコードしたものです。この計算はRFC 7636の計算例と一致します。 サーバーへのファイルアップロードは一切なく、100%ブラウザ内でローカル実行します。
- カテゴリ
- 開発者ツール
- 実行回数
- ブラウザ内で
- コスト
- 無料 · 登録不要
- 提供状況
- すぐに使えます
完全にブラウザ内で実行します
——S256—認証リクエストとともにcode_challengeとcode_challenge_method=S256を送信し、ベリファイアはクライアント上で秘密に保管して、トークンリクエストとともに送信します。チャレンジは、RFC 7636で定義されているベリファイアのBase64url SHA-256です。
フローの概要
アプリは検証コードを生成して保持し、サインインリクエストとともにチャレンジを認可サーバーへ送信します。認可コードを受け取ったら、そのコードと検証コードを使ってトークンと交換します。コードを傍受した攻撃者も、検証コードなしでは使用できません。
受け取ったトークンを確認するには、JWTデコーダーを使用してください。
現在はすべてで必須
OAuth 2.1と現在のセキュリティのベストプラクティスでは、機密性の高いサーバーサイドクライアントを含め、認可コードフローを使うすべてのクライアントにPKCEを推奨しています。
使い方
- ベリファイアの長さを43~128文字から選び、「生成」を押します。
- コードチャレンジとメソッドを認可リクエストにコピーします。
- トークンリクエスト用にベリファイアを保管します。ベリファイアを貼り付けると、そのチャレンジを確認できます。
プライバシーと制限事項
値はブラウザ内で生成され、外部に送信されることはありません。
関連ツール
よくある質問
plainとS256のどちらを使うべきですか?
クライアントがSHA-256を計算できる場合は、常にS256を使用してください。最新のプラットフォームはすべて計算できます。plainは、SHA-256を計算できないクライアントのためだけに存在します。
state値は何のために使いますか?
クロスサイトリクエストフォージェリから保護するために使います。認可リクエストと一緒に送信し、同じ値が返ってきたことを確認してください。
ベリファイアはどのくらいの長さにすべきですか?
少なくとも43文字にしてください。64文字以上が一般的です。128文字までであれば、長くしてランダム性を高めても互換性の問題はありません。
無料ツール · ブラウザ内で · アカウント不要