kinnekoの日記: ディスク内データ消去の方法 4
ちょっと雑学的お勉強をしてみる。
世の中には消去用のソフトウエアがたくさん市販されているけど、
OSS 利用者には、そういうのいらないということは自明。dd だっ
て十分にその機能を果してくれる。
でも、果してそれでいいの? というわけで、市販品が根拠にして
いるディスク消去の方式などを調べてみる。
また、既存のユーティリティも調査。これは前に yak に入れるの
で調べたことがあるのを増強する。
http://lists.osdn.jp/pipermail/ya-knoppix-jp-devel/2003-January/000247.html
消去の方式
・乱数複数回書き込み
・米国家安全保障局(NSA)推奨方式
乱数2回と null 1回
・米陸軍準拠 AR380-19
乱数1回, 固定値2パターン
http://www.fas.org/irp/doddir/army/r380_19.pdf
・米海軍準拠 NAVSO P-5239-26
固定値3パターン, 確認
http://www.fas.org/irp/doddir/navy/5239_26.htm
・米空軍準拠 AFSSI5020, AFI33-202
固定値7パターン, 確認
http://cryptome.org/afssi5020.htm
・米国防総省 DoD5220.22-M
固定値2パターン, 乱数1回, 確認
http://web.deskbook.osd.mil/htmlfiles/rlframe/REFLIB_Frame.asp?TOC=%2Fhtmlfiles%2FTOC%2F003DMtoc%2Easp%3FsNode%3DL2%2D1%26Exp%3DN&DOC=%2Freflib%2FMDOD%2F003DM%2F001%2F003DM001DOC%2EHTM
・米国コンピュータセキュリティセンタ NCSC-TG-025
固定値3パターン
・Peter Gutmann 方式
乱数4回, 固定値27パーターン, 乱数4回
http://www.cs.auckland.ac.nz/~pgut001/pubs/secure_del.html
参考: http://www.disksh.com/ds/method.html
ソフトウエアユーティリティ
・GNU shred (GNU coreutils に含まれる)
Gutmann 方式の実装? デフォルトの消去回数が合わないな...
これの GUI ラッパはないかな?... ないみたい。
http://www.geocities.jp/fut_nis/html/fileutils-ja/shred-invocation.html
http://www.linux.or.jp/JM/html/gnumaniak/man1/shred.1.html
・grind
http://prp0.prp.physik.tu-darmstadt.de/~mrose/grind/
・wipe
http://wipe.sourceforge.net/
・fwipe
http://budney.homeunix.net:8080/users/budney/linux/software/fwipe.html
※前に調べた時とは URL が移動している
・BCWipe
http://www.jetico.com/ 商用品だが Linux 版あり
・DiskSanitizer for Linux
こちらも商用品
http://www.east-tec.com/sanitizer/sanit_linux.htm
・secure delete
http://freshmeat.net/projects/securedelete/?topic_id=43
リンク先消滅?
・R-Linux
Ext2の復旧プログラム(Windows で動作?)
http://www.data-recovery-software.net/Linux_Recovery.shtml
・unrm (Ext2 のみ?)
http://freshmeat.net/projects/unrm/?topic_id=866
・TestDisk
DiskTest とパーティションの undelete
http://www.cgsecurity.org/index.html?testdisk.html
・SafeShred
MacOS X 用。GUI の参考になる。
http://www.codetek.com/php/safeshred.php
・Darik's Boot and Nuke
FD/CD の自動削除ツール
こういうのの、もっと GUI なのがほしいなぁ。
構成内容からすると改変は容易かな。
http://dban.sourceforge.net/
不良セクタの再マップ機能を解除してから削除処理しないと、
不良セクタ部分が消し残しになる可能性が指摘されている。
不良セクタの解除は SCSI ならコマンドでできるけど、
IDE だとやる方法がないよなぁ。
メーカーがマニュアルにない隠しコマンドを用意しているとか、
ディスク面を物理的に読むことでもしないと無理でしょ。
あとは不良セクタのサイズに入る情報はどのくらいか、
その量で有効な情報と言えるのかってこともある。
らんだむ。。。かなぁ (スコア:2, 参考になる)
dd if=/dev/urandom of=/dev/hda bs=16k
dd if=/dev/urandom of=/dev/hda bs=16k
dd if=/dev/zero of=/dev/hda bs=16k
微妙に /dev/urandom が出てくるの遅いですが、
泣きそうになるぐらい遅いわけじゃないしで
なんとかなるかしらん。
$ set -o vi
Re:らんだむ。。。かなぁ (スコア:1)
してないのにびっくりでした。
ランダムデバイスは、Linux の実装より高速でランダムさの高い
実装をどこかで見たことあるような。
消すのが目的なので、数学的に純粋なランダムは求められないと
思いますので、πの値のベタデータでも与えたくらいでいいかも。
Re:らんだむ。。。かなぁ (スコア:1)
>実装をどこかで見たことあるような。
疑似乱数といえば
これ [keio.ac.jp]ですかねぇ.
# すでにご存じでしたら失礼しました.
こないだ、 (スコア:1)
データを消すのに物理フォーマットするツールを探して対応しました(^^;。
えらい時間がかかった。
uchachaの日記 [hatena.ne.jp]