N Nouplo

Base64 인코딩 / 디코딩

텍스트를 Base64로, Base64를 텍스트로. UTF-8을 정확히 처리하고 URL 안전 문자표도 고를 수 있습니다.

출력
위에 붙여넣거나 입력하면 여기에 결과가 표시됩니다.

파일은 내 기기 밖으로 나가지 않습니다

이 도구는 브라우저 안에서만 작동합니다. 붙여넣은 내용은 기기에서 처리되고 서버로 전송되지 않으므로 토큰, 키, 공개 전 문서도 안심하고 사용할 수 있습니다.

사용 방법

  1. 일반 텍스트를 Base64로 바꾸려면 인코딩을, Base64를 텍스트로 되돌리려면 디코딩을 고르세요.
  2. 입력을 붙여 넣으세요. 디코딩할 때는 +와 /를 쓰는 표준 문자표와 -와 _를 쓰는 URL 안전 문자표를 모두 받으며, 패딩이 빠져 있어도 처리합니다.
  3. 결과를 URL이나 JWT, 파일 이름에 넣을 예정이면 URL 안전을 켜세요. 퍼센트 인코딩이 필요 없어집니다.
  4. 변환하기를 누르고 결과를 복사하세요. 한글과 이모지, 악센트 문자는 UTF-8 바이트로 인코딩되며, btoa 기반 도구가 흔히 틀리는 부분입니다.

자주 묻는 질문

Base64가 암호화인가요?
아니요. Base64는 바이트를 64개의 인쇄 가능한 문자로 표현하는 되돌릴 수 있는 인코딩입니다. 누구나 즉시 디코딩할 수 있습니다. 전송이나 삽입 용도로만 쓰고 비밀을 감추는 데는 절대 쓰지 마세요.
한글이나 이모지 같은 비 ASCII 문자는 어떻게 처리하나요?
인코딩하기 전에 텍스트를 UTF-8 바이트로 바꾸고, 디코딩한 결과도 UTF-8로 해석합니다. 대부분의 언어와 HTTP 라이브러리가 하는 방식과 같습니다. 자바스크립트의 btoa()는 Latin-1만 받기 때문에 순진하게 만든 도구는 이런 문자에서 오류가 납니다.
표준 Base64와 URL 안전 Base64는 무엇이 다른가요?
표준 Base64(RFC 4648 4절)는 +와 /를 쓰고 =로 패딩합니다. URL 안전 Base64(5절)는 이를 -와 _로 바꾸고 보통 패딩을 뺍니다. 그래서 URL, 쿠키, JWT에서 이스케이프 없이 쓸 수 있습니다. 이 도구의 디코더는 둘 다 받습니다.
인코딩 결과가 원문보다 3분의 1쯤 긴 이유는 무엇인가요?
Base64는 3바이트를 4글자로 담기 때문에 결과 크기가 입력의 약 4/3에 패딩 문자 최대 2개를 더한 정도가 됩니다. 인쇄 가능한 문자만 쓰기 위해 치르는 비용입니다.
데이터가 서버로 전송되나요?
아니요. 인코딩과 디코딩 모두 브라우저 안에서 실행됩니다. API 키나 접속 문자열, 개인적인 글을 변환해도 기기 밖으로 나가지 않습니다.

관련 도구