lista de extensiones de archivo de certificado PKCS7

1

RSA (la compañía) diseña y publica los estándares de criptografía de clave pública. En esos estándares, PKCS # 7 es un estándar que define cómo cifrar y firmar mensajes usando PKI.

PKCS # 7 define un formato para almacenar los certificados de clave pública solo, mientras que PKCS # 12 define un formato para almacenar pares de claves públicas y privadas. La lista de extensiones de archivo para PKCS # 12 era (.pfx y .p12) que creo que ambas son iguales.

Mi duda está en torno a las extensiones de archivo de certificado PKCS # 7. Tengo muchas extensiones de archivo como .p7, .p7a, .p7b, .p7c, etc. ¿Hay alguna diferencia / significado entre estas extensiones de archivo? Si hay algo, ¿qué es eso?

Internet completo aprovechado no puede encontrar la información útil para saber la diferencia. Así que vine aquí para ver si alguien sabe lo mismo.

Gracias.

    
pregunta Dungeon Hunter 13.04.2014 - 23:34
fuente

1 respuesta

2

Las "extensiones" de nombre de archivo son irrelevantes. No hay un estándar real para estas pocas letras, solo tradiciones poco mantenidas. El estándar PKCS # 7 (ahora denominado CMS ) describe cómo codificar y decodificar firmado y / o cifrado y / o autenticado " mensajes "en secuencias de bytes. Cómo estas secuencias de bytes se almacenan o intercambian está completamente fuera de alcance; en particular, CMS no tiene ningún concepto de "archivo", y mucho menos "nombre de archivo".

Estas extensiones de nombre son importantes solo para la interacción del usuario; a saber, lo que sucede cuando haces doble clic en el archivo. Los sistemas operativos derivados de MS-Dos (por ejemplo, Windows) intentarán inferir un comportamiento razonable mirando el final del nombre del archivo; Pero ese es el final de esto. En cualquier caso, un objeto CMS tiene la siguiente estructura general:

  ContentInfo ::= SEQUENCE {
    contentType ContentType,
    content [0] EXPLICIT ANY DEFINED BY contentType }

  ContentType ::= OBJECT IDENTIFIER

lo que significa que el archivo contenidos comienza con un encabezado explícito que identifica inequívocamente el tipo de datos (por ejemplo, 1.2.840.113549.1.7.2 , que significa "datos firmados, siguiendo la sintaxis SignedData de CMS sección 5.1 ).

Dado que los contenidos no son ambiguos, todo lo que debe hacer es usar como nombre de archivo lo que active el comportamiento correcto de la interfaz para lo que quiere usar el archivo CMS. Hay varios usos. Por ejemplo, como CMS SignedData tiene un campo para incrustar certificados, a menudo se ha utilizado (ab) como una especie de formato de archivo para certificados "con una cadena" (pero sin una clave privada). He visto la extensión de archivo ".p7b" utilizada para este rol.

    
respondido por el Tom Leek 14.04.2014 - 15:06
fuente

Lea otras preguntas en las etiquetas