Export (0) Print
Expand All

VerifyResult Enumeration

Specifies the result of a certificate or signature verification.

Namespace:  System.IO.Packaging
Assembly:  WindowsBase (in WindowsBase.dll)

public enum VerifyResult
<object property="enumerationMemberName" .../>

Member nameDescription
CertificateRequiredThe X.509 certificate is not available to verify the signature.
InvalidCertificateThe X.509 certificate is not valid.
InvalidSignatureThe signature is not valid.
NotSignedThe specified package or part has no signature.
ReferenceNotFoundA reference relationship to the signature was not found.
SuccessThe verification was successful.

The following example shows how to use the VerifyResult enumeration.

// ------------------------ ValidateSignatures ------------------------ 
/// <summary> 
///   Validates all the digital signatures of a given package.</summary> 
/// <param name="package">
///   The package for validating digital signatures.</param> 
/// <returns> 
///   true if all digital signatures are valid; otherwise false if the 
///   package is unsigned or any of the signatures are invalid.</returns> 
private static bool ValidateSignatures(Package package)
{
    if (package == null)
        throw new ArgumentNullException("ValidateSignatures(package)");

    // Create a PackageDigitalSignatureManager for the given Package.
    PackageDigitalSignatureManager dsm =
        new PackageDigitalSignatureManager(package);

    // Check to see if the package contains any signatures. 
    if (!dsm.IsSigned)
        return false;   // The package is not signed. 

    // Verify that all signatures are valid.
    VerifyResult result = dsm.VerifySignatures(false);
    if (result != VerifyResult.Success)
        return false;   // One or more digital signatures are invalid. 

    // else if (result == VerifyResult.Success) 
    return true;        // All signatures are valid.

}// end:ValidateSignatures()

For the complete sample, see Creating a Package with a Digital Signature Sample.

.NET Framework

Supported in: 4.6, 4.5, 4, 3.5, 3.0

.NET Framework Client Profile

Supported in: 4, 3.5 SP1
Show:
© 2015 Microsoft