Codificar e decodificar Base58
O texto comum é convertido primeiro em bytes UTF-8 e depois codificado como Base58 ou Base58Check.
Codifique e decodifique Base58 ou Base58Check no navegador, com suporte para texto, arquivos, alfabetos personalizados e saida hexadecimal.
Sugestões Relacionadas
O que são Base58 e Base58Check?
Base58 é uma codificação de texto destinada à leitura e colagem humana. Ele removerá facilmente caracteres mal interpretados, como 0, O, I e l, por isso é frequentemente usado em cenários como logotipos curtos, códigos de convite, endereços de carteira e códigos de compartilhamento offline.
A tabela de caracteres padrão Bitcoin Base58 é `123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz`. Esta página oferece suporte à versão Flickr do alfabeto e ao seu próprio alfabeto definido de 58 caracteres.
Base58Check é uma solução que anexa uma soma de verificação de 4 bytes após os bytes originais e a codifica em Base58 como um todo. É frequentemente usado para endereços Bitcoin antigos, exportações de chaves privadas WIF, códigos de convite ou strings que precisam ser transcritos manualmente. O objetivo é detectar erros de digitação, palavras faltantes ou fora de ordem mais cedo.
Se você obtiver uma carga binária, uma carga de endereço ou um fragmento de hash, o conteúdo decodificado não será necessariamente um texto legível. Neste momento, é mais adequado mudar para hexadecimal para visualização, em vez de julgar mal os caracteres ilegíveis como falha de decodificação.
IPFS CIDv0 usa o padrão Base58btc em vez de Base58Check; `bc1...` Este tipo de endereço Bitcoin pertence a Bech32 e não está no escopo desta página Base58.
Casos de uso
- Verifique se o endereço Bitcoin antigo, a string de exportação de chave privada WIF ou o código de compartilhamento personalizado Base58Check foram inseridos incorretamente.
- Codifique pequenos arquivos, fragmentos binários ou cargas de teste em Base58 para facilitar a entrega em logs, chats ou tickets.
- Decodifique a string Base58 em hexadecimal e, em seguida, analise-a em busca de bytes de versão, hash ou carga útil bruta.
- Compare a saída entre Bitcoin Base58 e Flickr Base58 para descobrir por que o mesmo conjunto de bytes tem resultados diferentes em sistemas diferentes.
- Projete sua própria tabela de caracteres de 58 caracteres para códigos de convite internos, logotipos curtos ou tokens offline e verifique se ambas as extremidades são consistentes.
Como Usar
- Selecione o modo de codificação ou decodificação; se você precisar lidar com strings propensas a erros inseridas por humanos, ative a opção Base58Check.
- Selecione Bitcoin, Flickr ou uma tabela de caracteres personalizada; se for um protocolo privado, primeiro certifique-se de que ambas as partes utilizem o mesmo conjunto de sequências de 58 caracteres.
- Insira texto ou carregue um arquivo durante a codificação; cole a string Base58 ao decodificar, mudando para o resultado hexadecimal para ver os bytes brutos, se necessário.
- Copie ou baixe diretamente após visualizar a saída; se for Base58Check, a página perguntará de forma síncrona se a verificação foi aprovada.
Recursos
- Modos duplos padrão Base58 e Base58Check: a codificação normal pode ser feita diretamente ou uma soma de verificação de 4 bytes pode ser automaticamente anexada ou verificada.
- Tanto o texto quanto os arquivos podem ser codificados: o texto comum será processado de acordo com UTF-8 e os arquivos serão codificados de acordo com bytes brutos, o que é adequado para entrega offline de conteúdo binário.
- Os resultados da decodificação podem ser alternados entre texto ou hexadecimal: não fique preso a jargões ao encontrar cargas úteis de endereço, fragmentos de hash ou dados que não sejam UTF-8.
- Suporta Bitcoin, Flickr e tabela de caracteres personalizada de 58 caracteres: adequado para compatibilidade com sistemas existentes ou depuração de soluções privadas de código curto.
- Processamento local do navegador e download de resultados: codificação, decodificação e verificação são concluídos localmente e a saída pode ser copiada ou baixada diretamente.
Como escolher Base58, Base58Check, Base64?
Ambos podem converter bytes em texto transitável, mas o foco é completamente diferente. A chave não é "o que é mais avançado", mas se você valoriza mais a transcrição manual e a prevenção de erros ou se você valoriza a compacidade e a compatibilidade universal.
| Plano | mais adequado | Vantagens | Nota |
|---|---|---|---|
| Codificação Base64Base64 URL Seguro | |||
| Codificação Base32 |
Best Practices
Será dada prioridade a Base58Check quando transcrito manualmente ou retransmitido pelo atendimento ao cliente
Contanto que a string seja ditada, capturada de tela, encaminhada no bate-papo ou digitada novamente manualmente, quase sempre vale a pena abrir uma soma de verificação. Isso não evitará todos os erros, mas reduzirá significativamente as situações "parece que está certo, mas na verdade está faltando um caractere".
Quando o resultado decodificado não for texto, primeiro observe o hexadecimal
Não há garantia de que conteúdos como cargas de endereço, hashes, cabeçalhos de imagem e fragmentos compactados sejam UTF-8. Primeiro mude para hexadecimal para confirmar os bytes originais e, em seguida, decida se deseja converter o arquivo, continuar o hash ou entregá-lo a outras ferramentas para processamento.
Ferramentas hexadecimaisNão use Base58 como formato de armazenamento de longo prazo para arquivos grandes
Base58 é mais adequado para strings curtas e cargas úteis pequenas a médias. Quanto maior o arquivo, mais longa será a saída, menos conveniente de copiar e maior a probabilidade de ser truncado em rich text, ferramentas de bate-papo ou logs.
Ao personalizar a tabela de caracteres, ela deve estar sincronizada com todos os terminais de produção.
Contanto que um servidor, script ou cliente use uma ordem diferente, os resultados de codificação e decodificação estarão todos desalinhados. Corrija primeiro a sequência de 58 caracteres e depois escreva-a no protocolo ou na amostra de teste.
Priorize a comparação Base64URL quando for necessária uma transmissão de interface mais curta e geral.
A vantagem do Base58 é que ele é fácil de ler e evita confusão, mas não é do menor tamanho. Se as strings são passadas principalmente entre programas e não serão transcritas por humanos, Base64URL é geralmente mais compacto e comum.
Base64 URL SeguroPerguntas frequentes
Qual devo escolher entre Base58 e Base64?
Se a string for lida, copiada ou inserida para outras pessoas, Base58 é o preferido; se for transmitido principalmente em programas, interfaces, parâmetros JSON ou URL, geralmente Base64 ou Base64URL é mais compacto. O foco de Base58 é a legibilidade e a anti-ofuscação, não o resultado mais curto.
Base58Check Que problema isso resolve?
Ele anexa uma soma de verificação de 4 bytes à carga original e, em seguida, codifica toda a carga com Base58. Dessa forma, quando o usuário erra uma palavra, comete um erro de digitação ou escreve na ordem errada, a ferramenta reportará mais facilmente um erro a tempo, em vez de obter silenciosamente uma sequência de resultados sem sentido.
Esta página pode verificar endereços Bitcoin?
Pode-se verificar se a camada Base58Check está correta, portanto, é adequado verificar se há erros de entrada óbvios na versão antiga do endereço Base58 ou na string de exportação WIF. No entanto, ele não determinará ainda mais o uso do endereço, o tipo de rede e o tipo de script, nem oferece suporte a endereços Bech32, como `bc1...`.
Por que o código após a decodificação está distorcido ou o prompt não é UTF-8?
Porque Base58 decodifica bytes brutos, não necessariamente texto legível. Isso pode acontecer com cargas de endereço, hashes, cabeçalhos de imagem ou dados binários arbitrários. Mude para hexadecimal para visualizar os bytes brutos e geralmente você poderá continuar a análise.
A codificação e decodificação do arquivo Base58 é suportada?
Suporte. Você pode fazer upload de arquivos durante a codificação e a página será convertida em Base58 de acordo com os bytes originais; você também pode baixar o resultado original após a decodificação. Quanto maior o arquivo, mais longa será a sequência de saída, tornando-o mais adequado para cargas de trabalho pequenas e médias ou cenários de depuração.
Quais tabelas de caracteres são suportadas?
Atualmente suporta os padrões Bitcoin Base58, Flickr Base58 e sua tabela de caracteres personalizada de 58 caracteres. Contanto que o final da codificação e o final da decodificação usem exatamente a mesma sequência de caracteres, eles podem se comunicar entre si.
Ele pode lidar com IPFS CID ou outras strings na cadeia?
CIDv0 Essas strings Base58btc padrão podem ser codificadas ou decodificadas diretamente; mas a página não continuará a analisar semântica multibase, multicodec ou concreta na cadeia. Strings Bech32 como `bc1...` não se enquadram no escopo de Base58.
O conteúdo enviado será enviado ao servidor?
Não. Texto, arquivos e resultados de soma de verificação Base58Check são todos processados localmente no navegador, o que é adequado para depurar cargas confidenciais, dados de teste offline ou fragmentos de arquivo cujo upload é inconveniente.
Solução de Problemas
A dica contém caracteres Base58 ilegais
A tabela de caracteres atual não aceita caracteres excluídos como 0, O, I e l. Também pode ser que você tenha cortado a tabela de caracteres Bitcoin/Flickr/personalizada errada. Primeiro confirme a origem da string e, em seguida, verifique se a tabela de caracteres é consistente com a outra parte.
Base58Check verificação falhou
Isso geralmente significa que a string foi copiada de forma insuficiente, os caracteres foram escritos incorretamente ou não é o próprio Base58Check. Primeiro confirme se você realmente precisa abrir Base58Check e depois volte e verifique se o conteúdo original está completo.
A tabela de caracteres personalizados não pode ser salva
A tabela de caracteres personalizados deve ter exatamente 58 caracteres e cada caractere deve aparecer apenas uma vez. Recomenda-se modificar primeiro a tabela de caracteres padrão Bitcoin para evitar caracteres ausentes ou repetidos.
O resultado decodificado não é texto
Isso não é necessariamente um bug. Muitas strings Base58 originalmente carregam cargas binárias. Mude para hexadecimal para visualizar ou baixe os resultados da decodificação como um arquivo e decida a próxima etapa.
Glossário
- Base58
- Codificação de texto de 58 bits que remove caracteres facilmente confundidos, como 0, O, I, l, etc., adequada para entrada manual e compartilhamento de cópia.
- Base58Check
- Uma soma de verificação de 4 bytes é anexada após a carga original e, em seguida, toda a codificação Base58 é usada para detectar erros de entrada antecipadamente.
- Carga útil
- Faça Base58 ou Base58Check conteúdo de bytes brutos antes da codificação, que pode ser texto, bytes de arquivo, carga útil de endereço ou dados binários arbitrários.
- Soma de verificação
- Impressões digitais curtas para verificação rápida de erros. Base58Check duplicará SHA-256 na carga útil e usará os primeiros 4 bytes como soma de verificação.
- Bitcoin Base58 Tabela de caracteres
- A tabela de caracteres Base58 mais comum: 123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz.
- Flickr Base58
- Flickr é outro conjunto de classificação usado por Base58, a ordem dos casos é diferente da versão Bitcoin, portanto, os mesmos bytes obterão saídas diferentes.
Tabela de caracteres suportada pela página atual
Para o mesmo conjunto de bytes, desde que a ordem da tabela de caracteres seja diferente, a saída Base58 final será diferente.
| tabela de caracteres | Usos comuns | Descrição |
|---|---|---|
Quando você deve mudar para a visualização hexadecimal?
Base58 O resultado decodificado nem sempre pode ser lido diretamente no texto.
| Conteúdo encontrado | Uma maneira melhor de visualizar | Razão |
|---|---|---|
Authoritative References
- Bitcoin WikiBitcoin Wiki - Base58Check Codificação
- WikipediaWikipédia - Base58
- GitHubIPFS CID Especificação
- GitHubBitcoin BIP-0173 Bech32
- Comparação Segura de Strings
- Conversão Binária
- Cifra de César
- Código Morse
- Codificação/Decodificação Hexadecimal
- Vídeo para Base64
- Base64 para Vídeo
- Imagem para Base64
- Base64 para Imagem
- Texto para Base64
- Base64 para Texto
- Verificador de hash de arquivo
- Arquivo para Base64
- Base64 para Arquivo
- Áudio para Base64
- Base64 para Áudio
- Criptografar e descriptografar AES
- Criptografia DES
- Codificador e Decodificador Base32
- Codificar e decodificar Base58
- Codificação Base64
- Decodificação Base64
- Comparação Base64
- Dividir Base64
- Mesclar Base64 em várias linhas
- Formatação Base64
- Verificação de Formato Base64
- Codificação Base64 em lote
- Decodificação Base64 em Lote
- Limpeza de Base64
- Preenchimento Base64
- Estatísticas Base64
- Base64 para Hexadecimal
- Conversor Base64 DataURL
- Conversor Base64-Hex
- Codificador Base85
- Gerador e Verificador HMAC
- Derivação de Chave PBKDF2
- Hash MD5
- Hash SHA-256
- Hash SHA1
- Hash SHA512
- Ferramenta JWT
- Codificação e Decodificação HTML
- Escape Unicode
- Codificação URL
- Base64 URL Safe
- MIME Base64
- Ofuscador Java
- Ofuscador JS
- Ofuscador PHP
- Ofuscação Python