iThome

通常SSD的使用者在刪除資料時,資料並不會真的從快閃記憶體內抹除掉,而是被標記成已抹除的資料,在SSD需要釋放空間時,才會真正將資料給抹去。像支援TRIM功能的SSD,會在閒置時自動抹除資料;而不支援該功能的,則要視該SSD上的演算法而定,它會計算出何時該進行資料抹除。

如果使用者要自己進行資料抹除,則可以使用ANSI標準的ATA Secure Erase指令。而一位不願具名的金士頓(Kingston)技術支援部工程師表示,雖然SSD都擁有原生的內部指令,但是也要看各家的快閃記憶體控制器是否提供該功能,無則不能使用。

針對ATA Secure Erase指令支援度,目前市面上的SSD粗分成三種。第一種是支援該指令,當SSD接收到指令時,會將快閃記憶體上的邏輯區塊位址抹除,而這會讓區塊位置標示成已抹除的狀態,等同於回復到剛出廠的狀態。第二種則不支援指令,這是因為有些快閃記憶體控制器,並沒有支援ATA的ANSI標準指令,這類情形較會出現在早期的SSD上。而第三種則是表面支援指令,也可以執行該指令,但實際上卻無法抹除。

金士頓表示,他們自家的產品支援ANSI標準的ATA Normal Secure Erase及ATA Enhanced Secure Erase指令。使用者可透過HDDerase這套軟體,在DOS模式下抹除SSD。而這兩個指令的作用上,前者是將邏輯區塊位址抹除,來達到銷毀資料的目的;而後者的功能較為進階,它是將SSD上加密的金鑰摧毀,這會讓加密的資料幾乎無法進行解碼。

不過需注意的是,SSD上的超額配置(over-provisioning)空間,是用來暫存及加速存取資料用。而這部份的快閃記憶體,並不受Secure Erase指令影響。所以在抹除時,該區塊有可能會殘存部分資料。

 

可抹除SSD的小程式

HDDerase僅能在DOS模式下運行,使用者能透過它執行Secure Erase指令。這套軟體能依照安全等級,執行共4種層級的抹除指令,依照等級排列為Normal File Deletion、DoD 5220 Block Erase、Secure Erase及NIST 800-88 Enhanced Secure Erase。

 


相關報導請參考「SSD資料無法100%銷毀」


Advertisement

更多 iThome相關內容