utilduck
Home · 개발자 · Base64 인코더 / 디코더

Base64 인코더 / 디코더

텍스트를 입력하고 인코드 또는 디코드를 선택하면 즉시 결과가 나옵니다.

결과
-

Base64란?

Base64는 이진 데이터나 텍스트를 64개의 출력 가능한 ASCII 문자로 된 문자열로 변환하는 인코딩 방식입니다. 이메일 첨부, HTML/CSS 이미지 임베드, 텍스트 전용 채널에서의 이진 데이터 전달에 널리 사용됩니다. 디코드는 그 과정을 역으로 원문으로 되돌립니다.

텍스트를 Base64로 인코딩하는 법

텍스트를 Base64로 인코딩하려면 원문의 바이트를 3개씩 묶어 각 24비트 묶음을 Base64 64문자 알파벳에서 4개 문자로 매핑합니다. 마지막 묶음이 짧으면 =로 채웁니다. 예: 'hello'는 'aGVsbG8='로 인코딩되고, 'aGVsbG8='를 디코딩하면 다시 'hello'가 됩니다.

Base64 인코딩·디코딩 단계

  1. 입력 텍스트를 UTF-8 인코딩으로 원본 바이트로 변환합니다.
  2. 바이트를 왼쪽부터 3개씩(24비트) 묶습니다.
  3. 각 24비트 묶음을 6비트씩 네 조각(값 0~63)으로 나눕니다.
  4. 각 6비트 조각을 Base64 알파벳(A-Z, a-z, 0-9, +, /) 중 한 문자로 매핑합니다.
  5. 마지막 묶음이 3바이트보다 짧으면 =로 채워 전체 길이를 4의 배수로 맞춥니다. 디코딩은 이 과정을 역순으로 수행해 원본 바이트를 복원합니다.

Base64 인코딩 규칙

3바이트(24비트) -> Base64 문자 4개(각 6비트), 부족분은 =로 채워 4의 배수 유지
  • Base64 알파벳 = A-Z, a-z, 0-9, +, / — 0~63 값을 나타내는 64개의 출력 가능한 문자
  • = 패딩 문자 = 마지막 묶음이 불완전할 때 채워 넣어 인코딩 결과 길이를 항상 4의 배수로 유지

텍스트 → Base64 변환 예시

텍스트Base64
aYQ==
abYWI=
abcYWJj
helloaGVsbG8=
Hello, World!SGVsbG8sIFdvcmxkIQ==

자주 묻는 질문

Base64 인코딩은 암호화와 같은가요?

아닙니다. Base64는 비밀 키가 없어 누구나 동일한 공개 표준 알파벳으로 다시 원문으로 디코딩할 수 있습니다. 텍스트 전용 시스템에서 안전하게 전달하기 위해 데이터 표현 방식만 바꿀 뿐이며 기밀성을 제공하지 않으므로 민감한 데이터 보호 용도로는 절대 사용하면 안 됩니다.

인코딩 결과가 왜 =나 ==로 끝날 때가 있나요?

=는 패딩 문자입니다. Base64는 항상 입력 3바이트를 출력 4문자로 변환하는데, 입력 길이가 3의 배수가 아니면 마지막 묶음에 =를 하나 또는 둘 채워 전체 출력 길이를 4의 배수로 유지합니다.

Base64 결과가 원문보다 길어지는 이유는?

입력 3바이트마다 출력 4문자가 되므로 인코딩된 텍스트는 원문보다 약 33% 커집니다. 이는 임의의 이진 데이터를 안전하고 출력 가능한 ASCII 문자만으로 표현하기 위해 치르는 대가입니다.

텍스트뿐 아니라 다른 종류의 데이터도 Base64로 인코딩할 수 있나요?

네. Base64는 원본 바이트 단위로 동작하므로 이미지·오디오 등 어떤 이진 파일도 인코딩할 수 있습니다. 이 도구는 텍스트 입력을 받아 UTF-8 바이트 표현을 인코딩하며, 이진 파일 자체를 인코딩하려면 파일 바이트를 직접 읽는 도구가 필요합니다.

이 도구는 브라우저 안에서 UTF-8 텍스트만 인코딩·디코딩하며 이진 파일 업로드는 지원하지 않습니다. 유효하지 않은 Base64 텍스트를 디코딩하면 손상된 결과 대신 오류가 표시됩니다.

근거·출처: RFC 4648 - Base16, Base32, Base64 데이터 인코딩 표준

개인정보와 안전성

  • 브라우저에서 계산 — 입력한 값은 사용 중인 기기 안에서만 계산됩니다. utilduck 서버로 전송되지 않습니다.
  • 암호화된 연결 — 모든 페이지는 HTTPS로 제공되어 통신 구간에서 내용을 읽을 수 없습니다.
  • 제3자에게 전달하지 않음 — 입력한 값은 분석·광고 서비스로 넘어가지 않습니다.
  • 저장하지 않음 — 계산 결과를 서버에 저장하지 않으며 회원가입도 필요 없습니다.

최종 업데이트: 2026-08-17