Base64란?
Base64는 바이너리 데이터나 텍스트를 영문 대소문자·숫자·일부 기호(A–Z, a–z, 0–9, +, /)만으로 표현하는 인코딩 방식입니다. 이메일 첨부, 데이터 URL, API 통신 등 텍스트만 안전하게 전달할 수 있는 환경에서 데이터를 주고받을 때 널리 사용됩니다. 이 도구는 UTF-8을 기준으로 처리하므로 한글이나 이모지도 깨지지 않고 변환됩니다.
동작 원리
Base64는 데이터를 3바이트(24비트) 단위로 묶은 뒤 6비트씩 네 조각으로 잘라, 각 조각을 64개 문자표의 한 글자에 대응시킵니다. 6비트로 표현할 수 있는 값이 64가지라서 이름이 Base64예요. 데이터 길이가 3의 배수가 아니면 끝에 = 기호를 붙여 자릿수를 맞추는데, 이것이 흔히 보이는 패딩입니다. 6비트마다 한 글자를 쓰다 보니 결과 문자열은 원본보다 약 33% 길어집니다. Base64는 암호화가 아니라 단순한 표현 방식이므로, 되돌리면 누구나 원문을 볼 수 있다는 점을 기억하세요.
사용법
- 상단에서 변환 방식(인코딩 또는 디코딩)을 선택합니다.
- 입력창에 텍스트 또는 Base64 값을 입력하거나 붙여넣습니다.
- 입력하는 즉시 아래 결과창에 변환 결과가 표시됩니다.
- 필요하면 URL-safe 옵션을 켜
+ /를- _로 바꾸고 패딩을 없앨 수 있습니다. - 복사 버튼을 눌러 결과를 클립보드에 복사할 수 있습니다.
- 인코딩 모드에서는 파일을 선택해 파일 바이트를 그대로 Base64로 인코딩할 수도 있습니다.
실무 활용 예시
- 데이터 URL: 작은 이미지나 폰트를 Base64로 만들어 HTML·CSS에 직접 삽입해 요청 수를 줄여요.
- API·토큰: JSON을 Base64로 감싸 전달하거나, 인코딩된 값을 디코딩해 내용을 확인합니다.
- 인증 헤더: HTTP Basic 인증의
사용자:비밀번호문자열은 Base64로 인코딩해 전송됩니다. - 디버깅: 로그나 설정 파일에 담긴 Base64 값을 빠르게 풀어 원본을 살펴봅니다.
주의점·팁
Base64는 보안 수단이 아닙니다. 비밀번호나 개인정보를 Base64로 바꿔도 쉽게 원문으로 복원되므로, 기밀이 필요하면 별도의 암호화를 사용하세요. 일반 Base64와 URL-safe Base64는 사용하는 기호(+ / ↔ - _)와 패딩 유무가 달라 서로 형식이 다릅니다. 이 도구는 디코딩 시 두 형식을 모두 자동 인식하지만, 다른 시스템에 값을 넘길 때는 상대가 요구하는 형식을 맞추는 것이 좋습니다.
자주 묻는 질문
한글도 깨지지 않고 변환되나요?
네. UTF-8 기반으로 인코딩·디코딩하므로 한글, 이모지, 일본어·중국어 등 모든 문자가 깨지지 않고 정확하게 변환됩니다.
입력한 내용이 서버로 전송되나요?
아니요. 모든 변환은 브라우저 내에서만 이루어지며 입력한 텍스트나 Base64 값은 서버로 전송되거나 저장되지 않습니다.
디코딩이 실패하는 경우는 언제인가요?
올바른 Base64 형식이 아닌 값(예: 잘못된 문자가 포함되거나 길이가 맞지 않는 경우)을 디코딩하려고 하면 오류 메시지가 표시됩니다. 입력 값이 정확한 Base64 문자열인지 확인하세요.
인코딩과 디코딩의 차이는 무엇인가요?
인코딩은 일반 텍스트를 Base64 문자열로 바꾸는 것이고, 디코딩은 Base64 문자열을 원래 텍스트로 되돌리는 것입니다. 변환 방식 선택으로 전환할 수 있습니다.
URL-safe Base64는 무엇인가요?
표준 Base64가 쓰는 +와 /는 URL이나 파일명에서 특별한 의미를 가져 문제를 일으킬 수 있습니다. URL-safe 방식은 이를 각각 -와 _로 바꾸고 끝의 = 패딩을 생략해, 주소나 파일명에 안전하게 넣을 수 있게 합니다.
Base64는 암호화인가요?
아닙니다. Base64는 데이터를 텍스트로 표현하는 인코딩일 뿐이라 누구나 다시 디코딩해 원문을 볼 수 있습니다. 기밀 보호가 필요하면 AES 같은 별도의 암호화를 사용해야 합니다.