Crypto Interface

TrustCore SDK Crypto Interface layer provides a set of APIs corresponding to various cryptographic algorithms that application developers can use to perform core cryptographic operations. Use the Crypto Interface APIs to build applications that are agnostic to the underlying cryptographic implementation, which may use and link to different implementations depending on import/export restrictions, performance, or certification requirements. Appropriate core cryptographic definitions are linked, and the runtime usage can be controlled using build flags. This capability is useful for applications that require both exportable and non-exportable editions. For example, you can build one version as exportable with non-restricted cryptographic definitions, and another with restricted certified cryptographic definitions.

Crypto Interface is available in two models:

License

This project is available under a dual-license model:

  • Open Source License: GNU Affero General Public License v3 (AGPL v3): This license allows you to use, modify, and distribute the code for free in accordance with AGPL terms.
  • Commercial License: If you wish to use TrustCore SDK in a proprietary or commercial product (e.g., embedded in closed-source firmware or commercial SaaS applications), a commercial license is available under DigiCert’s Master Services Agreement (MSA). Contact us at sales@digicert.com for commercial licensing details.

The articles in this section describe various cryptographic cipher algorithms and briefly explain the Crypto Interface APIs required to perform the main functions associated with ciphers.

  • For descriptions of all available APIs, see the Crypto Interface API reference.
  • For an explanation of the build instructions for the Crypto Interface example, see Build and Verify Crypto Interface Example
  • For more examples of Crypto Interface API usage, see the following directory:
    ${MSS_SRC_PKG}/src/crypto_interface/example