是否有人知道一个良好的PHP解决方案删除或更好地从Linux系统的擦拭文件?
场景:文件被加密并保存,当请求下载的文件拷入到一个临时文件夹和解密。 这已经是工作。
但在发送给用户之后如何从临时位置的文件?
在我心目中,我有以下选择:
- 通过“FOPEN”打开文件,写0,1进去(认为非常慢)
- 保存文件到内存缓存,而不是硬盘上(可能是我的主机供应商的问题)
- 在命令行或使用的cronjob 3 SOMD工具pary(可能是一个问题,安装)
目标:删除硬盘上的文件,没有可能恢复(擦/覆盖)
是否有人知道一个良好的PHP解决方案删除或更好地从Linux系统的擦拭文件?
场景:文件被加密并保存,当请求下载的文件拷入到一个临时文件夹和解密。 这已经是工作。
但在发送给用户之后如何从临时位置的文件?
在我心目中,我有以下选择:
目标:删除硬盘上的文件,没有可能恢复(擦/覆盖)
呼叫“ 一丝一毫 ”通过的exec /系统/中继
可以说最好是永远不会将文件保存在其解密状态摆在首位。
相反,使用流过滤器对其进行解密在即时和直接发送给最终用户。
更新
你选择1其实不是太糟糕,如果你考虑以下代码:
$filename = 'path/to/file';
$size = filesize($filename);
$src = fopen('/dev/zero', 'rb');
$dest = fopen('/path/to/file', 'wb');
stream_copy_to_stream($src, $dest, $size);
fclose($src);
fclose($dest);
你可以选择/dev/urandom
为好,但将是缓慢的。