SoloCodigo

Programación Web y Scripting => PHP => Mensaje iniciado por: LeGatoRojo en Jueves 4 de Noviembre de 2010, 19:24

Título: Encriptacion con PHP y OpenSSL
Publicado por: LeGatoRojo en Jueves 4 de Noviembre de 2010, 19:24
Tengo una duda enorme, tengo dos codigos

Código: PHP
  1.  
  2.             $cadenaUTF8 = utf8_encode($cadena);    
  3.             $cadenaMD5 = md5($cadenaUTF8);
  4.                        
  5.             $ar=fopen("selloMD5.txt", "wt");
  6.             if($ar)
  7.             {
  8.                 fwrite($ar, $cadenaMD5);
  9.             }
  10.             fclose($ar);
  11.            
  12.             exec("openssl dgst -sign $key -out selloRSA.txt selloMD5.txt");
  13.            
  14.             $ar=fopen("selloRSA.txt", "rt");
  15.             if($ar)
  16.             {
  17.                 $sello="";
  18.                 while(!feof($ar))
  19.                 {
  20.                     $sello.=fgets($ar, 10000);
  21.                 }
  22.             }
  23.             fclose($ar);       
  24.            
  25.            
  26.             $sello=base64_encode($sello);
  27.  

Y

Código: PHP
  1.  
  2.             $cadenaUTF8 = utf8_encode($cadena);    
  3.            
  4.             $fp = fopen ("utf8.txt", "w+");
  5.             fwrite($fp, $cadenaUTF8);
  6.             fclose($fp);               
  7.            
  8.             exec("openssl dgst -md5 -sign $key utf8.txt | openssl enc -base64 -A -out selloFinal.txt");
  9.                                    
  10.             $ar=fopen("selloFinal.txt", "rt");
  11.             if($ar)
  12.             {
  13.                 $sello="";
  14.                 while(!feof($ar))
  15.                 {
  16.                     $sello.=fgets($ar, 10000);
  17.                 }
  18.             }
  19.             fclose($ar);
  20.  
  21.  

Ambos me dan resultados distintos, pero lo que es mas importante, cual de los dos cumpliria con obtener una cadena normal, posteriormente codificarla a utf8, aplicarle un md5, despues un rsa usando la llave del archivo $key y finalmente encriptarlo en base64.


Por su atención, gracias
Título: Re: Encriptacion con PHP y OpenSSL
Publicado por: LeGatoRojo en Viernes 5 de Noviembre de 2010, 17:58
Bueno, pues me respondo a mi mismo, el segundo código es el correcto...¿Razón?, aún no lo sé...
Título: Re:Encriptacion con PHP y OpenSSL
Publicado por: jordyjes en Miércoles 31 de Agosto de 2016, 03:47
bro yo ando haciendo este mismo proceso, pero tengo una duda, como es que haces que tu codigo funcione con el comando exec,sin necesidad de poner la ruta donde se encuentra openssl.exe