Advertisement
leors

Criptografia de chave pública em PHP

Aug 26th, 2016
96
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
PHP 1.57 KB | None | 0 0
  1. <?php
  2. /* encrypt criptografa e/ou descriptografa uma string qualquer, fornecida no parametro "frase" com uma chave qualquer executando um
  3.     XOR entre cada caractere, invertendo a sequencia e codificando em hexadecimal.
  4.     Se $crypt = true, a função criptografa a frase fornecida. Caso false ela a descriptografa.
  5.      Exemplo de uso:
  6.      $chave = "q6w43a2sc1d6e98r6d5f6dasdfa313d525a35dsf";//Chave a ser utilizada na criptografia/descriptografia
  7.    $frase = "Teste de encriptação de frases!!!";
  8.    $crypt = encrypt($frase, $chave, true);
  9.    $decrypt = encrypt($crypt, $chave, false);
  10.    echo "Frase = ".$frase."<br>";
  11.    echo "Cript = ".$crypt."<br>";
  12.    echo "Decript = ".$decrypt."<br>";
  13. */
  14. function encrypt($frase, $chave, $crypt)
  15. {
  16.     $retorno = "";
  17.  
  18.     if ($frase=='') return '';
  19.  
  20.     if($crypt)
  21.     {
  22.         $string = $frase;
  23.         $i = strlen($string)-1;
  24.         $j = strlen($chave);
  25.         do
  26.         {
  27.             $retorno .= ($string{$i} ^ $chave{$i % $j});
  28.         }while ($i--);
  29.  
  30.         $retorno = strrev($retorno);
  31.         $retorno = base64_encode($retorno);
  32.     }
  33.     else
  34.     {
  35.         $string = base64_decode($frase);
  36.         $i = strlen($string)-1;
  37.         $j = strlen($chave);
  38.  
  39.         do
  40.         {
  41.             $retorno .= ($string{$i} ^ $chave{$i % $j});
  42.         }while ($i--);
  43.  
  44.         $retorno = strrev($retorno);
  45.     }
  46.     return $retorno;
  47. }
  48. $chave = "minhachavesecreta"; //Chave a ser utilizada na criptografia/descriptografia
  49. $frase = "Teste de encriptação de frases!!!";
  50. $crypt = encrypt($frase, $chave, true);
  51. $decrypt = encrypt($crypt, $chave, false);
  52. echo "Frase = ".$frase."<br>";
  53. echo "Cript = ".$crypt."<br>";
  54. echo "Decript = ".$decrypt."<br>";
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement