개발 도구
Base64 인코딩·디코딩
글·파일을 Base64로, Base64를 글·파일로. 줄마다 따로 변환하고 틀린 곳을 알려 줍니다.
🔒 입력한 내용과 파일은 이 브라우저 안에서만 처리합니다. 서버로 보내지 않습니다.
Base64 인코딩·디코딩 사용법
Base64는 사진, 압축 파일, 한글처럼 그대로는 글자로 실어 보내기 어려운 자료를 영문 대소문자, 숫자, 기호 두 개(+ /)의 64가지 글자만으로 적는 방식입니다. 메일 첨부, HTML과 CSS 안에 이미지를 직접 넣는 Data URI, API 인증 헤더, JWT 같은 곳에서 씁니다. 이 도구는 글과 파일을 Base64로 바꾸고, 반대로 Base64를 글이나 파일로 되돌립니다.
쓰는 순서
- 글 변환 탭에서 방향을 고릅니다. 글을 Base64로 만들면 인코딩, Base64를 글로 되돌리면 디코딩입니다.
- 입력 칸에 붙여 넣으면 바로 아래 결과가 나옵니다. 버튼을 누를 필요가 없습니다.
- 결과 복사나 TXT로 저장으로 가져갑니다. 되돌려서 확인하고 싶으면 결과를 입력으로를 누르세요. 결과가 입력 칸으로 올라가고 방향이 반대로 바뀝니다.
- 파일은 파일 → Base64 탭에 끌어다 놓습니다. Base64로 받은 파일을 되살리려면 Base64 → 파일 탭에 값을 붙여 넣고 파일로 저장을 누릅니다.
예시
글자 인코딩을 UTF-8로 두고 "안녕하세요"를 인코딩하면 7JWI64WV7ZWY7IS47JqU 가 나옵니다. 한글 다섯 글자가 UTF-8로 15바이트이고, Base64는 3바이트를 4글자로 적으므로 20글자가 됩니다. 같은 글을 EUC-KR로 인코딩하면 10바이트라서 vsiz58fPvLy/5A== 로 전혀 다른 값이 나옵니다. 끝의 == 는 3바이트 단위로 딱 떨어지지 않을 때 붙는 채움 문자입니다.
">>>???"를 인코딩하면 보통 형식으로는 Pj4+Pz8/ 이고, URL 안전형을 켜면 Pj4-Pz8_ 입니다. +가 -로, /가 _로 바뀐 것을 볼 수 있습니다.
옵션을 고르는 기준
| 옵션 | 켜는 경우 |
|---|---|
| 글자 인코딩 | 요즘 웹과 API는 UTF-8입니다. 디코딩한 한글이 깨지면 EUC-KR로 바꿔 보세요. UTF-16LE는 윈도우 프로그램이나 파워셸의 인코딩된 명령에서 볼 수 있습니다. |
| 줄마다 따로 변환 | 한 줄에 값 하나씩 여러 개를 한꺼번에 바꿀 때 켭니다. 꺼 두면 줄바꿈까지 포함한 전체를 값 하나로 봅니다. |
| URL 안전형 | 결과를 주소나 파일 이름, JWT에 넣을 때 켭니다. 디코딩할 때는 켜지 않아도 두 형식을 모두 읽습니다. |
| 끝의 = 빼기 | JWT처럼 채움 문자를 쓰지 않는 규격에 맞출 때 켭니다. |
| 76자마다 줄바꿈 | 메일(MIME) 규격이나 PEM 인증서처럼 한 줄 길이가 정해진 곳에 넣을 때 켭니다. |
| Data URI 형태 | 파일 탭에서 켜면 앞에 data:image/png;base64, 같은 머리말이 붙습니다. HTML의 img 태그 src나 CSS의 url() 안에 그대로 붙여 넣을 수 있습니다. |
오류가 날 때
디코딩이 안 되면 어디가 틀렸는지 알려 드립니다. 흔한 원인은 세 가지입니다.
- 쓸 수 없는 글자: 몇 번째 글자가 문제인지 표시합니다. 복사할 때 따옴표나 쉼표가 딸려 온 경우가 많습니다.
- 길이가 맞지 않음: 값의 앞이나 뒤가 잘린 경우입니다. 채움 문자(=)만 빠진 것은 오류가 아니며 알아서 채워 읽습니다.
- 글이 아님: 값은 멀쩡하지만 내용이 글이 아니라 이미지나 압축 파일인 경우입니다. Base64 → 파일 탭에 넣으면 PNG, JPG, GIF, WebP, PDF, ZIP 등 형식을 알아보고 맞는 확장자로 저장합니다. 이미지는 미리보기도 나옵니다.
주소에서 복사한 값에 %3D 같은 표기가 섞여 있어도 먼저 풀어서 읽습니다.
알아 둘 점
- Base64는 암호화가 아닙니다. 누구든 되돌릴 수 있으므로 비밀번호나 인증 키를 Base64로 바꿨다고 안전해지지 않습니다.
- 크기가 원본보다 약 33% 늘어납니다. 작은 아이콘을 Data URI로 넣는 것은 요청 수를 줄여 주지만, 수십 KB가 넘는 이미지는 파일로 두는 편이 낫습니다.
- EUC-KR로 인코딩할 때 이모지처럼 EUC-KR에 없는 글자는 물음표로 바뀌고 몇 개가 바뀌었는지 알려 드립니다.
- 큰 파일은 브라우저 메모리를 많이 씁니다. 파일 하나에 50MB 안쪽으로 쓰는 것을 권합니다.
자주 묻는 질문
Base64로 바꾸면 암호화가 되나요?
아닙니다. Base64는 누구나 되돌릴 수 있는 표기 방식일 뿐이고 비밀번호도 열쇠도 없습니다. 내용을 숨겨야 한다면 글 암호화 도구처럼 실제 암호화를 써야 합니다.
디코딩했더니 한글이 깨져 나옵니다.
인코딩할 때 쓴 글자 인코딩과 다른 방식으로 읽었기 때문입니다. 글자 인코딩을 EUC-KR로 바꿔 다시 디코딩해 보세요. 오래된 메일이나 윈도우 프로그램이 만든 값은 EUC-KR인 경우가 많습니다.
URL 안전형은 무엇이 다른가요?
보통 Base64에 들어가는 +와 /는 주소에서 다른 뜻으로 쓰이므로 -와 _로 바꾼 것이 URL 안전형입니다. JWT와 주소 매개변수에 쓰이며 끝의 = 채움 문자도 보통 뺍니다. 디코딩할 때는 두 형식을 모두 알아서 읽습니다.
파일 크기 제한이 있나요?
정해진 제한은 없지만 브라우저 메모리 안에서 처리하므로 파일 하나에 50MB 안쪽을 권합니다. Base64는 원본보다 약 33% 커지므로 큰 파일을 글로 다루면 브라우저가 느려질 수 있습니다.
입력한 내용이나 파일이 서버로 전송되나요?
전송되지 않습니다. 변환은 모두 이 브라우저 안에서 이뤄지고 파일도 기기 밖으로 나가지 않습니다.
함께 쓰면 좋은 도구
마지막 수정 2026-11-09. 있었으면 하는 기능이나 불편한 점은 이 도구에 건의하기로 알려 주세요.