nicetool.dev logo

BASE64 인코더

모든 것이 브라우저에서 처리됩니다. 데이터는 컴퓨터를 떠나지 않습니다.

입력 소스
결과

Base64란?

Base64는 이진 데이터를 ASCII 문자열 형식으로 나타내는 이진-텍스트 인코딩 방식 그룹으로, 데이터를 기수-64 표현으로 변환합니다. 이를 통해 텍스트를 안정적으로 처리하도록 설계된 채널을 통해 이진 데이터(이미지나 파일 등)를 전송할 수 있습니다.

Base64 작동 방식

Base64는 입력 이진 데이터를 24비트 그룹(3바이트)으로 나눕니다. 그런 다음 이 그룹을 4개의 6비트 청크로 나눕니다. 각 6비트 값은 Base64 알파벳(A-Z, a-z, 0-9, +, /)의 특정 문자에 매핑됩니다. 데이터 길이가 3으로 나누어 떨어지지 않으면 '=' 문자가 패딩으로 추가됩니다.

3 Bytes (24 bits) → 4 Chars (6 bits each)

인코딩 vs. 암호화

일반적인 오해는 Base64가 데이터를 보호한다는 것입니다. Base64는 인코딩이지 암호화가 아닙니다. Base64 문자열은 키나 암호 없이 누구나 디코딩할 수 있습니다. 따라서 암호나 민감한 비밀을 저장하는 데 Base64만 단독으로 사용해서는 안 됩니다.

Base64 ≠ Password Protection

일반적인 사용 사례

  • 데이터 URI: HTTP 요청을 줄이기 위해 이미지나 아이콘을 HTML/CSS에 직접 포함합니다.
  • 이메일 첨부 파일(MIME): 레거시 텍스트 기반 SMTP 프로토콜을 통해 이진 파일을 안전하게 전송합니다.
  • API 및 JSON: JSON 페이로드 내에서 이진 데이터(PDF 또는 이미지 등)를 전송합니다.

이 도구가 안전한 이유

많은 서버 측 도구와 달리 Nicetool.dev는 '로컬 우선' 아키텍처에서 작동합니다. 브라우저의 기능을 사용하여 모든 인코딩 및 디코딩 작업을 처리합니다.

귀하의 데이터는 절대로 당사 서버로 전송되지 않습니다.

Base64 인코딩/디코딩 사용 방법

  1. 1

    텍스트를 Base64로 바꾸려면 Encode, Base64 문자열을 읽을 수 있는 텍스트로 되돌리려면 Decode를 고르세요.

  2. 2

    입력을 붙여넣습니다. 악센트, 이모지, 한글이 있으면 문자 집합을 UTF-8로 두고, 영어로만 된 오래된 데이터일 때만 ASCII를 고르세요.

  3. 3

    Live Mode를 켜면 입력하는 대로 결과가 바뀝니다. 큰 데이터는 끄고 GO!를 누르세요.

  4. 4

    결과를 복사하세요. 디코딩이 실패하면 Base64 알파벳 이외의 문자가 있거나 문자열이 잘렸을 수 있으니 전체를 복사했는지 확인하세요.

활용 예시

HTTP Basic 인증

사용자 admin, 비밀번호 s3cret의 Authorization 헤더는 "Basic " 뒤에 "admin:s3cret"의 Base64인 YWRtaW46czNjcmV0을 붙인 것입니다. 로그의 헤더를 디코딩하면 어떤 사용자가 전송됐는지 알 수 있습니다.

Kubernetes Secret

Secret 매니페스트의 값은 Base64로 인코딩되어 있습니다. 디코딩해서 데이터베이스 URL을 확인하거나 새 값을 인코딩해 YAML에 붙여넣으세요.

데이터 URI

작은 아이콘은 data:image/png;base64,... 형태로 CSS나 HTML에 바로 넣을 수 있어 요청을 하나 줄일 수 있습니다.

토큰과 페이로드 확인

웹훅 서명, 이메일 첨부 파일(MIME), JWT의 일부는 모두 Base64입니다. 연동 문제를 디버깅할 때 디코딩이 첫 단계인 경우가 많습니다.

자주 묻는 질문

Base64는 암호화인가요?+

아니요. Base64는 키 없이 누구나 되돌릴 수 있는 인코딩입니다. 바이너리 데이터를 텍스트 채널로 안전하게 보내기 위한 것이지 내용을 숨기거나 보호하지 않습니다. 비밀 정보에는 진짜 암호화를 쓰세요.

왜 출력이 입력보다 긴가요?+

Base64는 3바이트를 4문자로 표현하므로 결과가 약 33% 커집니다. 끝의 = 기호는 마지막 묶음을 채우는 패딩입니다.

Base64URL이란?+

+를 -로, /를 _로 바꾸고 보통 = 패딩을 생략한 변형으로, URL과 파일 이름에 쓸 수 있습니다. JWT가 Base64URL을 사용합니다.

한글이나 악센트가 깨지는 이유는?+

다른 문자 집합으로 인코딩되었을 가능성이 큽니다. 대부분의 시스템은 UTF-8을 쓰므로 양쪽 모두 UTF-8을 선택하면 한글과 é 같은 문자가 그대로 유지됩니다.