printable-digital-signature
printable-digital-signature copied to clipboard
Sign a paper digitally using QR codes and GPG
What is this?
This Python script generates a PDF file with an embedded QR code, based on a message. This QR code contains the message signed with your private gpg key. The purpose of this is to have a printed signed document.
The idea is to build an Android application that verifies signatures on these printed documents by scanning the text on the document by for example OCR and verifies the text by checking the QR code and verify the included signature.
Similar ideas (not open source):
http://www.secrypt.de/produkte/digiseal-2d-barcode/
ToDo
- first line missing in sign, see workaround
- strip tags like
- restructure code
- smaller qr code:
- later do signing with clearsign=False
- strip -----END PGP SIGNATURE----- etc?
- build signature based on other things:
- sign final grade certificates using an algorithm to make statements based on grades and sign these
Required Python Modules:
-
python-reportlab (>= 2.5) http://pypi.python.org/pypi/reportlab
-
python-qrencode (>= 1.0) http://pypi.python.org/pypi/qrencode
-
python-gnupg (>= 0.2.7) http://pypi.python.org/pypi/python-gnupg
-
gnupg executable
Debian testing:
aptitude install python-reportlab python-qrencode gnupg python-gnupg
License
This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
You should have received a copy of the GNU General Public License along with this program. If not, see http://www.gnu.org/licenses/.
See COPYING file