Base64 인코더/디코더 — 바이너리를 텍스트로
Base64는 어떤 바이너리 데이터든 평범한 ASCII 텍스트(글자·숫자·+·/·=)로 인코딩합니다. 암호화가 아닙니다(누구나 디코드 가능) — 이메일·JSON·URL처럼 '텍스트만' 받는 곳에 바이너리를 안전히 넣기 위한 것.
이메일·HTTP 헤더·JSON 문자열·URL 파라미터는 모두 텍스트를 기대합니다. 바이너리 데이터(이미지·파일·암호 키)는 임의 바이트를 텍스트 안전 형태로 변환하는 인코딩이 필요. Base64는 입력 3바이트를 64자 알파벳의 출력 4글자로 표현 — 이름의 유래.
흔한 용도: 인라인 이미지용 data URI, JWT 토큰, OAuth 서명, 이메일 첨부(RFC 2045), Basic 인증 헤더, CSS 이미지 임베딩.
흔한 Base64 패턴
- •일반 Base64 (+ / =) — MIME·JSON 등에 사용
- •URL-safe Base64 (- _) — URL에서 의미 있는 + / 대체
- •패딩(= 기호) — 일부 구현에서 필수, 일부는 무시
- •멀티바이트 입력 — UTF-8 텍스트 포함 모든 바이트 스트림 인코딩
자주 묻는 질문
Base64가 암호화인가요?
아닙니다. 가역 인코딩 — 누구나 키 없이 디코드 가능. 운송 편의용일 뿐, 비밀 유지엔 절대 사용 X.
왜 Base64가 원본보다 33% 큰가요?
3바이트마다 4글자로 변환하니까. 임의 바이트의 ASCII 안전 표현엔 피할 수 없는 수학.
붙여넣은 문자열이 저장되나요?
아니요 — 브라우저에서만 처리.
