ATick for Python
The standalone PDF digital-signature library for Python — PAdES & CMS signing with a PFX/PEM file, USB tokens (PKCS#11), the Windows certificate store and Indian eSign, with RFC-3161 timestamps, long-term validation and a green-tick appearance Adobe shows as valid. Zero dependencies.
Install with pip install atick — one self-contained package.Sign in one call
sign.py
import atick
signed = atick.sign_pfx(
open("doc.pdf", "rb").read(),
pfx=open("my.pfx", "rb").read(), password="••••",
style=atick.Style(cn="Axonate Tech", reason="Approved"),
placements=[(1, (300, 55, 575, 175))],
pades=True, timestamp=True, ltv=True, # PAdES-B-LT
)
open("signed.pdf", "wb").write(signed)What's inside
- Sign anywhere —
.pfx/.p12/.pem, USB tokens, the Windows store and CCA eSign. - Full PAdES — B-B, B-T, B-LT, B-LTA with timestamps and long-term validation.
- Certify & lock — DocMDP, field-locking, pre-sign CRL/OCSP checks, encryption.
- Rich appearance — logo or CN, the validity mark, custom text, invisible signatures.