asp.net pdf viewer control c# : Program to create thumbnail from pdf Library SDK component asp.net .net winforms mvc SignatureLibraryUserManual0-part1703

.NET Digital Signature Library
User Manual
Introduction 
The main function of .NET Digital Signature Library is to digitally sign files in PDF, CadES or
PKCS#7 cryptographic standard (.P7S or .P7M files) using X.509 certificates stored on PFX
files, smart cards, USB tokens, HSM’s stored on Microsoft Certificate Store.
The positioning of the PDF signature appearance is configurable, plus on which pages of the
document it should appear (first page, last page or all pages). 
Also, using .NET Digital Signature Library can digitally sign Office 2007, 2010, 2013, XPS
and XML documents using X.509 certificates. Using this library you can quickly digitally
sign .docx, .xlsx, .pptx, .xps and .xml files using a simple SDK.
.NET Digital Signature Library can be used to create X.509 certificates in PFX format. Using
this library you can quickly create PFX digital certificates and custom certificates with different
Key usage or Enhanced key usage. 
The main function of X509CertificateGenerator class is to issue X.509 Version 3 digital
certificates in PFX format. Using this library you can quickly issue all kind of certificates (user,
self signed, root, time stamping, digital signature).
Links
.NET Digital Signature Library: http://www.signfiles.com/sdk/SignatureLibrary.zip
.NET Digital Signature Library main page: http://www.signfiles.com/
signature-library
/
Warning and Disclaimer
Every effort has been made to make this manual as complete and accurate as possible, but
no warranty or fitness is implied. The information provided is on an “as is” basis. The author
shall have neither liability nor responsibility to any person or entity with respect to any loss or
damages arising from the information contained in this manual.
Trademarks
.NET, Visual Studio .NET are trademarks of Microsoft Inc.
Adobe, Adobe Reader are trademarks of Adobe Systems Inc.
All other trademarks are the property of their respective owners.
Page 1 - .NET Digital Signature Library User Manual (version 2.0)
Program to create thumbnail from pdf - Draw thumbnail images for PDF in C#.net, ASP.NET, MVC, Ajax, WinForms, WPF
Support Thumbnail Generation with Various Options for Quick PDF Navigation
pdf thumbnail creator; create thumbnail jpeg from pdf
Program to create thumbnail from pdf - VB.NET PDF Thumbnail Create SDK: Draw thumbnail images for PDF in vb.net, ASP.NET, MVC, Ajax, WinForms, WPF
Support Thumbnail Generation with Various Options for Quick PDF Navigation
can't see pdf thumbnails; create thumbnails from pdf files
How to use .NET Digital Signature Library in Visual Studio................................................4
Digital Certificates.....................................................................................................................5
Digital Certificates Used for Digital Signatures..................................................................................................5
Certificates Stored on Smart Cards or USB Tokens..........................................................................................6
Create a Digital Certificate Using X509CertificateGenerator Class...................................................................7
Digitally Sign a PDF File Using a Digital Certificate Stored on a PFX File.........................................................8
Perform a Digital Signature Using a Certificate stored on a Smart Card (USB Token)......................................9
Perform a Digital Signature Without User Intervention....................................................................................10
Bypassing the Smart Card PIN........................................................................................................................11
Validating Digital Signatures in Adobe.............................................................................................................12
PDF Digital Signatures...........................................................................................................13
Loading the PDF Document.............................................................................................................................13
Digitally Sign an Encrypted PDF File...............................................................................................................13
Obtaining the Document Information (Number of Pages, Page Size)..............................................................13
Set the Digital Signature Properties (Reason, Location)..................................................................................14
Set the Digital Signature Rectangle Properties................................................................................................14
Set a Custom Digital Signature Text................................................................................................................15
Set the Text Direction on the Signature Rectangle..........................................................................................15
Set the Digital Signature Font..........................................................................................................................16
Set the Digital Signature Image.......................................................................................................................16
Set a Visible or Hidden Signature....................................................................................................................16
Hash Algorithms......................................................................................................................17
Advanced PDF Signatures (e.g. Required by Italian Law)...............................................................................18
Time Stamping.........................................................................................................................19
Time Stamp the PDF Digital Signature............................................................................................................19
Authentication With Username and Password.................................................................................................19
Authentication with a Digital Certificate............................................................................................................20
Nonce and Time Stamping Policy OID.............................................................................................................20
Hash Algorithms...............................................................................................................................................20
Validating the Time Stamping Response on Adobe.........................................................................................21
LTV Signatures (Long Term Validation)................................................................................22
Certify a PDF Digital Signature..............................................................................................23
PDF Digital Signatures and the PDF/A Standard.................................................................24
Other Features of the PDF Signatures..................................................................................25
Digitally Sign all Pages From a PDF Document...............................................................................................25
Adding Multiple Digital Signatures on the PDF Document...............................................................................25
Set an Approximate Block Size for the Digital Signature.................................................................................25
Old Style Adobe Digital Signature Appearance................................................................................................26
Include the CRL Revocation Information on the PDF Signature......................................................................27
PDF Signatures and Encryption............................................................................................28
Password Security...........................................................................................................................................28
Digital Certificate Security................................................................................................................................30
PDF Signature Code Samples...............................................................................................32
Digitally Sign All Pages From a PDF File with a Certificate Stored on PFX File..............................................32
Set a Custom Signature Rectangle and Sign Using a Smart Card Certificate.................................................32
Digitally Sign a PDF Located on the Web Only if it is not Already Signed........................................................32
Digitally Sign a PDF file with a PFX Certificate Created on the Fly..................................................................33
Set a Custom Text and Font for the Digital Signature Rectangle.....................................................................34
Add an Image on the Signature Rectangle and Save the File as PDF/A.........................................................34
Set an Invisible Signature and Certify the PDF File.........................................................................................35
Time Stamp a PDF File....................................................................................................................................35
Time Stamp a PDF file Using TSA Server Authentication................................................................................35
Digitally Sign and Time Stamp a Folder with PDF files....................................................................................36
Automatically Sign a Folder Using a Smart Card Certificate / USB Token.......................................................37
Page 2 - .NET Digital Signature Library User Manual (version 2.0)
VB.NET Image: Program for Creating Thumbnail from Documents and
language. It empowers VB developers to create thumbnail from multiple document and image formats, such as PDF, TIFF, GIF, BMP, etc. It
pdf thumbnail html; pdf thumbnails
VB.NET PDF Library SDK to view, edit, convert, process PDF file
users to perform PDF document security settings in VB.NET program. In addition, you can easily create, modify, and delete PDF annotations. PDF Thumbnail Edit.
pdf files thumbnail preview; html display pdf thumbnail
Verifying a Digital Signature.............................................................................................................................38
Merge Multiple PDF Files into a Single PDF File.............................................................................................39
Insert Texts and Images in a PDF file..............................................................................................................39
CadES and PKCS#7 Digital Signatures................................................................................41
Creating CAdES Signatures............................................................................................................................41
Creating PKCS#7 Signatures..........................................................................................................................42
Verifying CAdES/PKCS#7 Signatures.............................................................................................................43
XML Digital Signatures (XMLDSig Standard).......................................................................44
Office and XPS Digital Signatures.........................................................................................45
Digitally Sign and Verify an Office Document (.docx, .xlsx)..............................................................................45
Digitally Sign an XPS Document......................................................................................................................46
Validating Digital Certificates................................................................................................51
Local Time Validation.......................................................................................................................................51
CRL and OCSP Validation...............................................................................................................................52
Validating Digital Certificates - Code Sample...................................................................................................54
Creating Digital Certificates...................................................................................................55
Certificate Subject............................................................................................................................................55
Validity Period..................................................................................................................................................56
Key Size and Signature Algorithm...................................................................................................................57
Serial Number..................................................................................................................................................58
Friendly Name.................................................................................................................................................59
Certificate Key Usage.............................................................................................................60
Key Usage.......................................................................................................................................................60
Enhanced Key Usage......................................................................................................................................62
Critical Key Usage...........................................................................................................................................63
Issuing Digital Certificates.....................................................................................................64
Issue a Self-signed Digital Certificate..............................................................................................................64
Issue a Root Certificate...................................................................................................................................66
Issue a Digital Certificate Signed by a Root Certificate....................................................................................68
Importing Digital Certificates.................................................................................................70
Digital Certificates and Microsoft Store............................................................................................................70
Importing PFX Certificates on Microsoft Store.................................................................................................71
Trusting Certificates.........................................................................................................................................71
Importing Certificates From Code....................................................................................................................72
Issue Digital Signature Certificates..................................................................................................................73
Page 3 - .NET Digital Signature Library User Manual (version 2.0)
C# PDF Library SDK to view, edit, convert, process PDF file for C#
Capable of adding PDF file navigation features to your C# program. Tell C# users how to: create a new PDF file and load PDF from C#.NET: Edit PDF Thumbnail.
view pdf image thumbnail; how to make a thumbnail from pdf
How to C#: Basic SDK Concept of XDoc.PDF for .NET
split PDF file(s), and add, create, insert, delete add PDF document protection functionality into your C# program. You can generate thumbnail image(s) from PDF
pdf no thumbnail; create thumbnail jpg from pdf
How to use .NET Digital Signature Library in Visual Studio
– Unzip the file and copy the SignLib.dll and SignLib.xml on your project location. 
– In your project, go to References, select Add Reference..,select the SignLib.dll as
below.
Note:
SignLib.dll requires at least .NET Framework 3.5.
Page 4 - .NET Digital Signature Library User Manual (version 2.0)
Adding as reference SignLib library
How to C#: Preview Document Content Using XDoc.PowerPoint
the document content according to the preview thumbnail by the Get document preview from PowerPoint file String inputFilePath1 = Program.RootPath + "\\" 1
show pdf thumbnails in; print pdf thumbnails
VB.NET Image: Visual Basic .NET Guide to Draw Text on Image in .
Create a VB.NET imaging application in your Visual can freely use the method below in your program. powerful & profession imaging controls, PDF document, image
thumbnail view in for pdf files; enable pdf thumbnails in
Digital Certificates
Digital Certificates Used for Digital Signatures
To create a digital signature, a digital certificate is needed. The digital certificates are stored in
two places:
– in Microsoft Store (smart card certificates and USB tokens certifictes are stored here)
– in PFX on P12 files
The certificates stored on Microsoft Store are available by opening Internet Explorer – Tools
menu – Internet Options – Content tab – Certificates button (see below).
Also, the Microsoft Certificate store can be accessed using the command: Start – Run –
certmgr.msc.
For digital signatures the certificates stored on Personal tab are used. These certificates have
a public and a private key. 
The digital signature is created by using the private key of the certificate. The private key can
be stored on the file system (imported PFX files), on an cryptographic smart card (like Aladdin
eToken or SafeNet iKey) or on a HSM (Hardware Security Module). 
Another way to store a digital certificate is a PFX (or P12) file. This file contain the public and
the private key of the certificate. This file is protected by a password in order to keep safe the
key pair.
Note that a PFX file can be imported on Microsoft Store (just open the PFX file and follow the
wizard).
Page 5 - .NET Digital Signature Library User Manual (version 2.0)
Signing certificates available on Microsoft Store
How to C#: Preview Document Content Using XDoc.Word
preview the document content according to the preview thumbnail by the Get document preview from word file String inputFilePath1 = Program.RootPath + "\\" 1
pdf first page thumbnail; create pdf thumbnails
VB.NET PDF: Basic SDK Concept of XDoc.PDF
split PDF file(s), and add, create, insert, delete PDF document protection functionality into your VB.NET program. You can generate thumbnail image(s) from PDF
create thumbnail from pdf; pdf file thumbnail preview
Certificates Stored on Smart Cards or USB Tokens
If your certificate is stored on a smart card or USB token (like Aladdin eToken), the certificate
must  appear on Microsoft Certifictae Store in order to be used by the library.
If the certificate not appears on Microsoft Store, you must ask your vendor about how to
import the certificate on the MS Store. Usulally, the smart card driver or the middleware
atutomatically install the certificate on Microsoft Certificate Store.
You should also look at the middleware options, like below:
Page 6 - .NET Digital Signature Library User Manual (version 2.0)
Create a Digital Certificate Using X509CertificateGenerator Class
Every certificate must have a Subject. The Subject can contains Unicode characters like ä,æ,
£, Ñ.
Every certificate has a validity period. A certificate becomes invalid after it expires. 
The default value of ValidFrom property is DateTime.Now (curent date).
The default value of ValidTo property is DateTime.Now.AddYears(1).
Observation: On the demo version of the library, the certificate validity cannot exceed
30 days (this is the single limitation of the library on the demo version).
using SignLib.Certificates;
X509CertificateGenerator cert = new X509CertificateGenerator("serial number");
//set the certificate Subject
cert.Subject = "CN=Certificate name,E=name@email.com,O=Organization";
//the certificate becomes valid after 4th February 2012
cert.ValidFrom = new DateTime(2012, 2, 4);
//the certificate will expires on 25th February 2012
cert.ValidTo = new DateTime(2012, 2, 25);
//save the PFX certificate on a file
File.WriteAllBytes("c:\\cert.pfx", cert.GenerateCertificate("password"false));
More details about X509CertificateGenerator class can be found on the corresponding
section below.
Page 7 - .NET Digital Signature Library User Manual (version 2.0)
Digitally Sign a PDF File Using a Digital Certificate Stored on a PFX File
The code below demonstrates how to digitally sign a PDF file using a PFX certificate.
using SignLib.Certificates;
using SignLib.Pdf;
PdfSignature ps = new PdfSignature("serial number");
//load the PDF document
ps.LoadPdfDocument("d:\\source.pdf");
ps.SignaturePosition = SignaturePosition.TopRight;
ps.SigningReason = "I approve this document";
ps.SignaturePosition = SignaturePosition.TopRight;
//Load the signature certificate from a PFX or P12 file
ps.DigitalSignatureCertificate = 
DigitalCertificate.LoadCertificate("d:\\cert.pfx""123456");
//write the signed file
File.WriteAllBytes("d:\\dest.pdf", ps.ApplyDigitalSignature());
When the dest.pdf is opened in Adobe Reader, a signature rectangle appear on the top right
corner.
When the signature rectangle is clicked, the digital signature information appears.
Page 8 - .NET Digital Signature Library User Manual (version 2.0)
Digital signature properties on Adobe Reader
Perform a Digital Signature Using a Certificate stored on a Smart Card (USB Token)
To digitally sign a PDF using a certificate stored on the smart card, it must be first installed on
Microsoft Certificate Store (see the section below: Certificates Stored on Smart Cards or USB
Tokens)
using SignLib.Certificates;
using SignLib.Pdf;
PdfSignature ps = new PdfSignature("serial number");
//load the PDF document
ps.LoadPdfDocument("d:\\source.pdf");
ps.SignaturePosition = SignaturePosition.TopRight;
ps.SigningReason = "I approve this document";
ps.SignaturePosition = SignaturePosition.TopRight;
//Load the signature certificate from Microsoft Certificate Store
ps.DigitalSignatureCertificate = DigitalCertificate.LoadCertificate(false""
"Select the certificate""");
//write the signed file
File.WriteAllBytes("d:\\dest.pdf", ps.ApplyDigitalSignature());
When the application is launched, the user must select the digital certificate from all
certificates available in Personal tab.
Page 9 - .NET Digital Signature Library User Manual (version 2.0)
Digital certificates selection window
Perform a Digital Signature Without User Intervention
In case the digital signature must be made without user intervention (automate the entire
digital signature process), the certificate must be selected using an unique criteria.
If the desired certificate has in the Subject field the value E = email@email.com, you can use
the following code to automatically use the certificate for the signing operation.
using SignLib.Certificates;
using SignLib.Pdf;
PdfSignature ps = new PdfSignature("serial number");
//load the PDF document
ps.LoadPdfDocument("d:\\source.pdf");
ps.SignaturePosition = SignaturePosition.TopRight;
ps.SigningReason = "I approve this document";
ps.SignaturePosition = SignaturePosition.TopLeft;
//Load the certificate from Microsoft Certificate Store without user intervention
ps.DigitalSignatureCertificate = DigitalCertificate.LoadCertificate(false
DigitalCertificateSearchCriteria.EmailE, "email@email.com");
//write the signed file
File.WriteAllBytes("d:\\source[signed].pdf", ps.ApplyDigitalSignature());
Note that there are a lot of criteria to automatically select your certificate (Common Name,
Serial Number, Thumbprint, etc.).
Note: Be carefull if Serial Number criteria is used. On copy-paste operation, an non-printable
character will be added.
Page 10 - .NET Digital Signature Library User Manual (version 2.0)
Documents you may be interested
Documents you may be interested