Re: [問題] 刪除硬碟所有資料
※ 引述《tylpk (tylpk)》之銘言:
: 最近在整理公司硬碟準備做銷毀,
: 在使用工具銷毀資料的過程中,
: 想到幾個有關程式的問題,
: 想跟各位前輩請教。
: 1.銷毀資料的工具軟體,裡面有內含一些演算法,
: 例如 one pass by zero or DoD 5220.22-M 等
: 為什麼需要這些演算法呢?
: 如果我可以從磁碟的第1個byte寫亂數資料到最後1個byte(All sectors)
: 這樣不就可以達到銷毀資料的目的,為什麼還要分寫幾次?
: 是因為不太可能這樣做,還是實際上不可能拜訪到每1個byte?
: 2.如果我要用C語言寫類似 DiskWipe 的工具,我要如何去做呢?
這幾天查了一些資料,給大家參考看看。
用 Win32 API 的 CreateFile,第1個參數用 \\.\C:,便可以讀取C槽的整個磁區,
用 SetFilePointer,可以移動到最前面(第1個Sector),
如果想知道硬碟的 Sector 數等資訊,
可以用 DeviceIoControl,第2個參數用 IOCTL_DISK_GET_DRIVE_GEOMETRY。
以上是在硬碟只有1個分割區的情況下測試,
接下來就是演算法的問題了。
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 114.45.237.4
討論串 (同標題文章)