Base64가 쓰이는 곳
- 이메일 첨부파일: MIME 표준이 Base64 사용
- Data URL: HTML/CSS에서 이미지를 인라인으로 (
data:image/png;base64,...) - JWT 토큰: 헤더·페이로드 부분이 Base64URL 인코딩
- Basic Auth: HTTP Basic 인증 헤더 (
Basic dXNlcjpwYXNz) - API 응답: 작은 이미지·바이너리를 JSON에 끼워 넣을 때
텍스트를 Base64로 인코딩하거나 디코딩하세요.
Base64는 바이너리 데이터(이미지·파일)를 텍스트(ASCII)로 바꿔서 텍스트 기반 채널(JSON·XML·이메일)을 통해 전달할 때 쓰는 인코딩이에요.
data:image/png;base64,...)Basic dXNlcjpwYXNz)두 변형이 있어요.
A-Z a-z 0-9 + / + 패딩 =+ → -, / → _, = 패딩 생략URL이나 파일명에 직접 넣을 때는 Base64URL이에요. JWT가 그래서 Base64URL을 써요. 표준 Base64에 +/=이 들어가면 URL에서 다시 인코딩되거나 깨질 수 있거든요.
이건 정말 중요해요. Base64는 누구나 바로 디코딩할 수 있어요. 비밀번호·API 키·민감 데이터를 Base64로 '숨기는' 코드가 가끔 보이는데, 보안 효과 0이에요. 진짜 보호하려면 AES 같은 대칭키 암호화나 RSA 같은 비대칭 암호화를 써야 해요.
약 33% 커져요. 3바이트 원본이 4글자 Base64가 되거든요. 1MB 이미지를 Data URL로 넣으면 약 1.33MB가 돼요.
10KB 이하 작은 이미지는 Data URL이 HTTP 요청 1개를 줄여줘서 유리해요. 큰 이미지는 외부 파일이 캐시 가능하고 페이지 크기도 작아요.
패딩이에요. Base64는 4글자 단위로 떨어져야 해서 부족하면 =로 채워요. = 1개나 2개가 붙어요. URL에서는 =도 인코딩 대상이라 Base64URL은 보통 패딩을 빼요.
헤더·페이로드는 Base64URL이라 디코딩하면 그대로 읽혀요(암호화 아님). 다만 이 도구는 표준 Base64만 풀어서, 점(.)으로 이어진 토큰 전체나 -·_가 든 마디를 넣으면 '유효하지 않은 입력'으로 나와요. 헤더·페이로드를 한 마디씩 떼어 -는 +로, _는 /로 바꿔 넣으면 읽혀요. 세 번째 마디(서명)는 바이너리라 글자로 풀리지 않아요. 그리고 토큰 안에 민감정보가 있을 수 있으니 운영 중인 실제 토큰은 외부 사이트에 붙이지 마세요 — 이 도구는 브라우저에서만 처리하지만 습관을 들이는 게 안전해요.
+→-, /→_)·패딩 규칙의 표준 근거data:image/png;base64,... 형식의 근거