Base64 인코딩

이 브라우저에서 처리

텍스트 한도: 4000000자

파일 한도: 8 MB

이 도구는 입력을 업로드하지 않습니다.

붙여 넣은 글자를 Base64로 만들거나 되돌립니다. URL-safe는 +/를 -_로 바꿉니다. 이미지 data URI와 임의 파일, 토큰 전체 해체는 각각 다른 페이지입니다.

사내 API가 Basic 헤더나 JSON 필드를 Base64로 주고, 크롬 콘솔의 atob는 한글에서 실패합니다. 깃허브가 README를 Base64로 내려 줄 때도 같은 함정입니다. 이 페이지는 문자열 ↔ Base64입니다. 전송 형식을 바꿀 뿐, 금고가 아닙니다.

점 세 개 토큰은 JWT 디코더입니다. 사진 파일은 이미지를 Base64로, 일반 파일은 파일 Base64입니다. 숨겨야 하는 메모는 AES 암호화입니다.

텍스트와 파일과 토큰을 나누는 이유

메일 MIME 첨부, 작은 아이콘 data URI, OAuth state는 모두 Base64를 쓰지만 입력이 다릅니다. 이력서 PDF를 여기 글자 칸에 붙여 넣으면 깨지거나 거절됩니다. 카톡으로 받은 로고를 인라인하려면 이미지 형제가 맞고, 용량은 원본보다 대략 3분의 1이 늘어납니다. 10KB를 넘는 그림을 HTML에 박으면 티스토리 스킨이 느려집니다.

EUC-KR로 만든 바이트를 UTF-8로 디코드하면 깨집니다. 레거시 그룹웨어와 문자셋을 맞추세요. 디코드가 UTF-8이 아니면 실패할 수 있습니다.

URL-safe와 한글

표준 Base64의 + / =는 쿼리스트링과 카톡에 붙인 링크에서 공백·경로로 오해됩니다. URL-safe는 - _이고 패딩을 빼는 경우가 많습니다. JWT 조각과 OAuth state가 이 형태입니다. 이 탭은 디코드 때 두 형태를 받습니다.

  1. 텍스트를 붙입니다. 파일이면 형제 페이지로 가세요.
  2. 인코드 또는 디코드를 고르고, 필요하면 URL-safe를 켭니다.
  3. 결과를 복사합니다. 두 JSON을 비교하려면 텍스트 Diff입니다.

서명 검증, PEM 파싱, 메일 25MB 우회는 하지 않습니다. 값은 탭에 남습니다.

자주 묻는 질문

콘솔에서 btoa('안녕')이 실패하는 이유는 무엇인가요?

브라우저 btoa는 바이너리 문자열을 기대합니다. 한글은 UTF-8 바이트가 필요합니다. 이 탭은 TextEncoder로 바이트를 만든 뒤 Base64를 합니다.

JWT를 한 칸에 붙이면 페이로드가 보이나요?

한 덩어리로만 디코드합니다. 점(.)으로 나뉜 헤더·페이로드·서명은 JWT 디코더를 쓰세요. 여기서 풀면 클레임 JSON이 흐트러집니다.

이력서 PDF나 로고 PNG를 넣어도 되나요?

텍스트 칸입니다. 사진은 이미지를 Base64로, PDF·PEM은 파일 Base64입니다. data URI 접두사는 이미지 쪽에서 붙는 경우가 많습니다.

암호화라서 사람인 지원자 이메일을 숨길 수 있나요?

아닙니다. 누구나 디코드합니다. 숨기려면 AES 페이지를 쓰되, 채용 포털 제출 본문을 Base64로 바꾸는 습관은 파서가 이름을 못 읽습니다.

Basic 인증 헤더의 아이디:비밀번호를 만들어 주나요?

그 문자열을 인코딩하는 일은 할 수 있습니다. 결과를 운영 게이트웨이에 붙여 저장하는 습관은 위험합니다. HTTPS 밖의 Basic은 평문과 같습니다.

사내 API 로그가 너무 길면요?

대략 400만 글자에서 거절합니다. 더 큰 바이트는 파일 Base64를 검토하세요. 붙여 넣은 값은 이 탭에 남습니다.

관련 도구