Base32 인코더 디코더

일반 텍스트는 먼저 UTF-8로 인코딩된 뒤 Base32로 변환됩니다.
0 입력 문자

4가지 변형, 파일 변환, padding 제어, hex 출력, 로컬 다운로드로 TOTP 비밀값과 읽기 쉬운 ID를 Base32로 처리하세요.

관련 추천

Base32란?

Base32는 바이트를 32개의 출력 가능한 문자로 표현하는 binary-to-text 인코딩입니다. 표준 형식은 RFC 4648에서 정의되며 A-Z와 2-7을 사용합니다. 5비트마다 1문자가 되므로 결과는 원본 바이트보다 보통 약 60% 더 깁니다.

Base32는 가장 짧은 형식은 아니지만 특수 문자를 줄이거나 대소문자 구분이 약한 환경, 사람이 읽고 입력해야 하는 문자열에 적합합니다. TOTP 비밀값, 일부 DNS/설정 값, 활성화 코드, 읽기 쉬운 ID에 자주 쓰입니다.

이 페이지는 RFC 4648 Base32, Base32hex, Crockford Base32, z-base-32를 지원하며 엄격 검증, padding 제어, 줄바꿈, 텍스트/파일 변환, hex 보기를 제공합니다.

사용 사례

  • TOTP/OTP 시크릿이 표준 Base32인지 확인하거나, 필요하면 Crockford 또는 z-base-32처럼 읽기 쉬운 형식으로 변환합니다.
  • 바이너리 설정, 인증서 조각, 오프라인 활성화 코드, 리소스 fingerprint를 특수 기호가 적은 읽기 쉬운 문자열로 바꿉니다.
  • padding 누락, 잘못된 변형, 비정상 길이 때문에 실패하는 타사 Base32 값을 디버깅합니다.
  • 알 수 없는 Base32 payload를 먼저 UTF-8 또는 hex로 확인한 뒤, 필요하면 바이너리 파일로 다운로드합니다.

이용 방법

  1. 먼저 올바른 변형을 선택합니다: RFC 4648, Base32hex, Crockford, z-base-32.
  2. 인코딩할 때는 텍스트 또는 파일 입력을 고르고, padding, 소문자 출력, 줄바꿈 폭을 설정합니다.
  3. 디코딩할 때는 Base32 문자열을 붙여 넣고, 필요하면 엄격 검증으로 길이와 padding을 확인합니다.
  4. payload 유형에 맞게 결과를 텍스트, hex, 다운로드 가능한 바이너리 파일로 확인합니다.

주요 기능

  • 4가지 Base32 변형 전환: RFC 4648, Base32hex, Crockford, z-base-32.
  • 텍스트와 파일 처리: UTF-8 텍스트 또는 로컬 파일을 Base32로 변환합니다.
  • 디코딩 결과를 UTF-8 텍스트, hex 또는 다운로드 가능한 바이너리로 확인합니다.
  • padding, 소문자 출력, 64/76/사용자 지정 줄바꿈을 제어합니다.
  • 브라우저에서 길이와 padding을 엄격히 검증하며 데이터는 업로드되지 않습니다.

Base32, Base64, Base58 중 무엇을 써야 할까요?

세 형식 모두 바이너리 데이터를 출력 가능한 문자열로 바꾸지만, 호환성, 문자 안전성, 출력 길이에 따라 적합한 작업이 다릅니다.

형식적합한 용도트레이드오프
Base32TOTP 시크릿, 읽기 쉬운 ID, 대소문자를 구분하지 않는 환경사람이 다루기 쉬운 문자 집합이지만 Base64보다 출력이 깁니다.
Base64일반 텍스트/파일 전송, Data URL, API payload더 compact하지만 +, /, =가 포함될 수 있어 URL이나 파일명에는 URL-safe 변형이 필요할 수 있습니다.Base64 인코더Base64 URL Safe
Base58수동으로 옮겨 적는 주소, 짧은 QR payload, 블록체인 스타일 ID0/O/I/l 혼동을 줄이지만 RFC 4648 계열은 아닙니다.Base58 인코더/디코더

Best Practices

먼저 상대 시스템이 요구하는 변형을 확인하세요

Base32 문제에서 가장 흔한 원인은 알고리즘이 아니라 alphabet 또는 variant 불일치입니다. Base32hex, Crockford, z-base-32가 요구되면 표준 Base32 결과는 보기에는 맞아도 거부될 수 있습니다.

텍스트라고 판단하기 전에 hex를 확인하세요

Base32 디코딩 결과가 항상 UTF-8 텍스트는 아닙니다. hex 보기는 payload가 인증서, 이미지 헤더, 압축 파일, 랜덤 키, 일반 텍스트인지 빠르게 구분하는 데 도움이 됩니다.

사람이 입력하는 값에는 Crockford 또는 z-base-32를 우선 고려하세요

엄격한 RFC 4648 호환보다 입력 오류 감소가 중요하다면, 이 변형들은 O/0, I/1 같은 시각적 혼동을 줄여 줍니다.

전체 흐름을 Base32에 묶어 두지 마세요

실제 작업에서는 다음 단계가 Base64, hex 또는 원본 파일 처리인 경우가 많습니다. 작업 흐름에 맞춰 형식을 바꾸는 편이 더 효율적입니다.

Base64 인코더Hex 변환

자주 묻는 질문

Base32와 Base64는 어떻게 선택하나요?

더 짧고 일반적인 형식은 Base64가 좋고, 특수 문자를 줄이거나 사람이 읽고 입력하는 TOTP 비밀값에는 Base32가 좋습니다.

RFC 4648, Base32hex, Crockford, z-base-32의 차이는 무엇인가요?

주요 차이는 알파벳과 허용 규칙입니다. RFC 4648은 일반 표준, Base32hex는 숫자 우선, Crockford는 수동 입력, z-base-32는 읽기 쉬운 소문자를 중시합니다.

Tại sao một số chuỗi Base32 kết thúc bằng =?

RFC 4648 Base32와 Base32hex는 padding으로 =를 쓰는 경우가 많고, Crockford와 z-base-32는 보통 생략합니다.

Decoded output looks wrong

Dữ liệu gốc có thể không phải UTF-8. Hãy xem hex hoặc tải tệp nhị phân.

File conversion supported?

Có. Bạn có thể chuyển tệp sang Base32 rồi khôi phục lại byte nhị phân.

Data upload?

Không. Việc xử lý diễn ra cục bộ trong trình duyệt.

문제 해결

타사 결과와 값이 맞지 않는 이유는?

먼저 변형을 확인하세요. 표준 Base32, Base32hex, Crockford, z-base-32는 alphabet이 다르므로 작은 차이도 전체 결과를 바꿉니다.

엄격 모드에서 길이 오류가 나는 이유는?

입력에 padding이 빠졌거나, 잘못된 문자가 섞였거나, 다른 변형으로 생성된 값일 수 있습니다. 먼저 완화 모드로 내용을 확인한 뒤 원문을 수정하세요.

디코딩 후 텍스트가 비어 있거나 깨지는 이유는?

원본 데이터가 UTF-8 텍스트가 아니라 바이너리 파일 또는 랜덤 바이트일 수 있습니다. hex 보기로 전환하거나 디코딩된 바이너리를 다운로드하세요.

용어집

RFC 4648 Base32
가장 일반적인 표준 Base32 변형입니다. A-Z와 2-7을 사용하며 = padding을 포함할 수 있습니다.
Base32hex
RFC 4648의 16진 순서 변형입니다. 알파벳은 0-9와 A-V입니다.
Crockford Base32
I, L, O, U를 제거하고 디코딩 시 O/0과 I/1/L/1을 허용하는 사람 친화적 변형입니다.
z-base-32
사람이 입력하기 쉽도록 만든 변형으로 보통 소문자이며 padding을 쓰지 않습니다.
padding
표준 Base32 길이를 맞추기 위해 끝에 붙는 = 문자입니다.

4가지 Base32 변형 빠른 비교

어떤 변형을 선택할지 모르겠다면 alphabet과 대표 용도부터 확인하세요.

변형Alphabet= 사용 여부대표 용도
RFC 4648A-Z + 2-7보통 사용TOTP 및 표준 Base32 호환
Base32hex0-9 + A-V보통 사용숫자 순서 비교 또는 특정 프로토콜 필드
Crockford0-9 + A-Z (without I/L/O/U)보통 사용하지 않음수동 입력, 짧은 코드, 오타 허용
z-base-32ybndrfg8ejkmcpqxot1uwisza345h769보통 사용하지 않음읽기 쉬운 소문자 짧은 문자열

표준 Base32 길이와 padding 관계

RFC 4648 / Base32hex에서는 끝의 = 개수가 원본 바이트 길이에 따라 달라집니다.

입력 바이트유효 Base32 문자필요한 = padding
126
244
353
471
580

Authoritative References