3630 registros
0 hoje
14 nesta semana
4 neste mês| Base64 * |
|
|
|
| Escrito por vovó Vicki | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Qui, 24.08.2006 16:07 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
Base64 é um sistema numérico posicional cuja base é 64 (da mesma forma que o sistema decimal é um sistema posicional de base 10). É a maior potência de base 2 que pode ser representada usando-se apenas caracteres ASCII. Devido a esta característica, a Base64 é usada, entre outras coisas, como codificação de transferência de e-mails. Todas as variações mais conhecidas pelo nome de Base64 usam caracteres de A a Z, a-z e 0-9 (nesta ordem) para os primeiros 62 dígitos, mas os símbolos usados para os dois últimos variam consideravelmente de acordo com o sistema. Vários outros métodos de codificação, como o UUEncode e as versões mais atuais do BinHex, usam um conjunto diferente de 64 caracteres para representar 6 dígitos binários - só que estes métodos nunca são chamados de Base64. O formato MIMEO formato MIME talvez seja o mais conhecido dos Base64. É um esquema de codificação que transforma binários em texto, ou seja, transforma uma sequência qualquer de bytes numa sequência de caracteres ASCII que podem ser impressos. O MIME foi projetado para codificar a transferência de conteúdo de e-mails através da Internet. Os únicos caracteres utilizados são os do alfabeto latino maiúsculo e minúsculo (A-Z e a-z), os numerais (0-9) e os símbolos + e /. Além disso, o símbolo = é um sufixo especial. Como transformar binários em MIMEA sequência MIME é:
ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/
Digamos que se queira "mimeficar" SOL. Neste caso, procura-se o valor ASCII de cada um dos caracteres, transforma-se estes valores em valores binários, toma-se os valores dos bits seis a seis e transforma-se estes valores novamente em valores ASCII. Acompanhe na tabela abaixo:
Sabendo que, na Base64, as letras A-Z correspondem às posições de 0 a 25, as letras a-z ficam nas posições 26 a 51 e que os dígitos 0-9 ocupam as posições de 52 a 61, fica fácil deduzir que o valor 20 corresponde à letra U, o valor 52 corresponde a zero e assim por diante. Neste caso, o correspondente Base64 de SOL é U09M. Também fica fácil perceber que a codificação MIME é maior do que o texto original porque, para cada três caracteres originais obtemos quatro caracteres MIME. Neste exemplo existem exatos 3 bytes. Nos casos em que o texto original é composto por um número de bytes que não seja múltiplo de 3, usa-se a seguinte regra:
número de bytes / 3 dá resto 2 -> adiciona-se o sinal = no final
número de bytes / 3 dá resto 1 -> adiciona-se dois sinais == no final
Especificações MIMEAs especificações completas deste tipo de Base64 são dadas pelas RFC 1421 e RFC 2045. Confira o código |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Atualização Qua, 15.04.2009 12:51 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||