PDF Digital Signature
Sign PDFs with a certificate, verify signed PDFs and create your own signing certificates – cryptographically, and entirely in your browser
For transparency: like the rest of this site, this page loads Google Analytics for anonymous page-view statistics, and the site remembers your recently used and favourite tools in your browser. Neither ever receives your documents, certificates, keys or passwords.
Don't have one? in a few seconds.
Add a PDF to see it here.
Browsers can't read your system's or Adobe's trust lists, so add the certificates you trust: a colleague's .cer, or your organisation's CA. Kept in memory only.
Add a signed PDF to check who signed it, whether it was changed afterwards, and when it was signed.
There is no password recovery. If you forget it, the .p12 file can never be opened again.
1. Create a certificate request (CSR)
Use this to get a certificate from a real certificate authority. Your private key is created here and never leaves your device – only the CSR (which contains your public key and name) goes to the CA.
2. Combine the CA's certificate with your key
When the CA sends your certificate back (.cer/.crt/.pem/.p7b), put it together with your private key to get a .p12 file you can sign with.
See what's inside a certificate file: who it belongs to, who issued it, when it expires and its fingerprints. Works with .cer, .crt, .pem, .der, .p7b, .csr and (with the password) .p12 / .pfx.
Running entirely in the browser keeps your keys private, but a web page can't do everything desktop software can. Here's exactly what that means.
No automatic trust (no Adobe or system trust lists)
Web pages can't read your operating system's or Adobe's list of trusted certificate authorities. This verifier only treats a signer as trusted if you add their certificate or their CA's certificate yourself. Adobe Reader and other PDF apps use their own lists when your recipients open the file.
Self-signed certificates show as “identity unknown” to others
A self-signed or own-CA certificate proves the document wasn't changed, but recipients' PDF readers will warn that the signer's identity can't be confirmed until they choose to trust your certificate. For automatic trust in Adobe Reader you need a certificate from an Adobe-approved (AATL) provider.
No revocation checks (OCSP / CRL)
Checking whether a certificate has been revoked requires contacting the certificate authority's servers, which block requests from web pages. A revoked certificate will still show as valid here.
No trusted time-stamps when signing
Time-stamp authorities (TSAs) don't accept requests from browsers, so the signing time comes from your device's clock and can't be independently proven. Existing time-stamps in PDFs you verify are checked.
No long-term validation (LTV) data
Revocation data and time-stamps aren't embedded, so readers may report a signature as “not LTV-enabled”, and validating it after the certificate expires is harder.
Only .p12 / .pfx files – no USB tokens, smart cards or cloud signing
Web pages can't talk to hardware tokens, national ID cards or remote signing services. Most commercial Adobe-trusted certificates are issued on such hardware, so they can't be used here.
Old-style .p12 files need converting
Files exported by older Windows or macOS versions are often encrypted with 3DES/RC2, which browsers can't decrypt. Convert them to the modern AES format with OpenSSL 3, then delete the temporary file, which holds your unencrypted key:
openssl pkcs12 -in old.p12 -legacy -nodes -out temp.pem openssl pkcs12 -export -in temp.pem -out new.p12 rm temp.pem
Password-protected PDFs aren't supported
Encrypted PDFs can't be signed or verified. Remove the password protection first.
Changes after signing aren't classified
If a document was changed after someone signed it, the verifier tells you and lets you download the exact version they signed. It doesn't judge whether the later changes were permitted (form filling vs. content edits) the way Adobe Acrobat does.
No certification (document locking) signatures
You can't create “certify” signatures that lock a document, and PDFs certified as “no changes allowed” can't be signed.
Some legacy signature formats can't be checked
Very old signatures using adbe.x509.rsa_sha1 are reported as unsupported. RSA-PSS keys and keys on curves other than P-256/P-384/P-521 can't be used for signing.
Not a qualified electronic signature
Some legal systems (for example eIDAS “qualified” signatures in the EU) require a qualified certificate on a certified device. Whether a signature made here is legally sufficient depends on your country and use case.
Open Source & Community
OpenSource Toolkit is built by developers, for developers. Join our community and help us create the best collection of developer utilities.
View Source Code
Explore the codebase, report issues, and contribute to the project on GitHub.
Contribute
Add new tools, fix bugs, improve documentation, or suggest features.
MIT License
Free to use, modify, and distribute. Open source software for everyone.
More Tools Coming Soon
We're constantly adding new developer utilities. Stay tuned for more powerful tools!