Como fazer uma funcão para criptografar variaveis.
Ao que teoricamente parece ser bastante complicado, na prática é bastante simples.
Vou ensinar como desenvolver 2 funções para Criptografar e Descriptografar váriaveis como Senha, Login etc.
Neste primeiro exemplo vou ensinar como criptografar algo pegando os valores Aschii do caractere, em um outro momento ensinarei como criptografar com bits.
Vamos ao que interessa.
Primeiramente vamos criar uma função chamada “Criptografa”.
function Criptografa($senha) {
//essa função será responsável por criptografar nossa senha
}
usaremos as funções:
strlen() -> responsável por pegar a quantidade (tamanho) de caracteres numa dada string.
ord() -> responsável por pegar o valor Dec (número) do caractere.
chr() -> responsável por retornar o valor (letra) de um dado valor aschii.
Na função Criptografa, vamos escrever o seguinte código:
function Criptografa($senha) {
$tamanho = strlen($senha);
//Definimos a variavel $tamanho como o total de caracteres que a variavel $senha possui.
$nova_senha = ”;
//Definimos a variavel $nova_senha como vazia (iremos utiliza-la no futuro).
for ($i=0; $i<$tamanho; $i++) {
//Criamos um laço for para ir pegando todos os valores (caractere por caractere) da variavel $senha
$letra = ord($senha[$i]);
/*A função ord(), como dito anteriormente fará a função de nos retornar o valor aschii do caractere.
neste caso, atribuirá este valor aschii a variavel $letra.
*/
$nova_senha .= chr($letra+2);
/*A função chr(), nos retornará o caractere que foi “criptografado”, neste caso, nós iremos pegar o valor que já existe (aquele que foi pego em $letra)
e somaremos 2 para pegar o próximo caractere de 2 unidades, por exemplo: tenho o caractere de cod Dec 99 (letra c), quando eu somar 2, pegarei o caractere Dec 101, que é a letra “e”
no lugar de 2, podemos colocar qualquer número, 3, 10, etc.
*/
}
//Fecho o meu laço for
return $nova_senha;
//Finalmente retornamos nossa senha criptografada
}
//Concluimos nossa função Criptograda
function Descriptografa($senha) {
$tamanho = strlen($senha);
//Definimos a variavel $tamanho como o total de caracteres que a variavel $senha possui.
$nova_senha = ”;
//Definimos a variavel $nova_senha como vazia (iremos utiliza-la no futuro).
for ($i=0; $i<$tamanho; $i++) {
//Criamos um laço for para ir pegando todos os valores (caractere por caractere) da variavel $senha
$letra = ord($senha[$i]);
/*A função ord(), como dito anteriormente fará a função de nos retornar o valor aschii do caractere.
neste caso, atribuirá este valor aschii a variavel $letra.
*/
$nova_senha .= chr($letra-2);
/*A função chr(), nos retornará o caractere que foi “descriptografado”, neste caso, nós iremos pegar o valor que já existe (aquele que foi pego em $letra)
e subtrairemos 2 para pegar caractere de 2 unidades anterior, por exemplo: tenho o caractere de cod Dec 101 (letra e), quando eu subtrair 2, pegarei o caractere Dec 99, que é a letra “c”
no lugar de 2, podemos colocar qualquer número, 3, 10, etc.
LEMBRE-SE, o valor que colocarmos na função CRIPTOGRAFA, devemos colocar na função DESCRIPTOGRAFA também.
*/
}
//Fecho o meu laço for
return $nova_senha;
//Finalmente retornamos nossa senha descriptografada
}
//Concluimos nossa função Descriptograda
///Agora um rápido exemplo de como isso funciona///
$resposta = Criptografa(”criptografar”);
echo $resposta.”<br>”; //-> Nos retornará etkrvqitchct
$resposta = Descriptografa($resposta);
echo $resposta.”<br>”; //-> Nos retornará criptografar
Divirtam-se
| View Comments |