Para algunos algoritmos, las subclaves son una necesidad técnica: por ejemplo, DSA (el algoritmo de firma digital) solo se puede usar para firmar y requiere una subclave de cifrado adicional (por ejemplo, Elgamal). Esto no es cierto para RSA, que se puede usar tanto para la firma como para el cifrado.
La distinción entre una clave principal y subclaves tiene otra razón: permite mantener la clave principal (privada) tan poco expuesta como se requiera, solo usarla para operaciones de administración de claves como agregar y revocar subclaves e ID de usuario y certificar otras claves (esta es la capacidad C
impresa en la salida que proporcionó).
Al usar subclaves, incluso podría hacer uso de una clave principal fuera de línea , lo que significa que elimina la clave principal privada de su conjunto de claves predeterminado y la mantiene desconectada de forma segura, excepto en las raras circunstancias en que realmente necesito. Algunas personas lo tienen en unidades de memoria USB, otras incluso usan una computadora vieja dedicada para este propósito.
Incluso si no haces esto: usar la clave podría hacerlo vulnerable a ciertos ataques. Por ejemplo, DSA es vulnerable cuando se usa para firmar parámetros de reutilización . Si usó una clave DSA a menudo (por ejemplo, para firmar todo su correo), es mucho más probable que este problema lo atrape y revele su clave principal privada que si solo la usa raramente para la administración de claves. Su subclave privada aún sería revelada, pero puede revocarla fácilmente y crear una nueva, sin perder su reputación en la red de confianza OpenPGP, como lo haría cuando revoca su clave principal. Otra ventaja es que puede usar diferentes subclaves de firma en diferentes máquinas (y si una máquina es hackeada, no tiene que cambiarlas todas). Sin embargo, esto no funciona tan bien para las claves de cifrado.