Entiendo bastante las matemáticas detrás de RSA, Elgamal, AES, SHA pero no cómo se usan las cosas en la práctica. ¿En qué se diferencian las subclaves de la llave maestra? Entiendo su propósito en varios sitios web, pero ¿cómo se implementa internamente? ¿Cómo está vinculado a la llave maestra? ¿Es una terminología OpenPGP?

Comentarios

Respuesta

Este la publicación del usuario rjh de 2008 en el foro de enigmail responde bien:

Originalmente en PGP 2.6, a principios de los 90, solo tenía un par de claves y se usaba tanto para el cifrado como para la firma. La capacidad de tener pares de claves adicionales presentó algunos desafíos de ingeniería. Al final, se decidió que los pares de claves adicionales se llamarían «subclaves», a pesar de que «no hay nada» secundario «. Asimismo, lo que usted llama su» clave «no es realmente una clave: la terminología es un vestigio de los días en que una clave era realmente una clave. Hoy en día, una clave es realmente una colección de claves, junto con algunos metadatos para identificadores de usuario, firmas, etc.

Por ejemplo, mi «clave» tiene cuatro pares de claves: 5B8709EB , D0C6AAE4, 71E177DB y 8DB02BBB3.

Lo que GnuPG llama su «clave pública» es realmente la clave de firma más antigua de la colección. Por ejemplo, dado que 5B8709EB se creó primero, GnuPG llama a todo el conjunto de claves y metadatos la «clave 5B8709EB».

Entonces, «¿es posible tener una clave que se utilice para encriptación y firma sin ¿subclave en absoluto? «La respuesta aquí es no, porque todos pares de claves en una clave son subclaves. Incluso si solo hay una de ellas.

Respuesta

Subclaves

Los paquetes de subclaves se definen en RFC 4880, OpenPGP, paquete de material clave 5.5 . Solo se distinguen por otro ID de paquete y requieren una firma vinculante para que sean realmente útiles (ver más abajo).

Un paquete de subclave pública (etiqueta 14) tiene exactamente el mismo formato que un paquete de clave pública, pero denota una subclave.

Uso de subclaves

Las subclaves OpenPGP son utilizado para diferentes propósitos:

  • Poder almacenar la clave principal fuera de línea o en un dispositivo más seguro. Si una máquina con una subclave se daña, puede revocar fácilmente la subclave sin todas las molestias de revocar su clave principal (compartir una nueva clave, obtener nuevas firmas, …).
  • Tener diferentes subclaves en diferentes máquinas, por ejemplo, una subclave de firma en un servidor de compilación. De nuevo, revocar claves únicas es fácil.
  • Usar una clave principal más grande para una vida útil prolongada y subclaves más cortas pero más rápidas para el uso diario.
  • Algunos algoritmos no admiten tanto el cifrado como la firma. Por ejemplo, una clave primaria DSA requiere otra clave para cifrar ption, normalmente emparejado con ElGamal.

Firmas vinculantes

Hay subtipos de firmas especiales para vincular subclaves a claves primarias (y viceversa), enumeradas en RFC 4880, OpenPGP, 5.2.1 Tipos de firma :

0x18: Firma de enlace de subclave

Esta firma es una declaración de la clave de firma de nivel superior que indica que posee la subclave. Esta firma se calcula directamente en la clave principal y la subclave, y no en ningún ID de usuario u otros paquetes. Una firma que vincula una subclave de firma DEBE tener un subpaquete de firma incrustada en esta firma de vinculación que contiene una firma 0x19 realizada por la subclave de firma en la clave principal y la subclave.

0x19: Firma de vinculación de clave primaria

Esta firma es una declaración de una subclave de firma, que indica que es propiedad de la clave principal y la subclave. Esta firma se calcula de la misma manera que una firma 0x18: directamente en la clave principal y la subclave, y no en ningún ID de usuario u otros paquetes.

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *