LibPKI

From OpenCA::Wiki

The LibPKI library provides the developer with an high-level API which is meant to be easy to use. Moreover the library is capable of using different cryptographic providers (e.g., OpenSSL or KMF) where they are available.

Here's some documentation you might be interested in:


Installing the Library

Installing the library is really easy. If the binary package for your platform is available, you can download and install them directly. If you prefer to compile the library on your own, there are several requirements that have to be met. In particular, you have to have the following packages (together with the corresponding devel packages) installed:

  • OpenSSL (http://www.openssl.org) (required)
  • libxml2 (http://xmlsoft.org) (required)
  • OpenLDAP (http://www.openldap.org) (required) (optional only on solaris)
  • MySQL (http://www.mysql.com) (optional)
  • PostgeSQL (http://www.postgresql.org) (optional)

Once you have the requirements installed, you can download the source package, unpack it and then use the standard unix build commands:

  $ ./configure
  $ make
  $ sudo make install

In addition, if you have DoxyGen (http://www.doxygen.org) installed, you can generate the documentation as standard unix man pages by using the following:

  $ make man
  $ make install

To generate the documentation only in PDF format, you can use the following:

  $ make pdfdoc

once the PDF generation is successfully completed, the PDF file can be found in:

  docs/latex/refman.pdf

Additionally, if you want to generate the documentation in HTML and XML format, you can use the simple:

  $ make docs


Now what ?

The best way to start using the library is to use the provided command line tools and get used with the basics of the library principles:

  • pki-tool
  • pki-xpair
  • pki-query
  • pki-request

Moreover, you can play with the following programming examples that will help you in understanding the functionalities of the library by exposing in real-world applications (Developing Applications With LibPKI).