米国国家安全保障局方式でデータを抹消

/ .trash / Comment[0]
簡単な乱数を標準出力するプログラムを作っておく
#include <stdio.h>
#include <time.h>
int main()
{
srand(time(NULL));
for(;;){
printf("%x", rand());
}
return 0;
}




米国国家安全保障局(NSA)方式
 ファイル単位の乱数 → セクタ単位の乱数 → 零

 ddコマンドはifからofへコピーするだけでなく、このようにパイプを使って標準出力のデータを書き込むこともできます。
 抹消したいHDDが/dev/sdbで、容量が244198584KBの場合このように打ちます。

 # find /mnt -type f -exec "shred -n3" {}\; ; ./random | dd of=/dev/sdb bs=4k count=61049646 ; dd of=/dev/zero of=/dev/sdb bs=4k count=61049646



米国陸軍方式(AR380-19)
 乱数 → 固定値 → 固定値

 # ./random | of=/dev/sdb bs=1k count=244198584 ; dd if=/dev/zero of=/dev/sdb bs=1k count=244198584 ; dd if=/dev/zero of=/dev/sdb bs=1k count=244198584



1ヶ月以上通常アカウントにログインがなかった場合に米国陸軍方式でHDDを抹消するシェルスクリプト
cronで定期的にチェックするように設定しておけば、もし何かあったときに安心♪
#!/bin/sh
wakeonlan -i 255.255.255.0 aa:aa:aa:aa:aa:aa
sleep 120
test `date +%m` -eq $(echo `ssh -i phantom1_rootkey root@phantom1.local "lastlog|grep Phantom"`|cut -d" " -f 5|cut -c1) ||\
./random | of=/dev/sdb bs=1k count=244198584\
dd if=/dev/zero of=/dev/sdb bs=1k count=244198584\
dd if=/dev/zero of=/dev/sdb bs=1k count=244198584"
ssh -i phantom1_rootkey root@phantom1.local "shutdown -h now"
関連記事

コメント

:
:
:
:
:
管理人のみ表示を許可