CMP (Protocolo de gestión de certificados) | |||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
familia: | desconocido | ||||||||||||||||||||||||||||
campo de aplicación : | gestión de certificados | ||||||||||||||||||||||||||||
versión más nueva: | cmp2000 (2) | ||||||||||||||||||||||||||||
OID de la versión más reciente: | 1.3.6.1.5.5.7.0.16 | ||||||||||||||||||||||||||||
Puerto TCP / UDP: | 80 (http), 443 (https), 829 (pkix-3-ca-ra) | ||||||||||||||||||||||||||||
| |||||||||||||||||||||||||||||
estándar propuesto: | |||||||||||||||||||||||||||||
estándar obsoleto: |
El Certificate Management Protocol (CMP) es un protocolo de Internet estandarizado por el IETF que se utiliza para obtener certificados digitales X.509 en una infraestructura de clave pública (PKI).
CMP es un protocolo flexible y con muchas funciones, que admite cualquier tipo de criptografía. Los mensajes CMP son autónomos, lo que, a diferencia de EST , hace que el protocolo sea independiente del mecanismo de transporte y proporciona seguridad de un extremo a otro. Los mensajes CMP se codifican en ASN.1 , utilizando el método DER .
CMP se describe en RFC 4210 . Los mensajes de solicitud de inscripción emplean el formato de mensaje de solicitud de certificado (CRMF), descrito en RFC 4211 . El único otro protocolo que hasta ahora utiliza CRMF es la gestión de certificados sobre CMS (CMC), que se describe en RFC 5273 .
Historia
Una versión obsoleta de CMP se describe en RFC 2510 , la respectiva versión de CRMF en RFC 2511 . Se está preparando una actualización de CMP , así como un perfil de CMP ligero que se centra en el uso industrial.
Entidades PKI
En una infraestructura de clave pública (PKI), las denominadas entidades finales (EE) actúan como clientes CMP, solicitando uno o más certificados para sí mismos a una autoridad certificadora (CA), que emite los certificados legales y actúa como servidor CMP. Ninguna o cualquier número de autoridades de registro (RA) se puede utilizar para mediar entre las EE y las CA, 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
- Soporte completo del ciclo de vida de los certificados: la entidad final sn puede utilizar CMP para obtener certificados de una CA, solicitar actualizaciones para ellos y también obtener su revocación.
- La generación de pares de claves generalmente la realiza el lado del cliente, pero también se puede solicitar desde el lado del servidor.
- La prueba de posesión generalmente se realiza mediante una autofirma del contenido del certificado solicitado, pero CMP también admite otros métodos.
- CMP admite el aspecto muy importante de la prueba de origen en dos formatos: basado en un secreto compartido (usado inicialmente) y basado en firma (usando certificados preexistentes).
- En caso de que una entidad final haya perdido su clave privada y la CA la almacene, podría recuperarse solicitando una "recuperación del par de claves".
- Hay varios tipos adicionales de solicitudes posibles, por ejemplo, para recuperar certificados de CA y para obtener parámetros y preferencias de PKI del lado del servidor.
Transporte
Los mensajes CMP generalmente se transfieren mediante HTTP, pero se puede utilizar cualquier medio de transporte.
- Encapsulado en un mensaje HTTP . [1]
- TCP o cualquier otro protocolo de transporte orientado a la conexión confiable.
- Como archivo, por ejemplo, a través de FTP o SCP .
- Por correo electrónico , utilizando el estándar de codificación MIME .
El tipo de contenido utilizado es application / pkixcmp ; las versiones anteriores del borrador usaban application / pkixcmp-poll , application / x-pkixcmp o application / x-pkixcmp-poll .
Implementaciones
- La versión 3.0 de OpenSSL incluirá una amplia compatibilidad con CMP en C. [2]
- La API de Bouncy Castle ofrece una biblioteca CMP de bajo nivel para Java y C #.
- RSA BSAFE Cert-J proporciona compatibilidad con CMP.
- La biblioteca cryptlib proporciona compatibilidad con CMP.
- EJBCA , un software de CA , implementa un subconjunto [3] de las funciones de CMP.
- El Administrador de certificados de Nexus es compatible con CMP.
- Entrust Authority Security Manager implementa el soporte CMP.
- Insta Certifier CA implementa el soporte CMPv2.
Ver también
- Protocolo simple de inscripción de certificados (SCEP)
- Gestión de certificados sobre CMS (CMC)
- Inscripción en transporte seguro (EST)
- Entorno de gestión de certificados automatizado (ACME)
Referencias
- ^ RFC 6712 Internet X.509 Infraestructura de clave pública: transferencia HTTP para el protocolo de gestión de certificados (CMP)
- ^ CMPforOpenSSL, página de GitHub
- ^ "EJBCA - La autoridad de certificación de Java EE" . Archivado desde el original el 7 de junio de 2019 . Consultado el 7 de junio de 2019 .