Написание файлового шредера на python или ruby? - PullRequest
3 голосов
/ 03 мая 2010

В попытке изучить python и / или ruby, мне было интересно, как будет реализован файл-шредер? Я хотел бы, чтобы он принимал файл в качестве аргумента, а затем использовал алгоритм, чтобы сделать этот файл невосстановимым. Возможно, позже добавится поддержка нескольких файлов или даже целых каталогов.

Ответы [ 2 ]

3 голосов
/ 03 мая 2010

Так же, как предупреждение, измельчители, как правило, будут иметь разный уровень успеха в современных системах благодаря журналам, файловым системам с копированием при записи, выравниванию износа (флэш) и другим методам, используемым в современной системе. Могу проверить Википедию о некоторых подводных камнях.


Короче говоря, вам нужно будет иметь возможность писать прямо поверх существующих в настоящее время данных. Существует несколько различных шаблонов с различными уровнями безопасности, но часто, если вы перезаписываете файл примерно 25 раз случайными данными (округляя до следующего размера блока), файл должен быть полностью невосстановим (по крайней мере, эта копия данных). Существуют и другие методы, которые могут надежно перезаписать его за меньшее количество проходов (3 прохода, случайный, один, затем нули также работают прилично).

1 голос
/ 04 мая 2010

Поскольку это учебное упражнение, а не профессиональная попытка защитить данные. Как насчет этого: 1. Узнайте длину файла. 2. Запишите 0 в ту же длину файла. 3. Сохраните файл. 4. Удалите файл.

Затем создайте другую программу, которая пытается восстановить файл.

Но да, если вы хотите сделать что-то профессиональное, а не просто упражнение, посмотрите ответ Кицунэ.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...