Criptografia Blowfish em PHP

PEAR
Enviado por thotypous em Qui, 10/11/2005 - 19:56.PEAR

Vamos começar aqui uma série de posts sobre como utilizar a excelente criptografia Blowfish nas linguagens PHP, Python e C. Blowfish é uma criptografia extremamente rápida e segura, sendo uma das criptografias utilizadas pelo ssh. Vamos fazer de forma que todos usem o mesmo formato, e possam trocar entre si os dados criptografados.

Primeiramente, você vai precisar do módulo Crypt_Blowfish do PEAR, que você pode baixar em: http://pear.php.net/package/Crypt_Blowfish.

Esse módulo é muito bom, porque ele verifica se você tem o mcrypt disponível. Se tiver, ele habilita, deixando a criptografia bem mais rápida.

Senão, ele utiliza um código próprio em PHP puro, podendo ser utilizado em qualquer servidor.

Nosso exemplo vai pegar um texto digitado por você em um form, criptografá-lo com Blowfish, com a senha escolhida, e depois codificar o resultado em base64, pra ficar facilmente intercambiável e pra não zuar o texto no navegador.

Como você pode ver, a classe é bem fácil de usar, bastante auto-explicativa:

  1. <html>
  2. <head><title>Crypt_Blowfish</title></head>
  3. <body>
  4. <form method="post" action="<?php echo $_SERVER['PHP_SELF'] ?>">
  5.  
  6. Senha: <input type="password" name="senha" value="<?php echo $_POST['senha'] ?>" size="28" />
  7.  
  8. <textarea rows="10" cols="30" name="texto">
  9. <?php
  10. require_once 'Blowfish.php';
  11. if(isset($_POST['senha']))
  12. {
  13.   $bf = new Crypt_Blowfish($_POST['senha']);
  14.   if(isset($_POST['codificar']))
  15.     print base64_encode($bf->encrypt($_POST['texto']));
  16.   else
  17.     print rtrim($bf->decrypt(base64_decode($_POST['texto'])));
  18. }
  19. ?></textarea>
  20.  
  21. <input type="submit" name="codificar" value="Codificar" />
  22. <input type="submit" name="decodificar" value="Decodificar" />
  23. </form>
  24. </body>
  25. </html>


Enviado por Fernando (não verificado(a)) em Qui, 11/09/2008 - 21:01.

Depois que eu faço o download do arquivo " Crypt_Blowfish-1.1.0RC2 " como faço para instar?

Enviado por Pedro Faria em Sex, 12/09/2008 - 09:25.