🔤 Base64 인코더/디코더
텍스트를 Base64로 인코딩하거나 디코딩합니다
Base64 인코딩/디코딩이란?
왜 필요한가요?
Base64는 바이너리 데이터를 텍스트 형식으로 변환하는 인코딩 방식입니다. 이메일, JSON, XML 등 텍스트만 허용하는 시스템에서 이미지, 파일 등의 바이너리 데이터를 안전하게 전송하기 위해 사용됩니다.
특히 웹 개발에서 이미지를 Data URL로 포함하거나, API 인증 헤더(Basic Auth), JWT 토큰 등에서 Base64 인코딩이 널리 사용됩니다.
언제 사용하나요?
- 이미지 임베딩: HTML/CSS에서 작은 이미지를 Data URL로 직접 포함
- API 인증: HTTP Basic Authentication 헤더 값 확인
- 데이터 전송: JSON API에서 바이너리 데이터를 텍스트로 변환하여 전송
- 디버깅: Base64로 인코딩된 데이터의 원본 내용 확인
- URL 안전: 특수문자가 포함된 데이터를 URL에 안전하게 포함
실무 사용 예시
예시 1: HTTP Basic Authentication 헤더 확인
Authorization: Basic dXNlcjpwYXNzd29yZA==디코딩 결과: user:password
예시 2: 이미지를 Data URL로 변환
data:image/png;base64,iVBORw0KGgoAAAANSUhEUgA...이미지 파일을 Base64로 인코딩하여 HTML/CSS에 직접 삽입 가능
주의사항
- 보안 아님: Base64는 암호화가 아닌 인코딩입니다. 누구나 쉽게 디코딩할 수 있으므로 민감한 정보 보호에 사용하지 마세요.
- 크기 증가: Base64 인코딩 시 원본 데이터보다 약 33% 크기가 증가합니다.
- UTF-8 지원: 한글 등 유니코드 문자는 UTF-8로 인코딩한 후 Base64 변환해야 정확합니다.
- 성능: 큰 파일을 Base64로 인코딩하면 브라우저 성능에 영향을 줄 수 있습니다.
Base64 vs 다른 인코딩
| 방식 | 용도 | 특징 |
|---|---|---|
| Base64 | 바이너리 → 텍스트 | 이메일, JSON에 적합 |
| URL 인코딩 | URL 파라미터 | 특수문자 이스케이프 |
| Hex | 16진수 표현 | Base64보다 2배 크기 |