Base64 인코딩 · 디코딩

왼쪽에 글을 쓰면 Base64로 인코딩, 오른쪽에 Base64를 넣으면 원래 글로 디코딩합니다. 한글은 UTF-8 기준으로 변환해 깨지지 않습니다.

파일·이미지를 Base64로

파일을 끌어다 놓거나 눌러서 선택 이미지, PDF 등 모든 파일 · 5MB 이하 권장

Base64 인코딩 사용 방법

  1. 일반 텍스트 칸에 글을 입력하면 오른쪽 Base64 칸에 인코딩 결과가 바로 나옵니다.
  2. 반대로 Base64 칸에 값을 붙여 넣으면 왼쪽에 원래 글이 나타납니다.
  3. 이미지나 PDF는 아래 파일 영역에 놓으면 data URI와 Base64 문자열을 만들어 줍니다.
  4. 이미지·파일을 담은 Base64는 Base64를 파일로 저장 버튼으로 원래 파일로 되돌릴 수 있습니다.

Base64 인코딩이란?

Base64는 사진·파일 같은 이진 데이터나 한글 같은 문자를 영문 대소문자, 숫자, +, / 64개 문자만으로 바꿔 표현하는 방식입니다. 이메일 첨부 파일, HTML·CSS에 이미지를 직접 넣는 data URI, JSON으로 파일을 주고받는 API, 로그인 인증 헤더 등에 널리 쓰입니다.

3바이트를 4글자로 바꾸기 때문에 결과는 원본보다 약 33% 커집니다. 길이를 4의 배수로 맞추기 위해 끝에 = 기호가 0~2개 붙습니다.

Base64는 암호화가 아닙니다. 누구나 쉽게 디코딩할 수 있으므로 비밀번호나 개인정보를 보호하는 용도로 쓰면 안 됩니다.

한글 Base64 인코딩 결과가 사이트마다 다른 이유

Base64는 글자가 아니라 바이트를 변환합니다. 같은 "안녕"이라도 UTF-8로는 6바이트(7JWI64WV), EUC-KR로는 4바이트(vsiz5w==)라 결과가 다릅니다. 웹과 대부분의 API는 UTF-8을 쓰므로 이 도구도 UTF-8로 변환합니다. 디코딩했는데 글자가 깨진다면 원본이 EUC-KR이거나 텍스트가 아닌 파일일 가능성이 큽니다.

URL-safe Base64와 data URI

일반 Base64의 +, /, =는 주소(URL)에서 특별한 의미가 있어 그대로 쓰면 문제가 생깁니다. URL-safe Base64는 +를 -로, /를 _로 바꾸고 끝의 =를 생략합니다. JWT 토큰이 대표적인 예입니다.

data URI는 data:image/png;base64,iVBOR...처럼 파일 형식과 Base64를 함께 적어, 별도 파일 없이 HTML이나 CSS에 이미지를 바로 넣는 방식입니다. 작은 아이콘에는 요청 수를 줄여 주지만, 큰 이미지는 용량이 33% 늘어나므로 일반 파일로 두는 편이 낫습니다.

Base64 인코딩 후 용량 계산법

Base64 결과의 길이는 4 × ⌈원본 바이트 ÷ 3⌉글자입니다. 3바이트가 4글자가 되므로 약 4/3배로 커집니다.

  • 원본 3바이트 → 4글자
  • 원본 100KB → 약 133KB
  • 원본 1MB 이미지 → 약 1.33MB

JWT 토큰은 점(.)으로 나뉜 세 부분 중 가운데가 URL-safe Base64로 인코딩된 JSON입니다. 가운데 부분만 붙여 넣으면 담긴 정보를 읽을 수 있지만, 서명 검증은 하지 않으므로 신뢰 여부는 판단할 수 없습니다.

자주 묻는 질문

Base64는 암호화인가요?
아니요. 누구나 되돌릴 수 있는 인코딩(표현 방식 변환)일 뿐이며 보안 기능이 없습니다.
디코딩했더니 글자가 깨져요.
Base64 안의 데이터가 텍스트가 아니거나 UTF-8이 아닌 다른 인코딩일 수 있습니다. 이미지·파일이라면 "Base64를 파일로 저장"을 눌러 보세요.
끝에 붙은 = 기호는 무엇인가요?
길이를 4의 배수로 맞추는 패딩 문자입니다. 이 도구는 = 가 빠진 Base64도 자동으로 보정해 디코딩합니다.
파일이 서버로 업로드되나요?
아니요. 파일 변환은 브라우저 안에서만 이루어지며 외부로 전송되지 않습니다.

최종 업데이트: 2026-10-02