つれづれ電脳記(日くらしPCに向かひて)

つれづれなるままに、日くらしPCに向かひて、その悪戦苦闘ぶりをそこはかとなく書き付くるおじさん。たまに雑談[管理人:goosyun]

つれづれなるままに、日くらしPCに向かひて、デジタル関係の悪戦苦闘ぶりをそこはかとなく書き付くるおじさんです。
たまに雑談してます。連絡・問い合わせフォームは、ページ最下部に置いています。[著者(運営人):goosyun]

(当ブログには本文中に広告リンクが含まれています。)

PDFtkでパスワード設定時の警告文: Using a password on the command line interface

 PDFファイルにパスワードを設定できる、無料のコマンドラインツールがあります。
 「PDFtk」というツールです。
 Windows版もあるのですが、私はLinux版を Ubuntu に入れて使っています。





 「PDFtk」については、以前、記事にまとめたことがあります。
 こちらの記事をご覧ください。


 今日(2024年11月23日)、PDFtkを使ってPDFにパスワードを設定しようとしたところ、妙な警告文が出て前に進まないという場面に遭遇しました。
 
 Ubuntuでターミナルを開き、パスワード設定のために、次のコマンドを記述しました。
  $ pdftk goosyun.pdf output gooLocked.pdf user_pw "hoge3939" 

 そうすると、警告文が出て、パスワードが設定されません。
 警告文は、英文で、次のとおりです。
 

Warning: Using a password on the command line interface can be insecure.
Use the keyword PROMPT to supply a password via standard input instead.



 VirtualBox上のUbuntuでは警告は出ないのに、WSL2上のUbuntuでは上記の警告文が出ます。環境の違いが原因ではなく、おそらく、バージョンの違いではないかと思われます。

 上記の警告文を、Copilotに翻訳してもらいました。
 日本語に翻訳すると、次の文章になります。

警告: コマンドラインインターフェースでパスワードを使用すると、安全性が低下する可能性があります。代わりに、キーワードPROMPTを使用して標準入力からパスワードを入力してください。


 確かに、この警告のとおり、コマンドラインでパスワードを使用することは安全ではありません。おっしゃるとおり、ごもっともな指摘です。
 例えば、historyコマンドなどコマンド履歴機能を使えば、他人であっても容易にパスワードが取得できてしまいますから。

 コマンドラインにパスワードを記述してはいけないとなれば、ではどうすればよいのか?
 この警告の指示に従って、キーワードPROMPTを使用すれば、パスワード設定が可能となります。

 具体的には、
 $ pdftk goosyun.pdf output gooLocked.pdf user_pw PROMPT 
と記述します。
 ユーザーパスワードを入力する代わりに、キーワード PROMPT を入力するわけです。
 そうすると、次のメッセージのように、pdftk はパスワードの入力を要求してきます。

$ pdftk goosyun.pdf output gooLocked.pdf user_pw PROMPT
Please enter the user password to use on the output PDF.
It can be empty, or have a maximum of 32 characters:

 ここに、パスワード「hoge3939」を入力して、Enterキーを押します。
 これによって、outputファイル「gooLocked.pdf」が出力され、しかもそのファイルには所定のパスワードが設定されています。



 
それでは、また次の記事で
goosyun