#!/bin/bash # blotout.sh: ÆÄÀÏÀÇ ¸ðµç ±â·Ï Áö¿ì±â. # ÀÌ ½ºÅ©¸³Æ®´Â ´ë»ó ÆÄÀÏÀ» Áö¿ì±â Àü¿¡ #+ ÀÓÀÇÀÇ ¹ÙÀÌÆ®µé·Î µ¤¾î¾²°í, 0À¸·Î µ¤¾î¾²±â¸¦ ¹Ýº¹ÇÕ´Ï´Ù. # ÀÌ·¸°Ô ÇÏ°í ³ª¸é, µð½ºÅ© ¼½Å͸¦ ¹°¸®ÀûÀ¸·Î °Ë»çÇصµ #+ ¿ø·¡ÀÇ ÆÄÀÏ µ¥ÀÌŸ¸¦ ã¾Æ ³¾ ¼ö ¾ø½À´Ï´Ù. PASSES=7 # ÆÄÀÏ Á¶°¢(file-shredding) ´Ü°è. BLOCKSIZE=1 # /dev/urandom À¸·Î I/O ¸¦ ÇÒ ¶§ ÇÊ¿äÇÑ À¯´Ö ºí·° Å©±â. #+ ÀÌ Å©±â°¡ ÁöÁ¤µÇÁö ¾ÊÀ¸¸é ÀÌ»óÇÑ °á°ú°¡ ³ª¿É´Ï´Ù. E_BADARGS=70 E_NOT_FOUND=71 E_CHANGED_MIND=72 if [ -z "$1" ] # ÆÄÀÏÀÌ ÁöÁ¤µÇÁö ¾Ê¾ÒÀ½. then echo "»ç¿ë¹ý: `basename $0` filename" exit $E_BADARGS fi file=$1 if [ ! -e "$file" ] then echo "\"$file\" ÆÄÀÏÀ» ãÀ» ¼ö ¾øÀ½." exit $E_NOT_FOUND fi echo; echo -n "\"$file\" ÆÄÀÏÀ» Á¤¸»·Î ¿ÏÀüÈ÷ Áö¿ö ¹ö¸®°Ú½À´Ï±î(y/n)? " read answer case "$answer" in [nN]) echo "Çϱ⠽ȴٱ¸¿ä?" exit $E_CHANGED_MIND ;; *) echo "\"$file\" ÆÄÀÏÀ» ¿ÏÀüÈ÷ Áö¿ì´Â Áß.";; esac flength=$(ls -l "$file" | awk '{print $5}') # 5 ¹ø° Çʵ尡 ÆÄÀÏ ±æÀÌ. pass_count=1 echo while [ "$pass_count" -le "$PASSES" ] do echo "$pass_count ¹ø° ´Ü°è" sync # ¹öÆÛ Ç÷¯½¬. dd if=/dev/urandom of=$file bs=$BLOCKSIZE count=$flength # ÆÄÀÏÀ» ÀÓÀÇÀÇ ¹ÙÀÌÆ®µé·Î µ¤¾î¾¸. sync # ´Ù½Ã ¹öÆÛ Ç÷¯½¬. dd if=/dev/zero of=$file bs=$BLOCKSIZE count=$flength # ÆÄÀÏÀ» 0À¸·Î µ¤¾î¾¸. sync # ¶Ç ´Ù½Ã ¹öÆÛ Ç÷¯½¬. let "pass_count += 1" echo done rm -f $file # ¸¶Áö¸·À¸·Î, ¿ÂÅë µÚ¼¯ÀÌ°í Á¶°¢³ª ¹ö¸° ÆÄÀÏÀ» »èÁ¦. sync # ¸¶Áö¸· ¹öÆÛ Ç÷¯½¬. echo "\"$file\" ÆÄÀÏÀÌ ¿ÏÀüÈ÷ »èÁ¦µÇ¾ú½À´Ï´Ù."; echo # ÀÌ ½ºÅ©¸³Æ®´Â ÆÄÀÏÀ» ¿ÏÀüÈ÷ "Á¶°¢³»´Âµ¥"(shredding) ºñÈ¿À²ÀûÀÌ°í ´À¸° ¹æ¹ýÀ» #+ ¾´ °Í¸¸ »©¸é Á¤¸» ¾ÈÀüÇÕ´Ï´Ù. GNU "fileutils" ÆÐÅ°ÁöÁßÀÇ ÇϳªÀÎ #+ "shred" ¸í·É¾îµµ ¶È°°Àº ÀÏÀ» ÇÏÁö¸¸ Á» ´õ È¿À²ÀûÀÔ´Ï´Ù. # ÀÌ ½ºÅ©¸³Æ®·Î Áö¿öÁø ÆÄÀÏÀº ÀϹÝÀûÀÎ ¹æ¹ýÀ¸·Î´Â "undelete"µÇ°Å³ª #+ º¹±¸ÇØ ³¾ ¼ö ¾ø½À´Ï´Ù. # ÇÏÁö¸¸... #+ ÀÌ·± °£´ÜÇÑ ¹æ¹ýÀº °úÇÐÀûÀÎ ºÐ¼®(forensic analysis)±îÁö ¸·¾Æ³»Áö´Â ¸øÇÕ´Ï´Ù. # Tom VierÀÇ "wipe" ÆÄÀÏ »èÁ¦ ÆÐÅ°Áö´Â ÀÌ °£´ÜÇÑ ½ºÅ©¸³Æ®º¸´Ù Á» ´õ #+ ¿ÏÀüÇÏ°Ô ÆÄÀÏÀ» Áö¿ö ÁÝ´Ï´Ù. # http://www.ibiblio.org/pub/Linux/utils/file/wipe-2.0.0.tar.bz2 # ÆÄÀÏ »èÁ¦¿Í º¸¾È¿¡ ´ëÇؼ Á» ´õ ÀÚ¼¼ÇÏ°Ô ¾Ë°í ½Í´Ù¸é, #+ Peter GutmannÀÇ ³í¹®À» Âü°íÇϱ⠹ٶø´Ï´Ù. #+ "Secure Deletion of Data From Magnetic and Solid-State Memory". # http://www.cs.auckland.ac.nz/~pgut001/secure_del.html exit 0