Date: Sat, 28 Mar 2026 00:43:52 +0900 From: Kenichi Okuyama <kenichi.okuyama@gmail.com> To: masa@amogha.jp Cc: freebsd-users-jp@freebsd.org Subject: =?UTF-8?B?UmU6IC5hdXRoaW5mbyDjga7mmpflj7fljJY=?= Message-ID: <CACEZLHrSaJtX0VXXJoDckfJrUfpvKBueZKC1p=CEOb43tbg20w@mail.gmail.com> In-Reply-To: <ydlse9lco2s.fsf@pc06.mar> References: <ydl8qbfe8ym.fsf@pc06.mar> <ydlse9lco2s.fsf@pc06.mar>
index | next in thread | previous in thread | raw e-mail
[-- Attachment #1 --] もしかして> --no-tty が必要? 奥山 健一(Kenichi Okuyama) 2026年3月28日(土) 0:03 丸山直昌 <masa@amogha.jp>: > 家庭菜園FreeBSD愛好家 丸山です。 > > gpg -c .authinfo で暗号化ができない問題ですが、その後色々調べたところ現 > 象を詳しく把握することができました。 > > まず私が試した gpg ですが > > % gpg --version > gpg (GnuPG) 2.4.7 > libgcrypt 1.11.0 > Copyright (C) 2024 g10 Code GmbH > License GNU GPL-3.0-or-later <https://gnu.org/licenses/gpl.html> > This is free software: you are free to change and redistribute it. > There is NO WARRANTY, to the extent permitted by law. > > Home: /usr/home/maruyama/.gnupg > サポートしているアルゴリズム: > 公開鍵: RSA, ELG, DSA, ECDH, ECDSA, EDDSA > 暗号方式: IDEA, 3DES, CAST5, BLOWFISH, AES, AES192, AES256, > TWOFISH, CAMELLIA128, CAMELLIA192, CAMELLIA256 > ハッシュ: SHA1, RIPEMD160, SHA256, SHA384, SHA512, SHA224 > 圧縮: 無圧縮, ZIP, ZLIB, BZIP2 > > です。 > > 私が直面していた無限ループに陥って暗号化ができない問題は、テストとして使っ > たパスフレーズが7文字以下で、短すぎることが直接的な原因でした。8文字以上 > の文字列を使えば暗号化はこの方法でできることがわかりました。konsole上で > できます。 > > では何故7文字以下でも ttyv 画面上ではできたのかという点ですが、何とstty > の columns が関係していたのです。私が普段使っているディスプレーは > 1920x1080の解像度、標準的には起動後に ttyv の画面が > 54 rows; 192 columns; となります。non ascii utf-8 フォントを入れていない > ので字化けしますが、これだと 7文字以下のパスフレーズを入れた場合に無限ルー > プに陥らずに暗号化ができます。konsole を横に大きくしてgpg -c の実験をし > てみると、columns が171以下の場合には同じように 7文字以下のパスフレーズ > で無限ループになるのですが、columns 172 以上だと > > 警告: 安全とは言えないパスフレーズが入力されました。 > パスフレーズは最低でも8文字以上でなければなりません。 > <それでもこれを使います> <新しいパスフレーズを入力してください> > > と表示されて <それでもこれを使います> の方を選択すると暗号化は成功します。 > これが私が字化け部分が読めない状態でやっていたことでした。 > > しかし、この gpg の仕様は酷すぎますね。私は普段 konsole を 110 columns; > で使っているのですが、それだと8文字以上のパスフレーズを入れて使う場合で > も、画面は乱れて、極めて使い難い状態です。その上7文字以下のパスフレーズ > だと何の警告も表示されずに再度パスフレーズ入力画面になってしまいます。 > > 80 columns で動かない文字型メニューインターフェースなんて、呆れて言葉も > ありません。 > > 皆さんお使いのバージョンの gpg はどうなっていますか。 > > Thu, 26 Mar 2026 09:21:53 +0900 > 丸山直昌 <masa@amogha.jp> writes: > > >emacs で smtpmail を使う場合にsmtp 接続認証パスワードは ~/.authinfo に入 > >れておくわけですが、平文で入れておくのは(自分一人しかユーザがいないシス > >テムでも)気持ちが悪いので、暗号化を試みていたのですが、うまく行かずに困っ > >ていました。gpg にバグがあるのか、或いは gpg の使い方が間違っているのか、 > >数日悩んでいたのですが、ChatGPTに聞いてもやはり > > > > gpg -c .authinfo > > > >とするか、emacs を使って .authinfo.gpg を作れ、という答えで、FreeBSD13.5 > >ではいずれもうまく行きません。10.2の時代には(kwalletを使わずに) gpg -c > >を使って自前で各種パスワード情報を暗号化していた経験があるので、「gpg2に > >なって何か変わったのか?」とも思ったのですが、ひょっとして curses回りの > >トラブルか?と疑って > > > > Xwindows 上の Konsole で gpg -c コマンドを使うと画面が乱れてうま > > く動かないのですが、どうしたら良いのでしょうか。 > > > >とChatGPTに聞いてみたところ、 > > > > これはわりと典型的な問題で、原因は GPG が「curses系のピンエント > > リ(パスフレーズ入力UI)」を使おうとして Konsole と相性が悪いこ > > とです。 > > > >という答えでした。しかし示された解決法はいずれもFreeBSD13.5では使えない > >ものでした。konsole の他 xterm, xfce端末なども試してみましたが、いずれも > >パスフレーズを入力する画面が乱れ、「OK」を選択しても同じ乱れた画面が再度 > >表示されて無限ループに陥ります。最後にたどり着いた方法は ctrl+atl+F2 で > >ttyv1画面に移り、そこで gpg -c .authinfo をやることです。これだと utf-8 > >の文字はすべて字化けしますが、画面が無限ループに陥ることなく無事に > >.authinfo.gpg ができます。 > > > >これで目出度く解決か、と思ったのですが、まだ問題がありました。smtpmailの > >設定を行った上でメールを作り C-c C-c でメールを送信しようとすると、今度 > >は emacs は .authinfo.gpg の解読段階で躓いてエラーとなり、メールが送れま > >せん。しかしこれはもう一度 C-c C-c をやると送れます。おそらく gpg-agent > >が働いて二度目は パスフレーズの入力を求めないからだと推測しています。 > > > >あまり綺麗な解決法ではないですが、ま、一応当初の目的は達成できたというと > >ころです。もう少しマシな解決法はないですかね。 > > > >FreeBSD14.x ではどうなのでしょうか。 > > > >-------- > >丸山 直昌 まるやま なおまさ > >メールアドレス: masa@amogha.jp > > [-- Attachment #2 --] <div dir="auto"><div>もしかして> --no-tty が必要?</div><div><br></div><div data-smartmail="gmail_signature">奥山 健一(Kenichi Okuyama)</div></div><br><div class="gmail_quote gmail_quote_container"><div dir="ltr" class="gmail_attr">2026年3月28日(土) 0:03 丸山直昌 <<a href="mailto:masa@amogha.jp">masa@amogha.jp</a>>:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">家庭菜園FreeBSD愛好家 丸山です。<br> <br> gpg -c .authinfo で暗号化ができない問題ですが、その後色々調べたところ現<br> 象を詳しく把握することができました。<br> <br> まず私が試した gpg ですが<br> <br> % gpg --version<br> gpg (GnuPG) 2.4.7<br> libgcrypt 1.11.0<br> Copyright (C) 2024 g10 Code GmbH<br> License GNU GPL-3.0-or-later <<a href="https://gnu.org/licenses/gpl.html" rel="noreferrer noreferrer" target="_blank">https://gnu.org/licenses/gpl.html</a>><br> This is free software: you are free to change and redistribute it.<br> There is NO WARRANTY, to the extent permitted by law.<br> <br> Home: /usr/home/maruyama/.gnupg<br> サポートしているアルゴリズム:<br> 公開鍵: RSA, ELG, DSA, ECDH, ECDSA, EDDSA<br> 暗号方式: IDEA, 3DES, CAST5, BLOWFISH, AES, AES192, AES256,<br> TWOFISH, CAMELLIA128, CAMELLIA192, CAMELLIA256<br> ハッシュ: SHA1, RIPEMD160, SHA256, SHA384, SHA512, SHA224<br> 圧縮: 無圧縮, ZIP, ZLIB, BZIP2<br> <br> です。<br> <br> 私が直面していた無限ループに陥って暗号化ができない問題は、テストとして使っ<br> たパスフレーズが7文字以下で、短すぎることが直接的な原因でした。8文字以上<br> の文字列を使えば暗号化はこの方法でできることがわかりました。konsole上で<br> できます。<br> <br> では何故7文字以下でも ttyv 画面上ではできたのかという点ですが、何とstty<br> の columns が関係していたのです。私が普段使っているディスプレーは<br> 1920x1080の解像度、標準的には起動後に ttyv の画面が<br> 54 rows; 192 columns; となります。non ascii utf-8 フォントを入れていない<br> ので字化けしますが、これだと 7文字以下のパスフレーズを入れた場合に無限ルー<br> プに陥らずに暗号化ができます。konsole を横に大きくしてgpg -c の実験をし<br> てみると、columns が171以下の場合には同じように 7文字以下のパスフレーズ<br> で無限ループになるのですが、columns 172 以上だと<br> <br> 警告: 安全とは言えないパスフレーズが入力されました。<br> パスフレーズは最低でも8文字以上でなければなりません。<br> <それでもこれを使います> <新しいパスフレーズを入力してください> <br> <br> と表示されて <それでもこれを使います> の方を選択すると暗号化は成功します。<br> これが私が字化け部分が読めない状態でやっていたことでした。<br> <br> しかし、この gpg の仕様は酷すぎますね。私は普段 konsole を 110 columns;<br> で使っているのですが、それだと8文字以上のパスフレーズを入れて使う場合で<br> も、画面は乱れて、極めて使い難い状態です。その上7文字以下のパスフレーズ<br> だと何の警告も表示されずに再度パスフレーズ入力画面になってしまいます。<br> <br> 80 columns で動かない文字型メニューインターフェースなんて、呆れて言葉も<br> ありません。<br> <br> 皆さんお使いのバージョンの gpg はどうなっていますか。<br> <br> Thu, 26 Mar 2026 09:21:53 +0900<br> 丸山直昌 <<a href="mailto:masa@amogha.jp" target="_blank" rel="noreferrer">masa@amogha.jp</a>> writes:<br> <br> >emacs で smtpmail を使う場合にsmtp 接続認証パスワードは ~/.authinfo に入<br> >れておくわけですが、平文で入れておくのは(自分一人しかユーザがいないシス<br> >テムでも)気持ちが悪いので、暗号化を試みていたのですが、うまく行かずに困っ<br> >ていました。gpg にバグがあるのか、或いは gpg の使い方が間違っているのか、<br> >数日悩んでいたのですが、ChatGPTに聞いてもやはり<br> ><br> > gpg -c .authinfo<br> ><br> >とするか、emacs を使って .authinfo.gpg を作れ、という答えで、FreeBSD13.5<br> >ではいずれもうまく行きません。10.2の時代には(kwalletを使わずに) gpg -c<br> >を使って自前で各種パスワード情報を暗号化していた経験があるので、「gpg2に<br> >なって何か変わったのか?」とも思ったのですが、ひょっとして curses回りの<br> >トラブルか?と疑って<br> ><br> > Xwindows 上の Konsole で gpg -c コマンドを使うと画面が乱れてうま<br> > く動かないのですが、どうしたら良いのでしょうか。<br> ><br> >とChatGPTに聞いてみたところ、<br> ><br> > これはわりと典型的な問題で、原因は GPG が「curses系のピンエント<br> > リ(パスフレーズ入力UI)」を使おうとして Konsole と相性が悪いこ<br> > とです。<br> ><br> >という答えでした。しかし示された解決法はいずれもFreeBSD13.5では使えない<br> >ものでした。konsole の他 xterm, xfce端末なども試してみましたが、いずれも<br> >パスフレーズを入力する画面が乱れ、「OK」を選択しても同じ乱れた画面が再度<br> >表示されて無限ループに陥ります。最後にたどり着いた方法は ctrl+atl+F2 で<br> >ttyv1画面に移り、そこで gpg -c .authinfo をやることです。これだと utf-8<br> >の文字はすべて字化けしますが、画面が無限ループに陥ることなく無事に<br> >.authinfo.gpg ができます。<br> ><br> >これで目出度く解決か、と思ったのですが、まだ問題がありました。smtpmailの<br> >設定を行った上でメールを作り C-c C-c でメールを送信しようとすると、今度<br> >は emacs は .authinfo.gpg の解読段階で躓いてエラーとなり、メールが送れま<br> >せん。しかしこれはもう一度 C-c C-c をやると送れます。おそらく gpg-agent<br> >が働いて二度目は パスフレーズの入力を求めないからだと推測しています。<br> ><br> >あまり綺麗な解決法ではないですが、ま、一応当初の目的は達成できたというと<br> >ころです。もう少しマシな解決法はないですかね。<br> ><br> >FreeBSD14.x ではどうなのでしょうか。<br> ><br> >--------<br> >丸山 直昌 まるやま なおまさ<br> >メールアドレス: <a href="mailto:masa@amogha.jp" target="_blank" rel="noreferrer">masa@amogha.jp</a><br> <br> </blockquote></div>home | help
Want to link to this message? Use this
URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?CACEZLHrSaJtX0VXXJoDckfJrUfpvKBueZKC1p=CEOb43tbg20w>
