Jak pozwolić gpg-agentowi potwierdzić każde użycie klucza

5

Podczas działania gpg-agentw ramach sesji logowania każdy uruchamiany program ma dostęp do mojego (prawdopodobnie) odblokowanego klucza PGP. Może to być paranoiczne, ale chcę uzyskać potwierdzenie o każdym użyciu klucza, więc chcę, aby opcja gpg-agent, gdy hasło lub PIN karty jest już w pamięci podręcznej, wyświetla okno dialogowe potwierdzenia, zanim pozwoli na dostęp do klucza.

Dla kluczy ssh zarządzanych przez gpg-agenttaką opcję istnieje zgodnie ze stroną podręcznika , ale nie dla PGP.

Przegapiłem coś?

Uwe Kleine-König
źródło

Odpowiedzi:

2

Nie ma opcji, która po prostu wyświetla komunikat. Na koniec musisz wybrać jedną z dwóch opcji:

  1. Całkowicie wyłącz pamięć podręczną , aby upewnić się, że hasło w ogóle nie jest przechowywane:

    --max-cache-ttl n
          Set the maximum time a cache entry is valid to n seconds.  After
          this time a cache entry will be expired  even  if  it  has  been
          accessed  recently  or has been set using gpg-preset-passphrase.
          The default is 2 hours (7200 seconds).
    

    Nie jestem pewien, czy wartość 0całkowicie wyłącza pamięć podręczną, czy ustawia maksymalny czas na nieskończoność - łatwo będzie można się dowiedzieć. Ustawienie go na 1sekundy również powinno być w porządku.

  2. Istnieje opcja wyłączenia pamięci podręcznej podczas podpisywania (podczas gdy nadal odszyfrowuje ją):

    --ignore-cache-for-signing
          This option will let gpg-agent bypass the passphrase  cache  for
          all  signing  operation.   Note that there is also a per-session
          option to control this behaviour but this  command  line  option
          takes precedence.
    

    Chodzi o to, aby zapobiec przypadkowemu podpisaniu wiadomości (której prawdopodobnie nie można cofnąć), a przypadkowe odszyfrowanie wiadomości prawdopodobnie nie zaszkodzi.

Rozważając te opcje, zastanów się, jaki atak chcesz złagodzić. Jeśli ktokolwiek jest w stanie wykonać działania za pomocą twojego klucza, najprawdopodobniej i tak może uruchomić dowolne polecenia i może zainstalować trojana lub rejestrator kluczy.

Jens Erat
źródło
„Jeśli ktokolwiek jest w stanie wykonać działania za pomocą twojego klucza, najprawdopodobniej i tak może uruchomić dowolne polecenia i może zainstalować trojana lub rejestrator kluczy.” <- Niekoniecznie dzieje się tak, gdy połączenie agenta GPG jest przekazywane do połączenia zdalnego, wtedy ta dodatkowa warstwa ochrony ma większy sens.
Matthijs Kooijman
Masz rację - można to całkiem dobrze porównać z użyciem klucza na kryptograficznej karcie inteligentnej, który wykonuje wszystkie operacje kryptograficzne (klucz publiczny-prywatny) zamiast głównego procesora.
Jens Erat,