Después de aprender más sobre las subclaves PGP y cómo dividir las funciones de (S) igning, (E) ncryption, (A) uthentication y (C) ertification, descubrí que en la mayoría de los casos (?) una clave maestra predeterminada tiene una subclave para separar el trabajo de cifrado:
pub 2048R/AAAAAAAA usage: SC
sub 2048R/BBBBBBBB usage: E
Aquí, AAAAAAAA
es la clave maestra. S
permite firmar contenido, C
permite crear nuevas subclaves. (Una ventaja de esto es que puede darle a AAAAAAAA
un tiempo de vencimiento más largo que BBBBBBBB
y luego crear una nueva clave de cifrado con AAAAAAAA
porque tiene un permiso de uso de C
).
Sin embargo, me parece que lo siguiente no sería menos seguro para los usuarios que trabajan en una sola máquina, pero que proporcionará más seguridad para los usuarios que deseen recibir correo cifrado desde, por ejemplo, trabajo y domicilio:
pub 2048R/AAAAAAAA usage: C
sub 2048R/BBBBBBBB usage: E
sub 2048R/CCCCCCCC usage: S
Con esta configuración, la clave maestra AAAAAAAA
no puede firmar / verificar o cifrar / descifrar, pero puede cobrar la confianza. Por lo tanto, puede darle a la clave maestra AAAAAAAA
un tiempo de vencimiento más largo y usarla para agregar nuevas subclaves. Al exportar BBBBBBBB
y CCCCCCCC
a, digamos, una computadora de trabajo separada que se mueve mucho más y es menos segura, sin la clave maestra, si la computadora de trabajo está comprometida, subclaves se pueden revocar y agregar nuevas claves, sin perder ninguna reputación.
(Incluso puede ir tan lejos como para mantener la parte secreta de la clave de certificación maestra en un Súper Secreto Bunker, por supuesto).
Sé que configurar esto parecía imposible a través de una GUI (no parecen estar interesados en las subclaves, ni en ver ni editar, y mucho menos en controlar lo que la clave maestra puede y no puede hacer), pero mi pregunta es :
¿Existe alguna razón específica para que esto no se haga con las implementaciones de PGP existentes? La exportación de claves secretas a otras máquinas sin privilegios de certificación parece ser una gran ganancia de seguridad. (Si solo las GUI lo hicieran más fácil). Mi único pensamiento posible es que la importación de subclaves secretas con una clave secreta maestra lisiada tal vez no sea ampliamente compatible, como --export-secret-subkeys
(en la página de manual gpg(1)
) sugiere:
--export-secret-keys
--export-secret-subkeys
Same as --export, but exports the secret keys instead. This is
normally not very useful and a security risk. The second form
of the command has the special property to render the secret
part of the primary key useless; this is a GNU extension to
OpenPGP and other implementations can not be expected to suc‐
cessfully import such a key. See the option --simple-sk-check‐
sum if you want to import such an exported key with an older
OpenPGP implementation.
Editar : ¿Parece que Debian sigue esta misma práctica? enlace