API: Application Programming Interface
API (Application Programming Interface) is the mechanism enabling two software components to communicate with each other. One software component can utilize the services of another by calling the provided APIs. As more and more applications require security functions for connection or data safety, the Security APIs provide an application-level programming interface for functionalities provided by core security modules, such as PUFcc and PUFrt.
The core security modules provide an abstraction layer of security functions for the application program to access. The following block diagram specifies the layers of the software stack from the user application program to the PUFcc Crypto Coprocessor. The software stacks include a set of core secure functions, communication protocols, utilities, tools, OS running environment, and various open-source SDKs to meet different types of application needs. The PUFcc APIs/firmware provides an interface that can directly access to PUFcc’s Crypto Coprocessor through standard peripheral interfaces like (UART, JTAG. SMBUS, TCP/IP, etc.).
Both PUFcc APIs and its Crypto Coprocessor IP have been certified via OSCCA, CAVP, and PSA Level 2 ready to support authoritative, comprehensive security functions, as shown in the following diagram.