1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

PDF暗号化ツール: PDFVEIL

Posted at

はじめに

何かのツールを作ってみたかったので、興味があったPDFに関連するツールを作ってみました。
PDFをAESで暗号化・復号することができるCLIツールです。今度拡張を重ねてより使いやすくし、最終的にはWindowデスクトップアプリ版もリリースしたいと考えているので、興味ある方はぜひ一緒に開発しましょう!
この記事は随時更新していきます。

現時点で実装している機能

  • PDF暗号化
    暗号化にはAES-GCMを使って暗号化しています。
    デフォルトでメタデータも含めて暗号化するようになっている。
    暗号化後のファイルは.veilで保存されます。
  • PDF復号
    暗号化されたVEILファイルを復号する。
    メタデータも暗号化している場合は、復号時にメタデータを表示するようになっている。

インストール方法

現時点ではdebファイルでの配布になります。
以下のコマンドでも取得できます。

wget https://github.com/Saku0512/pdfveil/releases/download/v0.1/pdfveil_0.1.0-1_all.deb

dpkgを用いてインストールしてください。

sudo dpkg -i pdfveil_0.1.0-1_all.deb
sudo apt install -f

使用方法

pdfveil {encrypt, decrypt} {input.pdf, input.veil} [--password password] [--output output] [--force] [--remove] [--no-encrypt-metadata]

基本的には

pdfveil {encrypt, decrypt} input.pdf

で使用できます。

以下オプションの説明です。

オプション 説明
--password, -p オプションでパスワードを指定します。
省略時はプロンプトで要求します。
--output, -o 保存ファイル名を指定します。
省略時は入力ファイルと同じファイル名になります。
--force, -f 出力ファイルと同じファイルがあった場合に強制上書きします。
--remove 処理後に入力ファイルを削除します。
--no-encrypt-metadata メタデータを暗号化しません。
暗号化時にのみ有効です。

テスト

このプロジェクトではテストコードを用意してあります。
pytestを用いたテストで機能を保証しています。
コントリビュートする際は、こちらのテストコードの作成もお願いします。

おわりに

開発期間は約3日間ですが、今年の一つの目標であったツールを開発を達成できたので良かったです。ただ、現状開発者目線からみても使いづらいことや使用用途が限られているので、今後拡張していけたらと思っています。
興味がある方はぜひ一緒に開発しましょう。

1
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?