A assinatura digital é uma forma bem conhecida e comumente usada de proteção de documentos digitais. Facilita a validação da autenticidade do conteúdo de um documento. Assim, você pode identificar se alguém tentou adulterar o documento. O MS PowerPoint também permite que você assine as apresentações PPT ou PPTX com assinaturas digitais. Para automatizar esse recurso programaticamente, este artigo aborda como adicionar assinaturas digitais a arquivos PPT do PowerPoint em Python.
- Biblioteca Python para assinar digitalmente arquivos do PowerPoint
- Adicionar assinatura digital ao PPT em Python
- Verificar um PPT assinado digitalmente
Biblioteca Python para assinar digitalmente o PowerPoint PPT
Para adicionar assinaturas digitais em apresentações do PowerPoint, usaremos Aspose.Slides for Python via .NET. É uma poderosa biblioteca Python que permite criar e manipular apresentações do PowerPoint sem escrever código complexo. Você pode instalar a biblioteca de PyPI usando o seguinte comando pip.
> pip install aspose.slides
Adicionar assinatura digital ao PPT em Python
Para assinar um documento com uma assinatura digital, primeiro você precisa obter um certificado de uma organização/pessoa autorizada conhecida como autoridade de certificação. Este certificado é usado para identificar exclusivamente a pessoa que o possui.
Depois de ter o certificado digital, você pode seguir as etapas abaixo para adicionar assinaturas digitais a um PowerPoint PPT em Python.
- Primeiro, abra o PPT/PPTX usando a classe Apresentação.
- Em seguida, carregue a assinatura digital usando a classe DigitalSignature fornecendo o caminho e a senha do arquivo.
- Adicione comentários usando a propriedade DigitalSignature.comments.
- Adicione assinatura digital à apresentação usando o método Presentation.digitalsignatures.add(DigitalSignature).
- Finalmente, salve a apresentação usando o método Presentation.save(string, SaveFormat).
O exemplo de código a seguir mostra como adicionar uma assinatura digital a um PowerPoint PPT em Python.
import aspose.slides as slides
# Carregar apresentação
with slides.Presentation("presentation.pptx") as pres:
# Criar objeto DigitalSignature com arquivo PFX e senha PFX
signature = slides.DigitalSignature("certificate.pfx", "password")
# Comente nova assinatura digital
signature.comments = "Signing with Aspose.Slides"
# Adicionar assinatura digital à apresentação
pres.digital_signatures.add(signature)
# Salvar apresentação
pres.save("SignedPPT.pptx", slides.export.SaveFormat.PPTX)
Verificar um PPT assinado digitalmente em Python
O Aspose.Slides também permite verificar se um PPT assinado digitalmente foi modificado ou não. A seguir estão as etapas para validar assinaturas digitais em uma apresentação do PowerPoint em Python.
- Primeiro, abra o PPT/PPTX usando a classe Apresentação.
- Em seguida, verifique se o PPT está assinado digitalmente ou não.
- Para cada assinatura digital na coleção Presentation.digitalsignatures, execute as etapas a seguir.
- Use DigitalSignature.isvalid para validar a assinatura.
- Se retornar falso, a apresentação é modificada, caso contrário não.
O exemplo de código a seguir mostra como validar assinaturas digitais em um PowerPoint PPT em Python.
import aspose.slides as slides
# Carregar apresentação
with slides.Presentation("presentation.pptx") as pres:
if len(pres.digital_signatures) > 0:
allSignaturesAreValid = True
print("Signatures used to sign the presentation: ")
# Verifique se todas as assinaturas digitais são válidas
for signature in pres.digital_signatures :
print(signature.certificate.subject_name.name + ", "
+ signature.sign_time.strftime("yyyy-MM-dd HH:mm") + " -- " + "VALID" if signature.is_valid else "INVALID")
allSignaturesAreValid = allSignaturesAreValid and signature.is_valid
if allSignaturesAreValid:
print("Presentation is original, all signatures are valid.")
else:
print("Presentation has been modified.")
Obtenha uma licença gratuita
Você pode obter uma licença temporária gratuita para usar o Aspose.Slides for Python via .NET sem limitações de avaliação.
Conclusão
Neste artigo, você aprendeu como adicionar assinaturas digitais a arquivos PowerPoint PPT ou PPTX em Python. Além disso, você viu como validar as assinaturas digitais para verificar se a apresentação foi modificada ou não. Você pode explorar outros recursos do Aspose.Slides for Python usando a documentação. Além disso, você pode fazer suas perguntas em nosso fórum.