Foro de elhacker.net

Programación => PHP => Mensaje iniciado por: SrTrp en 20 Enero 2018, 22:15 pm



Título: Error Undefined offset 1 (al descifrar con openssl_decrypt)
Publicado por: SrTrp en 20 Enero 2018, 22:15 pm
Bueno tengo encriptadas password en mi bd y al momento que pongo una contraseña no validad me dice esto
Undefined offset 1 in LARUTADEDONDENECRIPTO on line 11
y es algo molesto ya que aparece rapido ese anuncio y vuelve al index, este es mi código
Mi encriptador este es donde me da el error
Código
  1. public static function decrypt($data, $key) {
  2.    $encryption_key = base64_decode($key);
  3.    list($encrypted_data, $iv) = explode('::', base64_decode($data), 2);// ESTA ES LA LINEA 11
  4.    return openssl_decrypt($encrypted_data, 'RC4', $encryption_key, 0, $iv);
  5.    }
  6.  

Mi loggeo php si no es correcta la contraseña me mandaría al index tomando un get de error
El error que les comento solo pasa cuando escribo una contraseña incorrecta.
Código
  1.  $descript = EncrypterFull::decrypt($f['password'], $keyend);
  2.               $descriptip = EncrypterFull::decrypt($f['ip'], $keyend);
  3.               $ipalterna = ($f['ip_alter']);
  4.                if($pass==$descript){
  5.                    if($ipalterna==1){
  6.                        session_start();
  7.                        $_SESSION['id']=$f['id'];
  8.                        $ipconfig = EncrypterFull::encrypt($ip, $keyend);
  9.  
  10.                        header("Location: ../../../Main.php");  
  11.                    }else{
  12.                    if($ip==$descriptip){
  13.                        session_start();
  14.                        $_SESSION['id']=$f['id'];
  15.  
  16.                        $ipconfig = EncrypterFull::encrypt($ip, $keyend);
  17.                      .............................
  18. .....................
  19.                        $link->query($sqlts2);
  20.                        header("Location: ../../../Main.php");  
  21.                     }else{
  22.                       $error4 = base64_encode(2);
  23.                        echo "<script>location.href='/index.php?error=$error4'</script>";
  24.                     }
  25.                    }
  26.                }else{
  27.                    $error3 = base64_encode(3);
  28.                    echo "<script>location.href='/index.php?error=$error3'</script>";
  29.                }
  30.  








Título: Re: Error Undefined offset 1 (al descifrar con openssl_decrypt)
Publicado por: engel lex en 21 Enero 2018, 00:07 am
puedes agregar un @ al principio de una linea para que se suprima todo error relacionado, pero lo apropiado es hacer bien el codigo...

Código
  1. $temporal = explode...
  2. if(count($temporal)>....



Título: Re: Error Undefined offset 1 (al descifrar con openssl_decrypt)
Publicado por: SrTrp en 21 Enero 2018, 00:10 am
puedes agregar un @ al principio de una linea para que se suprima todo error relacionado, pero lo apropiado es hacer bien el codigo...

Código
  1. $temporal = explode...
  2. if(count($temporal)>....


Alguna idea de porque ocurra esto?


Título: Re: Error Undefined offset 1 (al descifrar con openssl_decrypt)
Publicado por: engel lex en 21 Enero 2018, 00:21 am
has un var dump a tu base64_decode($data) para que veas que hay, como relaciona con explode y list


Título: Re: Error Undefined offset 1 (al descifrar con openssl_decrypt)
Publicado por: SrTrp en 21 Enero 2018, 02:26 am
Gracias lo intentare