SlideShare una empresa de Scribd logo
1 de 29
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

Más contenido relacionado

La actualidad más candente

PKI and Applications
PKI and ApplicationsPKI and Applications
PKI and Applications
Svetlin Nakov
 
Digital certificates
Digital certificatesDigital certificates
Digital certificates
Simmi Kamra
 
DIGITAL SIGNATURE
DIGITAL SIGNATUREDIGITAL SIGNATURE
DIGITAL SIGNATURE
ravijain90
 
Digital Signature
Digital SignatureDigital Signature
Digital Signature
Rahul Yadav
 
Digital signature 2
Digital signature 2Digital signature 2
Digital signature 2
Ankita Dave
 
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 & signature
Netri Chowdhary
 

La actualidad más candente (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
 

Destacado

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
Mohammed Abdelkawy
 

Destacado (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 a PDF Digital signatures

SecureOTP: Total One-Time-Password Solution
SecureOTP: Total One-Time-Password SolutionSecureOTP: Total One-Time-Password Solution
SecureOTP: Total One-Time-Password Solution
Rafidah Ariffin
 

Similar a 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
 

Más de Bruno Lowagie

Más de 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
 

Último

Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Safe Software
 
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
?#DUbAI#??##{{(☎️+971_581248768%)**%*]'#abortion pills for sale in dubai@
 
Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native Applications
WSO2
 

Último (20)

Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 
MS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectorsMS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectors
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
 
Apidays Singapore 2024 - Scalable LLM APIs for AI and Generative AI Applicati...
Apidays Singapore 2024 - Scalable LLM APIs for AI and Generative AI Applicati...Apidays Singapore 2024 - Scalable LLM APIs for AI and Generative AI Applicati...
Apidays Singapore 2024 - Scalable LLM APIs for AI and Generative AI Applicati...
 
Navi Mumbai Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Navi Mumbai Call Girls 🥰 8617370543 Service Offer VIP Hot ModelNavi Mumbai Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Navi Mumbai Call Girls 🥰 8617370543 Service Offer VIP Hot Model
 
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
 
Manulife - Insurer Transformation Award 2024
Manulife - Insurer Transformation Award 2024Manulife - Insurer Transformation Award 2024
Manulife - Insurer Transformation Award 2024
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024
 
Ransomware_Q4_2023. The report. [EN].pdf
Ransomware_Q4_2023. The report. [EN].pdfRansomware_Q4_2023. The report. [EN].pdf
Ransomware_Q4_2023. The report. [EN].pdf
 
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
 
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
 
Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native Applications
 
AXA XL - Insurer Innovation Award Americas 2024
AXA XL - Insurer Innovation Award Americas 2024AXA XL - Insurer Innovation Award Americas 2024
AXA XL - Insurer Innovation Award Americas 2024
 
Corporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptxCorporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptx
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 

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.