如何从在Laravel中使用Crypt :: encrypt加密的DB解密SSN字段?

时间:2017-08-21 16:17:34

标签: php encryption laravel-5

我正在尝试创建一个Web服务,我将传递ID,UserName,SSN作为输入参数,并在JSON响应中检索该特定用户的所有必需信息。

我可以创建数据库查询来收集用户数据并根据ID,UserName过滤查询结果。但是,SSN使用Crypt :: encrypt()加密,然后存储在数据库中。现在我必须解密该值并将其与输入参数中用户输入的SSN匹配。

我尝试在数据库查询的where子句中使用Crypt::decrypt(),但它没有成功。在这种情况下如何解密SSN?

我的原始查询是:

$ssn = 123456789; 
$res = DB::table('users')
            ->where('users.ssn', '=', $ssn)
            ->select('users.ssn as SSN')
            ->get();

我试图从DB解密SSN:

$res = DB::table('users')
        ->where('Crypt::decrypt(users.ssn)', '=', $ssn)
        ->select('users.ssn as SSN')
        ->get();

0 个答案:

没有答案