Base64 एनकोडर और डिकोडर

किसी भी तरफ़ टाइप करें, दूसरी तरफ़ अपने-आप बदल जाती है। Base64 (स्टैंडर्ड और URL-safe), बाइनरी, hex, URL एनकोडिंग और HTML एंटिटी, और इमोजी व हिंदी जैसे अक्षर भी सही से संभलते हैं।

टेक्स्ट

फ़ॉर्मैट
.txt डाउनलोड करें

दोनों बॉक्स में लिखा जा सकता है। डिकोड करने के लिए एनकोड किया टेक्स्ट दाईं ओर पेस्ट करें, पेस्ट करते ही फ़ॉर्मैट पहचान लिया जाता है।

Base64

सही

सब कुछ आपके ब्राउज़र में चलता है। आप जो टाइप करते या छोड़ते हैं, वह अपलोड नहीं होता।

फ़ाइल से Base64

आउटपुट

Base64 एनकोड और डिकोड कैसे करें

यह Base64 एनकोडर और डिकोडर एक साथ दोनों दिशाओं में काम करता है। बाईं ओर सादा टेक्स्ट टाइप करें और दाईं ओर Base64 दिखने लगता है; दाईं ओर Base64 पेस्ट करें और बाईं ओर डिकोड किया टेक्स्ट आ जाता है। Hello बन जाता है SGVsbG8=, और SGVsbG8= पेस्ट करने पर वापस Hello मिलता है।

यही दो बॉक्स चार और फ़ॉर्मैट संभालते हैं: बाइनरी, हेक्स, URL एनकोडिंग और HTML एंटिटी। दाईं ओर कुछ पेस्ट करने पर टूल उसे देखकर मिलते-जुलते फ़ॉर्मैट पर चला जाता है, इसलिए 0 और 1 की लड़ी बिना कुछ चुने बाइनरी के रूप में पढ़ी जाती है। अगर आप गलती से एनकोड की गई स्ट्रिंग सादे टेक्स्ट वाले बॉक्स में पेस्ट कर दें, तो टूल उसे डिकोड करने का सुझाव देता है।

Base64 असल में क्या करता है

Base64 किसी भी बाइट को 64 सुरक्षित अक्षरों (A–Z, a–z, 0–9, + और /) में बदल देता है, ताकि बाइनरी डेटा टेक्स्ट के लिए बने सिस्टम से होकर जा सके: ईमेल, JSON, HTML एट्रिब्यूट, एनवायरनमेंट वेरिएबल। यह 3 बाइट (24 बिट) लेता है, उन्हें 6-6 बिट के चार टुकड़ों में बाँटता है और हर टुकड़े के लिए एक अक्षर लिखता है।

Man → 01001101 01100001 01101110 → 010011 010110 000101 101110 → TWFu

जब इनपुट 3 बाइट के गुणज में न हो, तो आखिर में = चिह्न भरे जाते हैं: Ma का TWE= और M का TQ==। Base64 एन्क्रिप्शन नहीं है। कोई भी इसे एक सेकंड में डिकोड कर सकता है, इसलिए Base64 में लिखे पासवर्ड को कभी छिपा हुआ न समझें।

स्टैंडर्ड या URL-सेफ़?

+ और / अक्षर URL और फ़ाइल नामों को तोड़ देते हैं, इसलिए URL-सेफ़ रूप उनकी जगह - और _ इस्तेमाल करता है और आमतौर पर पैडिंग हटा देता है। बाइट FB FF स्टैंडर्ड Base64 में +/8= और URL-सेफ़ रूप में -_8 होते हैं। JWT टोकन और कई API की URL-सेफ़ रूप इस्तेमाल करते हैं। डिकोड करते समय चुनने की ज़रूरत नहीं: दोनों वर्णमालाएँ, पैडिंग के साथ या बिना, स्वीकार होती हैं, और स्पेस या लाइन ब्रेक नज़रअंदाज़ कर दिए जाते हैं।

जब ईमेल बॉडी या PEM सर्टिफ़िकेट के लिए MIME जैसा आउटपुट चाहिए, तो हर 76 पर लाइन ब्रेक पर टिक करें।

हर फ़ॉर्मैट में आम अक्षर

यहाँ सब कुछ UTF-8 से होकर बदला जाता है, जो लगभग हर वेबसाइट और API की एनकोडिंग है। इसीलिए é दो बाइट और एक इमोजी चार बाइट लेता है। जो टूल यह कदम छोड़ देते हैं वे मात्रा वाले अक्षरों को बिगाड़ देते हैं, और ऑनलाइन Base64 डिकोडर से सबसे आम शिकायत यही है।

अक्षरBase64बाइनरीहेक्सURL
AQQ==0100000141A
aYQ==0110000161a
स्पेसIA==0010000020%20
&Jg==0010011026%26
éw6k=11000011 10101001C3 A9%C3%A9
€4oKs11100010 10000010 10101100E2 82 AC%E2%82%AC

टेक्स्ट से बाइनरी और बाइनरी से टेक्स्ट

बाइनरी चुनें और आपके टेक्स्ट का हर बाइट 8 बिट में लिखा जाता है। Hi बन जाता है 01001000 01101001। बिना टूटी एक लड़ी चाहिए तो बाइट के बीच स्पेस बंद कर दें।

बाइनरी से टेक्स्ट ट्रांसलेटर की तरह इस्तेमाल करने के लिए बिट्स दाईं ओर के बॉक्स में पेस्ट करें। 8-8 के समूह बाइट के रूप में पढ़े जाते हैं। कुछ वेबसाइटें ASCII को 7 बिट में छापती हैं (1001000 1101001); जब तक समूह स्पेस से अलग हैं, उनके आगे एक शून्य जोड़कर उन्हें सही पढ़ लिया जाता है। स्पेस न हों तो कुल बिट 8 के गुणज होने चाहिए, और एरर मैसेज बताता है कि कितने बिट मिले, ताकि आप छूटा हुआ अंक पकड़ सकें।

हेक्स भी इसी तरह काम करता है, हर बाइट के दो अंक। डिकोड करते समय 0x, \x, कोलन और कॉमा जैसे प्रीफ़िक्स और सेपरेटर हटा दिए जाते हैं, इसलिए आप सीधे डीबगर या C ऐरे से पेस्ट कर सकते हैं।

URL एनकोड और डिकोड

URL एनकोडिंग असुरक्षित अक्षरों को % और दो हेक्स अंकों से बदल देती है: स्पेस बनता है %20, é बनता है %C3%A9। सही दायरा चुनें:

HTML एंटिटी

HTML मोड उन पाँच अक्षरों को एस्केप करता है जो मार्कअप तोड़ सकते हैं: & < > " और '। इसलिए <b> बन जाता है &lt;b&gt; और बोल्ड होने के बजाय टेक्स्ट के रूप में दिखता है। डिकोडिंग &eacute; और &nbsp; जैसी नाम वाली एंटिटी के साथ-साथ &#8364; (€) जैसी संख्या वाली एंटिटी भी समझती है।

इमेज से Base64 डेटा URI

नीचे वाले बॉक्स में फ़ाइल छोड़ें और उसका Base64 पाएँ, डेटा URI, सादी स्ट्रिंग, <img> टैग या CSS बैकग्राउंड के रूप में तैयार। साइज़ वाला हिस्सा कीमत दिखाता है। Base64 एक-तिहाई बढ़ा देता है, इसलिए यह सिर्फ़ 1 KB के आइकन जैसी छोटी चीज़ों के लिए फ़ायदेमंद है, जहाँ एक HTTP रिक्वेस्ट बचाना अतिरिक्त बाइट से ज़्यादा मायने रखता है। 200 KB की फ़ोटो के लिए सामान्य इमेज फ़ाइल बेहतर है: वह छोटी होती है, कैश होती है, और आपके HTML या CSS को फुलाती नहीं।

फ़ाइल साइज़Base64 साइज़
1 KB (1,024 बाइट)1,368 अक्षर
10 KB13,656 अक्षर
50 KB68,268 अक्षर
1 MB1,398,104 अक्षर

उल्टा भी चलता है। दाईं ओर Base64 या डेटा URI पेस्ट करें, और अगर वह टेक्स्ट नहीं है, तो टूल शुरुआती बाइट पढ़कर फ़ाइल का प्रकार पहचानता है (PNG, JPEG, GIF, WebP, PDF, ZIP, MP3 और भी), इमेज का प्रीव्यू दिखाता है और सही एक्सटेंशन के साथ डाउनलोड का विकल्प देता है।

कुछ भी अपलोड नहीं होता। यहाँ यह आम से ज़्यादा मायने रखता है, क्योंकि लोग जो स्ट्रिंग डिकोड करते हैं वे अक्सर API की, सेशन टोकन और ईमेल अटैचमेंट होते हैं।

अक्सर पूछे जाने वाले सवाल

Base64 को डिकोड कैसे करें?

Base64 को दाएँ बॉक्स में पेस्ट करें, डिकोड हुआ टेक्स्ट तुरंत बाईं ओर दिखेगा। जैसे SGVsbG8= डिकोड होकर Hello बनता है। अगर नतीजा टेक्स्ट नहीं बल्कि इमेज या PDF है, तो उसकी जगह फ़ाइल के रूप में सेव करें बटन आ जाता है।

टेक्स्ट को बाइनरी में कैसे बदलें?

बाइनरी चुनें और बाईं ओर अपना टेक्स्ट टाइप करें। हर बाइट 8 बिट बनता है, इसलिए Hi बनता है 01001000 01101001। अंग्रेज़ी के बाहर के अक्षर, जैसे é या हिंदी के अक्षर, UTF-8 में दो या ज़्यादा बाइट लेते हैं, यानी 16 या ज़्यादा बिट।

बाइनरी कोड को वापस टेक्स्ट में कैसे बदलें?

बाइनरी चुनें और 0 और 1 को दाएँ बॉक्स में पेस्ट करें। 8 बिट के समूह बाइट की तरह पढ़े जाते हैं, इसलिए 01001000 01101001 से Hi बनता है। स्पेस से अलग 7 बिट के समूह भी चलते हैं, उनके आगे 0 जोड़ दिया जाता है।

इमेज को Base64 data URI में कैसे बदलें?

इमेज को नीचे वाले फ़ाइल बॉक्स में छोड़ें और नतीजा कॉपी करें। PNG बनती है data:image/png;base64,iVBORw0KGgo…, जिसे आप img src या CSS बैकग्राउंड में पेस्ट कर सकते हैं। यह फ़ाइल से लगभग 33% बड़ी होगी।

Base64 ओरिजिनल से लगभग 33% बड़ा क्यों होता है?

Base64 हर 3 बाइट को 4 अक्षरों में लिखता है, इसलिए 30 KB की इमेज लगभग 40 KB का टेक्स्ट बनती है। हर 76 अक्षर पर MIME लाइन ब्रेक लगभग 2.6% और जोड़ते हैं। इसीलिए data URI सिर्फ़ छोटी फ़ाइलों के लिए ठीक है।

Base64 और URL-safe Base64 में क्या फ़र्क है?

URL-safe Base64 में + की जगह - और / की जगह _ आता है, और अक्सर = पैडिंग हटा दी जाती है, ताकि टेक्स्ट URL या फ़ाइल नाम में आ सके। JWT टोकन यही इस्तेमाल करते हैं। यह डिकोडर दोनों तरह के अक्षर अपने-आप पहचान लेता है।

%20 और %3A वाले URL को डिकोड कैसे करें?

URL चुनें और टेक्स्ट दाईं ओर पेस्ट करें। %20 स्पेस बनता है और %3A कोलन, इसलिए https%3A%2F%2Fexample.com से https://example.com बनता है। अगर टेक्स्ट किसी फ़ॉर्म से आया है, जहाँ स्पेस + के रूप में लिखे जाते हैं, तो स्पेस को + पर टिक करें।

क्या मेरा टेक्स्ट या फ़ाइल सर्वर पर भेजी जाती है?

नहीं। सारी एनकोडिंग और डिकोडिंग आपके ब्राउज़र में JavaScript से होती है, इसलिए API की, टोकन और निजी फ़ाइलों के लिए भी यह सुरक्षित है।