NB Developer Tools · 무료 도구 · Base64 인코딩·디코딩
Base64 인코딩·디코딩
API 헤더, 데이터 URI, 설정 파일에서 Base64 문자열을 자주 만납니다. 텍스트를 넣으면 방향을 자동으로 감지해 인코딩하거나 되돌립니다.
이렇게 씁니다
- 텍스트 칸에 인코딩하거나 디코딩할 내용을 넣습니다.
- 방향을 고릅니다 — 자동 감지 · 인코딩 · 디코딩.
- 실행하기를 누르면 결과가 나옵니다.
동작 방식
인코딩 : 텍스트 → UTF-8 바이트 → Base64 문자열
디코딩 : Base64 문자열 → UTF-8 바이트 → 텍스트
[자동 감지 판정]
A-Z a-z 0-9 + / = 로만 되어 있고 길이가 4의 배수면 → 디코딩
그 외 → 인코딩
[크기]
Base64 는 3바이트를 4문자로 바꾼다 → 길이가 약 4/3(≈133%)로 늘어난다
용량을 줄이는 기술이 아니다. '바이너리를 텍스트로 실어 보내는' 포장 방식이다
한글은 한 글자가 UTF-8 에서 3바이트다. 이 도구는 TextEncoder 로 UTF-8 바이트를 만든 뒤 인코딩하므로 한글·이모지가 깨지지 않는다. (브라우저의 `btoa()` 를 한글에 그냥 쓰면 오류가 난다 — 그게 흔한 사고다.)
결과 읽는 법
- 디코딩 결과가 깨진 글자로 나오면 원본이 UTF-8 이 아니거나 Base64 가 아닌 문자열입니다.
- URL 에 넣을 때는 `+` 와 `/` 가 문제가 됩니다. URL-safe Base64(`-` `_`)로 바꿔야 하는 경우가 있습니다.
- 끝의 `=` 는 자릿수 맞추기용 패딩입니다. 없어도 디코딩되는 구현이 많습니다.
주의할 점
- **Base64 는 암호화가 아닙니다.** 누구나 되돌릴 수 있습니다. 비밀번호·토큰을 Base64 로 '가려서' 저장하면 안 됩니다.
- 아주 긴 텍스트는 브라우저 메모리를 많이 씁니다.
자주 묻는 질문
Base64 인코딩이 뭔가요?
바이너리나 텍스트를 A-Z a-z 0-9 + / 문자만으로 표현하는 방식입니다. 텍스트만 오갈 수 있는 곳(메일 헤더, 데이터 URI)에 데이터를 실어 보낼 때 씁니다.
한글이 깨지는데요?
브라우저 기본 함수 `btoa()` 는 한글을 처리하지 못합니다. 이 도구는 UTF-8 바이트로 먼저 바꾸므로 한글·이모지가 안전합니다.
Base64 로 만들면 안전해지나요?
아니요. 암호화가 아니라 표현 방식이라 누구나 즉시 되돌릴 수 있습니다.
왜 용량이 늘어나나요?
3바이트를 4문자로 바꾸기 때문입니다. 약 33% 커집니다.
Base64 인코딩·디코딩 열기 — 무료 · 설치 없음
NB Developer Tools의 다른 도구
- JSON 포맷터 — JSON을 보기 좋게 정리하거나 압축합니다
- HEX·RGB 색상 변환 — 색상 값을 HEX·RGB·HSL로 바꾸고 대비비를 확인합니다
- URL 인코딩·디코딩 — URL과 쿼리 문자열을 안전하게 변환합니다
- UUID 생성기 — UUID v4를 원하는 개수·형식으로 만듭니다
- SHA-256 해시 생성기 — 텍스트의 SHA-256·SHA-512·SHA-1 해시를 한 번에 계산합니다
NB 무료 도구 모음
설치·가입 없이 브라우저에서 바로 쓰는 무료 도구들입니다.
NB Shopping Tools무료할인율·최저가 계산기무료로 시작하기 ›NB Health Tools무료BMI·칼로리 건강 계산기무료로 시작하기 ›NB Travel Tools무료여행 예산·환율 도구무료로 시작하기 ›NB Study Tools무료학습 계획·성적 계산기무료로 시작하기 ›NB Real Estate Tools무료부동산 세금·수익률 계산기무료로 시작하기 ›NB Business Tools무료사업 부가세·마진 계산기무료로 시작하기 ›NB Image Tools무료이미지 변환·리사이즈·압축무료로 시작하기 ›NB Video Tools무료영상 변환·용량 줄이기무료로 시작하기 ›NB SEO Tools무료SEO 분석·키워드 도구무료로 시작하기 ›NB SNS Tools무료SNS 운영·해시태그 도구무료로 시작하기 ›NB Webmaster Tools무료웹마스터 점검 도구무료로 시작하기 ›NB Document Tools무료문서 양식·서식 도우미무료로 시작하기 ›