Codificar/Decodificar Base62 (Binário)

Processamento 100% no lado do cliente (sem upload para servidor). Codifique arquivos/bytes binários em texto Base62 com alfabetos selecionáveis, quebra de linha opcional e processamento linha por linha, além de validação estrita e suporte a URI data: ao decodificar de volta para bytes.

Loading…

Sobre Codificar/Decodificar Base62 (Binário)

Use esta ferramenta para codificar arquivos binários (bytes) em texto Base62 para transporte em sistemas que preferem payloads alfanuméricos. Embora esta página seja otimizada para intenção de codificação, ela também inclui uma ação de decodificação para converter Base62 de volta em um arquivo binário para download. Tudo é executado localmente no seu navegador (sem upload), e você pode controlar o alfabeto Base62, quebra de linha opcional, separadores e rigor de validação para corresponder ao seu produtor/consumidor.

Funcionalidades

  • Upload/arrastar-e-soltar arquivos binários (.bin, .dat, arquivos) com suporte a lote de múltiplos arquivos
  • Duas ações: Codificar (binário → texto Base62) e Decodificar (texto Base62 → arquivo para download)
  • Seleção de alfabeto: 0-9A-Za-z (comum), 0-9a-zA-Z, A-Za-z0-9, a-zA-Z0-9
  • Quebra de linha opcional (modo codificar): quebrar em uma largura de coluna escolhida ou desativar (0)
  • Escolha o separador de linha: LF ( ) ou CRLF ( ) para saída com quebra
  • Processar linha por linha para payloads de múltiplos registros (útil quando cada linha é um chunk Base62 separado)
  • A decodificação pode aceitar um prefixo data:*;base62, (alternável)
  • Alternar validação estrita para rejeitar caracteres inválidos para o alfabeto selecionado
  • Modo de visualização ao vivo para entradas pequenas (desative para payloads grandes)
  • Processamento 100% no lado do cliente (sem upload para servidor).

Como usar for base62-binary-encoder

1

Solte um arquivo (ou cole texto Base62)

Para codificar, arraste e solte um ou mais arquivos binários na zona de soltura. Para decodificar, cole o texto Base62 que você recebeu (opcionalmente com um prefixo data:*;base62, se habilitado).

2

Escolha a ação/modo e execute

Selecione "Ação" (Codificar ou Decodificar), depois clique no botão correspondente. Para codificação, escolha o "Alfabeto" que você precisa e opcionalmente defina "Quebrar linhas em" e o separador de linha. Para decodificação, habilite "Validação estrita" para detectar caracteres inválidos antecipadamente e alterne "Aceitar prefixo data:*;base62," se sua entrada o incluir.

3

Copie a saída ou baixe o arquivo decodificado

Após a codificação, copie a saída de texto Base62 (com quebra e separação conforme configurado). Após a decodificação, baixe o arquivo binário reconstruído (as regras de nome de arquivo normalmente removem .b62 quando presente e recorrem a .bin quando necessário).

Especificações técnicas

Modelo de Execução

Divulgação de tempo de execução, restrições e manipulação de dados.

AspectoDetalhe
ModoProcessamento 100% no lado do cliente (sem upload para servidor).
Escopo da açãoCodificar binário → texto Base62 (primário), mais Decodificar Base62 → download binário
EntradasCodificar: Arquivo/Blob/Uint8Array/ArrayBuffer/TypedArray. Decodificar: String Base62 (opcionalmente com prefixo data:*;base62)
SaídasCodificar: Texto Base62. Decodificar: bytes como um arquivo para download
Limites~1–2MB de caracteres; ~25000 ms de tempo limite
RetençãoTodo o processamento ocorre localmente no seu navegador (sem upload)
Para dados sensíveis (segredos, arquivos privados), prefira ferramentas offline/locais e evite compartilhar cargas úteis via área de transferência ou capturas de tela.

Exemplo Mini

Uma pequena sequência de bytes codificada usando o alfabeto comum "0-9A-Za-z". A saída varia conforme o alfabeto e as configurações de quebra.

ItemValor
Bytes de entrada (hex)00 01 02 03 04 05 06 07 08 09
Saída (Base62)(depende da implementação/alfabeto)
O que altera a saídaOrdem do alfabeto, quebra opcional, separador de linha, e se você codifica como um único blob ou em pedaços linha por linha
Base62 não é um padrão universal único como o Base64 RFC 4648. Mantenha sempre o alfabeto consistente entre o codificador e o decodificador.

Erros e Casos Extremos

Modos de falha comuns e como corrigi-los.

SintomaCausa provávelO que verificar
A entrada deve ser uma string para decodificarVocê tentou decodificar, mas forneceu bytes/arquivo em vez de texto Base62Defina Ação para Decodificar e cole o texto Base62; use Codificar para arquivos carregados
Esta ferramenta codifica dados binários... não uma string de textoVocê tentou codificar colando texto no codificador binárioCarregue um arquivo (ou passe bytes). Se precisar de conversão texto→bytes, use primeiro uma ferramenta orientada a texto
Erro de validação estrita / caracteres inválidosA entrada contém caracteres não presentes no alfabeto Base62 selecionado (ou contém separadores/prefixos)Selecione o Alfabeto correto, desative Estrito para testar entradas tolerantes e remova espaços em branco extras; se a entrada tiver um prefixo data:*;base62, ative Aceitar URI de dados
Arquivo decodificado parece corrompidoIncompatibilidade de alfabeto ou o produtor usou uma variante Base62 diferenteVerifique a ordem do alfabeto com o produtor (0-9A-Za-z vs 0-9a-zA-Z etc.) e mantenha-a idêntica em ambos os lados
Quebras de linha ou limites de pedaço inesperadosA entrada/saída está quebrada ou você usou o processamento linha por linha incorretamentePara uma única carga útil, defina Quebrar linhas em 0 e mantenha linhaPorLinha desativado; para fluxos de múltiplos registros, ative linhaPorLinha e garanta um pedaço Base62 por linha
Entrada muito grande (máx. 2MB) / tempo esgotadoA carga útil excede os limites seguros ou o dispositivo está lentoDivida a carga útil, desative a visualização ao vivo ou mude para um script/ferramenta local para arquivos grandes

Opções e Regras de Saída

Como as opções da interface influenciam o comportamento de codificação/decodificação.

OpçãoAplica-se aEfeito
AçãoCodificar / DecodificarCodificar transforma bytes em texto Base62; Decodificar transforma texto Base62 em um arquivo binário para download.
AlfabetoCodificar / DecodificarDefine a ordem do conjunto de 62 caracteres. Deve corresponder entre sistemas para uma decodificação correta.
Quebrar linhas emSomente codificaçãoSe > 0, insere quebras de linha na largura escolhida; 0 desativa a quebra.
Separador de linhaCodificar / Decodificar (formatação)Controla qual sequência de nova linha é usada ao quebrar ou emitir saída baseada em linhas: LF ou CRLF.
Visualização ao vivoAmbosExecuta automaticamente em alterações (melhor para entradas pequenas). Desative para cargas úteis grandes para evitar tempos esgotados.
Processar linha por linhaAmbosTrata cada linha como um registro separado. Útil para listas/fluxos de blocos Base62.
Aceitar prefixo data:*;base62,Somente decodificaçãoPermite entradas que começam com um prefixo semelhante a um URI de dados para que a ferramenta possa removê-lo antes da decodificação.
Validação estritaSomente decodificaçãoRejeita caracteres fora do alfabeto selecionado e detecta entradas malformadas precocemente.
Se você não controla o produtor, comece identificando qual alfabeto ele usa, depois bloqueie essa escolha em todos os lugares (documentação, CI e código).

Alternativas de linha de comando

Não há um CLI Base62 universal na maioria dos sistemas operacionais. Para resultados reproduzíveis em CI ou para arquivos grandes, use uma biblioteca mantida e documente explicitamente o mapeamento de alfabeto usado pelo seu sistema.

Todas as plataformas (Python)

Codificar/decodificar Base62 usando uma biblioteca mantida (fixar versão + alfabeto)

python -c "import sys; print('Base62 não está na biblioteca padrão do Python. Use uma biblioteca Base62 mantida, fixe sua versão e configure explicitamente o alfabeto (ex.: 0-9A-Za-z vs 0-9a-zA-Z).')"

A biblioteca padrão do Python não inclui Base62. Para correção e reprodutibilidade, use uma biblioteca respeitável, fixe a versão da dependência e mantenha o alfabeto consistente entre serviços.

Node.js

Codificar/decodificar Base62 usando uma biblioteca mantida (alfabeto documentado)

node -e "console.error('Base62 não é nativo no núcleo do Node. Use uma biblioteca Base62 confiável, fixe sua versão e documente/configure o alfabeto (0-9A-Za-z, 0-9a-zA-Z, etc.) para evitar incompatibilidades.')"

O Node não inclui um codec Base62 em seu núcleo. Prefira uma biblioteca confiável e registre a escolha do alfabeto para que a codificação/decodificação permaneçam compatíveis ao longo do tempo.

Casos de uso

Incorporar artefatos binários em canais somente texto

  • Anexar pequenos binários dentro de JSON, YAML ou sistemas orientados por ambiente que preferem payloads alfanuméricos
  • Compartilhar fixtures de teste como texto Base62 quando bytes brutos não são convenientes
  • Armazenar identificadores ou payloads relativamente compactos sem alfabetos carregados de pontuação

Teste de interoperabilidade entre alfabetos

  • Comparar saídas entre diferentes ordens de alfabeto para entender restrições de compatibilidade
  • Ensinar a diferença entre Base64 (padronizado) e Base62 (variante-dependente)
  • Demonstrar por que validação estrita e alfabetos explícitos são importantes

Verificações de sanidade em CI para pequenos artefatos

  • Validar que o Base62 produzido decodifica de volta para bytes com sucesso (verificações de ida e volta)
  • Impor uma única escolha de alfabeto entre repositórios mantém as builds reproduzíveis
  • Normalizar quebras/separadores para que os diffs permaneçam estáveis

Reduzir ambiguidade e riscos de decodificação

  • Habilitar validação estrita para rejeitar caracteres inesperados precocemente
  • Evitar copiar segredos para ferramentas do navegador; use scripts locais para dados sensíveis
  • Documentar e travar escolhas de alfabeto para prevenir corrupção acidental entre sistemas

❓ Frequently Asked Questions

Existe uma API pública para esta ferramenta?

Não. Esta é uma ferramenta no navegador e não expõe um endpoint de API pública.

O processamento é local ou remoto?

Processamento 100% no lado do cliente (sem upload para servidor). Toda codificação/decodificação ocorre localmente no seu navegador.

Posso codificar segredos ou arquivos sensíveis aqui com segurança?

Evite. Mesmo com processamento local, segredos podem vazar via histórico da área de transferência, capturas de tela, extensões ou máquinas compartilhadas. Para material sensível, prefira ferramentas locais/offline.

Por que a decodificação falha com um erro de validação/parse?

A maioria das falhas vem de uma incompatibilidade de alfabeto, prefixos inesperados (como data:*;base62,), espaços em branco/novas linhas ou caracteres não-Base62. Selecione o "Alfabeto" correto, habilite "Aceitar prefixo data:*;base62," se aplicável e use "Validação estrita" para identificar caracteres inválidos.

Por que meu arquivo decodificado está corrompido mesmo que a decodificação tenha sucesso?

As variantes de Base62 diferem pela ordem do alfabeto. Se o produtor usou um alfabeto diferente (por exemplo, 0-9a-zA-Z em vez de 0-9A-Za-z), a decodificação pode gerar bytes, mas não o conteúdo original. Verifique o alfabeto do produtor e mantenha-o idêntico em cada codificador/decodificador.

Pro Tips

Best Practice

Trate o Base62 como orientado por variantes: sempre registre o alfabeto (0-9A-Za-z vs 0-9a-zA-Z etc.) junto com a carga útil.

Best Practice

Para saídas estáveis, mantenha o embrulho desativado (wrapLineLength=0), a menos que você tenha uma camada de transporte que exija linhas de largura fixa.

Best Practice

Ative a validação Estrita ao depurar: ela detecta espaços em branco perdidos, caracteres incorretos e incompatibilidades de alfabeto precocemente.

CI Tip

No CI, adicione um teste de ida e volta (codificar → decodificar) em fixtures representativas e fixe a versão da sua biblioteca Base62.

Additional Resources

Other Tools

🔧 Codificador Binário Base62 — codifique arquivos/bytes para Base62 (alfabetos selecionáveis + quebra de linha) | Encode64