如何在laravel 5中解码哈希值?

ani*_*ddh 4 php encryption decode laravel laravel-5

我必须将我的哈希密码转换为字符串.

这是我的代码.

<?php namespace App\Http\Controllers;
     use DB;
     use Auth;
     use Input;
     use Session;
     use Route;
     use Crypt;
     use Redirect;
     use Illuminate\Http\Request;
     use Illuminate\Http\Dispatcher; 

      $userdata = array(
                'email'     => $email,
                'password'  =>  Crypt::decrypt($password)
            );
Run Code Online (Sandbox Code Playgroud)

当我使用Crypt :: decrypt我得到错误.错误-

DecryptException in BaseEncrypter.php line 45:
The payload is invalid.
Run Code Online (Sandbox Code Playgroud)

任何人都可以建议我怎么做?

谢谢.

Abd*_*lam 8

使用 Crypt::decrypt()

$value = Crypt::decrypt($encrypted);
Run Code Online (Sandbox Code Playgroud)

注意:您必须使用用于加密它的相同密钥来解密该值.

Laravel的加密例程Config::get('app.key')用于加密.这发生在内部.由于每个Laravel应用程序的此值都不同,因此加密值的应用程序也必须解密该值.

要么 ...

应用程序必须Crypt::setKey()decrypting将密钥与用于加密的值匹配之前调用.请参阅设置加密密钥.

加密使用

Crypt::setKey($key);
Run Code Online (Sandbox Code Playgroud)

此密钥将用于后续Crypt::encrypt()Crypt::decrypt()呼叫.

  • 感谢大家 .现在我使用Crypt :: encrypt($ password)在用户注册时加密我的密码并用Crypt :: decrypt转换成descrypt($ userdata ['password']); 我终于得到了我的密码. (2认同)