Base64 인코딩/디코딩 — 한글·이모지 안 깨짐(UTF-8)·URL 세이프·이미지 data URL
파일 → Base64 / data URL
여기에 파일을 드롭하거나 아래 버튼을 사용하세요
위에 텍스트나 Base64를 입력하거나, 아래에 파일을 드롭하세요.
텍스트와 파일은 브라우저 안에서만 처리되며 서버로 전송되지 않습니다.
관련 외부 도구
일부 링크는 제휴 링크입니다.
관련 도구
텍스트와 Base64를 즉시 상호 변환하는 무료 온라인 도구입니다. btoa()를 직접 호출하는 단순한 도구와 달리, 이 도구는 먼저 UTF-8 바이트 인코딩을 통해 텍스트를 처리하므로 한글, 이모지 및 모든 유니코드 문자가 올바르게 작동하고 깨지지 않습니다. 표준 Base64와 URL 세이프 Base64(base64url) 간 전환, 이미지를 드롭하여 미리보기가 있는 data URL 생성, 결과 원클릭 복사 및 디코딩된 텍스트 다운로드가 가능합니다. 등록 없음, 업로드 없음 — 모든 것이 비공개이며 브라우저에서 실행됩니다.
사용 방법
- 입력 상자에 텍스트를 붙여넣으면 즉시 Base64로 인코딩되고, Base64 문자열을 붙여넣으면 즉시 텍스트로 디코딩됩니다.
- 자동 모드를 사용하면 입력이 Base64인지(디코딩) 일반 텍스트인지(인코딩) 자동으로 감지합니다. 감지 결과가 표시되므로 잘못됐을 경우 직접 변경할 수 있습니다.
- 표준 Base64와 URL 세이프(base64url, +와 / 대신 -와 _ 사용) 간 전환하여 URL, 쿼리 문자열, JWT에 사용하세요.
- 이미지나 다른 파일을 드롭 영역에 드래그하면 원시 Base64 문자열과 자급자족 data URL이 생성됩니다. 이미지는 즉시 미리보기됩니다.
- 결과를 원클릭으로 복사하거나 디코딩된 텍스트를 .txt 파일로 다운로드하세요. 교체를 사용하여 결과를 다시 입력으로 이동해 역방향 변환을 수행하세요.
- 설치나 등록이 필요 없습니다. 입력과 파일은 브라우저에서만 처리되며 서버로 전송되지 않습니다.
Base64란? 인코딩과 디코딩 설명
Base64는 바이너리 또는 멀티바이트 데이터를 64개의 인쇄 가능한 ASCII 문자(A–Z, a–z, 0–9, + 및 /, 패딩으로 =)만 사용하여 나타내는 인코딩 방식입니다. 이메일 헤더, JSON 필드, HTTP 인증, JWT, HTML/CSS 임베드 문자열 등 일반 텍스트만 처리하는 컨텍스트에서 데이터를 안전하게 전송하기 위해 널리 사용됩니다. Base64는 암호화가 아니므로 누구나 원래 데이터로 디코딩할 수 있습니다.
인코딩 (텍스트 → Base64)
인코딩은 텍스트를 먼저 UTF-8 바이트로 변환한 다음 해당 바이트를 Base64 문자열로 나타냅니다. 결과는 원본의 약 4/3 크기입니다. UTF-8 단계가 한글과 이모지를 올바르게 처리하는 핵심입니다. 많은 도구에서 멀티바이트 문자열에 btoa()를 직접 사용하면 오류가 발생하거나 깨진 출력이 생성됩니다.
디코딩 (Base64 → 텍스트)
디코딩은 프로세스를 역전시킵니다: Base64 문자열을 바이트로 변환한 다음 해당 바이트를 UTF-8 텍스트로 해석합니다. 바이트를 유효한 UTF-8로 디코딩할 수 없는 경우(예: 이미지 같은 바이너리 파일), 깨진 텍스트 대신 오류가 표시됩니다.
자동 모드
자동 모드는 입력을 분석하여 Base64인지(디코딩해야 함) 일반 텍스트인지(인코딩해야 함) 판단합니다. 판단 결과가 표시되므로 자동이 틀렸을 경우 인코딩 또는 디코딩을 클릭하여 재정의할 수 있습니다.
주요 기능
UTF-8 안전 — 한글·이모지 안 깨짐
대부분의 단순한 도구는 멀티바이트 문자열에 btoa()를 직접 호출하여 한글, 이모지 및 기타 비ASCII 텍스트에서 오류가 발생하거나 깨진 출력이 생성됩니다. 이 도구는 TextEncoder를 사용하여 문자열을 UTF-8 바이트로 변환한 다음 해당 바이트를 btoa()로 인코딩하므로 한글과 이모지가 완벽하게 왕복됩니다.
URL 세이프 Base64(base64url)
표준 Base64는 URL과 파일 이름에서 특수한 의미를 갖는 +, / 및 = 문자를 사용합니다. URL 세이프 Base64(base64url)는 +를 -로, /를 _로 바꾸고 = 패딩을 제거합니다. URL 쿼리 파라미터, JWT, 파일 이름 등에서 안전하게 사용할 수 있습니다. 디코딩 시 표준과 URL 세이프 Base64를 모두 자동으로 허용합니다.
파일 → Base64 및 data URL(이미지 미리보기 포함)
드롭 영역에 파일(이미지, 폰트, 문서 등)을 드래그하면 원시 Base64 문자열과 자급자족 data URL(data:<MIME>;base64,...)이 생성됩니다. 이미지는 인라인으로 미리보기됩니다. data URL을 CSS background-image, HTML <img> src 또는 Markdown에 직접 붙여넣어 외부 파일 없이 이미지를 임베드할 수 있습니다.
유효하지 않은 Base64에 대한 명확한 오류 메시지
입력을 Base64로 디코딩할 수 없을 때, 도구가 이유를 설명합니다: 유효하지 않은 문자, 잘못된 길이, 디코딩 실패, 또는 UTF-8로 해석할 수 없는 바이너리 데이터. 오류는 색상뿐만 아니라 텍스트로도 표시됩니다.
복사, 다운로드 및 문자/바이트 수
원클릭으로 결과를 복사하세요. 디코딩된 텍스트를 .txt 파일로 다운로드할 수 있습니다. 입력 및 출력 영역 모두 문자 수와 UTF-8 바이트 수를 표시합니다.
비공개 — 브라우저에서 완전히 실행
텍스트, 토큰, API 키, 파일 내용은 브라우저에서만 처리됩니다. 서버로 전송되지 않습니다.
활용 사례
Base64 문자열을 디코딩하여 내용 확인
이메일 헤더, 구성 파일, JWT 페이로드 조각 또는 API 응답의 Base64 문자열을 붙여넣어 원본 텍스트나 JSON을 확인하세요. 디코딩 모드(또는 자동)로 전환하면 결과가 즉시 표시됩니다.
한글이나 이모지 텍스트를 Base64로 인코딩
JSON 필드, HTTP 헤더 또는 구성 파일에 한글, 이모지 또는 기타 비ASCII 문자를 포함해야 하나요? 텍스트를 붙여넣고 인코딩하세요. UTF-8 안전 인코딩으로 왕복이 손실 없이 이루어집니다.
URL 및 JWT용 URL 세이프 Base64(base64url) 생성
URL 쿼리 파라미터, 경로 세그먼트, JWT 또는 파일 이름에서 안전하게 사용할 Base64가 필요할 때 URL 세이프 모드로 전환하세요. 출력은 + 대신 -, / 대신 _를 사용하며 = 패딩이 없습니다.
이미지를 data URL로 변환하여 HTML/CSS에 임베드
작은 아이콘과 이미지를 data URL로 HTML, CSS 또는 Markdown에 직접 임베드하여 추가 HTTP 요청을 없앨 수 있습니다. 이미지 파일을 드롭 영역에 드래그하면 data:image/png;base64,...를 즉시 미리보기와 함께 얻을 수 있습니다.
주의 사항 및 제한
- Base64는 암호화가 아닙니다 — 누구나 디코딩할 수 있습니다. 비밀번호나 비밀 정보를 보호하는 데 Base64를 사용하지 마세요.
- Base64는 데이터 크기를 약 4/3(33%) 증가시킵니다. 큰 이미지를 data URL로 임베드할 때 주의하세요.
- 이 도구는 UTF-8 텍스트를 인코딩하고 디코딩합니다. 다른 인코딩(Shift_JIS, UTF-16 등)은 지원되지 않습니다.
- Base64로 인코딩된 바이너리 데이터(이미지, PDF 등)는 텍스트로 디코딩할 수 없습니다. 파일 출력 기능을 사용하여 data URL을 생성하세요.
- 입력과 파일은 절대 서버로 전송되지 않습니다. 모든 것이 브라우저에서 로컬로 실행됩니다.
자주 묻는 질문
- 한글이나 이모지를 인코딩/디코딩해도 깨지지 않나요?
- 네. 이 도구는 인코딩 전 TextEncoder를 사용하여 텍스트를 UTF-8 바이트로 변환하고, 디코딩 시 엄격한 UTF-8 모드의 TextDecoder를 사용합니다. 한글, 이모지, 서로게이트 쌍 문자 모두 깨지지 않고 완벽하게 왕복됩니다.
- 인코딩과 디코딩 모두 가능한가요?
- 네. 텍스트를 붙여넣으면 Base64로 인코딩되고, Base64 문자열을 붙여넣으면 텍스트로 디코딩됩니다. 자동 모드는 방향을 감지하고 결과를 표시합니다. 인코딩 또는 디코딩을 명시적으로 선택하여 언제든지 재정의할 수 있습니다.
- URL 세이프 Base64(base64url)를 지원하나요?
- 네. URL 세이프 모드로 전환하면 base64url 출력(+ 대신 -, / 대신 _, = 패딩 없음)을 얻을 수 있습니다. 디코딩 시 표준과 URL 세이프 Base64를 자동으로 허용합니다.
- 이미지를 Base64나 data URL로 변환할 수 있나요?
- 네. 이미지(또는 모든 파일)를 드롭 영역에 드래그하면 원시 Base64 문자열과 전체 data URL(data:image/...;base64,...)을 얻을 수 있습니다. 이미지는 즉시 미리보기됩니다.
- 데이터가 서버로 전송되나요?
- 아니오. 모든 것이 브라우저에서 실행됩니다. 텍스트, 토큰, 키, 파일 내용은 절대 서버로 업로드되지 않습니다.
- Base64는 암호화인가요?
- 아니오. Base64는 인코딩이지 암호화가 아닙니다. Base64 문자열이 있는 사람은 누구나 키나 비밀번호 없이 디코딩할 수 있습니다. 민감한 정보를 보호하는 데 Base64를 사용하지 마세요.
- 결과를 복사하거나 다운로드할 수 있나요?
- 네. 복사를 클릭하면 결과가 클립보드에 한 번에 복사됩니다. Base64를 텍스트로 디코딩할 때 다운로드 버튼을 사용하면 결과를 .txt 파일로 저장할 수 있습니다.