Base64 인코딩이란
Base64는 64개의 인쇄 가능한 아스키 문자(A~Z, a~z, 0~9, +, /)만으로 임의의 바이너리·텍스트 데이터를 표현하는 방식입니다. CSS·HTML에 이미지 삽입, 이메일 첨부파일 인코딩, JSON 안에 바이너리 데이터 저장, URL·API 토큰 전달 등 원시 바이너리 바이트를 안정적으로 다루지 못하는 텍스트 전용 통로로 데이터를 안전하게 보내야 할 때 어디서나 쓰입니다.
변환 방식
인코딩은 텍스트의 원시 UTF-8 바이트를 3바이트씩 묶어 각 묶음을 Base64 문자 4개로 변환합니다(입력 길이가 3의 배수가 아니면 끝에 '=' 로 채움). 디코딩은 이 과정을 정확히 반대로 수행해 Base64 문자를 바이트로 되돌린 뒤 그 바이트를 UTF-8 텍스트로 해석합니다. 3바이트를 4바이트로 늘리는 방식이라 인코딩된 결과는 항상 원본보다 약 33% 더 길어집니다.
자주 묻는 질문
- Base64는 암호화와 같은 건가요?
- 아니요. Base64는 되돌릴 수 있는 텍스트 표현 방식일 뿐 암호화가 아닙니다. 별도의 키나 비밀번호 없이 누구나 즉시 원본 데이터로 디코딩할 수 있으므로 민감한 정보를 보호하는 용도로는 절대 사용하지 마세요.
- 디코딩할 때 왜 오류가 나나요?
- 보통 입력한 텍스트가 올바른 Base64 형식이 아니기 때문입니다. Base64 문자 집합에 없는 문자가 포함되었거나, 패딩이 잘못되었거나, 디코딩 후 값이 올바른 UTF-8 텍스트가 아닌 경우로, 이 도구는 깨진 결과를 보여주는 대신 오류로 알려줍니다.
- 입력한 텍스트가 어딘가로 전송되나요?
- 아니요. 인코딩·디코딩 모두 자바스크립트 내장 함수를 이용해 브라우저 안에서만 처리되며, 입력한 내용은 어디로도 업로드되지 않습니다. 민감한 텍스트나 토큰에도 안심하고 사용할 수 있습니다.