Base64 एन्कोडिङ

Base64 इन्कोडिङ उपकरणको साथ, तपाईंले Base64 विधिसँग प्रविष्ट गर्नुभएको पाठलाई इन्क्रिप्ट गर्न सक्नुहुन्छ। यदि तपाईं चाहनुहुन्छ भने, तपाईंले Base64 डिकोड उपकरणको साथ एन्क्रिप्टेड Base64 कोड डिकोड गर्न सक्नुहुन्छ।

Base64 Encoding भनेको के हो?

Base64 Encoding एउटा एन्कोडिङ योजना हो जसले बाइनरी डाटालाई वातावरणमा ढुवानी गर्न अनुमति दिन्छ जुन केवल केही प्रतिबन्धित क्यारेक्टर सङ्केतङ्कनहरू प्रयोग गर्दछ (परिवेश जहाँ सबै क्यारेक्टर कोडहरू प्रयोग गर्न सकिँदैन, जस्तै xml, html, स्क्रिप्ट, तत्काल सन्देश अनुप्रयोगहरू)। यस योजनामा ​​क्यारेक्टरहरूको संख्या 64 छ, र Base64 शब्दमा 64 नम्बर यहाँबाट आउँछ।

Base64 एन्कोडिङ किन प्रयोग गर्ने?

Base64 एन्कोडिङको आवश्यकता समस्याहरूबाट उत्पन्न हुन्छ जब मिडिया कच्चा बाइनरी ढाँचामा पाठ-आधारित प्रणालीहरूमा प्रसारित हुन्छ। पाठ-आधारित प्रणालीहरू (जस्तै इ-मेल) ले विशेष आदेश क्यारेक्टरहरू सहित क्यारेक्टरहरूको विस्तृत दायराको रूपमा बाइनरी डेटाको व्याख्या गर्ने हुनाले, स्थानान्तरण माध्यममा पठाइएका अधिकांश बाइनरी डेटालाई यी प्रणालीहरूले गलत व्याख्या गरेको छ र प्रसारणमा हराएको वा भ्रष्ट हुन्छ। प्रक्रिया।

त्यस्ता बाइनरी डेटालाई इन्कोडिङ गर्ने एउटा तरिका यस्तो ट्रान्समिशन समस्याहरूलाई बेवास्ता गर्ने तरिका भनेको तिनीहरूलाई Base64 इन्कोड गरिएको ढाँचामा सादा ASCII पाठको रूपमा पठाउनु हो। यो सादा पाठ बाहेक अन्य डाटा पठाउन MIME मानक द्वारा प्रयोग गरिएको प्रविधिहरू मध्ये एक हो। धेरै प्रोग्रामिङ भाषाहरू, जस्तै PHP र जाभास्क्रिप्ट, Base64 एन्कोडिङ र डिकोडिङ प्रकार्यहरू Base64 एन्कोडिङ प्रयोग गरेर प्रसारित डाटा व्याख्या गर्न समावेश गर्दछ।

Base64 एन्कोडिङ तर्क

Base64 encoding मा, 3 * 8 bits = 24 bits data in 3 bytes लाई 6 bit को 4 समूहमा विभाजन गरिएको छ। यी 4 6-बिट समूहहरू मध्ये [0-64] बीचको दशमलव मानहरूसँग मिल्दोजुल्दो क्यारेक्टरहरू इनकोड गर्न Base64 तालिकाबाट मिलाइन्छ। Base64 इन्कोडिङको परिणाम स्वरूप प्राप्त वर्णहरूको संख्या 4 को गुणा हुनुपर्छ। इन्कोड गरिएको डाटा जुन 4 को गुणन छैन त्यो मान्य Base64 डाटा होइन। Base64 एल्गोरिथ्मको साथ इन्कोडिङ गर्दा, एन्कोडिङ पूरा हुँदा, यदि डेटाको लम्बाइ ४ को गुणन होइन भने, "=" (बराबर) क्यारेक्टरलाई इन्कोडिङको अन्त्यमा 4 को गुणन नभएसम्म थपिन्छ। उदाहरणका लागि, यदि हामीसँग एन्कोडिङको परिणाम स्वरूप 10-वर्णको Base64 इन्कोड गरिएको डाटा छ भने, दुई "==" अन्त्यमा थपिनुपर्छ।

Base64 इन्कोडिङ उदाहरण

उदाहरणका लागि, तीन ASCII नम्बरहरू 155, 162 र 233 लिनुहोस्। यी तीन नम्बरहरूले 100110111010001011101001 को बाइनरी स्ट्रिम बनाउँछन्। बाइनरी फाइल जस्तै छविमा बाइनरी स्ट्रिम हुन्छ जुन दसौं वा सयौं हजार शून्य र एकका लागि काम गर्दछ। एउटा Base64 एन्कोडर बाइनरी स्ट्रिमलाई छवटा वर्णहरूको समूहमा विभाजन गरेर सुरु हुन्छ: 100110 111010 001011 101001। यी प्रत्येक समूहहरूलाई 38, 58, 11, र 41 नम्बरहरूमा अनुवाद गरिएको छ। छ-वर्णको बाइनरी स्ट्रिम बाइनरी (वा आधारभूत) बीच रूपान्तरण हुन्छ। 2) दशमलव (आधार-10) वर्णहरूलाई स्थितिगत वर्गद्वारा बाइनरी एरेमा 1 द्वारा प्रतिनिधित्व गरिएको प्रत्येक मानलाई वर्गीकरण गरेर। दायाँबाट सुरु गरेर बायाँतिर सर्दै र शून्यबाट सुरु गर्दै, बाइनरी स्ट्रिममा मानहरूले 2^0, त्यसपछि 2^1, त्यसपछि 2^2, त्यसपछि 2^3, त्यसपछि 2^4, त्यसपछि 2^ प्रतिनिधित्व गर्दछ। ५।

यहाँ यसलाई हेर्न अर्को तरिका छ। बायाँबाट सुरु गर्दै, प्रत्येक स्थिति 1, 2, 4, 8, 16 र 32 को लायक छ। यदि स्लटमा बाइनरी नम्बर १ छ भने, तपाईंले त्यो मान थप्नुहुन्छ; यदि स्लटमा ० छ भने, तपाइँ हराइरहेको छ। बाइनरी एरे 100110 घुमाउँछ 38: 0 * 2 ^ 01 + 1 * 2 ^ 1 + 1 * 2 ^ 2 + 0 * 2 ^ 3 + 0 * 2 ^ 4 + 1 * 2 ^ 5 = 0 + 2 दशमलव + 4 + 0 + 0 + 32. Base64 एन्कोडिङले यो बाइनरी स्ट्रिङ लिन्छ र यसलाई 6-बिट मानहरू 38, 58, 11 र 41 मा विभाजन गर्छ। अन्तमा, यी संख्याहरू Base64 एन्कोडिङ तालिका प्रयोग गरेर ASCII क्यारेक्टरहरूमा रूपान्तरित हुन्छन्।