SlideShare a Scribd company logo
Protecting your PDF PDF and digital signatures
Protecting your PDF iText in Action, chapter 12 12.1: Adding Metadata 12.2: PDF and compression 12.3: Encrypting a PDF document 12.4: Digital signatures, OCSP, and timestamping
Structure of a PDF file %PDF-1.x %âãÏÓ 1 0 obj ... 2 0 obj ... (Hello World) Tj ... xref 0 81 0000000000 65535 f 0000000015 00000 n ... trailer << ... >> startxref 15787 %%EOF A PDF file consists of a collection of objects. A PDF files starts with %PDF-1.x and ends with %%EOF
Changing the content of a PDF file %PDF-1.x %âãÏÓ 1 0 obj ... 2 0 obj ... (Hello People) Tj ... 121 0 obj ... xref 0 85 0000000000 65535 f 0000000015 00000 n ... trailer << ... >> startxref 16157 %%EOF You can use software to change the content of a PDF document: change a stream, add objects (e.g annotations), and so on.
What are our concerns? Integrity—we want assurance that the document hasn’t been changed somewhere in the workflow Authenticity—we want assurance that the author of the document is who we think it is (and not somebody else) Non-repudiation—we want assurance that the author can’t deny his authorship.
Integrity A digest is computed over a range of bytes from the file. This ByteRange is signed using the private key of the sender. This digest and the sender’s Certificate are embedded in the PDF. The receiver compares the embedded digest with the digest of the content.
Digital Signature field %PDF-1.x %âãÏÓ 1 0 obj ... 2 0 obj <<   /Type/Sig /Contents/... >> ... xref 0 81 0000000000 65535 f ... trailer << ... >> startxref 15787 %%EOF A signed PDF file contains a signature dictionary. The binary value of the PDF signature is placed into the Contents entry of a signature dictionary.
Embedded Digital Signature %PDF-1.x %âãÏÓ ... 2 0 obj <<... /Type/Sig /Contents< The digital signature isn’t part of the ByteRange. There are no bytes in the PDF that aren’t covered, other than the PDF signature itself. DIGITAL SIGNATURE > ... >> xref 0 81 0000000000 65535 f ... trailer << ... >> startxref 15787 %%EOF
Cryptography Symmetric key algorithms: the same key is used to encrypt and decrypt content. Asymmetric key algorithms: a public key is used to encrypt, a private key is used to decrypt (for encryption purposes). Or, a private key is used to encrypt, a public key is used to decrypt (for digital signatures).
Obtain a public/private key Create your own keystore (with the private key) and self-signed certificate (with the public key); e.g. using keytool Ask a Certificate Authority (CA) to sign your certificate to prove your identity A Certificate signed by a CA’s private key can be decrypted with the CA’s root certificate (stored in Adobe Reader)
Digital Signatures Stored on the producer’s side Certificate Public key Identity info Private key Original document 	ByteRange Received by the consumer %PDF-1.x ... /ByteRange ... /Contents< DIGITAL SIGNATURE ,[object Object]
Signed Message Digest
Timestamp>... %%EOF
Possible architecture Application Device %PDF-1.x ... DIGITAL SIGNATURE ,[object Object]
Signed Message Digest
Timestamp... %%EOF Existing PDF document Created by PDF producer Fill out signature field Using iText Externally sign digest created with iText
Displaying digital signatures Digital signatures are part of the file structure: it isn’t mandatory for a digital signature to be displayed on a page. Digital signatures are listed in the signature panel. A digital signature can be visualized as a field widget (this widget can consist of graphics, text,...).
Invisible signature
Visible signature
Invalid signature
Custom signature
Important note A signature signs the complete document. The concept of signing separate pages in a document (“to initial a document”) doesn’t exist in PDF. Legal issue: how to prove that a person who signed for approval has read the complete document?
Serial signatures %PDF-1.x %Originaldocument DIGITAL SIGNATURE 1 ... %%EOF A PDF document can be signed more than once, but parallel signatures aren’t supported, only serial signatures: additional signatures sign all previous signatures. Rev1 % Additional content 1 ... DIGITAL SIGNATURE 2 ... %%EOF Rev2 % Additional content 2 ... DIGITAL SIGNATURE 3 ... %%EOF Rev3
Two signatures
Types of signatures Certification (aka author) signature— only possible for the first revision; involves modification detection permissions. Approval (aka recipient) signature— workflow with subsequent signers. Usage Rights signature— involving Adobe’s private key to Reader enable a PDF (off-topic here).
Problems solved? Integrity—signature is invalidated if bytes are changed Authenticity—Certificate Authority verifies the identity of the owner of the private key Non-repudiation—the author is the only one who has access to the private key
What if? What if the author’s private key is compromised? What if the author falsifies the creation date of the document? What if the certificate expires too soon?
Revocation checking Certificate Revocation List (CRL) The certificate is checked against a list of revoked certificates. Online Certificate Status Protocol (OCSP) The revokation status is obtained from a server. If the certificate was revoked, the signature is invalid.
OCSP

More Related Content

What's hot

public key infrastructure
public key infrastructurepublic key infrastructure
public key infrastructure
vimal kumar
 
Presentation on digital signatures & digital certificates
Presentation on digital signatures & digital certificatesPresentation on digital signatures & digital certificates
Presentation on digital signatures & digital certificates
Vivaka Nand
 
Public key Infrastructure (PKI)
Public key Infrastructure (PKI)Public key Infrastructure (PKI)
Public key Infrastructure (PKI)
Venkatesh Jambulingam
 
PKI and Applications
PKI and ApplicationsPKI and Applications
PKI and ApplicationsSvetlin Nakov
 
Marco Casassa Mont: Pki overview
Marco Casassa Mont: Pki overviewMarco Casassa Mont: Pki overview
Marco Casassa Mont: Pki overview
Information Security Awareness Group
 
Ds over
Ds overDs over
Ds over
jolly9293
 
Cryptography Simplified - Symmetric Key, Public Key, PKI, Digital Signature, ...
Cryptography Simplified - Symmetric Key, Public Key, PKI, Digital Signature, ...Cryptography Simplified - Symmetric Key, Public Key, PKI, Digital Signature, ...
Cryptography Simplified - Symmetric Key, Public Key, PKI, Digital Signature, ...
Muhammad Faisal Naqvi, CISSP, CISA, AMBCI, ITIL, ISMS LA n Master
 
Digital Signatures in PDF: how it's done
Digital Signatures in PDF: how it's doneDigital Signatures in PDF: how it's done
Digital Signatures in PDF: how it's done
Bruno Lowagie
 
Digital signature & eSign overview
Digital signature & eSign overviewDigital signature & eSign overview
Digital signature & eSign overview
Rishi Pathak
 
Digital Signature ppt
Digital Signature pptDigital Signature ppt
Digital certificates
Digital certificatesDigital certificates
Digital certificatesSimmi Kamra
 
DIGITAL SIGNATURE
DIGITAL SIGNATUREDIGITAL SIGNATURE
DIGITAL SIGNATUREravijain90
 
PKI Industry growth in Bangladesh
PKI Industry growth in BangladeshPKI Industry growth in Bangladesh
PKI Industry growth in Bangladesh
Bangladesh Network Operators Group
 
Digital Signature
Digital SignatureDigital Signature
Digital SignatureRahul Yadav
 
Digital signature 2
Digital signature 2Digital signature 2
Digital signature 2Ankita Dave
 
Introduction To PKI Technology
Introduction To PKI TechnologyIntroduction To PKI Technology
Introduction To PKI Technology
Sylvain Maret
 
Scott Rea - IoT: Taking PKI Where No PKI Has Gone Before
Scott Rea - IoT: Taking PKI Where No PKI Has Gone BeforeScott Rea - IoT: Taking PKI Where No PKI Has Gone Before
Scott Rea - IoT: Taking PKI Where No PKI Has Gone Before
DigiCert, Inc.
 
Digital certificate & signature
Digital certificate & signatureDigital certificate & signature
Digital certificate & signatureNetri Chowdhary
 

What's hot (20)

public key infrastructure
public key infrastructurepublic key infrastructure
public key infrastructure
 
Presentation on digital signatures & digital certificates
Presentation on digital signatures & digital certificatesPresentation on digital signatures & digital certificates
Presentation on digital signatures & digital certificates
 
Public key Infrastructure (PKI)
Public key Infrastructure (PKI)Public key Infrastructure (PKI)
Public key Infrastructure (PKI)
 
SSl and certificates
SSl and certificatesSSl and certificates
SSl and certificates
 
PKI and Applications
PKI and ApplicationsPKI and Applications
PKI and Applications
 
Marco Casassa Mont: Pki overview
Marco Casassa Mont: Pki overviewMarco Casassa Mont: Pki overview
Marco Casassa Mont: Pki overview
 
Ds over
Ds overDs over
Ds over
 
Cryptography Simplified - Symmetric Key, Public Key, PKI, Digital Signature, ...
Cryptography Simplified - Symmetric Key, Public Key, PKI, Digital Signature, ...Cryptography Simplified - Symmetric Key, Public Key, PKI, Digital Signature, ...
Cryptography Simplified - Symmetric Key, Public Key, PKI, Digital Signature, ...
 
Digital Signatures in PDF: how it's done
Digital Signatures in PDF: how it's doneDigital Signatures in PDF: how it's done
Digital Signatures in PDF: how it's done
 
Digital signature & eSign overview
Digital signature & eSign overviewDigital signature & eSign overview
Digital signature & eSign overview
 
Digital Signature ppt
Digital Signature pptDigital Signature ppt
Digital Signature ppt
 
Digital certificates
Digital certificatesDigital certificates
Digital certificates
 
DIGITAL SIGNATURE
DIGITAL SIGNATUREDIGITAL SIGNATURE
DIGITAL SIGNATURE
 
PKI Industry growth in Bangladesh
PKI Industry growth in BangladeshPKI Industry growth in Bangladesh
PKI Industry growth in Bangladesh
 
Digital Signature
Digital SignatureDigital Signature
Digital Signature
 
Digital signature 2
Digital signature 2Digital signature 2
Digital signature 2
 
Pki and OpenSSL
Pki and OpenSSLPki and OpenSSL
Pki and OpenSSL
 
Introduction To PKI Technology
Introduction To PKI TechnologyIntroduction To PKI Technology
Introduction To PKI Technology
 
Scott Rea - IoT: Taking PKI Where No PKI Has Gone Before
Scott Rea - IoT: Taking PKI Where No PKI Has Gone BeforeScott Rea - IoT: Taking PKI Where No PKI Has Gone Before
Scott Rea - IoT: Taking PKI Where No PKI Has Gone Before
 
Digital certificate & signature
Digital certificate & signatureDigital certificate & signature
Digital certificate & signature
 

Viewers also liked

Digital Signatures: how it's done in PDF
Digital Signatures: how it's done in PDFDigital Signatures: how it's done in PDF
Digital Signatures: how it's done in PDF
iText Group nv
 
road under bridge
road under bridgeroad under bridge
road under bridge
Pvrtechnologies Nellore
 
Munger rail cum road bridge
Munger rail cum road bridgeMunger rail cum road bridge
Munger rail cum road bridge
jaiveer singh
 
Calculation note suez canal cable stayed bridge
Calculation note suez canal cable stayed bridgeCalculation note suez canal cable stayed bridge
Calculation note suez canal cable stayed bridgeMohammed Abdelkawy
 
(2015)wind induced motion seminar
(2015)wind induced motion seminar(2015)wind induced motion seminar
(2015)wind induced motion seminar
pranavbalkipsb
 
Academic performance correlation with the qualification of Final Projects in ...
Academic performance correlation with the qualification of Final Projects in ...Academic performance correlation with the qualification of Final Projects in ...
Academic performance correlation with the qualification of Final Projects in ...
Technological Ecosystems for Enhancing Multiculturality
 
Transport enggineering
Transport enggineeringTransport enggineering
Transport enggineering
Aparna Sharma
 
Underground construction Techniques civil final year seminar
Underground construction Techniques civil final year seminarUnderground construction Techniques civil final year seminar
Underground construction Techniques civil final year seminar
Pavan Kumar N
 

Viewers also liked (8)

Digital Signatures: how it's done in PDF
Digital Signatures: how it's done in PDFDigital Signatures: how it's done in PDF
Digital Signatures: how it's done in PDF
 
road under bridge
road under bridgeroad under bridge
road under bridge
 
Munger rail cum road bridge
Munger rail cum road bridgeMunger rail cum road bridge
Munger rail cum road bridge
 
Calculation note suez canal cable stayed bridge
Calculation note suez canal cable stayed bridgeCalculation note suez canal cable stayed bridge
Calculation note suez canal cable stayed bridge
 
(2015)wind induced motion seminar
(2015)wind induced motion seminar(2015)wind induced motion seminar
(2015)wind induced motion seminar
 
Academic performance correlation with the qualification of Final Projects in ...
Academic performance correlation with the qualification of Final Projects in ...Academic performance correlation with the qualification of Final Projects in ...
Academic performance correlation with the qualification of Final Projects in ...
 
Transport enggineering
Transport enggineeringTransport enggineering
Transport enggineering
 
Underground construction Techniques civil final year seminar
Underground construction Techniques civil final year seminarUnderground construction Techniques civil final year seminar
Underground construction Techniques civil final year seminar
 

Similar to PDF Digital signatures

The Best Practice with Code Signing Certificates - CodeSignCert.com
The Best Practice with Code Signing Certificates - CodeSignCert.comThe Best Practice with Code Signing Certificates - CodeSignCert.com
The Best Practice with Code Signing Certificates - CodeSignCert.com
Kayra Obrain
 
The Best Practices of Symantec Code Signing - RapidSSLonline
The Best Practices of Symantec Code Signing - RapidSSLonlineThe Best Practices of Symantec Code Signing - RapidSSLonline
The Best Practices of Symantec Code Signing - RapidSSLonline
RapidSSLOnline.com
 
BSides London 2015 - Proprietary network protocols - risky business on the wire.
BSides London 2015 - Proprietary network protocols - risky business on the wire.BSides London 2015 - Proprietary network protocols - risky business on the wire.
BSides London 2015 - Proprietary network protocols - risky business on the wire.
Jakub Kałużny
 
Digital certificates
Digital certificatesDigital certificates
Digital certificates
DouglasPickett
 
SecureOTP: Total One-Time-Password Solution
SecureOTP: Total One-Time-Password SolutionSecureOTP: Total One-Time-Password Solution
SecureOTP: Total One-Time-Password SolutionRafidah Ariffin
 
Why And When Should We Consider Stream Processing In Our Solutions Teqnation ...
Why And When Should We Consider Stream Processing In Our Solutions Teqnation ...Why And When Should We Consider Stream Processing In Our Solutions Teqnation ...
Why And When Should We Consider Stream Processing In Our Solutions Teqnation ...
Soroosh Khodami
 
Shameful Secrets of Proprietary Network Protocols - OWASP AppSec EU 2014
Shameful Secrets of Proprietary Network Protocols - OWASP AppSec EU 2014Shameful Secrets of Proprietary Network Protocols - OWASP AppSec EU 2014
Shameful Secrets of Proprietary Network Protocols - OWASP AppSec EU 2014
Jakub Kałużny
 
Eliminating Secret Sprawl in the Cloud with HashiCorp Vault - 07.11.2018
Eliminating Secret Sprawl in the Cloud with HashiCorp Vault - 07.11.2018Eliminating Secret Sprawl in the Cloud with HashiCorp Vault - 07.11.2018
Eliminating Secret Sprawl in the Cloud with HashiCorp Vault - 07.11.2018
HashiCorp
 
Back-2-Basics: Exception & Event Instrumentation in .NET
Back-2-Basics: Exception & Event Instrumentation in .NETBack-2-Basics: Exception & Event Instrumentation in .NET
Back-2-Basics: Exception & Event Instrumentation in .NET
David McCarter
 
Back-2-Basics: Exception & Event Instrumentation in .NET
Back-2-Basics: Exception & Event Instrumentation in .NETBack-2-Basics: Exception & Event Instrumentation in .NET
Back-2-Basics: Exception & Event Instrumentation in .NET
David McCarter
 
CONFidence 2014: Jakub Kałużny: Shameful secrets of proprietary protocols
CONFidence 2014: Jakub Kałużny: Shameful secrets of proprietary protocolsCONFidence 2014: Jakub Kałużny: Shameful secrets of proprietary protocols
CONFidence 2014: Jakub Kałużny: Shameful secrets of proprietary protocols
PROIDEA
 
[Cluj] Turn SSL ON
[Cluj] Turn SSL ON[Cluj] Turn SSL ON
[Cluj] Turn SSL ON
OWASP EEE
 
Secure 3 kany-vanda
Secure 3 kany-vandaSecure 3 kany-vanda
Secure 3 kany-vanda
Vanda KANY
 
Adobe PDF and LiveCycle ES Security
Adobe PDF and LiveCycle ES SecurityAdobe PDF and LiveCycle ES Security
Adobe PDF and LiveCycle ES Security
guest2a5a03
 
#Morecrypto 1.8 - with introduction to TLS
#Morecrypto 1.8 - with introduction to TLS#Morecrypto 1.8 - with introduction to TLS
#Morecrypto 1.8 - with introduction to TLS
Olle E Johansson
 
Ssl in a nutshell
Ssl in a nutshellSsl in a nutshell
Ssl in a nutshell
Frank Kelly
 
#Morecrypto (with tis) - version 2.2
#Morecrypto (with tis) - version 2.2#Morecrypto (with tis) - version 2.2
#Morecrypto (with tis) - version 2.2
Olle E Johansson
 
Introduction to Public Key Infrastructure
Introduction to Public Key InfrastructureIntroduction to Public Key Infrastructure
Introduction to Public Key Infrastructure
Theo Gravity
 
Shameful secrets of proprietary network protocols
Shameful secrets of proprietary network protocolsShameful secrets of proprietary network protocols
Shameful secrets of proprietary network protocols
Slawomir Jasek
 

Similar to PDF Digital signatures (20)

The Best Practice with Code Signing Certificates - CodeSignCert.com
The Best Practice with Code Signing Certificates - CodeSignCert.comThe Best Practice with Code Signing Certificates - CodeSignCert.com
The Best Practice with Code Signing Certificates - CodeSignCert.com
 
The Best Practices of Symantec Code Signing - RapidSSLonline
The Best Practices of Symantec Code Signing - RapidSSLonlineThe Best Practices of Symantec Code Signing - RapidSSLonline
The Best Practices of Symantec Code Signing - RapidSSLonline
 
BSides London 2015 - Proprietary network protocols - risky business on the wire.
BSides London 2015 - Proprietary network protocols - risky business on the wire.BSides London 2015 - Proprietary network protocols - risky business on the wire.
BSides London 2015 - Proprietary network protocols - risky business on the wire.
 
Digital certificates
Digital certificatesDigital certificates
Digital certificates
 
SecureOTP: Total One-Time-Password Solution
SecureOTP: Total One-Time-Password SolutionSecureOTP: Total One-Time-Password Solution
SecureOTP: Total One-Time-Password Solution
 
SSL-image
SSL-imageSSL-image
SSL-image
 
Why And When Should We Consider Stream Processing In Our Solutions Teqnation ...
Why And When Should We Consider Stream Processing In Our Solutions Teqnation ...Why And When Should We Consider Stream Processing In Our Solutions Teqnation ...
Why And When Should We Consider Stream Processing In Our Solutions Teqnation ...
 
Shameful Secrets of Proprietary Network Protocols - OWASP AppSec EU 2014
Shameful Secrets of Proprietary Network Protocols - OWASP AppSec EU 2014Shameful Secrets of Proprietary Network Protocols - OWASP AppSec EU 2014
Shameful Secrets of Proprietary Network Protocols - OWASP AppSec EU 2014
 
Eliminating Secret Sprawl in the Cloud with HashiCorp Vault - 07.11.2018
Eliminating Secret Sprawl in the Cloud with HashiCorp Vault - 07.11.2018Eliminating Secret Sprawl in the Cloud with HashiCorp Vault - 07.11.2018
Eliminating Secret Sprawl in the Cloud with HashiCorp Vault - 07.11.2018
 
Back-2-Basics: Exception & Event Instrumentation in .NET
Back-2-Basics: Exception & Event Instrumentation in .NETBack-2-Basics: Exception & Event Instrumentation in .NET
Back-2-Basics: Exception & Event Instrumentation in .NET
 
Back-2-Basics: Exception & Event Instrumentation in .NET
Back-2-Basics: Exception & Event Instrumentation in .NETBack-2-Basics: Exception & Event Instrumentation in .NET
Back-2-Basics: Exception & Event Instrumentation in .NET
 
CONFidence 2014: Jakub Kałużny: Shameful secrets of proprietary protocols
CONFidence 2014: Jakub Kałużny: Shameful secrets of proprietary protocolsCONFidence 2014: Jakub Kałużny: Shameful secrets of proprietary protocols
CONFidence 2014: Jakub Kałużny: Shameful secrets of proprietary protocols
 
[Cluj] Turn SSL ON
[Cluj] Turn SSL ON[Cluj] Turn SSL ON
[Cluj] Turn SSL ON
 
Secure 3 kany-vanda
Secure 3 kany-vandaSecure 3 kany-vanda
Secure 3 kany-vanda
 
Adobe PDF and LiveCycle ES Security
Adobe PDF and LiveCycle ES SecurityAdobe PDF and LiveCycle ES Security
Adobe PDF and LiveCycle ES Security
 
#Morecrypto 1.8 - with introduction to TLS
#Morecrypto 1.8 - with introduction to TLS#Morecrypto 1.8 - with introduction to TLS
#Morecrypto 1.8 - with introduction to TLS
 
Ssl in a nutshell
Ssl in a nutshellSsl in a nutshell
Ssl in a nutshell
 
#Morecrypto (with tis) - version 2.2
#Morecrypto (with tis) - version 2.2#Morecrypto (with tis) - version 2.2
#Morecrypto (with tis) - version 2.2
 
Introduction to Public Key Infrastructure
Introduction to Public Key InfrastructureIntroduction to Public Key Infrastructure
Introduction to Public Key Infrastructure
 
Shameful secrets of proprietary network protocols
Shameful secrets of proprietary network protocolsShameful secrets of proprietary network protocols
Shameful secrets of proprietary network protocols
 

More from Bruno Lowagie

The Dark Magic of Start-Up Valuation
The Dark Magic of Start-Up ValuationThe Dark Magic of Start-Up Valuation
The Dark Magic of Start-Up Valuation
Bruno Lowagie
 
Open Source Survival: A Story from the Trenches
Open Source Survival: A Story from the TrenchesOpen Source Survival: A Story from the Trenches
Open Source Survival: A Story from the Trenches
Bruno Lowagie
 
Entreprenerd: presenting the book
Entreprenerd: presenting the bookEntreprenerd: presenting the book
Entreprenerd: presenting the book
Bruno Lowagie
 
The Secret of your Success
The Secret of your SuccessThe Secret of your Success
The Secret of your Success
Bruno Lowagie
 
Blockchain: use cases for the future
Blockchain: use cases for the futureBlockchain: use cases for the future
Blockchain: use cases for the future
Bruno Lowagie
 
Blockchain Fundamentals
Blockchain FundamentalsBlockchain Fundamentals
Blockchain Fundamentals
Bruno Lowagie
 
How can large open source projects be monetized?
How can large open source projects be monetized?How can large open source projects be monetized?
How can large open source projects be monetized?
Bruno Lowagie
 
Open source: an introduction to IP and Legal
Open source: an introduction to IP and LegalOpen source: an introduction to IP and Legal
Open source: an introduction to IP and Legal
Bruno Lowagie
 
How can large open source projects be monetized?
How can large open source projects be monetized?How can large open source projects be monetized?
How can large open source projects be monetized?
Bruno Lowagie
 
Waarom iText de Leeuw van de Export 2016 moet winnen
Waarom iText de Leeuw van de Export 2016 moet winnenWaarom iText de Leeuw van de Export 2016 moet winnen
Waarom iText de Leeuw van de Export 2016 moet winnen
Bruno Lowagie
 
Belgium and the US: a mutual introduction
Belgium and the US: a mutual introductionBelgium and the US: a mutual introduction
Belgium and the US: a mutual introduction
Bruno Lowagie
 
Four failures and one hit
Four failures and one hitFour failures and one hit
Four failures and one hit
Bruno Lowagie
 
Startup Legal and IP
Startup Legal and IPStartup Legal and IP
Startup Legal and IP
Bruno Lowagie
 
Startup Weekend Ghent
Startup Weekend GhentStartup Weekend Ghent
Startup Weekend Ghent
Bruno Lowagie
 
Doing business in the US: Yes, You Can!
Doing business in the US: Yes, You Can!Doing business in the US: Yes, You Can!
Doing business in the US: Yes, You Can!
Bruno Lowagie
 
Community Leadership Summit - Calistoga March 2013
Community Leadership Summit - Calistoga March 2013Community Leadership Summit - Calistoga March 2013
Community Leadership Summit - Calistoga March 2013
Bruno Lowagie
 
Bizcamp #8: The Founder's Dilemmas, Control vs. Wealth decisions
Bizcamp #8: The Founder's Dilemmas, Control vs. Wealth decisionsBizcamp #8: The Founder's Dilemmas, Control vs. Wealth decisions
Bizcamp #8: The Founder's Dilemmas, Control vs. Wealth decisions
Bruno Lowagie
 
Kruispunt Brugsepoortstraat
Kruispunt BrugsepoortstraatKruispunt Brugsepoortstraat
Kruispunt Brugsepoortstraat
Bruno Lowagie
 
GentM #9: Business Angels
GentM #9: Business AngelsGentM #9: Business Angels
GentM #9: Business Angels
Bruno Lowagie
 
De lijn
De lijnDe lijn
De lijn
Bruno Lowagie
 

More from Bruno Lowagie (20)

The Dark Magic of Start-Up Valuation
The Dark Magic of Start-Up ValuationThe Dark Magic of Start-Up Valuation
The Dark Magic of Start-Up Valuation
 
Open Source Survival: A Story from the Trenches
Open Source Survival: A Story from the TrenchesOpen Source Survival: A Story from the Trenches
Open Source Survival: A Story from the Trenches
 
Entreprenerd: presenting the book
Entreprenerd: presenting the bookEntreprenerd: presenting the book
Entreprenerd: presenting the book
 
The Secret of your Success
The Secret of your SuccessThe Secret of your Success
The Secret of your Success
 
Blockchain: use cases for the future
Blockchain: use cases for the futureBlockchain: use cases for the future
Blockchain: use cases for the future
 
Blockchain Fundamentals
Blockchain FundamentalsBlockchain Fundamentals
Blockchain Fundamentals
 
How can large open source projects be monetized?
How can large open source projects be monetized?How can large open source projects be monetized?
How can large open source projects be monetized?
 
Open source: an introduction to IP and Legal
Open source: an introduction to IP and LegalOpen source: an introduction to IP and Legal
Open source: an introduction to IP and Legal
 
How can large open source projects be monetized?
How can large open source projects be monetized?How can large open source projects be monetized?
How can large open source projects be monetized?
 
Waarom iText de Leeuw van de Export 2016 moet winnen
Waarom iText de Leeuw van de Export 2016 moet winnenWaarom iText de Leeuw van de Export 2016 moet winnen
Waarom iText de Leeuw van de Export 2016 moet winnen
 
Belgium and the US: a mutual introduction
Belgium and the US: a mutual introductionBelgium and the US: a mutual introduction
Belgium and the US: a mutual introduction
 
Four failures and one hit
Four failures and one hitFour failures and one hit
Four failures and one hit
 
Startup Legal and IP
Startup Legal and IPStartup Legal and IP
Startup Legal and IP
 
Startup Weekend Ghent
Startup Weekend GhentStartup Weekend Ghent
Startup Weekend Ghent
 
Doing business in the US: Yes, You Can!
Doing business in the US: Yes, You Can!Doing business in the US: Yes, You Can!
Doing business in the US: Yes, You Can!
 
Community Leadership Summit - Calistoga March 2013
Community Leadership Summit - Calistoga March 2013Community Leadership Summit - Calistoga March 2013
Community Leadership Summit - Calistoga March 2013
 
Bizcamp #8: The Founder's Dilemmas, Control vs. Wealth decisions
Bizcamp #8: The Founder's Dilemmas, Control vs. Wealth decisionsBizcamp #8: The Founder's Dilemmas, Control vs. Wealth decisions
Bizcamp #8: The Founder's Dilemmas, Control vs. Wealth decisions
 
Kruispunt Brugsepoortstraat
Kruispunt BrugsepoortstraatKruispunt Brugsepoortstraat
Kruispunt Brugsepoortstraat
 
GentM #9: Business Angels
GentM #9: Business AngelsGentM #9: Business Angels
GentM #9: Business Angels
 
De lijn
De lijnDe lijn
De lijn
 

Recently uploaded

Elevating Tactical DDD Patterns Through Object Calisthenics
Elevating Tactical DDD Patterns Through Object CalisthenicsElevating Tactical DDD Patterns Through Object Calisthenics
Elevating Tactical DDD Patterns Through Object Calisthenics
Dorra BARTAGUIZ
 
Epistemic Interaction - tuning interfaces to provide information for AI support
Epistemic Interaction - tuning interfaces to provide information for AI supportEpistemic Interaction - tuning interfaces to provide information for AI support
Epistemic Interaction - tuning interfaces to provide information for AI support
Alan Dix
 
Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...
Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...
Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...
Ramesh Iyer
 
Accelerate your Kubernetes clusters with Varnish Caching
Accelerate your Kubernetes clusters with Varnish CachingAccelerate your Kubernetes clusters with Varnish Caching
Accelerate your Kubernetes clusters with Varnish Caching
Thijs Feryn
 
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...
UiPathCommunity
 
Assuring Contact Center Experiences for Your Customers With ThousandEyes
Assuring Contact Center Experiences for Your Customers With ThousandEyesAssuring Contact Center Experiences for Your Customers With ThousandEyes
Assuring Contact Center Experiences for Your Customers With ThousandEyes
ThousandEyes
 
Quantum Computing: Current Landscape and the Future Role of APIs
Quantum Computing: Current Landscape and the Future Role of APIsQuantum Computing: Current Landscape and the Future Role of APIs
Quantum Computing: Current Landscape and the Future Role of APIs
Vlad Stirbu
 
Introduction to CHERI technology - Cybersecurity
Introduction to CHERI technology - CybersecurityIntroduction to CHERI technology - Cybersecurity
Introduction to CHERI technology - Cybersecurity
mikeeftimakis1
 
Securing your Kubernetes cluster_ a step-by-step guide to success !
Securing your Kubernetes cluster_ a step-by-step guide to success !Securing your Kubernetes cluster_ a step-by-step guide to success !
Securing your Kubernetes cluster_ a step-by-step guide to success !
KatiaHIMEUR1
 
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdf
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdfFIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdf
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdf
FIDO Alliance
 
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdfFIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance
 
PCI PIN Basics Webinar from the Controlcase Team
PCI PIN Basics Webinar from the Controlcase TeamPCI PIN Basics Webinar from the Controlcase Team
PCI PIN Basics Webinar from the Controlcase Team
ControlCase
 
By Design, not by Accident - Agile Venture Bolzano 2024
By Design, not by Accident - Agile Venture Bolzano 2024By Design, not by Accident - Agile Venture Bolzano 2024
By Design, not by Accident - Agile Venture Bolzano 2024
Pierluigi Pugliese
 
Monitoring Java Application Security with JDK Tools and JFR Events
Monitoring Java Application Security with JDK Tools and JFR EventsMonitoring Java Application Security with JDK Tools and JFR Events
Monitoring Java Application Security with JDK Tools and JFR Events
Ana-Maria Mihalceanu
 
De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...
De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...
De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...
Product School
 
A tale of scale & speed: How the US Navy is enabling software delivery from l...
A tale of scale & speed: How the US Navy is enabling software delivery from l...A tale of scale & speed: How the US Navy is enabling software delivery from l...
A tale of scale & speed: How the US Navy is enabling software delivery from l...
sonjaschweigert1
 
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdfObservability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
Paige Cruz
 
Bits & Pixels using AI for Good.........
Bits & Pixels using AI for Good.........Bits & Pixels using AI for Good.........
Bits & Pixels using AI for Good.........
Alison B. Lowndes
 
Free Complete Python - A step towards Data Science
Free Complete Python - A step towards Data ScienceFree Complete Python - A step towards Data Science
Free Complete Python - A step towards Data Science
RinaMondal9
 
Le nuove frontiere dell'AI nell'RPA con UiPath Autopilot™
Le nuove frontiere dell'AI nell'RPA con UiPath Autopilot™Le nuove frontiere dell'AI nell'RPA con UiPath Autopilot™
Le nuove frontiere dell'AI nell'RPA con UiPath Autopilot™
UiPathCommunity
 

Recently uploaded (20)

Elevating Tactical DDD Patterns Through Object Calisthenics
Elevating Tactical DDD Patterns Through Object CalisthenicsElevating Tactical DDD Patterns Through Object Calisthenics
Elevating Tactical DDD Patterns Through Object Calisthenics
 
Epistemic Interaction - tuning interfaces to provide information for AI support
Epistemic Interaction - tuning interfaces to provide information for AI supportEpistemic Interaction - tuning interfaces to provide information for AI support
Epistemic Interaction - tuning interfaces to provide information for AI support
 
Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...
Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...
Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...
 
Accelerate your Kubernetes clusters with Varnish Caching
Accelerate your Kubernetes clusters with Varnish CachingAccelerate your Kubernetes clusters with Varnish Caching
Accelerate your Kubernetes clusters with Varnish Caching
 
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...
 
Assuring Contact Center Experiences for Your Customers With ThousandEyes
Assuring Contact Center Experiences for Your Customers With ThousandEyesAssuring Contact Center Experiences for Your Customers With ThousandEyes
Assuring Contact Center Experiences for Your Customers With ThousandEyes
 
Quantum Computing: Current Landscape and the Future Role of APIs
Quantum Computing: Current Landscape and the Future Role of APIsQuantum Computing: Current Landscape and the Future Role of APIs
Quantum Computing: Current Landscape and the Future Role of APIs
 
Introduction to CHERI technology - Cybersecurity
Introduction to CHERI technology - CybersecurityIntroduction to CHERI technology - Cybersecurity
Introduction to CHERI technology - Cybersecurity
 
Securing your Kubernetes cluster_ a step-by-step guide to success !
Securing your Kubernetes cluster_ a step-by-step guide to success !Securing your Kubernetes cluster_ a step-by-step guide to success !
Securing your Kubernetes cluster_ a step-by-step guide to success !
 
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdf
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdfFIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdf
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdf
 
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdfFIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
 
PCI PIN Basics Webinar from the Controlcase Team
PCI PIN Basics Webinar from the Controlcase TeamPCI PIN Basics Webinar from the Controlcase Team
PCI PIN Basics Webinar from the Controlcase Team
 
By Design, not by Accident - Agile Venture Bolzano 2024
By Design, not by Accident - Agile Venture Bolzano 2024By Design, not by Accident - Agile Venture Bolzano 2024
By Design, not by Accident - Agile Venture Bolzano 2024
 
Monitoring Java Application Security with JDK Tools and JFR Events
Monitoring Java Application Security with JDK Tools and JFR EventsMonitoring Java Application Security with JDK Tools and JFR Events
Monitoring Java Application Security with JDK Tools and JFR Events
 
De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...
De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...
De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...
 
A tale of scale & speed: How the US Navy is enabling software delivery from l...
A tale of scale & speed: How the US Navy is enabling software delivery from l...A tale of scale & speed: How the US Navy is enabling software delivery from l...
A tale of scale & speed: How the US Navy is enabling software delivery from l...
 
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdfObservability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
 
Bits & Pixels using AI for Good.........
Bits & Pixels using AI for Good.........Bits & Pixels using AI for Good.........
Bits & Pixels using AI for Good.........
 
Free Complete Python - A step towards Data Science
Free Complete Python - A step towards Data ScienceFree Complete Python - A step towards Data Science
Free Complete Python - A step towards Data Science
 
Le nuove frontiere dell'AI nell'RPA con UiPath Autopilot™
Le nuove frontiere dell'AI nell'RPA con UiPath Autopilot™Le nuove frontiere dell'AI nell'RPA con UiPath Autopilot™
Le nuove frontiere dell'AI nell'RPA con UiPath Autopilot™
 

PDF Digital signatures

  • 1. Protecting your PDF PDF and digital signatures
  • 2. Protecting your PDF iText in Action, chapter 12 12.1: Adding Metadata 12.2: PDF and compression 12.3: Encrypting a PDF document 12.4: Digital signatures, OCSP, and timestamping
  • 3. Structure of a PDF file %PDF-1.x %âãÏÓ 1 0 obj ... 2 0 obj ... (Hello World) Tj ... xref 0 81 0000000000 65535 f 0000000015 00000 n ... trailer << ... >> startxref 15787 %%EOF A PDF file consists of a collection of objects. A PDF files starts with %PDF-1.x and ends with %%EOF
  • 4. Changing the content of a PDF file %PDF-1.x %âãÏÓ 1 0 obj ... 2 0 obj ... (Hello People) Tj ... 121 0 obj ... xref 0 85 0000000000 65535 f 0000000015 00000 n ... trailer << ... >> startxref 16157 %%EOF You can use software to change the content of a PDF document: change a stream, add objects (e.g annotations), and so on.
  • 5. What are our concerns? Integrity—we want assurance that the document hasn’t been changed somewhere in the workflow Authenticity—we want assurance that the author of the document is who we think it is (and not somebody else) Non-repudiation—we want assurance that the author can’t deny his authorship.
  • 6. Integrity A digest is computed over a range of bytes from the file. This ByteRange is signed using the private key of the sender. This digest and the sender’s Certificate are embedded in the PDF. The receiver compares the embedded digest with the digest of the content.
  • 7. Digital Signature field %PDF-1.x %âãÏÓ 1 0 obj ... 2 0 obj << /Type/Sig /Contents/... >> ... xref 0 81 0000000000 65535 f ... trailer << ... >> startxref 15787 %%EOF A signed PDF file contains a signature dictionary. The binary value of the PDF signature is placed into the Contents entry of a signature dictionary.
  • 8. Embedded Digital Signature %PDF-1.x %âãÏÓ ... 2 0 obj <<... /Type/Sig /Contents< The digital signature isn’t part of the ByteRange. There are no bytes in the PDF that aren’t covered, other than the PDF signature itself. DIGITAL SIGNATURE > ... >> xref 0 81 0000000000 65535 f ... trailer << ... >> startxref 15787 %%EOF
  • 9. Cryptography Symmetric key algorithms: the same key is used to encrypt and decrypt content. Asymmetric key algorithms: a public key is used to encrypt, a private key is used to decrypt (for encryption purposes). Or, a private key is used to encrypt, a public key is used to decrypt (for digital signatures).
  • 10. Obtain a public/private key Create your own keystore (with the private key) and self-signed certificate (with the public key); e.g. using keytool Ask a Certificate Authority (CA) to sign your certificate to prove your identity A Certificate signed by a CA’s private key can be decrypted with the CA’s root certificate (stored in Adobe Reader)
  • 11.
  • 14.
  • 16. Timestamp... %%EOF Existing PDF document Created by PDF producer Fill out signature field Using iText Externally sign digest created with iText
  • 17. Displaying digital signatures Digital signatures are part of the file structure: it isn’t mandatory for a digital signature to be displayed on a page. Digital signatures are listed in the signature panel. A digital signature can be visualized as a field widget (this widget can consist of graphics, text,...).
  • 22. Important note A signature signs the complete document. The concept of signing separate pages in a document (“to initial a document”) doesn’t exist in PDF. Legal issue: how to prove that a person who signed for approval has read the complete document?
  • 23. Serial signatures %PDF-1.x %Originaldocument DIGITAL SIGNATURE 1 ... %%EOF A PDF document can be signed more than once, but parallel signatures aren’t supported, only serial signatures: additional signatures sign all previous signatures. Rev1 % Additional content 1 ... DIGITAL SIGNATURE 2 ... %%EOF Rev2 % Additional content 2 ... DIGITAL SIGNATURE 3 ... %%EOF Rev3
  • 25. Types of signatures Certification (aka author) signature— only possible for the first revision; involves modification detection permissions. Approval (aka recipient) signature— workflow with subsequent signers. Usage Rights signature— involving Adobe’s private key to Reader enable a PDF (off-topic here).
  • 26. Problems solved? Integrity—signature is invalidated if bytes are changed Authenticity—Certificate Authority verifies the identity of the owner of the private key Non-repudiation—the author is the only one who has access to the private key
  • 27. What if? What if the author’s private key is compromised? What if the author falsifies the creation date of the document? What if the certificate expires too soon?
  • 28. Revocation checking Certificate Revocation List (CRL) The certificate is checked against a list of revoked certificates. Online Certificate Status Protocol (OCSP) The revokation status is obtained from a server. If the certificate was revoked, the signature is invalid.
  • 29. OCSP
  • 30. Timestamping The timestamp of a signature can be based on the signer’s local machine time, Or the signer can involve a Time Stamp Authority (TSA). The message digest is sent to a trusted timestamp server. This server adds a timestamp and signs the resulting hash using the TSA’s private key. The signer can’t forge the time anymore.
  • 32. PAdES - LTV PAdES: PDF Advanced Electronic Signatures LTV: Long Term Validation Requires extensions to ISO-32000-1 Described by ETSI in TS 102 778 part 4 Requires Document Security Store (DSS) and Document Timestamp A new DSS+TS are added before expiration of the last document timestamp
  • 33.