본문 바로가기
데이터복구정보/복구관련정보

덮어쓰기(overwrite)의 복구 가능성은 얼마나 될까?

by CBL 2016. 8. 26.
덮어쓰기(overwrite)의 복구 가능성은 얼마나 될까?

 

 

 

 

 

덮어쓴 데이터 복구는 과연 가능한 일일까?

덮어쓰기(Overwrite)는 기록된 정보 위에 중복 기록됨으로써 원래의 정보가 손실되어 버리는 기록방식을 말한다.

최근 개인정보 보호가 강화되면서 영구삭제하는 프로그램들이 데이터를 지우는 방식으로 덮어쓰기가 이용된다.

과연 덮어쓰기가 되면 어떤 결과가 나타나며, 데이터는 완전히 사라지는 걸까?

 

 

 

덮어쓰기(Overwrite)방법

삭제하고자 하는 데이터 범위에 정해진 비트 패턴으로 재기록 하는 것을 말하며, 0×0, 0×1 또는 랜덤한 비트 패턴을 사용하며, 특정한 비트 패턴을 정의하기도 한다. 각 국가나 기관별로 덮어쓰기 표준지침이 있으며, 국내에서는 정해진 지침이 없고, 일부 기관에서만 미국방성의 표준을 따르고 있는 실정이다.

 

 


실수로 일어나는 덮어쓰기의 사례

데이터를 백업하지 않고 윈도우를 재설치한 경우

데이터를 백업하지 않고 하드디스크를 포맷하고 새로운 데이터를 저장한 경우

메모리카드의 데이터를 백업하지 않고 포맷후 재촬영한 경우

HDD나 메모리에 기록된 데이터를 삭제한후 새로운 데이터를 저장한 경우

 

 


영구적으로 지우기 위한 덮어쓰기의 사례

스마트폰의 기록된 데이터를 지우고 새로운 데이터를 여러번 저장하는 경우

HDD나 메모리에 기록된 데이터를 지우고 새로운 데이터로 가득 채우는 경우

영구삭제 프로그램을 이용하여 저장매체에 덮어쓰기를 반복하는 경우

 


특정 소프트웨어를 통한 영구삭제는 비트 패턴이나 고정된 문자열에서 프로그램사용의 흔적이 남아

영구삭제 의도가 확인될 수 있다.

 

 

 


덮어쓴 데이터의 복구 가능성

 

1996년 피터구터만(Peter Gutmann)의 논문 발표를 통해 덮어쓰기된 데이터의 복구가능성에 논란이 시작되었다. 피터구터만의 논문의 근거를 요약하면 자력 현미경 장비를 통해 자기력에 의한 공간적인 변이를 형상화하여

형상의 차이를 통해 복구를 할수 있다는 것이다. 또한 데이터를 완전히 지우기 위해서는 35번까지 덮어쓰기를 해야 한다고 주장하고 있다.


- 0에 1을 덮어쓰면 0.95, 1에 1을 덮어쓰면 1.05의 형태 값이 기록되어 이전 데이터의 추적이 가능하다.

- 액추에이터가 기록할 트랙을 찾을때 오차가 발생하므로 트랙의 가장자리의 잔여 데이터를 확인하면

  이전 데이터의 추적이 가능하다. 

 

 

 

 

 

과연 덮어쓴 데이터는 정말 복구가 가능한 것일까?

복구는 가능하지만, 정상적으로 사용할 수 있는 의미있는 데이터는 거의 없다.

이유는 아래와 같다.

 


- 액추에이터의 정밀도와 헤드의 정확도 문제

- 플래터의 회전에 따른 진동과 공기 흐름의 문제

- 플래터의 회전에 따른 내부 열 발생의 문제

- 많은 컴포넌트에서 발생되는 오류의 문제

- 과거에 기록된 데이터들의 문제

- 디스크의 노후화 및 부식 상태

 

 

 

 


피터구터만의 논문을 보면 디스크에 한번도 데이터가 기록된 적이 없는 하드디스크 드라이브에

1을 기록한 경우와 사용하던 디스크에 1을 덮어쓰기한 경우에 발생되는 자기 밀도의 분포도이다.

기록된 자기밀도의 분포도만 보면 큰 차이로 볼수 있으나, 이전 데이터의 영향으로 인한 것인지

열이나 헤드정확도 등의 외부요인에 의해 발생된 것인지 정확하게 구분되기 어려운 점이 있을 것으로 보인다.

 

 

 

 

 

 

 

그럼 덮어쓰기후 데이터를 복구할 확률은 얼마나 될까?

1bit를 복구할 확률은 깨끗한 디스크에서는 92%, 사용하던 디스크에서는 56%.

 

 

 

 

 


깨끗한 하드디스크에서

​1회 0을 덮어쓴 경우 1bit를 복구할 확률은 87%.

3회 0을 덮어쓴 경우 1bit를 복구할 확률은 64%.

 

 

 

 

 

 

 

 

 

의미있는 데이터는 최소한 4byte 정도이며, 4byte는 IP주소로 볼 수 있다.

하지만, 위의 결과를 보면 4byte가 복구될 확률은 거의 제로에 가깝다.

 


그렇다면, 문자열을 덮어쓰기한후 복구하면 어떻게 될까?

아래는 원문 문자열과 복구된 문자열이다.

 

 

<원문>

 

 

 

 

<복구된 문자>

 

 


결론은 개별 bit에 대한 복구 가능성은 높을수 있지만, 의미 있는 사용 가능한 데이터를 살려낼 가능성은

희박하다고 볼수 있다. 

 

 

 

 

참고자료.

Peter Gutmann: Overwriting Hard Drive Data: The Great Wiping Controversy

 

 

댓글10

  • 2016.10.22 02:05

    그럼 한번만 덮어쓰기해도 의미있는 사진을 건질 수 없다는 뜻인가요?(사진이 반이상이 짤린다는 뜻인가요?)
    답글

    • CBL 2016.10.22 12:26 신고

      저장매체가 하드디스크냐 메모리냐에 따라 약간의 차이는 있습니다만, 예를들어 10GB용량에 10GB사진이 있었고 모두 지운후에 10GB를 가득채워 저장했다면 단하나의 파일도 살려낼수 없습니다. 만약 10GB에 5GB 덮어썼다면 5GB정도는 복구가 가능하겠죠? 하드디스크의 경우 삭제한 영역이 많을수록 추가적으로 덮어쓸수 있는 확률이 줄어들기 때문에 삭제를 여러번 많이 했다면, 하드디스크를 정확하게 분석하지 않고 복구가부여부를 결정할수 없습니다.

  • 2016.10.26 02:55

    이 블로그는 최고의 데이터전문가의 블로그같습니다.
    신뢰가 가네요.

    저 근데 제가 데이터에대해 초보라서 앞부분은 이해가 되었는데요.
    혹시 뒷부분의 설명
    하드디스크의 경우 삭제한 영역이 많을수록 추가적으로 덮어쓸 수 있는 확률이 줄어들기 때문에 삭제를 여러번 많이 했다면, 하드디스크를 정확하게 분석하지 않고 복구가부여부를 결정할 수 없습니다.

    이부분은 잘 이해가 안되는 데 자세한 설명을 해 주시면 안될까요?

    앞부분은 그럼 저장매체가 하드디스크가 아니라 메모리 이야기 인가요? 또 하드디스크는 10gb에서 10gb를 삭제하고 10gb를 덮어씌울 수 없다는 뜻인가요? 추가적으로 덮어쓸수있는 확률이 줄어든다는 뜻은 무슨뜻인가요??
    답글

    • CBL 2016.10.26 19:06 신고

      10GB 총량에 10GB 오버라이트는 복구불가 입니다. 메모리나 하드 동일합니다.

      하드디스크에서 삭제를 꾸준히 하게 되어 20GB의 삭제영역이 생겼다고 가정할때 (사용자가 마지막에 삭제한 삭제영역을 5GB를 포함) 그렇다면 사용자가 이후 데이터를 약10GB 정도 새로 저장하여 덮어쓰기를 했다면 기존 삭제영역 20GB에 우선 저장되게 되므로 삭제한 데이터의 복구여부는 분석후 정확한 안내가 가능한 것입니다.

  • 질문이요 2016.11.16 08:55

    질문입니다 .64기가 메모리를 쓰고있는데 30기가정도의 사진및 영상을찍고 포맷후 15기가의 영상및 사진을 찍었다면 복구가 가능할까요?
    답글

    • CBL 2016.11.16 15:37 신고

      포맷을 어떻게 했느냐에 따라 복구가 가능할수도 불가능하수도 있으며, 가능하다 하더라도 30-15GB 이므로 약 절반가량의 데이터를 살릴수 있답니다.
      일반포맷이나 카메라에서(5Dmark) 포맷할 경우 복구가 불가능할수 있습니다.

  • sol kim 2016.12.14 13:02

    카메라에서 전체삭제 (포맷) 후에, 덮어쓰지않고 보관중인데 복구가능할까요?
    답글

  • ㅇㅇ 2017.10.04 16:38

    스마트폰의 경우는 어떠한가요? 3개월 정도 전에 지운 사진들인데 3개월간 계속 사용했고 내장메모리가 꽉 찰때까지 사용한적도 두어번 있는데 복구는 거의 불가능이라고 봐아하겠죠?ㅜㅜ
    답글

  • ㄴㅇ 2022.06.30 13:46

    만약 혹시라도 미래에는 덮어쓰기 복구가 가능할수도 있는 시대가 올수도 있을까요? 덮어쓰기 복구에 대한 연구는 끈임없이 개발 중인지요?....
    답글