Pular para o conteúdo

Conversor Base64

Conceitos

Princípio da codificação Base64

Base64 usa 64 caracteres, A-Z, a-z, 0-9, + e /, para codificar texto. A ideia é dividir três bytes de 8 bits em quatro grupos de 6 bits e mapear cada grupo na tabela Base64.

  • a: 0110 0001
  • b: 0110 0010
  • 2: 0011 0010

Mapeamento do índice Base64

  • Y: 0110 00
  • W: 0101 10
  • I: 0010 00
  • y: 1100 10

Antes da divisão: 0110 0001, 0110 0010, 0011 0010, que são a, b e 2.

Depois da divisão: 0110 00, 0101 10, 0010 00, 1100 10, mapeados para Y, W, I e y.

Assim, a codificação Base64 de ab2 é YWIy.

Por que o tamanho em Base64 é cerca de 4/3 do original?

Um byte precisa de 8 bits, mas Base64 agrupa dados em unidades de 6 bits. Cada unidade de 6 bits precisa ser preenchida de volta para 8 bits para armazenamento.

Após o preenchimento, 24 bits originais viram 32 bits, por isso o resultado Base64 fica em torno de 4/3 do tamanho original.

Diferença entre Base64url e Base64

No Base64 padrão, + e / são codificados como %2B e %2F dentro de URLs, deixando a URL mais longa. Base64url usa A-Z, a-z, 0-9, - e _ para gerar texto amigável para URL.

Agradecimentos