1
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

Emacsのplstore.elで暗号化するパスフレーズを何度も入力しないで済ませたい

Last updated at Posted at 2022-04-30

Emacsのplstore.el1はEmacs Lispでよく利用するProperty List(plist)2形式のデータをGnuPGで暗号化してファイルに保存する際に利用するライブラリです。

とても便利ですが、データを保存する際に毎回パスフレーズを聞かれるため、面倒だな、と思っていました。

そう思っていたところ、たまたま見ていた gnus-gmail-oauth のソースコードに、偶然、次の記述を見つけました。

https://github.com/ggervasio/gnus-gmail-oauth/blob/91b014187dc61b09e2acae554b1d2d1fd4f14bbd/gnus-gmail-oauth.el#L46

;; 4. (optional):
;; oauth2 uses plstore to save access tokens in ~/emacs.d/oauth2.plstore,
;; which is GPG-encrypted.  This allows the GPG passphrase to be cached
;; during the Emacs session:
;;
;; (setq plstore-cache-passphrase-for-symmetric-encryption t)

この、長ったらしい plstore-cache-passphrase-for-symmetric-encryptionという変数ですが、ドキュメント化されていないものの、確かに、ソースコードには存在しています。

https://github.com/emacs-mirror/emacs/blob/a33bf0114920a67926761ec2f51c040265b8dfd1/lisp/plstore.el#L127

そこで、

(setq plstore-cache-passphrase-for-symmetric-encryption t)

を設定したところ、確かにパスフレーズがキャッシュされるようになりました。一度入力すれば、二回目以降は省略できるため便利です。めでたし、めでたし。

なお、セキュリティ上の問題があるのかどうかは調べてませんので、利用されるときはお気をつけ下さい。

Footnotes

1 : emacs/plstore.el at master · emacs-mirror/emacs

2 : Property Lists (GNU Emacs Lisp Reference Manual)

1
1
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
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?