Eu tenho uma solução que funcionará no OS X, Linux, BSD e outros sistemas * nix, mas se você estiver no Windows, poderá estar sem sorte (ou precisar de um pouco mais de esforço).
Entre no Thunderbird e abra o catálogo de endereços. Provavelmente haverá pelo menos duas subseções: endereços pessoais e endereços coletados. Pode haver mais. Destaque cada uma dessas subseções, vá para ferramentas e selecione exportar, nomeie o arquivo como apropriado e repita o processo para cada subseção do catálogo de endereços. A exportação cria arquivos .ldif contendo todos os detalhes de cada contato em texto simples.
Para este exemplo, estou dizendo que salvei dois arquivos como /tmp/personal.ldif e /tmp/collected.ldif para as subseções do bloco de endereços principal. Então é hora de um pouco de trabalho em um prompt bash:
cd /tmp/
grep "^mail: " personal.ldif > pmail.txt
grep "^mail: " collected.ldif > cmail.txt
Em seguida, abra /tmp/pmail.txt e /tmp/cmail.txt no editor de texto de sua escolha e para encontrar / substituir em "mail:" sem nada (por exemplo, ""). Então, de volta ao nosso pequeno prompt de shell para terminar com:
for x in 'cat pmail.txt' ; do
gpg --recv-keys $x
gpg --keyserver pgp.mit.edu --recv-keys $x
done ;
for x in 'cat cmail.txt' ; do
gpg --recv-keys $x
gpg --keyserver pgp.mit.edu --recv-keys $x
done ;
Dependendo de quantos endereços de e-mail estão em suas listas de contatos, isso pode demorar um pouco. A maioria das respostas será fracassada, mas você pode simplesmente deixá-la em segundo plano.