/*! @file @id $Id$ */ // 1 2 3 4 5 6 7 8 // 45678901234567890123456789012345678901234567890123456789012345678901234567890 /*! @mainpage The first intention of this There are several [Namespaces](namespaces.html) which correspond to the [Modules](modules.html) that are implemented. All libraries libraries deal with hardware token cryptography. Some libraries are just clean C++-wrappers around the original libraries that are implemented in ugliest C manner. The warppers care about memory- and resource-management and implement a simple and easy C++ interface, including std::string for binary data and exceptions for error handling. For special documentations, such as global overviews and tutorials, please refere to [Pages](pages.html). @chapter mainoverview Overview of the Components @dot digraph g { compound=true; subgraph clustercard { label="Hardware-Token"; token; } subgraph clustersystempcsc { label="System Library PCSC-Lite"; pcscd; libpcsclite [shape=component]; } subgraph clusteropenssl { label="OpenSSL Library"; OpenSSL [shape=component]; } subgraph clustermiddleware { label ="Middleware for Hardware Access\ndynamically loaded shared object"; pkcs11 [label="libpkcs11.so\nlibcvP11.so\nlibcryptoki.so\n..."] [shape=component]; } subgraph clusterlibpcscxx { label="C++ libpcscxx-Library"; node [shape=component]; pcsc [URL="\ref gpcsc"]; cryptoki [URL="\ref gcryptoki"]; cardos [URL="\ref gcardos"]; suisseid [URL="\ref gsuisseid"]; openssl [URL="\ref gopenssl"]; crypto [URL="\ref gcrypto"]; {rank=same pcsc; cryptoki; openssl; crypto;} } {rank=same OpenSSL; pkcs11;} {pkcs11; OpenSSL; pcsc;} -> libpcsclite [lhead=clustersystempcsc]; libpcsclite -> pcscd; pcscd -> token [lhead=clustercard]; cryptoki -> pkcs11 [lhead=clustermiddleware]; cardos -> pcsc; suisseid -> cardos; suisseid -> cryptoki; openssl -> OpenSSL [lhead=clusteropenssl]; } @enddot @see gpcsc PCSC-Lite is a middleware to access a smart card using SCard API @see gcryptoki Cryptoki, also known as PKCS#11 is a higher level API @see gopenssl OpenSSL is a high level cryptography library @see gcardos CardOS is an operating system on Siemens smart cards @see gsuisseid SuisseID is a standardized digital identity in Switzerland @see gcrypto Crypto implements some auxiliary crypto funtions */