web-dev-qa-db-fra.com

Comment vérifier si un fichier crypté GPG est crypté à l'aide d'une clé publique spécifique?

Considérez si un fichier est crypté à l'aide de la commande

par exemple.

gpg --output test.txt.gpg --encrypt --recipient [email protected] test.txt

Maintenant, considérons une autre personne reçue test.txt.gpg la clé de pub [email protected], comment effectuer un chèque pour vous assurer que le fichier est vraiment crypté à l'aide de la touche PUB?

4
Yoga

Vous n'avez même pas besoin d'avoir la clé publique (savoir simplement que c'est une pièce d'identité). En supposant que quelqu'un ne cache pas volontairement les clés utilisées pour chiffrer un fichier/message, vous pouvez utiliser le list-packets Commande de faire ce que vous demandez.

gpg --list-packets test.txt.gpg

Cela vous montrera une liste de chacun des paquets de déchiffrement répertoriés dans l'en-tête Message/fichier PGP-DE. Il existe des moyens de chiffrer une clé et de masquer cette clé à partir de cette liste, mais à l'aide des commandes normales (comme celle de votre exemple) entraînera toutes les clés de déchiffrement énumérées, comme ceci.

gpg --list-packets crypto-text.pgp
# off=0 ctb=85 tag=1 hlen=3 plen=526
:pubkey enc packet: version 3, algo 16, keyid 2206D60BA555DCB0
        data: [2045 bits]
        data: [2047 bits]
# off=529 ctb=85 tag=1 hlen=3 plen=526
:pubkey enc packet: version 3, algo 16, keyid 0D6229B307ED0210
        data: [2043 bits]
        data: [2048 bits]
# off=1058 ctb=85 tag=1 hlen=3 plen=526
:pubkey enc packet: version 3, algo 16, keyid 0E9AFA6C61A4DC66
        data: [2048 bits]
        data: [2046 bits]

Notez les trois identifiants clés différents énumérés. Yup, vous l'avez deviné, chacune de ces touches peut être utilisée pour déchiffrer ce message particulier.

points bonus si vous avez la clé publique car alors le --list-packets La commande vous indiquera également le nom convivial de chacun de ces paquets dans l'en-tête de message. (Et vous devez utiliser la clé publique que vous avez déjà eu autour).

Mais, à moins que quelqu'un se cache délibérément des clés de déchiffrement de la liste dans l'en-tête de message , vous pouvez voir quelles toutes les touches PGP peuvent être utilisées pour déchiffrer un message sans avoir accès à la clé publique ou privée pour l'un d'entre eux.

J'utilise effectivement cela beaucoup plus que j'aimerais admettre, normalement lorsque les gens de mon entreprise échangent des messages PGP-DE et tout à coup, quelqu'un ne peut pas en ouvrir un. Ils blâment toujours la mise en œuvre du logiciel. Jusqu'à présent, chaque fois, il a été qu'un message a été rédigé, crypté et après cryptage, un nouveau destinataire a été ajouté à la liste. Je peux copier le texte chiffré dans un fichier crypto-text.pgp (comme dans mon exemple) et voir exactement qui le message a été crypté à; leur montrant qui a tendance à arrêter le jeu "Votre plugin logiciel est cassé" du jeu fermement dans ses pistes.

1
Ruscal