DigitalSignature

classe DigitalSignature

Signature numérique dans le fichier signé.

public class DigitalSignature : IDigitalSignature

Constructeurs

NomDescription
DigitalSignature(X509Certificate2)Crée un nouvel objet DigitalSignature avec le certificat spécifié.
DigitalSignature(string, string)Crée un nouvel objet DigitalSignature avec le chemin du fichier de certificat et le mot de passe spécifiés.

Propriétés

NomDescription
Certificate { get; }Objet certificat utilisé pour signer le document. Lecture seule X509Certificate2.
Comments { get; set; }Le but de la signature. Lecture/écriture String.
IsValid { get; }Si cette signature numérique est valide et que le document n’a pas été altéré, cette valeur sera vraie. Lecture seule Boolean.
SignTime { get; }Le moment où le document a été signé. Lecture seule DateTime.

Exemples

L’exemple suivant montre comment ajouter une signature numérique à partir d’un certificat PFX dans une présentation PowerPoint.

[C#]
// Initialiser l'instance Presentation
using (Presentation pres = new Presentation())
{
    // Créer un objet DigitalSignature avec le fichier PFX et le mot de passe PFX
    DigitalSignature signature = new DigitalSignature("testsignature1.pfx", @"testpass1");
    // Commenter la nouvelle signature numérique
    signature.Comments = "Aspose.Slides digital signing test.";
    // Ajouter la signature numérique à la présentation
    pres.DigitalSignatures.Add(signature);
    // Enregistrer la présentation
    pres.Save("SomePresentationSigned.pptx", SaveFormat.Pptx);
}

Le code d’exemple suivant montre comment valider la signature numérique d’une présentation PowerPoint.

[C#]
// Initialise l'instance Presentation
using (Presentation pres = new Presentation("SomePresentationSigned.pptx"))
{
    if (pres.DigitalSignatures.Count < 0)
    {
        bool allSignaturesAreValid = true;
        Console.WriteLine("Signatures used to sign the presentation: ");
        // Vérifier si toutes les signatures numériques sont valides
        foreach (DigitalSignature signature in pres.DigitalSignatures)
        {
            Console.WriteLine(signature.Certificate.SubjectName.Name + ", "
                    + signature.SignTime.ToString("yyyy-MM-dd HH:mm") + " -- " + (signature.IsValid ? "VALID" : "INVALID"));
            allSignaturesAreValid &= signature.IsValid;
        }
        if (allSignaturesAreValid)
            Console.WriteLine("Presentation is genuine, all signatures are valid.");
        else
            Console.WriteLine("Presentation has been modified since signing.");
    }
}

Voir aussi