Di mana file yang didekripsi disimpan selama runtime?

9

Saya heran di mana Ubuntu / eCryptfs menyimpan file yang didekripsi dari direktori $ HOME terenkripsi selama runtime.

  • Apakah itu mendekripsi file just-in-time dan menyimpannya hanya dalam RAM?
  • Bagaimana dengan file besar (mis. Film 1080p dengan 20Gb)?
  • Apakah mungkin ada beberapa file yang didekripsi yang tersisa di HDD setelah sistem mati?
  • Apakah mendekripsi / mengenkripsi mempengaruhi kinerja OS secara signifikan?
Petr Peller
sumber

Jawaban:

9

File yang didekripsi disimpan dalam RAM. Dekripsi (atau enkripsi, saat menulis) terjadi dengan cepat, blok demi blok dan bukan untuk seluruh file sekaligus. Ketika aplikasi membaca blok dari file, file tersebut didekripsi oleh lapisan antara driver disk dan driver sistem file.

File yang didekripsi tidak ditulis ke disk, tetapi aplikasi dapat menulis data ke sistem file yang tidak dienkripsi. Khususnya, jika Anda memiliki sistem file terenkripsi, Anda harus mengenkripsi ruang swap Anda, karena data dalam memori aplikasi dapat berakhir di ruang swap. Anda juga harus mengenkripsi direktori yang digunakan aplikasi untuk penyimpanan sementara, seperti /tmp(yang dapat dibuat tmpf dan disimpan di ruang swap) /var/tmp,, /var/spool/postfix(email), /var/spool/cups(dokumen sedang dicetak), dll.

Apakah enkripsi mempengaruhi kinerja tergantung banyak pada rasio antara kecepatan prosesor dan kecepatan disk. Dengan disk yang lambat dan prosesor yang cepat, Anda tidak akan melihat apa pun. Dengan prosesor yang lambat dan cakram yang sangat cepat, Anda akan merasakan sakitnya. Prosesor Intel dan AMD terbaru memiliki akselerator perangkat keras untuk AES ( AES-NI ) yang memanfaatkan kernel Linux baru-baru ini.

Gilles 'SANGAT berhenti menjadi jahat'
sumber