Base64 인코더/디코더이란?

Base64 인코더/디코더는 텍스트를 Base64 인코딩으로 즉시 변환하거나 그 반대로 변환합니다. Base64는 HTML/CSS에 이미지 삽입, 이메일 첨부 파일 인코딩, 바이너리 데이터를 텍스트로 전송, API 인증 토큰 처리에 흔히 사용되며 — 모든 처리가 사용자의 기기에서 비공개로 이루어집니다.

인코딩은 표준 Base64(RFC 4648)를 따릅니다. 입력 3바이트가 A-Z, a-z, 0-9, +, / 알파벳의 ASCII 4문자로 변환되고 끝은 = 로 패딩됩니다. UTF-8 텍스트를 올바르게 처리해 멀티바이트 문자가 왕복해도 깨지지 않고, 최대 5MB 파일을 받아 HTML·CSS·JSON에 바로 붙일 수 있는 data: URI를 돌려줍니다.

사용 방법

  1. 입력 영역에 일반 텍스트를 붙여넣거나 입력하여 Base64로 인코딩하거나, Base64 문자열을 붙여넣어 디코딩하세요.
  2. 방향 전환 스위치를 사용하여 인코딩과 디코딩 모드를 전환하세요.
  3. 한 번의 클릭으로 결과를 복사하세요 — 코드, 이메일 또는 설정 파일에 바로 붙여넣을 수 있습니다.

사용 시기

  • Basic Auth 헤더의 공백 뒤 user:pass 토큰을 디코드해 인증을 점검.
  • 작은 아이콘이나 폰트를 data URI로 HTML이나 CSS에 직접 임베드.
  • 서명·인증서·이미지 바이트 같은 바이너리를 JSON이나 YAML에 담기 전에 감싸기.

결과

"Hello, World!"를 인코딩하면 "SGVsbG8sIFdvcmxkIQ=="가 되어 JSON 페이로드에 삽입할 수 있습니다. "dXNlcjpwYXNz"를 디코딩하면 "user:pass"가 되어 Basic Auth 헤더를 확인할 수 있습니다.

자주 묻는 질문

왜 인코딩된 결과가 원본보다 더 깁니까?
Base64는 3바이트를 4개의 ASCII 문자로 바꾸므로 출력이 약 33% 커집니다. 300KB 이미지는 약 400KB 텍스트가 되고 data URI 접두사가 더해집니다. 텍스트로 운반하기 위한 비용입니다.
Base64는 암호화나 압축의 일종인가요?
둘 다 아닙니다. 그냥 인코딩 방식이라 키 없이도 누구나 즉시 디코드합니다. 비밀을 숨기는 용도가 아니라 바이너리 데이터를 텍스트로 안전하게 옮길 때 씁니다. 출력은 항상 원본보다 약간 크지 작아지지 않습니다.
디코드할 때 '잘못된 Base64' 오류가 왜 뜨나요?
보통 문자가 하나 빠지거나 더 들어간 경우입니다. 끝의 = 패딩이 잘렸거나, URL-safe 변형(- 와 _이 + 와 / 대신)이거나, 줄바꿈이 끼었을 수 있습니다. 끝의 = 까지 포함해 전체 문자열을 다시 복사해 시도하세요.
PNG나 PDF 같은 바이너리 파일도 인코딩되나요?
됩니다. 파일 선택기로 5MB까지 업로드하면 바이트로 읽혀 data:image/png;base64,... 형태의 data URI로 출력됩니다. <img> 태그나 CSS의 background-image에 바로 붙여 넣을 수 있습니다.
Python이나 Node의 base64와 결과가 같습니까?
표준 Base64라면 완전히 같습니다. Python의 base64.b64encode와 Node의 Buffer.from(str).toString('base64')가 동일한 값을 반환합니다. 수신측이 URL-safe 변형을 요구하면 이후에 + → -, / → _ 로 바꿔 주세요.

관련 도구