Mensaje CMS/PKCS #7 envuelto y firmado

CMS/PKCS #7 proporciona la capacidad de firmar y envolver mensajes. Esto es posible porque los mensajes protegidos se pueden anidar. La firma y el envoltorio digital protege a los mensajes mediante la aplicación por separado de todos los servicios de seguridad descritos en los temas Mensaje SignedCms y Mensaje EnvelopedCms.

El correo electrónico, con el estándar de seguridad S/MIME, ofrece un ejemplo de aplicación en la que resultan de utilidad tanto la firma como el envoltorio de los mensajes. S/MIME especifica la posibilidad de firmar y cifrar mensajes de correo electrónico. Si la aplicación requiere autenticación y confidencialidad de datos con un alto porcentaje de probabilidades, utilice una combinación de firma y envoltorio digital.

Aunque estos servicios de seguridad se pueden aplicar en cualquier orden, es posible que sea mejor firmar el mensaje antes de envolverlo. En ese caso, los datos firmados serían inteligibles porque aún no se habrían cifrado.

Para firmar y envolver los mensajes, utilice las clases SignedCms y EnvelopedCms conjuntamente. Por ejemplos, los requisitos de la aplicación dictan que primero hay que firmar los mensajes y, después, envolverlos. Firme el mensaje mediante la clase SignedCms, como se describe en el tema Mensaje SignedCms. Codifique el mensaje SignedCms invocando el método System.Security.Cryptography.Pkcs.SignedCms.Encode. La codificación resultante es una matriz de bytes. Utilice dicha matriz como entrada para crear un objeto ContentInfo. Utilice el objeto ContentInfo como entrada para crear un objeto EnvelopedCms.

Ahora, el objeto EnvelopedCms tiene un objeto SignedCms anidado como contenido interno. Seguidamente, envuelva el mensaje como se describe en Mensaje EnvelopedCms.

Para ver un ejemplo de código que firma y envuelve un mensaje, vea el tema Cómo firmar y envolver mensajes.

Consulte también

Conceptos

Cómo firmar y envolver mensajes
Tipos de mensajes CMS/PKCS #7

Copyright © 2007 Microsoft Corporation. Reservados todos los derechos.