यह टूल कैसे काम करता है
JSON से HMAC, RSA, RSA-PSS या ECDSA वाला साइन किया गया JWT बनाएं।
इनपुट का सही प्रारूप और मेटाडेटा देखने के लिए नमूना चलाएं, फिर उसकी जगह अपना मान डालें।
गोपनीयता और सुरक्षित उपयोग
सारी प्रोसेसिंग इसी ब्राउज़र टैब में होती है। बहुत बड़े मान डिवाइस की काफी मेमोरी ले सकते हैं।
प्रोडक्शन की गुप्त या निजी कुंजी किसी ब्राउज़र टूल में पेस्ट न करें। प्रोडक्शन में नियमित रूप से संभाली जाने वाली JWT लाइब्रेरी और सुरक्षित सर्वर-साइड कुंजी भंडारण इस्तेमाल करें।
आम समस्याएं और उनके कारण
- इनपुट खाली या खराब है, या इस टूल के अपेक्षित प्रारूप में नहीं है।
- चुना गया मोड वर्णमाला, फ़ाइल प्रकार या प्रस्तुति से मेल नहीं खाता।
- एन्कोड और डिकोड की गई प्रतियां एक साथ रहने पर बहुत बड़ा मान उपलब्ध मेमोरी खत्म कर सकता है।
- सफल रूपांतरण यह साबित नहीं करता कि डिकोड की गई सामग्री सुरक्षित या भरोसेमंद है।
समान कमांड
अपने काम में उपलब्ध रनटाइम या शेल का उपयोग करें। अविश्वसनीय इनपुट की जांच करें और बाइनरी आउटपुट सीधे टर्मिनल में न भेजें।
Python
import base64, hashlib, hmac, json
b64 = lambda value: base64.urlsafe_b64encode(value).rstrip(b'=').decode()
body = '.'.join([b64(json.dumps(header, separators=(',', ':')).encode()), b64(json.dumps(payload, separators=(',', ':')).encode())])
token = body + '.' + b64(hmac.new(secret, body.encode(), hashlib.sha256).digest())
JavaScript
import { createHmac } from 'node:crypto';
const b64 = value => Buffer.from(JSON.stringify(value)).toString('base64url');
const body = `${b64(header)}.${b64(payload)}`;
const token = `${body}.${createHmac('sha256', secret).update(body).digest('base64url')}`;
Shell
b64url() { openssl base64 -A | tr '+/' '-_' | tr -d '='; }
body="$(printf '%s' "$HEADER" | b64url).$(printf '%s' "$PAYLOAD" | b64url)"
sig=$(printf '%s' "$body" | openssl dgst -sha256 -mac HMAC -macopt "key:$SECRET" -binary | b64url)