본문으로 건너뛰기

Base64 인코더 한번 써본 사람들이 자주 묻는 질문

한 번 써 보면 또 묻고 싶어진다

도구 한 번 써 본 사람끼리 모이면 비슷한 질문이 오간다. 한 번 정리해 두면 다음에 다시 헷갈리는 일이 줄어든다.

Q1. 끝에 = 표시는 뭐야?

패딩(padding). Base64는 4문자 단위로 처리. 입력 길이가 3바이트 배수가 아니면 = 한두 개로 채운다. 한 개 = 또는 두 개 ==.

Q2. 결과 길이는 어떻게 정해져?

원본 길이 × 4 ÷ 3 (반올림). 100바이트 원본 → 약 136자 Base64. 약 1.33배 커진다.

Q3. 한글도 인코딩되나?

물론. 한글은 UTF-8에서 3바이트. Base64로 변환하면 약 4자. "한" → "7ZWc".

Q4. 이미지를 Base64로 만드는 이유?

HTML/CSS에 직접 임베딩 가능. 외부 이미지 파일 요청 없이 한 파일에 모든 자원 포함. 작은 아이콘에 유용. Base64 인코더로 이미지 즉시 변환.

Q5. 큰 파일도 변환되나?

가능하지만 결과가 매우 길어진다. 1MB 이미지 → 약 1.33MB Base64. 큰 파일은 일반 URL로 처리하는 편이 효율적.

Q6. atob/btoa는 뭐야?

JavaScript 내장 함수. btoa() → 인코딩, atob() → 디코딩. ASCII 문자열만 처리하므로 한글은 추가 처리 필요(encodeURIComponent 등).

Q7. URL에 그대로 써도 돼?

표준 Base64는 +, /, =가 들어 있어 URL에서 다른 의미로 해석될 수 있다. URL 파라미터에는 URL-safe Base64 사용 권장.

Q8. 여러 번 인코딩 가능?

가능. Base64를 다시 Base64로 인코딩 가능. 다만 길이가 1.33배씩 늘어나므로 자주 하는 건 아니다. Base64 디코더로 여러 단계 처리도 가능.

마무리

Base64 관련 질문은 한두 번 짚으면 다음부터 헷갈리지 않는다.

🚀
학점 계산기 바로 사용하기
지금 바로 무료로 이용해보세요!
도구 사용하기 →