ツール
入力
結果
結果はここに表示されます。Webhook プロバイダーは HMAC でリクエストに署名します。検証が失敗する原因を最速で特定するには、期待される署名を手動で計算してみるのが一番です。正確なペイロードと共有シークレットを入力して比較してください。この処理はページ内で実行されるため、シークレットが送信されることはなく、キーや署名が履歴に残ることもありません。
動作のしくみ
- キーとメッセージはページ内の WebCrypto で処理され、どこにも送信されません。
- 出力は hex または Base64 で、Webhook プロバイダーが使用する 2 つのエンコーディングです。
- 実行に関する情報は保存されず、入力がシークレットであるため、ブラウザの履歴にも残りません。
データの行き先
どこにも行きません。このツールは完全にブラウザ内で動作します。貼り付けたテキストはページが処理し、サーバーに送信されることも、ログに記録されることもありません。
このツールは鍵や資格情報を扱うため、実行に関する情報は一切保存されません。あなた自身の履歴にも残りません。
必要なポイント
1 回あたり 20.0 KB まではアカウントなしで無料です。それを超える実行は 2 ポイントを消費し、履歴に保存されます。
ポイントは登録、デイリーチェックイン、コメント投稿、プロフィールの記入で貯まります。
ポイントの仕組みを見るよくある質問
- 署名がプロバイダーのものと一致しません。何が問題ですか?
- ほとんどの場合、メッセージがバイト単位で同一ではありません。JSON のパースや再シリアライズ(キーの並び順や空白が変わる)を行う前の、受信した生のリクエストボディにそのまま署名してください。プロバイダーがタイムスタンプやバージョン文字列を前置するかどうかも確認してください。
- HMAC と単純なハッシュの違いは何ですか?
- シークレットとメッセージを連結した単純なハッシュは、シークレットを知らない攻撃者によって拡張される可能性があります。HMAC の入れ子構造はそのような攻撃に耐えるように設計されており、そのためすべての署名仕様が連結ではなく HMAC を使用しています。
- 本番のシークレットをここに貼り付けても安全ですか?
- 計算はローカルで行われ、送信や保存は一切されません。とはいえ、共有マシンのブラウザに貼り付けたシークレットは、ローテーションを検討すべきものです。
背後にあるオープンソース
このツールは外部ライブラリを同梱しない独自実装です。brix/crypto-js(MIT)はコードとして同じ仕事をします。自分のプログラムで同じことをしたいなら、Web ページを呼ぶのではなくそちらから始めてください。
brix/crypto-js別の呼び方
- hmac 生成
- hmac sha256 計算
- webhook 署名 検証
- hmac オンライン
- api 署名 ジェネレーター