Verify Digital Signatures in Document
Leave feedback
GroupDocs.Signature provides the ability to verify digital signatures in documents. Digital signatures provide a secure way to verify the authenticity and integrity of documents.
A digital signature is a mathematical scheme for demonstrating the authenticity of digital messages or documents. It provides:
- Authentication: Confirms the identity of the signer
- Integrity: Ensures the document hasn’t been modified
- Non-repudiation: Prevents the signer from denying they signed the document
The Signature class provides the Verify method which allows you to verify digital signatures in documents. Here’s how to use it:
- Create a new instance of the Signature class and pass the source document path as a parameter.
- Instantiate the DigitalVerifyOptions object with the required options.
- Call the Verify method of the Signature class instance and pass the DigitalVerifyOptions to it.
- Process the verification results.
Here’s an example of how to verify digital signatures in a document:
from groupdocs.signature import Signature
from groupdocs.signature.options import DigitalVerifyOptions
from groupdocs.signature.domain import DigitalSignature
# Initialize Signature with input document
with Signature("sample.pdf") as signature:
# Create verification options
options = DigitalVerifyOptions()
# Verify document signatures
result = signature.verify(options)
if result.is_valid:
print("Document was verified successfully!")
print(f"Document contains {len(result.succeeded)} valid signatures")
# Process verified signatures
for digital_signature in result.succeeded:
print(f"Signature found on page {digital_signature.page_number}")
print(f"Signature time: {digital_signature.signed_on}")
print(f"Signature is valid: {digital_signature.is_valid}")
else:
print("Document verification failed!")
print(f"Document contains {len(result.failed)} invalid signatures")
The DigitalVerifyOptions class provides various properties to customize the verification process:
from groupdocs.signature import Signature
from groupdocs.signature.options import DigitalVerifyOptions
from groupdocs.signature.domain import DigitalSignature
# Initialize Signature with input document
with Signature("sample.pdf") as signature:
# Create verification options
options = DigitalVerifyOptions()
# Specify pages to verify
options.pages = [1, 2] # Verify only pages 1 and 2
# Verify document signatures
result = signature.verify(options)
if result.is_valid:
print("Document was verified successfully!")
print(f"Document contains {len(result.succeeded)} valid signatures")
# Process verified signatures
for digital_signature in result.succeeded:
print(f"Signature found on page {digital_signature.page_number}")
print(f"Signature time: {digital_signature.signed_on}")
print(f"Signature is valid: {digital_signature.is_valid}")
print(f"Signature type: {digital_signature.signature_type}")
print(f"Signature provider: {digital_signature.provider_name}")
else:
print("Document verification failed!")
print(f"Document contains {len(result.failed)} invalid signatures")
You may easily run the code above and see the feature in action in our examples:
- GroupDocs.Signature for Python via .NET Examples
- GroupDocs.Signature for Python via .NET Plugins
- GroupDocs.Signature for Python via .NET Showcase Apps
Along with full Python library we provide simple but powerful free Apps.
You are welcome to verify digital signatures in documents with our free online apps:
Was this page helpful?
Any additional feedback you'd like to share with us?
Please tell us how we can improve this page.
Thank you for your feedback!
We value your opinion. Your feedback will help us improve our documentation.