DigitalSignature

DigitalSignature-Klasse

Digitale Signatur in signierter Datei.

public class DigitalSignature : IDigitalSignature

Konstruktoren

NameBeschreibung
DigitalSignature(X509Certificate2)Erstellt ein neues DigitalSignature-Objekt mit dem angegebenen Zertifikat.
DigitalSignature(string, string)Erstellt ein neues DigitalSignature-Objekt mit dem angegebenen Zertifikat, Dateipfad und Passwort.

Eigenschaften

NameBeschreibung
Certificate { get; }Zertifikatsobjekt, das verwendet wurde, um das Dokument zu signieren. Nur lesbar X509Certificate2.
Comments { get; set; }Der Zweck der Signatur. Lese-/Schreib-String.
IsValid { get; }Wenn diese digitale Signatur gültig ist und das Dokument nicht manipuliert wurde, ist dieser Wert wahr. Nur lesbar Boolean.
SignTime { get; }Der Zeitpunkt, an dem das Dokument signiert wurde. Nur lesbar DateTime.

Beispiele

Das folgende Beispiel zeigt, wie man eine digitale Signatur aus einem PFX-Zertifikat in einer PowerPoint-Präsentation hinzufügt.

[C#]
// Präsentationsinstanz initialisieren
using (Presentation pres = new Presentation())
{
    // DigitalSignature-Objekt mit PFX-Datei und PFX-Passwort erstellen
    DigitalSignature signature = new DigitalSignature("testsignature1.pfx", @"testpass1");
    // Kommentar zur neuen digitalen Signatur
    signature.Comments = "Aspose.Slides digital signing test.";
    // Digitale Signatur zur Präsentation hinzufügen
    pres.DigitalSignatures.Add(signature);
    // Präsentation speichern
    pres.Save("SomePresentationSigned.pptx", SaveFormat.Pptx);
}

Der folgende Beispielcode zeigt, wie man die digitale Signatur einer PowerPoint-Präsentation validiert.

[C#]
// Präsentationsinstanz initialisieren
using (Presentation pres = new Presentation("SomePresentationSigned.pptx"))
{
    if (pres.DigitalSignatures.Count < 0)
    {
        bool allSignaturesAreValid = true;
        Console.WriteLine("Signaturen, die zur Signatur der Präsentation verwendet wurden: ");
        // Prüfen, ob alle digitalen Signaturen gültig sind
        foreach (DigitalSignature signature in pres.DigitalSignatures)
        {
            Console.WriteLine(signature.Certificate.SubjectName.Name + ", "
                    + signature.SignTime.ToString("yyyy-MM-dd HH:mm") + " -- " + (signature.IsValid ? "GÜLTIG" : "UNGÜLTIG"));
            allSignaturesAreValid &= signature.IsValid;
        }
        if (allSignaturesAreValid)
            Console.WriteLine("Präsentation ist echt, alle Signaturen sind gültig.");
        else
            Console.WriteLine("Präsentation wurde seit der Signatur geändert.");
    }
}

Siehe auch