Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/69.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 当数据库列值被加密时,如何在Laravel中执行更好的搜索?_Php_Mysql_Laravel_Encryption_Eloquent - Fatal编程技术网

Php 当数据库列值被加密时,如何在Laravel中执行更好的搜索?

Php 当数据库列值被加密时,如何在Laravel中执行更好的搜索?,php,mysql,laravel,encryption,eloquent,Php,Mysql,Laravel,Encryption,Eloquent,最近我遇到了这样一个请求:列值必须加密,即使程序员(指该项目的程序员)也不能访问数据库 我能想到的是加密我找到的所有列数据。但是另一个问题来了,如果我想执行搜索,并且列是加密的,这意味着我不能使用WHERE来过滤结果,相反,我必须从表中检索所有记录,然后只通过PHP脚本进行过滤。我只是无法想象如果有1000万的记录 你们当中有人面临这样的问题吗?我可以在此提出任何解决方案 谢谢您可以加密“等于”比较的搜索值。您不能执行“喜欢”、“大于/小于”或“介于搜索之间”。@JimGarrison在进行搜索

最近我遇到了这样一个请求:值必须加密,即使程序员(指该项目的程序员)也不能访问数据库

我能想到的是加密我找到的所有列数据。但是另一个问题来了,如果我想执行搜索,并且列是加密的,这意味着我不能使用
WHERE
来过滤结果,相反,我必须从表中检索所有记录,然后只通过PHP脚本进行过滤。我只是无法想象如果有1000万的记录

你们当中有人面临这样的问题吗?我可以在此提出任何解决方案


谢谢

您可以加密“等于”比较的搜索值。您不能执行“喜欢”、“大于/小于”或“介于搜索之间”。@JimGarrison在进行搜索时,肯定需要
LIKE
,除了加密列值之外,还有什么建议吗?这样做的主要目的是不要让程序员(即我和团队)看到database@JsLim不,除非您准备在您最喜欢的数据库管理系统中实现对的支持。如果你需要搜索它,不要加密它。如果你需要对它进行加密,能够搜索它将通过旁道泄露有关数据的事实,所以不要这样做。@ScottArciszewski Omg。。同态加密如此复杂,我不打算实现它。无论如何,谢谢你的建议