Base64 디코딩
Base64 문자열을 즉시 일반 텍스트로 디코딩합니다. 모든 처리는 브라우저에서 이루어지며 데이터가 기기 밖으로 전송되지 않습니다.
64개 문자, 무한한 데이터
Base64는 64개의 출력 가능한 ASCII 문자를 사용하여 모든 바이너리 데이터를 표현합니다. 알파벳은 다음으로 구성됩니다:
선택적 65번째 문자(=)가 끝에 패딩으로 사용됩니다.
Base64 가 텍스트로 변환되는 과정
문자 인덱스 찾기
각 Base64 문자는 알파벳에서 6비트 인덱스 값(0~63)을 찾습니다. 패딩 문자 "="는 제거됩니다.
비트 재조립
모든 6비트 그룹이 연속 비트 스트림으로 연결된 후 8비트 바이트로 재그룹화됩니다.
6비트 그룹 재구성
6비트 세그먼트에서 8비트 바이트가 재구성되고 패딩 비트는 버려집니다.
바이트를 텍스트로
바이트 시퀀스가 UTF-8로 디코딩되어 원래 텍스트 문자가 복원됩니다.
실제 활용 사례
데이터 URL
별도의 HTTP 요청 없이 작은 이미지를 HTML이나 CSS에 직접 삽입합니다.
이메일 첨부파일
MIME은 바이너리 첨부파일을 Base64 텍스트로 인코딩하여 텍스트 전용 이메일 시스템을 통해 전송할 수 있게 합니다.
API 및 설정
JSON 설정, 환경 변수, Kubernetes Secrets에 바이너리 시크릿, 인증서, 키를 저장합니다.
Base64 의 간략한 역사
Base64 개념 탄생
Base64 인코딩 개념은 텍스트 전용 채널을 통해 바이너리 데이터를 전송하기 위한 초기 메일 시스템에서 등장했습니다.
MIME 제안
MIME(다목적 인터넷 메일 확장)이 제안되어 이메일에서 비텍스트 데이터를 전송하는 문제를 해결했습니다.
RFC 1341 발행
Base64가 RFC 1341에서 MIME의 일부로 공식 표준화되어 오늘날 사용하는 64자 알파벳이 정의되었습니다.
데이터 URL 구현
Netscape Navigator 4가 data: URL을 처음 구현했으며, 이후 RFC 2397(1998)에서 표준화되어 HTML에서 인라인 리소스 임베딩이 가능해졌습니다.
현대 웹 사용
Base64는 JWT 토큰부터 CSS 임베딩, API, WebSocket 바이너리 데이터 처리까지 어디에서나 사용됩니다.
자주 묻는 질문
제 데이터가 서버로 전송되나요?
아니요. 모든 Base64 인코딩과 디코딩은 JavaScript를 사용하여 브라우저에서 완전히 처리됩니다. 데이터가 기기 밖으로 전송되지 않습니다.
UTF-8을 지원하나요?
네! 인코더는 국제 문자, 이모지, 특수 기호를 포함한 UTF-8 문자를 정확히 처리합니다.
URL 안전 Base64는 어떻게 되나요?
URL 안전 옵션을 활성화하면 + 와 / 대신 - 와 _를 사용합니다. 디코더는 표준 및 URL 안전 Base64 형식을 모두 자동으로 처리합니다.