PDF Digital Signature

Sign PDFs with a certificate, verify signed PDFs and create your own signing certificates – cryptographically, and entirely in your browser

Private by design: everything happens on your device
Nothing is uploaded
Your PDFs, certificates, private keys and passwords are processed entirely by your browser. They are never sent to our servers or to anyone else.
Nothing is stored
Nothing you add here is written to cookies, local storage or any database. It lives only in this tab's memory and is gone when you close or reload the page.
Imported keys stay locked
Private keys loaded from a .p12 file are held as non-exportable Web Crypto keys: the page can sign with them but can't read them back out.
You can check it yourself
Open your browser's developer tools, go to the Network tab and sign or verify a file: no request carries your files, keys or passwords.

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.

1 Certificate

Don't have one? in a few seconds.

2 PDF document
3 Signature details
4 Appearance

Add a PDF to see it here.

Signed PDF
Certificates you trust

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.

What this tool can't do

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.

Star on GitHub
Fork & Contribute
Made with ❤️ by Community

More Tools Coming Soon

We're constantly adding new developer utilities. Stay tuned for more powerful tools!

Built with modern design principles