ما هي أداة فك تشفير JWT؟
رمز JWT (JSON Web Token) هو الطريقة القياسية التي تعتمدها واجهات برمجة تطبيقات الويب الحديثة لتمثيل ادعاءات المصادقة والتفويض. إنه رمز مضغوط ومستقل مكوَّن من ثلاثة أجزاء — ترويسة تصف خوارزمية التوقيع، وحمولة تحمل الادعاءات الفعلية (مثل معرّف المستخدم، والأدوار، وتاريخ الانتهاء)، وتوقيع يتيح للخادم المستقبِل التحقق من أن الرمز لم يتم العبث به.
تقرأ أداة فك التشفير هذه الترويسة والحمولة فورًا حتى تتمكن من تشخيص مشكلات المصادقة، أو فحص الادعاءات التي ترسلها واجهة برمجة التطبيقات فعليًا، أو التحقق من موعد انتهاء صلاحية الرمز — كل ذلك دون الحاجة إلى خادم خلفي أو أداة سطر أوامر أو لصق رموز حساسة في خادم تابع لجهة خارجية، لأن كل شيء يعمل محليًا في متصفحك.
متى تستخدم هذه الآلة الحاسبة
- تشخيص سبب رفض واجهة برمجة التطبيقات لرمز ما من خلال فحص ادعاءاته ووقت انتهاء صلاحيته
- التحقق من وقت انتهاء صلاحية رمز أثناء تحقيق دعم فني أو الاستجابة للحوادث
- التحقق من أن مزوّد SSO أو OAuth يصدر المطالبات التي يتوقعها تطبيقك.
- تعلّم كيفية بنية رموز JWT للتحضير لمقابلة عمل أو مادة أمنية
- فحص رمز تم التقاطه من أدوات مطورين المتصفح أو سجلات الخادم لفهم محتوياته
- مقارنة خوارزمية الترويسة بين الرموز لتشخيص أخطاء عدم تطابق الخوارزمية في المصادقة
الخطوات:
- الصق رمز JWT الخاص بك في حقل الإدخال، أو انقر على "تحميل مثال" لتجربة واحد.
- يتم فك تشفير الترويسة والحمولة تلقائيًا أثناء الكتابة.
- راجع الادعاءات مثل iss وsub وexp وiat بصيغة واضحة وقابلة للقراءة.
- تُحوَّل ادعاءات الطوابع الزمنية (exp وiat وnbf) تلقائيًا إلى تواريخ قابلة للقراءة.
الصيغة
JWT = base64Url(الترويسة) + "." + base64Url(الحمولة) + "." + base64Url(التوقيع)
فك التشفير: التقسيم عند "."، ثم فك تشفير base64Url للجزأين الأولين، وتحليلهما كـ JSON.
التحقق (لا يتم هنا): HMACSHA256(base64Url(الترويسة) + "." + base64Url(الحمولة), السر) === التوقيع
حالات الاستخدام
- تشخيص سبب رفض واجهة برمجة التطبيقات لرمز ما من خلال فحص ادعاءاته
- التحقق من وقت انتهاء صلاحية رمز أثناء تحقيق دعم فني
- التأكد من أن مزود تسجيل الدخول الموحد (SSO) أو OAuth يصدر الادعاءات المتوقعة
- تعلّم كيفية بنية رموز JWT للتحضير لمقابلة عمل أو مادة دراسية
- فحص سريع لرمز تم لصقه من أدوات المطورين في المتصفح أو سجلات الخادم
الفوائد الرئيسية
- فك تشفير أي رمز JWT فورًا دون الحاجة إلى خادم خلفي أو أداة سطر أوامر
- كل شيء يعمل من جهة العميل — لا تُرسل الرموز أبدًا إلى أي خادم
- تحويل ادعاءات الطوابع الزمنية تلقائيًا إلى تواريخ قابلة للقراءة
- مجانية، بلا حاجة للتسجيل، وتعمل مع أي رمز JWT بغض النظر عن الخوارزمية
نصائح احترافية
- تحقق دائمًا من 'exp' أولًا عند تشخيص خطأ "غير مصرح" — فالرمز منتهي الصلاحية هو السبب الأكثر شيوعًا
- قارن قيمة 'alg' في الترويسة بما يتوقعه خادمك الخلفي لاكتشاف أخطاء عدم تطابق الخوارزمية
- لا تثق أبدًا بحمولة تم فك تشفيرها كدليل على الهوية دون التحقق من التوقيع من جانب الخادم
- استخدم رموزًا قصيرة العمر مع رموز تحديث بدلًا من رموز JWT طويلة العمر للحد من التعرض في حال تسرب أحدها
الأخطاء الشائعة التي يجب تجنبها
- افتراض أن رمز JWT الذي تم فك تشفيره هو رمز تم التحقق منه — فك التشفير يقرأ المحتوى فقط، ولا يؤكد صحته
- تخزين بيانات حساسة (كلمات مرور، أسرار) في الحمولة، مع نسيان أن أي شخص يمكنه قراءتها
- لصق رموز إنتاجية في أدوات فك تشفير عبر الإنترنت غير موثوقة
- الخلط بين 'exp' (الانتهاء) و'iat' (وقت الإصدار) عند تشخيص مشكلات مدة صلاحية الرمز
شرح المصطلحات الأساسية
- الادعاء (Claim): معلومة تُذكر عن موضوع ما، مثل معرّف المستخدم أو دوره
- الترويسة: الجزء الأول من JWT، ويحدد خوارزمية التوقيع ونوع الرمز
- الحمولة: الجزء الثاني من JWT، ويحتوي على الادعاءات الفعلية
- التوقيع: الجزء الثالث من JWT، يُستخدم للتحقق من أن الرمز لم يتم تعديله
مفاهيم ذات صلة
مثال
الرمز الذي يبدأ بـ eyJhbGciOiJIUzI1NiJ9 يُفَك تشفيره إلى ترويسة {"alg":"HS256","typ":"JWT"} — مما يخبرك أن الرمز موقّع باستخدام HMAC-SHA256.
تفسير نتائجك
يفكك المفكك الرمز JWT عند الفاصلين النقطيين ويفك ترميز أول مقطعين بصيغة Base64URL. يخبرك الترويسة بخوارزمية التوقيع (مثل HS256 أو RS256) ونوع الرمز. تحتوي الحمولة على الادعاءات الفعلية — هوية المستخدم والصلاحيات والطوابع الزمنية.
يتم تحويل ادعاءات الطوابع الزمنية (exp، iat، nbf) تلقائيًا من عصر يونكس إلى تواريخ مقروءة. إذا أظهر 'exp' تاريخًا في الماضي، فإن الرمز منتهي الصلاحية وسترفضه معظم الخوادم. يحتوي ادعاء 'sub' (الموضوع) عادةً على معرف المستخدم، ويحدد 'iss' (المُصدر) الخادم الذي أنشأ الرمز.
تذكر أن فك الترميز ليس تحققًا. تُعرض قسم التوقيع لكن لا يمكن التحقق منه دون المفتاح السري أو العام. الحمولة المفكوكة معلوماتية فقط — لا تثق بها أبدًا كدليل على الهوية دون تحقق الخادم من التوقيع.

