The ST25DV-I2C CryptoDemo shows how to establish an NFC secure transfer channel between an STM32 and a smartphone (Android or iPhone), using the Fast transfer mode of ST25DV-I2C NFC tags. This firmware (STSW-ST25DV005), an Android application (STSW-ST25003), an iOS application (STSW-ST25IOS003), a user manual and an application note are available on www.st.com. A NUCLEO-L476RG board together with an X-NUCLEO-NFC04A1 board is required to run the demonstration, which establishes a secure transfer channel. STSW-ST25DV005 benefits from the STM32Trust protection by reusing the X-CUBE-SBSFU framework running on the STM32L476RG microcontroller. Cryptography is used to perform mutual authentication and to encrypt the NFC communications. This secure transfer channel can be exploited to send and retrieve data, for the device settings and to upload a new firmware. Only the granted user can communicate with the STM32 to perform these operations. The communications between the microcontroller and the Android phone are encrypted both ways.
Encryption of the NFC communications between a smartphone (Android™ or iPhone) and an STM32 microcontroller (both ways)
Fast communications over NFC, thanks to ST25DV-I2C Fast transfer mode
AES and ECC cryptography
Mutual authentication between the smartphone and the STM32 microcontroller
Establishment of a unique AES session key
Possibility to securely retrieve data, set device settings or update the firmware