본문으로 건너뛰기

Base64 인코더, 표기 뒤에 숨은 의미 짚기

Base64 표기 뒤의 의미

"aGVsbG8=" 같은 Base64 표기 뒤에는 표준·비트·매핑 같은 의미가 숨어 있다. 한 번 짚어 두면 자료 해석이 더 자연스럽다.

RFC 4648 표준

Base64의 국제 표준. 표준 알파벳·인코딩 규칙·패딩 처리가 명시. 모든 도구·언어가 이 표준 따른다.

왜 Base64인가

2의 6제곱 = 64. 6비트로 0~63 표현 가능. 64개 문자(A-Z 26 + a-z 26 + 0-9 10 + +/ 2)와 매핑.

3바이트 → 4문자

  • 1바이트 = 8비트
  • 3바이트 = 24비트
  • 24비트 ÷ 6비트 = 4문자

이 비례가 결과 길이 1.33배(4/3)의 이유.

패딩의 이유

입력이 3바이트 배수가 아니면 결과가 4문자 단위에서 부족. = 패딩으로 4문자 단위 맞춤.

  • 1바이트 입력 → 2문자 + == (4문자)
  • 2바이트 입력 → 3문자 + = (4문자)
  • 3바이트 입력 → 4문자 (패딩 없음)

알파벳 매핑

  • 0~25 → A~Z
  • 26~51 → a~z
  • 52~61 → 0~9
  • 62 → +
  • 63 → /

Base64 인코더로 변환 결과를 보면 이 매핑이 보인다.

URL-safe의 이유

+와 /는 URL에서 특별 의미. URL 안에 그대로 쓰면 해석 오류. URL-safe Base64는 이 문제 회피.

왜 6비트인가

4비트(16진수)는 너무 작음. 8비트(바이트)는 256개 → 인쇄 가능 문자 부족. 6비트가 64개 문자에 매핑하기 적절.

대문자 vs 소문자

Base64는 대소문자 구분. "A"(0)와 "a"(26)는 다른 값. 입력 시 정확한 대소문자 유지.

마무리

Base64 표기 뒤에는 표준·비트·매핑 의미가 숨어 있다. Base64 디코더로 변환 과정을 보면 의미가 자연스럽게 드러난다.

🚀
IP 위치 조회 바로 사용하기
지금 바로 무료로 이용해보세요!
도구 사용하기 →