PDFにパスワードをかけることで、ファイルを見ることができる人を容易に制限することが可能です。しかし、パスワードを忘れてしまったり、パスワードを知る人がいなくなってしまったことで、「開かずのファイル」になってしまっては意味がありません。今回は、そんな事態に陥った際の解決策、PDFのパスワード解析ソフトについて紹介します。
目次:
総当り方式でパスワードを割り出す「Free PDF Unlocker」
Free PDF Unlockerは、PDFのパスワードを総当り方式で解析します。総当り方式とは、とにかく当たるまで文字列を生成・入力し続ける方法で、「ブルートフォース」とも呼ばれます。この方法は「当たり」が出るまで試行を続けるため、時間がかかりますが確実にパスワードを解析できる方法です。
Free PDF Unlockerでは、ある程度条件を絞ることで解析時間を短縮することが可能です。パスワードの文字数や使用されている文字の種類を指定して、その範囲内で解析を行います。例えば、パスワードが8文字から12文字の範囲であれば、その中で考えられる文字列に絞って検索を行うため、1文字から12文字を検索するよりも早く終わるという仕組みです。また、使用する文字の種類も少なければ少ないほど早く終わります。アルファベットと数字が混ざっているパターンと数字のみのパターンでは、後者のほうが圧倒的に早く解析が完了するのです。
なお、解析時間はパソコンの性能にも依存します。総当り方式を行う場合、パソコンの処理能力を活かして片っ端から組み合わせを試していきます。この時パソコンの性能が良ければ、演算速度を活かしてより早く試行を終えることが可能です。逆に古いパソコンの場合、使えるリソースが限られていたり、性能が追いつかないなどで時間がかかります。なるべく高速で動作させるためにも、常駐ソフトを終了させたり、キャッシュファイルを削除するなどの準備が不可欠です。
閲覧用だけでなく編集用のオーナーパスワードまで解析する「PDFCrack」
PDFCrackは、コマンドプロンプトで動作するPDFパスワード解析ソフトです。Free PDF Unlockerと同様、総当たり方式でパスワードを解析します。条件を絞ることができるのもFree PDF Unlockerと同じです。しかし、PDFCrackには特徴的な機能が2つ存在します。
•まず1つ目が、作業の中断機能です。解析中の状況を「Ctrl+C」キーを押下することで中断し、セーブファイルを作成することができます。再開時には解析対象のPDFファイルを指定後、セーブファイルを指定して再開させます。この機能の存在のため、例えば解析途中でWindowsアップデートの時間を迎えてしまったり、ウィルススキャンやデフラグなどPCに負荷がかかる動作を行わせる必要が出てきた場合などに一度解析を中断した後、諸々落ち着いてから再開するといったことが可能です。
•2つ目が、オーナーパスワードの解析機能です。PDFには閲覧を制限するユーザーパスワードの他に、編集や変更などを制限するオーナーパスワードを別途かけることができます。PDFCrackでは、このオーナーパスワードも解析することが可能です。ユーザーパスワードが判明していれば、そのユーザーパスワードを手がかりにオーナーパスワードを解析してくれます。
上記で紹介した機能の他にも、ベンチマーク機能や辞書式解析への切り替えなど、多彩な機能を持っています。コマンドプロンプトで動作するため、使いこなすにはコマンドやパラメータを覚える必要がありますが、慣れてしまえば多彩な機能を備えた素晴らしいツールであることを実感できるでしょう。
パソコンの性能をフルに活かす総当たりと、内蔵された辞書で解析を行う「PassFab for PDF」
PassFab for PDFは、パスワード解析ツールであるPassFabシリーズのひとつです。辞書式、類推式、総当たりの3つの方法で解析を行うことが可能です。PDFCrackでも少しだけ紹介した辞書式解析は、パスワードとしてよく使用される文字列をテキストにまとめた「辞書」を用意し、この辞書に乗っている文字列を全て試すというものです。総当たりと比べると確実性には欠けますが、辞書の中に正解のパスワードがある場合、解析完了までの時間を大幅に短縮することが可能です。
PassFab for PDFでは、この辞書を内蔵していることが特徴です。PDFCrackの辞書式解析は、別途外部の辞書ファイルを取り込む必要があります。一方、PassFab for PDFでは最初から辞書が用意されているため、わざわざ別に用意する必要がありません。また、この辞書に手を加えることもできるため、より強力な辞書を作ることも可能です。
また、類推式は条件を指定してその中でパスワードを解析し、総当り式は全ての文字列をひたすら試しますが、これら2つのモードにおいて強力な味方になるのが「マルチコアCPU」と「GPUアクセラレーション」です。マルチコアCPUは、デュアルコアやクアッドコアのCPUについて、それぞれのCPUコアに独立させて解析を行わせるもので、GPUアクセラレーションはグラフィックの表示に使用するビデオカードに搭載されている演算装置「GPU」の演算能力を解析に回すというものです。どちらもパソコンの演算能力をフルに生かした解析を行えるため、使用すると解析速度を大きく向上させることが可能ですが、負荷もかかるため注意が必要です。
まとめ
パスワードは自分で覚えることが大前提にあります。よって、覚えておくに越したことは無いのですが、パスワードを知る人がそもそもいなかったり、どうしても思い出すことができない場合の最終手段としてパスワード解析ソフトが存在します。こうした解析ソフトに頼るのはあくまで最終手段であり、どうにもならない時の伝家の宝刀として使うように心がけましょう。
役に立ちましたか?コメントしましょう!