A–Z a–z 0–9 + / = · base64url
Base64 एन्कोडर और डिकोडर
Base64 बाइट को 64 छपने योग्य अक्षरों वाले टेक्स्ट में लिखता है: "Hello" के 5 बाइट SGVsbG8= बन जाते हैं। एन्कोड करने के लिए टेक्स्ट लिखें या फ़ाइल चुनें, या Base64 पेस्ट करके उसे वापस टेक्स्ट या डाउनलोड में बदलें।
- Hello = SGVsbG8=
- Hello = SGVsbG8
- FB FF = +/8= = -_8=
सब कुछ इसी टैब में चलता है और कुछ अपलोड नहीं होता। Base64 एक एन्कोडिंग है, एन्क्रिप्शन नहीं: कोई भी इसे वापस पढ़ सकता है।
Scanned by NortonTM Safe Web
एक नज़र में
- क़ीमत
- कोई शुल्क नहीं
- खाता
- ज़रूरत नहीं
- मानक
- RFC 4648 (Base64 और Base64url), RFC 2045 (MIME), RFC 2397 (data URI)
- आकार में बदलाव
- हर 3 बाइट के लिए 4 अक्षर
- सीमा
- टेक्स्ट या फ़ाइल के लिए 10 MB
- अपलोड
- कोई नहीं — टेक्स्ट और फ़ाइलें आपके ब्राउज़र टैब में रहती हैं
Base64 के उदाहरण
नीचे का हर मान इसी पेज के एन्कोडर से बना है। टेक्स्ट पहले UTF-8 में एन्कोड होता है।
| टेक्स्ट | Base64 | बिना पैडिंग का Base64url | UTF-8 आकार |
|---|---|---|---|
| Hello | SGVsbG8= | SGVsbG8 | 5 B |
| Hello, World! | SGVsbG8sIFdvcmxkIQ== | SGVsbG8sIFdvcmxkIQ | 13 B |
| Grüße | R3LDvMOfZQ== | R3LDvMOfZQ | 7 B |
| € | 4oKs | 4oKs | 3 B |
| FB FF | +/8= | -_8 | 2 B |
| इनपुट | Base64 | लंबाई | पैडिंग अक्षर |
|---|---|---|---|
| f | Zg== | 4 | 2 |
| fo | Zm8= | 4 | 1 |
| foo | Zm9v | 4 | 0 |
| foob | Zm9vYg== | 8 | 2 |
| fooba | Zm9vYmE= | 8 | 1 |
| foobar | Zm9vYmFy | 8 | 0 |
Base64 कैसे एन्कोड और डिकोड करें
दिशा चुनें
टेक्स्ट या फ़ाइल को Base64 में बदलने के लिए एन्कोड चुनें, या Base64 को मूल रूप में लौटाने के लिए डिकोड। स्वैप बटन नतीजे को दूसरी दिशा के इनपुट में ले जाता है।
डेटा दें
टेक्स्ट टाइप या पेस्ट करें, या 10 MB तक की फ़ाइल छोड़ें। डिकोड के लिए मानक या URL-safe वर्णमाला का Base64, = पैडिंग के साथ या बिना, या data URI पेस्ट करें।
नतीजा कॉपी करें
नतीजा कॉपी या डाउनलोड करें। डिकोड हुए बाइट टेक्स्ट न हों तो पेज पहले बाइट हेक्स में दिखाता है, फ़ाइल का प्रकार पता हो तो उसका नाम बताता है, और बाइट को फ़ाइल के रूप में सहेजने देता है।
Base64 कैसे काम करता है
Base64 (RFC 4648) इनपुट को 3 बाइट के समूहों में बाँटता है, यानी 24 बिट, और हर समूह को 64 अक्षरों की वर्णमाला से 6 बिट वाले 4 अक्षरों में लिखता है: A–Z, a–z, 0–9, + और /। इसलिए आउटपुट इनपुट से लगभग एक तिहाई बड़ा होता है। इनपुट 3 बाइट का गुणज न हो तो = चिह्न अंत को 4 अक्षरों के गुणज तक भर देते हैं, इसलिए Hello के 5 बाइट से 8 अक्षर बनते हैं जो एक = पर खत्म होते हैं।
उसी RFC में परिभाषित Base64url + की जगह - और / की जगह _ रखता है ताकि टेक्स्ट URL या फ़ाइल नाम में सुरक्षित रहे, और JWT जैसे फ़ॉर्मेट = पैडिंग छोड़ देते हैं। यह पेज दोनों वर्णमालाएँ, पैडिंग के साथ या बिना, पढ़ लेता है और स्पेस व नई लाइन को अनदेखा करता है। टेक्स्ट पहले UTF-8 में बदला जाता है, इसलिए € के 3 बाइट E2 82 AC बनते हैं और Base64 में 4oKs। सीमा टेक्स्ट या फ़ाइल के लिए 10 MB है।
Base64 से जुड़े सवाल
टेक्स्ट को Base64 में कैसे एन्कोड करें?
एन्कोड मोड में टेक्स्ट टाइप या पेस्ट करें। Base64 टाइप करते ही दिखता है: Hello से SGVsbG8= बनता है। टेक्स्ट पहले UTF-8 में लिखा जाता है, इसलिए ASCII से बाहर के अक्षर एक से ज़्यादा बाइट लेते हैं: € के 3 बाइट हैं और इससे 4oKs बनता है।
Base64 और Base64url में क्या अंतर है?
Base64url दो अक्षर बदलता है: - की जगह + और _ की जगह / आता है। बाइट FB FF, Base64 में +/8= और Base64url में -_8= होते हैं। URL-safe रूप URL, फ़ाइल नाम और JWT के लिए है, और अक्सर = पैडिंग छोड़ देता है।
Base64 के अंत में = चिह्न क्यों होते हैं?
ये पैडिंग हैं। Base64 3 बाइट और 4 अक्षरों के समूहों में काम करता है। आख़िरी समूह में 1 बाइट हो तो दो = उसे भरते हैं: f से Zg== बनता है। 2 बाइट हों तो एक = भरता है: fo से Zm8= बनता है। 3 बाइट के गुणज को किसी की ज़रूरत नहीं: foo से Zm9v बनता है।
क्या Base64 एन्क्रिप्शन है?
नहीं। Base64 बिना कुंजी की उलटने योग्य एन्कोडिंग है, इसलिए कोई भी इसे डिकोड कर सकता है, और यह डेटा की रक्षा नहीं करता। यह बाइनरी डेटा को ईमेल, JSON, XML या data URI जैसे टेक्स्ट में रखने लायक बनाता है।
Base64 मेरा डेटा कितना बड़ा कर देता है?
लगभग एक तिहाई: हर 3 बाइट 4 अक्षर बन जाते हैं, इसलिए 3000 बाइट से 4000 अक्षर बनते हैं। हर 76 अक्षर (MIME, RFC 2045) या हर 64 अक्षर (PEM, RFC 7468) पर नई लाइन थोड़ा और जोड़ती है।
डिकोड में क्यों लिखा आता है कि बाइट मान्य UTF-8 टेक्स्ट नहीं हैं?
Base64 ठीक है, पर उसके भीतर के बाइट टेक्स्ट नहीं हैं। वे कोई छवि, संपीड़ित फ़ाइल या कोई और बाइनरी फ़ॉर्मेट हो सकते हैं। तब पेज पहले 64 बाइट हेक्स में दिखाता है, फ़ाइल का प्रकार पता हो तो उसका नाम बताता है, और बाइट डाउनलोड के लिए देता है।