gpg는 비밀번호를 묻지 않습니다

gpg는 비밀번호를 묻지 않습니다

파일을 암호화하고 gpg -c <file>터미널을 닫았습니다. 잠시 후 암호를 해독하려고 시도했지만 gpg <file>비밀번호를 묻지 않고 해독되었습니다. 이게 정상인가요? 나와 같은 컴퓨터에서도 gpg가 비밀번호를 요구하도록 하려면 어떻게 해야 합니까?

답변1

이는 정상적인 동작이며 gpg이제 개인 키를 관리하는 데 사용되며 gpg-agent에이전트는 특정 시간(기본적으로 최대 2시간, 비활성 시간 초과 10분) 동안 키를 캐시합니다.

기본값을 변경하려면 ~/.gnupg/gpg-agent.conf다음 항목으로 이름이 지정된 파일을 생성하거나 편집하십시오.

  • default-cache-ttl마지막 사용 후 캐시 항목이 유지되는 기간을 초 단위로 지정합니다(기본값 600).
  • max-cache-ttl캐시 항목이 유지되는 최대 시간(초)을 지정합니다(기본값은 7200).

예를 들어:

default-cache-ttl 300
max-cache-ttl 1200

각각 300초와 1200초로 변경합니다.

이를 변경한 후에는 구성을 다시 로드해야 합니다.

gpgconf --reload all

답변2

gpg >=2.1이 항상 비밀번호를 묻도록 하려면 gpg --pinentry-mode loopback.

gpg >=2.2.7을 항상 요구하도록 하려면 --symmetric( -c) 암호화된 비밀번호를 사용하여 실행하십시오 gpg --no-symkey-cache.

답변3

GnuPG 2.2.15

  --symmetric
          -c  Encrypt with a symmetric cipher using a passphrase. The default sym-
          metric cipher used is AES-128, but may be chosen with the  --cipher-algo
          option.  This command may be combined with --sign (for a signed and sym-
          metrically encrypted message), --encrypt (for  a  message  that  may  be
          decrypted  via  a  secret  key or a passphrase), or --sign and --encrypt
          together (for a signed message that may be decrypted via a secret key or
          a  passphrase).  gpg caches the passphrase used for symmetric encryption
          so that a decrypt operation may not require that the user needs to enter
          the  passphrase.   The  option  --no-symkey-cache can be used to disable
          this feature.
# encrypt files
gpg -c --no-symkey-cache file.txt
# decrypt files
gpg --no-symkey-cache file.txt.gpg

--no-symkey-cache 옵션을 사용하면 비밀번호를 캐시하지 않습니다.

답변4

gpg캐시된 모든 비밀번호를 강제로 잊어버림

나와 같은 컴퓨터에서도 gpg가 비밀번호를 요구하도록 하려면 어떻게 해야 합니까?

빠른 답변:

gpg-connect-agent reloadagent /bye

세부 사항:

목표가 1) 파일이 실제로 비밀번호로 보호되어 있는지, 2) 파일을 보호할 때 실제로 비밀번호를 알고 정확하게 입력했는지 확인하기 위한 테스트라면, gpg가 캐시된 비밀번호를 잊어버리고 암호 해독을 요청하도록 할 수 있습니다. 비밀번호를 다시 이렇게 (@wisbucky가 이 댓글에서 말한 것처럼):

# force gpg to forget your temporarily cached passwords
gpg-connect-agent reloadagent /bye

그런 다음 이와 같이 파일의 암호를 해독하면 이제 비밀번호를 다시 묻는 메시지가 표시됩니다! :

# decrypt a gpg-encrypted file
gpg myfile.txt.gpg

이는 myfile.txt이전에 다음을 사용하여 비밀번호 암호화를 수행했다고 가정합니다 gpg.

# encrypt myfile.txt into myfile.txt.gpg
gpg -c myfile.txt

관련 정보