ToolZip

Base64 인코딩·디코딩 무료 — 이진 데이터를 텍스트로 변환하는 방법

toolzip 2026. 9. 19. 11:00

개발을 하다 보면 Base64라는 단어를 자주 접하게 됩니다. 이메일 첨부 파일, API 인증 토큰, 이미지를 CSS에 직접 삽입할 때도 Base64가 사용됩니다. Base64가 무엇인지, 언제 사용하는지, 그리고 쉽게 변환하는 방법을 알아보겠습니다.


Base64란?

Base64는 이진(binary) 데이터를 텍스트(ASCII) 형식으로 표현하는 인코딩 방식입니다. 이름에서 알 수 있듯이 64개의 문자(A-Z, a-z, 0-9, +, /)를 사용해서 데이터를 표현합니다.

Base64 알파벳:

A-Z: 0~25  (26개)
a-z: 26~51 (26개)
0-9: 52~61 (10개)
+  : 62
/  : 63
=  : 패딩 문자

Base64가 필요한 이유

컴퓨터는 모든 데이터를 이진수(0과 1)로 처리합니다. 하지만 이메일, HTTP, XML 같은 텍스트 기반 프로토콜은 특정 이진 값을 처리하지 못하거나 오해할 수 있습니다.

예를 들어:

  • 이진 데이터의 바이트 값 0은 문자열의 끝을 의미할 수 있음
  • CR(캐리지 리턴), LF(라인 피드) 같은 제어 문자가 데이터를 손상시킬 수 있음
  • 일부 시스템은 7비트 ASCII만 지원

Base64는 이런 문제를 해결하기 위해 이진 데이터를 안전한 텍스트 문자로 변환합니다.


Base64 인코딩 원리

Base64는 3바이트의 이진 데이터를 4개의 Base64 문자로 변환합니다.

원본 데이터: "Man" (3바이트)
  M = 01001101
  a = 01100001
  n = 01101110

24비트를 6비트씩 4그룹으로 분할:
  010011 | 010110 | 000101 | 101110

6비트 값을 Base64 알파벳으로 변환:
  19 = T
  22 = W
  5  = F
  46 = u

결과: TWFu

Base64의 용량 증가

3바이트 → 4문자로 변환되므로 용량이 약 33% 증가합니다.

원본 크기: 3n 바이트
Base64 크기: 4n 문자 (33% 증가)

1MB 이미지 → Base64 → 약 1.33MB

Base64 실제 사용 사례

이메일 첨부 파일 (MIME):
이메일 표준(MIME)에서 이진 파일(이미지, PDF 등)을 텍스트 이메일에 포함할 때 Base64를 사용합니다.

HTTP 기본 인증:

Authorization: Basic dXNlcjpwYXNzd29yZA==
→ user:password를 Base64 인코딩한 것

CSS 이미지 인라인 삽입:

background-image: url('data:image/png;base64,iVBORw0KGgo...');

이 방법을 사용하면 이미지 파일을 별도로 요청하지 않고 CSS에 직접 포함할 수 있습니다.

JWT (JSON Web Token):
JWT의 헤더와 페이로드는 Base64Url(URL 안전 Base64)로 인코딩됩니다.

eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9
→ {"alg":"HS256","typ":"JWT"}를 인코딩한 것

API 데이터 전송:
바이너리 파일을 JSON API로 전송할 때 Base64로 인코딩해서 전송합니다.


Base64 vs Base64Url

일반 Base64는 +와 / 문자를 사용하는데, 이 문자들은 URL에서 특별한 의미를 가집니다. URL 안전 버전인 Base64Url은 이 문자들을 대체합니다.

구분 특수문자 용도
Base64 +, /, = 일반 데이터
Base64Url -, _, 패딩 생략 URL, JWT

Base64는 암호화가 아닙니다

중요한 점: Base64는 인코딩이지 암호화가 아닙니다. 누구나 쉽게 디코딩할 수 있습니다. HTTP 기본 인증에서 사용하는 Base64도 사실상 평문과 같습니다. 보안이 필요하다면 반드시 HTTPS를 함께 사용해야 합니다.


가장 쉬운 방법 — 브라우저에서 바로

 

ToolZip Base64 변환기 바로가기 →

  • 🔄 텍스트 인코딩·디코딩
  • 🖼️ 이미지 → Base64 변환 (Data URL 생성)
  • 💰 완전 무료, 회원가입 불필요

사용 방법

  1. toolzip.app/tools/base64 접속
  2. 인코딩 또는 디코딩 선택
  3. 텍스트 입력 또는 파일 선택
  4. 결과 복사

자주 묻는 질문

Q. Base64 인코딩은 왜 = 기호로 끝나는 경우가 있나요?

Base64는 3바이트씩 처리합니다. 데이터 길이가 3의 배수가 아닐 경우 남는 자리를 = 패딩 문자로 채웁니다. 1바이트 남으면 ==, 2바이트 남으면 =이 붙습니다.

Q. Base64로 암호화할 수 있나요?

Base64는 인코딩이지 암호화가 아닙니다. 누구나 쉽게 디코딩할 수 있으므로 보안 용도로 사용하면 안 됩니다.


정리

  • ✅ 텍스트 Base64 인코딩·디코딩
  • ✅ 이미지 → Base64 Data URL 변환
  • ✅ 완전 무료, 회원가입 불필요

ToolZip Base64 변환기 바로가기 →


관련 도구: URL 인코더 · 해시 생성기 · JWT 디코더