git-svn-id: https://vsmartcard.svn.sourceforge.net/svnroot/vsmartcard@394 96b47cad-a561-4643-ad3b-153ac7d7599c
70 lines
2.7 KiB
Plaintext
70 lines
2.7 KiB
Plaintext
/** @mainpage
|
|
|
|
Welcome to npa. The purpose of npa is to offer an easy to use API for the new
|
|
German identity card (neuer Personalausweis, nPA). The library also implements
|
|
secure messaging, which could also be used for other cards.
|
|
|
|
npa is implemented using OpenPACE (http://sourceforge.net/projects/openpace/).
|
|
Some fragments of the source code are on the source code of the OpenSC tools.
|
|
|
|
The included pace-tool has support for Password Authenticated Connection
|
|
Establishment (PACE). pace-tool can be used for PIN management or to encrypt
|
|
APDUs inside a secure messaging channel established with PACE.
|
|
|
|
|
|
@section i INSTALLATION
|
|
|
|
See file INSTALL.
|
|
|
|
|
|
@subsection o HINTS ON OPENSC
|
|
|
|
libnpa links against libopensc, which is discouraged and hindered since
|
|
opensc>=0.12. We really need to get rid of this dependency. You need the opensc
|
|
components to be installed (especially libopensc.so). But you might need to
|
|
adjust the opensc library flags:
|
|
./configure \
|
|
OPENSC_LIBS="-L/path/to/opensc/libdir -lopensc"
|
|
|
|
|
|
@subsection o HINTS ON OPENSSL
|
|
|
|
If you have a local build of OpenSSL with OpenPACE, that you want to link
|
|
against use something like the following command:
|
|
./configure \
|
|
OPENSSL_CFLAGS="-I/path/to/openssl-1.0.0c_with_openpace-0.4/include" \
|
|
OPENSSL_LIBS="-L/path/to/openssl-1.0.0c_with_openpace-0.4 -lcrypto"
|
|
|
|
|
|
@section u USAGE
|
|
|
|
When testing PACE with either PIN, CAN, MRZ or PUK run pace-tool. Here you can
|
|
enter APDUs which are to be converted according to the secure messaging
|
|
parameter and to be sent to the card. Herefor insert the APDU in hex (upper or
|
|
lower case) with a colon to separate the bytes or without it. Example APDUs can
|
|
be found in the file apdus.
|
|
To pass a secret to pace-tool, the command line parameters or the environment
|
|
variables PIN/CAN/MRZ/PUK/NEWPIN can be used. If none of these options is used,
|
|
pace-tool will show a password prompt.
|
|
|
|
@subsection l LINKING AGAINST LIBNPA
|
|
|
|
If you have a local build of libpace and OpenPACE, the preferred way to adjust
|
|
libraries and cflags for foreign code is to use pkg-config:
|
|
./configure \
|
|
PKG_CONFIG_PATH=/path/to/openssl-1.0.0c_with_openpace-0.4/lib/pkgconfig:/path/to/libpace/lib/pkgconfig"
|
|
|
|
Alternatively you can define libs and cflags by hand:
|
|
./configure \
|
|
OPENSSL_CFLAGS="-I/path/to/openssl-1.0.0c_with_openpace-0.4/include" \
|
|
LIBPACE_CFLAGS="-I/path/to/openssl-1.0.0c_with_openpace-0.4/include -I/path/to/libpace-0.1/src" \
|
|
OPENSSL_LIBS="-L/path/to/openssl-1.0.0c_with_openpace-0.4 -lcrypto" \
|
|
LIBPACE_LIBS="-L/path/to/openssl-1.0.0c_with_openpace-0.4 -lcrypto -L/path/to/libpace-0.1/src/.libs -lpace"
|
|
|
|
|
|
@section q QUESTIONS
|
|
For questions, please use http://sourceforge.net/projects/vsmartcard/support
|
|
|
|
@author Frank Morgner <morgner@informatik.hu-berlin.de>
|
|
*/
|