Tidak ada gunanya melakukan beberapa operan. Satu kali sudah cukup.
Mengisi drive yang akan dienkripsi dengan data acak terutama memiliki dua kegunaan:
- singkirkan data lama yang tidak terenkripsi
- membuat ruang kosong tidak dapat dibantah dari data terenkripsi
Biasanya jika Anda mengenkripsi, Anda tidak ingin orang lain melihat data Anda. Jadi kemungkinannya adalah, jika Anda memiliki data lama dan tidak terenkripsi pada drive ini, Anda juga ingin membuangnya. SSD mungkin akan membuatnya lebih mudah dan lebih cepat blkdiscard
. Faktanya, Linux mkfs
TRIMs semua data bahkan tanpa meminta konfirmasi kepada Anda, yang membuat segala jenis pemulihan data menjadi tidak mungkin. Terlalu banyak TRIM di Linux.
Ruang kosong adalah sedikit area abu-abu. Jika Anda tidak mengisi sebelumnya dengan data acak, pada HDD baru, sektor-sektor yang tidak pernah dituliskan akan menjadi nol. Pada SSD, jika Anda mengizinkan discard / TRIM, ruang kosong juga akan menjadi nol.
Meskipun ini tidak mempengaruhi data Anda dengan cara apa pun (masih terenkripsi), ini mengungkapkan berapa banyak ruang kosong / data aktual yang Anda miliki, dan di mana ruang / data bebas ini berada. Misalnya a hexdump -C
dari SSD yang dienkripsi dan dipangkas akan terlihat seperti ini:
# hexdump -C /dev/ssd | grep -C 2 '^\*'
...
--
b3eabff0 dc c9 c7 89 16 ca d3 4f a3 27 d6 df a0 10 c3 4f |.......O.'.....O|
b3eac000 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................|
*
b3f70000 5a 99 44 b5 9c 6b 1e 9c 81 cf 9a 43 b6 23 e9 0f |Z.D..k.....C.#..|
b3f70010 2c e6 9a 5d 59 9b 46 5f 21 3f 4d 5f 44 5b 0a 6b |,..]Y.F_!?M_D[.k|
--
b3f70ff0 5f 63 8d e8 c4 10 fd b1 a6 17 b5 7d 4a 57 09 68 |_c.........}JW.h|
b3f71000 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................|
*
b3f72000 5d 1c 09 dd c9 6b 57 18 db 67 e1 35 81 57 45 8e |]....kW..g.5.WE.|
b3f72010 0f a8 be 39 ae e5 5f cf cf e3 8b a7 c1 25 1a a3 |...9.._......%..|
--
...
Dari ini Anda dapat memberitahu saya memiliki segmen ruang bebas di alamat 0xb3eac000 .. 0xb3f70000
, b3f71000 .. b3f72000
, ... dan kebalikan dari yang segmen saja seperti data 0xb3f70000 .. b3f71000
.
Apa yang bisa kamu lakukan dengan itu? Yah, tidak ada apa-apa (*).
(*) adalah apa yang ingin saya katakan. Tetapi orang menjadi kreatif . Pola ruang bebas dapat digunakan untuk menurunkan jenis sistem file yang Anda gunakan (karena bagaimana / di mana mereka menyimpan metadata - jika ada ruang kosong di mana ext4
akan menyimpan salah satu cadangan metadata, sangat mungkin tidak ext4
, dll.). Kadang-kadang bahkan mengungkapkan distribusi yang Anda gunakan (jika installer Linux Anda mengisi sistem file secara deterministik, file mungkin selalu berakhir di alamat fisik yang sama). Pada saat itu seseorang mungkin tahu di mana file sistem tertentu berada dan dapat memodifikasi / merusaknya dengan cara tertentu. (Pemasang harus mengacak cara mereka mengisi sistem file untuk mencegah hal ini.)
Namun pertimbangan seperti itu sangat teoretis, dan risikonya sangat rendah dibandingkan dengan seberapa rentan instalasi terenkripsi disebabkan oleh alasan lain. Di sebagian besar instalasi, lebih mudah / sederhana untuk mengutak-atik initramfs, atau menginstal keylogger, atau mengeksploitasi sistem yang sedang berjalan, daripada mendapatkan akses mentah ke dan menganalisis data terenkripsi dan berharap untuk mencapai apa pun dengan cara ini.
Anda harus khawatir tentang ini terlebih dahulu sebelum khawatir tentang mengungkapkan ruang kosong.
Dengan SSD, sangat normal untuk mengaktifkan TRIM dan karenanya memiliki ruang kosong yang terungkap setiap saat. Ini juga merupakan kasus untuk solusi enkripsi yang bekerja pada lapisan file daripada lapisan blok.
Dengan HDD, Anda terutama melakukan penghapusan acak bahkan pada disk baru karena Anda bisa, dan tidak ada alasan untuk tidak melakukannya karena tidak melibatkan biaya (selain dari pengaturan pertama kali) dan tidak ada kerugian.
badblocks
dilakukan untuk memeriksa bad sector, tulis & periksa 0's, 1's, 01's, 10's. Untuk enkripsi seluruh disk, adalah umum untuk merekomendasikan nol-terenkripsi terenkripsi (untuk menulis data terenkripsi di mana-mana) untuk alasan dalam jawaban frostschultz (+1), tetapi melakukan semua ini sebelum mengenkripsi adalah tidak biasa, setelah mengenkripsi kemudian berjalanbadblocks
atau mkfs-cc
akan mencapai sama, ditambah mengidentifikasi blok buruk. Mungkin seseorang di Kali sedikit paranoid tentang memori flash (USB, SSD) tidak selalu menulis sektor yang sama di tempat yang sama, dan menukar sektor ke / dari cadangan