pinentry-curses
Emacs를 사용하는 데 문제가 있다는 것을 알고 있습니다 (몇 가지 의견 참조).http://emacswiki.org/emacs/EasyPG), 따라서 터미널에서 emacs를 사용하는 것은 gpg-agent와 호환되지 않습니다.
이 경우에는 SSH를 통해 원격 시스템에 연결되어 있기 때문에 그래픽 pinentry 도구를 사용할 수 없습니다.
그러나 사전에 gpg-agent에 비밀번호를 제공한 다음 emacs가 이를 사용하도록 할 수 있지만 에이전트가 아직 이 정보를 갖고 있지 않은 경우 비밀번호를 묻는 메시지를 표시하지 않을 수 있습니까?
notmuch.el
및 와 함께 사용할 수 있는 설정은 무엇입니까 EasyPG
?
또는 동일한 효과를 달성하지만 보안 문제가 있을 수 있는 암호 문구를 캐싱하는 대체 방법이 있습니까(이것이 애초에 gpg-agent가 존재하는 이유입니다)?
답변1
이것! ->https://github.com/ecraven/pinentry-emacs
약간 비틀어야 하는데 이 방법을 사용하는 것이 저에게 효과적이었습니다. 스크립트를 디렉터리에 넣고 PATH
다음 항목을 추가합니다 ~/.gnupg/gpg-agent.conf
.
pinentry-program <path-to-pinentry-emacs>/pinentry-emacs
그런 다음 에이전트를 다시 로드합니다.
$ echo RELOADAGENT | gpg-connect-agent
꿈만 같아요 :)
답변2
상당히 새로운 pinentry/gpg2(각각 0.9.7 및 2.1.11의 Arch Linux에서 테스트됨)가 있는 경우 또 다른 옵션은 다음을 사용하는 것입니다.http://elpa.gnu.org/packages/pinentry.html.
pinentry
설치 M-x list-packages
후 장소
allow-emacs-pinentry
당신 .gnupg/gpg-agent.conf
과 넣어
(setenv "INSIDE_EMACS" (format "%s,comint" emacs-version))
(pinentry-start)
당신의 .emacs.d/init.el
. INSIDE_EMACS는 런타임에 설정되지만 M-x shell
단순히 파일을 열 때 설정되지 않기 때문에 setenv를 거기에 넣어야 했습니다 .gpg
.
gpg-agent는 이제 터미널과 Emacs read-passwd
(프롬프트와 Emacs에서 문자를 숨김 view-lossage
)에서 일반 저주 버전을 사용합니다.
편집: Emacs 지원을 제거하기 위한 데비안 패키지용 패치가 있는 것 같으므로 현재 이 솔루션은 pinentry 자체 컴파일을 준비하는 다른 배포판/사람들에게만 적합합니다.
답변3
pinentry-mode loopback
~/.gnupg/gpg.conf
2021년에는 gpg-agent 설정 및 사용 allow-loopback-entry
후 설정을 사용하실 수 있습니다.~/.gnupg/gpg-agent.conf