RUV CalculatorBase64 एनकोडर और डिकोडरhttps://calc.ruvlabs.com/hi/c/base64

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

पाठ से Base64 और वापस

परिणाम

विस्तृत विवरण
लंबाई

यह Base64 में क्या बनेगा?

SGVsbG8sIOyViOuFle2VmOyEuOyalA==

शुरुआती मानों के साथ एक उदाहरण। अपने आंकड़ों के लिए ऊपर के मान बदलें।

Base64 लिखने का ढंग है, कूटलेखन नहीं

Base64 मनमाने बाइटों को सिर्फ A-Z, a-z, 0-9 और दो चिह्नों से दोबारा लिखता है। तीन बाइट छह-छह बिट के चार समूहों में बँटते हैं और हर समूह एक अक्षर बनता है, इसलिए निकलने वाला पाठ इनपुट का लगभग चार-तिहाई लंबा होता है। बराबर के चिह्न आखिरी अधूरे समूह को भर देते हैं।

इसका काम बाइनरी डेटा को उन रास्तों से ले जाना है जो सिर्फ पाठ लेते हैं: ईमेल के अनुलग्नक, पन्ने में सीधे जड़े चित्र, और HTTP शीर्षक में रखी साख। यह बीच के तंत्रों को उन बाइटों को बिगाड़ने से रोकता है जिनकी उन्हें उम्मीद नहीं थी।

मल्टीबाइट अक्षर पहले UTF-8 में बदले जाते हैं और फिर एन्कोड होते हैं। शब्द café पाँच बाइट का है क्योंकि é दो बाइट लेता है, इसलिए Base64 में आठ अक्षर बनते हैं — उतने ही जितने पाँच अंग्रेज़ी अक्षरों के शब्द से। इसलिए आउटपुट की लंबाई से मूल अक्षरों की संख्या का भरोसेमंद अंदाज़ा नहीं मिलता।

एन्कोडिंग को सुरक्षा न समझें

Base64 को कोई भी पल भर में उलट सकता है। पासवर्ड या टोकन को Base64 में रखना उसे छिपाता नहीं; बस पढ़ने में असुविधाजनक बनाता है, और लॉग या बैकअप तक पहुँचते ही वह पूरी तरह खुला होता है। जिन मानों को गुप्त रहना है उन्हें कूटलेखन या हैश चाहिए।

कच्चा Base64 किसी URL में डाल देने से वह टूट जाता है। मानक वर्णमाला के जोड़ और तिरछी रेखा वाले अक्षर वेब पते में कुछ और मतलब रखते हैं, इसलिए URL के लिए वह सुरक्षित रूप चाहिए जो उन दोनों को बदल देता है।

डिकोडिंग असफल होने का कारण आमतौर पर लंबाई या भराई होता है। Base64 पाठ की लंबाई चार का गुणज होनी चाहिए, और नकल करते समय आई नई पंक्तियाँ या बिखरी खाली जगहें पढ़ने वाले से उसे ठुकरा देंगी।

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

क्या Base64 एक तरह का कूटलेखन है?

नहीं — यह सिर्फ एन्कोडिंग है, एन्क्रिप्शन नहीं। कोई भी इसे उल्टा पढ़ सकता है, इसलिए यह कुछ भी नहीं छिपाता। इसका मकसद बाइनरी डेटा को ईमेल, JSON और URL जैसे सिर्फ-पाठ वाले रास्तों से सुरक्षित पहुँचाना है।

आकार क्यों बढ़ जाता है?

तीन बाइट चार अक्षर बन जाते हैं, यानी करीब 33% ज्यादा, क्योंकि डेटा को छह-बिट के समूहों में बाँटकर 64 अक्षरों पर बिठाया जाता है। इसीलिए HTML में किसी चित्र को Base64 में जड़ देना उस फाइल का लिंक देने से महँगा पड़ता है।

आखिर में बराबर के चिह्न क्यों आते हैं?

वे भराई हैं। जब इनपुट की लंबाई तीन का गुणज नहीं होती, तो वे आखिरी चार-अक्षर समूह को पूरा करते हैं: एक बाइट बचे तो दो चिह्न, दो बाइट बचें तो एक।

गणना इसी ब्राउज़र में होती है। नतीजे पर भरोसा करने से पहले अपने दर्ज किए मान जाँच लें।