Simple PDF signer (C++, Go)
Go to file
Přemysl Janouch 17d253927f
Relicense to 0BSD, update mail address
I've come to the conclusion that copyright mostly just stands in the way
of software development.  In my jurisdiction I cannot give up my own
copyright and 0BSD seems to be the closest thing to public domain.

The updated mail address, also used in my author/committer lines,
is shorter and looks nicer.  People rarely interact anyway.
2018-06-24 04:35:04 +02:00
LICENSE Relicense to 0BSD, update mail address 2018-06-24 04:35:04 +02:00
meson.build meson.build: enable installation 2017-12-02 23:01:48 +01:00
pdf-simple-sign.cpp Relicense to 0BSD, update mail address 2018-06-24 04:35:04 +02:00
README.adoc Relicense to 0BSD, update mail address 2018-06-24 04:35:04 +02:00

pdf-simple-sign

pdf-simple-sign is a simple open source PDF signer intended for documents generated by Cairo. As such, it currently comes with some restrictions:

  • the document may not have any forms or signatures already, as they will be overwitten

  • the document may not employ cross-reference streams, or must constitute a hybrid-reference file at least

  • the document may not be newer than PDF 1.6 already, or it will get downgraded to that version

  • the signature may take at most 4 kilobytes as a compile-time limit, which should be enough space even for one intermediate certificate

The signature is attached to the first page and has no appearance.

I dont aim to extend the functionality any further. The project is fairly self-contained and it should be easy to grasp and change to suit to your needs.

Building

Build dependencies: Meson, a C++11 compiler, pkg-config
Runtime dependencies: libcrypto

$ git clone https://github.com/pjanouch/pdf-simple-sign.git
$ cd pdf-simple-sign
$ meson builddir
$ cd builddir
$ ninja

Usage

$ ./pdf-simple-sign document.pdf document.signed.pdf KeyAndCerts.p12 password

Contributing and Support

Use this projects GitHub to report any bugs, request features, or submit pull requests. If you want to discuss this project, or maybe just hang out with the developer, feel free to join me at irc://irc.janouch.name, channel #dev.

Bitcoin donations: 12r5uEWEgcHC46xd64tt3hHt9EUvYYDHe9

License

This software is released under the terms of the 0BSD license, the text of which is included within the package along with the list of authors.