J'ai réussi à reproduire le problème que vous rencontrez. Je l'ai fait en procédant comme suit:
$ gpg --no-default-keyring --keyring ./test-keyring --secret-keyring ./test-secring --trustdb-name ./test-trustdb --no-random-seed-file --gen-key
<specified parameters and let it do its thing>
gpg: key 58018BFE marked as ultimately trusted
public and secret key created and signed.
<snip>
$
Notez que le processus a marqué la clé comme "finalement fiable".
Maintenant j'exporte les clés:
$gpg --no-default-keyring --keyring ./test-keyring --secret-keyring ./test-secring --trustdb-name ./test-trustdb --no-random-seed-file --export-secret-keys -a >private.key
$gpg --no-default-keyring --keyring ./test-keyring --secret-keyring ./test-secring --trustdb-name ./test-trustdb --no-random-seed-file --export -a > public.key
Maintenant, j'importe dans une nouvelle base de données gpg:
$gpg --no-default-keyring --keyring ./test2-keyring --secret-keyring ./test2-secring --trustdb-name ./test2-trustdb --no-random-seed-file --import public.key
$gpg --no-default-keyring --keyring ./test2-keyring --secret-keyring ./test2-secring --trustdb-name ./test2-trustdb --no-random-seed-file --import private.key
Maintenant, si j'essaie de chiffrer en utilisant les nouveaux porte-clés, j'obtiens:
$ gpg --no-default-keyring --keyring ./test2-keyring --secret-keyring ./test2-secring --trustdb-name ./test2-trustdb --no-random-seed-file -r Fake -e
gpg: AE3034E1: There is no assurance this key belongs to the named user
pub 1024R/AE3034E1 2013-06-13 Fake User <fake@example.com>
Primary key fingerprint: AD4D BAFB 3960 6F9D 47C1 23BE B2E1 67A6 5801 8BFE
Subkey fingerprint: 58F2 3669 B8BD 1DFC 8B12 096F 5D19 AB91 AE30 34E1
It is NOT certain that the key belongs to the person named
in the user ID. If you *really* know what you are doing,
you may answer the next question with yes.
La raison en est le modèle du «réseau de confiance». Par défaut, pour qu'une clé publique soit approuvée, elle nécessite soit 1 certificat de confiance "ultime" (généralement lorsque vous avez personnellement vérifié l'identité des personnes impliquées), soit 3 certificats de confiance "marginaux" (lorsque quelqu'un que vous connaissez, qui connaît quelqu'un que vous connaissez ... a signé le certificat).
Étant donné que gpg est une application de sécurité, il vous avertit si vous essayez de chiffrer une clé qui n'est pas répertoriée comme approuvée. La raison pour laquelle votre propre clé n'est pas approuvée dans ce cas est simple. C'est parce que vous n'avez pas exporté les relations d'approbation de l'instance gpg précédente. Pour ce faire, utilisez les commandes --export-ownertrust et --import-ownertrust.
Comme toujours, reportez-vous à la page de manuel .