This is the OPTIGA™ Authenticate NBT Host Library for C, which supports the utilization of the OPTIGA™ Authenticate NBT in embedded applications.
The host library offers an extensive API to interact with the OPTIGA™ Authenticate NBT and to utilize its full functionality. The library is mainly intended to be used in embedded C/C++ applications interfacing to the OPTIGA™ Authenticate NBT via I2C.
Refer to the OPTIGA™ Authenticate NBT - GitHub overview repository for an overview of the available host software for the OPTIGA™ Authenticate NBT.
- NFC-to-I2C bridge commands for interaction with the OPTIGA™ Authenticate NBT
- Sends command APDUs (C-APDU) and receives response APDUs (R-APDU) from the OPTIGA™ Authenticate NBT
- Configuration of the OPTIGA™ Authenticate NBT via its configurator application
- Personalization and operational commands to support simplified interaction with the OPTIGA™ Authenticate NBT
- NDEF host library that enables the host application to build, encode and decode NDEF records and messages
- NDEF host library that supports "NFC Forum well known type" and "NFC Forum external type"
- NDEF host library that provides brand-protection supported NDEF records
- Supports GlobalPlatform T=1' protocol for I2C communication between host MCU and OPTIGA™ Authenticate NBT
This host library's online documentation is hosted on GitHub.io. The documentation can also be built from its source files (see Build).
This section contains information on how to setup the OPTIGA™ Authenticate NBT Host Library for C and integrate it into custom embedded applications.
Minimum required versions:
- Doxygen 1.9.8
- CMake 3.14
├── .cmake/ # Includes sources for dependency management
├── .github/ # GitHub-related resources (e.g., workflows)
├── LICENSES/ # Licenses used in this project
├── data/ # Includes Doxygen, Cppcheck configuration files
├── docs/ # Includes documentation sources and images
└── libs/ # Includes dependent modules of the host library
To build the host library as a static library, configure cmake
and use cmake --build
to perform compilation.
Execute the following commands from the root folder of the host library, where CMakeLists.txt
exists:
cmake -S . -B build
cmake --build build
To build the documentation use the following commands
cmake -S . -B build -DBUILD_DOCUMENTATION=ON
cmake --build build
This creates a subfolder docs in the build directory which contains the generated documentation as static HTML pages.
Refer to this host library's online documentation on GitHub.io for more information.
Please read CONTRIBUTING.md for detailed contribution instructions and refer to our CODE_OF_CONDUCT.md.
In case of questions regarding this repository and its contents, refer to MAINTAINERS.md for the contact details of this project's maintainers.
Please see our LICENSE for copyright and license information.
This project follows the REUSE approach, so copyright and licensing information is available for every file (including third party components) either in the file header, an individual *.license file or the REUSE.toml file. All licenses can be found in the LICENSES folder.