はしくれエンジニアもどきのメモ

情報系技術・哲学・デザインなどの勉強メモ・備忘録です。

qpdfでPDFの暗号化による保護を解除

qpdfでPDFの暗号化による保護を解除

セキュリティ保護のかかっているPDFをqpdfで復号化してみるというメモ.

環境

  • Windwos10 64bit

qpdfとは

qpdfはPDFを操作できるツール,

QPDF は PDF ファイルの内容を維持したまま構造的な変換を行うコマンドラインプログラムで,pdf-to-pdf とでも呼ぶべきものです.PDF 生成ソフト開発者や PDF の中身を覗き見たい人たち向けにも有用な機能を提供し,これらは PDF がどのようなものかを学ぶために役立ちます. QPDF - TeX Wiki

qpdfの公式 :QPDF: A Content-Preserving PDF Transformation System

qpdfのインストール

W32TeXをインストールしている場合は,qpdfもインストールされるようです. 参考:QPDF - TeX Wiki

自分でインストールする場合は,zipファイルをDLして,解凍,binフォルダのPATHを通せばok(特にexeのインストーラはない).

  1. 2017-08-21時点では6.0.0が最新なので,

    sourceforge.net

    から,自分の環境は64bitより「qpdf-6.0.0-bin-msvc64.zip」をDL.

    qpdf のDL
  2. zipを任意の場所で解凍

  3. 解凍したbinフォルダのPATHを通す

参考:Qpdf : コマンドラインのPDFツール | PDF

動作確認

--helpでqpdfのhelpが見れる.


qpdf --help

qpdf --helpの実行

暗号化された保護の解除

パスワード""(文字なし) で暗号化された以下のような保護の解除をする.

  • 文書アセンブリ:許可しない
  • ページの抽出:許可しない
  • 注釈:許可しない
  • フォームフィールドの入力:許可しない
  • 署名:許可しない
  • テンプレートページの作成:許可しない

文書のセキュリティに関する制限の概要

詳細表示

保護の解除は--decryptオプションをつけて以下のコマンドできる.


qpdf --password=<password> --decrypt <original_name>.pdf <decrypt_name>.pdf

保護の解除ができるとセキュリティの設定が無効になる.

保護の解除

*「文書アセンブリ」と「ページの抽出」が無効になっているのは,Adobe Readerで開いているためで,Acrobatで開くと有効になる.

Jupyter Notebookを使う場合,マジックコマンドが使えるので,先頭に!をつけることで実行できる.


qpdf --password=<password> --decrypt <original_name>.pdf <decrypt_name>.pdf