SEO ou Search Engine Optimization.

SEO Search Engine Optimization

É o processo que usamos para melhorar a visibilidade de um site... Mais informações »

Dicas Para Blog

Dicas Para Blog

Aqui você encotra tudo sobre personalização de blog... Mais informações »

Ganhado Dinheiro

Ganhado Dinheiro

Diversas formas de ganhar dinheiro com seu site ou blog... Mais informações »

Anuncie Aqui

Anuncie Aqui

Banner aleatório fica exposto de forma dinâmica, intercalando a divulgação com outro anunciante do site... Saiba Como »

Envie sua sugestão

Envie sua sugestão

Deixe sua sugestão para que possamos melhorar ainda mais a qualidade do nosso serviço... Envie sua sugestão »

Artigo sobre criptografia Base64 (Faculdade Fortium)



Base64 é uma forma usada para codificação dos dados e para transferência na Internet (codificação MIME para transferência de conteúdo). É bastante usado para transmitir dados binários por meios de transmissão que lidam apenas com texto.



É constituído por 64 caracteres ([A-Za-z0-9], "/" e "+") que deram origem ao seu nome. O caractere "=" é utilizado como um sufixo especial e a especificação original (RFC 989) definiram que o símbolo "*" pode ser utilizado para delimitar dados convertidos, mas não criptografados, dentro de um stream.
Exemplo de codificação:
Texto original: hello world
Texto convertido para Base64: aGVsbG8gd29ybGQK


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 MIME é um dos mais conhecido da Base64. É uma codificação que transforma binários em texto, ou seja, transforma uma sequência qualquer de bytes numa seqüê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 MIME
A sequência MIME é:
 ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz012345678

Digamos que se queira "mimeficar" SOL. Neste caso, procura-se o valor ASCII de cada um dos caracteres, transformam-se estes valores em valores binários, tomam-se os valores dos bits seis a seis e transformam-se estes valores novamente em valores ASCII. Acompanhe na tabela abaixo:

Conteúdo
S
O
L
ASCII (bytes)
83
79
76
Binário
0
1
0
1
0
0
1
1
0
1
0
0
1
1
1
1
0
1
0
0
1
1
0
0
Índice
20
52
61
12
Código Base64
U
0
9
M





Na Base64, as letras A-Z são à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 ficam nas posições de 52 a 61, o valor 20 corresponde à letra U, o valor 52 corresponde a 0, 61 a 9, 12 a M. O correspondente Base64 de SOL é U09M. A codificação MIME é maior do que o texto original porque, para cada três caracteres originais obtemos quatro caracteres MIME.

Especificação MIME
As especificações completas deste tipo de Base64 são dadas pelas RFC 1421 e RFC 2045.





Criptografia Utilizando base64 e str_repl
Esse código é ideal para quem precisa de uma criptografia forte em uma senha, por exemplo, mas com a possibilidade de decodificá-la, deste que tenha o código reverso. O código abaixo é simples e pode ser melhorado. Sua única restrição: não substitua nenhum caractere por '+', pois o reverso para decodificar vai apresentar falhas.

<?php
function encode($dados){
$dados=base64_encode($dados);
$procura=array('A','Z','W','a','S','e','I','x','U','d','m','N','B','G','P','9','t','D','Q','F','M','H','E','X','C','V','z','Y','R','T','b','s','h','J','2');
$substitui=array('/','-','.','@','$','&','|','#','_','(',')','%','?',',','[',']','{','}',';',':','>','<','!','"',"'",'§','£','¢','¬','ª','º','~','^','`','´');
$dados=str_replace($procura,$substitui,$dados);
$dados=str_replace('=','',addslashes($dados));
return $dados;
}
function decode($dados){
$dados=stripslashes($dados);
$substitui=array('A','Z','W','a','S','e','I','x','U','d','m','N','B','G','P','9','t','D','Q','F','M','H','E','X','C','V','z','Y','R','T','b','s','h','J','2');
$procura=array('/','-','.','@','$','&','|','#','_','(',')','%','?',',','[',']','{','}',';',':','>','<','!','"',"'",'§','£','¢','¬','ª','º','~','^','`','´');
$dados=str_replace($procura,$substitui,$dados);
$dados=base64_decode($dados);
$dados=str_replace('  ','',$dados);
return $dados;
}
//Para criptografar utilize encode('DADOS A SEREM CRIPTOGRAFADOS'), EX:
$criptografar='minha_senha';
echo encode($criptografar);


//Para decodificar utilize decode('DADOS CRIPTOGRAFADOS');
$criptografado=encode($criptografar);
echo decode($criptografado);
?>
Conclusão

Baseado nos estudos de criptografia base64 pode concluir que essa codificação é ideal para quem precisa de uma criptografia forte em uma senha. Base64 é uma forma usada para codificação dos dados e para transferência na Internet.
É utilizado bastante para transmitir dados por meios de transmissão que utilizam apenas texto, como por exemplo, para enviar arquivos de anexos para correio eletrônico.
É uma codificação que transforma números binários em texto, base64 transforma uma sequência qualquer de bytes numa seqüência de caracteres ASCII que podem ser impressos. E isso quer dizer que o base64 foi projetado para codificar a transferência de conteúdo de e-mails através da Internet.


Bibliografia
Fonte do código utilizado:
http://www.macoratti.net/12/03/net_prot1.htm




Viu algum erro ou gostaria de adicionar uma sugestão para atualizarmos esta matéria?
Colabore com o autor clicando aqui!






Quer Ajudar?

 
Related Posts Plugin for WordPress, Blogger...