
このカテゴリでいいのかわかりませんが・・・
GnuPGを使って暗号化、複合化をしております。プログラム上(C++またはPHPまたはシェル)からパスフレーズを手入力せずに複合化できる仕組みを作りたいのですが、これは可能なのでしょうか?
プログラム上で複合化して、そのデータを使って作業をしたいのですが、Cでパイプ接続してみたりしてみましたが、上手くできません。
そもそも、セキュリティの関係上できないのでしょうか?
どうにかして、パスフレーズを自動入力させたいのです。
何かいい方法がありましたらご教授ください。

No.1ベストアンサー
- 回答日時:
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA256
2つ方法があり、
(1) コマンドラインオプションで指定する
(2) gpg.confで指定する
のいずれかの方法で実現可能です。
(1) コマンドラインオプションで指定する
- --passphrase オプションを用い、
gpg --decrypt-file --passphrase 【使用するパスフレーズ】 ********.gpg
など、と入力する。
(復号化などを行う対象のファイル名より前で指定する必要があります。)
(2) gpg.confで指定する
『%homepath%\Application Data\gnupg\gpg.conf』を編集し、
passphrase 【使用するパスフレーズ】
の行を追加する。
(1)の方法では、
gpgをコールするところに直接パスフレーズを書くことになってしまうので、
ソースから秘密鍵のパスフレーズが丸見えになってしまいます。
なので、C++なら兎も角、PHPやシェルを用いて外部から使わせるのなら、
(2)を用い、
gpgをコールするときだけgpg.confを摩り替える、
といった方法になるのではないでしょうか。
#実はこの方法、--decrypt-filesオプションで
#複数ファイルの複合化がうまくできなかったため、
#弄っていた時に発見しました。
#(どうやら、最初にdecryptした暗号化ファイルのsession-keyを
#次以降のファイルにも適用してしまっているように見受けられる。)
#
#結局、(1)の方法を使って、
# for %f in (*.gpg) do gpg --decrypt-file --passphrase ******** %f
#とすることで対症療法としたのですが。
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.7 (MingW32)
iD8DBQFGaqGxrcznU0g5Wr4RCGD5AKCUBLDqIptN5b10AtZmQQCES0QuDgCeJnYs
vTmwKdfuXD9lfpIXacKE0C0=
=sn7Z
-----END PGP SIGNATURE-----
ご回答ありがとうございます!!
助かりました!
結局、--passphraseというオプションではできなかったものの、それを元に調べて、「--passphrase-fd」というオプションで対応できました。
実はもうあきらめていたので、非常にうれしいです。
問題も解決しました。ありがとうございました。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- その他(プログラミング・Web制作) 入力フォームへ、データを自動的に入力するプログラム。どうやって作る? 4 2023/01/16 10:24
- Visual Basic(VBA) vbaエクセルマクロ RemoveDuplicatesについて 重複したものがあれば行を削除するとい 1 2023/02/27 18:49
- 工学 1つのタクトスイッチで複数の並列回路を閉じ、アースにつなげることができるスイッチはありますか。 2 2022/08/06 10:38
- その他(プログラミング・Web制作) プログラムの起動、利用について、使用期間を設定する方法 3 2023/08/06 21:03
- その他(スマートフォン・携帯電話・VR) 某信用金庫の通帳アプリ 4 2023/04/09 11:01
- その他(プログラミング・Web制作) Windowsのマクロプログラムで、こんなことできますか? 3 2022/06/28 14:30
- その他(プログラミング・Web制作) プログラミング 処理速度 1 2022/11/25 11:05
- Excel(エクセル) CSVファイルがカンマ区切りにならない。対処法を教えていただきたいです。 仕事でSMS一斉送信ができ 2 2022/07/01 21:24
- その他(Microsoft Office) ピボットテーブルへの集計フィールド挿入 1 2023/02/26 11:33
- PHP ここで言う空文字の意味とは? 1 2022/08/05 16:27
このQ&Aを見た人はこんなQ&Aも見ています
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
onedriveの中身を削除したらパ...
-
Winmerge ファイルの中身は同じ...
-
教えてください!困ってます。
-
emlをtxtに変換するには?
-
office365 ファイルを削除したい
-
外字ファイル、eudc.tte と e...
-
同期センターのマークが出てま...
-
バッチファイルで変数の中身を...
-
mrl→midファイルへ
-
ショートカットアイコンと、元...
-
バッチファイルからタスクスケ...
-
FATやNTFSのファイルにUNIX のi...
-
Excellにて→ファイルエラー:デ...
-
iMovieからQuickTime書出しの不...
-
GnuPGの複合化をパスフレーズ手...
-
ファイルの単位
-
コマンドプロンプトによるフォ...
-
Linuxにゴミ箱は?…ファイルの復...
-
.tmp.mp4と.mp4の違い
-
ODBCエラー「admin」によってロ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
Winmerge ファイルの中身は同じ...
-
教えてください!困ってます。
-
emlをtxtに変換するには?
-
onedriveの中身を削除したらパ...
-
同期センターのマークが出てま...
-
コマンドプロンプトによるフォ...
-
ファイルの先頭行を全て削除したい
-
mrl→midファイルへ
-
外字ファイル、eudc.tte と e...
-
バッチファイルで変数の中身を...
-
office365 ファイルを削除したい
-
Windows10 フォルダ内の自動並...
-
ファイルの単位
-
ショートカットアイコンと、元...
-
VScodeでjarファイルを開く方法
-
macのdmgファイル(動画)をMP4...
-
バッチファイルからタスクスケ...
-
フォルダ内の一覧を印刷するには?
-
mac ファイルの詳細情報を編集...
-
Excellにて→ファイルエラー:デ...
おすすめ情報