質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
Linux

Linuxは、Unixをベースにして開発されたオペレーティングシステムです。日本では「リナックス」と呼ばれています。 主にWebサーバやDNSサーバ、イントラネットなどのサーバ用OSとして利用されています。 上位500のスーパーコンピュータの90%以上はLinuxを使用しています。 携帯端末用のプラットフォームAndroidは、Linuxカーネル上に構築されています。

Q&A

解決済

4回答

7274閲覧

gpg (共通)で暗号化したはずが、パスワードなしで複合できてしまう問題

setsu_tenhou

総合スコア33

Linux

Linuxは、Unixをベースにして開発されたオペレーティングシステムです。日本では「リナックス」と呼ばれています。 主にWebサーバやDNSサーバ、イントラネットなどのサーバ用OSとして利用されています。 上位500のスーパーコンピュータの90%以上はLinuxを使用しています。 携帯端末用のプラットフォームAndroidは、Linuxカーネル上に構築されています。

0グッド

0クリップ

投稿2017/03/21 18:06

編集2017/03/21 22:35

###発生している問題・エラーメッセージ
タイトルの通りなのですが、パスワードを設定して暗号化したはずのファイルがパスワードなしで複合できてしまうのです。

###該当のコード
[kagu@localhost Desktop]$ vi sample.txt *ここでファイルにaiueoを入力
[kagu@localhost Desktop]$ gpg -c sample.txt *パスワード入力画面が表示されパスワードを入力
[kagu@localhost Desktop]$ gpg -d sample.txt.gpg > result.txt
gpg: CAST5 encrypted data
gpg: encrypted with 1 passphrase
gpg: WARNING: message was not integrity protected
[kagu@localhost Desktop]$ cat -n result.txt
1 aiueo
[kagu@localhost Desktop]$ cat -n sample.txt
1 aiueo

###試したこと gpg sample.txt.gpg とオプションなしで複合もやりましたが変わらず ###原因の予想 一つ気がかりなことがあります。 それはパスワードを入力(設定)する際に表示されるパスワード入力画面なのですが、なぜか決定ボタンがUNLOCKとなっており、LOCKではないのか?と困惑しました。 ということで、何かのバグなのかと思っているのですが。。。。 ###補足情報(言語/FW/ツール等のバージョンなど) CentOS Linux release 7.3.1611 (Core)

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答4

0

ベストアンサー

GnuPGgpg-agentによると

gpg-agent はキーチェインにパスワードをリクエストしたりキャッシュしたりするのに使われるデーモンです。メールクライアントなど外部のプログラムから GnuPG を利用する場合に便利です。

とのことなので、gpg-agentデーモンが動作しており一定時間は入力不要になるような設定が入っているのだと思います。設定の詳細は提示URL確認ください(ややこしいです)。

ちなみに「パスワード入力」の画面(の見栄え?)はpinentryで設定(指定)できるようです。

投稿2017/03/22 05:26

can110

総合スコア38266

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

setsu_tenhou

2017/03/24 00:54

解答どうもありがとうございます。 gpg-agentなんですが、設定ファイルのgpg-agent.confが存在しない場合は何が起きているのでしょうか? 「GnuPG 2.1.0 から gpg-agent の使用は必須となっています。」と書かれていることと、以下の結果からしっかりとエージェントは動いてくれているみたいなのですが。。。 [kagu@localhost ~]$ gpg-agent gpg-agent: gpg-agent running and available ~/.gnupg/には以下のファイルが存在しています。 gpg.conf private-keys-v1.d pubring.gpg random_seed secring.gpg
guest

0

CentOS7のgpgの動作仕様のようですので、

[kagu@localhost]で作成した.gpgを「他のユーザ」で「gpg -d」して見てください。

  1. パスフレーズを聞いてくれば、gpgの本来の目的は成している。
  2. パスフレーズを聞いてこなければ、gpgの意味が無い、、、なんてことになったら、CentOS7のバグ?

投稿2017/03/22 03:38

退会済みユーザー

退会済みユーザー

総合スコア0

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

0

手元にある Ubuntu 16.04 LTS で、gpg version 1.4.20 で試してみました。

bash

1$ echo aiueo > in.txt 2$ cat in.txt 3aiueo 4$ gpg -c in.txt 5gpg: このセッションでgpg-agentは無効です 6パスフレーズを入力: 7パスフレーズを再入力: 8$ ls 9in.txt in.txt.gpg 10$ cat in.txt.gpg 11※バイナリなので画面が崩れます 12$ gpg -d in.txt.gpg 13gpg: AES暗号化済みデータ 14gpg: このセッションでgpg-agentは無効です 15パスフレーズを入力: 16aiueo 17$

普通に暗号化できて、パスフレーズも要求されますね…

投稿2017/03/22 01:08

tacsheaven

総合スコア13703

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

退会済みユーザー

退会済みユーザー

2017/03/22 01:31

ですよね。。。 >それはパスワードを入力(設定)する際に表示されるパスワード入力画面なのですが、なぜか決定ボタンがUNLOCKとなっており、LOCKではないのか?と困惑しました。 CUIなのに、「決定ボタン」とは、、、何か心当り、ありますか?
tacsheaven

2017/03/22 02:16 編集

手元に仮想マシンで CentOS7 があったので試してみました。 gpg は 2.0.22 です。 GUI (Gnome Shell)でログインしている状態で、「端末」を開き、そのコマンドラインで gpg -c をやると、パスフレーズ入力は GUI になりますね。 日本語環境なので「ロックの解除」と出てきました。
tacsheaven

2017/03/22 02:17 編集

で、出来上がった gpg 暗号化済みファイルを gpg -d とすると、パスフレーズ入力なしで表示されますねえ……これ Gnome Shell がパスフレーズ入力をトラップして、お節介焼いてますね、たぶん。
tacsheaven

2017/03/22 02:22 編集

ちなみに TeraTerm で SSH 接続して gpg -d とやると、CUI でパスフレーズ入力ウィンドウが出てくる(まるでDOS時代のような) ステキ仕様ですな…
退会済みユーザー

退会済みユーザー

2017/03/22 02:25

CentOS7のgpgは >~/.gnupg/ の中見て勝手に処理している っぽいですね。
tacsheaven

2017/03/22 02:31

gpg といっても gpg2 ですし、パスフレーズ入力をトラップしてるので、普通の挙動ではないでしょうね。/etc/pam.d/gdm-password あたりの設定かな?
退会済みユーザー

退会済みユーザー

2017/03/22 02:37

手元のkernelが2.6.35.14-106.fc14.i686.PAEなFedoraなので、 /fetc/pam.d/gdm*を見ても、手がかり無しでした。
guest

0

gpgのオプションと構文が違う様な気がします。

gpgの対称暗号時の警告をなくす

p.s.
古いFedoraにもgpgが入っていたので、試してみました。

gpg -a -c --force-mdc < in.txt > out.txt
で、in.txtをパスフレーズで暗号化したout.txtを作成して
gpg -d out.txt
で、パスフレーズを入力したら「aiueo」と表示しました。

out.txtの中身は、
-----BEGIN PGP MESSAGE-----
Version: GnuPG v1.4.11 (GNU/Linux)

jA0EAwMCLrW4T6oeneNg0jQBby/o1YzZADl/2iTyi/ccXn5gwt0dWRyG+zeNH/lx
Lsk7NP+qkTPIOUViUVMe2AQHKtCR
=6v5L
-----END PGP MESSAGE-----

投稿2017/03/21 23:00

編集2017/03/21 23:36
退会済みユーザー

退会済みユーザー

総合スコア0

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

setsu_tenhou

2017/03/22 00:01

解答どうもありがとうございます。 同じ構文で行ってみた結果です。 [kagu@localhost ~]$ cd Desktop [kagu@localhost Desktop]$ gpg -a -c --force-mdc < sample.txt > out.txt *パスワード設定 [kagu@localhost Desktop]$ gpg -d out.txt gpg: CAST5 encrypted data gpg: encrypted with 1 passphrase aiueo 結果 変わらずにパスワードを設定したのにもかかわらず、パスワード入力を要求されることもなく複合できてしまいました。 パスワードが設定されていると表示されているのに、なぜ複合する際にパスワードを要求されないのでしょうか?
退会済みユーザー

退会済みユーザー

2017/03/22 01:13 編集

out.txtの中身を見せてもらえませんか? versionとPGP MESSAGEを確認したいです。 p.s. もしかして「パスワード」による「鍵」を生成されてますか?
退会済みユーザー

退会済みユーザー

2017/03/22 01:32

>それはパスワードを入力(設定)する際に表示されるパスワード入力画面なのですが、なぜか決定ボタンがUNLOCKとなっており、LOCKではないのか?と困惑しました。 CUI(ターミナル)で操作されているのですよね? 「決定ボタン」とは、どんな感じで表示されるのでしょうか?
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問