이런 경험 있으신가요? PDF에 비밀번호를 설정했는데 다른 사람이 쉽게 콘텐츠를 복사할 수 있다거나, 반대로 PDF가 어떤 비밀번호를 입력해도 열리지 않는 경우 말입니다.
이 두 가지 경험은 실제로 PDF의 완전히 다른 두 가지 비밀번호 메커니즘에 해당합니다. 이 차이를 이해하면 문서를 올바르게 보호하고, 합법적인 범위에서 불필요한 제한을 해제할 수 있습니다.
열기 비밀번호: 암호학 수준의 진정한 암호화
열기 비밀번호(Document Open Password, 사용자 비밀번호라고도 함)는 PDF 보안 체계에서 유일한 하드 방어입니다. 열기 비밀번호가 설정된 PDF는 저장 수준에서 AES 또는 RC4 알고리즘으로 암호화됩니다. 바이너리 데이터를 직접 읽어도 의미 없는 암호문만 얻을 수 있습니다.
어떻게 작동하나요?
비밀번호 자체는 암호화에 직접 참여하지 않습니다. 전체 프로세스는 다음과 같습니다:
- 파일 키 생성: PDF 소프트웨어가 파일 키(File Key)를 무작위 생성하여, 문서 내 모든 문자열과 데이터 스트림을 AES/RC4로 암호화
- 비밀번호 → 키 검증: 입력한 비밀번호를 해시 처리(SHA-256 / MD5)하고, 생성된 값을 PDF 암호화 사전의 검증 항목과 대조
- 일치 → 파일 키 잠금 해제: 검증 통과 후, 시스템이 파일 키를 도출하여 뷰어가 텍스트, 이미지, 양식을 렌더링 가능
이는 올바른 비밀번호 없이는 수학적으로 콘텐츠 읽기 불가능을 의미합니다. 이 불가역성은 암호학적 강도로 보장되며, 뷰어의 "준수" 여부와는 전혀 관계없습니다.
열기 비밀번호는 우회할 수 없습니다
AES-256 + PBKDF2(리비전 6)로 암호화된 PDF의 경우, 최고급 GPU(NVIDIA A100 등)를 사용해도 높은 반복 횟수의 키 스트레칭 때문에 초당 수천 개의 비밀번호만 시도할 수 있습니다. 12자리 혼합 비밀번호의 무차별 대입은 수백 년이 걸립니다. 유일한 해독 방법은 비밀번호 자체를 아는 것입니다.
암호화 알고리즘의 진화
PDF 암호화의 역사는 본질적으로 알고리즘 도태의 역사입니다. 초기의 약한 암호화는 오늘날 보안성이 전혀 없습니다:
| 암호화 버전 | 알고리즘 | 키 길이 | 보안 평가 |
|---|---|---|---|
| 리비전 2 (Acrobat 3/4) | RC4 | 40비트 | ❌ 즉시 해독, 키 공간 2⁴⁰에 불과 |
| 리비전 3 (Acrobat 5/6) | RC4 | 128비트 | ⚠️ 알고리즘 자체에 통계적 취약점, MD5와의 조합으로 레인보우 테이블 공격에 취약 |
| 리비전 5 (Acrobat 9+) | AES-CBC | 256비트 | ✅ SHA-256 검증, 충분한 강도 |
| 리비전 6 (PDF 2.0) | AES-CBC | 256비트 | ✅✅ PBKDF2 키 스트레칭, GPU 무차별 대입 비용 비현실적 |

Acrobat이나 다른 도구로 PDF를 암호화할 때는 반드시 AES-256(Acrobat X 이상 호환)을 선택하세요. "Acrobat 5.0 호환"을 선택하면 128비트 RC4로 다운그레이드되어 보안성이 크게 저하됩니다.
PBKDF2: 무차별 대입을 비경제적으로 만들기
PDF 2.0(ISO 32000-2)에서 도입된 리비전 6 프로세서의 핵심 개선 사항은 PBKDF2(Password-Based Key Derivation Function 2) — "키 스트레칭" 기술입니다:
- 솔팅: 각 문서마다 32바이트 솔트 값을 무작위 생성. 수천 개의 PDF가 같은 비밀번호를 사용하더라도 솔트가 다르므로 해시 결과가 완전히 다름
- 다중 반복: 해시 함수를 수만~수십만 회 반복 실행. 기존 MD5는 1회 연산이면 충분했지만, PBKDF2는 각 시도의 비용을 10만 배 이상 증가
- OWASP 권장: PBKDF2-HMAC-SHA256 반복 횟수는 최소 310,000회
간단히 말해: PBKDF2는 "비밀번호 하나를 시도하는" 것을 매우 느리게 만들어, 공격자의 속도 우위를 완전히 상쇄합니다.
권한 비밀번호: '신사협정'
권한 비밀번호(Permissions Password, 소유자 비밀번호/Owner Password라고도 함)의 설계 목적은 완전히 다릅니다 — 열람을 막는 것이 아니라 인쇄, 복사, 편집 금지 등 작업 권한을 제한합니다.
본질적 차이: 진정한 암호화가 아님
이것이 가장 핵심적인 포인트입니다: 권한 비밀번호는 일반적으로 문서 콘텐츠를 암호화하지 않습니다.
PDF에 권한 비밀번호만 설정되고 열기 비밀번호가 없는 경우, 누구나 자격 증명 없이 문서를 열 수 있습니다. 이때 제한의 시행은 뷰어 소프트웨어의 "자발적 준수"에 전적으로 의존합니다 — Adobe Acrobat은 권한 플래그를 보고 "인쇄" 버튼을 비활성화하지만, 기술적으로 콘텐츠는 읽을 수 있습니다.
권한 비밀번호 = 준수 의존
권한 제한의 유효성은 뷰어의 "준수성"에 달려 있습니다. Adobe Acrobat, Foxit Reader 등 주요 소프트웨어는 이러한 제한을 준수하지만, 많은 오픈소스 뷰어와 브라우저 플러그인은 권한 플래그를 읽지도 않아 모든 제한을 무시하고 자유롭게 복사 및 인쇄를 허용합니다.
권한 비트 마스크: 작업별 세밀한 제어
PDF의 권한 제어는 암호화 사전의 P 값(32비트 부호 있는 정수)을 통해 구현됩니다. 각 비트가 특정 작업에 대응합니다:
| 비트 | 제어 대상 | 시나리오 예시 |
|---|---|---|
| Bit 3 | 인쇄 | 프린터로 전송 금지 |
| Bit 4 | 콘텐츠 수정 | 텍스트 편집, 페이지 회전 금지 |
| Bit 5 | 복사/추출 | 텍스트 선택 및 붙여넣기 금지 |
| Bit 6 | 주석/댓글 | 하이라이트 및 메모 추가 금지 |
| Bit 9 | 양식 작성 | 작성은 허용하되 양식 구조 수정 금지 |
| Bit 10 | 접근성 추출 | 스크린 리더 등 보조 기술 허용 |
| Bit 11 | 문서 조립 | 페이지 삽입/삭제/회전 허용 |
| Bit 12 | 고품질 인쇄 | Bit 3 활성 + Bit 12 비활성 = 저해상도 인쇄만 가능 |

왜 권한 비밀번호는 즉시 제거할 수 있을까?
권한 비밀번호에는 세 가지 구조적 약점이 있습니다:
- 비준수 뷰어: 많은 오픈소스 또는 서드파티 PDF 도구가 P 값을 전혀 읽지 않고 모든 제한을 무시
- 인쇄 재구성: 가상 프린터로 제한된 PDF를 인쇄하면 권한 제한이 없는 새 PDF 생성
- 공개된 알고리즘: 권한 비밀번호의 검증 알고리즘은 공개되어 있으며, 문서를 열 수 있는 상태라면(복호화 키 알려짐) qpdf 등의 도구가 모든 P 값 제한을 즉시 제거 가능
권한 비밀번호 제한? 원클릭으로 제거
PDF가 정상적으로 열리지만 인쇄나 복사가 안 된다면, 권한 비밀번호만 설정된 것입니다. PDF 잠금 해제를 사용하면 비밀번호 입력 없이 모든 작업 제한을 원클릭으로 제거할 수 있습니다.
두 비밀번호의 전방위 비교
| 비교 항목 | 열기 비밀번호 (사용자 비밀번호) | 권한 비밀번호 (소유자 비밀번호) |
|---|---|---|
| 핵심 목적 | 기밀성 보호, 열람 차단 | 작업 범위 관리, 인쇄/복사/편집 제한 |
| 암호화 효과 | AES/RC4 데이터 스트림 전체 암호화 | 일반적으로 콘텐츠를 직접 암호화하지 않음 |
| 해독 난이도 | 극도로 높음 (AES + PBKDF2 돌파 필요) | 극도로 낮음 (즉시 제거 가능) |
| 시행 근거 | 암호학적 수학적 강도 | 뷰어 소프트웨어의 "자발적 준수" |
| 사용자 경험 | 문서 열기 불가, 비밀번호 입력 요구 | 열람 가능하나 기능 버튼 비활성화 |
| 적용 시나리오 | 은행 명세서, 계약서, 기밀 보고서 | 브로슈어, 저작권 고지, 내부 회람 문서 |
| 보안 비유 | 🔒 금고의 다이얼 잠금장치 | 🚧 "만지지 마세요" 경고 표지판 |

보안 권장 사항: 문서에 높은 기밀성이 요구되는 경우, 반드시 열기 비밀번호를 설정하세요. 권한 비밀번호만으로는 암호화 없는 것과 동일합니다 — 콘텐츠가 읽히는 순간 유출은 이미 발생한 것입니다.
진짜 위협은 알고리즘이 아닌 경우가 많다
최강의 AES-256 + PBKDF2를 채택하더라도, PDF 유출의 대부분은 "인적 요인"에서 비롯됩니다:
- 비밀번호 동봉: 암호화된 PDF와 비밀번호를 같은 이메일로 전송 — 자물쇠와 열쇠를 함께 묶는 것과 같음
- 비밀번호 재사용: 모든 보호 문서에 같은 약한 비밀번호 사용, 또는 SNS 계정과 비밀번호 공유
- 임시 복호화 후 방치: 인쇄를 위해 비밀번호를 제거한 후, 비밀번호 없는 파일을 암호화되지 않은 채널로 전달
비밀번호 전송 조언
암호화된 PDF와 비밀번호는 서로 다른 채널로 전송해야 합니다. 예: PDF는 이메일로, 비밀번호는 SMS나 메신저로 전달하세요.
사용 가이드
권한 제한 해제
PDF가 열리지만 복사/인쇄/편집이 안 되는 경우:
- PDF 잠금 해제에 업로드
- 도구가 권한 비밀번호를 자동 감지하고 모든 작업 제한 해제
- 잠금 해제된 PDF를 다운로드하여 자유롭게 사용
암호화된 PDF 잠금 해제
PDF를 열기 위해 비밀번호가 필요한 경우 (비밀번호를 알고 있다면):
- PDF 잠금 해제에 업로드
- 팝업 비밀번호 입력창에 올바른 비밀번호 입력
- 더 이상 비밀번호가 필요 없는 PDF 다운로드
PDF 암호화 보호
자신의 문서를 보호해야 하는 경우:
- PDF 암호화에 업로드
- 설정할 비밀번호 유형과 권한 제한 선택
- 핵심: 최고 수준의 보안을 위해 반드시 AES-256 암호화 표준 선택
PDF 보안의 미래
비밀번호 암호화가 주류이지만, 스크린샷 방지 불가, 열람 기록 추적 불가, 원격 문서 파기 불가 등 고유한 한계가 업계를 더 고급 솔루션으로 이끌고 있습니다:
- 인증서 암호화 (PKI): 공개키로 문서를 암호화하고 개인키는 스마트 카드나 보안 칩에 저장. 비밀번호 전송 과정 제거
- 디지털 저작권 관리 (DRM): 투명 암호화 + 기기 바인딩 + 동적 워터마크 + 열람 횟수 제한. 고도의 기밀 상업 문서에 적합
- PDF 2.0 개선 사항: ISO 32000-2가 모든 버전의 RC4 알고리즘을 공식 폐기하고 AES-GCM(인증 암호화)을 도입. 암호화 상태에서 문서 변조 여부 감지 가능
자주 묻는 질문
Q: 권한 비밀번호(인쇄/복사 제한)만 설정하면 파일이 안전한가요? A: 안전하지 않습니다. 권한 비밀번호는 콘텐츠를 암호화하지 않습니다. 비준수 뷰어나 잠금 해제 도구로 즉시 제한을 제거할 수 있습니다. 진정한 보호를 원한다면 열기 비밀번호도 함께 설정하세요.
Q: PDF 열기 비밀번호를 잊어버렸는데 복구할 방법이 있나요? A: AES-256 암호화가 사용되고 비밀번호가 충분히 복잡하다면, 해독은 거의 불가능합니다. 원본 파일 발신자에게 연락하여 비밀번호를 받으세요. 저희는 알려지지 않은 비밀번호의 해독을 지원하지 않으며 기술적으로도 불가능합니다.
Q: 왜 일부 PDF는 업로드 후 자동으로 편집 가능해지나요? A: 해당 PDF에는 권한 비밀번호만 설정되어 있었기 때문입니다. Dpdf의 모든 변환 도구는 자동으로 권한 제한을 해제합니다 — 이는 합법적이고 표준적인 작업이며 암호화 해독에 해당하지 않습니다.
Q: 어떤 비밀번호가 충분히 안전한가요? A: 최소 12자 이상, 대소문자, 숫자, 특수 문자를 혼합하세요. 엔트로피 78비트 이상의 비밀번호는 AES-256 + PBKDF2와 결합하면 현재 기술로는 무차별 대입이 불가능합니다.
