Proteja archivos de PowerPoint usando C++

Microsoft PowerPoint es un software potente y rico en funciones que le permite crear impresionantes diapositivas para usar en sus reuniones y debates. Es posible que se encuentre en situaciones en las que su presentación contenga información confidencial que desee proteger. En tales casos, puede resultar útil proteger el archivo de la presentación con una contraseña. Por otro lado, si quieres marcar una presentación como final y no quieres que se modifique su contenido, puedes firmar digitalmente el archivo de la presentación. Siempre que la firma sea válida, puede estar seguro de que el archivo de presentación no ha sido alterado. A la luz de eso, este artículo le enseñará cómo proteger las presentaciones de PowerPoint con una contraseña o firma digital usando C++.

API de C++ para proteger archivos de PowerPoint

Aspose.Slides for C++ es una biblioteca de C++ rica en funciones que le permite crear, leer y modificar archivos de PowerPoint. Además, la API admite la protección de archivos de PowerPoint mediante contraseñas y firmas digitales. Puede instalar la API a través de NuGet o descargarla directamente desde la sección Descargas.

PM> Install-Package Aspose.Slides.Cpp

Proteja los archivos de PowerPoint con una contraseña

Los siguientes son los pasos para proteger las presentaciones de PowerPoint con una contraseña.

El siguiente es el código de muestra para proteger la presentación de PowerPoint con una contraseña usando C++.

// Rutas de archivos
const String sourceFilePath = u"SourceDirectory\\SamplePresentation.pptx";
const String outputFilePath = u"OutputDirectory\\protected-presentation.pptx";

// Cargar el archivo de presentación
SharedPtr<Presentation> presentation = MakeObject<Presentation>(sourceFilePath);

// Proteger presentación con contraseña
presentation->get_ProtectionManager()->Encrypt(u"password");

// Guardar la presentación
presentation->Save(outputFilePath, SaveFormat::Pptx);

Protección de archivos de PowerPoint con una firma digital

Los siguientes son los pasos para proteger las presentaciones de PowerPoint con una firma digital.

El siguiente es el código de muestra para proteger los archivos de PowerPoint con una firma digital usando C++.

// Rutas de archivo
const String sourceFilePath = u"SourceDirectory\\SamplePresentation.pptx";
const String signatureFilePath = u"SourceDirectory\\testsignature1.pfx";
const String outputFilePath = u"OutputDirectory\\digital-signature-presentation.pptx";

// Cargar el archivo de presentación
SharedPtr<Presentation> presentation = MakeObject<Presentation>(sourceFilePath);

// Crear objeto DigitalSignature con archivo PFX y contraseña
SharedPtr<DigitalSignature> signature = MakeObject<DigitalSignature>(signatureFilePath, u"testpass1");

// Agregar comentario
signature->set_Comments(u"Test Comments");

// Agregar firma digital a la presentación
presentation->get_DigitalSignatures()->Add(signature);

// Guardar la presentación
presentation->Save(outputFilePath, SaveFormat::Pptx);

Verificar archivos de PowerPoint firmados digitalmente usando C++

Aspose.Slides for C++ API también le brinda la capacidad de verificar archivos de PowerPoint firmados digitalmente. Los siguientes son los pasos para verificar la firma digital de un archivo de PowerPoint.

El siguiente es el código de muestra para verificar la firma digital de un archivo de PowerPoint usando C++.

// Ruta de archivo
const String sourceFilePath = u"SourceDirectory\\digital-signature-presentation.pptx";

// Cargar el archivo de presentación
SharedPtr<Presentation> presentation = MakeObject<Presentation>(sourceFilePath);

// Comprobar si la presentación tiene firmas digitales
if (presentation->get_DigitalSignatures()->get_Count() > 0)
{
	bool allSignaturesAreValid = true;

	Console::WriteLine(u"Signatures used to sign the presentation: ");

	// Verificar firmas digitales
	for (int i = 0; i < presentation->get_DigitalSignatures()->get_Count(); i++)
	{
		SharedPtr<IDigitalSignature> signature = presentation->get_DigitalSignatures()->idx_get(i);

		Console::WriteLine(System::Convert::ToString(signature->get_SignTime()) + u" -- " + (signature->get_IsValid() ? u"VALID" : u"INVALID"));
		if (signature->get_IsValid() == false)
		{
			allSignaturesAreValid = false;
		}
	}

	if (allSignaturesAreValid)
	{
		Console::WriteLine(u"Presentation is genuine, all signatures are valid.");
	}
	else
	{
		Console::WriteLine(u"Presentation has been modified since signing.");
	}
}

Obtenga una licencia gratis

Puede probar la API sin limitaciones de evaluación solicitando una licencia temporal gratuita.

Conclusión

En este artículo, ha aprendido cómo proteger las presentaciones de PowerPoint con una contraseña y una firma digital usando C++. Además, ha visto cómo verificar la integridad de los archivos de presentación mediante la validación de su firma digital. Aspose.Slides for C++ API tiene muchas más funciones que hacen que trabajar con archivos de presentación sea muy fácil. Puede explorar la API en detalle utilizando la documentación oficial. Si tiene alguna pregunta, no dude en ponerse en contacto con nosotros en el foro de soporte gratuito.

Ver también