¿Cómo importar clave secreta primaria desde la copia de seguridad a GnuPG?

2

He visto "Volver a importar clave principal secreta en GnuPG " que es prácticamente el problema que veo, pero no he tenido suerte con GnuPG 1.4.20 (de GPGTools) o GnuPG 2.1.

Incluso si elimino todo mi ~/.gnupg y vuelvo a intentar la importación, parece que no puedo obtener el secreto de la clave principal para importar. Supongo que no se están fusionando las claves al comenzar desde cero, por lo que no entiendo por qué esto no funcionaría incluso en GnuPG 1.4.

Mi archivo de copia de seguridad contiene la clave privada:

➜  ~ gpg --list-packets master-secret-key.gpg
:secret key packet:
    version 4, algo 1, created 1459961571, expires 0
    skey[0]: [4096 bits]
    skey[1]: [17 bits]
    gnu-dummy S2K, algo: 3, SHA1 protection, hash: 2
    protect IV:
    keyid: DBDE1E0253A3B420
...

Comenzando desde cero con un ~/.gnupg vacío:

➜  ~ gpg --allow-secret-key-import --import master-secret-key.gpg public-key.asc
gpg: key 53A3B420: secret key imported
gpg: key 53A3B420: public key "Rodrigo López Dato <[email protected]>" imported
gpg: key 7C4C5564: public key "Rodrigo López Dato <[email protected]>" imported
gpg: Total number processed: 2
gpg:               imported: 2  (RSA: 2)
gpg:       secret keys read: 1
gpg:   secret keys imported: 1
➜  ~ gpg -K
/Users/rolodato/.gnupg/secring.gpg
----------------------------------
sec#  4096R/53A3B420 2016-04-06
uid                  Rodrigo López Dato <[email protected]>
uid                  Rodrigo López Dato <[email protected]>
ssb   2048R/00E7B480 2016-04-06
ssb   2048R/7D9F38D2 2016-04-06

sec# significa que la clave maestra privada no se importó, ¿por qué?

FWIW, necesito la clave maestra para generar un certificado de revocación y, finalmente, renovar mis subclaves una vez que caduquen. Si hay una manera de hacer esto directamente desde la copia de seguridad sin necesidad de importarla, eso también funcionaría.

    
pregunta Rodrigo López Dato 08.04.2016 - 17:35
fuente

1 respuesta

2

El archivo que está intentando importar no contiene la clave privada real, como lo indica esta línea en la salida de gpg --list-packets :

gnu-dummy S2K, algo: 3, SHA1 protection, hash: 2

El algoritmo S2K "ficticio" especial se aplica cuando GnuPG realmente exportó un código auxiliar de clave secreta para habilitar el uso de subclaves secretas, pero con una clave principal fuera de línea (en otra computadora, una unidad de pulgar desconectada, una tarjeta inteligente OpenPGP, ... ). Este apéndice de clave también es lo que observa en la salida de --list-secret-keys / -K :

sec#  4096R/53A3B420 2016-04-06
    
respondido por el Jens Erat 08.04.2016 - 18:00
fuente

Lea otras preguntas en las etiquetas