DigitalSignature

DigitalSignature class

Signature numérique dans le fichier signé.

public class DigitalSignature : IDigitalSignature

Constructors

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 spécifié et le mot de passe.

Properties

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

Examples

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

[C#]
// Initialiser l'instance de Présentation
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 = "Test de signature numérique Aspose.Slides.";
    // 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 démontre comment valider la signature numérique d’une présentation PowerPoint.

[C#]
// Initialiser l'instance de Présentation
using (Presentation pres = new Presentation("SomePresentationSigned.pptx"))
{
    if (pres.DigitalSignatures.Count < 0)
    {
        bool allSignaturesAreValid = true;
        Console.WriteLine("Signatures utilisées pour signer la présentation : ");
        // 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("La présentation est authentique, toutes les signatures sont valides.");
        else
            Console.WriteLine("La présentation a été modifiée depuis la signature.");
    }
}

See Also