Como excluir chaves secretas de gpg pela força, sem impressão digital?

9

O acidente gerou uma grande quantidade de chaves secretas (sem chave pública) no anel de chave GPG. e eu escrevi um script para deletar essas chaves, mas o GPG não me permite fazer isso:

$ gpg --batch --yes --delete-secret-keys KEYS
gpg: can't do this in batch mod
gpg: (unless you specify the key by fingerprint)

bem, eu sei o que estou fazendo e sei que pode haver id (s)-chave duplicados, mas parece que não há como forçar a exclusão deles, embora o seguinte não funcione também:

$ yes | gpg --delete-secret-keys KEYS

Alguma ideia?

    
por Xiè Jìléi 11.08.2010 / 11:08

4 respostas

6

Use gpg --list-secret-keys --with-colons --fingerprint para gerar a lista de impressões digitais em um formato facilmente analisável. Pegue as linhas do formulário fpr:::::::::xxxx: que correspondem às chaves que você deseja excluir e passe as impressões digitais (o xxxx ) para gpg --batch --delete-secret-keys .

O comando a seguir gera todas as impressões digitais de chave secreta. Certifique-se de selecionar apenas os que você deseja excluir!

gpg --list-secret-keys --with-colons --fingerprint | sed -n 's/^fpr:::::::::\([[:alnum:]]\+\)://p'
    
por 11.08.2010 / 11:29
3

Eu sei que este tópico é antigo, e que a resposta parece um pouco com Gilles, mas acho que responde totalmente à pergunta (já que eu tinha o mesmo tipo de problemas que o OP):

for i in 'gpg --with-colons --fingerprint | grep "^fpr" | cut -d: -f10'; do gpg --batch --delete-secret-keys "$i" ; done
    
por 24.05.2012 / 14:51
1

Exporte as chaves que deseja manter, exclua o arquivo e recrie o seu anel.

    
por 11.08.2010 / 11:26
1

Combinei as respostas de Gilles e Dolanor neste forro útil para o caso de você querer excluir uma chave específica:

gpg --fingerprint --with-colons ${GPG_KEY} |\
    grep "^fpr" |\
    sed -n 's/^fpr:::::::::\([[:alnum:]]\+\)://p' |\
    xargs gpg --batch --delete-secret-keys

Não responde à pergunta original, mas pode ser útil para outra pessoa.

    
por 27.03.2017 / 12:15

Tags