wolfSSL support for STSAFE-A100 crypto coprocessor
wolfSSL supports the STMicroelectronics STSAFE-A100 I2C cryptographic coprocessor. It’s capable of ECC sign/verify (ECDSA) and shared secret (ECDH) operations for 256-bit and 384-bit (NIST Prime and Brainpool) curves. It has 2 key slots and 6KB of non-volatile memory for certificate or data storage. Prerequisites:
Requires the STSAFE-A Device Library from ST Requires wolfSSL interface and crypto configuration code (available by request and approval from ST)
Examples:
wolfSSL uses PK callbacks for the TLS crypto operations
wolfCrypt uses the WOLFSSL_STSAFEA100 macro to enable native wc_ecc_* API support
The README.md and reference PK callbacks can be found here: https://github.com/wolfSSL/wolfssl/tree/master/wolfcrypt/src/port/st Preprocessor Macros:
WOLFSSL_STSAFEA100
PK Callbacks:
wolfSSL TLS layer PK callbacks expose API’s to set ECC callbacks.Enabled with: #define HAVE_PK_CALLBACKS or ./configure --enable-pkcallbacks.
Reference API’s:
SSL_STSAFE_CreateKeyCb SSL_STSAFE_SignCertificateCb SSL_STSAFE_VerifyPeerCertCb SSL_STSAFE_SharedSecretCb
Reference API for loading device certificate:
SSL_STSAFE_LoadDeviceCertificate
For more questions please email us at facts@wolfssl.com.