Предположим, что у меня есть файл, который я хочу безопасно удалить в ssd. Если я сделаю обычный поиск, а затем заполню все неиспользуемое пространство файлом случайных данных, сработает ли это?
3 ответа
Из-за выравнивания износа на устройствах флэш-памяти (например, SSD), чтобы быть уверенным в перезаписи освобожденного блока, вам необходимо записать все нераспределенные блоки флэш-памяти. К сожалению, даже выполнение перезаписи перед удалением файла потребует перезаписи каждого отдельного блока, не являющегося частью других файлов, поскольку каждая запись может попасть в любое место на всем устройстве хранения в рамках процесса выравнивания износа. Это означает, что для безопасного удаления с помощью перезаписи вам фактически необходимо перезаписать все пространство на устройстве, которое не является частью других файлов, за исключением блоков флэш-памяти, занимаемых удаляемым файлом, и даже тогда вы не сможете убедитесь, что вы перезаписали блок, который изначально содержал данный файл, если в том же блоке флэш-памяти есть другие файлы (или их фрагменты).
Из-за этого SSD (или флэш-хранилище в любой форме) является плохим выбором для хранения данных, которые, возможно, потребуется надежно стереть за исключением физического уничтожения устройства; придерживайтесь оптических носителей, которые могут быть уничтожены, или магнитного хранилища, которое поддается стиранию с несколькими шаблонами и случайной перезаписью (и где данные остаются там, где они были, чтобы вы могли быть уверены, что они были перезаписаны). Если вам необходимо использовать флэш-носитель, я бы предложил SD-диск или флэш-накопитель наименьшей емкости, который будет вмещать то, что вам нужно, а также надежный способ избежать физической потери устройства хранения. Это как упростит требование "перезаписать все устройство" для безопасного удаления, так и снизит стоимость физического уничтожения устройства для абсолютно определенной безопасности удаления.
AFAIK - нет действительно безопасного способа удаления файлов с SSD, так как в комментариях отмечается, что контроллер SSD может по своему усмотрению "перемещать" свои внутренние блоки хранения из одного доступного сектора в другой (для выравнивания износа), и большинство сохраняет "лишнее" неиспользуемое количество блоков для замены на плохие в будущем или случайным образом.
Таким образом, даже если вы перезаписали каждый доступный блок на SSD, все равно могут быть блоки, содержащие данные, которые недоступны с помощью обычных инструментов.
Иногда доступна команда secure_erase
ATA, но она должна надежно перезаписывать весь диск, поэтому ее нельзя использовать просто для удаления нескольких файлов. (Было отмечено, что не все диски тоже могут корректно secure_erase
).
Если вы хотите хранить конфиденциальные данные на SSD и беспокоитесь о том, чтобы кто-нибудь позже увидел эти данные, есть две рекомендации:
не
Шифрование - тогда вы не будете беспокоиться о том, чтобы позже стереть свои ошибки, поскольку они уже эффективно "ушли" без ключа.
Зашифровывайте только конфиденциальные данные и никогда не записывайте конфиденциальные незашифрованные данные - следите за незашифрованными файлами кеша / свопа / файлами спящего режима системы).
Зашифруйте весь SSD с самого начала, прежде чем записывать на него какие-либо конфиденциальные данные, и храните все данные на нем в зашифрованном виде, включая файлы памяти на диск.
Раздражительно академические статьи не согласны с тем, как вы обычно можете уничтожить данные.
Есть несколько вещей, которые стоит рассмотреть. Традиционные методы очистки дисков предназначены для жестких дисков - они записывают данные более или менее последовательно и «проще», чем современные твердотельные накопители. Обычно обработка SSD как жесткого диска приводит к снижению производительности и SSD, а такие вещи, как сборка мусора, обычно запускаются специальными командами ata, такими как TRIM и Secure Delete.
Теперь есть две точки зрения - одна, о которой говорит Боддингтон и др. (Чья статья кажется недоступной), и более старая статья Губанова и др. Состоит в том, что алгоритмы сбора мусора, используемые твердотельными накопителями, уничтожают данные самостоятельно.
С другой стороны , Вэй и др и новой работе Губанов и др указывает uou никогда не может реально удалить все данные , а иногда и обычные данные sanitasation инструменты неудачу с SSD.
Теоретически, правильный способ постоянного удаления файлов с SSD - использовать команду безопасного удаления ATA. На практике, если вы хотите быть уверенным, вы можете рассмотреть возможность полного шифрования диска с помощью пароля или файла ключа на традиционном жестком диске или разрушаемого
какое-то хранилище.