Como posso exportar a chave pública no formato PEM com o GnuPG?

7

Estou escrevendo o SW que usa a biblioteca opessl para verificar as assinaturas do DSA. Eu tenho chaves públicas de remetentes em formato gpg. Como posso convertê-los em .pem para que o openssl possa lê-los?

Eu encontrei isso de outro tópico:

gpgsm -o secret-key.p12 --export-secret-key-p12 0xXXXXXXXX 

Para fazer a exportação eu preciso ter as chaves no keyring gpgsm, não é? Eu simplesmente não consigo descobrir como importar minhas chaves para o keyring que o gpgsm está usando. Eu acabo com erros:

gpgsm --import public.asc
gpgsm: total number processed: 0
gpgsm: error importing certificate: End of file

A gpgsm pode de alguma forma usar o chaveiro gpg: s e exportar a partir daí?

    
por Mikey 08.04.2013 / 12:48

1 resposta

0

Seu comando de exportação está correto, mas, como você supõe, o chaveiro gpgsm está vazio. Você pode verificar isso com:

gpgsm --list-keys

A saída não será nada.

Para sua última pergunta: Não. gpg e gpgsm usam bancos de dados diferentes. Mais informações são aqui . Você precisa criar ou obter um par chave / cert OpenSSL e importá-lo (no formato PKCS # 12) para o keyring gpgsm (normalmente ~/.gnupg/pubring.kbx ), portanto o comando import deve ser:

gpgsm --import mycert.p12

Você pode exportar as chaves de um sistema, convertê-las e importá-las para outra, mas a chamada conversão apenas fornece a metainfo (na maioria dos casos) e um novo certificado / chave está sendo criado com essa metainfo. Você pode procurar aqui para exemplos de conversão.

    
por 15.07.2015 / 14:19