فك شفرة الرأس
JSONبعد لصق JWT، سيتم عرض المحتوى الذي تم تحليله هنا.
اعرض رأس وحمولة JSON Web Token داخل متصفحك؛ لا يتم التحقق من التوقيع.
الصق JWT أدناه لفك التشفير والفحص والتحقق على الفور.
في انتظار إدخال رمز ويب JSON.
بعد لصق JWT، سيتم عرض المحتوى الذي تم تحليله هنا.
بعد لصق JWT، سيتم عرض المحتوى الذي تم تحليله هنا.
سيتم عرض التوقيع هنا بعد فك التشفير.
أدخل السر لاستخدامه عند إصدار JWT. يتم إجراء التحقق HS256 محليًا في متصفحك.
قم بتحرير الرأس والحمولة JSON واستخدم توقيع HS256.
الاستعداد لإنشاء JWT.
هذه المجموعة من الرموز المميزة مناسبة للاختبار المحلي وتصحيح أخطاء التطوير.
JWT هو تنسيق رمزي شائع الاستخدام لتسجيل الدخول والتحقق من واجهة برمجة التطبيقات (API) والترخيص بين الخدمات. ويتكون من ثلاثة أقسام: الرأس والحمولة والتوقيع.
يمكن فك تشفير محتوى الحمولة وقراءته، ولا ينبغي وضع المعلومات الحساسة في مطالبات JWT.
تدعم هذه الصفحة التحقق من توقيع HS256 وإنشائه، مما يجعل من السهل التحقق مما إذا كان رمز بيئة الاختبار قد تم إنشاؤه بنفس السر.
تتم جميع عمليات فك تشفير JWT وترميزها والتحقق من التوقيع محليًا في المتصفح.
قاعدة معارف JWT SEO
إذا كنت تبحث عن "JWT Decoder" أو "JWT Decoder" أو "JSON Web Token Parsing" أو "JWT Verify" أو "JWT Encoder"، فهذا يعني عادةً أن لديك رمزًا مميزًا بالفعل وتحتاج إلى فهم رأسه والحمولة ووقت انتهاء الصلاحية وخوارزمية التوقيع والمطالبات بسرعة. لا توفر هذه الصفحة أدوات فك تشفير JWT عبر الإنترنت فحسب، بل تنظم أيضًا المعرفة الأساسية لـ JWT التي يستفسر عنها المطورون بشكل متكرر.
JWT هو اختصار لـ JSON Web Token. إنه تنسيق رمزي يستخدم JSON لتمثيل المعلومات ثم تحويلها إلى سلسلة مبسطة. غالبًا ما يتم استخدامه في مواقع الفصل بين الواجهة الأمامية والخلفية، وواجهة برمجة تطبيقات التطبيقات، وتسجيل دخول الأعضاء، وتسجيل الدخول الموحد (SSO)، وتخويل الخدمات الصغيرة، وتبادل البيانات بين الخدمات.
لا يتطلب فك تشفير JWT كلمة مرور لأن الرأس والحمولة مشفرتان فقط بواسطة Base64URL، وليست مشفرة. يمكن لأي شخص يحصل على الرمز المميز استخدام JWT Decoder لرؤية محتوى الحمولة، لذلك لا يمكن أن تحتوي المطالبات على كلمات مرور أو مفاتيح API أو معلومات شخصية حساسة.
حالة الاستخدام الأكثر شيوعًا هي التفويض. بعد تسجيل دخول المستخدم بنجاح، يصدر خادم التفويض JWT. عندما تستدعي الواجهة الأمامية أو التطبيق واجهة برمجة التطبيقات لاحقًا، يتم وضع الرمز المميز في رأس تفويض HTTP، مثل التفويض: الحامل .
يستخدم JWT أيضًا بشكل شائع لتبادل المعلومات. عندما يحتاج نظامان إلى تبادل بيانات يمكن التحقق منها، تسمح التوقيعات للطرف المتلقي بالتأكد من عدم تغيير البيانات أثناء الإرسال. تُستخدم نقطة نهاية JWKS بشكل شائع في الأنظمة الكبيرة لكشف المفاتيح العامة حتى تتمكن الخدمات المختلفة من التحقق من مصدر الرمز المميز.
يتكون JWT القياسي عادةً من ثلاث سلاسل Base64URL مفصولة بفترات: Header.Payload.Signature. يصف القسم الأول من الرأس نوع الرمز المميز وخوارزمية التوقيع، ويحتوي القسم الثاني من Payload على مطالبات، ويتم استخدام القسم الثالث من التوقيع للتحقق من التكامل.
تتضمن المطالبات المسجلة الشائعة iss، sub، aud، exp، nbf، iat و jti. عادةً ما يتحقق التحقق الجيد من واجهة برمجة التطبيقات (API) من exp وiss وaud.
العملية النموذجية هي: يقوم المستخدم بتسجيل الدخول، ويأذن للخادم بالتحقق من كلمة مرور الحساب أو نتيجة تسجيل دخول الطرف الثالث، ثم يصدر رمز وصول؛ تقوم الواجهة الأمامية بإرفاق رمز الوصول بطلب واجهة برمجة التطبيقات؛ تتحقق واجهة برمجة التطبيقات الخلفية من الرمز المميز وتعيد البيانات المحمية.
JWT ليس بديلاً للجلسة العامة. بمجرد إصدار الرمز المميز، يمكن عادةً التحقق منه دون التحقق من قاعدة البيانات قبل انتهاء الصلاحية. ومع ذلك، لا تزال هناك حاجة إلى تصميم إبطال الرمز المميز وتغييرات الأذونات الفورية ومعالجة تسجيل الخروج.
يشير التحقق من صحة JWT عادةً إلى التحقق مما إذا كان الرمز المميز يلبي القواعد المتوقعة، مثل ما إذا كان يحتوي على ثلاثة أجزاء، وما إذا كان يمكن فك تشفيره، وما إذا كان JSON قانونيًا، وما إذا كانت انتهت صلاحيته، وما إذا كان المُصدر صحيحًا، وما إذا كان الجمهور يتوافق مع واجهة برمجة التطبيقات الحالية.
سيستخدم التحقق من JWT الخوارزمية والمفتاح المحددين لإعادة حساب التوقيع، ثم مقارنته بالتوقيع الثالث للرمز المميز. إن القدرة على فهم الحمولة لا تعني أن الرمز جدير بالثقة؛ يجب أن تخضع واجهة برمجة التطبيقات (API) الرسمية للتحقق من الختم والتحقق من المطالبات.
يقوم JWT Decode بتحويل الفقرتين الأولى والثانية من الرمز المميز مرة أخرى إلى JSON، مما يسمح لك بقراءة الرأس والحمولة. JWT Encode هي عملية عكسية: إعداد Header JSON وPayload JSON، وإنشاء التوقيع، وأخيرًا دمجهما في رمز مميز كامل.
إذا كنت تريد فقط رؤية محتوى الحمولة، فلن تحتاج إلى سر؛ إذا كنت تريد التأكد من أن الرمز المميز قد تم إصداره بالفعل من قبل نظامك، فيجب عليك استخدام المفتاح السري أو العام الصحيح للتحقق من التوقيع. تدعم هذه الصفحة حاليًا HS256.
عند استخدام فك تشفير JWT عبر الإنترنت، يجب عليك أيضًا التحقق من الجهة التي أصدرت الرمز المميز، والنظام الذي تم إصداره إليه، ومتى يصبح ساري المفعول، ومتى تنتهي صلاحيته، وما إذا كان نطاق الإذن يلبي متطلبات واجهة برمجة التطبيقات (API). يلخص الجدول التالي مطالبات JWT الشائعة.
| المطالبة | معنى صيني | ما يجب التحقق منه عند التصحيح |
|---|---|---|
محطة الفضاء الدولية | مصدر، مصدر | سواء كان خادم الترخيص الخاص بك أو موفر هوية موثوقًا به. |
الفرعية | الموضوع أو المستخدم أو المعرف الرئيسي | سواء كان ذلك يتوافق مع المستخدم أو العضو أو حساب الخدمة أو الجهاز الصحيح. |
أود | الجمهور، الجمهور الرمزي | ما إذا كان سيتم إرسالها إلى واجهة برمجة التطبيقات (API) الحالية؛ غالبًا ما تسبب أخطاء الجمهور 401. |
إكسب | وقت انتهاء الصلاحية، وقت انتهاء الصلاحية | ما إذا كانت قد انتهت صلاحيتها؛ لاحظ الفرق في الطابع الزمني لنظام Unix وعرض المنطقة الزمنية. |
nbf | ليس قبل ذلك، الوقت الفعلي | ما إذا كان الوقت الصالح للاستخدام لم يصل بعد؛ سيؤثر عليه أيضًا انحراف وقت الخادم. |
iat | صدر في وقت الإصدار | هل يتطابق مع الوقت الفعلي لتسجيل الدخول أو رمز التحديث. |
jti | معرف JWT، معرف فريد للرمز المميز | ما إذا كان يمكن استخدامه لقوائم الإلغاء أو سجلات التدقيق أو إعادة تشغيل الحماية من الهجمات. |
النطاق | نطاق السلطة | ما إذا كانت أذونات القراءة والكتابة والمسؤول والأذونات الأخرى التي تتطلبها واجهة برمجة التطبيقات موجودة أم لا. |
alg في JWT Header سيخبر المدقق بالخوارزمية التي يجب استخدامها. HS256 هو HMAC SHA-256، ويستخدم كل من الإصدار والتحقق نفس مجموعة الأسرار؛ يستخدم RS256 توقيع المفتاح الخاص RSA والتحقق من المفتاح العام؛ يستخدم ES256 خوارزمية المنحنى الإهليلجي.
يجب أن تحدد الواجهة الخلفية بوضوح قائمة الخوارزميات المسموح بها لمنع المهاجمين من التأثير على عملية التحقق عن طريق تعديل الرأس. إذا كان JWT يأتي من موفر هوية، فاحصل عادةً على JWKS أو المفتاح العام وتحقق من kid، iss، aud، exp.
المشاكل الأكثر شيوعًا التي تتم مواجهتها عند استخدام JWT Decoder هي أن الرمز المميز ليس بالتنسيق القياسي المكون من ثلاثة أجزاء، أو أن سلسلة Base64URL يتم نسخها بشكل غير كامل، أو أن هناك مسافات بيضاء قبل وبعد، أو أن الحمولة ليست قانونية JSON، أو يتم استخدام سر التوقيع بشكل غير صحيح. إذا أعادت واجهة برمجة التطبيقات (API) 401 أو 403، فمن المستحسن فك تشفير JWT أولاً وتأكيد exp، وaud، والنطاق.
header.payload.signature المكون من ثلاثة أجزاء.Bearer.exp قد انتهت وما إذا كان وقت الخادم متزامنًا.iss وaud متوافقين مع البيئة الحالية.kid.عادةً ما تحفظ الجلسة الحالة في الخادم أو وحدة التخزين المركزية، ويحفظ المتصفح معرف الجلسة فقط؛ يضع JWT جزءًا من الحالة في الرمز المميز، بحيث يمكن لواجهة برمجة التطبيقات (API) استخدام التوقيع للتحقق من التكامل. يعتمد SAML على XML ويستخدم بشكل شائع في تسجيل الدخول الموحد (SSO) للمؤسسة.
| خطة | مناسبة للحالة | أشياء يجب ملاحظتها |
|---|---|---|
| JWT | ترخيص واجهة برمجة التطبيقات (API)، رمز وصول SSO، الخدمات الصغيرة | من الضروري التحكم في وقت انتهاء الصلاحية والتحقق من الختم والإلغاء وتسريب المعلومات الحساسة. |
| جلسة | مواقع الويب التقليدية التي تتطلب تسجيل الخروج الفوري أو التحكم المركزي في الحالة | مطلوب مخزن جلسة عمل من جانب الخادم، ويتطلب التوسع عبر الخدمات تصميمًا إضافيًا. |
| SAML | تكامل هوية المؤسسة وأنظمة تسجيل الدخول الموحد (SSO) القديمة | تكون هياكل XML أكبر حجمًا وتكون التوقيعات والإعدادات عادةً أكثر تعقيدًا. |
exp معقولًا ولا تجعل رمز الوصول صالحًا لفترة طويلة.alg الخاص بالرأس.iss، aud، nbf، iat مع مطالبات الأذونات الضرورية.تستخدم أداة فك تشفير JWT عبر الإنترنت المعالجة الأصلية للمتصفح: لن يتم تحميل الرمز المميز والسر ورأس JSON وPayload JSON الذي تلصقه إلى خادم ToolBoy. ومع ذلك، يجب الاستمرار في اتباع مبدأ الحد الأدنى من الإفصاح عند التعامل مع رموز الإنتاج الحقيقية.
غالبًا ما يظهر JWT في عملية تصحيح أخطاء واجهة برمجة التطبيقات (API) مع JSON وBase64URL واستعلام URL والطابع الزمني وSHA-256 وUUID وregex وتنسيقات البيانات الأخرى. يمكنك استخدام أداة تنسيق JSON من ToolBoy، تشفير وفك تشفير Base64، Unix Timestamp التحويل أو مولد UUID.
لمزيد من القراءة، يرجى الرجوع إلى مقدمة JSON Web Token الخاصة بـ jwt.io وRFC 7519. تمت إعادة تنظيم محتوى هذه الصفحة وإعادة كتابته باللغة الصينية، مع التركيز على التصحيح العملي وتحسين محركات البحث ذات القبعة البيضاء والخصوصية الأصلية.