2 votes

comment contourner le pinentry (écran de phrase de passe) lors du décryptage d'un fichier en utilisant gpgme

J'essaie de déchiffrer un fichier à partir du serveur où je dispose de la clé publique requise pour ce serveur. Le trousseau de clés est protégé par un mot de passe et, lorsque j'essaie de déchiffrer un fichier, il me demande une phrase de passe.

Existe-t-il un moyen de contourner cette phrase de passe en passant le mot de passe lorsque nous essayons de décrypter le fichier.

J'utilise gpg-agent où la phrase de passe est mise en cache pour une durée de 600 secondes par défaut et, pour une raison quelconque, je ne parviens pas à définir l'intervalle de confiance. max-cache-ttl (Cela n'a pas fonctionné pour moi, je ne sais pas pourquoi) et n'est disponible que pour cette session.

Maintenant je veux mettre en cache la phrase de passe pour laquelle j'utilise gpg-preset-passphrase . Je l'ai défini dans .gnupg/gpg-agent.conf comme suit gpg-preset-passphrase --preset hex . Je ne sais pas ce que je rate dans tout ça.

Quelqu'un peut-il me dire ce que j'ai manqué dans cette affaire ?

4voto

kill007 Points 291

Je ne parviens pas à contourner la phrase de passe ou l'écran de saisie, mais j'ai utilisé gpg-agent des options comme default-cache-ttl pour définir la durée du cache. Ainsi, dès la deuxième tentative, le pinentry va récupérer la phrase de passe mise en cache et réinitialisera la minuterie sur defaul-cache-ttl .

Il en existe un autre appelé max-cache-ttl même après la récupération réussie de la phrase de passe en cache et la réinitialisation de default-cache-ttl, cette option ne modifie pas son timer et expire la phrase de passe en cache après le délai fixé.

Par exemple : Si je règle les deux pour 10 heures (c'est-à-dire 36000sec), si j'appelle le décryptage après 5 heures, le défaut va réinitialiser sa minuterie et maintenant nous avons 10 heures de plus. Mais le maximum va expirer après les 10 heures initiales et donc supprimer la phrase de passe en cache après 10 heures.

Un autre problème que j'ai trouvé est un problème de session avec gpg-agent. c'est à dire que si j'ouvre une nouvelle session et que j'essaie de décrypter, cela ne se produit pas et le message d'erreur est que gpg-agent n'est pas disponible pour cette session. J'ai écrit un script shell script et l'ai mis dans bashrc pour qu'il démarre dès qu'une nouvelle session est lancée

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X