Base58 인코딩 및 디코딩
일반 텍스트는 먼저 UTF-8에 따라 바이트로 변환된 다음 Base58 또는 Base58Check으로 인코딩됩니다.
브라우저에서 Base58 및 Base58Check의 인코딩 및 디코딩을 완료하여 텍스트, 파일, 사용자 정의 문자표 및 16진수 결과 보기를 지원합니다.
관련 추천
Base58과 Base58Check은 무엇인가요?
Base58은 사람이 읽고 복사하여 붙여넣을 수 있도록 고안된 텍스트 인코딩입니다. 0, O, I, l 등 잘못 읽기 쉬운 문자를 제거하므로 짧은 로고, 초대 코드, 지갑 주소, 오프라인 공유 코드 등의 시나리오에서 자주 사용됩니다.
표준 Bitcoin Base58 문자 테이블은 `123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz`입니다. 이 페이지는 Flickr 버전의 알파벳과 사용자가 정의한 58자 알파벳을 모두 지원합니다.
Base58Check은 원래 바이트 뒤에 4바이트 체크섬을 추가한 다음 이를 전체적으로 Base58로 인코딩하는 솔루션입니다. 이는 오래된 비트코인 주소, WIF 개인 키 내보내기, 초대 코드 또는 수동으로 복사해야 하는 문자열에 자주 사용됩니다. 목표는 오타, 누락된 단어 또는 잘못된 순서를 조기에 감지하는 것입니다.
바이너리 페이로드, 주소 페이로드 또는 해시 조각을 얻는 경우 디코딩된 콘텐츠가 반드시 읽을 수 있는 텍스트는 아닙니다. 이때 문자가 깨져서 디코딩 실패로 오판하기보다는 16진수로 전환하여 보는 것이 더 적합합니다.
IPFS CIDv0은 Base58Check 대신 표준 Base58btc를 사용합니다. `bc1...` 이 유형의 비트코인 주소는 Bech32에 속하며 이 페이지 Base58의 범위에 속하지 않습니다.
사용 사례
- 이전 비트코인 주소, WIF 개인 키 내보내기 문자열 또는 사용자 정의 Base58Check 공유 코드가 잘못 입력되었는지 확인하세요.
- 작은 파일, 바이너리 조각 또는 테스트 페이로드를 Base58로 인코딩하여 로그, 채팅 또는 티켓으로 쉽게 전달할 수 있습니다.
- Base58 문자열을 16진수로 디코딩한 다음 버전 바이트, 해시 또는 원시 페이로드를 분석합니다.
- Bitcoin Base58과 Flickr Base58 사이의 출력을 비교하여 동일한 바이트 집합이 다른 시스템에서 다른 결과를 갖는 이유를 알아보세요.
- 내부 초대 코드, 짧은 로고 또는 오프라인 토큰에 대한 58자 문자 테이블을 직접 디자인하고 양쪽 끝이 일치하는지 확인하세요.
이용 방법
- 인코딩 또는 디코딩 모드를 선택하십시오. 사람이 입력한 오류가 발생하기 쉬운 문자열을 처리해야 하는 경우 Base58Check 옵션을 설정하세요.
- Bitcoin, Flickr 또는 사용자 정의 문자표를 선택합니다. 개인 프로토콜인 경우 먼저 양 당사자가 동일한 58개 문자 시퀀스 세트를 사용하는지 확인하십시오.
- 인코딩 시 텍스트를 입력하거나 파일을 업로드하세요. 디코딩할 때 Base58 문자열을 붙여넣고, 필요한 경우 원시 바이트를 보려면 16진수 결과로 전환하세요.
- 출력을 본 후 직접 복사하거나 다운로드하십시오. Base58Check인 경우 페이지에서 인증 통과 여부를 동기적으로 묻는 메시지를 표시합니다.
주요 기능
- 표준 Base58 및 Base58Check 이중 모드: 일반 인코딩을 직접 수행하거나 4바이트 체크섬을 자동으로 추가하거나 확인할 수 있습니다.
- 텍스트와 파일 모두 인코딩할 수 있습니다. 일반 텍스트는 UTF-8에 따라 처리되고 파일은 바이너리 콘텐츠의 오프라인 전달에 적합한 원시 바이트에 따라 인코딩됩니다.
- 디코딩 결과는 텍스트 또는 16진수 간에 전환될 수 있습니다. 주소 페이로드, 해시 조각 또는 UTF-8이 아닌 데이터가 나타날 때 횡설수설하지 마세요.
- Bitcoin, Flickr 및 사용자 정의 58자 문자 테이블을 지원합니다. 기존 시스템과의 호환성 또는 개인 단축 코드 솔루션 디버깅에 적합합니다.
- 브라우저 로컬 처리 및 결과 다운로드: 인코딩, 디코딩 및 검증이 모두 로컬에서 완료되며 출력을 직접 복사하거나 다운로드할 수 있습니다.
Base58, Base58Check, Base64을 선택하는 방법은 무엇입니까?
둘 다 바이트를 통과 가능한 텍스트로 변환할 수 있지만 초점은 완전히 다릅니다. 핵심은 "어느 것이 더 고급인지"가 아니라 수동 전사와 오류 방지를 더 중시하는지, 아니면 컴팩트함과 범용 호환성을 중시하는지입니다.
| 계획 | 더 적합 | 장점 | 참고 |
|---|---|---|---|
| Base64 인코딩Base64 URL 안전함 | |||
| Base32 인코딩 |
Best Practices
고객 서비스를 통해 수동으로 기록되거나 전달되는 경우 Base58Check에 우선순위가 부여됩니다.
문자열을 받아쓰거나, 스크린샷을 찍거나, 채팅으로 전달하거나, 수동으로 다시 입력하는 한 체크섬은 거의 항상 열어볼 가치가 있습니다. 모든 오류를 방지할 수는 없지만 "올바른 것처럼 보이지만 실제로는 문자가 누락된" 상황을 크게 줄일 수 있습니다.
디코딩된 결과가 텍스트가 아닌 경우 먼저 16진수를 살펴보세요.
주소 페이로드, 해시, 이미지 헤더 및 압축된 조각과 같은 콘텐츠는 UTF-8임을 보장하지 않습니다. 먼저 16진수로 전환하여 원래 바이트를 확인한 다음 파일을 변환할지, 해싱을 계속할지, 아니면 처리를 위해 다른 도구에 넘겨줄지 결정합니다.
육각 도구Base58을 대용량 파일의 장기 저장 형식으로 사용하지 마세요.
Base58은 짧은 문자열과 중소형 페이로드에 더 적합합니다. 파일이 클수록 출력이 길어지고 복사가 덜 편리해지며 서식 있는 텍스트, 채팅 도구 또는 로그에서 잘릴 가능성이 높아집니다.
캐릭터 테이블을 커스터마이징할 때, 모든 생산 단말기에 동기화되어야 합니다.
하나의 서버, 스크립트 또는 클라이언트가 다른 순서를 사용하는 한 인코딩 및 디코딩 결과는 모두 잘못 정렬됩니다. 먼저 58자 순서를 수정한 다음 이를 프로토콜 또는 테스트 샘플에 작성합니다.
더 짧고 보다 일반적인 인터페이스 전송이 필요한 경우 Base64URL 비교에 우선순위를 둡니다.
Base58의 장점은 읽기 쉽고 혼동을 방지한다는 점이지만, 크기가 가장 작지는 않습니다. 문자열이 주로 프로그램 간에 전달되고 사람이 복사하지 않는 경우 일반적으로 Base64URL이 더 간결하고 일반적입니다.
Base64 URL 안전함자주 묻는 질문
Base58과 Base64 중에서 어느 것을 선택해야 합니까?
If the string is to be read, copied, or input to others, Base58 is preferred; 주로 프로그램, 인터페이스, JSON 또는 URL 매개변수로 전송되는 경우 일반적으로 Base64 또는 Base64URL이 더 컴팩트합니다. Base58의 초점은 가장 짧은 출력이 아니라 가독성과 난독화 방지입니다.
Base58Check 어떤 문제를 해결하나요?
원래 페이로드에 4바이트 체크섬을 추가한 다음 Base58을 사용하여 전체 페이로드를 인코딩합니다. 이런 방식으로 사용자가 단어를 놓치거나, 오타를 내거나, 잘못된 순서로 썼을 때, 도구는 의미 없는 결과를 조용히 얻는 대신 제때에 더 쉽게 오류를 보고할 것입니다.
이 페이지에서 비트코인 주소를 확인할 수 있나요?
Base58Check 레이어가 올바른지 확인할 수 있으므로 이전 버전의 Base58 주소나 WIF 내보내기 문자열에 명백한 입력 오류가 있는지 확인하는 데 적합합니다. 그러나 주소 사용, 네트워크 유형 및 스크립트 유형을 더 이상 결정하지 않으며 `bc1...`과 같은 Bech32 주소를 지원하지 않습니다.
디코딩 후 코드가 왜곡되거나 프롬프트가 UTF-8이 아닌 이유는 무엇입니까?
Base58은 원시 바이트를 디코딩하기 때문에 반드시 읽을 수 있는 텍스트는 아닙니다. 이는 주소 페이로드, 해시, 이미지 헤더 또는 임의의 바이너리 데이터에서 발생할 수 있습니다. 원시 바이트를 보려면 16진수로 전환하면 일반적으로 분석을 계속할 수 있습니다.
Base58 파일 인코딩 및 디코딩이 지원됩니까?
지원합니다. 인코딩 중에 파일을 업로드할 수 있으며, 페이지는 원본 바이트에 따라 Base58으로 변환됩니다. 디코딩 후 원본 결과를 다시 다운로드할 수도 있습니다. 파일이 클수록 출력 문자열이 길어지므로 중소 규모 워크로드 또는 디버깅 시나리오에 더 적합합니다.
어떤 문자표가 지원되나요?
현재 표준 Bitcoin Base58, Flickr Base58 및 사용자 정의된 58자 문자 테이블을 지원합니다. 인코딩 끝과 디코딩 끝이 정확히 동일한 문자 시퀀스를 사용하는 한 서로 통신할 수 있습니다.
IPFS CID 또는 기타 온체인 문자열을 처리할 수 있나요?
CIDv0 이러한 표준 Base58btc 문자열은 직접 인코딩되거나 디코딩될 수 있습니다. 하지만 페이지는 멀티베이스, 멀티코덱 또는 구체적인 온체인 의미 체계를 계속 구문 분석하지 않습니다. Bech32 문자열(예: `bc1...`)은 Base58의 범위에 속하지 않습니다.
업로드된 콘텐츠가 서버로 전송되나요?
아니요. 텍스트, 파일 및 Base58Check 체크섬 결과는 모두 브라우저에서 로컬로 처리되므로 민감한 로드, 오프라인 테스트 데이터 또는 업로드하기 불편한 파일 조각을 디버깅하는 데 적합합니다.
문제 해결
팁에 잘못된 Base58 문자가 포함되어 있습니다.
현재 문자표에서는 0, O, I, l 등 제외 문자를 허용하지 않습니다. 또한 잘못된 Bitcoin / Flickr / 사용자 정의 문자 테이블을 잘라냈을 수도 있습니다. 먼저 문자열의 출처를 확인한 후, 문자표가 상대방과 일치하는지 확인하세요.
Base58Check 확인 실패
이는 일반적으로 문자열이 불완전 복사되었거나 문자가 잘못 작성되었거나 Base58Check 자체가 아님을 의미합니다. 먼저 Base58Check을(를) 열어야 하는지 확인한 다음 돌아가서 원본 콘텐츠가 완전한지 확인하세요.
사용자 정의 문자 테이블을 저장할 수 없습니다
사용자 정의 문자 테이블의 길이는 정확히 58자여야 하며 각 문자는 한 번만 나타나야 합니다. 문자 누락이나 반복 문자를 방지하려면 먼저 표준 Bitcoin 문자 테이블을 수정하는 것이 좋습니다.
디코딩된 결과가 텍스트가 아닙니다.
이것이 반드시 버그는 아닙니다. 많은 Base58 문자열은 원래 바이너리 페이로드를 전달합니다. 16진수로 전환하여 디코딩 결과를 보거나 파일로 다운로드한 후 다음 단계를 결정하세요.
용어집
- Base58
- 0, O, I, l 등과 같이 쉽게 혼동되는 문자를 제거하는 58비트 텍스트 인코딩으로 수동 입력 및 복사 공유에 적합합니다.
- Base58Check
- 원래 페이로드 뒤에 4바이트 체크섬이 추가된 다음 전체 Base58 인코딩을 사용하여 입력 오류를 더 일찍 감지합니다.
- 페이로드
- 인코딩하기 전에 Base58 또는 Base58Check 원시 바이트 콘텐츠를 수행하세요. 이는 텍스트, 파일 바이트, 주소 페이로드 또는 임의의 바이너리 데이터일 수 있습니다.
- 체크섬
- 빠른 오류 확인을 위한 짧은 지문. Base58Check은 페이로드에서 SHA-256을 두 배로 늘리고 처음 4바이트를 체크섬으로 사용합니다.
- Bitcoin Base58 문자표
- 가장 일반적인 Base58 문자 테이블: 123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz.
- Flickr Base58
- Flickr는 Base58에서 사용하는 또 다른 정렬 세트입니다. 대소문자 순서는 Bitcoin 버전과 다르므로 동일한 바이트가 다른 출력을 얻습니다.
현재 페이지에서 지원하는 문자표
For the same set of bytes, as long as the character table order is different, the final Base58 output will be different.
| 캐릭터 테이블 | 일반적인 용도 | 설명 |
|---|---|---|
언제 16진수 보기로 전환해야 합니까?
Base58 디코딩된 결과를 항상 텍스트로 직접 읽을 수는 없습니다.
| 발견된 콘텐츠 | 더 나은 보기 방법 | 이유 |
|---|---|---|
Authoritative References
- Bitcoin WikiBitcoin 위키 - Base58Check 인코딩
- Wikipedia위키피디아 - Base58
- GitHubIPFS CID 사양
- GitHubBitcoin BIP-0173 Bech32
- 텍스트 비교
- 바이너리 변환
- 시저 암호
- 모스 부호
- 16진수 변환
- 비디오를 Base64로 변환
- Base64를 동영상으로 변환
- 이미지를 Base64로 변환
- Base64 이미지 변환
- 텍스트를 Base64로 변환
- Base64 텍스트로 변환
- 파일 해시 검증
- File to Base64
- Base64 파일로 변환
- 오디오 → Base64
- Base64를 오디오로 변환
- AES 암호화 및 복호화
- DES 암호화/복호화
- Base32 인코더 디코더
- Base58 인코딩 및 디코딩
- Base64 인코딩
- Base64 디코드
- Base64 비교
- Base64 분할
- Base64 여러 줄 병합
- Base64 형식화
- Base64 형식 검사
- Base64 일괄 인코딩
- Base64 일괄 디코딩
- Base64 정리
- Base64 패딩 처리
- Base64 길이 통계
- Base64 16진수로 변환
- Base64 DataURL 변환
- Base64-Hex 양방향 변환
- Base85 인코딩/디코딩
- HMAC 생성 및 검증
- PBKDF2 키 파생
- MD5 해시값
- SHA-256 해시
- SHA1 해시
- SHA512 해시
- JWT 도구
- HTML 엔티티 인코딩/디코딩
- Unicode 이스케이프
- URL 인코딩
- URL Safe Base64
- MIME Base64
- Java 난독화
- JS 난독화
- PHP 난독화
- Python 난독화