RevealTheme logo

Base64 인코더 및 디코더

문자열을 Base64로 인코딩하거나 Base64를 텍스트로 디코딩합니다. 개인정보를 보호합니다: 사용자의 브라우저에서 실행됩니다.

Base64란 무엇이며 왜 어디에나 쓰이나요?

Base64는 암호화가 아닌 인코딩 방식으로, 임의의 바이너리 데이터를 64개의 인쇄 가능한 ASCII 문자(A-Z, a-z, 0-9, 그리고 +, /, 패딩용 =)만으로 표현합니다. 많은 전송 프로토콜, 파일 형식, API가 텍스트 전용이거나 특정 바이트를 특별하게 취급하기 때문에 Base64가 존재합니다: 이메일(SMTP는 7비트 ASCII용으로 설계됨), JSON(원시 바이트를 담을 수 없음), URL(예약 문자가 있음), HTTP 헤더(줄 단위 텍스트), HTML 속성 모두 텍스트 채널을 통해 바이너리 데이터를 전달할 방법이 필요합니다. Base64는 입력 바이트를 3개씩(24비트) 묶어 각 묶음을 4개의 Base64 문자(각 6비트)로 다시 인코딩하여 이 문제를 해결합니다. 크기 증가는 정확히 33%입니다: 3바이트마다 4문자가 됩니다. 이 도구는 UTF-8 텍스트나 Base64 문자열을 양방향으로, 전적으로 사용자의 브라우저에서 인코딩합니다. atob/btoa를 직접 사용하는 단순한 Base64 구현이 망가뜨리는 다중 바이트 UTF-8 문자(이모지, 비라틴 문자)도 올바르게 처리합니다.

일반적인 사용 사례

  • 작은 이미지를 data: URL로 CSS에 직접 포함하세요(작은 아이콘에 대한 HTTP 요청 하나를 줄여줍니다).

  • JWT나 Basic 인증 헤더의 페이로드를 디코딩하여 내부 내용을 확인하세요.

  • 바이너리 파일의 내용을 인코딩하여 JSON 필드나 환경 변수에 넣으세요.

  • 임의의 바이트를 보존하지 못하는 시스템(이메일, 복사/붙여넣기)을 통해 바이너리 데이터를 옮기세요.

  • 디버깅 중에 base64로 인코딩된 API 응답이나 웹훅 페이로드를 디코딩하세요.

  • 운영 인수인계를 위해 바이너리 자격 증명을 복사/붙여넣기에 적합한 형식으로 변환하세요.

자주 묻는 질문

Base64는 암호화인가요?
아닙니다. Base64는 가역적인 인코딩입니다: 누구나 키 없이 즉시 디코딩할 수 있습니다. 기밀성이 필요하다면 실제 암호화(AES-256, RSA 또는 저희의 AES 암호화 도구)를 사용하세요. Base64를 보안 수단으로 취급하는 것이 가장 흔한 오해입니다.
왜 Base64는 크기를 약 33% 늘리나요?
인코딩은 입력 3바이트(24비트)를 4문자(각 Base64 문자가 6비트를 나타내므로 24비트)에 대응시킵니다. 이 크기 오버헤드는 본질적이며 피할 수 없습니다. 더 작은 바이너리 표현을 원한다면 Base85를 사용하거나, 채널이 지원한다면 원시 바이너리를 전송하세요.
URL에 안전한 Base64란 무엇인가요?
RFC 4648에 정의된 변형으로, +를 -로, /를 _로 대체하여 결과물이 퍼센트 인코딩 없이도 URL 경로나 파일 이름에 안전하게 포함될 수 있습니다. JWT는 URL에 안전한 Base64를 사용합니다. 많은 API가 두 변형 중 어느 것이든 받아들입니다.
왜 끝에 '='가 보이나요?
이는 패딩 문자입니다. Base64는 4문자 단위로 출력을 내보냅니다. 입력이 3바이트의 배수가 아니면 마지막 그룹은 4문자가 될 때까지 '='로 채워집니다. 일부 Base64 변형은 패딩을 생략하지만, 둘 다 동일하게 디코딩됩니다.
이모지와 비라틴 텍스트를 처리하나요?
예. 이 도구는 먼저 텍스트를 UTF-8 바이트로 변환한 다음 그 바이트를 Base64로 인코딩합니다. 이는 btoa()가 Latin1이 아닌 문자에서 실패하는 고전적인 JavaScript 오류를 방지합니다.
실제 애플리케이션에서 Base64는 어디에서 볼 수 있나요?
어디에나 있습니다: CSS의 이미지 data: URL, Authorization: Basic 헤더, JWT 세그먼트, 서명된 URL의 서명, S3 사전 서명 URL, PKCS 인증서(PEM 형식), 이메일 첨부 파일(MIME), QR 코드 페이로드, 그리고 최신 배포 플랫폼의 .env 방식 비밀 키 등입니다.

관련 도구