Codificação Base64

Com a ferramenta de codificação Base64, você pode criptografar o texto inserido com o método Base64. Se desejar, você pode decodificar o código Base64 criptografado com a ferramenta Base64 Decode.

O que é codificação Base64?

A Codificação Base64 é um esquema de codificação que permite que dados binários sejam transportados em ambientes que usam apenas algumas codificações de caracteres restritas (ambientes onde nem todos os códigos de caracteres podem ser usados, como xml, html, script, aplicativos de mensagens instantâneas). O número de caracteres neste esquema é 64, e o número 64 na palavra Base64 vem daqui.

Por que usar a codificação Base64?

A necessidade de codificação Base64 decorre de problemas que surgem quando a mídia é transmitida em formato binário bruto para sistemas baseados em texto. Como os sistemas baseados em texto (como e-mail) interpretam dados binários como uma ampla variedade de caracteres, incluindo caracteres de comando especiais, a maioria dos dados binários transmitidos para o meio de transferência é mal interpretada por esses sistemas e é perdida ou corrompida na transmissão. processo.

Um método de codificação de tais dados binários de forma a evitar tais problemas de transmissão é enviá-los como texto ASCII simples no formato codificado em Base64. Essa é uma das técnicas usadas pelo padrão MIME para enviar dados que não sejam texto simples. Muitas linguagens de programação, como PHP e Javascript, incluem funções de codificação e decodificação Base64 para interpretar dados transmitidos usando a codificação Base64.

Lógica de Codificação Base64

Na codificação Base64, 3 * 8 bits = 24 bits de dados que consistem em 3 bytes são divididos em 4 grupos de 6 bits. Os caracteres correspondentes aos valores decimais entre [0-64] desses 4 grupos de 6 bits são correspondidos da tabela Base64 para codificar. O número de caracteres obtidos como resultado da codificação Base64 deve ser múltiplo de 4. Os dados codificados que não são múltiplos de 4 não são dados Base64 válidos. Ao codificar com o algoritmo Base64, quando a codificação estiver concluída, se o comprimento dos dados não for múltiplo de 4, o caractere "=" (igual) será adicionado ao final da codificação até que seja um múltiplo de 4. Por exemplo, se tivermos dados codificados Base64 de 10 caracteres como resultado da codificação, dois "==" devem ser adicionados ao final.

Exemplo de codificação Base64

Por exemplo, pegue os três números ASCII 155, 162 e 233. Esses três números formam um fluxo binário de 100110111010001011101001. Um arquivo binário, como uma imagem, contém um fluxo binário que funciona para dezenas ou centenas de milhares de zeros e uns. Um codificador Base64 começa dividindo o fluxo binário em grupos de seis caracteres: 100110 111010 001011 101001. Cada um desses agrupamentos é traduzido nos números 38, 58, 11 e 41. Um fluxo binário de seis caracteres é convertido entre binário (ou básico). 2) para caracteres decimais (base 10) elevando ao quadrado cada valor representado por 1 na matriz binária pelo quadrado posicional. Começando da direita e movendo para a esquerda e começando em zero, os valores no fluxo binário representam 2^0, depois 2^1, depois 2^2, depois 2^3, depois 2^4, depois 2^ 5.

Aqui está outra maneira de olhar para isso. A partir da esquerda, cada posição vale 1, 2, 4, 8, 16 e 32. Se o slot tiver um número binário 1, você adiciona esse valor; se o slot tiver 0, você está ausente. Matriz binária 100110 voltas 38: 0 * 2 ^ 01 + 1 * 2 ^ 1 + 1 * 2 ^ 2 + 0 * 2 ^ 3 + 0 * 2 ^ 4 + 1 * 2 ^ 5 = 0 + 2 decimal + 4 + 0 + 0 + 32. A codificação Base64 pega essa string binária e a divide em valores de 6 bits 38, 58, 11 e 41. Finalmente, esses números são convertidos em caracteres ASCII usando a tabela de codificação Base64.