Base64 사용법 가이드

프로그래밍 언어별 Base64 사용법

JavaScript

인코딩:

const text = "Hello, World!";
const encoded = btoa(text);
console.log(encoded); // SGVsbG8sIFdvcmxkIQ==

디코딩:

const encoded = "SGVsbG8sIFdvcmxkIQ==";
const decoded = atob(encoded);
console.log(decoded); // Hello, World!

Python

인코딩:

import base64

text = "Hello, World!"
encoded = base64.b64encode(text.encode('utf-8'))
print(encoded.decode('utf-8'))  # SGVsbG8sIFdvcmxkIQ==

디코딩:

import base64

encoded = "SGVsbG8sIFdvcmxkIQ=="
decoded = base64.b64decode(encoded)
print(decoded.decode('utf-8'))  # Hello, World!

Java

인코딩:

import java.util.Base64;

String text = "Hello, World!";
String encoded = Base64.getEncoder()
    .encodeToString(text.getBytes("UTF-8"));
System.out.println(encoded); // SGVsbG8sIFdvcmxkIQ==

디코딩:

import java.util.Base64;

String encoded = "SGVsbG8sIFdvcmxkIQ==";
String decoded = new String(
    Base64.getDecoder().decode(encoded), "UTF-8");
System.out.println(decoded); // Hello, World!

실제 활용 사례

이메일 첨부파일

이메일 프로토콜은 텍스트만 지원하므로 바이너리 파일을 Base64로 인코딩하여 전송합니다.

웹 API

JSON에서 바이너리 데이터를 포함할 때 Base64 인코딩을 사용합니다.

JWT 토큰

JSON Web Token의 페이로드와 서명을 Base64로 인코딩합니다.

데이터 URI

이미지나 파일을 HTML/CSS에 직접 삽입할 때 사용합니다.

단계별 튜토리얼

1단계: 텍스트 인코딩

"Hello, World!"를 Base64로 인코딩해보세요.

결과: SGVsbG8sIFdvcmxkIQ==

2단계: URL-safe 인코딩

URL에서 사용할 수 있도록 +와 /를 -와 _로 대체합니다.

결과: SGVsbG8sIFdvcmxkIQ

3단계: 디코딩

인코딩된 문자열을 다시 원본 텍스트로 변환합니다.

결과: Hello, World!

주의사항 및 팁

⚠️ 중요 주의사항

  • • Base64는 암호화가 아니므로 민감한 정보 보호에는 사용하지 마세요
  • • 인코딩된 데이터는 원본보다 약 33% 크기가 증가합니다
  • • 대용량 파일은 Base64 변환 시 성능 저하가 발생할 수 있습니다
  • • URL에서 사용할 때는 URL-safe Base64를 사용하세요

💡 유용한 팁

  • • Base64 Hub의 실시간 변환 기능을 활용하여 빠르게 확인하세요
  • • 변환 히스토리를 활용하여 자주 사용하는 데이터를 저장하세요
  • • 고급 옵션을 사용하여 패딩 제거, 줄바꿈 제거 등을 설정하세요
  • • 다양한 문자 인코딩(UTF-8, EUC-KR)을 지원하므로 적절히 선택하세요