Proteger arquivos do PowerPoint usando C++

O Microsoft PowerPoint é um software poderoso e rico em recursos que permite criar slides impressionantes para usar em suas reuniões e discussões. Você pode se encontrar em situações em que sua apresentação contém informações confidenciais que você deseja proteger. Nesses casos, proteger o arquivo de apresentação com uma senha pode ser útil. Por outro lado, se você deseja marcar uma apresentação como final e não deseja que seu conteúdo seja modificado, pode assinar digitalmente o arquivo de apresentação. Contanto que a assinatura seja válida, você pode ter certeza de que o arquivo de apresentação não foi alterado. À luz disso, este artigo ensinará como proteger apresentações do PowerPoint com uma senha ou assinatura digital usando C++.

API C++ para proteger arquivos do PowerPoint

Aspose.Slides for C++ é uma biblioteca C++ rica em recursos que permite criar, ler e modificar arquivos do PowerPoint. Além disso, a API oferece suporte à proteção de arquivos do PowerPoint usando senhas e assinaturas digitais. Você pode instalar a API por meio do NuGet ou baixá-la diretamente da seção Downloads.

PM> Install-Package Aspose.Slides.Cpp

Proteja os arquivos do PowerPoint com uma senha

A seguir estão as etapas para proteger as apresentações do PowerPoint com uma senha.

A seguir está o código de exemplo para proteger a apresentação do PowerPoint com uma senha usando C++.

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

// Carregar o arquivo de apresentação
SharedPtr<Presentation> presentation = MakeObject<Presentation>(sourceFilePath);

// Proteja a apresentação com senha
presentation->get_ProtectionManager()->Encrypt(u"password");

// Salve a apresentação
presentation->Save(outputFilePath, SaveFormat::Pptx);

Protegendo arquivos do PowerPoint com uma assinatura digital

A seguir estão as etapas para proteger as apresentações do PowerPoint com uma assinatura digital.

Veja a seguir o código de exemplo para proteger arquivos do PowerPoint com uma assinatura digital usando C++.

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

// Carregar o arquivo de apresentação
SharedPtr<Presentation> presentation = MakeObject<Presentation>(sourceFilePath);

// Criar objeto DigitalSignature com arquivo PFX e senha
SharedPtr<DigitalSignature> signature = MakeObject<DigitalSignature>(signatureFilePath, u"testpass1");

// Adicionar comentário
signature->set_Comments(u"Test Comments");

// Adicionar assinatura digital à apresentação
presentation->get_DigitalSignatures()->Add(signature);

// Salve a apresentação
presentation->Save(outputFilePath, SaveFormat::Pptx);

Verificar arquivos do PowerPoint assinados digitalmente usando C++

Aspose.Slides for C++ API também oferece a capacidade de verificar arquivos PowerPoint assinados digitalmente. A seguir estão as etapas para verificar a assinatura digital de um arquivo do PowerPoint.

Veja a seguir o código de exemplo para verificar a assinatura digital de um arquivo do PowerPoint usando C++.

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

// Carregar o arquivo de apresentação
SharedPtr<Presentation> presentation = MakeObject<Presentation>(sourceFilePath);

// Verifique se a apresentação tem assinaturas digitais
if (presentation->get_DigitalSignatures()->get_Count() > 0)
{
	bool allSignaturesAreValid = true;

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

	// Verificar assinaturas digitais
	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.");
	}
}

Obtenha uma licença gratuita

Você pode experimentar a API sem limitações de avaliação solicitando uma licença temporária gratuita.

Conclusão

Neste artigo, você aprendeu como proteger apresentações do PowerPoint com senha e assinatura digital usando C++. Além disso, você viu como verificar a integridade dos arquivos de apresentação validando sua assinatura digital. Aspose.Slides for C++ API tem muito mais recursos que facilitam o trabalho com arquivos de apresentação. Você pode explorar a API em detalhes usando a documentação oficial. Em caso de dúvidas, sinta-se à vontade para nos contatar no fórum de suporte gratuito.

Veja também