Base64 인코더·디코더

텍스트를 Base64로 인코딩·디코딩하고, 이미지를 data URI로 변환합니다.


선택된 파일 없음 · 이미지를 고르면 data URI(Base64)로 변환됩니다.

설정 파일에 붙은 정체 모를 문자열, 이메일 헤더 끝에 길게 늘어선 알파벳 덩어리. 대개 Base64로 바뀐 값입니다.

이 도구는 텍스트를 Base64로 바꾸거나 반대로 되돌리고, 이미지 파일을 data:image/...;base64, 형태의 data URI로 만들어 줍니다. 한글처럼 여러 바이트를 쓰는 문자도 UTF-8 기준으로 안전하게 처리합니다.

어떻게 계산되나요

텍스트 ↔ Base64

입력창에 문자열을 넣고 [인코딩 →] 을 누르면 UTF-8 바이트로 변환한 뒤 Base64 문자로 출력합니다. 반대로 Base64 문자열을 넣고 [← 디코딩] 을 누르면 원래 텍스트가 나옵니다. 결과를 다시 입력칸으로 옮기고 싶다면 [입력↔결과 바꾸기] 를 쓰면 됩니다.

결과가 원본보다 길어지는 이유

Base64는 3바이트를 4글자로 바꾸는 방식이라, 변환 결과는 원본보다 약 33% 깁니다. 원본 길이가 3의 배수가 아니면 끝에 =가 한두 개 붙어 자리를 채웁니다. 암호화가 아니라 표현 방식의 변환이므로, 비밀번호나 개인정보를 감추는 용도로는 쓰지 마세요.

이미지 → data URI

[이미지 파일 선택] 으로 그림을 고르면 미리보기와 함께 data:image/png;base64,... 형태의 문자열이 만들어집니다. 작은 아이콘을 CSS·HTML에 직접 넣어 요청 수를 줄일 때 유용합니다. 다만 문자열이 원본 파일보다 커지고 브라우저 캐시 이점도 사라지므로, 수십 KB 이하의 작은 이미지에만 권합니다.

용어 정리

Base64
바이너리 데이터를 알파벳·숫자와 +, / 등 64개 문자로만 표현하는 인코딩 방식입니다.
data URI
파일을 별도 주소로 두지 않고 `data:`로 시작하는 문자열 자체에 담아 넣는 형식입니다.
패딩(=)
입력 길이가 3바이트로 나뉘지 않을 때 끝을 채우는 문자로, 1~2개가 붙습니다.
UTF-8
한글·이모지를 여러 바이트로 표현하는 문자 인코딩. 이 도구는 인코딩 전에 UTF-8로 변환합니다.
MIME 타입
data URI 앞부분의 `image/png`처럼 데이터의 종류를 알려주는 표기입니다.

자주 묻는 질문

Base64는 암호화인가요?

아닙니다. 키 없이 누구나 되돌릴 수 있는 단순 변환이라 보안 목적으로는 쓸 수 없습니다. 이메일이나 JSON처럼 텍스트만 오가는 통로에 바이너리 데이터를 실어 보내기 위한 표현 방식입니다. 감춰야 할 값은 별도의 암호화나 서버 보관이 필요합니다.

디코딩했더니 한글이 깨집니다

원본이 UTF-8이 아닌 EUC-KR 등으로 인코딩된 데이터일 수 있습니다. 이 도구는 UTF-8 기준으로 해석합니다. 또 Base64 문자열 중간에 줄바꿈이나 공백이 섞여 있어도 결과가 어긋날 수 있으니 앞뒤 공백을 정리한 뒤 다시 시도해 보세요.

"올바른 Base64 문자열이 아닙니다"라고 나옵니다

입력에 Base64에 쓰이지 않는 문자가 섞였거나 길이가 맞지 않을 때 나타납니다. 특히 주소창에서 복사한 값은 `+`가 공백으로 바뀌었거나 `+`·`/`가 `-`·`_`로 치환된 URL-safe 형식일 수 있으니, 원래 문자로 되돌린 뒤 시도하세요.

선택한 이미지가 서버로 전송되나요?

전송되지 않습니다. 파일 읽기와 변환은 모두 브라우저 안에서 이뤄지고, 결과 문자열만 화면에 표시됩니다.

data URI는 언제 쓰는 게 좋나요?

요청 수를 줄이고 싶은 아주 작은 아이콘이나 로고 정도에 적합합니다. 큰 이미지는 문자열이 원본보다 커지는 데다 캐시도 되지 않아, 일반 이미지 파일로 두는 편이 대체로 낫습니다.