Base64 디코드
WebToolBox에서 제공하는 무료 인코딩 도구인 Base64 디코드 기능을 브라우저에서 바로 사용해 보세요. 복잡한 설치 없이 빠르고 안전하게 작업을 처리할 수 있습니다.
입력
결과
Base64 디코딩이란 무엇이며 어떻게 복원하나요?
Base64 디코딩은 64개의 ASCII 문자(A-Z, a-z, 0-9, +, /, =)로 부호화된 Base64 문자열을 원래의 원본 바이너리 데이터나 텍스트 문자열로 복원하는 역변환 프로세스입니다.
이메일 첨부 파일 다운로드, HTTP Authorization 헤더 분석, API 통신에서 전달된 Data URL 이미지 파싱, JWT 토큰 해석 등 텍스트 채널로 수신된 데이터를 프로그램에서 사용할 수 있는 원본 형태로 되돌릴 때 사용됩니다.
디코딩 과정에서는 4개의 Base64 문자(각 6비트, 총 24비트)를 3개의 원본 바이트(각 8비트, 총 24비트)로 재조합합니다. 끝부분에 포함된 '=' 패딩 문자는 유효 비트 길이를 식별하여 온전한 데이터 바이트로 복원하는 데 활용됩니다.
입출력 예시 (Examples)
| 입력 (Input) | 결과 (Output) | 설명 |
|---|---|---|
| TWFu | Man | 패딩 없는 기본 영문 디코딩 |
| TWE= | Ma | 패딩 1개(=) 포함 문자열 복원 |
| 7JWI64WV7ZWY7IS47JqU | 안녕하세요 | UTF-8 다중 바이트 한글 문자열 복원 |
| eyJuYW1lIjoiSm9obiJ9 | {"name":"John"} | JSON 데이터 페이로드 복원 |
Base64 디코딩 시 발생 가능한 주요 에러 유형 및 해결책
| 에러 유형 | 원인 | 증상 | 해결 방법 |
|---|---|---|---|
| Invalid Character Error | 문자열에 Base64 범위 외 문자 포함 | 디코딩 즉시 실패 | 공백, 줄바꿈, 특수기호 제거 후 재시도 |
| Invalid Length / Padding | 문자열 길이가 4의 배수가 아님 | 패딩 누락 오류 | 문자열 끝에 부족한 '=' 기호 1~2개 추가 |
| UTF-8 깨짐 (Mojibake) | ASCII 기본 디코더로 한글/이모지 파싱 | 또는 외계어 출력 | UTF-8 멀티바이트 디코더(TextDecoder) 사용 |
| URL-Safe 문자 미처리 | '-', '_' 문자가 포함된 Base64 | 표준 라이브러리 파싱 불가 | '-'를 '+', '_'를 '/'로 치환 후 디코딩 |
Base64 디코더 사용 방법
- 디코딩하려는 Base64 문자열을 상단 텍스트 영역에 입력하거나 붙여넣습니다.
- 입력 즉시 실시간으로 UTF-8 표준에 따라 원래의 텍스트로 자동 복원됩니다.
- '복사' 버튼을 눌러 복원된 원본 텍스트를 클립보드에 복사합니다.
- 패딩(=)이 누락되었거나 URL-Safe 문자(-, _)가 섞여 있어도 스마트 디코더가 자동 보정하여 처리합니다.
디코딩 실무 팁 및 주의사항
- 줄바꿈 및 공백 처리: 이메일 MIME 규격이나 인증 헤더 복사 시 줄바꿈(\n, \r)이나 공백이 섞여 들어갈 수 있습니다. 본 도구는 불필요한 공백을 자동 필터링하여 정상 디코딩합니다.
- 바이너리 파일(이미지/PDF) 주의: 일반 텍스트가 아닌 이미지나 ZIP 파일 등의 순수 바이너리는 텍스트 화면에 깨진 문자로 표시될 수 있습니다. 텍스트 페이로드 확인용으로 주로 사용하세요.
- 안전한 브라우저 연산: 디코딩하려는 토큰이나 인증 헤더가 인터넷 망으로 전송되지 않으므로 사내 보안 데이터도 안심하고 점검할 수 있습니다.
프로그래밍 언어별 사용 예제 (Code Examples)
function decodeBase64(base64) {
const binString = atob(base64.trim());
const bytes = Uint8Array.from(binString, (m) => m.charCodeAt(0));
return new TextDecoder().decode(bytes);
}
console.log(decodeBase64('7JWI64WV7ZWY7IS47JqU')); // 안녕하세요import base64
encoded_str = "7JWI64WV7ZWY7IS47JqU"
decoded_bytes = base64.b64decode(encoded_str)
print(decoded_bytes.decode('utf-8')) # 안녕하세요FAQ (자주 묻는 질문)
- 디코딩했는데 한글이나 특수문자가 외계어로 깨지는 이유는 무엇인가요?
- 원래 텍스트가 UTF-8로 인코딩되었으나, 디코딩 도구가 구형 ASCII/Latin-1 방식으로 해석할 때 글자 깨짐(모지바케)이 발생합니다. 본 도구는 최신 TextDecoder를 내장하여 UTF-8 한글과 이모지를 완벽하게 복원합니다.
- 패딩(=)이 빠진 Base64 문자열도 디코딩할 수 있나요?
- 네, 본 도구는 입력된 문자열의 길이를 분석하여 4의 배수가 되도록 부족한 '=' 패딩을 자동으로 채워 넣어 정상적으로 복원합니다.
- URL-safe Base64(-와 _가 포함된 문자열)도 디코딩 가능한가요?
- 네, JWT 토큰이나 URL 파라미터에서 추출한 URL-Safe Base64 문자열도 자동으로 표준 기호(+와 /)로 치환하여 완벽하게 디코딩합니다.
- Base64 디코딩은 암호 해독인가요?
- 아닙니다. Base64는 비밀 키를 요구하지 않는 공개된 데이터 변환 규격이므로 디코딩은 단순 형식 복원일 뿐 암호 해독이 아닙니다.
- 입력한 Base64 데이터의 보안은 안전한가요?
- 사용자가 입력한 데이터는 서버로 전송되지 않고 사용자의 기기 브라우저에서 100% 로컬로 처리되므로 API 키나 토큰을 안전하게 디코딩할 수 있습니다.
인코딩 — 도구 목록
Base64 인코드
WebToolBox에서 제공하는 무료 인코딩 도구인 Base64 인코드 기능을 브라우저에서 바로 사용해 보세요. 복잡한 설치 없이 빠르고 안전하게 작업을 처리할 수 있습니다.
URL 인코드
WebToolBox에서 제공하는 무료 인코딩 도구인 URL 인코드 기능을 브라우저에서 바로 사용해 보세요. 복잡한 설치 없이 빠르고 안전하게 작업을 처리할 수 있습니다.
URL 디코드
WebToolBox에서 제공하는 무료 인코딩 도구인 URL 디코드 기능을 브라우저에서 바로 사용해 보세요. 복잡한 설치 없이 빠르고 안전하게 작업을 처리할 수 있습니다.
HTML 이스케이프
WebToolBox에서 제공하는 무료 인코딩 도구인 HTML 이스케이프 기능을 브라우저에서 바로 사용해 보세요. 복잡한 설치 없이 빠르고 안전하게 작업을 처리할 수 있습니다.
유니코드 변환
WebToolBox에서 제공하는 무료 인코딩 도구인 유니코드 변환 기능을 브라우저에서 바로 사용해 보세요. 복잡한 설치 없이 빠르고 안전하게 작업을 처리할 수 있습니다.
JWT 디코더
WebToolBox에서 제공하는 무료 인코딩 도구인 JWT 디코더 기능을 브라우저에서 바로 사용해 보세요. 복잡한 설치 없이 빠르고 안전하게 작업을 처리할 수 있습니다.
퓨니코드 변환기 (Punycode)
WebToolBox에서 제공하는 무료 인코딩 도구인 퓨니코드 변환기 (Punycode) 기능을 브라우저에서 바로 사용해 보세요. 복잡한 설치 없이 빠르고 안전하게 작업을 처리할 수 있습니다.