Skip to content
RepoQuarry

pyHanko MatthiasValvekens/pyHanko

Python library and CLI that signs, stamps, validates and encrypts PDFs with certificates, PKCS#11 tokens, timestamps and PAdES profiles.

pyHanko at a glance

Checked 16 Oct 2026

pyHanko (785 stars, 0.37.0 on PyPI 31 Aug 2026) is a Python 3.10+ library plus a separate pyhanko-cli package. It signs PDFs you already have with your own certificate or a PKCS#11 token or smartcard, supports PAdES B-B to B-LTA, RFC 3161 timestamps and multiple signatures, and validates signatures, including against EU trusted lists. MIT licence. The author calls it beta and not yet production-ready. It has no web UI, no sending to other signers, no reminders, tracking or templates.

Cite this pageRepoQuarry. “pyHanko.” Checked 16 Oct 2026. https://repoquarry.dev/projects/pyhanko

How much of DocuSign does it replace?

1 of 6 jobs. Certificate-based PDF signing and validation from code or the command line; no signing workflow for other people.

No: Send documents for signature Not covered
No: Signing order and reminders Not covered
No: Audit trail and completion certificate Not covered
No: Reusable signing templates Not covered
No: eSignature API and embedded signing Not covered
Partial: Certificate-based digital signatures (PKI) Partial replacement

For send documents for signature, signing order and reminders, audit trail and completion certificate, reusable signing templates, eSignature API and embedded signing, see other DocuSign alternatives. You may also need to build an interface, an API server and hosting yourself.

Facts, with sources

Every answer links to where we found it. We read the documentation; we did not install it.

Report a correction
QuestionAnswerSourceChecked
Runs on my machine? Confirmed: Yes, Python library and command-line tool on your own machine The code in this repository functions both as a library and as a command-line tool github.com · pyHanko#readme ↗ today
Code licence Confirmed: MIT (includes modified PyPDF2 code under its own licence) MIT License github.com · pyHanko#license ↗ today
Model weights licence Confirmed: No separate model weights github.com · pyHanko#readme ↗ today
Commercial use Confirmed: Yes under MIT; the author says it is beta and not yet production-ready This project is currently in beta, and not yet production-ready. github.com · pyHanko#readme ↗ today
Paid services needed? Confirmed: None required; you supply your own certificate or token, and optionally a timestamp server RFC 3161 timestamp server support github.com · pyHanko#features ↗ today
Hardware Unknown: Not documented beyond Python 3.10+ Know the answer? —
Operating systems Confirmed: Any OS with Python 3.10+ (PyPI lists it as OS independent) Operating System :: OS Independent pypi.org · pyHanko ↗ today
Setup effort Confirmed: Easy; pip install with optional extras for PKCS#11, images, fonts and the CLI pip install 'pyHanko[pkcs11,image-support,opentype,qr]' pyhanko-cli github.com · pyHanko#installing ↗ today

Get the weekly top 5 and what’s new, every Monday

We’ll email you once a week. Unsubscribe any time. We never share your email.

Cookie preferences

Choose what we may store in your browser. You can change this any time from Cookie settings in the footer.

Essential

Security, and remembering this choice. rq-consent · 12 months

Always on