このツールの使い方
header と payload の claims、期間を確認し、必要に応じて署名を検証します。
サンプルで入力形式とメタデータを確認してから、自分の値に置き換えてください。
プライバシーと安全な利用
処理はこのブラウザータブ内で完結します。大きな値は端末メモリを多く使う場合があります。
デコードは検証ではありません。署名、発行者、対象者、期間、アプリケーションポリシーを確認するまでクレームを信頼しないでください。
よくある失敗と原因
- 入力が空、不正、またはこのツールが想定する形式ではありません。
- 選択したモードと alphabet、ファイル形式、表現方法が一致していません。
- 非常に大きな値ではエンコード前後のデータが同時に存在し、メモリ不足になることがあります。
- 変換成功は、デコード内容の安全性や信頼性を保証しません。
同等のコマンド
利用中のランタイムやシェルで再現できます。信頼できない入力は検証し、バイナリを端末へ直接出力しないでください。
Python
import base64, json
h, p, s = token.split('.')
decode = lambda value: json.loads(base64.urlsafe_b64decode(value + '=' * (-len(value) % 4)))
print(decode(h), decode(p))
JavaScript
const [header, payload] = token.split('.');
const decode = value => JSON.parse(Buffer.from(value, 'base64url').toString('utf8'));
console.log(decode(header), decode(payload));
Shell
IFS=. read -r header payload signature <<EOF
$TOKEN
EOF
printf '%s' "$payload" | basenc --base64url --decode