在添加到db之前,我必须对数据库值进行哈希处理,并在选择后重新进行哈希处理,以便于人类阅读。现在,我在"Helper\Helpers.php"
文件夹中创建app
。在助手文件中,我具有用于加密/解密值的功能。注册到作曲家的帮助程序文件会自动加载:
"autoload": {
"classmap": [
"database/seeds",
"database/factories"
],
"psr-4": {
"App\\": "app/"
},
"files":[
"app/Helpers/Helpers.php"
]
},
在我看来,此方法(在作曲家中进行文件注册)是一种不受保护的选项,用于注册自身存储的函数文件以进行加密。为了获得更可靠的保护,在哪里可以存储和使用具有加密和解密功能的文件?
答案 0 :(得分:1)
如果您定义了模型,建议您使用Accessors and Mutators。它将允许您在写入存储之前对值进行加密,然后在读出时进行解密:
// mutator
public function setMyHashedValueAttribute($value)
{
$this->attributes['my_hashed_value'] = encrypt($value);
}
// accessor
public function getMyHashedValueAttribute($value)
{
return decrypt($value);
}