Base64 인코딩 / 디코딩
Base64와 Base64URL을 UTF-8 안전하게 브라우저에서 인코딩·디코딩합니다.
이 도구에 대해
텍스트를 Base64로, Base64를 텍스트로 변환합니다. UTF-8을 완전히 지원해 한글과 이모지도 단순 btoa() 호출과 달리 정확히 왕복됩니다. 디코딩은 표준 Base64와 URL-safe 변형을 패딩 유무와 관계없이 모두 받습니다.
Encode와 Decode를 전환하면 현재 출력이 새 입력으로 이어지므로, 왕복 검증이 클릭 한 번으로 끝납니다.
자주 묻는 질문
Base64와 Base64URL의 차이는 무엇인가요?+
Base64URL은 +를 -로, /를 _로 바꾸고 보통 = 패딩을 생략해 URL과 파일명 안에서 안전합니다. JWT가 Base64URL을 사용합니다. 이 도구는 둘 다 자동으로 디코드합니다.
Base64는 암호화인가요?+
아니요. 누구나 되돌릴 수 있는 인코딩일 뿐입니다. 바이너리 데이터를 텍스트 채널로 옮기기 위한 것이지 보호하기 위한 것이 아닙니다. 비밀값을 Base64로 숨겼다고 생각하면 안 됩니다.
출력 끝의 = 기호는 뭔가요?+
패딩입니다. Base64는 3바이트를 4글자로 매핑하므로 3으로 나누어떨어지지 않는 입력은 패딩됩니다. 끝의 = 한두 개는 정상이며, 이 디코더는 패딩이 없어도 처리합니다.
코드에서 btoa()가 한글·이모지에 실패하는 이유는?+
btoa()는 Latin-1 코드포인트만 처리합니다. 먼저 문자열을 UTF-8 바이트로 인코딩(TextEncoder)한 뒤 그 바이트를 Base64 하세요. 이 도구가 정확히 그렇게 동작합니다.