Безопасное удаление с помощью PHP 5.3.x

Кто-нибудь знает хорошее PHP-решение для удаления или лучшего удаления файла из Linux-системы?

Сценарий: файл зашифрован и сохранен, когда запрашивается загрузка, файл копируется во временную папку и дешифруется. Это уже работает.

Но как удалить файл из временного местоположения после отправки пользователю?

На мой взгляд, у меня есть следующие варианты:

  • Откройте файл через «fopen» и напишите в него 0,1 (подумайте очень медленно)
  • Сохраните файл в Memcache вместо жесткого диска (может быть проблема с моим хостером)
  • Используйте somd 3rd pary tool в командной строке или как cronjob (может быть проблема для установки)

Цель: удалить файл с жесткого диска без возможности восстановления (стереть / перезаписать)

Вызовите « shred » через exec / system / passthru

Лучше всего никогда не сохранять файл в дешифрованном состоянии в первую очередь.

Скорее, используйте потоковые фильтры, чтобы дешифровать его «на лету» и отправить его непосредственно конечному пользователю.

Обновить

Ваш вариант 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 , но это будет медленным.