أداة داخل المتصفح

فك JWT والتحقق من توقيعه

فك Claims وفحص صلاحيتها الزمنية والتحقق اختيارياً من التوقيع.

معالجة محلية · دون رفع · دون حساب

تفصيل Claims

التحقق من توقيع JWT

اختياري: أدخل سر HMAC أو مفتاح PEM العام الذي يجب أن يتحقق من الرمز.

يستخدم HS سراً مشتركاً؛ وتستخدم RS وPS وES مفتاح PEM عاماً.

غير متحقق

فك الترميز ليس تحققاً. تبقى Claims غير موثوقة حتى فحص التوقيع والمُصدر والجمهور والفترة الزمنية وسياسة التطبيق.

طريقة عمل الأداة

فك Claims وفحص صلاحيتها الزمنية والتحقق اختيارياً من التوقيع.

استخدم المثال لمعرفة صيغة الإدخال والبيانات الوصفية، ثم استبدله بقيمتك.

الخصوصية والاستخدام الآمن

تبقى المعالجة داخل علامة التبويب هذه. قد تستهلك القيم الكبيرة ذاكرة كبيرة من الجهاز.

فك الترميز ليس تحققاً. تبقى Claims غير موثوقة حتى فحص التوقيع والمُصدر والجمهور والفترة الزمنية وسياسة التطبيق.

الأخطاء الشائعة التي تشرحها الأداة

  • الإدخال فارغ أو تالف أو ليس بالصيغة التي تتوقعها الأداة.
  • الوضع المحدد لا يطابق الأبجدية أو نوع الملف أو طريقة التمثيل.
  • قد تستنفد القيمة الكبيرة الذاكرة عند وجود النسختين المرمزة والمفكوكة معاً.
  • نجاح التحويل لا يثبت أن المحتوى آمن أو موثوق.

أوامر مكافئة

استخدم بيئة التشغيل أو shell المتاح. تحقق من المدخلات غير الموثوقة ولا تطبع البيانات الثنائية مباشرة في الطرفية.

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

المعايير والمراجع الرسمية