it-swarm-id.com

Bagaimana cara menghapus file yang tersimpan di SSD dengan aman?

Dari (sangat panjang, tapi pasti layak dibaca) artikel tentang SSD :

Ketika Anda menghapus file di OS Anda, tidak ada reaksi dari hard drive atau SSD. Tidak sampai Anda menimpa sektor (pada hard drive) atau halaman (pada SSD) Anda benar-benar kehilangan data. Program pemulihan file menggunakan properti ini untuk keuntungan mereka dan itulah cara mereka membantu Anda memulihkan file yang dihapus.

Perbedaan utama antara HDD dan SSD adalah apa yang terjadi ketika Anda menimpa file. Sementara HDD dapat dengan mudah menulis data baru ke sektor yang sama, SSD akan mengalokasikan halaman baru (atau yang sebelumnya digunakan) untuk data yang ditimpa. Halaman yang berisi data yang sekarang tidak valid hanya akan ditandai sebagai tidak valid dan pada titik tertentu akan terhapus.

Jadi, apa cara terbaik untuk menghapus file yang tersimpan di SSD dengan aman? Menimpa dengan data acak seperti yang biasa kita lakukan dari hard disk (mis. Menggunakan utilitas "rusak") tidak akan berfungsi kecuali jika Anda menimpa drive WHOLE ...

25
c089

Seperti yang dinyatakan oleh @teabot menggunakan perangkat lunak enkripsi disk penuh akan menghindari masalah penghapusan aman karena Anda tidak perlu lagi melakukannya. Namun, seperti yang dinyatakan dalam pertanyaan terkait , ini akan memiliki dampak kinerja yang sangat besar karena ini mencegah banyak fitur pengontrol seperti kompresi dan TRIM dan telah dilaporkan menurunkan kinerja hingga ke tingkat di mana tingkat normal hard disk lebih cepat dari SSD mahal. Untuk perangkat berbasis SandForce, ada solusi yang lebih baik: Perangkat itu melakukan enkripsi AES secara default dan kunci akan dihapus ketika Anda menggunakan fitur hapus aman ATA, membuat semua data tidak dapat diakses kecuali penyerang dapat memecahkan AES (128bit untuk saat ini, 256bit untuk drive baru yang dirilis pada Maret 2011).

6
c089

Bagaimana mengenkripsi volume itu sendiri? Data yang dihapus masih ada di sana tetapi tidak dapat diakses oleh siapa pun tanpa kunci yang sesuai.

22
teabot

Jika drive SSD mendukung set fitur mode keamanan ATA, maka drive itu memiliki fungsionalitas hapus aman, yang harus Anda akses menggunakan sesuatu seperti Secure Erase, didokumentasikan di sini dan di sini .

12
bk1e

Bahkan jika Anda menimpa keseluruhan drive, Anda tidak dapat benar-benar yakin karena HD dan SSD berisi sektor cadangan diganti ketika terjadi kegagalan , atau dalam kasus SSD untuk membantu leveling pakai .

Jika Anda ingin benar-benar yakin bahwa data tidak dapat dipulihkan, Anda harus menghancurkan drive secara fisik setelah pemulihan. Menimpa memberi Anda kepastian yang wajar tentang HD - pada SSD, sebenarnya tidak ada cara untuk mencapai itu. Jika Anda mengisi seluruh drive, masih mungkin blok data yang ada telah dipindahkan ke blok cadangan untuk leveling keausan dan akan muncul kembali nanti.

10

Karena sifat memori flash NAND, SSD tidak dapat langsung menimpa data. Menimpa file berulang kali sebelum menghapusnya tidak akan menghapusnya dengan aman di SSD — data hanya akan ditulis di tempat lain di NAND.

Untuk memahami mengapa hal ini terjadi, perlu dijelaskan bagaimana SSD bekerja di dalam.

  • Flash NAND dibagi menjadi blok , masing-masing terdiri dari satu set halaman biasanya berukuran 4 KB (ditambah kode koreksi kesalahan) . Kebanyakan SSD modern menggunakan NAND dengan blok 128 halaman untuk ukuran blok 512 KB, meskipun beberapa drive, terutama yang lebih lama, dapat menggunakan 256 KB atau blok yang lebih kecil. Diagram berikut ini mengasumsikan 256 KB blok, tetapi konsepnya sama terlepas dari ukuran blok.

Diagram of pages in a NAND block
Sumber - Courtesy Penyortir Musik di Wikipedia, CC BY-SA 3.0

  • Setiap halaman dapat ditulis secara individual, tetapi halaman tidak dapat ditulis ulang sampai dihapus, dan menghapus hanya dapat dilakukan di seluruh blok. Ini berarti bahwa setiap kali data ditulis ulang, SSD harus menandai data di halaman yang terpengaruh tidak valid dan menulis ulang di tempat lain, mungkin di blok yang berbeda. Pada waktu yang lebih tepat, idealnya saat drive dalam keadaan idle dan semua halaman dalam blok ditandai tidak valid, SSD dapat menghapus blok yang tidak lagi digunakan. Proses pembersihan ini disebut pengumpulan sampah .

  • Agar SSD mengetahui blok mana yang dapat dihapus, sistem operasi harus memberi tahu blok mana yang tidak lagi berisi data yang valid. Ini dilakukan menggunakan perintah ATA TRIM . SSD kemudian bebas untuk mengumpulkan sampah blok-blok yang tidak terpakai.

SSD mencoba menyebarkan penulisan secara merata ke NAND untuk menghindari kegagalan prematur, sebuah proses yang bergantung pada ruang kosong yang tersedia untuk drive.

  • Setiap blok NAND hanya dapat mempertahankan jumlah siklus tulis/hapus yang terbatas. Banyak SSD tingkat konsumen saat ini menggunakan 19-21nm NAND di mana setiap blok baik untuk sekitar 3.000 siklus sebelum menjadi tidak dapat digunakan, meskipun SSD perusahaan dan beberapa SSD konsumen kelas atas yang menggunakan jenis NAND yang lebih tahan lama tersedia secara komersial.

  • Namun, dalam semua kasus, SSD harus menyebar tulis ke seluruh drive untuk menghindari penempatan keausan yang tidak semestinya pada blok tunggal apa pun untuk menghindari kegagalan drive yang prematur, melalui proses yang disebut pakai) leveling. Perataan keausan yang efisien hanya dapat dicapai jika ada sejumlah ruang ( penyisihan berlebih ) yang dicadangkan untuk memungkinkan pengumpulan sampah yang efisien seperti yang diperlukan bahkan jika drive hampir penuh .

  • Dalam kondisi ekstrem di mana SSD diminta untuk menulis data lebih cepat daripada yang dapat menghapus blok lama (umum dalam beban kerja pusat data yang berat), SSD mungkin dipaksa untuk menulis ulang data dalam satu blok ke blok lain, lalu segera menghapus blok lama itu untuk memberi jalan bagi data baru, sebelum memiliki kesempatan untuk melakukan pengumpulan sampah.

  • Penulisan ulang paksa suatu blok kurang dari ideal karena ia menurunkan kinerja dan berkontribusi pada tulis amplifikasi, di mana lebih banyak data ditulis ke NAND yang mendasari daripada yang sebenarnya Jumlah drive diperintahkan untuk menulis. Penambahan ketentuan yang berlebihan membantu mengurangi amplifikasi penulisan dengan menyediakan lebih banyak ruang kosong untuk menulis ulang data dan menghapus blok lama. Inilah sebabnya mengapa SSD perusahaan kelas atas seperti Samsung SSD 845DC PRO memiliki ukuran seperti 200 GB dan 400 GB meskipun drive tersebut masing-masing berisi lebih dekat dengan 256 atau 512 GB NAND di dalamnya. Lihat juga: Mengapa SSD memiliki ukuran aneh?

  • Seri kertas putih SSD Samsung memberikan penjelasan menyeluruh tentang cara kerja bagian dalam SSD. Menulis dan menghapus halaman NAND dan blok dan pengumpulan sampah dijelaskan dalam kertas putih 04.

Satu-satunya cara untuk benar-benar menghapus data pada SSD adalah dengan menggunakan perintah ATA Secure Erase.

  • Secure Erase memerintahkan drive untuk menghapus semua data yang disimpan, termasuk data yang mungkin tetap berada di wilayah NAND yang terlalu ditentukan. Semua blok dihapus saat ini dilakukan, menghasilkan drive murni.

  • Di drive dengan kemampuan enkripsi sendiri, Secure Erase dapat dengan mudah diimplementasikan dengan menghapus kunci enkripsi. Karena data pada NAND dari drive yang dienkripsi tidak dapat dibaca tanpa kunci, maka tidak perlu menghapus semua blok sebagaimana diperlukan pada drive yang tidak dienkripsi.

9
bwDraco

Seperti yang Anda pikirkan, menghapus semua ruang kosong untuk memastikan bahwa semua blok yang dulu berisi data dihapus adalah satu-satunya cara untuk memastikan. Nah, selain mengambil situs nuklir dari orbit ...

Ini akan sangat memakan waktu, dan akan mengurangi masa pakai chip flash, jika Anda menggunakan multi-pass shred.

Cara lain untuk melindungi data yang dihapus adalah dengan menyimpannya dienkripsi di tempat pertama menggunakan sistem file terenkripsi menggunakan sesuatu seperti truecrypt.

3
David Spillett