EllyTools

이미지 도구

계산기

텍스트 도구

색상 도구

파일 도구

유틸리티

Base64 인코더/디코더

텍스트와 파일을 Base64로 인코딩·디코딩

◈ 사용 방법

1

인코딩할 텍스트나 바이너리 데이터를 붙여넣으세요

2

인코딩(텍스트 → Base64) 또는 디코딩(Base64 → 텍스트)을 선택하세요

3

결과를 한 번의 클릭으로 복사하세요

❓ 자주 묻는 질문

관련 도구

◉ 누구를 위한 도구인가요?

  • ✓코드·설정 파일에 작은 자산을 임베딩하는 개발자
  • ✓Base64가 포함된 이메일·HTTP 헤더를 디버깅하는 사람
  • ✓인라인 이미지·폰트용 data URI를 준비하는 엔지니어

Base64 — 글자만 지나갈 수 있는 길로 데이터를 보내는 법

이메일과 웹 주소처럼 오래된 통로에는 아무 바이트나 실을 수 없습니다. Base64 는 어떤 데이터든 64개의 안전한 글자로만 다시 적는 규칙입니다. 암호가 아니라 포장이라, 누구나 되돌려 읽을 수 있습니다.

이메일 본문, 웹 주소, 설정 파일 같은 곳은 원래 글자를 나르도록 만들어졌습니다. 사진이나 압축 파일의 바이트를 그대로 넣으면 중간의 어떤 시스템이 줄바꿈으로 오해하거나 잘라 버립니다. 그래서 데이터를 A–Z, a–z, 0–9 와 기호 두 개로만 다시 적습니다.

6비트씩 끊어 한 글자로 바꾸기 때문에 원본보다 커집니다. 영문은 약 1.33배, 한글도 1.33배입니다. 다만 한글은 UTF-8 에서 이미 한 글자가 3바이트라, '안녕하세요' 다섯 글자가 20자가 됩니다.

실제 변환 결과

원본바이트base64
hello5aGVsbG8=
안녕하세요157JWI64WV7ZWY7IS47JqU
こんにちは1544GT44KT44Gr44Gh44Gv

두 가지 알파벳이 있습니다

표준 base64 는 62번째와 63번째 글자로 + 와 / 를 쓰고, 길이를 맞추려고 끝에 = 를 붙입니다. 문제는 이 셋이 웹 주소에서 특별한 뜻을 갖는다는 것입니다. / 는 경로를 나누고 + 는 공백을 뜻하며 = 는 값을 대입합니다.

그래서 주소에 넣을 때는 + 대신 -, / 대신 _ 를 쓰고 = 는 아예 생략하는 변형을 씁니다. JWT 토큰이 이 형식이라, 토큰 안을 들여다보려고 이 도구를 여는 경우가 많습니다.

이 도구는 두 형식을 모두 읽습니다. 어느 쪽인지 고르지 않아도 알아서 처리합니다. 내보낼 때는 원하는 쪽을 고르면 됩니다.

무엇이 잘못됐는지 구분해서 알려 줍니다

base64 가 안 풀리는 이유는 몇 가지로 나뉘는데, 대부분의 도구는 한 줄짜리 오류만 냅니다. 원인을 알아야 고칠 수 있어서 이 도구는 구분합니다.

오류의 종류

입력무슨 뜻인가
!!!!base64 에 쓸 수 없는 문자가 섞였습니다
QUJDR길이가 맞지 않습니다 — 일부가 빠졌습니다
/////w==풀리긴 했지만 글자가 아닙니다 — 이미지나 파일입니다

암호가 아닙니다

가장 흔한 오해입니다. base64 는 열쇠가 없고, 누구나 되돌릴 수 있습니다. 비밀번호나 개인정보를 base64 로 바꿔서 넣어 두는 것은 봉투에 넣지 않고 엽서에 적는 것과 같습니다.

JWT 토큰의 내용도 마찬가지입니다. 토큰은 서명으로 위조를 막을 뿐 내용을 가리지 않습니다. 그래서 토큰에 담긴 이름이나 권한은 누구나 읽을 수 있고, 이 도구로도 읽힙니다.

이럴 때 씁니다

  • •JWT 토큰 안에 어떤 값이 들어 있는지 확인할 때
  • •설정 파일이나 API 응답에 들어 있는 base64 값을 읽을 때
  • •작은 이미지를 HTML·CSS 안에 직접 넣을 때 (data: URI)
  • •이메일 헤더의 인코딩된 제목을 풀어 볼 때
  • •줄바꿈이나 특수문자 때문에 잘리는 값을 안전하게 옮길 때

자주 묻는 질문

줄바꿈이 섞인 값도 되나요?

됩니다. 이메일과 인증서 파일은 base64 를 여러 줄로 나눠 적는 것이 관례라, 공백과 줄바꿈은 무시합니다.

끝의 = 가 없는데 풀립니다.

URL-safe 형식은 = 를 생략하는 것이 관례입니다. 길이로 몇 개가 필요한지 알 수 있어서 자동으로 채워 넣고 풉니다.

파일도 변환할 수 있나요?

이 도구는 글자만 다룹니다. 파일을 base64 로 바꾼 값을 붙여넣으면 '글자로 읽을 수 없다' 고 알려 줍니다 — 실패가 아니라 그 값이 텍스트가 아니라는 뜻입니다.

입력한 값이 전송되나요?

아니요. 변환은 브라우저 안에서만 일어납니다. 토큰을 붙여넣어도 나가지 않습니다.