The MAXREFDES9001 is a complete Internet-of-Things (IoT) security reference design featuring a LoRa radio based, low-power, temperature sensor node secured with a DS28S60 secure co-processor, a LoRa gateway, and a Google Cloud application. This reference design showcases a robust and easy to manage end-to-end security scheme with authentication and confidentiality capabilities independent of the transmission link in use—the LoRaWAN protocol in this case. The MAXREFDES9001 is designed to easily integrate into embedded systems enabling confidentiality, authentication, and integrity of information.
The sensor node is motioned by the tiny, low-power, Cortex-M4 based microcontroller MAX32660 which periodically measures the ambient temperature with the help of the DS7505, authenticates and encrypts the temperature value using AES-GCM with the DS28S60 secure coprocessor, and sends it to the Google Cloud application over a LoRaWAN network, via a Raspberry Pi powered gateway. To prevent rogue nodes from publishing data, joining the nodes to the network requires a prior local verification using a convenient NFC based strong authentication with help of the MAX66242 Secure Authenticator and a dedicated Android application running on an NFC enabled Android device. Once this strong authentication is successful, proving that the node device is genuine, the Android device communicates with the Google Cloud application via Internet to provision the node device, that is, to generate a certificate for the node device and perform a AES-GCM key exchange between that device and the Google Cloud application. The Android device uses the MAX66242 as a NFC bridge in order to communicate with the node device’s microcontroller application and ultimately store the certificate into the DS28S60 co-processor, and have the key exchange done between the DS28S60 and the Google Cloud application, using the ECDH protocol. Once this step is achieved, the node device is ready to send its data to the cloud using the negotiated AES-GCM key. Further node authentication by the Cloud is possible using ECDSA since the node now has a valid certificate with a matching key pair. Incidentally, the provisioning process also joins the sensor node to the LoRaWAN network implemented using the ChirpStack solution, but this is not the main purpose of the reference design that exhibits a way to secure data without relying on the security of the various underlying communication links.