> base64 decoder | paste | decode <
// कोई भी Base64 स्ट्रिंग चिपकाएँ — मानक, URL-सुरक्षित या बिना पैडिंग वाली — और इसे तुरंत UTF-8 टेक्स्ट में डिकोड करें। 100% आपके ब्राउज़र में चलता है।
फ़ॉर्मेट का स्वतः पता लगाना
मानक RFC 4648 Base64, URL-सुरक्षित Base64 (-_) और गायब पैडिंग का स्वतः पता लगाता है। किसी कॉन्फ़िगरेशन की आवश्यकता नहीं — बस चिपकाएँ।
100% ब्राउज़र में
आपकी Base64 स्ट्रिंग्स कभी आपके डिवाइस से बाहर नहीं जातीं। कोई सर्वर अपलोड नहीं, कोई लॉग नहीं, कोई टेलीमेट्री नहीं। टोकन, क्रेडेंशियल और निजी पेलोड के लिए सुरक्षित।
तत्काल डिकोडिंग
टाइप करते ही डिकोड करता है। UTF-8 मल्टी-बाइट टेक्स्ट, इमोजी, JSON, XML, Base64 के रूप में बाइनरी को संभालता है। असीमित इनपुट आकार।
// BASE64 डिकोडिंग कैसे काम करती है
Base64 डिकोडिंग एल्गोरिदम:
Base64, बाइनरी डेटा के 3 बाइट्स को 64-अक्षर वाले वर्णमाला (A-Z, a-z, 0-9, +, /) से 4 ASCII अक्षरों में एन्कोड करता है। डिकोडिंग इस प्रक्रिया को उलट देती है: प्रत्येक अक्षर एक 6-बिट मान से मैप होता है, और चार 6-बिट समूह वापस तीन 8-बिट बाइट्स में मिल जाते हैं। एन्कोडेड लंबाई को 4 का गुणक बनाने के लिए पैडिंग अक्षर (=) जोड़े जाते हैं। यह डिकोडर पैडिंग सहित, बिना पैडिंग वाले और URL-सुरक्षित इनपुट को स्वीकार करता है, और UTF-8 टेक्स्ट लौटाता है।
डिकोडिंग का उदाहरण:
Input : SGVsbG8sIEJhc2U2NCE=
Bits : 01001000 01100101 01101100 01101100
01101111 00101100 00100000 01000010
01100001 01110011 01100101 00110110
00110100 00100001
Output : Hello, Base64!
सामान्य डिकोडिंग परिदृश्य:
- >JWT हेडर और पेलोड को डिकोड करना (हस्ताक्षर से पहले)
- >Base64-एन्कोडेड ईमेल अटैचमेंट पढ़ना (MIME)
- >Base64 URL पैरामीटर और OAuth state टोकन का निरीक्षण करना
- >Data URI से टेक्स्ट निकालना (data:text/plain;base64,...)
- >उन API प्रतिक्रियाओं को डिबग करना जो बाइनरी को Base64 के रूप में लपेटती हैं
// अक्सर पूछे जाने वाले प्रश्न
मैं किसी Base64 स्ट्रिंग को ऑनलाइन कैसे डिकोड करूँ?
ऊपर दिए गए INPUT क्षेत्र में Base64 स्ट्रिंग चिपकाएँ — डिकोडर टाइप करते ही स्वतः चलता है (स्वतः डिकोड डिफ़ॉल्ट रूप से सक्षम है)। डिकोड किया गया टेक्स्ट तुरंत OUTPUT क्षेत्र में दिखाई देता है। आप स्पष्ट रूप से [DECODE] पर क्लिक भी कर सकते हैं या Ctrl/Cmd + Enter का उपयोग कर सकते हैं। सब कुछ आपके ब्राउज़र में स्थानीय रूप से चलता है; कुछ भी सर्वर पर नहीं भेजा जाता, इसलिए JWT टोकन, OAuth state या गोपनीय पेलोड चिपकाना सुरक्षित है।
यह डिकोडर किन Base64 वेरिएंट का समर्थन करता है?
सभी का। डिकोडर स्वतः पता लगाता है और स्वीकार करता है:
• मानक Base64 (RFC 4648) — = पैडिंग के साथ वर्णमाला A-Z a-z 0-9 + /।
• URL-सुरक्षित Base64 (RFC 4648 §5) — + और / के बजाय - और _ वाली वर्णमाला। JWT, OAuth, Google API और AWS S3 प्रीसाइन्ड URL द्वारा उपयोग की जाती है।
• बिना पैडिंग वाला Base64 — अंत के = चिह्न हटा दिए जाते हैं। JWT में सामान्य, जहाँ डिकोडर को पैडिंग स्वतः जोड़नी पड़ती है।
• व्हाइटस्पेस-सहनशील — Base64 स्ट्रिंग के अंदर लाइन ब्रेक, टैब और स्पेस डिकोडिंग से पहले हटा दिए जाते हैं (ईमेल बॉडी से MIME-रैप्ड 76-कॉलम आउटपुट को संभालता है)।
पता लगाया गया फ़ॉर्मेट बटनों के नीचे एक बैज के रूप में दिखाया जाता है, ताकि आपको पता रहे कि डिकोडर ने आपके इनपुट को किस वेरिएंट के रूप में वर्गीकृत किया है।
मेरा Base64 अस्पष्ट अक्षरों में डिकोड क्यों होता है या त्रुटि के साथ विफल क्यों होता है?
अधिकांश डिकोडिंग विफलताओं के इन पाँच कारणों में से एक होता है:
1. इनपुट वास्तव में Base64 नहीं है। बहुत-से लोग Base64 को हेक्स, Base32 या URL एन्कोडिंग के साथ भ्रमित करते हैं। Base64 केवल A-Z a-z 0-9 + / = (या URL-सुरक्षित के लिए - _) का उपयोग करता है। यदि स्ट्रिंग में %20 है, तो वह प्रतिशत-एन्कोडिंग है; यदि वह पूरी तरह 0-9 a-f से बनी है, तो वह संभवतः हेक्स है।
2. कटाव (Truncation)। पैडिंग के बाद Base64 की लंबाई 4 का गुणक होनी चाहिए। ऐसा कॉपी-पेस्ट जो अंत के == को हटा देता है, "अमान्य लंबाई" त्रुटियाँ पैदा करता है। यह डिकोडर स्वतः पैडिंग जोड़ता है, लेकिन बुरी तरह कटी हुई स्ट्रिंग्स फिर भी विफल हो जाती हैं।
3. URL-सुरक्षित और मानक का मिश्रण। यदि +/-_ सभी मौजूद हों, तो स्ट्रिंग अस्पष्ट और संभवतः दूषित है। केवल एक ही वेरिएंट का उपयोग किया जाना चाहिए।
4. दोहरी एन्कोडिंग। कभी-कभी किसी स्ट्रिंग को दो बार Base64-एन्कोड किया जाता है। एक बार डिकोड करने से अस्पष्ट अक्षर मिलते हैं जो स्वयं Base64 होते हैं। अंतिम टेक्स्ट पाने के लिए फिर से डिकोड करें।
5. मूल टेक्स्ट की UTF-8 एन्कोडिंग। Base64 बाइट्स में डिकोड होता है। यदि मूल बाइट्स मान्य UTF-8 नहीं हैं (जैसे, कोई एन्क्रिप्टेड ब्लॉब या PNG जैसा कच्चा बाइनरी), तो डिकोड किया गया आउटपुट मोजिबेक जैसा दिखेगा। यह अपेक्षित है — इसके बजाय Base64-से-फ़ाइल टूल का उपयोग करें।
मैं इस Base64 डिकोडर से किसी JWT को कैसे डिकोड करूँ?
एक JWT के तीन भाग होते हैं जो बिंदुओं से अलग होते हैं: header.payload.signature। तीनों बिना पैडिंग वाले URL-सुरक्षित Base64 हैं। पेलोड का निरीक्षण करने के लिए:
1. बीच वाला खंड (दोनों बिंदुओं के बीच) कॉपी करें।
2. इसे ऊपर के डिकोडर में चिपकाएँ। स्वतः डिकोड URL-सुरक्षित वर्णमाला को संभालता है और गायब पैडिंग जोड़ता है।
3. आपको iss, sub, exp, iat जैसे क्लेम के साथ JSON पेलोड मिलता है।
हस्ताक्षर (तीसरा खंड) एक बाइनरी HMAC या RSA आउटपुट है — इसे टेक्स्ट के रूप में डिकोड करने पर अस्पष्ट अक्षर मिलते हैं, जो अपेक्षित है। हस्ताक्षर सत्यापन के साथ पूर्ण JWT इंस्पेक्टर के लिए, हमारा समर्पित JWT डिकोडर उपयोग करें।
सुरक्षा नोट: किसी JWT को डिकोड करना उसे सत्यापित नहीं करता। कोई भी JWT पेलोड पढ़ सकता है — यह डिज़ाइन के अनुसार है। हस्ताक्षर यह सिद्ध करता है कि टोकन जारीकर्ता से आया है; इसे जारीकर्ता की सार्वजनिक कुंजी या साझा रहस्य से अलग से सत्यापित किया जाता है।
क्या मैं Base64 को कमांड लाइन (bash, PowerShell, Python) में डिकोड कर सकता हूँ?
हाँ — हर प्रमुख प्लेटफ़ॉर्म एक Base64 डिकोडर के साथ आता है। जब इस ऑनलाइन टूल में चिपकाना बहुत धीमा हो, तो उपयोग करें:
macOS / Linux (bash/zsh):echo 'SGVsbG8=' | base64 -d — Hello आउटपुट देता है। यदि -d काम न करे तो macOS पर -D का उपयोग करें। URL-सुरक्षित इनपुट के लिए, पहले tr '_-' '/+' के माध्यम से पाइप करें।
Windows PowerShell:[Text.Encoding]::UTF8.GetString([Convert]::FromBase64String('SGVsbG8='))
Python:import base64
base64.b64decode('SGVsbG8=').decode('utf-8') # Hello
base64.urlsafe_b64decode(s + '===').decode() # स्वतः पैड के साथ URL-सुरक्षित
Node.js:Buffer.from('SGVsbG8=', 'base64').toString('utf-8')
ब्राउज़र DevTools:atob('SGVsbG8=') — किसी भी कंसोल में काम करता है। UTF-8 स्ट्रिंग्स के लिए new TextDecoder().decode(Uint8Array.from(atob(s), c => c.charCodeAt(0))) में लपेटें।
PHP: base64_decode('SGVsbG8=')
Ruby: Base64.decode64('SGVsbG8=')
Go: base64.StdEncoding.DecodeString("SGVsbG8=")
क्या यह Base64 डिकोडर संवेदनशील टोकन और क्रेडेंशियल डिकोड करने के लिए सुरक्षित है?
हाँ — यह डिकोडर सर्वर-साइड टूल से अधिक सुरक्षित है क्योंकि कुछ भी आपके ब्राउज़र से बाहर नहीं जाता। डिकोडिंग पूरी तरह आपके डिवाइस पर JavaScript में नेटिव atob() और TextDecoder API के माध्यम से होती है। कोई नेटवर्क कॉल नहीं, कोई अपलोड नहीं, कोई लॉगिंग नहीं, इनपुट सामग्री पर कोई एनालिटिक्स नहीं। आप इसे स्वयं सत्यापित कर सकते हैं — डिकोड करते समय ब्राउज़र DevTools का नेटवर्क टैब खोलें और आपको शून्य अनुरोध दिखाई देंगे।
फिर भी, Base64 एन्क्रिप्शन नहीं है — यह केवल एन्कोडिंग है। Base64 स्ट्रिंग रखने वाला कोई भी इसे डिकोड कर सकता है। तो भले ही यह टूल सुरक्षित हो, फिर भी आपको चाहिए:
• ऐसे डिकोड किए गए JWT के स्क्रीनशॉट कभी साझा न करें जो अभी समाप्त नहीं हुए हैं।
• कहीं भी लीक होने वाले क्रेडेंशियल (लॉग, स्क्रीनशॉट, साझा चैट) को बदलें।
• डिकोड किए गए OAuth state, CSRF टोकन और सेशन ID को तब तक रहस्य मानें जब तक वे अमान्य न हो जाएँ।
कॉर्पोरेट/विनियमित परिवेश के लिए जहाँ Base64 स्ट्रिंग भी संवेदनशील है, आप इस पेज को ऑफ़लाइन सहेज सकते हैं (Cmd/Ctrl + S) — एक बार लोड होने के बाद यह पूरी तरह एयर-गैप्ड काम करता है, क्योंकि डिकोडिंग लॉजिक शुद्ध JavaScript है।
मैं 'data:image/png;base64,iVBORw0KGgo...' जैसी Base64 Data URI को कैसे डिकोड करूँ?
एक Data URI सिंटैक्स data:[<mediatype>][;base64],<data> का अनुसरण करती है। केवल पेलोड डिकोड करने के लिए:
1. अल्पविराम खोजें। उससे पहले की हर चीज़ मेटाडेटा है (data:image/png;base64), उसके बाद की हर चीज़ Base64-एन्कोडेड फ़ाइल है।
2. अल्पविराम के बाद वाले भाग को ही इस डिकोडर में कॉपी करें।
3. बाइनरी सामग्री (PNG, JPG, PDF) के लिए, डिकोड किया गया आउटपुट कच्चे बाइट्स होंगे — टेक्स्ट रेंडरिंग मोजिबेक दिखाती है। यह अपेक्षित है।
4. किसी Data URI छवि को देखने के लिए, पूरी data:... URI को अपने ब्राउज़र के एड्रेस बार में चिपकाएँ — ब्राउज़र इसे सीधे डिकोड करके रेंडर करता है।
5. छवि फ़ाइल सहेजने के लिए, हमारा समर्पित Base64 से इमेज टूल उपयोग करें, जो पूरी Data URI को संभालता है और PNG/JPG/WebP डाउनलोड करता है।
Data URI सामान्यतः इनमें पाई जाती हैं: CSS background-image नियम, इनलाइन SVG आइकन, ईमेल हस्ताक्षर छवियाँ, JSON API प्रतिक्रियाओं में एन्कोड किए गए PDF अटैचमेंट, और Electron/VS Code एक्सटेंशन आइकन बंडल।
Base64 एन्कोडिंग और Base64 डिकोडिंग में क्या अंतर है?
एन्कोडिंग मनमाने बाइनरी या टेक्स्ट डेटा को लेती है और केवल प्रिंट योग्य अक्षरों का उपयोग करते हुए एक ASCII स्ट्रिंग बनाती है — जो केवल-टेक्स्ट चैनलों (ईमेल, URL, JSON) पर ट्रांसपोर्ट के लिए सुरक्षित है। डिकोडिंग इसे उलट देती है: एक ASCII Base64 स्ट्रिंग वापस मूल बाइट्स बन जाती है।
प्रमुख गुण:
• राउंड-ट्रिप लॉसलेस: सभी बाइट इनपुट के लिए decode(encode(x)) === x। कोई डेटा कभी नष्ट नहीं होता।
• एन्क्रिप्शन नहीं: Base64 कोई गोपनीयता नहीं देता। कोई भी इसे डिकोड कर सकता है।
• आकार में अतिरिक्त भार: एन्कोडेड आउटपुट इनपुट से ~33% बड़ा होता है (प्रति 3 इनपुट बाइट्स पर 4 आउटपुट बाइट्स)।
• उपयोग के मामले: JWT टोकन, MIME ईमेल अटैचमेंट, HTTP Basic Auth हेडर, OAuth कोड, S3 प्रीसाइन्ड URL, HTML/CSS में इनलाइन छवियाँ।
यह पेज डिकोडिंग को समर्पित है। यदि आपको दूसरी दिशा में जाना है (टेक्स्ट/फ़ाइल → Base64), तो होम पेज पर हमारा Base64 एन्कोडर उपयोग करें, या छवि फ़ाइलों के लिए हमारा इमेज से Base64 कन्वर्टर।
क्या मैं बहुत बड़ी Base64 स्ट्रिंग्स या Base64-एन्कोडेड फ़ाइलें डिकोड कर सकता हूँ?
हाँ, ब्राउज़र मेमोरी सीमाओं के भीतर। डिकोडर असीमित इनपुट लंबाई स्वीकार करता है — हमने आधुनिक लैपटॉप पर 50 MB Base64 स्ट्रिंग्स (~37 MB डिकोडेड) के साथ परीक्षण किया है। प्रदर्शन:
• < 100 KB: तत्काल, कोई UI देरी नहीं।
• 1 – 10 MB: CPU के आधार पर डिकोडिंग में ~50-500 ms लगते हैं।
• 10 – 100 MB: ब्राउज़र कुछ देर के लिए फ़्रीज़ हो सकता है (2-10 सेकंड) क्योंकि atob सिंक्रोनस है। पहले auto-decode अक्षम करें और मैन्युअल रूप से [DECODE] पर क्लिक करें।
• > 100 MB: आप ब्राउज़र मेमोरी सीमाओं तक पहुँच जाएँगे। गीगाबाइट-स्केल Base64 फ़ाइलों के लिए, कमांड-लाइन टूल (base64 -d) का उपयोग करें।
यदि डिकोड की गई सामग्री एक बाइनरी फ़ाइल है (PNG, PDF, ZIP), तो टेक्स्ट आउटपुट क्षेत्र मोजिबेक दिखाएगा। डिकोड किए गए बाइट्स को फ़ाइल के रूप में डाउनलोड करने के लिए, हमारा Base64 से इमेज टूल (छवियों को संभालता है) या कमांड-लाइन तरीका उपयोग करें: echo '<base64>' | base64 -d > output.bin।
क्या यह Base64 डिकोडर ऑफ़लाइन काम करता है?
हाँ। पेज एक बार लोड होने के बाद, सारी डिकोडिंग क्लाइंट-साइड JavaScript में होती है — किसी नेटवर्क की आवश्यकता नहीं। इसे पूरी तरह ऑफ़लाइन बनाने के लिए:
1. पेज सहेजें: Ctrl+S (Windows/Linux) या Cmd+S (macOS) दबाएँ और "Webpage, Complete" के रूप में सहेजें। डिकोडर सहेजे गए HTML से काम करता है।
2. PWA के रूप में इंस्टॉल करें (यदि समर्थित हो): कुछ ब्राउज़र base64.sh के लिए "Install this app" प्रदान करते हैं — यह आपको ऑफ़लाइन एक्सेस वाला लॉन्चर देता है।
3. DevTools में उपयोग करें: नेटिव atob() फ़ंक्शन इस पेज के बिना किसी भी ब्राउज़र कंसोल में काम करता है। त्वरित डिकोड के लिए: atob('SGVsbG8=')।
ऑफ़लाइन संचालन इनके लिए उपयोगी है: एयर-गैप्ड सुरक्षा अनुसंधान, पेंटेस्टिंग लैब, सख्त डेटा-निकास नियमों वाले कॉर्पोरेट परिवेश, और इंटरनेट रहित उड़ानें/रेलयात्राएँ।