libdigidocpp is a C++ library for reading, validating, and creating BDoc and DDoc containers. These file formats are widespread in Estonia where they are used for storing legally binding digital signatures. In addition to C++ API the library also has wrappers for common scripting languages: Perl, PHP, and Python. The library has native support for XAdES [3] compliant BDoc [1] containers; support for older DDoc format however is implemented as lightweight wrapper over libdigidoc C library. libdigidocpp currently implements BDoc-1.0 BES and TM profiles [2]. Signatures can be given using EstEID Card (id-kaart) and RSA certificates with private keys. [1] http://www.signature.lt/-TOOLS/BDoc-1.0.pdf [2] http://www.id.ee/public/ID_arendajate_seminar_Urmo_Keskel.ppt [3] http://www.w3.org/TR/XAdES/ Dependencies ============ cmake >= 2.6.0 libdigidoc >= 2.7.0 libiconv libp11 openssl xerces-c xml-security-c xsdcxx zlib On Debian you can install the libs by running: sudo apt-get install libopensc2 libp11-dev libssl-dev libxerces28-dev libxml-security-c-dev xsdcxx Optional build dependencies =========================== perl php python swig Additional runtime dependencies =============================== a pkcs11 library (e.g. opensc) BUILD INSTRUCTIONS ================== 1. Run build with cmake mkdir build cd build cmake -DCMAKE_INSTALL_PREFIX=/usr -DSYSCONF_INSTALL_DIR=/etc .. make -j4 2. Install the library to a system wide directory make install