Cómo renovar un par de claves caducado con gpg

83

¿Cuál es la mejor manera de renovar un par de claves gpg cuando caducó y cuál es la razón del método?

El par de claves ya está firmado por muchos usuarios y está disponible en servidores públicos.

  • ¿Debería la nueva clave ser una subclave de la clave privada caducada?

  • ¿Debería estar firmado por el antiguo (podría intentar editar la clave y cambiar la fecha de vencimiento a mañana)?

  • ¿Debería la nueva clave firmar la antigua?

Jonas Stein
fuente

Respuestas:

96

Las claves privadas nunca caducan. Solo las claves públicas lo hacen. De lo contrario, el mundo nunca notaría el vencimiento ya que (con suerte) el mundo nunca ve las claves privadas.

Para la parte importante, solo hay una forma, de modo que se ahorra una discusión sobre los pros y los contras.

Debe extender la validez de la clave principal:

gpg --edit-key 0x12345678
gpg> expire
...
gpg> save

Debe tomar una decisión acerca de extender la validez de vs. reemplazar las subclaves. Reemplazarlos le brinda una seguridad de avance limitada (limitada a plazos bastante largos). Si eso es importante para usted, entonces debería tener subclaves (separadas) tanto para el cifrado como para la firma (el valor predeterminado es uno solo para el cifrado).

gpg --edit-key 0x12345678
gpg> key 1
gpg> expire
...
gpg> key 1
gpg> key 2
gpg> expire
...
gpg> save

Necesita key 1dos veces para seleccionar y deseleccionar porque puede extender la validez de solo una clave a la vez.

También puede decidir extender la validez a menos que tenga alguna razón para asumir que la clave ha sido comprometida. No tirar todo el certificado en caso de compromiso solo tiene sentido si tiene una clave principal fuera de línea (que en mi humilde opinión es la única forma razonable de usar OpenPGP de todos modos).

Los usuarios de su certificado deben obtener su versión actualizada de todos modos (ya sea para las nuevas firmas de clave o para las nuevas claves). Reemplazar hace que la clave sea un poco más grande, pero eso no es un problema.

Si usa tarjetas inteligentes (o planea hacerlo), tener más claves (encriptación) crea un cierto inconveniente (una tarjeta con la nueva clave no puede descifrar los datos antiguos).

Hauke ​​Laging
fuente
Llegué a esto: ¿ gpg> expire Need the secret key to do this. Alguna idea de cómo solucionar esto?
Felix
77
@Felix No evita la necesidad de claves privadas. Esa es la base de la criptografía PK.
Hauke ​​Laging
8
Irónico que las llaves se renueven con "expire"
David Costa
2
Creo que el expirecomando en realidad lo guía a través de la configuración del tiempo de caducidad de una clave, por lo que tal vez "renueve" la clave simplemente configurando el tiempo de caducidad en el futuro.
Viktor Haag