Whiz Tools

ಬೇಸ್64 ಎನ್‌ಕೋಡರ್/ಡಿಕೋಡರ್

ಪಠ್ಯವನ್ನು ಬೇಸ್64 ಎನ್‌ಕೋಡಿಂಗ್ ಗೆ ಮತ್ತು ಅದರಿಂದ ಪರಿವರ್ತಿಸಿ

ನಕಲಿಸು

Base64 ಎನ್‌ಕೋಡರ್ ಮತ್ತು ಡಿಕೋಡರ್

ಪರಿಚಯ

Base64 ಒಂದು ಬೈನರಿ-ಟು-ಟೆಕ್ಸ್ಟ್ ಎನ್‌ಕೋಡಿಂಗ್ ಯೋಜನೆಯಾಗಿದೆ, ಇದು ಬೈನರಿ ಡೇಟಾವನ್ನು ASCII ಸ್ಟ್ರಿಂಗ್ ಫಾರ್ಮ್ಯಾಟ್‌ನಲ್ಲಿ ಪ್ರತಿನಿಧಿಸುತ್ತದೆ. ಇದು ಬೈನರಿ ಫಾರ್ಮ್ಯಾಟ್‌ಗಳಲ್ಲಿ ಸಂಗ್ರಹಿತ ಡೇಟಾವನ್ನು ಟೆಕ್ಸ್ಟ್ ವಿಷಯವನ್ನು ವಿಶ್ವಾಸಾರ್ಹವಾಗಿ ಬೆಂಬಲಿಸುವ ಚಾನಲ್‌ಗಳಲ್ಲಿ ಸಾಗಿಸಲು ವಿನ್ಯಾಸಗೊಳಿಸಲಾಗಿದೆ. Base64 ಎನ್‌ಕೋಡಿಂಗ್ ಬೈನರಿ ಡೇಟಾವನ್ನು 64 ಅಕ್ಷರಗಳ ಸೆಟ್ನಲ್ಲಿ ಪರಿವರ್ತಿಸುತ್ತದೆ (ಹೀಗಾಗಿ ಹೆಸರಾಗಿದೆ) ಮತ್ತು ಇದು ಟೆಕ್ಸ್ಟ್ ಆಧಾರಿತ ಪ್ರೋಟೋಕಾಲ್‌ಗಳ ಮೂಲಕ ಸುರಕ್ಷಿತವಾಗಿ ಪ್ರಸಾರವಾಗುತ್ತದೆ.

Base64 ಅಕ್ಷರ ಸೆಟ್ನು ಒಳಗೊಂಡಿದೆ:

  • ದೊಡ್ಡ ಅಕ್ಷರಗಳು A-Z (26 ಅಕ್ಷರಗಳು)
  • ಸಣ್ಣ ಅಕ್ಷರಗಳು a-z (26 ಅಕ್ಷರಗಳು)
  • ಸಂಖ್ಯೆಗಳು 0-9 (10 ಅಕ್ಷರಗಳು)
  • ಸಾಮಾನ್ಯವಾಗಿ "+" ಮತ್ತು "/" (2 ಅಕ್ಷರಗಳು) ಎಂಬ ಎರಡು ಹೆಚ್ಚುವರಿ ಅಕ್ಷರಗಳು

ಈ ಸಾಧನವು ನಿಮಗೆ ಸುಲಭವಾಗಿ ಪಠ್ಯವನ್ನು Base64 ಫಾರ್ಮ್ಯಾಟ್‌ಗೆ ಎನ್‌ಕೋಡ್ ಮಾಡಲು ಅಥವಾ Base64 ಸ್ಟ್ರಿಂಗ್‌ಗಳನ್ನು ಅವರ ಮೂಲ ಪಠ್ಯಕ್ಕೆ ಡಿಕೋಡ್ ಮಾಡಲು ಅನುಮತಿಸುತ್ತದೆ. ಇದು ಡೆವೆಲಪರ್‌ಗಳು, ಐಟಿ ವೃತ್ತಿಪರರು ಮತ್ತು ಡೇಟಾವನ್ನು ಟೆಕ್ಸ್ಟ್ ಆಧಾರಿತ ಚಾನಲ್‌ಗಳ ಮೂಲಕ ಸುರಕ್ಷಿತವಾಗಿ ಪ್ರಸಾರ ಮಾಡಲು ಕೆಲಸ ಮಾಡುವ ಯಾರಿಗಾದರೂ ವಿಶೇಷವಾಗಿ ಉಪಯುಕ್ತವಾಗಿದೆ.

Base64 ಎನ್‌ಕೋಡಿಂಗ್ ಹೇಗೆ ಕಾರ್ಯನಿರ್ವಹಿಸುತ್ತದೆ

ಎನ್‌ಕೋಡಿಂಗ್ ಪ್ರಕ್ರಿಯೆ

Base64 ಎನ್‌ಕೋಡಿಂಗ್ ಪ್ರಕ್ರಿಯೆ ಬೈನರಿ ಡೇಟಾದ ಮೂರು ಬೈಟ್‌ಗಳ (24 ಬಿಟ್‌ಗಳು) ಪ್ರತಿ ಗುಂಪನ್ನು ನಾಲ್ಕು Base64 ಅಕ್ಷರಗಳಿಗೆ ಪರಿವರ್ತಿಸುವ ಮೂಲಕ ಕಾರ್ಯನಿರ್ವಹಿಸುತ್ತದೆ. ಈ ಪ್ರಕ್ರಿಯೆ ಈ ಹಂತಗಳನ್ನು ಅನುಸರಿಸುತ್ತದೆ:

  1. ನಿಖರವಾದ ASCII ಅಥವಾ UTF-8 ಎನ್‌ಕೋಡಿಂಗ್ ಬಳಸಿಕೊಂಡು ಒಳನೋಡುವ ಪಠ್ಯವನ್ನು ಅದರ ಬೈನರಿ ಪ್ರತಿನಿಧನೆಗೆ ಪರಿವರ್ತಿಸಿ
  2. ಬೈನರಿ ಡೇಟಾವನ್ನು 24 ಬಿಟ್‌ಗಳ ಗುಂಪುಗಳಲ್ಲಿ (3 ಬೈಟ್‌ಗಳು) ಗುಂಪು ಮಾಡಿ
  3. ಪ್ರತಿ 24-ಬಿಟ್ ಗುಂಪನ್ನು ನಾಲ್ಕು 6-ಬಿಟ್ ಗುಂಪುಗಳಿಗೆ ವಿಭಜಿಸಿ
  4. ಪ್ರತಿ 6-ಬಿಟ್ ಗುಂಪನ್ನು ಅದರ ಸಂಬಂಧಿತ Base64 ಅಕ್ಷರಕ್ಕೆ ಪರಿವರ್ತಿಸಿ

ಒಳನೋಡುವ ಉದ್ದವು 3 ರಿಂದ ಭಾಗಶಃ ಹಂಚಲಾಗದಾಗ, 4:3 ನಿಷ್ಕರ್ಷಾ ಉದ್ದವನ್ನು ಕಾಪಾಡಲು "=" ಅಕ್ಷರಗಳಿಂದ ಪ್ಯಾಡಿಂಗ್ ಸೇರಿಸಲಾಗುತ್ತದೆ.

ಗಣಿತೀಯ ಪ್ರತಿನಿಧನೆ

ಬೈಟ್‌ಗಳ b1,b2,b3b_1, b_2, b_3 ಸರಣಿಯು ಸಂಬಂಧಿತ Base64 ಅಕ್ಷರಗಳು c1,c2,c3,c4c_1, c_2, c_3, c_4 ಎಂದು ಲೆಕ್ಕಹಾಕಲಾಗುತ್ತದೆ:

c1=Base64[(b1>>2)]c_1 = \text{Base64}[(b_1 >> 2)]
c2=Base64[((b1&3)<<4)(b2>>4)]c_2 = \text{Base64}[((b_1 \& 3) << 4) | (b_2 >> 4)]
c3=Base64[((b2&15)<<2)(b3>>6)]c_3 = \text{Base64}[((b_2 \& 15) << 2) | (b_3 >> 6)]
c4=Base64[(b3&63)]c_4 = \text{Base64}[(b_3 \& 63)]

ಜಾಗದಲ್ಲಿ Base64[i]\text{Base64}[i] Base64 ಅಕ್ಷರಮಾಲೆಯ ii-ನೇ ಅಕ್ಷರವನ್ನು ಪ್ರತಿನಿಧಿಸುತ್ತದೆ.

ಡಿಕೋಡಿಂಗ್ ಪ್ರಕ್ರಿಯೆ

Base64 ಡಿಕೋಡಿಂಗ್ ಎನ್‌ಕೋಡಿಂಗ್ ಪ್ರಕ್ರಿಯೆಯನ್ನು ಹಿಂತಿರುಗಿಸುತ್ತದೆ:

  1. ಪ್ರತಿ Base64 ಅಕ್ಷರವನ್ನು ಅದರ 6-ಬಿಟ್ ಮೌಲ್ಯಕ್ಕೆ ಪರಿವರ್ತಿಸಿ
  2. ಈ 6-ಬಿಟ್ ಮೌಲ್ಯಗಳನ್ನು ಒಟ್ಟುಗೂಡಿಸಿ
  3. ಬಿಟ್‌ಗಳನ್ನು 8-ಬಿಟ್ ಗುಂಪುಗಳಲ್ಲಿ (ಬೈಟ್‌ಗಳು) ಗುಂಪು ಮಾಡಿ
  4. ಪ್ರತಿ ಬೈಟ್ ಅನ್ನು ಅದರ ಸಂಬಂಧಿತ ಅಕ್ಷರಕ್ಕೆ ಪರಿವರ್ತಿಸಿ

ಪ್ಯಾಡಿಂಗ್

ಎನ್‌ಕೋಡ್ ಮಾಡಲು ಬೈಟ್‌ಗಳ ಸಂಖ್ಯೆಯು 3 ರಿಂದ ಭಾಗಶಃ ಹಂಚಲಾಗದಾಗ, ಪ್ಯಾಡಿಂಗ್ ಅನ್ವಯಿಸಲಾಗುತ್ತದೆ:

  • ಒಂದು ಬೈಟ್ ಉಳಿದಾಗ, ಇದು ಎರಡು Base64 ಅಕ್ಷರಗಳಿಗೆ ಪರಿವರ್ತಿತವಾಗುತ್ತದೆ ಮತ್ತು "==" ಅನ್ನು ಅನುಸರಿಸುತ್ತದೆ
  • ಎರಡು ಬೈಟ್‌ಗಳು ಉಳಿದಾಗ, ಅವುಗಳನ್ನು ಮೂರು Base64 ಅಕ್ಷರಗಳಿಗೆ ಪರಿವರ್ತಿಸಲಾಗುತ್ತದೆ ಮತ್ತು "=" ಅನ್ನು ಅನುಸರಿಸುತ್ತದೆ

ಉದಾಹರಣೆ

"Hello" ಪಠ್ಯವನ್ನು Base64 ಗೆ ಎನ್‌ಕೋಡ್ ಮಾಡೋಣ:

  1. "Hello" ಯ ASCII ಪ್ರತಿನಿಧಿ: 72 101 108 108 111
  2. ಬೈನರಿ ಪ್ರತಿನಿಧಿ: 01001000 01100101 01101100 01101100 01101111
  3. 6-ಬಿಟ್ ಗುಂಪುಗಳಲ್ಲಿ ಗುಂಪು ಮಾಡುವುದು: 010010 000110 010101 101100 011011 000110 1111
  4. ಕೊನೆಯ ಗುಂಪು ಕೇವಲ 4 ಬಿಟ್‌ಗಳನ್ನು ಹೊಂದಿದೆ, ಆದ್ದರಿಂದ ಶೂನ್ಯಗಳನ್ನು ಪ್ಯಾಡಿಂಗ್ ಮಾಡಲಾಗುತ್ತದೆ: 010010 000110 010101 101100 011011 000110 111100
  5. ದಶಮಲವದಲ್ಲಿ ಪರಿವರ್ತಿಸುವುದು: 18, 6, 21, 44, 27, 6, 60
  6. Base64 ಅಕ್ಷರಮಾಲೆಯಲ್ಲಿ ಹುಡುಕುವುದು: S, G, V, s, b, G, 8
  7. ಫಲಿತಾಂಶ "SGVsbG8="

ನೋಡಿರಿ "=" ಪ್ಯಾಡಿಂಗ್ ಕೊನೆಯಲ್ಲಿ ಏಕೆಂದರೆ ಒಳನೋಡುವ ಉದ್ದ (5 ಬೈಟ್‌ಗಳು) 3 ರಿಂದ ಭಾಗಶಃ ಹಂಚಲಾಗುವುದಿಲ್ಲ.

ಸೂತ್ರ

Base64 ಎನ್‌ಕೋಡ್ ಮಾಡಿದ ಸ್ಟ್ರಿಂಗ್‌ನ ಉದ್ದವನ್ನು ಲೆಕ್ಕಹಾಕಲು ಸಾಮಾನ್ಯ ಸೂತ್ರವೆಂದರೆ:

encoded_length=4×input_length3\text{encoded\_length} = 4 \times \lceil \frac{\text{input\_length}}{3} \rceil

ಅಲ್ಲಿ x\lceil x \rceil ಮೇಲ್ಮಟ್ಟದ ಕಾರ್ಯವನ್ನು (ಹತ್ತಿರದ ಪೂರ್ಣಾಂಕಕ್ಕೆ ಮೇಲಕ್ಕೆ ವೃತ್ತಿಮಾಡುವುದು) ಪ್ರತಿನಿಧಿಸುತ್ತದೆ.

ಬಳಕೆದಾರಿಕೆಗಳು

Base64 ಎನ್‌ಕೋಡಿಂಗ್ ಹಲವಾರು ಅಪ್ಲಿಕೇಶನ್‌ಗಳಲ್ಲಿ ವ್ಯಾಪಕವಾಗಿ ಬಳಸಲಾಗುತ್ತದೆ:

  1. ಇಮೇಲ್ ಅಟ್ಯಾಚ್ಮೆಂಟ್‌ಗಳು: MIME (ಮಲ್ಟಿಪರ್ಪಸ್ ಇಂಟರ್ನೆಟ್ ಮೆಲ್ ಎಕ್ಸ್ಟೆನ್ಷನ್‌ಗಳು) ಇಮೇಲ್‌ನಲ್ಲಿ ಬೈನರಿ ಅಟ್ಯಾಚ್ಮೆಂಟ್‌ಗಳನ್ನು ಎನ್‌ಕೋಡ್ ಮಾಡಲು Base64 ಅನ್ನು ಬಳಸುತ್ತದೆ.

  2. ಡೇಟಾ URLಗಳು: HTML, CSS ಅಥವಾ JavaScript ನಲ್ಲಿ ನೇರವಾಗಿ ಸಣ್ಣ ಚಿತ್ರಗಳು, ಫಾಂಟುಗಳು ಅಥವಾ ಇತರ ಸಂಪತ್ತುಗಳನ್ನು ಸೇರಿಸುವುದು data: URL ಯೋಜನೆಯ ಬಳಕೆ.

  3. API ಸಂವಹನಗಳು: JSON ಪೇಲೋಡ್‌ಗಳಲ್ಲಿ ಅಥವಾ ಇತರ ಟೆಕ್ಸ್ಟ್ ಆಧಾರಿತ API ಫಾರ್ಮಾಟ್‌ಗಳಲ್ಲಿ ಬೈನರಿ ಡೇಟಾವನ್ನು ಸುರಕ್ಷಿತವಾಗಿ ಪ್ರಸಾರ ಮಾಡುವುದು.

  4. ಟೆಕ್ಸ್ಟ್ ಫಾರ್ಮಾಟ್‌ಗಳಲ್ಲಿ ಬೈನರಿ ಡೇಟಾವನ್ನು ಸಂಗ್ರಹಿಸುವುದು: ಬೈನರಿ ಡೇಟಾವನ್ನು XML, JSON ಅಥವಾ ಇತರ ಟೆಕ್ಸ್ಟ್ ಆಧಾರಿತ ಫಾರ್ಮಾಟ್‌ಗಳಲ್ಲಿ ಸಂಗ್ರಹಿಸಲು.

  5. ಪ್ರಮಾಣೀಕರಣ ವ್ಯವಸ್ಥೆಗಳು: HTTP ಯಲ್ಲಿನ ಬೇಸಿಕ್ ಪ್ರಮಾಣೀಕರಣ Base64 ಎನ್‌ಕೋಡಿಂಗ್ ಅನ್ನು ಬಳಸುತ್ತದೆ (ಆದರೆ ಇದು ಸುರಕ್ಷಿತತೆಗೆ ಅಲ್ಲ, ಕೇವಲ ಎನ್‌ಕೋಡಿಂಗ್‌ಗಾಗಿ).

  6. ಕ್ರಿಪ್ಟೋಗ್ರಫಿ: ಕೀಗಳು ಅಥವಾ ಪ್ರಮಾಣಪತ್ರಗಳನ್ನು ಎನ್‌ಕೋಡ್ ಮಾಡುವಾಗ ವಿವಿಧ ಕ್ರಿಪ್ಟೋಗ್ರಾಫಿಕ್ ಪ್ರೋಟೋಕಾಲ್‌ಗಳಲ್ಲಿ ಮತ್ತು ವ್ಯವಸ್ಥೆಗಳಲ್ಲಿ ಭಾಗವಾಗಿ.

  7. ಕುಕೀ ಮೌಲ್ಯಗಳು: ಕುಕೀಗಳಲ್ಲಿ ಸಂಗ್ರಹಿಸಲು ಸಂಕೀರ್ಣ ಡೇಟಾ ರಚನೆಗಳನ್ನು ಎನ್‌ಕೋಡ್ ಮಾಡುವುದು.

ಪರ್ಯಾಯಗಳು

Base64 ವ್ಯಾಪಕವಾಗಿ ಬಳಸಲಾಗುವಾಗ, ಕೆಲವು ನಿರ್ದಿಷ್ಟ ಪರಿಸ್ಥಿತಿಗಳಲ್ಲಿ ಹೆಚ್ಚು ಸೂಕ್ತವಾಗಿರುವ ಪರ್ಯಾಯಗಳು ಇವೆ:

  1. URL-ಸುರಕ್ಷಿತ Base64: URL ಎನ್‌ಕೋಡಿಂಗ್ ಸಮಸ್ಯೆಗಳನ್ನು ತಪ್ಪಿಸಲು "+" ಮತ್ತು "/" ಬದಲಾಗಿ "-" ಮತ್ತು "_" ಅನ್ನು ಬಳಸುವ ಪರ್ಯಾಯ. URLಗಳಲ್ಲಿ ಬಳಸಲು ಸೂಕ್ತ.

  2. Base32: 32-ಅಕ್ಷರಗಳ ಸೆಟ್ ಅನ್ನು ಬಳಸುತ್ತದೆ, ಇದು ಉದ್ದವನ್ನು ಹೆಚ್ಚು ಮಾಡುತ್ತದೆ ಆದರೆ ಉತ್ತಮ ಮಾನವ ಓದು ಮತ್ತು ಕೇಸ್ ಅಸ್ಪಷ್ಟತೆಗೆ ಹೊಂದಿಸುತ್ತದೆ.

  3. ಹೆಕ್ಸ್ ಎನ್‌ಕೋಡಿಂಗ್: ಸರಳವಾಗಿ ಹೆಕ್ಸಾಡೆಸಿಮಲ್ ಗೆ ಪರಿವರ್ತನೆ, ಇದು ಕಡಿಮೆ ಪರಿಣಾಮಕಾರಿಯಾಗಿದೆ (ಉದ್ದವನ್ನು ದ್ವಿಗುಣಿಸುತ್ತದೆ) ಆದರೆ ಬಹಳ ಸರಳ ಮತ್ತು ವ್ಯಾಪಕವಾಗಿ ಬೆಂಬಲಿತವಾಗಿದೆ.

  4. ಬೈನರಿ ಪ್ರಸಾರ: ದೊಡ್ಡ ಫೈಲ್‌ಗಳಿಗೆ ಅಥವಾ ಕಾರ್ಯಕ್ಷಮತೆಯು ಪ್ರಮುಖವಾದಾಗ, ಸೂಕ್ತ ವಿಷಯ-ಪ್ರಕಾರ ಹೆಡರ್‌ಗಳನ್ನು ಹೊಂದಿರುವ HTTP ನಂತಹ ನೇರ ಬೈನರಿ ಪ್ರಸಾರ ಪ್ರೋಟೋಕಾಲ್‌ಗಳನ್ನು ಬಳಸುವುದು ಉತ್ತಮ.

  5. ಕೋಷ್ಟಕ + Base64: ದೊಡ್ಡ ಪಠ್ಯ ಡೇಟಾ, ಎನ್‌ಕೋಡಿಂಗ್‌ಗಾಗಿ ಮೊದಲು ಸಂಕೋಚನ ಮಾಡುವುದರಿಂದ ಉದ್ದದ ಹೆಚ್ಚಳವನ್ನು ಕಡಿಮೆ ಮಾಡಬಹುದು.

  6. JSON/XML Serialization: ರಚಿತ ಡೇಟಾ, Base64 ಎನ್‌ಕೋಡಿಂಗ್‌ಗಿಂತ ಮೂಲ JSON ಅಥವಾ XML serialization ಬಳಸುವುದು ಹೆಚ್ಚು ಸೂಕ್ತವಾಗಿರಬಹುದು.

ಇತಿಹಾಸ

Base64 ಎನ್‌ಕೋಡಿಂಗ್ ಪ್ರಾರಂಭದಲ್ಲಿ ಕಂಪ್ಯೂಟಿಂಗ್ ಮತ್ತು ದೂರಸಂಪರ್ಕ ವ್ಯವಸ್ಥೆಗಳಲ್ಲಿ ಬೈನರಿ ಡೇಟಾವನ್ನು ಪಠ್ಯಕ್ಕಾಗಿ ವಿನ್ಯಾಸಗೊಳಿಸಿದಾಗ ಹುಟ್ಟಿತು.

Base64 ನ ಅಧಿಕೃತ ನಿರ್ದಿಷ್ಟತೆ ಮೊದಲ ಬಾರಿಗೆ 1987 ರಲ್ಲಿ RFC 989 ರ ಭಾಗವಾಗಿ ಪ್ರಕಟಿಸಲಾಯಿತು, ಇದು ಪ್ರೈವೆಸಿ ಎನ್‌ಹಾನ್ಸ್‌ಡ್ ಮೆಲ್ (PEM) ಅನ್ನು ವ್ಯಾಖ್ಯಾನಿಸುತ್ತಿತ್ತು. ಇದನ್ನು ನಂತರ RFC 1421 (1993) ಮತ್ತು RFC 2045 (1996, MIME ಯ ಭಾಗವಾಗಿ) ನಲ್ಲಿ ನವೀಕರಿಸಲಾಯಿತು.

"Base64" ಪದವು ಬೈನರಿ ಡೇಟಾವನ್ನು ಪ್ರತಿನಿಧಿಸಲು 64 ವಿಭಿನ್ನ ASCII ಅಕ್ಷರಗಳನ್ನು ಬಳಸುವಂತೆ ಬಂದಿದೆ. ಈ 64 ಅಕ್ಷರಗಳ ಆಯ್ಕೆ ಉದ್ದೇಶಿತವಾಗಿತ್ತು, ಏಕೆಂದರೆ 64 2 ಯ ಶಕ್ತಿ (2^6) ಆಗಿದ್ದು, ಇದು ಬೈನರಿ ಮತ್ತು Base64 ನಡುವಿನ ಪರಿವರ್ತನೆಯನ್ನು ಪರಿಣಾಮಕಾರಿಯಾಗಿ ಮಾಡುತ್ತದೆ.

ಕಾಲಕ್ರಮೇಣ, Base64 ನ ಹಲವಾರು ಪರ್ಯಾಯಗಳು ಉಂಟಾದವು:

  • ಮಾದರಿ Base64: RFC 4648 ನಲ್ಲಿ ವ್ಯಾಖ್ಯಾನಿತ, A-Z, a-z, 0-9, +, / ಮತ್ತು = ಅನ್ನು ಪ್ಯಾಡಿಂಗ್‌ಗಾಗಿ ಬಳಸುತ್ತದೆ
  • URL-ಸುರಕ್ಷಿತ Base64: URL ಎನ್‌ಕೋಡಿಂಗ್ ಸಮಸ್ಯೆಗಳನ್ನು ತಪ್ಪಿಸಲು "-" ಮತ್ತು "_" ಅನ್ನು ಬಳಸುತ್ತದೆ
  • ಫೈಲ್‌ನಾಮ್-ಸುರಕ್ಷಿತ Base64: ಫೈಲ್‌ಗಳಲ್ಲಿ ಬಳಸಲು ವಿನ್ಯಾಸಗೊಳಿತ, URL-ಸುರಕ್ಷಿತದ ಹೋಲಿಸುತ್ತವೆ
  • IMAP ಗೆ ಪರಿಷ್ಕೃತ Base64: IMAP ಪ್ರೋಟೋಕಾಲ್‌ನಲ್ಲಿ ವಿಭಿನ್ನ ವಿಶೇಷ ಅಕ್ಷರಗಳೊಂದಿಗೆ ಬಳಸಲಾಗುತ್ತದೆ

ಮೂರು ದಶಕಗಳ ನಂತರ, Base64 ಆಧುನಿಕ ಕಂಪ್ಯೂಟಿಂಗ್‌ನಲ್ಲಿ ಮೂಲಭೂತ ಸಾಧನವಾಗಿ ಉಳಿಯುತ್ತದೆ, ವಿಶೇಷವಾಗಿ ವೆಬ್ ಅಪ್ಲಿಕೇಶನ್‌ಗಳು ಮತ್ತು JSON ನಂತಹ ಟೆಕ್ಸ್ಟ್ ಆಧಾರಿತ ಡೇಟಾ ಫಾರ್ಮಾಟ್‌ಗಳಿಗೆ ಹೆಚ್ಚು ಅವಲಂಬಿತವಾಗಿರುವಾಗ.

ಕೋಡ್ ಉದಾಹರಣೆಗಳು

ನೀವು ವಿವಿಧ ಪ್ರೋಗ್ರಾಮಿಂಗ್ ಭಾಷೆಗಳಲ್ಲಿ Base64 ಎನ್‌ಕೋಡಿಂಗ್ ಮತ್ತು ಡಿಕೋಡಿಂಗ್ ನ ಉದಾಹರಣೆಗಳನ್ನು ಇಲ್ಲಿ ನೀಡಲಾಗಿದೆ:

// ಜಾವಾಸ್ಕ್ರಿಪ್ಟ್ Base64 ಎನ್‌ಕೋಡಿಂಗ್/ಡಿಕೋಡಿಂಗ್
function encodeToBase64(text) {
  return btoa(text);
}

function decodeFromBase64(base64String) {
  try {
    return atob(base64String);
  } catch (e) {
    throw new Error("ಅಮಾನ್ಯ Base64 ಸ್ಟ್ರಿಂಗ್");
  }
}

// ಉದಾಹರಣೆ ಬಳಕೆ
const originalText = "Hello, World!";
const encoded = encodeToBase64(originalText);
console.log("ಎನ್‌ಕೋಡ್ ಮಾಡಿದ:", encoded);  // SGVsbG8sIFdvcmxkIQ==

try {
  const decoded = decodeFromBase64(encoded);
  console.log("ಡಿಕೋಡ್ ಮಾಡಿದ:", decoded);  // Hello, World!
} catch (error) {
  console.error(error.message);
}
# ಪೈಥಾನ್ Base64 ಎನ್‌ಕೋಡಿಂಗ್/ಡಿಕೋಡಿಂಗ್
import base64

def encode_to_base64(text):
    # ಸ್ಟ್ರಿಂಗ್ ಅನ್ನು ಬೈಟ್ಸ್ ಗೆ ಪರಿವರ್ತಿಸಿ ಮತ್ತು ನಂತರ ಎನ್‌ಕೋಡ್ ಮಾಡಿ
    text_bytes = text.encode('utf-8')
    base64_bytes = base64.b64encode(text_bytes)
    return base64_bytes.decode('utf-8')

def decode_from_base64(base64_string):
    try:
        # Base64 ಸ್ಟ್ರಿಂಗ್ ಅನ್ನು ಬೈಟ್ಸ್ ಗೆ ಪರಿವರ್ತಿಸಿ ಮತ್ತು ನಂತರ ಡಿಕೋಡ್ ಮಾಡಿ
        base64_bytes = base64_string.encode('utf-8')
        text_bytes = base64.b64decode(base64_bytes)
        return text_bytes.decode('utf-8')
    except Exception as e:
        raise ValueError(f"ಅಮಾನ್ಯ Base64 ಸ್ಟ್ರಿಂಗ್: {e}")

# ಉದಾಹರಣೆ ಬಳಕೆ
original_text = "Hello, World!"
encoded = encode_to_base64(original_text)
print(f"ಎನ್‌ಕೋಡ್ ಮಾಡಿದ: {encoded}")  # SGVsbG8sIFdvcmxkIQ==

try:
    decoded = decode_from_base64(encoded)
    print(f"ಡಿಕೋಡ್ ಮಾಡಿದ: {decoded}")  # Hello, World!
except ValueError as e:
    print(e)
// ಜಾವಾ Base64 ಎನ್‌ಕೋಡಿಂಗ್/ಡಿಕೋಡಿಂಗ್
import java.util.Base64;
import java.nio.charset.StandardCharsets;

public class Base64Example {
    public static String encodeToBase64(String text) {
        byte[] textBytes = text.getBytes(StandardCharsets.UTF_8);
        byte[] encodedBytes = Base64.getEncoder().encode(textBytes);
        return new String(encodedBytes, StandardCharsets.UTF_8);
    }
    
    public static String decodeFromBase64(String base64String) {
        try {
            byte[] base64Bytes = base64String.getBytes(StandardCharsets.UTF_8);
            byte[] decodedBytes = Base64.getDecoder().decode(base64Bytes);
            return new String(decodedBytes, StandardCharsets.UTF_8);
        } catch (IllegalArgumentException e) {
            throw new IllegalArgumentException("ಅಮಾನ್ಯ Base64 ಸ್ಟ್ರಿಂಗ್: " + e.getMessage());
        }
    }
    
    public static void main(String[] args) {
        String originalText = "Hello, World!";
        String encoded = encodeToBase64(originalText);
        System.out.println("ಎನ್‌ಕೋಡ್ ಮಾಡಿದ: " + encoded);  // SGVsbG8sIFdvcmxkIQ==
        
        try {
            String decoded = decodeFromBase64(encoded);
            System.out.println("ಡಿಕೋಡ್ ಮಾಡಿದ: " + decoded);  // Hello, World!
        } catch (IllegalArgumentException e) {
            System.err.println(e.getMessage());
        }
    }
}
<?php
// PHP Base64 ಎನ್‌ಕೋಡಿಂಗ್/ಡಿಕೋಡಿಂಗ್
function encodeToBase64($text) {
    return base64_encode($text);
}

function decodeFromBase64($base64String) {
    $decoded = base64_decode($base64String, true);
    if ($decoded === false) {
        throw new Exception("ಅಮಾನ್ಯ Base64 ಸ್ಟ್ರಿಂಗ್");
    }
    return $decoded;
}

// ಉದಾಹರಣೆ ಬಳಕೆ
$originalText = "Hello, World!";
$encoded = encodeToBase64($originalText);
echo "ಎನ್‌ಕೋಡ್ ಮಾಡಿದ: " . $encoded . "\n";  // SGVsbG8sIFdvcmxkIQ==

try {
    $decoded = decodeFromBase64($encoded);
    echo "ಡಿಕೋಡ್ ಮಾಡಿದ: " . $decoded . "\n";  // Hello, World!
} catch (Exception $e) {
    echo "ದೋಷ: " . $e->getMessage() . "\n";
}
?>
// C# Base64 ಎನ್‌ಕೋಡಿಂಗ್/ಡಿಕೋಡಿಂಗ್
using System;
using System.Text;

class Base64Example
{
    public static string EncodeToBase64(string text)
    {
        byte[] textBytes = Encoding.UTF8.GetBytes(text);
        return Convert.ToBase64String(textBytes);
    }
    
    public static string DecodeFromBase64(string base64String)
    {
        try
        {
            byte[] base64Bytes = Convert.FromBase64String(base64String);
            return Encoding.UTF8.GetString(base64Bytes);
        }
        catch (FormatException)
        {
            throw new FormatException("ಅಮಾನ್ಯ Base64 ಸ್ಟ್ರಿಂಗ್");
        }
    }
    
    static void Main()
    {
        string originalText = "Hello, World!";
        string encoded = EncodeToBase64(originalText);
        Console.WriteLine($"ಎನ್‌ಕೋಡ್ ಮಾಡಿದ: {encoded}");  // SGVsbG8sIFdvcmxkIQ==
        
        try
        {
            string decoded = DecodeFromBase64(encoded);
            Console.WriteLine($"ಡಿಕೋಡ್ ಮಾಡಿದ: {decoded}");  // Hello, World!
        }
        catch (FormatException e)
        {
            Console.WriteLine($"ದೋಷ: {e.Message}");
        }
    }
}
# ರೂಬಿ Base64 ಎನ್‌ಕೋಡಿಂಗ್/ಡಿಕೋಡಿಂಗ್
require 'base64'

def encode_to_base64(text)
  Base64.strict_encode64(text)
end

def decode_from_base64(base64_string)
  begin
    Base64.strict_decode64(base64_string)
  rescue ArgumentError => e
    raise "ಅಮಾನ್ಯ Base64 ಸ್ಟ್ರಿಂಗ್: #{e.message}"
  end
end

# ಉದಾಹರಣೆ ಬಳಕೆ
original_text = "Hello, World!"
encoded = encode_to_base64(original_text)
puts "ಎನ್‌ಕೋಡ್ ಮಾಡಿದ: #{encoded}"  # SGVsbG8sIFdvcmxkIQ==

begin
  decoded = decode_from_base64(encoded)
  puts "ಡಿಕೋಡ್ ಮಾಡಿದ: #{decoded}"  # Hello, World!
rescue StandardError => e
  puts "ದೋಷ: #{e.message}"
end
// ಗೋ Base64 ಎನ್‌ಕೋಡಿಂಗ್/ಡಿಕೋಡಿಂಗ್
package main

import (
    "encoding/base64"
    "fmt"
)

func encodeToBase64(text string) string {
    return base64.StdEncoding.EncodeToString([]byte(text))
}

func decodeFromBase64(base64String string) (string, error) {
    bytes, err := base64.StdEncoding.DecodeString(base64String)
    if err != nil {
        return "", fmt.Errorf("ಅಮಾನ್ಯ Base64 ಸ್ಟ್ರಿಂಗ್: %v", err)
    }
    return string(bytes), nil
}

func main() {
    originalText := "Hello, World!"
    encoded := encodeToBase64(originalText)
    fmt.Println("ಎನ್‌ಕೋಡ್ ಮಾಡಿದ:", encoded)  // SGVsbG8sIFdvcmxkIQ==
    
    decoded, err := decodeFromBase64(encoded)
    if err != nil {
        fmt.Println("ದೋಷ:", err)
    } else {
        fmt.Println("ಡಿಕೋಡ್ ಮಾಡಿದ:", decoded)  // Hello, World!
    }
}
// ಸ್ವಿಫ್ಟ್ Base64 ಎನ್‌ಕೋಡಿಂಗ್/ಡಿಕೋಡಿಂಗ್
import Foundation

func encodeToBase64(_ text: String) -> String? {
    if let data = text.data(using: .utf8) {
        return data.base64EncodedString()
    }
    return nil
}

func decodeFromBase64(_ base64String: String) -> String? {
    if let data = Data(base64Encoded: base64String) {
        return String(data: data, encoding: .utf8)
    }
    return nil
}

// ಉದಾಹರಣೆ ಬಳಕೆ
let originalText = "Hello, World!"
if let encoded = encodeToBase64(originalText) {
    print("ಎನ್‌ಕೋಡ್ ಮಾಡಿದ: \(encoded)")  // SGVsbG8sIFdvcmxkIQ==
    
    if let decoded = decodeFromBase64(encoded) {
        print("ಡಿಕೋಡ್ ಮಾಡಿದ: \(decoded)")  // Hello, World!
    } else {
        print("ದೋಷ: Base64 ಸ್ಟ್ರಿಂಗ್ ಅನ್ನು ಡಿಕೋಡ್ ಮಾಡಲು ಸಾಧ್ಯವಾಗಲಿಲ್ಲ")
    }
} else {
    print("ದೋಷ: ಪಠ್ಯವನ್ನು ಎನ್‌ಕೋಡ್ ಮಾಡಲು ಸಾಧ್ಯವಾಗಲಿಲ್ಲ")
}
' Excel VBA Base64 ಎನ್‌ಕೋಡಿಂಗ್/ಡಿಕೋಡಿಂಗ್
' ಗಮನಿಸಿ: ಇದು Microsoft XML, v6.0 ಗೆ ಉಲ್ಲೇಖವನ್ನು ಅಗತ್ಯವಿದೆ
Function EncodeToBase64(text As String) As String
    Dim xmlObj As Object
    Set xmlObj = CreateObject("MSXML2.DOMDocument")
    
    Dim xmlNode As Object
    Set xmlNode = xmlObj.createElement("b64")
    
    xmlNode.DataType = "bin.base64"
    xmlNode.nodeTypedValue = StrConv(text, vbFromUnicode)
    
    EncodeToBase64 = xmlNode.text
    
    Set xmlNode = Nothing
    Set xmlObj = Nothing
End Function

Function DecodeFromBase64(base64String As String) As String
    On Error GoTo ErrorHandler
    
    Dim xmlObj As Object
    Set xmlObj = CreateObject("MSXML2.DOMDocument")
    
    Dim xmlNode As Object
    Set xmlNode = xmlObj.createElement("b64")
    
    xmlNode.DataType = "bin.base64"
    xmlNode.text = base64String
    
    DecodeFromBase64 = StrConv(xmlNode.nodeTypedValue, vbUnicode)
    
    Set xmlNode = Nothing
    Set xmlObj = Nothing
    Exit Function
    
ErrorHandler:
    DecodeFromBase64 = "ದೋಷ: ಅಮಾನ್ಯ Base64 ಸ್ಟ್ರಿಂಗ್"
End Function

' ಕಾರ್ಯಪಟದಲ್ಲಿ ಬಳಕೆ:
' =EncodeToBase64("Hello, World!")
' =DecodeFromBase64("SGVsbG8sIFdvcmxkIQ==")
# R Base64 ಎನ್‌ಕೋಡಿಂಗ್/ಡಿಕೋಡಿಂಗ್
# 'base64enc' ಪ್ಯಾಕೇಜ್ ಅಗತ್ಯವಿದೆ
# install.packages("base64enc")
library(base64enc)

encode_to_base64 <- function(text) {
  # ಪಠ್ಯವನ್ನು ಕಚ್ಚಾ ಬೈಟ್ಸ್ ಗೆ ಪರಿವರ್ತಿಸಿ, ನಂತರ ಎನ್‌ಕೋಡ್ ಮಾಡಿ
  text_raw <- charToRaw(text)
  base64_encoded <- base64encode(text_raw)
  return(rawToChar(base64_encoded))
}

decode_from_base64 <- function(base64_string) {
  tryCatch({
    # Base64 ಸ್ಟ್ರಿಂಗ್ ಅನ್ನು ಕಚ್ಚಾ, ನಂತರ ಡಿಕೋಡ್ ಮಾಡಿ
    base64_raw <- charToRaw(base64_string)
    decoded_raw <- base64decode(base64_raw)
    return(rawToChar(decoded_raw))
  }, error = function(e) {
    stop(paste("ಅಮಾನ್ಯ Base64 ಸ್ಟ್ರಿಂಗ್:", e$message))
  })
}

# ಉದಾಹರಣೆ ಬಳಕೆ
original_text <- "Hello, World!"
encoded <- encode_to_base64(original_text)
cat("ಎನ್‌ಕೋಡ್ ಮಾಡಿದ:", encoded, "\n")  # SGVsbG8sIFdvcmxkIQ==

tryCatch({
  decoded <- decode_from_base64(encoded)
  cat("ಡಿಕೋಡ್ ಮಾಡಿದ:", decoded, "\n")  # Hello, World!
}, error = function(e) {
  cat("ದೋಷ:", e$message, "\n")
})
% MATLAB Base64 ಎನ್‌ಕೋಡಿಂಗ್/ಡಿಕೋಡಿಂಗ್
function demo_base64()
    originalText = 'Hello, World!';
    
    % ಎನ್‌ಕೋಡ್
    encoded = encode_to_base64(originalText);
    fprintf('ಎನ್‌ಕೋಡ್ ಮಾಡಿದ: %s\n', encoded);  % SGVsbG8sIFdvcmxkIQ==
    
    % ಡಿಕೋಡ್
    try
        decoded = decode_from_base64(encoded);
        fprintf('ಡಿಕೋಡ್ ಮಾಡಿದ: %s\n', decoded);  % Hello, World!
    catch e
        fprintf('ದೋಷ: %s\n', e.message);
    end
end

function encoded = encode_to_base64(text)
    % ಪಠ್ಯವನ್ನು uint8 ಅರೆ ಮತ್ತು ಎನ್‌ಕೋಡ್ ಮಾಡಿ
    bytes = uint8(text);
    encoded = base64encode(bytes);
end

function decoded = decode_from_base64(base64String)
    try
        % Base64 ಸ್ಟ್ರಿಂಗ್ ಅನ್ನು uint8 ಅರೆಗೆ ಡಿಕೋಡ್ ಮಾಡಿ
        bytes = base64decode(base64String);
        decoded = char(bytes);
    catch
        error('ಅಮಾನ್ಯ Base64 ಸ್ಟ್ರಿಂಗ್');
    end
end
// C Base64 ಎನ್‌ಕೋಡಿಂಗ್/ಡಿಕೋಡಿಂಗ್ OpenSSL ಬಳಸಿಕೊಂಡು
#include <stdio.h>
#include <string.h>
#include <openssl/bio.h>
#include <openssl/evp.h>
#include <openssl/buffer.h>
#include <stdint.h>

char* encode_to_base64(const char* input) {
    BIO *bio, *b64;
    BUF_MEM *bufferPtr;
    
    b64 = BIO_new(BIO_f_base64());
    bio = BIO_new(BIO_s_mem());
    bio = BIO_push(b64, bio);
    
    BIO_set_flags(bio, BIO_FLAGS_BASE64_NO_NL);
    BIO_write(bio, input, strlen(input));
    BIO_flush(bio);
    BIO_get_mem_ptr(bio, &bufferPtr);
    
    char* result = (char*)malloc(bufferPtr->length + 1);
    memcpy(result, bufferPtr->data, bufferPtr->length);
    result[bufferPtr->length] = '\0';
    
    BIO_free_all(bio);
    
    return result;
}

char* decode_from_base64(const char* input) {
    BIO *bio, *b64;
    size_t length = strlen(input);
    char* buffer = (char*)malloc(length);
    
    b64 = BIO_new(BIO_f_base64());
    bio = BIO_new_mem_buf(input, -1);
    bio = BIO_push(b64, bio);
    
    BIO_set_flags(bio, BIO_FLAGS_BASE64_NO_NL);
    int decoded_length = BIO_read(bio, buffer, length);
    
    if (decoded_length <= 0) {
        free(buffer);
        BIO_free_all(bio);
        return NULL; // ಅಮಾನ್ಯ Base64 ಇನ್ಪುಟ್
    }
    
    buffer[decoded_length] = '\0';
    
    BIO_free_all(bio);
    
    return buffer;
}

int main() {
    const char* original_text = "Hello, World!";
    
    char* encoded = encode_to_base64(original_text);
    printf("ಎನ್‌ಕೋಡ್ ಮಾಡಿದ: %s\n", encoded);  // SGVsbG8sIFdvcmxkIQ==
    
    char* decoded = decode_from_base64(encoded);
    if (decoded) {
        printf("ಡಿಕೋಡ್ ಮಾಡಿದ: %s\n", decoded);  // Hello, World!
        free(decoded);
    } else {
        printf("ದೋಷ: ಅಮಾನ್ಯ Base64 ಸ್ಟ್ರಿಂಗ್\n");
    }
    
    free(encoded);
    
    return 0;
}
// ರಸ್ಟ್ Base64 ಎನ್‌ಕೋಡಿಂಗ್/ಡಿಕೋಡಿಂಗ್
use base64::{encode, decode};
use std::str;

fn encode_to_base64(text: &str) -> String {
    encode(text)
}

fn decode_from_base64(base64_string: &str) -> Result<String, String> {
    match decode(base64_string) {
        Ok(bytes) => {
            match str::from_utf8(&bytes) {
                Ok(text) => Ok(text.to_string()),
                Err(e) => Err(format!("ಅಮಾನ್ಯ UTF-8 ಕ್ರಮ: {}", e))
            }
        },
        Err(e) => Err(format!("ಅಮಾನ್ಯ Base64 ಸ್ಟ್ರಿಂಗ್: {}", e))
    }
}

fn main() {
    let original_text = "Hello, World!";
    let encoded = encode_to_base64(original_text);
    println!("ಎನ್‌ಕೋಡ್ ಮಾಡಿದ: {}", encoded);  // SGVsbG8sIFdvcmxkIQ==
    
    match decode_from_base64(&encoded) {
        Ok(decoded) => println!("ಡಿಕೋಡ್ ಮಾಡಿದ: {}", decoded),  // Hello, World!
        Err(e) => println!("ದೋಷ: {}", e)
    }
}

ತೀವ್ರ ಪ್ರಕರಣಗಳು ಮತ್ತು ಪರಿಗಣನೆಗಳು

Base64 ಎನ್‌ಕೋಡಿಂಗ್ ಮತ್ತು ಡಿಕೋಡಿಂಗ್ ಕಾರ್ಯನಿರ್ವಹಿಸುವಾಗ, ಈ ಪ್ರಮುಖ ಪರಿಗಣನೆಗಳನ್ನು ಗಮನದಲ್ಲಿಟ್ಟುಕೊಳ್ಳಿ:

  1. ಯೂನಿಕೋಡ್ ಮತ್ತು ಅನ್-ASCII ಅಕ್ಷರಗಳು: ಅನ್-ASCII ಅಕ್ಷರಗಳನ್ನು ಹೊಂದಿರುವ ಪಠ್ಯವನ್ನು ಎನ್‌ಕೋಡ್ ಮಾಡುವಾಗ, Base64 ಎನ್‌ಕೋಡಿಂಗ್‌ಗಿಂತ ಮುಂಚೆ ಸರಿಯಾದ ಅಕ್ಷರ ಎನ್‌ಕೋಡಿಂಗ್ (ಸಾಮಾನ್ಯವಾಗಿ UTF-8) ಖಚಿತಪಡಿಸಿಕೊಳ್ಳಿ.

  2. ಪ್ಯಾಡಿಂಗ್: ಪ್ರಮಾಣಿತ Base64 4 ರ ಉದ್ದವನ್ನು ಖಚಿತಪಡಿಸಲು "=" ಅಕ್ಷರಗಳಿಂದ ಪ್ಯಾಡಿಂಗ್ ಅನ್ನು ಬಳಸುತ್ತದೆ. ಕೆಲವು ಕಾರ್ಯಗತಗೊಳಣೆಗಳು ಪ್ಯಾಡಿಂಗ್ ಅನ್ನು ಹೊರತುಪಡಿಸಲು ಅನುಮತಿಸುತ್ತವೆ, ಇದು ಹೊಂದಾಣಿಕೆ ಸಮಸ್ಯೆಗಳನ್ನು ಉಂಟುಮಾಡಬಹುದು.

  3. ರೇಖಾ ಬ್ರೇಕ್‌ಗಳು: ಪರಂಪರಾ Base64 ಕಾರ್ಯಗತಗೊಳಣೆಗಳು ಓದುಗರಿಗೆ readabilityಗಾಗಿ (ಸಾಮಾನ್ಯವಾಗಿ 76 ಅಕ್ಷರಗಳಲ್ಲಿ) ರೇಖಾ ಬ್ರೇಕ್‌ಗಳನ್ನು ಸೇರಿಸುತ್ತವೆ, ಆದರೆ ಆಧುನಿಕ ಅಪ್ಲಿಕೇಶನ್‌ಗಳು ಸಾಮಾನ್ಯವಾಗಿ ಇವುಗಳನ್ನು ಹೊರತುಪಡಿಸುತ್ತವೆ.

  4. URL-ಸುರಕ್ಷಿತ Base64: ಪ್ರಮಾಣಿತ Base64 "+" ಮತ್ತು "/" ಅಕ್ಷರಗಳನ್ನು ಬಳಸುತ್ತದೆ, ಇದು URLಗಳಲ್ಲಿ ವಿಶೇಷ ಅರ್ಥವನ್ನು ಹೊಂದಿದೆ. URL ಸಂದರ್ಭಗಳಲ್ಲಿ, URL-ಸುರಕ್ಷಿತ Base64 ಅನ್ನು ಬಳಸುವುದು ಉತ್ತಮ, ಇದು ಇವುಗಳನ್ನು "-" ಮತ್ತು "_" ಗೆ ಬದಲಾಯಿಸುತ್ತದೆ.

  5. ಅತಿರಿಕ್ತ ಸ್ಥಳ: ಡಿಕೋಡಿಂಗ್ ಮಾಡುವಾಗ, ಕೆಲವು ಕಾರ್ಯಗತಗೊಳಣೆಗಳು ಶ್ರೇಣೀಬದ್ಧವಾದ ಮತ್ತು ಅತಿರಿಕ್ತ ಸ್ಥಳವನ್ನು ನಿರ್ಲಕ್ಷಿಸುತ್ತವೆ, ಇತರವು ನಿಖರವಾದ ಇನ್ಪುಟ್ ಅನ್ನು ಅಗತ್ಯವಿದೆ.

  6. ಗಾತ್ರದ ಹೆಚ್ಚಳ: Base64 ಎನ್‌ಕೋಡಿಂಗ್ ಡೇಟಾದ ಗಾತ್ರವನ್ನು ಸುಮಾರು 33% ಹೆಚ್ಚಿಸುತ್ತದೆ (3 ಇನ್ಪುಟ್ ಬೈಟ್‌ಗಳಿಗೆ 4 ಔಟ್‌ಪುಟ್ ಬೈಟ್‌ಗಳು).

  7. ಕಾರ್ಯಕ್ಷಮತೆ: Base64 ಎನ್‌ಕೋಡಿಂಗ್/ಡಿಕೋಡಿಂಗ್ ಬಹಳ ದೊಡ್ಡ ಡೇಟಾ ಹೊಂದಿರುವಾಗ ಗಣಿತೀಯವಾಗಿ ತೀವ್ರವಾಗಿರಬಹುದು. ದೊಡ್ಡ ಫೈಲ್‌ಗಳಿಗಾಗಿ ಸ್ಟ್ರೀಮಿಂಗ್ ವಿಧಾನಗಳನ್ನು ಪರಿಗಣಿಸಿ.

ಉಲ್ಲೇಖಗಳು

  1. RFC 4648 - The Base16, Base32, and Base64 Data Encodings
  2. RFC 2045 - MIME Part One: Format of Internet Message Bodies
  3. MDN ವೆಬ್ ಡಾಕ್ಸ್: Base64 ಎನ್‌ಕೋಡಿಂಗ್ ಮತ್ತು ಡಿಕೋಡಿಂಗ್
  4. Base64 - ವಿಕಿಪೀಡಿಯಾ
  5. MIME - ವಿಕಿಪೀಡಿಯಾ
Feedback