النقاط الرئيسية
- 01فك ترميز أي JWT وفحص الرأس والحمولة والمطالبات القياسية بنسخة واحدة.
- 02تُحول مطالبات exp و nbf و iat إلى طوابع زمنية قابلة للقراءة من قبل الإنسان مع وسوم صحيحة/منتهية الصلاحية.
- 03فك الترميز محلي بحتة — آمن لصق الرموز الحقيقية للإنتاج أثناء التصحيح.
- 04فك الترميز لا يتحقق من التوقيعات — يجب أن يحدث بجانب الخادم مع مفتاح المصدر.
لماذا تحتاج إلى فك ترميز JWT
رموز الويب JSON تبدو مثل ضوضاء عشوائية حتى تعلم أنها ثلاثة قطاعات مشفرة Base64URL مفصولة بنقاط. القطاع الأول هو الرأس (الخوارزمية ونوع الرمز) والثاني هو الحمولة (المطالبات: معرف المستخدم والأدوار وانتهاء الصلاحية) والثالث هو التوقيع. عند تصحيح أخطاء مشكلة مصادقة أو جلسة منتهية الصلاحية أو تكامل OAuth مكسور فإن أول شيء تحتاج إلى فعله هو قراءة الحمولة.
القيام بذلك يدويّاً يعني الانقسام على النقاط وفك ترميز Base64URL ثم تحويل Unix timestamps إلى تواريخ قابلة للقراءة. يفعل فك ترميز JWT من Handytool كل ذلك تلقائياً ويضيف وسوم الصحة على مطالبات التوقيت بحيث يمكنك أن ترى بسرعة ما إذا كان الرمز لا يزال نشطاً.
كيفية فك ترميز رمز JWT
- 01
انسخ JWT
احصل على الرمز من DevTools بمتصفحك (Application > Cookies أو لوحة Network رأس Authorization) من ملف السجل أو من عميل API الخاص بك.
- 02
الصقه في فك الترميز
الصق الرمز الكامل — بما في ذلك جميع القطاعات الثلاثة مفصولة بنقاط — في صندوق الإدخال. يتعرف فك الترميز على القطاعات تلقائياً.
- 03
اقرأ الرأس والحمولة
تقسم الأداة الرمز وتطبع الرأس (الخوارزمية النوع) والحمولة (جميع المطالبات) كـ JSON منسق.
- 04
تحقق من مطالبات التوقيت
يتم تحويل Unix timestamps الخاصة بـ exp (انتهاء الصلاحية) و nbf (not-before) و iat (issued-at) إلى تواريخ ISO. يوسّم فك الترميز exp كأخضر (صحيح) أو أحمر (منتهي الصلاحية) نسبة إلى الوقت المحلي الحالي.
مطالبات JWT القياسية موضحة
تظهر أسماء المطالبات المسجلة هذه في معظم JWTs.
- 01iss (Issuer) — يحدد من أنشأ الرمز عادة URL أو اسم الخدمة.
- 02sub (Subject) — المبدأ الذي يمثله الرمز عادة معرف المستخدم.
- 03aud (Audience) — المستقبل المقصود للرمز يجب أن يرفض خادمك الرموز المخصصة للآخرين.
- 04exp (Expiration) — Unix timestamp بعده يجب رفض الرمز.
- 05nbf (Not Before) — Unix timestamp قبله يجب رفض الرمز.
- 06iat (Issued At) — Unix timestamp عندما تم صك الرمز مفيد لاكتشاف الرموز القديمة.
آمن لصق الرموز الحقيقية أثناء التصحيح
يحدث فك ترميز JWT بالكامل في متصفحك باستخدام atob function و JSON.parse الأصلية. لا يتم نقل أي شيء إلى أي خادم — يتم فك ترميز رمزك في الذاكرة وعرضه محلياً. يمكنك بأمان لصق رموز الوصول الحقيقية ورموز الجلسات من بيئات التطوير أو المرحلة لتصحيح تدفقات المصادقة.
ومع ذلك تعامل مع JWTs مثل كلمات المرور. يمنحون الوصول إلى أنظمتك لمدة حياتهم كاملة. لا تصق رموز الإنتاج من حسابات امتيازات عالية في أي أداة إلا إذا كنت واثقاً من ضمانات الخصوصية للأداة — وقم بتدوير الرمز دائماً إذا كنت تعتقد أنه قد يكون قد تعرض.
الأسئلة الشائعة حول فك ترميز JWT
ما هو JWT؟
رمز الويب JSON هو صيغة مضغوطة وآمنة للعناوين تتكون من ثلاثة قطاعات Base64URL (رأس حمولة توقيع) مفصولة بنقاط. تحمل JWTs مطالبات — تأكيدات عن مستخدم أو جلسة — وتُستخدم للمصادقة والترخيص والوصول إلى API.
هل يتحقق هذا فك الترميز من توقيع JWT؟
لا. يحلل فك الترميز الرأس والحمولة فقط. التحقق من التوقيع يتطلب مفتاح سري أو عام للمصدر ويجب أن يحدث في كود التطبيق الخاص بك باستخدام مكتبة موثوقة.
هل من الآمن لصق رمز وصول حقيقي هنا؟
فك الترميز محلي بالكامل — لا يتم نقل الرمز أبداً. ومع ذلك تمنح JWTs وصول حقيقي لذا تعامل معها مثل كلمات المرور. لا تشاركها ولا تلتزمها بالتحكم في المصدر وقم بتدويرها إذا قد يكون قد تعرضت.
ماذا تعني مطالبة exp؟
exp هو timestamp انتهاء الصلاحية — عدد صحيح Unix يمثل اللحظة التي يتوقف الرمز عن أن يكون صحيحاً. يحول فك الترميز إلى تاريخ ISO قابل للقراءة من قبل الإنسان ويوسّم صحيح أو منتهي الصلاحية نسبة إلى الوقت المحلي الحالي.
لماذا حمولة JWT مرئية بدون مفتاح؟
حمولات JWT مشفرة Base64URL وليست مشفرة. مصممة لتكون قابلة للقراءة — التوقيع فقط يثبت الأصالة وليس السرية. لا تضع بيانات سرية حقاً في حمولة JWT إلا إذا استخدمت JSON Web Encryption (JWE).
هل فك الترميز مجاني؟
نعم. Handytool مجاني بدون تسجيل بدون حد معدل وبدون جمع البيانات.