Home    Labs

Assignment 1 - Document Signing Tool

Develop a program in C or C++ that uses OpenSSL for cryptographically signing any file of your system. The tool should be able to run in two modes: (a) signing mode, and (b) inspection mode. In mode (a), the tool should open a document, compute and display the signature of the document. In mode (b), the tool should load a signature from a disk and check if the signature is matching the signature of a given file.

Example modes of operation (assuming the tool is called docsign):

$ ./docsign docsign -sv <filename> -s sign -v view signature $ ./docsign -s /etc/hosts [...] $ ./docsign -v /etc/hosts signature [...]

For computing the cryptographic signature you must use the implementations of the SHA256 cryptographic function and the RSA cipher as provided by OpenSSL. For documentation you can use the OpenSSL manual.

Assignment deadline (firm): 8th of October, 2017, 23:59 (Local time).