UltKit
इमेज11
PDF13
डॉक्यूमेंट और डेटा7
वीडियो6
ऑडियो4
और टूल्स22

JSON को Base64 में बदलें

JSON फ़ाइल को Base64 टेक्स्ट की एक लाइन में बदलें, जो एनवायरनमेंट वेरिएबल, YAML फ़ील्ड और API बॉडी में बिना दिक्कत काम करती है, जहाँ कोट्स, ब्रेसेस और लाइन ब्रेक परेशानी खड़ी करते हैं। डिकोड करने पर बिल्कुल वही बाइट्स वापस मिलते हैं।

डेटा कन्वर्टर

या CSV, TSV, TXT … फ़ाइलें यहाँ ड्रop करें ·

प्रति फ़ाइल अधिकतम 95 MB· अधिकतम 20 फ़ाइलें· 30 मिनट बाद हटा दी जाती हैं

आउटपुट

फ़ाइलें हमारे सर्वर पर प्रोसेस होती हैं और 30 मिनट बाद हटा दी जाती हैं।

इस टूल का उपयोग कैसे करें

  1. 1

    JSON फ़ाइल अपलोड करें

    कोई .json, .jsonl या .ndjson फ़ाइल जोड़ें, जैसे सर्विस अकाउंट की या कोई कॉन्फ़िग फ़ाइल। एक बैच में 20 फ़ाइलें, हर एक 95 MB तक।

  2. 2

    प्रीफ़िक्स तय करें

    सादा Base64 पहले से सेट है। Data URI प्रीफ़िक्स को एडवांस्ड सेटिंग में तभी चालू करें, जब टेक्स्ट किसी HTML या CSS एट्रिब्यूट में जाना हो जिसमें data: URL चाहिए।

  3. 3

    एनकोड करें और कॉपी करें

    Base64 टेक्स्ट में कन्वर्ट करें दबाएँ, नतीजा डाउनलोड करें और स्ट्रिंग को अपने सीक्रेट स्टोर, मैनिफ़ेस्ट या रिक्वेस्ट बॉडी में पेस्ट करें।

JSON को Base64 में एन्कोड करने से डेटा नहीं बदलता; वह सादे अक्षरों और अंकों में दोबारा पैक हो जाता है, ताकि वह ऐसी जगहों से गुज़र सके जहाँ ब्रेस, कोट और लाइन ब्रेक बिगड़ जाते हैं।

JSON फ़ाइल को Base64 में क्यों एनकोड करें

सबसे आम मामला क्रेडेंशियल फ़ाइल का है। क्लाउड प्रोवाइडर आपको सर्विस अकाउंट की JSON फ़ाइल के रूप में देता है, जबकि आपका CI सिस्टम, होस्टिंग डैशबोर्ड या कंटेनर प्लेटफ़ॉर्म सीक्रेट के लिए सिर्फ़ एक लाइन का टेक्स्ट फ़ील्ड देता है। कच्चा JSON पेस्ट करने पर वह पहली नई लाइन या पहले बिना एस्केप वाले कोट पर टूट जाता है। Base64 में एन्कोड करने पर वही की एक अटूट स्ट्रिंग बन जाती है, जिसे ऐप शुरू होते समय डिकोड कर लेता है।

Base64 की जड़ें ईमेल में हैं: 1996 में RFC 2045 में परिभाषित MIME ने इसे इसलिए अपनाया ताकि अटैचमेंट उन मेल सर्वरों से गुज़र सकें जो सिर्फ़ 7-बिट टेक्स्ट ले जाते थे। बाद में 2006 में RFC 4648 में इसकी वर्णमाला अलग से मानकीकृत हुई। इसकी कीमत साइज़ है, क्योंकि हर 3 बाइट 4 अक्षर बन जाते हैं। इमेज और दूसरी बाइनरी फ़ाइलों के लिए Image to Base64 वही एन्कोडिंग मैचिंग data URI के साथ करता है। अगर पाने वाला टूल Base64 फ़ील्ड की जगह YAML पढ़ता है, तो शायद JSON to YAML ही काफ़ी हो।

JSON से Base64 का उदाहरण

कॉम्पैक्ट JSON {"env":"prod","retries":3} और उसका Base64 एन्कोडिंग
{"env":"prod","retries":3}

eyJlbnYiOiJwcm9kIiwicmV0cmllcyI6M30=

Base64 में एनकोड किया गया JSON कहाँ चाहिए होता है

जहाँ JSON सिर्फ़ Base64 के रूप में लिया जाता है
संस्थाआवश्यकतास्रोत
Kubernetes Secretsdata के नीचे हर वैल्यू Base64 होनी चाहिए; JSON की फ़ाइल को माउंट करने के लिए पहले उसे एन्कोड करें।kubernetes.io
GitHub REST APIफ़ाइल कंटेंट बनाने या अपडेट करने वाला एंडपॉइंट फ़ाइल को, .json फ़ाइल समेत, content में Base64 के रूप में लेता है।docs.github.com
JSON Web Tokens (RFC 7519)JSON हेडर और क्लेम हर एक base64url से एन्कोड होते हैं और डॉट से जोड़े जाते हैं।—
ईमेल अटैचमेंट (MIME).json अटैचमेंट Base64 ट्रांसफ़र एन्कोडिंग के साथ भेजा जाता है ताकि वह सिर्फ़ टेक्स्ट वाले मेल सर्वरों से गुज़र सके।—
Base64Base 64 एन्कोडिंग · RFC 4648 एन्कोडिंग
किसी भी बाइट को 64 सुरक्षित अक्षरों में लिखने का तरीका: A–Z, a–z, 0–9, + और /, और पैडिंग के लिए =। इनपुट के हर 3 बाइट आउटपुट में 4 अक्षर बनते हैं, इसलिए टेक्स्ट फ़ाइल से लगभग एक तिहाई लंबा होता है। यह पलटा जा सकता है और इसमें कोई की नहीं होती, इसलिए यह ट्रांसपोर्ट फ़ॉर्मैट है, सुरक्षा का उपाय नहीं।

JSON और Base64 फॉर्मेट की जानकारी

JSON

JavaScript ऑब्जेक्ट नोटेशन

JSON संरचित डेटा के लिए हल्का टेक्स्ट फ़ॉर्मैट है, जिसे 2000 के दशक की शुरुआत में Douglas Crockford ने लोकप्रिय बनाया और जो RFC 8259 और ECMA-404 के रूप में मानकीकृत है। यह ऑब्जेक्ट, ऐरे, स्ट्रिंग, नंबर, बूलियन और null को सरल, पढ़ने योग्य सिंटैक्स में दिखाता है। लगभग हर प्रोग्रामिंग भाषा में वेब API, कॉन्फ़िगरेशन फ़ाइलों और ऐप्स के बीच डेटा के आदान-प्रदान का यह डिफ़ॉल्ट फ़ॉर्मैट है। इसमें कमेंट, तारीख़ें या स्कीमा बिल्ट-इन नहीं होते, और बड़ी नेस्टेड फ़ाइलें व्यूअर के बिना पढ़ना कठिन होता है।

कंप्रेशन
–
ट्रांसपेरेंसी (पारदर्शिता)
–
एनिमेशन
–
शुरुआत का वर्ष
2001 · Douglas Crockford
JSON कन्वर्टर

BASE64

Base64-एन्कोडेड टेक्स्ट

Base64 एक एन्कोडिंग है, जिसे RFC 4648 में परिभाषित किया गया है। यह किसी भी बाइनरी डेटा को 64 सुरक्षित टेक्स्ट अक्षरों की स्ट्रिंग में बदल देती है। इसका उपयोग HTML और CSS में इमेज को data URI के रूप में एम्बेड करने, ईमेल में फ़ाइलें अटैच करने और JSON या XML में बाइनरी डेटा भेजने के लिए होता है। एन्कोडिंग पूरी तरह उलटी जा सकती है, लेकिन इससे डेटा लगभग 33% बड़ा हो जाता है। Base64 एन्क्रिप्शन नहीं है और कोई सुरक्षा नहीं देता; कोई भी इसे डिकोड कर सकता है।

कंप्रेशन
लॉसलेस
ट्रांसपेरेंसी (पारदर्शिता)
–
एनिमेशन
–
शुरुआत का वर्ष
–
BASE64 कन्वर्टर

JSON को Base64 में तब बदला जाता है जब किसी स्ट्रक्चर्ड पेलोड को ऐसे एक स्ट्रिंग फ़ील्ड में भेजना हो जो सीधे कोट और नई लाइन नहीं ले सकता: CI सीक्रेट, Kubernetes मैनिफ़ेस्ट, किसी API का content फ़ील्ड या हेडर की वैल्यू।

JSON को Base64 में बदलने से जुड़े सवाल

क्या Base64 में एनकोड किया गया JSON एन्क्रिप्टेड होता है?

नहीं। Base64 एक एन्कोडिंग है और कोई भी इसे एक कमांड से डिकोड कर सकता है। Kubernetes के डॉक्यूमेंटेशन में भी चेतावनी है कि Secrets डिफ़ॉल्ट रूप से सिर्फ़ Base64 एन्कोडेड और बिना एन्क्रिप्शन के रखे जाते हैं, इसलिए एन्कोड की गई स्ट्रिंग को उसी तरह सुरक्षित रखें जैसे मूल की को रखते हैं।

टोकन या URL के लिए Base64 चाहिए या base64url?

यहाँ लिखा स्टैंडर्ड Base64 + और / इस्तेमाल करता है और अंत में = से पैडिंग करता है। JWT और URL पैरामीटर RFC 4648 की base64url वर्णमाला इस्तेमाल करते हैं, जिसमें - और _ आते हैं और पैडिंग आमतौर पर हट जाती है। अगर आपको base64url चाहिए तो ये तीन अक्षर बदल दें।

क्या एनकोड करने से पहले JSON को मिनिफ़ाई करना चाहिए?

आमतौर पर हाँ। स्पेस, इंडेंटेशन और लाइन ब्रेक भी दूसरे बाइट की तरह ही बाइट हैं, और हर 3 बाइट आउटपुट में 4 अक्षर बन जाते हैं। सुंदर फ़ॉर्मैट वाली कॉन्फ़िग को पहले कॉम्पैक्ट करने से, जैसे jq -c से, एन्कोड की गई स्ट्रिंग उतनी छोटी हो जाती है।

स्ट्रिंग को वापस JSON में कैसे डिकोड करें?

macOS या Linux पर base64 --decode चलाएँ, PowerShell में [Convert]::FromBase64String इस्तेमाल करें, और ब्राउज़र में atob के नतीजे को TextDecoder से गुज़ारें ताकि UTF-8 अक्षर सही लौटें।

kubectl illegal base64 data की एरर क्यों देता है?

Secret मैनिफ़ेस्ट में data के नीचे की वैल्यू एक ही लाइन में मान्य Base64 होनी चाहिए। यह एरर आमतौर पर तब आता है जब पेस्ट करते समय लाइन ब्रेक आ गया हो, या data में सादा JSON रख दिया गया हो। सादी वैल्यू stringData में रखें, जिसे Kubernetes खुद एन्कोड करता है।

क्या एनकोडिंग से मेरे JSON के अंदर कुछ बदलता है?

नहीं। Base64 बाइट को टेक्स्ट में और वापस बिना किसी नुकसान के बदलता है, इसलिए की, वैल्यू, एक्सेंट वाले अक्षर और फ़ाइल की शुरुआत का बाइट ऑर्डर मार्क भी डिकोड करने पर ठीक वैसे ही लौट आते हैं।