Quality has many dimensions. For a cryptographic library, security is the most important quality attribute. It hinges on a good selection of algorithms and the correctness of their implementations. Given the rising importance of side-channel attacks, implementation techniques like constant-time execution and table-free execution are also fundamental.

Yet memory footprint, speed / power consumption, the breadth of supported platforms, the simplicity and suitability of a library's APIs (e.g., support for incremental processing), and the simplicity of integrating and building the library with different toolchains are also important in practice. Footprint, speed and power consumption are particularly critical for low-cost, battery-powered devices that are the foundation of Massive IoT applications.

To make development as easy as possible, the API is simple, only a minimal number of build options is provided, and the speed is made largely independent of the compiler and compiler options that you use - because we have written all critical parts of the crypto code in assembly language.

Thanks to its quality implementation, ocrypto is the choice of many market-leading companies, for example of Nordic Semiconductor for their Bluetooth Low Energy chips and their low-power cellular IoT products.