SE05X Driver
This driver enables access to the NXP SE05X secure element by using the NXP plug and trust nano.
Note
Currently this driver has only been tested on SE050.
API
The driver supports reading/writing to the SE05X’s keystore and additional
features like diffie-hellman key derivation and signing CSR’s and verifying
certificates using keys from the keystore.
Refer to drivers/crypto/pnt/pnt_se05x_api.h
for the API functions available
and to include/nuttx/crypto/se05x.h
for the ioctl commands
These tools make use of the SE05X driver (which can function as a reference project):
The
controlse
app can be used to control the SE05X from NSH.The
setest
app tests all the SE05X ioctl functionality from NSH
Datasheets are available on the NXP website.
Configuration
DEV_SE05X
Enable support for /dev/se05x secure element provided by NXP SE050 or SE051Channel communication interface
DEV_SE05X_SCP03
SCP03 secure channel (Not implemented)DEV_SE05X_SCP03_KEY_FILE
Specify file containing the keys needed with SCP03 channel authentication. Location may be relative to the NuttX root folder. File should contain the definitions for SCP03_ENC_KEY, SCP03_MAC_KEY and SCP03_DEK_KEY as byte array initializers.
DEV_SE05X_PLAIN
plain communication
SE05X_LOG_LEVEL
The SE05x log is divided into the following levels: ERROR,WARNING,INFO,DEBUG.