JWT টুলস — ডিকোড, যাচাই ও সাইন
JWT ডিকোড করুন, কোনো সিক্রেট বা PEM পাবলিক কি দিয়ে HS, RS ও ES স্বাক্ষর যাচাই করুন, এবং নতুন HS টোকেন সাইন করুন — সবকিছু সম্পূর্ণভাবে আপনার ব্রাউজারে।
JWT টুলস — ডিকোড, যাচাই ও সাইন — তিনটি মোডসহ একটি অল-ইন-ওয়ান JSON Web Token টুলকিট — ডিকোড, যাচাই ও সাইন। ডিকোড টোকেনের হেডার ও পেলোড সুন্দরভাবে সাজিয়ে দেখায়, যাচাই কোনো HMAC সিক্রেট (HS256/384/512) বা PEM পাবলিক কি (RS256/384/512, ES256/384/512) দিয়ে স্বাক্ষর পরীক্ষা করে, এবং সাইন আপনার হেডার, পেলোড ও সিক্রেট থেকে একটি নতুন HS-সাইন করা টোকেন তৈরি করে। প্রতিটি অপারেশন ব্রাউজারের অন্তর্নির্মিত Web Crypto API দিয়ে সম্পূর্ণ ক্লায়েন্ট-সাইডে চলে, তাই টোকেন, সিক্রেট ও কি কখনও আপনার মেশিন থেকে বের হয় না।
JWT টুলস — ডিকোড, যাচাই ও সাইন কী?
JWT টুলস একটি বিনামূল্যের, অল-ইন-ওয়ান JSON Web Token ইউটিলিটি যা একটি ডিকোডার, একটি স্বাক্ষর যাচাইকারী ও একটি HS সাইনারকে এক জায়গায় একত্র করে। ডিকোড মোডে এটি header.payload.signature টোকেনকে base64url-ডিকোড করে এবং হেডার ও পেলোডকে ফরম্যাট করা JSON হিসেবে দেখায়। যাচাই মোডে এটি টোকেন হেডার থেকে alg পড়ে এবং Web Crypto API দিয়ে স্বাক্ষর পরীক্ষা করে: HS256, HS384 ও HS512-এর জন্য একটি শেয়ার করা HMAC সিক্রেট, অথবা RS256/RS384/RS512 (RSASSA-PKCS1-v1_5) ও ES256/ES384/ES512 (ECDSA)-এর জন্য একটি PEM-এনকোড করা পাবলিক কি। সাইন মোডে এটি একটি হেডার JSON, একটি পেলোড JSON, নির্বাচিত একটি HS অ্যালগরিদম ও একটি সিক্রেট থেকে একটি একদম নতুন টোকেন তৈরি করে HMAC দিয়ে সাইন করে। এটি ব্যাকএন্ড ও ফ্রন্টএন্ড ইঞ্জিনিয়ার, QA টেস্টার এবং API ইন্টিগ্রেটরদের জন্য তৈরি, যারা কোনো রিমোট সার্ভিসে সিক্রেট না বসিয়েই অথেনটিকেশন, OAuth/OIDC সেশন ও টোকেন মেয়াদোত্তীর্ণ ডিবাগ করেন।
JWT টুলস — ডিকোড, যাচাই ও সাইন কীভাবে ব্যবহার করবেন
- উপরে একটি মোড বেছে নিন: ডিকোড, যাচাই বা সাইন।
- ডিকোড: টোকেন বক্সে একটি JWT (header.payload.signature) পেস্ট করুন এবং নিচে ফরম্যাট করা হেডার ও পেলোড পড়ুন — এখানে কোনো স্বাক্ষর পরীক্ষা হয় না।
- যাচাই: টোকেন পেস্ট করুন, তারপর কি বক্সে HMAC সিক্রেট (HS অ্যালগরিদমের জন্য) বা PEM পাবলিক কি (RS/ES-এর জন্য) পেস্ট করুন; টুলটি হেডার থেকে alg পড়ে এবং সবুজ 'valid' বা লাল 'invalid' ফলাফল দেখায়।
- সাইন: একটি হেডার JSON ও একটি পেলোড JSON লিখুন, HS256, HS384 বা HS512 বেছে নিন, আপনার সিক্রেট টাইপ করুন এবং যে টোকেনটি দেখা যায় সেই নতুন সাইন করা টোকেন কপি করুন।
- যেকোনো আউটপুটে কপি বোতাম ব্যবহার করুন, বা ডিকোড ইনপুট রিসেট করতে ক্লিয়ার চাপুন।
উদাহরণ
একটি টোকেন ডিকোড করুন
ইনপুট
eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0In0.sig
আউটপুট
Header:
{
"alg": "HS256",
"typ": "JWT"
}
Payload:
{
"sub": "1234"
}একটি HS256 টোকেন যাচাই করুন
ইনপুট
token: eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiIxIn0.<sig> secret: your-256-bit-secret
আউটপুট
valid (HS256)
একটি নতুন HS256 টোকেন সাইন করুন
ইনপুট
header: {}
payload: { "sub": "1234567890", "name": "Jane Doe" }
secret: your-256-bit-secretআউটপুট
eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkphbmUgRG9lIn0.<signature>
সচরাচর জিজ্ঞাসিত প্রশ্ন
- আমার টোকেন, সিক্রেট ও কি কি কোথাও আপলোড হয়?
- না। প্রতিটি মোড আপনার ব্রাউজারে সম্পূর্ণ ক্লায়েন্ট-সাইডে চলে, HMAC ও স্বাক্ষর যাচাইয়ের জন্য অন্তর্নির্মিত Web Crypto API (crypto.subtle) এবং base64url ও JSON-এর জন্য JavaScript ব্যবহার করে। কোনো কিছুই — টোকেন, সিক্রেট কিংবা PEM কি — কখনও কোনো সার্ভারে পাঠানো হয় না, যা প্রোডাকশন ক্রেডেনশিয়াল নিয়ে কাজ করাকে নিরাপদ করে।
- এটি কোন অ্যালগরিদম যাচাই করতে পারে?
- যাচাই শেয়ার করা HMAC সিক্রেট দিয়ে HS256, HS384 ও HS512, এবং PEM পাবলিক কি দিয়ে RS256/RS384/RS512 (RSASSA-PKCS1-v1_5) ও ES256/ES384/ES512 (ECDSA) সমর্থন করে। এটি টোকেন হেডার থেকে alg ফিল্ড স্বয়ংক্রিয়ভাবে পড়ে নেয়, তাই আপনি শুধু মিলে যাওয়া সিক্রেট বা পাবলিক কি দেন।
- এটি কোন অ্যালগরিদম দিয়ে সাইন করতে পারে?
- সাইন মোড শুধু HMAC-সাইন করা টোকেন তৈরি করে — HS256, HS384 বা HS512 — আপনার হেডার JSON, পেলোড JSON ও একটি সিক্রেট থেকে। RSA ও ECDSA সাইনিংয়ের জন্য একটি প্রাইভেট কি প্রয়োজন এবং তা এখানে পরিসরের বাইরে; RS/ES-এর জন্য আপনি এখনও যাচাই মোডে মিলে যাওয়া পাবলিক কি দিয়ে যাচাই করতে পারেন।
- ডিকোড মোড কি স্বাক্ষর পরীক্ষা করে?
- না। ডিকোড শুধু base64url-ডিকোড করে এবং হেডার ও পেলোড সুন্দরভাবে দেখায় — এটি কখনও স্বাক্ষর যাচাই করে না। টোকেন প্রকৃত কিনা নিশ্চিত করতে যাচাই মোডে যান এবং একটি সিক্রেট বা পাবলিক কি দিন, এবং স্বাক্ষর যাচাই না হওয়া পর্যন্ত ডিকোড করা পেলোডকে কখনও বিশ্বাস করবেন না।
- যাচাইয়ে invalid বা error কেন দেখায়?
- 'Invalid' মানে স্বাক্ষর আপনার দেওয়া সিক্রেট বা কি-এর সঙ্গে মেলেনি। অন্যদিকে 'error' মানে ইনপুটটি প্রক্রিয়া করা যায়নি — যেমন টোকেনে স্বাক্ষর সেগমেন্ট নেই, alg অসমর্থিত, কিংবা PEM পাবলিক কি পার্স করা যায়নি। যাচাই করুন আপনি পুরো টোকেন এবং তার অ্যালগরিদমের জন্য সঠিক কি পেস্ট করেছেন কিনা।
সম্পর্কিত টুল
AES টেক্সট এনক্রিপশন (AES-GCM + PBKDF2)
একটি পাসফ্রেজ থেকে উদ্ভূত কী (PBKDF2 SHA-256, এলোমেলো সল্ট) দিয়ে AES-256-GCM ব্যবহার করে টেক্সট এনক্রিপ্ট ও ডিক্রিপ্ট করুন, সম্পূর্ণরূপে আপনার ব্রাউজারে এবং কোনো আপলোড ছাড়াই।
Argon2 ও scrypt হ্যাশ
Argon2id বা scrypt দিয়ে একটি পাসওয়ার্ড হ্যাশ করুন এবং একটি Argon2 হ্যাশ পাসওয়ার্ডের সঙ্গে মিলছে কি না যাচাই করুন, সম্পূর্ণভাবে আপনার ব্রাউজারে।
Bcrypt হ্যাশ জেনারেটর ও ভেরিফায়ার
নির্বাচিত কস্ট ফ্যাক্টরে সাধারণ টেক্সট থেকে একটি bcrypt পাসওয়ার্ড হ্যাশ তৈরি করুন, কিংবা একটি বিদ্যমান bcrypt হ্যাশের বিপরীতে একটি পাসওয়ার্ড যাচাই করুন—সম্পূর্ণ আপনার ব্রাউজারে।
BIP39 নিমোনিক জেনারেটর
একাধিক ভাষায় 12 থেকে 24 শব্দের একটি এলোমেলো BIP39 রিকভারি বাক্যাংশ তৈরি করুন, অথবা একটি বিদ্যমান নিমোনিককে আবার তার কাঁচা এনট্রপিতে রূপান্তর করুন, সম্পূর্ণভাবে আপনার ব্রাউজারে।