Laravel request()->fingerprint() 函数和加密用户数据记录的可能性?
Laravel request()->fingerprint() function and possibility of encrypted user data logging?
文档:https://laravel.com/api/5.2/Illuminate/Http/Request.html#method_fingerprint
如果我在日志中添加指纹功能,例如;
LOG::info('Delete Admin', [
'(loggedin) User ID' => Auth::guard()->id(),
'User Ip' => request()->ip(),
'Fingerprint' => request()->fingerprint(),
]);
我得到了请求/路由/IP 地址的 sha1 唯一指纹。
我的问题是:
我应该什么时候使用它以及如何使用它(读取加密密钥的内容)?
奖金,但不是主要问题:
它是否允许我确定是谁发出了请求,例如删除管理员,即使是在未来 2 年?
Sha1 本身不是一种加密方法,它是一种散列方法。加密和散列的区别在于散列是不可逆的。因此,您永远无法 "decrypt"(或取消哈希)Sha1 值来获取原始请求数据。
您可以将请求数据存储在 table 某处,并使用 elocryptfive 包(在 github 或 packagist 上搜索)以加密方式存储数据,以便稍后解密.
文档:https://laravel.com/api/5.2/Illuminate/Http/Request.html#method_fingerprint
如果我在日志中添加指纹功能,例如;
LOG::info('Delete Admin', [
'(loggedin) User ID' => Auth::guard()->id(),
'User Ip' => request()->ip(),
'Fingerprint' => request()->fingerprint(),
]);
我得到了请求/路由/IP 地址的 sha1 唯一指纹。
我的问题是:
我应该什么时候使用它以及如何使用它(读取加密密钥的内容)?
奖金,但不是主要问题:
它是否允许我确定是谁发出了请求,例如删除管理员,即使是在未来 2 年?
Sha1 本身不是一种加密方法,它是一种散列方法。加密和散列的区别在于散列是不可逆的。因此,您永远无法 "decrypt"(或取消哈希)Sha1 值来获取原始请求数据。
您可以将请求数据存储在 table 某处,并使用 elocryptfive 包(在 github 或 packagist 上搜索)以加密方式存储数据,以便稍后解密.