題:
為什麼OS從一開始就沒有安全地刪除文件?為什麼他們仍然不這樣做呢?
user82913
2016-01-15 20:19:29 UTC
view on stackexchange narkive permalink

幾十年後,聽到“刪除”並沒有真正使數據無法恢復的事實,我不得不問為什麼操作系統很久以前沒有得到糾正,所以一直以來應該做些什麼?有什麼大不了的?系統難道就不會在後台過度覆蓋中徘徊,還有其他事情要做嗎?為什麼我們需要其他實用程序來執行我們一直認為發生的事情?操作系統開發人員不糾正此問題的動機是什麼?

添加:這不是技術問題,因為顯然可以安全地刪除內容,否則會不是可用的工具。這是一個政策問題:如果有人認為它很重要並且應該成為操作系統的一部分,為什麼它不成為操作系統的一部分?這些年來,已經為操作系統增加了很多東西,這肯定是其中之一。這是一個重要的問題,否則大約三十年來不會再有文章和故事了。慣性是什麼?做正確的事。

評論不作進一步討論;此對話已[移至聊天](http://chat.stackexchange.com/rooms/34360/discussion-on-question-by-no-comprende-why-didnt-oses-securely-delete-files-rig) 。
因為它昂貴,大多數人都不在乎它。同樣,大多數信息不是秘密信息。
十一 答案:
SilverlightFox
2016-01-15 20:29:35 UTC
view on stackexchange narkive permalink

由於以下原因:

  • 性能-它佔用破壞文件的資源。想像一個使用成百上千個文件的應用程序。安全刪除每個驅動器將是一項巨大的操作。
  • 驅動器上的額外磨損。
  • 有時,檢索文件的功能是操作系統的功能(例如,廢紙rash ,回收站,卷影複製)。
  • 如Xander所述,有時物理存儲機制是從操作系統(例如SSD或網絡驅動器)中抽像出來的。
+1我要補充一點,大多數用戶缺乏關於是否安全刪除其文件的擔憂也是一個可能的因素。如果95%的用戶要求通用安全刪除,那麼它很可能是一項功能,並且您提到的問題將以一種或另一種方式解決(可能是通過不同的用戶期望)。
那種性能的東西-早在操作系統“正確開始”時就出現在SSD上-只是想到了從[9條磁道磁帶]中安全刪除材料的出色性能(https://en.wikipedia.org/wiki/9_track_tape )。或對於那些140k的軟盤。要安全刪除軟盤嗎?將您不想刪除的東西移動到另一張軟盤上並銷毀原來的東西。比向Applesoft DOS 3.3添加其他幾個例程更容易。
另外:當您確實要安全擦除某些內容時,也需要從所有備份中擦除它。 (您確實有備份,對嗎?)默認情況下,安全擦除將完全浪費時間,因為用戶只會在實際需要時才從備份中安全擦除內容。
@MichaelT好點了。您仍然可以這樣做-只需將您的東西存儲在USB記憶棒上即可。
@PeterCordes如果要備份,甚至可以有兩個USB驅動器。
關心的用戶可能也希望一開始就對其文件進行加密,這在大多數情況下是一個更好的選擇,並且*是*許多操作系統的功能。
如果存儲是加密的,則安全刪除對性能沒有影響。您只需安全地擦除密鑰即可,這是O(1)操作而不是O(n)。
-1
@MichaelKjörling:確實,此設計需要一個文件系統,該文件系統具有按文件密鑰存儲在索引節點中或文件的等效文件。
此外,還有一些適用的解決方案,用於在用戶刪除驅動器時進行非實時的安全擦除/擾動驅動器,我想它可以覆蓋80%的安全刪除用例。對於其他20%(盜竊,政府沒收等),有磁盤加密。
使用手持式消磁器安全刪除一疊軟盤需要幾秒鐘。
早在DOS時代(在回收站之類的出現之前),刪除並不是永久存在的事實無疑是一個功能。 “ undelete”命令多次保存了我的屁股。
@R-在這種情況下,性能開銷是對所有存儲進行加密(這需要包括磁盤交換文件,而性能非常重要)。而且,仍然可以選擇恢復密鑰並基於此來提取數據(從專家恢復方法中完全刪除才能安全起見,這需要重複寫入包含密鑰的存儲,並且磁存儲上的一次覆蓋仍然可以使可讀性記錄)。
與國王相比,@James_pic取消刪除是兒童遊戲:Novell Netware。他們沒有“回收站”-驅動器是回收站。刪除文件後,它僅被標記為已刪除,並且該空間被計為驅動器上可用空間的一部分。實際上,僅當文件是驅動器上已刪除的最舊文件且操作系統需要空間時,這些文件才會消失。保留空間比回收站多,並且回收站中的文件沒有佔用驅動器空間的問題。
我認為(安全擦除)至少應作為一種選擇提供,它甚至不必是標準的。
Jared Smith
2016-01-15 22:14:29 UTC
view on stackexchange narkive permalink

我想採用一個略有不同的方法,而不是另一個“您錯了,因為”答案:

早期的計算機操作系統是由程序員為程序員編寫的。任何編程並知道指針是什麼的人都知道,“刪除”指針不會刪除其指向的內容:它們是分開的。

這並不意味著刪除實際上並不會刪除。那個指針不見了。在“刪除”它(釋放內存,重新綁定名稱)之後嘗試使用它可能會導致不良情況的發生。

但是歷史在繼續,現在擁有不同刪除概念的最終用戶(例如您自己)在圖片中。他們(和您)的期望不是 不合理(無論該線程中說了什麼)。

但是,刪除並不意味著(對於計算機)您的想法應該:在技術上(在其他答案中都做得很好)和社會性(慣性45年)都有原因。

現代(我包括* nix)操作系統為您抽象了很多事情:您不再需要成為計算機專家即可擁有/操作計算機,而不再需要成為機械師來擁有/操作汽車。您要付出的代價是這些抽像是 leaky:存在根本無法斷開的根本斷開。計算機的“文檔”實際上不是文檔,“桌面”不是桌面,“窗口”不是窗口,等等。

+1電腦最初並不是為外行設計的。
+1,因為最終它確實歸結為“過去的做法,而過去他們有不同的優先級”。
@Insane不是投反對票的人;但是,如果我要反對任何東西,那就會忽略安全刪除與普通用戶經常需要的功能不兼容(在其他答案中指出):能夠恢復意外刪除的內容。
-1
而且許多工具執行的安全刪除過程無法在SSD和其他基於閃存的設備上運行。嵌入在設備中的微控制器決定將數據寫入何處,以使存儲單元的利用率/損耗均勻,並使設備使用壽命更長。因此,安全刪除(例如,“ shred”)不會真正破壞文件。
刪除指向某物的指針可以是恆定時間的操作。將刪除的數據清零的順序是數據長度。這就是為什麼許多語言也不會強制將分配的數據清零的原因。不這樣做是很懶惰的,但這並不是性能的很小甚至是恆定的因素。
@Rob公平地說,一個旨在安全擦除某些內容的操作系統可能會將安全擦除推遲到以後,然後在後台運行,而不是立即佔用那裡的所有I / O,就好像您決定複製一個大文件一樣。
安全性是過去的事後考慮,以至於舊的Windows操作系統(或至少是MS-DOS)實際上會用**內存中的內容隨機填充文件系統扇區的空閒空間,而不是將其清零或寫入任何其他常量。沒有人站起來說“這聽起來不像是一個安全的主意”,這實際上表明了事後的安全保障確實是多少。
Virtual Anomaly
2016-01-15 21:12:24 UTC
view on stackexchange narkive permalink

由於沒有問題,因此不必進行糾正。

已刪除文件的指針,並將文件佔用的區域標記為可用空間。然後,驅動器會自行覆蓋該區域。純粹是為了減少驅動器上的磨損。畢竟,存儲設備(尤其是SSD)在發生故障之前可以寫入的次數是有限的。大多數用戶都不希望六個月後驅動器發生故障。

安全解決方案的確存在,可以使用工具來安全擦除硬盤驅動器上的可用空間。

+1,但是普通用戶可以*達到SSD的磨損極限的想法已經過時。請參閱[本文](https://techreport.com/review/27909/the-ssd-endurance-experiment-theyre-all-dead)。那些250 gb的SSD仍以1 PB寫入的容量(相當於硬盤容量的4000倍)進行運輸。
這是一個好點,但是,如果每次都安全刪除文件(在整個位置寫入1次或多次寫入),則硬盤驅動器故障的可能性至少更高。
正確,但是正如@Cruncher所說,SSD的故障早於HDD的說法曾經是正確的,但很快就成為一種誤解。
我在2013年購買了配備256GB SSD OS-Drive的機器,一年後它顯示了S.M.A.R.T.警告它將會死。得到了替換,一年之後,新的SMART警告大約剩餘3%的驅動器抬起聲,我得到了*另一個*替換。也許我的行為是將SSD保持在95%的容量,每天將20 + GB的程序保存在RAM中,並在始終在線的Web服務器上運行,並與我的公司文件同步軟件崩潰時交戰未能同步成千上萬個文件是造成問題的原因……達到現代SSD的磨損極限並非並非不可能。
關於它是否會導致驅動器磨損... OS是否不需要在舊文件上創建新文件之前將文件內容清零?我看不出“刪除時擦拭”與“創建時擦拭”在磨損方面確實有什麼不同。似乎是一項“性能優化”優化,可以快速刪除並擦除後台運行的內容,但似乎OS可以方便地運行此後台任務而不是延遲它。
@CarlWalsh否,操作系統不需要在創建新文件之前將任何內容清零。新文件的每個塊都可以(並且將被)簡單地寫在當前未使用的塊上,無論它是“新鮮”還是以前是其他文件的一部分。
@CarlWalsh否;具有寫時復制功能的操作系統和/或文件系統僅需要給人一種“錯覺”,即新分配的塊具有給定的值。就像`calloc()`實際上直到實際使用時才需要分配和擦除內存一樣,文件系統可能會假裝內容為零,直到您對其進行寫操作為止。
@MikeOunsworth出現這種情況的唯一原因是由於磨損平衡。如果必須立即安全地擦除數據,這將導致多次寫入,並使損耗均衡無效。
@CarlWalsh:廉價閃存芯片被細分為大塊,包含1024個或更多的頁面(操作系統將其視為扇區)。除了擦除包含空白頁的整個塊之外,無法更改非空白頁。因此,接收OS“扇區寫入”命令的驅動器將需要找到空白頁,在其中寫入新數據,並更新索引以指示可以在哪裡找到新數據。如果空白頁供不應求,驅動器將找到一個具有盡可能多的死頁(取代頁)的塊,從該塊的其他位置複製活動頁,然後...
...一旦所有內容都移到其他位置,請擦除該塊。如果一個塊有992個活動頁面和32個無效頁面,要擦除這32個無效頁面,將需要在其他地方復制992個活動頁面;除非系統決定出於磨損平衡的目的重新使用該塊,否則直到驅動器滿載95%之前,可能沒有任何理由這樣做。
WhiteWinterWolf
2016-01-15 21:53:02 UTC
view on stackexchange narkive permalink

您似乎對刪除一詞有疑問,並且對功能應該做什麼有錯誤的期望。

您可以在Merriam-Webster上檢查簡單的定義網站:

刪除 :從文檔,記錄,計算機中刪除(諸如文字,圖片或計算機文件之類的東西)等等。

刪除功能的目標是從其當前位置刪除所選對象。可以將它們移動到另一個臨時位置(垃圾箱)以防止任何意外損失,或者可以將它們佔用的空間直接標記為空閒。例如,em:

擦除 :從磁帶(例如錄像帶或錄音帶)中刪除(已錄製的內容) )或計算機磁盤;還:從(磁帶或磁盤)上刪除記錄的材料

:通過摩擦或刮擦去除(寫的東西),使其不再可見

:去除某些東西從(表面)寫入

這確實是一個較低的層次,在這裡我們不僅僅是從文件夾中刪除文件,還從磁盤中刪除文件數據,

Erase 是您在Windows世界中最常遇到的單詞,在Unix世界中您可能會遇到 wipe ,它描述了從更專業的角度來看該過程:

擦拭 :使用毛巾清潔或乾燥(某些東西),您的手等。

:通過摩擦去除(某些東西)

:在表面上移動(某些東西)

為什麼不操作系統默認會執行此操作嗎?出於幾個原因:

  • 普通家庭用戶不需要此功能,他們所需要的只是從文件夾中刪除文件,或者在使用外部驅動器的情況下,確保將其完全清理(外行術語為“慢”格式) )。他們很少需要刪除單個特定文件。

  • 普通家庭用戶實際上並不需要想要這樣的功能。您將看到默認值不僅是不刪除文件,也不是真正將其刪除:而是將其移到垃圾箱,因為家庭用戶希望他們的操作系統能夠在錯誤操作的情況下保存它們。您通常必須使用特定的組合鍵(Shift + Del選項)來刪除文件,而無需通過垃圾箱。

  • 最後,這樣的選項可能並不容易,或者甚至可以實施。技術進步為您的實際數據增加了一些邏輯和物理層:

    • 某些操作系統會定期對文件系統內容進行快照,在這種情況下,您的文件可能包含在一個或多個文件中。其中幾個快照。要確保在這種情況下正確擦除文件而又不損害快照完整性,可能會變得很複雜。實際存儲與操作系統如何看待之間的抽象級別。在這種情況下,儘管操作系統可以盡最大努力確保在文件系統級別刪除文件的數據,但它無法確保已在存儲級別上將其有效擦除。

一方面,您擁有一個操作系統,該操作系統出於文件考慮(為簡化起見),但實際上並不關心字節存儲;另一方面,您擁有一個存儲設備的固件是出於字節原因,但對文件一無所知,以及文件系統的實際設置是什麼。

那麼,這是否意味著一切都丟失了,我們需要等待一些不太可能的未來,才能將我們在存儲設備的固件中本地實現的文件系統帶給我們?否,但是您應該做什麼取決於您的實際關注點:

  • 如果您關注的是文件系統級別的數據,那麼您將擁有可以使用的第三方軟件為您的上下文菜單添加一個新的“擦除/擦除”選項。您需要手動確保此文件的副本不存在於任何文件系統快照和備份中,因為這需要根據具體情況做出決定,操作系統無法為您完成此操作(您不希望操作系統的橡皮擦嚮導搞砸您的備份或幫助您,對嗎?)。

  • 如果您擔心物理存儲在存儲設備上的數據,請使用文件系統加密。這將確保任何人只要把手放在存儲設備上,就不會利用由於磨損均衡和錯誤的塊處理而導致的潛在“洩漏”數據。

這是正確的答案。
例如,在UNIX中,沒有“刪除”,“刪除”或“刪除”功能,只有“取消鏈接”。
@tudor:確實,您提出了一個重要的觀點。儘管“ unlink”是在文件系統級別明確定義的功能,但是擦除/擦除功能實際上是通過覆蓋文件內容來進行的,因為實際上沒有辦法僅從磁盤上“刪除”數據:只能覆蓋它。這裡出現了不同的重寫方法,使用隨機數據,使用特定模式,使用一次或一定數量的通過等,每種方法都有其優點和缺點。這就是為什麼要由用戶選擇適合自己需求的第三方軟件的原因。
Benoit Esnard
2016-01-15 20:22:30 UTC
view on stackexchange narkive permalink

出於性能原因。從索引中刪除文件,並聲明該文件所在的區域現在是可用的並且可以重複使用,這比擦除該區域上的所有數據要有效得多。

對於轉過來的SSD。
@JDługosz:並非如此。基於閃存的驅動器需要物理上擦除塊上的所有信息,然後才能重用任何空間,但是如果有人要刪除使用塊中1024個扇區中的64個扇區的文件,則將這64個扇區標記為無效比複製960扇區(其內容仍需要在其他地方)然後擦除包含這64扇區的塊要快得多。
我的意思是`trim`命令。塊在非常原始的級別上被標記為未使用,而不是一直閒逛直到碰巧被重用。與不執行任何操作(不清除)效率更高相比,不重新復制未使用的塊效率更高。
@JDługosz:鑑於恕我直言,不幸的是,決定所有USB驅動器都使用基於扇區的訪問而不是更接近NFS的方式,因此中級“標記扇區已過時”的操作要比*要么*物理擦除*或*較高級別的系統將其視為未使用,而無需告知驅動器。
SATA / SAS也是一個問題。不是USB,而是將存儲層從設計命令結構的地方移開了,從歷史上看,主機具有更多的智能,而設備則更少。
Cort Ammon
2016-01-16 23:14:55 UTC
view on stackexchange narkive permalink

並非所有人都同意您對“刪除”的定義。

對於99.9%的用戶,他們並不擔心有人在四處尋找數據。他們希望有空間來存儲更多激流的電視節目。對於大多數人來說,再也不必為文件保留空間了。

然後就是您所屬的一組個人,他們希望刪除文件以使文件無法恢復。但是,您是否適當考慮了硬盤驅動器上其他位置的文件的緩存副本?實際上可能很難確保將某些內容完全刪除。對於想要這樣功能的人,您可能已經平衡了安全性問題,但是您認為99.9%的人做到了嗎?

最後,考慮那些真正關心擦除其秘密的人。政府的標準程序是將硬盤放入研磨機。為什麼?您是否知道在擦除文件時,磁盤的某些磁性使數據可訪問?普通硬盤驅動器磁頭無法訪問它,而是將其取出並放​​入昂貴的磁性讀取器中,它們實際上可以提取數據。

如果政府希望重複使用硬盤驅動器,標準過程是7倍擦除,您在其中寫入磁盤的每個扇區7次。他們通常只使用磨床,因為此過程的機械強度很高,以至於大多數磁盤甚至都無法倖免。

“刪除”到底是什麼意思?

編輯:我試圖畫一些點,然後讓其他人畫線,但是看起來對我也可能有所幫助。安全總是涉及妥協。很少有人對安全性有足夠的了解,以至於無法正確選擇折衷的級別。對於那些有能力的人,您可以將人們分為三類。一類人不太關心安全性,他們會討厭一種產品,這些產品以犧牲可用性為代價來推動超出他們想要的安全性。一類人比您更關心安全性,並且會對產品缺乏安全性感到沮喪。最後,有一個類別適合您,您對此平衡感到滿意。比聽起來要響。

我不能在這個問答站點上投票,但是……“ 99.9%”(來源?)“因為這個過程機械強度很高……甚至無法倖免遇到的麻煩”(來源?)屬性...拉出數據。” (實際上,有一篇研究論文認為一次擦拭不會擦除足夠的信息以致無法恢復。但是這裡沒有鏈接)。
@sumurai8如果每千名用戶中有一個十分清楚文件存儲的細微差別,並願意監管他們的文件OS緩存,從而能夠從這種安全擦除中獲得任何安全性,我會感到驚訝。對於那些不知道自己的操作系統正在為他們做什麼的人,這樣的功能將是蛇油。我很想看那篇論文。政府顯然不如您信任,儘管看到新的確鑿證據總是很巧妙。官方規則可能適用於較舊的硬盤驅動器,而新的則沒有那麼大的作用
無論如何,@CortAmmon政府通常都不會對“足夠安全”感到滿意。這不僅適用於安全性,而且在更大程度上適用於安全性(例如,某些物質的“每日安全劑量”設置為比實際有害物質低幾倍的值)。
這是您所指的論文嗎?古特曼本人的最新尾聲https://www.cs.auckland.ac.nz/~pgut001/pubs/secure_del.html#Epilogue
supercat
2016-01-21 23:10:02 UTC
view on stackexchange narkive permalink

與現實生活中的垃圾收集者在將它們扔進卡車之前不會切碎所有東西的原因相同。

人們可能會丟棄物品或信息的主要原因有兩個:

p>
  1. 他們希望防止其他任何人(或某些特定的人)使用它們。

  2. 他們不認為這些物品對任何人都具有足夠的價值,足以證明保留這些物品或尋找對他們有用的人所付出的代價。

  3. ol>

    那些為第一個原因應該銷毀它們,使它們無法使用,但是對於那些出於第二個原因而放棄事物的人,最好將與這些物品相關的總剩餘費用減至最少。由於計算機會生成大量信息,這些信息在相對較短的時間內就會變得無用,而且由於-對於大多數計算機-如果釋放這些信息中的大部分都不會對任何人造成任何損害,因此在許多情況下,對故意破壞信息。只要有需要,只要確保已佔用信息的任何空間都可以重用就可以了。

Alexey Vesnin
2016-01-17 03:53:10 UTC
view on stackexchange narkive permalink

實際上,您正在弄亂兩個不同程序:刪除和安全擦除。第一個只是 standard 依賴於FS的操作,是確定且 standardized 的操作。第二種-安全擦拭-有很多方法,不擦除保護等級,標準等。因此,從邏輯上講是正確的,如果您需要第二種,負責根據自己的獨特情況選擇並激活合適的機制。在每種情況/任務/環境實施中,都沒有通用且標準化的安全擦除方法。

TOOGAM
2016-01-20 01:20:37 UTC
view on stackexchange narkive permalink

為什麼OS不能從一開始就安全地刪除文件?

您是說從刪除開始還是從操作系統開始?早期的操作系統試圖將重點放在技術進步上,例如將內容存儲在硬盤驅動器上,而不是軟盤驅動器或打孔卡上。操作系統不需要做任何特殊的事情,就不可能從軟盤驅動器中檢索數據。 (對不起,那裡的軟盤驅動器的可靠性讓我很開心。)那時,“保存”的能力非常重要。進行文件維護(例如能夠“刪除”)可能是一種隱蔽且很少使用的菜單選項。 “安全刪除”對於那些可能只是將磁盤扔掉或先將其刻錄掉的人來說似乎是胡說八道。為什麼要使用比現在低得多的速度嘈雜的軟盤驅動器等待半分鐘或更長時間,以便可以覆蓋零?在沒有人了解“雙擊”是什麼的那一天,因為他們甚至沒有鼠標,所以甚至從來沒有單擊過鼠標,並且他們認為“複製和粘貼”是超先進的技術,甚至無法理解目的。

然後,當遇到困難時,操作系統簡單地做了直接的事情,那就是使用經證明對軟盤可靠的同一計算機代碼

,這是一個重要的問題,否則大約三十年來不會再有文章和故事了。

實際上,這可能更多地反映了新聞學的目標,即寫出人們可能會發現有趣的東西,或者可能是教育努力的結果。很多人根本不了解刪除是永久性的,這對人們理解事物是有好處的,因此教育是一件積極的事情。但這並不意味著應該更改softare的默認行為。

因為有些人覺得這並不重要。儘管對於某些人(他們一定願意自由地歡迎他們擦拭(而不是刪除)),擦拭可能會有用得多,但不同的人可能有不同的優先級。我首先刪除東西,以便有可用磁盤空間而不是已用磁盤空間,並加快影響所有文件的操作(例如將所有已用磁盤空間複製到硬盤驅動器上),所以我不需要來查看舊文件的文件名,以便在需要新文件時不會意外打開舊文件。刪除是一種從軟件隱藏不需要的數據(例如舊數據)的有效方法,這樣軟件就不會使用不需要的數據。在我開始更可靠地備份數據之前,我實際上讚賞偶爾使用可以“刪除”數據的恢復軟件的功能。正如其他人所表示的,擦拭可能會導致速度變慢和“磨損”。由於我的計算機還沒有出現過,因此我擔心的人可能會瀏覽我刪除的數據以嘗試學習我希望保密的內容,因此擦拭從來都不是我的首要任務。考慮到所有這些,針對您的最後一個陳述,“做正確的事”,我認為對於我的使用場景而言,刪除已成為“正確的事”,而擦除的頻率要遠高於擦除情況。我認為,回答您許多問題的最大簡單原因是,在大多數情況下,確定哪種行為是“正確的事情”可能並不像您認為的那麼簡單。

硬盤驅動器確實的確是在軟盤之後出現的,但在大型機和小型計算機上卻不是:首先出現在硬盤中(1956年)。稍後(約1970年)開始使用軟盤。
我記得中學時在PDP-11上使用8英寸軟盤。希望我保留一個。這裡某處有幾張卡片...似乎很有趣,因為計算機最初主要是為政府和軍方開發的,因此它們沒有提供更多的安全性。我猜他們有身體上的安全感(組件太重了,無法在安全的校園中帶鎖鐵絲網包圍並受到武裝警衛保護的帶鎖建築中的帶鎖室內走進去),因此他們不必為此擔心。但是,為什麼不包括PC和過去3年中的安全性問題呢?哦,嗯,​​沒有意義。
bain
2016-01-20 03:34:17 UTC
view on stackexchange narkive permalink

為什麼他們仍然不這樣做呢?

其他答案已經回答了為什麼以前沒有做到這一點(性能,用戶期望等),所以我只會添加一條註釋,說明為何現在仍未完成。一個問題是,安全刪除僅被視為部分安全解決方案:它將刪除文件的一個副本,但是大多數現代應用程序將留下大量痕跡-歷史(撤消)緩衝區,備份副本等-可以從中刪除數據聚集。還存在在刪除文件之前訪問文件的問題(例如,您打算安全刪除驅動器上的文件,但是有人偷走了驅動器,才有機會)。由於這些原因,現代操作系統已對用戶存儲實施了完全加密,從而無需進行安全刪除。使用加密的用戶數據,即使驅動器保留了“已刪除”文件的映像,該文件(以及每個其他文件)的所有痕跡也會被沒有解密密鑰的攻擊者隱藏。 Chrome OS,Android和iOS現在都默認情況下都對用戶數據進行加密,因此,至少在這些系統上,幾乎不需要安全刪除單個文件。

對於每個文件的加密密鑰,即使密鑰隨後以明文形式存儲,除非用戶提供了對其進行加密(而不是填充磁盤加密),這似乎是一個更好的解決方案-然後,您可以簡單地覆蓋存儲密鑰的〜256位,然後無法訪問該文件。 OpenBSD這樣做是為了交換空間,但是普通的文件系統實現並不是特別常見。
-1
感謝您解決我的問題的重要部分。
@supercat:如果有太多的抽象層,這將變得很棘手...如果密鑰列表也由用戶提供的密鑰加密,從而有效地進行了全盤加密,那麼即使不銷毀密鑰,讀取密鑰數據也會變得更加困難,但使用起來不太方便。即使沒有這種情況,恢復已刪除數據的機會仍然比當前要少得多,因為目前沒有嘗試銷毀數據。
Celeritas
2016-01-22 13:26:35 UTC
view on stackexchange narkive permalink

其他答案很好,並且已經在技術層面上完全涵蓋了該問題。但是我認為會提示另一個答案,從另一個角度解決該問題,因為(IMHO)這個問題並不是真正的技術性問題(詢問為什麼做的不同之處更多的是業務決策,而不是技術性決策)。

該問題詢問為什麼操作系統沒有真正刪除數據。操作系統的製造商可以使其隨心所欲。當然,沒有理由不能有人構建一個可以刪除數據的操作系統。但是為什麼他們會呢?嘗試繞開這個問題,為什麼有人會在容易下載適合您的實用程序時構建一個刪除數據的操作系統?另外,通常的哲學是操作系統應該是極簡主義的,並且只包含計算機運行所必需的功能。

我的回答並不是苛刻,我的意思是問題似乎是從錯誤的角度提出的,並且缺少一些初步的知識。

操作系統極簡主義? 25年前,我編寫了一組DOS TSR,以通過Novell網絡共享調製解調器。大約在那個時候,微軟發布了自己的網絡功能,最終它可以在其網絡方法上共享調製解調器和打印機。微軟已經慢慢接管了大多數用於備份,撤消刪除等操作的第三方產品。它只是極簡主義,而且由於Windows佔據了90%的PC,因此大概佔了90%。那裡的計算機,這確實是我所指的。
@nocomprende實際上是所問問題的另一個問題,它似乎在說所有操作系統都相同,而事實並非如此。 Windows是最腫的操作系統之一。


該問答將自動從英語翻譯而來。原始內容可在stackexchange上找到,我們感謝它分發的cc by-sa 3.0許可。
Loading...