أداة فك ترميز JWT
الصق رمز JSON Web Token وافكّ ترميز ترويسته وحمولته فورًا — كل ذلك داخل متصفحك، ولا يُرفع أي شيء
JSON Web Token
حول هذه الأداة
تقرأ أداة فك ترميز JWT رمز JSON Web Token وتعرض ما بداخله. يتكوّن الرمز من ثلاثة أجزاء مفصولة بنقاط — ترويسة وحمولة وتوقيع — والجزءان الأولان ليسا سوى JSON مُرمَّز بـ Base64URL. تفكّ هذه الأداة ترميزهما إلى JSON مقروء ومنسّق لتفحص الخوارزمية ونوع الرمز وكل مطالبة. تُحوَّل مطالبات الوقت القياسية مثل exp (الانتهاء) و iat (وقت الإصدار) و nbf (ليس قبل) من ثوانٍ UNIX خام إلى تواريخ مقروءة، ويُميَّز الرمز المنتهي لك. والأهم: لا تتحقق الأداة أبدًا من التوقيع ولا تطلب أي مفتاح سري أو عام؛ فك الترميز يحتاج إلى الرمز نفسه فقط. لذلك يحدث كل شيء محليًا داخل متصفحك ولا يُرفع أي شيء، مما يجعل فحص الرموز آمنًا دون تسريبها إلى خادم.
كيفية الاستخدام
- 1 الصق رمز JSON Web Token (header.payload.signature) في مربع الإدخال، أو انقر تحميل مثال للتجربة.
- 2 تُفكّ الترويسة والحمولة فورًا وتُعرَض كـ JSON منسّق.
- 3 تحقّق من شارتي alg و typ، واقرأ exp / iat / nbf كتواريخ مقروءة؛ يُميَّز الرمز المنتهي بالأحمر.
- 4 استخدم أزرار النسخ للحصول على الترويسة أو الحمولة بعد فك الترميز. لا يغادر متصفحك أي شيء تلصقه.
كيف تعمل
يُكتَب رمز JWT كثلاث سلاسل Base64URL متصلة بنقاط: header.payload.signature. يشبه Base64URL ترميز Base64 القياسي لكنه يستخدم - و _ بدلًا من + و /، وعادةً ما يُسقط حشو = في النهاية. تستعيد الأداة هذه الأحرف، وتضيف الحشو الناقص، وتشغّل atob للحصول على البايتات الخام، ثم تعيد تفسيرها كـ UTF-8 كي تظهر المطالبات غير اللاتينية بشكل صحيح. ثم تُحلَّل الترويسة والحمولة كـ JSON وتُنسَّق. مطالبات exp و iat و nbf الرقمية هي طوابع زمنية UNIX بالثواني، لذا تُضرَب في 1000 وتُحوَّل إلى تواريخ؛ وإن كانت exp في الماضي يُوسَم الرمز بأنه منتهٍ. يُعرَض جزء التوقيع كما هو ولا يُتحقَّق منه أبدًا، ولهذا لا حاجة لأي مفتاح وتبقى العملية كلها على جهازك.
الأسئلة الشائعة
هل تتحقق هذه الأداة من توقيع JWT؟
لا. إنها تفكّ ترميز الترويسة والحمولة فقط لتتمكن من قراءتهما. التحقق من التوقيع يتطلب المفتاح السري أو العام للتوقيع، وهو ما لا تطلبه هذه الأداة عمدًا أبدًا. هكذا يبقى كل شيء محليًا ويمكنك فحص محتوى الرمز بأمان دون كشف أي مفتاح.
هل يُرسَل رمزي إلى خادم؟
لا. يجري فك الترميز بالكامل في متصفحك باستخدام JavaScript. لا يُرفع رمزك أبدًا ولا يُسجَّل ولا يُخزَّن، وتستمر الأداة في العمل دون اتصال بعد تحميل الصفحة. من الآمن لصق الرموز الحساسة هنا.
ماذا تعني الحقول exp و iat و nbf؟
إنها مطالبات وقت قياسية مُعبَّر عنها كطوابع زمنية UNIX بالثواني. exp هو وقت انتهاء الرمز، و iat وقت إصداره، و nbf أبكر وقت يصبح فيه صالحًا. تحوّل هذه الأداة كل قيمة إلى تاريخ مقروء وتسم الرمز بأنه منتهٍ عندما تكون exp في الماضي.
هل يمكنني قراءة JWT دون المفتاح السري؟
نعم. ترويسة JWT وحمولته مُرمَّزتان بـ Base64URL فقط وليستا مشفّرتين، لذا يمكن لأي شخص قراءتهما دون أي مفتاح. لا يلزم المفتاح السري أو العام إلا للتحقق من التوقيع الذي يثبت أن الرمز لم يُعبَث به، لكنه لا يلزم أبدًا لرؤية المحتوى.
لماذا يظهر رمزي بنص مشوَّش أو بخطأ؟
يجب أن يتكوّن JWT من ثلاثة أجزاء بالضبط مفصولة بنقاط، كل منها Base64URL صالح، وأن يُفكّ ترميز الجزأين الأولين إلى JSON صالح. إذا كان جزء مفقودًا أو مبتورًا، أو لصقت عن طريق الخطأ JWE مشفّرًا بدلًا من JWS موقَّع، فإن الأداة تُبلِّغ عن خطأ بدلًا من التخمين.
أدوات ذات صلة واستخدامات
اقرن أداة فك ترميز JWT بأداة Base64 لفحص الأجزاء يدويًا، وبمنسّق JSON لإعادة تنسيق حمولة منسوخة، وبمحوّل طابع Unix الزمني للتحقق من أوقات exp/iat/nbf. يلجأ المطورون إليها عند تنقيح تدفقات المصادقة ورموز OAuth/OpenID Connect وبوابات واجهات البرمجة وتسجيل الدخول الموحّد، حيث تُعدّ القراءة السريعة لمطالبات الرمز جزءًا من العمل اليومي.