"디코딩이 안 되거나 깨져 보여"
도구 결과가 의도와 다를 때가 있다. 도구가 잘못된 게 아니라 입력·형식 어딘가에서 어긋난 경우가 대부분.
점검 1: 형식 일치
표준 Base64인지 URL-safe Base64인지 확인. - _ 가 들어 있다면 URL-safe. + / 가 들어 있다면 표준. 도구 옵션 일치 확인.
점검 2: 패딩 점검
표준 Base64는 4의 배수 길이. 끝에 = 패딩 한두 개. URL-safe는 패딩 생략 가능. 도구가 패딩 처리 방식과 일치하는지 확인.
점검 3: 문자셋
한글이 깨지면 인코딩 시점 문자셋 의심. UTF-8 표준 사용. EUC-KR·CP949는 사전 변환 권장.
점검 4: 입력에 공백·줄바꿈
붙여넣기한 자료에 공백·줄바꿈이 섞이면 디코딩 오류. 도구가 자동 제거하는지 또는 사전 정리 필요.
점검 5: 잘림 여부
긴 Base64 자료가 카톡·메신저에서 잘리는 경우. 끝부분 패딩이 잘리면 디코딩 실패. Base64 인코더로 받은 자료 길이 확인.
점검 흐름 정리
- 형식 일치 (표준/URL-safe)
- 패딩 처리 확인
- 문자셋 UTF-8
- 공백·줄바꿈 제거
- 잘림 여부
다섯 단계를 거치면 결과 차이의 원인이 거의 잡힌다. Base64 디코더로 다시 입력해 결과 비교.
자주 하는 실수
- 표준과 URL-safe 혼용
- 패딩 빠진 자료 그대로 디코딩
- 공백 포함 입력
- 다른 인코딩과 혼동
마무리
결과가 다르면 도구를 의심하기 전에 입력·형식을 점검. 다섯 가지 중 하나가 원인인 경우가 대부분이다.