Base64에 두 가지 변형이 있다
Base64는 표준 형식과 URL-safe 형식이 있다. 비슷해 보이지만 일부 문자가 다르다. 한 번 점검표로 정리.
비교 1: 사용 문자
- 표준 Base64 → A-Z, a-z, 0-9, +, /
- URL-safe Base64 → A-Z, a-z, 0-9, -, _
표준의 +와 /가 URL-safe에서는 -와 _로 변경.
비교 2: 이유
+와 /는 URL에서 특별한 의미. URL에 그대로 쓰면 다른 의미로 해석. URL-safe Base64는 이 문제 회피.
비교 3: 사용 자리
- 표준 → 이메일·일반 데이터
- URL-safe → URL 파라미터·JWT
비교 4: 패딩
- 표준 → = 패딩 사용
- URL-safe → 패딩 생략 가능 (구현별)
비교 5: 결과 길이
두 형식 모두 같은 길이. 4의 배수로 패딩 추가.
비교 6: 변환 가능
표준과 URL-safe 사이 변환 가능. + ↔ -, / ↔ _ 치환만 하면 된다. Base64 인코더로 형식 옵션 확인.
실수 자주 하는 지점
- JWT를 표준 Base64로 디코딩 시도
- URL 파라미터에 표준 Base64 사용
- 패딩 처리 차이
점검 체크리스트
- 본인 자료 형식 확인
- 도구 형식 옵션 확인
- 변환 후 결과 검증
- URL 호환 여부 점검
네 항목을 거치면 형식 선택이 명확. Base64 디코더로 두 형식 모두 처리 가능.
마무리
두 형식은 자리가 다르다. 점검 항목을 거쳐 두면 본인 자리에 맞는 형식 선택이 빠르다.