Una firma digitale è una firma elettronica utilizzata per convalidare l’autenticità e l’integrità dei documenti digitali. Quando firmi un documento digitalmente, la firma servirà come conferma che il documento proviene da te e non è stato modificato da quando l’hai firmato.

In questo articolo, imparerai come aggiungere una firma digitale a un PowerPoint in C#.

Utilizza una libreria PowerPoint per firmare digitalmente PowerPoint

L’app Microsoft PowerPoint fornisce funzioni che consentono agli utenti di aggiungere firme digitali alle loro presentazioni PPT e PPTX.

Tuttavia, per aggiungere una firma digitale a un PowerPoint PPT o PPTX in C#, devi utilizzare Aspose.Slides per .NET. Quest’ultima è una libreria PowerPoint che ti consente di creare, modificare e manipolare presentazioni utilizzando semplici righe di codice. Per informazioni sull’installazione di Aspose.Slides per .NET, consulta questa guida all’installazione.

Ottieni un certificato di firma

Inoltre, per aggiungere una firma digitale a un documento PowerPoint, hai bisogno di un certificato di firma o certificato digitale. Tale certificato identifica e prova la tua identità. Puoi creare il tuo certificato oppure ottenerne uno da un’autorità di certificazione (che emette certificati).

Quando invii una presentazione PowerPoint che hai firmato digitalmente a qualcuno, stai effettivamente inviando a quella persona il tuo certificato e la tua chiave pubblica.

Aggiungi una firma digitale a PowerPoint in C#

Supponendo che tu abbia un certificato digitale pronto all’uso, puoi seguire questi passaggi per aggiungere una firma digitale alla tua presentazione PowerPoint:

  1. Carica il PowerPoint a cui vuoi aggiungere una firma digitale tramite la classe Presentation.
  2. Utilizzando la classe DigitalSignature, crea un oggetto firma digitale. Passa il file PFX della firma digitale e la password ad esso.
  3. Aggiungi la firma digitale alla presentazione PowerPoint.
  4. Salva la presentazione modificata.

Questo codice C# ti mostra come aggiungere una firma digitale a un PowerPoint:

using (Presentation pres = new Presentation())
{
    // Crea un oggetto DigitalSignature con il file PFX e la password PFX 
    DigitalSignature signature = new DigitalSignature("testsignature1.pfx", @"testpass1");

    // Commenti sulla nuova firma digitale
    signature.Comments = "Test di firma digitale Aspose.Slides.";

    // Aggiunge la firma digitale alla presentazione
    pres.DigitalSignatures.Add(signature);

    // Salva la presentazione modificata
    pres.Save("SomeSignedPresentation.pptx", SaveFormat.Pptx);
}

Verifica un PPT firmato digitalmente in C#

Oltre ad aggiungere una firma digitale a un PowerPoint PPT, Aspose.Slides per .NET consente anche di verificare una presentazione firmata digitalmente. L’operazione di verifica controlla essenzialmente se la presentazione è stata modificata da quando è stata firmata.

Segui questi passaggi per verificare una presentazione PowerPoint firmata digitalmente:

  1. Carica il PPT firmato digitalmente che desideri verificare tramite la classe Presentation.
  2. Controlla se il PowerPoint è firmato.
  3. Controlla se le firme (utilizzate per firmare la presentazione) sono valide.

Questo codice C# ti mostra come verificare un PowerPoint firmato digitalmente:

// Carica la presentazione
using (Presentation pres = new Presentation("SomeSignedPresentation.pptx"))
{
    if (pres.DigitalSignatures.Count > 0)
    {
        bool allSignaturesAreValid = true;

        Console.WriteLine("Firme utilizzate per firmare la presentazione: ");

        // Controlla se tutte le firme digitali sono valide
        foreach (DigitalSignature signature in pres.DigitalSignatures)
        {
            Console.WriteLine(signature.Certificate.SubjectName.Name + ", "
                    + signature.SignTime.ToString("yyyy-MM-dd HH:mm") + " -- " + (signature.IsValid ? "VALIDO" : "NON VALIDO"));
            allSignaturesAreValid &= signature.IsValid;
        }

        if (allSignaturesAreValid)
            Console.WriteLine("La presentazione è genuina. Tutte le firme sono valide.");
        else
            Console.WriteLine("La presentazione è stata modificata dopo la firma.");
    }
}

Ottieni una licenza gratuita

Vuoi testare le funzionalità di Aspose.Slides senza limitazioni? Ottieni una licenza temporanea gratuita.

Conclusione

In questo articolo, ti abbiamo mostrato come aggiungere firme digitali a presentazioni PowerPoint in C# utilizzando una potente libreria .NET. Potresti essere interessato a scoprire come proteggere con password una presentazione PowerPoint.

Per saperne di più sulle funzionalità di Aspose.Slides, consulta la nostra documentazione. Se hai domande, puoi postarle nel nostro forum.

Vedi anche