Base32 / Base58 / Hex / UTF-8 다중 인코더

HOT

비트코인/솔라나 주소용 Base58, 2FA OTP 시드용 Base32, Hex 및 UTF-8 문자열 상호 변환 및 바이트 분석

ADVERTISEMENT · TOP BANNER

Responsive 728x90 / 320x100 Ad Slot

(CLS Prevention Active · Zero Shift)
100% 브라우저 연산 (서버 전송 없음, 개인정보 안전)
Interactive Client Mode
입력 데이터 형식:
Base58 (Bitcoin / Solana)
Base32 (RFC 4648 / OTP Seed)
Hex (Base16 Byte Dump)
Base64 (Standard RFC 4648)
ADVERTISEMENT · HIGH CTR IN-FEED

Native In-Feed / High Viewability Ad Slot

(CLS Prevention Active · Zero Shift)

Base32, Base58, Hex(16진수), UTF-8 다중 인코더 및 상호 변환기

현대 암호학, 블록체인 네트워크(Bitcoin, Solana, IPFS), 그리고 2단계 인증(2FA TOTP/Google Authenticator) 생태계에서는 사람이 읽고 타이핑하기 편하면서도 전송 왜곡이 없는 특수 인코딩 체계가 광범위하게 사용됩니다.

Base32(RFC 4648)는 대소문자 구분이 없는 환경(전화 통화, 라디오, OTP 비밀키 입력)을 위해 알파벳 32개 문자(A-Z, 2-7)만 사용하며, Base58(비트코인 창시자 사토시 나카모토 설계)은 혼동하기 쉬운 0(숫자 영)과 O(대문자 오), I(대문자 아이)와 l(소문자 엘), 그리고 +, / 같은 특수문자를 제거하여 시각적 오독을 원천 방지합니다.

오르보킷 다중 인코더 & 디코더는 일반 텍스트(UTF-8), Hex(16진수 바이트), Base32(OTP 시드), Base58(비트코인/솔라나 주소), Base64 문자열 간의 실시간 상호 변환을 지원하며, 인코딩 결과 바이트 크기와 비트 엔트로피를 정밀하게 분석해 줍니다.

진법 변환(Radix Conversion) 및 인코딩 문자셋 매핑 원리

임의의 바이트 스트림을 5비트(Base32), 6비트(Base64), 또는 큰 수 거듭제곱 나눗셈(Base58)을 통해 특수 문자셋으로 사상하는 수학적 구조입니다.

Base58 대형 정수 나눗셈 알고리즘Mathematical Formulation
Base58(Bytes): Number = BigInt(Bytes); while(Number > 0) { Remainder = Number % 58; Result = Alphabet[Remainder] + Result; Number = Number / 58 }

Base32나 Base64는 비트 슬라이싱(Bit-slicing)으로 계산되는 반면, Base58은 전체 바이트를 하나의 거대한 정수(BigInt)로 해석한 뒤 58로 반복 나눗셈하여 나머지를 인덱스로 변환합니다. 선행하는 0x00 바이트는 문자 '1'로 보존됩니다.

문자열 'Hello'의 Hex, Base32, Base58 상호 변환
UTF-8 바이트'Hello' -> [72, 101, 108, 108, 111]5바이트 바이너리
Hex 인코딩72=0x48, 101=0x65, 108=0x6C ...48656c6c6f (10자리)
Base32 인코딩5비트 그룹 분할 매핑JBSWY3DP (8자리)
Base58 인코딩BigInt('0x48656c6c6f') % 58 나눗셈9Ajdvzr (7자리)

👉 동일한 원시 바이너리가 각 시스템 목적에 최적화된 문자열로 완벽히 표현됩니다.

주요 바이너리 텍스트 인코딩 방식 비교표

산업계에서 널리 쓰이는 데이터 인코딩 규격의 문자셋 및 주요 활용 분야

인코딩 방식진법 및 비트문자셋 크기제외된 문자 (오독 방지)주요 사용처 및 표준
Hex (Base16)16진수 (4 bits)16개 (0-9, a-f)없음해시값(SHA-256), 이더리움 주소, 디버깅
Base3232진수 (5 bits)32개 (A-Z, 2-7)0, 1, 8, 9 제외Google OTP (TOTP) 시드, Onion v3 주소
Base5858진수 (BigInt)58개 (알파벳+숫자)0, O, I, l, +, / 제외비트코인(BTC) 주소, 솔라나(SOL) 공개키, IPFS CIDv0
Base6464진수 (6 bits)64개 (A-Z, a-z, 0-9, +, /)없음이메일 첨부파일(MIME), JWT 서명, 인라인 이미지
Base64URL64진수 (6 bits)64개 (-, _ 사용)+와 /를 URL-safe 문자로 대체OAuth 2.0, JWT 토큰, 웹 표준 인증

* Base58은 문자를 더블클릭했을 때 줄바꿈 없이 한 번에 선택되며, 타이핑 실수율을 99% 이상 감소시킵니다.

ADVERTISEMENT · IN-ARTICLE CONTENT

High-Engagement In-Article Native Ad Slot

(CLS Prevention Active · Zero Shift)

사용 방법

11. 입력 형식 및 텍스트/데이터 입력

UTF-8 텍스트, Hex, Base32, Base58, Base64 중 원본 형식을 선택하고 변환할 데이터를 입력합니다.

22. 실시간 다중 인코딩 결과 확인

입력하는 즉시 다른 모든 포맷(UTF-8, Hex, Base32, Base58, Base64)으로 변환된 결과가 실시간으로 갱신됩니다.

33. 바이트 및 엔트로피 통계 검토

원시 바이트 길이(Bytes), 16진수 체크섬, 인코딩별 길이 팽창률을 확인합니다.

44. 결과 복사 및 프로젝트 활용

원하는 인코딩 결과 옆의 [복사] 버튼을 눌러 블록체인 주소 검증이나 OTP 시크릿 키 설정에 사용합니다.

실무 블록체인 및 보안 엔지니어링 활용 사례

개발자가 다양한 데이터 포맷을 디버깅하고 검증해야 하는 순간

Google Authenticator TOTP 시드 키 분석

JBSWY3DPEHPK3PXP 형태의 2단계 인증 Base32 비밀키를 Hex 바이트로 역변환.

Solana 지갑 비밀키 / 공개키 포맷 검증

Phantom 지갑 등에서 내보낸 Base58 문자열을 바이트 배열로 변환하여 트랜잭션 서명 디버깅.

비트코인 레거시 P2PKH 주소(1로 시작) 구조 확인

Base58Check 인코딩의 선행 0x00 버전 바이트가 '1'로 표현되는 원리 검증.

스마트 컨트랙트 바이트코드(Hex)와 텍스트 비교

이더리움 Solidity ABI 호출 데이터(Hex)를 원본 UTF-8 텍스트로 복원.

💡 인코딩 및 바이트 변환 전문가 팁

✓ Base32 패딩 기호(=) 처리

일부 OTP 앱은 패딩(=)이 붙어 있으면 오류를 내므로, TOTP 시드 키는 패딩을 제거한 32글자 순수 Base32를 권장합니다.

✓ Base58 선행 0x00 바이트 주의

바이트 배열 맨 앞의 0x00은 숫자 계산 시 사라질 수 있으므로, 비트코인 표준에서는 선행 0x00마다 문자 '1'을 맨 앞에 명시적으로 덧붙입니다.

✓ Hex 문자열의 홀수 길이 검증

유효한 16진수 바이트는 2글자가 1바이트를 이루므로 길이가 홀수라면 맨 앞에 0을 채우거나(Pad) 포맷 오류를 확인하세요.

⚠️ 흔히 하는 실수 & 예방법

❌ Base58에 숫자 0이나 대문자 O 입력
✅ Base58에는 0(영), O(오), I(아이), l(엘)이 존재하지 않으므로 디코딩 실패 시 오타를 점검하세요.
❌ Base32 문자셋 규격 혼동
✅ 표준 RFC 4648(A-Z, 2-7)과 Crockford Base32(숫자 포함)는 문자셋이 다르므로 사용하는 라이브러리의 표준을 확인하세요.

자주 묻는 질문 (FAQ)

사용자 및 전문가들이 가장 자주 묻는 핵심 질문과 명확한 해답입니다.

6 Q&As

0(숫자 영)과 O(대문자 오), I(대문자 아이)와 l(소문자 엘)처럼 사람이 눈으로 구분하기 힘든 문자를 제외하여 주소를 수작업으로 옮겨 적을 때의 실수를 원천 방지하기 때문입니다. 또한 +, / 기호가 없어 마우스 더블클릭 시 단어 전체가 깔끔하게 선택됩니다.

ADVERTISEMENT · FOOTER BANNER

Wide Responsive Banner

(CLS Prevention Active · Zero Shift)