Articulo de referencia

Protocolo de gestión de certificados

El Protocolo de Gestión de Certificados (CMP) es un protocolo de Internet estandarizado por la IETF que se utiliza para obtener certificados de clave pública X.509 en una infrae...

El Protocolo de Gestión de Certificados (CMP) es un protocolo de Internet estandarizado por la IETF que se utiliza para obtener certificados de clave pública X.509 en una infraestructura de clave pública (PKI) .

CMP es un protocolo muy completo y flexible. Hasta ahora, es el único protocolo compatible con todos los tipos de criptografía. Esto incluye las claves KEM, que han cobrado mayor importancia en la criptografía postcuántica (PQC) .

Los mensajes CMP son autónomos, lo que hace que el protocolo sea independiente del mecanismo de transporte y proporciona seguridad de extremo a extremo incluso en múltiples saltos. Esto distingue a CMP y CMC de otros protocolos de registro de certificados, incluido EST . Los mensajes CMP se definen en sintaxis ASN.1 y se codifican mediante el método DER .

CMP se describe en RFC 9810. Los mensajes de solicitud de inscripción emplean el formato de mensaje de solicitud de certificado (CRMF), descrito en RFC 4211 y actualizado en RFC 9045. El único otro protocolo que hasta ahora utiliza CRMF es la administración de certificados sobre CMS (CMC), descrita en RFC 5273 .    

Historia

La versión inicial de CMP se describe en el RFC 2510 , y la versión CRMF correspondiente en el RFC 2511. Ambas se publicaron en marzo de 1999.  

La versión 2 de CMP se describió en el RFC 4210 , publicado en septiembre de 2005. La transferencia HTTP para mensajes CMP se describió por primera vez en el RFC 6712 , publicado en septiembre de 2012.  

En noviembre de 2023 se publicaron las actualizaciones de CMP , los algoritmos de CMP y la transferencia CoAP para CMP , así como el perfil CMP ligero centrado en el uso industrial.

En julio de 2025 se publicó el RFC 9810 , que combina los RFC 4210 y 9480 en un documento independiente y añade nuevas características, en particular compatibilidad con claves KEM . Al mismo tiempo, se publicó una actualización de la especificación para la transferencia HTTP(S) de mensajes CMP en el RFC 9811 .

Entidades PKI

En una infraestructura de clave pública (PKI), las entidades finales (EE) actúan como clientes CMP, solicitando uno o más certificados a una autoridad de certificación (CA), que emite los certificados legales y actúa como servidor CMP. Se puede utilizar cualquier autoridad de registro (RA) para mediar entre las EE y las CA, ya que ambas cuentan con una interfaz de servidor CMP descendente y una interfaz de cliente CMP ascendente. Mediante una solicitud de certificación cruzada, una CA puede obtener un certificado firmado por otra CA.

Características

  • Mensajes autónomos con protección independiente de la transferencia del mensaje: a diferencia de los protocolos relacionados EST y SCEP , esto admite una prueba de origen de extremo a extremo integrada incluso a través de varios saltos.
  • La prueba de posesión (POP) se suele realizar mediante la autofirma del contenido del certificado solicitado, pero CMP también admite otros métodos. Esto es fundamental, en particular, para solicitar certificados para claves exclusivas de KEM .
  • CMP admite el aspecto muy importante de la prueba de origen (es decir, la prueba de identidad del solicitante) en dos variantes: basada en MAC con un secreto compartido (utilizado inicialmente) y basada en firma (utilizando certificados preexistentes).
  • La generación de pares de claves generalmente la realiza el cliente, pero también puede solicitarse desde el servidor.
  • En caso de que una entidad final haya perdido su clave privada y esta se encuentre almacenada por la CA, podría recuperarse solicitando una "recuperación del par de claves".
  • Compatibilidad total con el ciclo de vida de los certificados: una entidad final puede utilizar CMP para obtener certificados de una CA, solicitar actualizaciones para los mismos y también revocarlos.
  • Existen otros tipos de solicitudes posibles, por ejemplo, para recuperar certificados CA y obtener parámetros y preferencias PKI del servidor.

Transporte

Los mensajes CMP se suelen transferir a través de HTTP(S), pero se puede utilizar cualquier medio de transporte fiable.

El Content-Type utilizado es application/pkixcmp . Inicialmente, se utilizaron application/pkixcmp-poll , application/x-pkixcmp o application/x-pkixcmp-poll .

Implementaciones

  • OpenSSL, desde la versión 3.0, incluye un amplio soporte para CMP en C. El llamado cliente CMP genérico proporciona una API de alto nivel para ello, que se adhiere al perfil CMP ligero definido en RFC 9483 . 
  • Bouncy Castle ofrece soporte CMP en Java y C#. [ 3 ]
  • RSA BSAFE Cert-J proporciona soporte CMP en C y Java.
  • cryptlib proporciona soporte CMP en C.
  • Los productos de software CA EJBCA [ 3 ] [ 4 ] , Insta Certifier, Entrust Certificate Authority, Nexus Certificate Manager, DigiCert Device Trust Manager e IBM z/OS PKI Services, implementan subconjuntos de CMPv2.

Véase también

Referencias

  1. RFC 9811 (anteriormente: RFC 6712) Infraestructura de clave pública X.509 de Internet: transferencia HTTP para el protocolo de gestión de certificados (CMP)
  2. Sahni, Mohit; Tripathi, Saurabh (noviembre de 2023). "Transferencia de protocolo de aplicación restringida (CoAP) para el protocolo de gestión de certificados" .
  3. 1 2 "Actualización técnica: CMP en EJBCA y Bouncy Castle" . Recuperado el 21 de junio de 2022 .
  4. "EJBCA - La Autoridad de Certificación Java EE" . Archivado del original el 7 de junio de 2019. Consultado el 7 de junio de 2019 .