네이버 지식인에 올라온 질문이나, 회사에 오는 문의 전화를 보면
PDF 문서에 걸린 암호를 해제 할 수있냐 라는 질문이 제법 있습니다.
결론 부터 말씀 드리면 PDF를 만들기에 달렸다라고 할 수 있습니다.
[어떻게 하면 암호를 깰 수 있나?]
인터넷을 돌아다니다 보면, 암호를 깨 주는 소프트웨어들 또는 그런 서비스를 하는 회사들이 있습니다.
이들의 원리는 간단합니다. 암호가 풀릴때 까지 입력해 보는 것입니다. :-)
거짓말이 아닙니다. 컴퓨터를 이용해 가능한 모든 조합의 암호를 직접 입력해 보는 것이지요.
맨처음 한자리로 된 암호를 만들어서 모두 입력해보고, 그 다음은 두자리, 세자리 식으로 해서 암호 조합을 만들고 입력해서 풀리는 지를 확인하는 것이지요.
사실 이러한 방법에 버틸 수 있는 암호 알고리즘은 절대 존재 하지 않습니다.
[간단한 산수]
그런데 웹사이트에 사용자 등록 등을 하다 보면, 8자리 이상의 암호를 쓰라는 이야기를 보신적이 있을 것입니다. 바로 이 "될 때 까지 입력하기"는 암호 자리수가 늘어나면 경우의 수가 기하 급수적으로 늘어나 불가능해 지기 때문입니다.
만일 8자리라면 128^8 = 7.2057E16 (0이 16개라는 뜻입니다.) 즉 최악의 경우 72,057경 번 만큼 시도를 해야 하기 때문에, 4GHz 컴퓨터가 1초에 4조 개의 명령어를 처리한다고 가정하더라도 (실제로는 이 보다 훨씬 적습니다.) 1억 8천초 즉 5년 8개월 정도의 시간이 소요됩니다.
만약 9자리라면 5년 8개월의 128배 즉, 729년 정도가 걸리는 것이지요.
그런데, 128이라는 숫자는 알파벳, 숫자 그리고 기호를 포함한 문자의 개수 입니다. 만일 알파벳 소문자로만 암호가 이루어 졌다고 가정하면, 26^8 = 2.08E11 즉 0.05초 만에 암호를 알아 낼 수있게 됩니다.
[안전한 PDF 문서 만들기]
자 이제는 안전한 PDF 문서를 만드는 법을 알려 드리겠습니다.
민감한 문서의 경우에는 숫자, 문자, 기호를 포함하여 8자리 이상으로 구성된 암호를 사용하여야 합니다. 이 원칙은 어떠한 암호에도 적용됩니다. 모든 암호는 "될 때 까지 입력하기"로 깨질 수 있기 때문입니다.

댓글을 달아 주세요
음..좋네요. '될때까지 입력하기' 저는 한번 해볼랍니다^^
좋은 컴퓨터로 해 보시길 ㅎㅎ