KO
내 도구

Base58 인코더·디코더

텍스트나 16진수를 Base58로 인코딩하거나 디코딩합니다. 비트코인, 플리커, 리플 알파벳을 지원하며 Base58Check로 4바이트 체크섬을 붙이거나 검증할 수 있습니다.

방식
Base58
2NEpo7TZRRrLZSi2U
입력 바이트 수
12
출력 문자 수
17
내 도구 →
광고

Base58은 바이너리 데이터를 58진수의 큰 수로 쓰는 방식입니다. 숫자와 글자를 쓰되 비슷하게 생긴 0, O, I, l과 기호 +, /는 뺍니다. 그래서 손으로 옮겨 적기 쉽고 URL에서도 안전하며, 비트코인 주소, IPFS 콘텐츠 ID, 솔라나 키가 이 방식을 사용합니다. 이 도구는 텍스트나 16진수 바이트를 인코딩하고 Base58을 디코딩하며, 비트코인에서 쓰는 Base58Check 체크섬을 붙이거나 검증할 수도 있습니다.

사용 방법

  1. 인코딩과 디코딩 중 하나를 고릅니다.
  2. 입력을 붙여 넣습니다. 키나 해시 같은 원시 바이트를 인코딩하려면 "입력 형식"을 16진수로 설정합니다.
  3. 알파벳을 고릅니다. 비트코인, IPFS, 솔라나에는 기본값인 비트코인 알파벳을 씁니다.
  4. 체크섬을 붙이려면 Base58Check를 선택하고, 주소를 디코딩하면서 검증하려는 경우에도 선택합니다.

계산식

value = Σ byteᵢ × 256^(n−1−i); 58로 반복해서 나누고 나머지(0–57)마다 알파벳 문자를 대응시킵니다. 맨 앞의 0x00 바이트 하나마다 맨 앞의 "1"이 하나 붙습니다.

Base58Check는 인코딩 전에 SHA-256(SHA-256(data))의 앞 4바이트를 덧붙입니다. 디코딩할 때 같은 해시를 다시 계산하며, 일치하지 않으면 데이터가 손상되었거나, 체크섬 규칙이 다르거나, 오타가 있는 것입니다. 임의의 오류가 통과할 확률은 약 43억 분의 1입니다.

예시

텍스트 "Hello World!"(12바이트)는 IETF Base58 초안에 공개된 테스트 벡터인 2NEpo7TZRRrLZSi2U로 인코딩됩니다. 비트코인 주소의 경우, 버전 바이트 00과 20바이트 키 해시 010966776006953D5567439E5E39F86A0D273BEE에 체크섬 d61967f6이 붙어 주소 16UwLL9Risc3QfPqBUvKofHmBQ7wMtjvM이 됩니다. 맨 앞의 1은 00 버전 바이트에서 나옵니다.

자주 묻는 질문

Base58과 Base64는 무엇이 다른가요?

Base64는 계산이 더 빠르고 약 2% 더 짧지만 +, /, =를 쓰고 비슷하게 생긴 문자가 섞여 있습니다. Base58은 이를 없애서 더블클릭으로 문자열 전체를 선택할 수 있고 옮겨 적을 때 실수가 줄어듭니다.

비트코인 주소가 유효한지 확인할 수 있나요?

Base58Check 체크섬이 일치한다는 것은 4바이트 체크섬만 확인한다는 뜻입니다. 소유권, 네트워크, 페이로드 길이, 그 값이 주소인지조차 증명하지 않습니다. bc1로 시작하는 Bech32 주소는 다른 인코딩을 씁니다.

출력이 1 여러 개로 시작하는 이유는 무엇인가요?

입력 맨 앞의 0 바이트는 하나마다 알파벳의 첫 문자(비트코인 알파벳에서는 "1")로 쓰입니다. 바이트를 하나의 수로 다룰 때 0이 사라지지 않게 하기 위해서입니다.

서버로 전송되는 것이 있나요?

없습니다. 인코딩, 디코딩, SHA-256 모두 브라우저에서 실행됩니다. 다만 직접 관리하지 않는 웹 페이지에는 절대 개인 키를 붙여 넣지 마세요.

출처

최종 업데이트:

인용·퍼가기
APA

kakaoCalc. (2026, November 8). Base58 인코더·디코더. https://kakao.mobile/ko/tools/base58-encoder/

MLA

“Base58 인코더·디코더.” kakaoCalc, 8 Nov. 2026, kakao.mobile/ko/tools/base58-encoder/.

광고