PDF 비밀번호 두 종류, 실제로 잠기는 건 하나뿐입니다
계약서 PDF에 비밀번호를 걸어 메일로 보냈는데 이런 답장이 오는 경우가 있습니다. “비밀번호 없이 그냥 열리는데요?”
설정을 잘못한 게 아닙니다. PDF에는 성격이 전혀 다른 비밀번호가 두 개 있고, 그중 하나만 걸면 정확히 이런 일이 생깁니다. 도구에서는 보통 사용자 비밀번호와 소유자 비밀번호로 표시됩니다.
이 글을 읽고 나면 어느 쪽을 걸어야 실제로 잠기는지, 그리고 다른 한쪽이 왜 잠금 장치로 쓸 수 없는지를 판단할 수 있습니다. 근거는 제 노트북에서 같은 파일에 두 가지를 각각 걸어 측정한 결과입니다. Stirling PDF 2.14.2, 2026년 8월 8일 기준입니다.
두 칸의 이름이 헷갈리는 이유

이름이 직관적이지 않습니다. 실제 역할로 바꿔 부르면 이렇습니다.
- 사용자 비밀번호 = 열기 암호. 이걸 걸면 파일을 열 때 비밀번호를 묻습니다.
- 소유자 비밀번호 = 권한 암호. 파일은 그냥 열립니다. 대신 인쇄·복사·편집 같은 동작에 “하지 말라”는 표시를 붙입니다.
“소유자”라는 말 때문에 더 강한 잠금처럼 느껴지지만 반대입니다. 열기 암호를 비워 두고 소유자 비밀번호만 채우면, 파일은 누구나 열 수 있는 상태가 됩니다.
같은 파일에 각각 걸어 봤습니다
1쪽짜리 거래 명세서에 두 방식을 각각 적용하고, 비밀번호 없이 내용을 뽑을 수 있는지 확인했습니다.
| 건 방식 | 암호화 | 파일 크기 | 비밀번호 없이 내용 추출 |
|---|---|---|---|
| 권한 암호만 (인쇄·복사·수정 금지 설정) | AES-256 | 21,568바이트 | 성공. 301자 전부 나옴 |
| 열기 암호 | AES-256 | 21,567바이트 | 실패 |
권한 암호 쪽은 암호화 강도가 AES-256이었습니다. 숫자만 보면 튼튼해 보입니다. 그런데 비밀번호를 하나도 입력하지 않고 텍스트를 뽑았더니 301자가 그대로 나왔습니다.
본문에 있던 담당자 이름, 연락처, 주민등록번호가 전부 읽혔습니다. “복사 금지”로 설정해 둔 파일인데도 그랬습니다.
열기 암호 쪽은 달랐습니다. 같은 시도를 하니 이런 응답이 돌아왔습니다.
The PDF Document is passworded and either the password
was not provided or was incorrect
파일을 여는 단계에서 막혔으니, 안에 무엇이 있는지 확인할 방법이 없습니다.
권한 암호가 잠금이 못 되는 결정적 이유
한 가지를 더 확인했습니다. 권한 암호가 걸린 파일에 빈 비밀번호로 암호 해제를 시도했습니다.
# 비밀번호 칸을 비운 채로 권한 암호 해제 시도
curl -s -X POST -F "fileInput=@권한암호걸린파일.pdf;type=application/pdf" \
-F "password=" \
http://localhost:8380/api/v1/security/remove-password -o 해제됨.pdf
정상 처리됐습니다. 20,806바이트짜리 파일이 나왔고, 그 파일에서는 301자가 그대로 추출됐습니다. 인쇄·복사·수정 제한이 전부 사라진 상태입니다.
이상한 동작이 아닙니다. 권한 암호는 원래 “이렇게 다뤄 달라”는 요청 표시에 가깝습니다. 그 표시를 지키는 것은 뷰어 프로그램의 선택이고, 지키지 않는 프로그램도 많습니다. 그래서 권한 암호는 실수로 인쇄·수정하는 것을 막는 안내판으로는 쓸모가 있지만, 내용을 보호하는 잠금으로는 쓸 수 없습니다.

상황별로 어느 쪽을 골라야 하나
| 상황 | 걸어야 할 것 | 이유 |
|---|---|---|
| 계약서·명세서처럼 내용 자체가 민감함 | 열기 암호 | 여는 단계에서 막아야 함 |
| 사내 배포용 양식, 임의 수정만 막고 싶음 | 권한 암호 | 실수 방지용 안내로 충분 |
| 둘 다 필요함 | 열기 암호 + 권한 암호 | 열기 암호가 실제 보호를 맡음 |
| 받는 사람이 여럿이고 관리가 어려움 | 비밀번호 대신 링크 권한 | 사람마다 회수·변경이 가능 |
마지막 줄이 실무에서 자주 나은 선택입니다. 비밀번호는 한 번 알려 주면 회수할 수 없고, 결국 메일 본문에 같이 적어 보내게 됩니다. 그럴 바에는 링크 권한을 좁히는 편이 낫습니다. 그 판단 기준은 Google Drive 링크 공유 전 확인할 4가지에 정리해 두었습니다.
보내기 전에 확인할 것
- 비밀번호를 걸었다면 다른 창에서 그 파일을 직접 열어 봅니다. 비밀번호를 묻지 않으면 권한 암호만 걸린 것입니다.
- 비밀번호를 같은 메일 본문에 적지 않습니다. 메일이 유출되면 잠금이 무의미해집니다.
- 파일을 잠그기 전에 본문과 파일 정보를 먼저 정리합니다. 순서는 본문 가리기 → 파일 정보 삭제 → 비밀번호입니다. 잠근 뒤에는 편집이 번거로워집니다.
지금 확인해 볼 일은 하나입니다. 최근에 비밀번호를 걸어 보낸 파일을 다시 열어 보세요. 그냥 열린다면, 그 파일은 잠긴 적이 없습니다.
확인한 자료
- 측정 환경: 로컬 Docker에 올린 Stirling PDF 2.14.2, 2026년 8월 8일 측정
- Stirling PDF 공식 문서 — 비밀번호 추가·제거와 권한 항목 설명
- 뷰어 프로그램마다 권한 표시를 지키는 정도가 달라, 특정 프로그램의 동작은 별도 확인이 필요합니다.