Codificador Base64

5 de 2 avaliações
Codificador Base64

O Codificador Base64 é uma ferramenta gratuita que converte uma string em texto Base64 padrão.

O que é Base64 e por que ele existe?

Base64 é uma codificação de dados binários em texto que representa os dados usando letras, números e um pequeno conjunto de símbolos. Ele existe porque alguns sistemas conseguem transportar texto de forma confiável, mas podem alterar ou rejeitar dados binários brutos.

O alfabeto Base64 padrão contém letras maiúsculas e minúsculas, dígitos, sinais de adição e barras. Um sinal de igual pode aparecer no final como preenchimento. O valor codificado costuma ser maior que o original, pois cada grupo de três bytes da entrada se transforma em quatro caracteres Base64.

A entrada é Hello.

A saída é SGVsbG8=.

Base64 trabalha com bytes, não com caracteres legíveis por pessoas. Espaços, sinais de pontuação e números são codificados como qualquer outra entrada. Letras acentuadas, emojis e sistemas de escrita não latinos precisam primeiro de uma codificação de caracteres, geralmente UTF-8, e codificações de bytes diferentes geram resultados Base64 diferentes. Uma entrada vazia produz um valor codificado vazio, enquanto uma entrada muito longa gera uma string proporcionalmente maior.

Base64 é codificação, não criptografia. Qualquer pessoa com um decodificador pode recuperar os dados originais. Portanto, ele não oferece sigilo e não é adequado para ocultar senhas, chaves de API ou informações pessoais.

Diagrama: o texto passa pela ferramenta Codificador Base64 nos dois sentidos

Como usar o Codificador Base64?

Insira a string que deseja codificar e consulte o valor convertido no campo de resultado Codificado em Base64. A ferramenta usa a codificação Base64 padrão por meio da função base64_encode do PHP.

  1. Copie a string original exatamente como ela é, incluindo todos os espaços e quebras de linha que precisam ser preservados.
  2. Copie o valor Base64 retornado sem adicionar aspas nem espaços em branco extras.
A ferramenta Codificador Base64 no digily.link, com o formulário de entrada

O processamento é feito no servidor. Sua entrada é enviada ao servidor por HTTPS e não é armazenada. Embora o HTTPS proteja a solicitação durante o tráfego, evite enviar dados sigilosos, a menos que o sistema que os receberá realmente exija Base64.

Onde o Base64 é usado na prática?

Base64 é usado quando dados binários ou bytes arbitrários precisam passar por um formato baseado em texto. O sistema receptor precisa saber que o valor está em Base64 e decodificá-lo na etapa apropriada.

  • URLs de dados inserem imagens, fontes ou outros arquivos codificados em Base64 diretamente no HTML ou CSS, junto com um tipo de mídia.
  • Strings de consulta às vezes transportam tokens codificados ou dados estruturados, embora a variante Base64 segura para URLs normalmente seja mais adequada.
  • Email usa Base64 como uma das codificações de transferência MIME para anexos e partes de mensagens que não podem ser enviadas com segurança como texto simples.
  • Payloads JSON podem representar bytes de imagens, documentos ou material criptográfico como strings, pois o JSON não tem um tipo binário nativo.
  • Autenticação HTTP usa Base64 para o nome de usuário e a senha na autenticação Basic. O valor continua legível depois de decodificado, por isso a segurança no transporte ainda é necessária.
Exemplo de resultado gerado pela ferramenta Codificador Base64

Como escolher entre Base64 padrão e Base64url

Esta ferramenta gera Base64 padrão, adequado para emails MIME, muitas APIs JSON e sistemas que solicitam explicitamente o alfabeto Base64 convencional. A saída padrão pode conter +, / e preenchimento = no final.

Escolha Base64url quando o valor fizer parte de uma URL, um nome de arquivo, um cookie ou um JSON Web Token. Essa variante substitui + por - e / por _, além de muitas vezes omitir o preenchimento. Não troque de variante sem consultar a especificação do sistema receptor. Um decodificador que espera um dos alfabetos pode rejeitar o outro.

Por que o Base64 não é decodificado ou gera caracteres sem sentido?

Normalmente, o Base64 não é decodificado porque a entrada usa uma variante inesperada ou foi alterada durante o tráfego. Um Base64 válido também pode ser decodificado em bytes binários que parecem caracteres sem sentido quando exibidos como texto.

  • Alfabeto incorreto é um problema comum quando uma entrada Base64url é enviada a um decodificador Base64 padrão estrito, ou vice-versa.
  • Falta de preenchimento pode causar um erro em decodificadores que exigem que o comprimento seja completado com um ou dois sinais de igual.
  • Codificação dupla ocorre quando um valor já codificado é codificado novamente. Nesse caso, a primeira decodificação retorna outra string com aparência de Base64, em vez do conteúdo original.
  • Caracteres alterados podem ocorrer quando um sinal de adição em uma string de consulta é interpretado como espaço ou quando a cópia introduz quebras de linha e espaços.
  • Saída binária pode parecer um conjunto de caracteres sem sentido quando exibida como texto. Os bytes decodificados podem corresponder a uma imagem, um arquivo compactado, um PDF ou um arquivo criptografado que precisa ser aberto pelo aplicativo correto.

O Decodificador Base64 pode reverter texto em Base64 padrão. Se os bytes decodificados representarem uma imagem, a ferramenta Base64 para Imagem pode ser o próximo passo mais direto.

Perguntas frequentes

O Base64 preserva letras maiúsculas e quebras de linha?

Sim. O Base64 preserva os bytes subjacentes, incluindo maiúsculas e minúsculas e os caracteres de quebra de linha. No entanto, as terminações de linha dos sistemas Windows e Unix usam sequências de bytes diferentes. Por isso, textos com várias linhas visualmente idênticos podem gerar valores codificados diferentes.

Posso colar Base64 diretamente no HTML ou CSS?

Somente se você adicionar a sintaxe exigida pelo documento. Uma URL de dados normalmente precisa de um tipo de mídia e do marcador ;base64 antes do payload codificado. Este codificador retorna apenas o payload, em vez de montar a URL completa.

O mesmo texto sempre gera o mesmo valor Base64?

Sim, desde que os bytes da entrada sejam idênticos. Uma codificação de caracteres diferente, um espaço invisível no final, uma marca de ordem de bytes ou uma mudança na terminação de linha alterará o resultado.

O Base64 diferencia maiúsculas de minúsculas?

Sim. Caracteres maiúsculos e minúsculos representam valores diferentes no alfabeto Base64. Portanto, mudar a capitalização pode corromper os dados decodificados, mesmo que a string ainda pareça válida.

Esta ferramenta consegue codificar um arquivo?

Esta ferramenta foi projetada para strings, não para o envio de arquivos. Colar a representação textual de um arquivo não é o mesmo que codificar seus bytes brutos. Se outro aplicativo exigir os bytes de um arquivo em Base64, use um codificador compatível com arquivos e siga os requisitos desse aplicativo para o alfabeto Base64 e o preenchimento.

Ferramentas semelhantes

Decodificador Base64

Decodifique uma entrada Base64 de volta ao formato de texto original com nossa ferramenta de decodificação Base64 para recuperar dados facilmente.

4,710
32

Ferramentas populares