مفت کنورٹر

JWT ٹوکن ڈیکوڈر

اپنے براؤزر میں JWT (JSON ویب ٹوکن) ہیڈر اور پے لوڈ کو فوری طور پر ڈی کوڈ کریں۔ مفت، نجی، اور کلائنٹ سائیڈ — کسی بھی سرور کو کوئی ڈیٹا نہیں بھیجا گیا ہے۔

اس ٹول کے بارے میں

JSON ویب ٹوکنز (JWT) دو فریقوں کے درمیان دعووں کی ترسیل کے لیے ایک کمپیکٹ، URL-محفوظ شکل ہے، جس کی تعریف RFC 7519 کے ذریعے کی گئی ہے۔ ایک JWT تین بیس64url-انکوڈ شدہ سیگمنٹ ہیں جو نقطوں سے الگ کیے گئے ہیں: ہیڈر (الگورتھم اور ٹوکن کی قسم)، پے لوڈ (دعوے)، اور دستخط (کرپٹو گرافک پروف)۔ ہیڈر اور پے لوڈ JSON ہیں، URL کی حفاظت کے لیے base64url-انکوڈ شدہ؛ دستخط انکوڈ شدہ ہیڈر اور پے لوڈ پر کئی الگورتھم (HS256, RS256, ES256, اور دیگر) میں سے ایک کا استعمال کرتا ہے۔

JWT کو ڈی کوڈ کرنا — اسے حصوں میں تقسیم کرنا اور ہر ایک کو بیس 64-ڈی کوڈنگ کرنا — کسی راز کی ضرورت نہیں ہے۔ ٹوکن متن کے ساتھ کوئی بھی اس کا ہیڈر اور پے لوڈ پڑھ سکتا ہے۔ دستخط، تاہم، صرف خفیہ (HMAC) یا عوامی کلید (غیر متناسب) سے تصدیق کی جاسکتی ہے۔ ضابطہ کشائی معائنہ کے لیے ہے؛ تصدیق وہی ہے جو صداقت کو ثابت کرتی ہے۔

یہ ڈیکوڈر ٹوکن کو تقسیم کرتا ہے، ہر سیگمنٹ کو بیس 64-ڈی کوڈ کرتا ہے، ہیڈر اور پے لوڈ کو JSON کے بطور پارس کرتا ہے، اور نتیجہ دکھاتا ہے۔ یہ دستخطی تصدیق کی کوشش نہیں کرتا ہے کیونکہ اس کے لیے خفیہ یا عوامی کلید کی ضرورت ہوتی ہے، جو ڈیکوڈر کے پاس نہیں ہے۔ ڈی کوڈ شدہ آؤٹ پٹ صرف پڑھنے کے لیے معائنہ ہے — ٹوکنز کو ڈیبگ کرنے کے لیے مفید ہے لیکن ایپلیکیشن کوڈ میں مناسب تصدیق کا متبادل نہیں۔

JWTs کو ڈی کوڈ کیوں کریں۔

تصدیق کے مسائل کو ڈیبگ کرنے میں تقریبا ہمیشہ ٹوکن کا معائنہ شامل ہوتا ہے۔ ایک ٹوکن جو کوڈ میں درست نظر آتا ہے اس میں غلط دعوے، ایک غیر متوقع الگورتھم، ایک میعاد ختم ہونے والا ٹائم اسٹیمپ، یا سامعین کی مماثلت ہو سکتی ہے۔ ٹوکن کو ڈی کوڈ کرنے سے ظاہر ہوتا ہے کہ جاری کنندہ نے کیا تیار کیا ہے۔

انضمام کے کام کے دوران ٹوکن کا معائنہ کرنے سے بھی مدد ملتی ہے۔ فریق ثالث API یا شناخت فراہم کنندہ سے منسلک ہونے پر، دعویٰ کے اصل نام، فارمیٹس، اور ڈھانچہ کو پرانی دستاویزات پر انحصار کرنے کی بجائے نمونے کے ٹوکنز کو ڈی کوڈ کرکے بہتر طور پر سمجھا جاتا ہے۔

استعمال کرنے کا طریقہ

ٹوکن چسپاں کریں، تجزیہ شدہ مواد حاصل کریں۔

  1. اپنا JWT چسپاں کریں۔: مکمل ٹوکن (header.payload.signature) کو ان پٹ ایریا میں ڈالیں۔ ڈیکوڈر اختیاری بیئرر پریفکس کے ساتھ یا اس کے بغیر ٹوکن قبول کرتا ہے۔
  2. ہیڈر کا معائنہ کریں۔: ہیڈر دستخط کرنے والے الگورتھم (alg) اور ٹوکن کی قسم (typ) دکھاتا ہے۔ عام الگورتھم HS256، RS256، اور ES256 ہیں۔ alg: none کے لیے دیکھیں، جو ایک غیر دستخط شدہ ٹوکن کا اشارہ کرتا ہے اور پیداوار میں شاذ و نادر ہی محفوظ ہوتا ہے۔
  3. پے لوڈ کا معائنہ کریں۔: پے لوڈ میں دعوے شامل ہیں: iss (جاری کنندہ)، ذیلی (موضوع)، آڈ (سامعین)، exp (میعاد ختم ہونے)، iat (جاری ہونے پر)، اور کوئی بھی درخواست سے متعلق مخصوص دعوے۔ معیاری ٹائم اسٹیمپ یونکس ایپوک سیکنڈز ہیں۔
  4. الگ سے تصدیق کریں۔: ڈیکوڈر دستخط کی تصدیق نہیں کرتا ہے۔ صداقت کی جانچ کرنے کے لیے، اپنے ایپلیکیشن کوڈ میں مناسب خفیہ یا عوامی کلید کے ساتھ JWT لائبریری کے ذریعے ٹوکن چلائیں۔

عام استعمال کے معاملات

تکنیکی تفصیلات

JWT فارمیٹ تین حصوں پر مشتمل ہے جو نقطوں سے جڑے ہوئے ہیں۔ ہر سیگمنٹ base64url-encoded ہے — base64 کا URL-safe variant جو استعمال کرتا ہے - اور _ کی بجائے + اور /، پیڈنگ کے ساتھ کبھی کبھی چھوڑ دیا جاتا ہے۔ ڈی کوڈنگ کے لیے یو آر ایل کے محفوظ متبادلات کو کالعدم کرنے، سیگمنٹ کو پیڈ کرنے، اور بیس 64-ڈی کوڈنگ کی ضرورت ہوتی ہے۔

ڈی کوڈنگ کے بعد ہیڈر اور پے لوڈ JSON ہیں۔ دستخطی طبقہ بائنری ہے (خام دستخطی بائٹس) اور یہ انسانی پڑھنے کے قابل نہیں ہے۔ اسے مفید ہونے کے لیے تصدیقی کلید کی ضرورت ہے۔

RFC 7519 میں بیان کردہ عام دعوے: iss (جاری کنندہ)، ذیلی (موضوع کی شناخت کنندہ)، آڈ (سامعین)، exp (یونیکس ایپوک سیکنڈز کے طور پر میعاد ختم)، nbf (ٹائم اسٹیمپ سے پہلے نہیں)، iat (ٹائم اسٹیمپ پر جاری)، jti (منفرد ٹوکن ID)۔ درخواست کے مخصوص دعوے کسی بھی نام کے ساتھ ظاہر ہو سکتے ہیں۔

بہترین طرز عمل

اکثر پوچھے جانے والے سوالات

کیا یہاں میرا JWT پیسٹ کرنا محفوظ ہے؟
جی ہاں ڈی کوڈنگ مکمل طور پر آپ کے براؤزر میں ہوتی ہے — ٹوکن کبھی بھی کسی سرور کو نہیں بھیجا جاتا ہے۔ تاہم، JWTs اسناد ہیں — انہیں عوامی طور پر شیئر نہ کریں (اسکرین شاٹس، اسٹیک اوور فلو پوسٹس وغیرہ میں) کیونکہ وہ آپ کے اکاؤنٹس تک رسائی فراہم کر سکتے ہیں۔
کیا یہ ٹول JWT دستخط کی تصدیق کرتا ہے؟
یہ ٹول ٹوکن کے مواد کو ڈی کوڈ اور ڈسپلے کرتا ہے۔ دستخط کی تصدیق کے لیے خفیہ کلید (HMAC) یا عوامی کلید (RSA/ECDSA) کی ضرورت ہوتی ہے، جو آپ کے سرور پر موجود رہنی چاہیے۔ ٹول استعمال شدہ الگورتھم کو دکھاتا ہے لیکن کلید کے بغیر تصدیق نہیں کر سکتا۔
معیاری JWT دعووں کا کیا مطلب ہے؟
iss = جاری کنندہ، ذیلی = موضوع (یوزر آئی ڈی)، exp = ختم ہونے کا وقت (یونکس ٹائم اسٹیمپ)، iat = جاری کیا گیا، nbf = پہلے نہیں، aud = سامعین، jti = JWT ID۔ حسب ضرورت دعووں میں کوئی بھی ایپلیکیشن مخصوص ڈیٹا ہو سکتا ہے۔
کیوں کوئی JWT کو ڈی کوڈ کر سکتا ہے؟
JWTs انکوڈ شدہ ہیں، انکرپٹڈ نہیں۔ پے لوڈ Base64URL-encoded (انکرپٹڈ نہیں) ہے، لہذا کوئی بھی اسے پڑھ سکتا ہے۔ دستخط چھیڑ چھاڑ کو روکتا ہے، پڑھنے سے نہیں۔ JWT پے لوڈز میں کبھی بھی حساس ڈیٹا (پاس ورڈز، SSNs) کو ذخیرہ نہ کریں۔
کچھ ٹوکن میں دستخط کیوں نہیں ہیں؟
alg کے ساتھ ٹوکن: کسی کے پاس کوئی دستخط نہیں ہے۔ وہ قیاس کے لحاظ سے درست JWTs ہیں لیکن کوئی صداقت کی ضمانت فراہم نہیں کرتے ہیں اور انہیں پیداوار میں قبول نہیں کیا جانا چاہیے۔
کیا JWTs کو انکرپٹ کیا گیا ہے؟
معیاری JWT پے لوڈز دستخط شدہ ہیں لیکن انکرپٹ نہیں ہیں۔ JWE (JSON Web Encryption, RFC 7516) انکرپٹڈ ٹوکنز کے لیے ایک الگ فارمیٹ ہے۔ جنگلی میں زیادہ تر JWTs JWS ہیں (صرف دستخط شدہ)۔
کیا میرا ٹوکن سرور پر اپ لوڈ ہے؟
نہیں. ڈی کوڈنگ آپ کے براؤزر میں ہوتی ہے۔ ٹوکن آپ کے آلے کو نہیں چھوڑتا ہے۔
JWTs عام طور پر کتنی لمبی ہوتی ہیں؟
کہیں بھی چند سو سے کئی ہزار حروف۔ لمبائی کا انحصار دعووں کی تعداد اور سائز کے علاوہ دستخط کی لمبائی (جو الگورتھم پر منحصر ہے) پر ہوتا ہے۔