Trust Core Details
Trust Core is a member of the MULTOS Trust Anchor development kit range.
It is provided with sample software to allow evaluation of the MULTOS platform in a number of IoT use cases.
Note: All Trust Anchor developer boards, including Trust Core, currently use developer versions of the M5 product range. Developer versions are loaded with known programming key sets that allow anyone using the development tools to load and delete applications without needing to connect to the MULTOS Key Management Authority (KMA). Live MULTOS devices (which have unique ids and programming keys provisioned by the MULTOS KMA) should be used for final products.
Trust Core is designed to be hardware compatible with a Raspberry Pi ™ Model 3B (including 3B+) and Arduino™ UNO R3. It can be used with many other microcontroller development boards, including Raspberry Pi Model 4 and ARM based STM32.
Notes:
- “Raspberry Pi” is a trademark of the Raspberry Pi Foundation.
- This board is not an official Arduino product. All support requests must be directed to [email protected]
Functionality Summary
The sample software supports:
- RSA key generation & storage
- RSA signature generation & verification
- RSA encryption/decryption
- ECC key generation & storage
- ECC Diffie Hellman key agreement for TLS
- ECC DSA signature generation and verification
- TLS / DTLS 1.2 authentication, key exchange and message encryption / decryption
- AES key generation
- AES CBC & GCM mode encryption and decryption
- Hardware based true random number generation (TRNG)
- SHA-1, SHA-256, SHA-384 and SHA-512 secure hashing
- SHA-1 and SHA-256 based HMAC
- Key management functions (generation, export, import, merging).
- PIN management functions
Using Trust Core
Installation instructions for Raspberry Pi can be found in the PKCS#11 Application Notes.
On Raspberry Pi you can use a subset of the standard PKCS#11 v2.40 API (C/C++ programming) or our TLS 1.2 API (C/C++/Python 3 programming). Source code for both is available on GitHub. A binary distribution (debug build) for Raspbian 10 and 11 using pigpiod is available on our software downloads page, please email [email protected] for an access code.
Otherwise functionality is accessed via application protocol messages sent over the appropriate hardware abstraction layer. To request a copy of the low level API document please email us using the above address.
Trust Core was designed to support AWS IoT Greengrass 1.x running on Raspbian and obtained certification under the AWS Device Qualification Program. AWS IoT Greengrass 1.x is no longer being maintained. Please contact us if you are interested in using Trust Core with AWS IoT Greengrass 2.x.
Trust Core also supports SAS Token and X.509 authentication with Microsoft Azure IoT Hub. See our video here.