1
0
Atdalīts 0
This library provides a simple and nice C++ wrapper around these libraries, so that programmers can concentrate on functionality. It offers general support for PCSC-lite, OpenSSL, PKCS#11, plus specific functionality for the SuisseID.
Nevar pievienot vairāk kā 25 tēmas Tēmai ir jāsākas ar burtu vai ciparu, tā var saturēt domu zīmes ('-') un var būt līdz 35 simboliem gara.
 
 
 
 
Marc Wäckerlin 114c485a65 move openssl::version to cxx file due to link problems pirms 4 gadiem
debian fix debian build pirms 5 gadiem
doc fixed C++11 dependency; fixed backward compatibility to OpenSSL older than 1.1.0 pirms 5 gadiem
examples add new commnds to read CardOS Version pirms 6 gadiem
src move openssl::version to cxx file due to link problems pirms 4 gadiem
AUTHORS new author url pirms 9 gadiem
COPYING update buildsystem pirms 6 gadiem
ChangeLog fix rpm build pirms 5 gadiem
INSTALL fix rpm build pirms 5 gadiem
NEWS shared pointer is now from std C++/11; refs #26 pirms 11 gadiem
README.md fix rpm build pirms 5 gadiem
autogen.sh update buildsystem pirms 8 gadiem
ax_check_qt.m4 fixed rpm installation pirms 6 gadiem
ax_cxx_compile_stdcxx.m4 fix for C++17, requires at least C+17 pirms 5 gadiem
ax_init_standard_project.m4 fix build on eoan pirms 5 gadiem
bootstrap.sh fix build on eoan pirms 5 gadiem
build-in-docker.conf fixed for build with opensuse tumbleweed and leap - and fedora, centos, mageia pirms 6 gadiem
build-in-docker.sh fix build on eoan pirms 5 gadiem
build-resource-file.sh added resolve-rpmbuilddeps.sh pirms 9 gadiem
configure.ac fix source for PKCS#11 download pirms 4 gadiem
dependency-graph.sh fixed build on mac pirms 6 gadiem
install-32-bit-lin-win.sh 32bit-build added, refs #1 pirms 14 gadiem
install-64-and-32-bit-linux.sh checked-in too much, undo; refs #10 pirms 13 gadiem
libpcscxx buildsystem updated pirms 9 gadiem
libpcscxx.desktop.in use ./build-in-docker.sh on build server pirms 8 gadiem
libpcscxx.spec.in fix rpm build pirms 5 gadiem
mac-create-app-bundle.sh update buildsystem pirms 6 gadiem
makefile.am fix rpm build pirms 5 gadiem
makefile_test.inc.am update buildsystem pirms 8 gadiem
resolve-debbuilddeps.sh fixed rpm builds pirms 6 gadiem
resolve-rpmbuilddeps.sh update buildsystem pirms 6 gadiem
rpmsign.exp build fixed for deb and rpm pirms 7 gadiem
sql-to-dot.sed update buildsystem pirms 8 gadiem
template.sh fix build on eoan pirms 5 gadiem

README.md

C++ Library for accessing PCSC-lite, OpenSSL, PKCS#11

The Libraries for accessing smartcard tokens are written in ugly C, moving around pointers with no memory management. This library provides a simple and nice C++ wrapper around these libraries, so that programmers can concentrate on functionality. It offers general support for PCSC-lite, OpenSSL, PKCS#11, plus specific functionality for the SuisseID.

Modules

Note: All links below require the generated Doxygen documentation.

There are several Namespaces which correspond to the Modules 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.

The library contains the following modules:

  • Siemens CardOS 4.4:
    APDU access to Siemens CardOS 4.4.
    CardOS is an operating system on Siemens smart cards.
  • Cryptoki API / PKCS#11:
    C++ wrapper around higher level PKCS#11 smart card access.
    Cryptoki, also known as PKCS#11 is a higher level API.
  • OpenSSL:
    C++ wrapper around some OpenSSL functionality.
    OpenSSL is a high level cryptography library.
  • PCSC-Lite:
    C++ wrapper around PCSC-Lite smart card reader access library.
    PCSC-Lite is a middleware to access a smart card using SCard API.
  • SuisseID:
    High level functions for the SuisseID hardware token.
    SuisseID is a standardized digital identity in Switzerland.
  • Crypto:
    Crypto implements some auxiliary crypto funtions.

See Overview of the Components to get a graphical overview on the module structure and the hardware interaction.

In the Web

Missing a Feature, Found a Bug

You are missing a feature, or an implementation is too incomplete for the purpose you need it? Or you even found a bug? Just register and open an issue on the project management page.