USE CASE N°04
The internet of things is set to grow exponentially in the coming years. But the availability of a large number of decentralized networks is creating related challenges that need addressing:
• Interoperability: is a key IoT issue. Currently, several protocols are used to connect devices and there is no single platform that can link all devices irrespective of their manufacturer.
• Security: centralized networks require extra protection, as both data and the server storing it can be targeted. Control servers at the heart of networks are particularly vulnerable as they represent single points of failure.
One way of overcoming the burden of high infrastructure and maintenance costs associated with centralized networks is achieved by enabling IoT interface with decentralized (e.g. blockchain-agnostic) networks.
RIDDLE&CODE has developed a robust solution for this challenge: RIDDLE&CODE combines blockchain with cryptography to generate a tamper-proof digital identity for all connected physical objects. Such identity is a cure that guarantees further ability to build secure and reliable IoT models.
How does RIDDLE&CODES’s secure IoT network operates?
RIDDLE&CODE solution utilizes the blockchain technology to create a unique identity to a connected device. It then uses the blockchain technology again to provide a platform where connected devices communicate and transact with each other autonomously and securely. The unique identities of connected devices ensure that they are 'held accountable' for their actions. This approach works as follows:
RIDDLE&CODE assigns a hardware-based digital identity to all devices by equipping them with a highly secure cryptochip which stores all information about its carrier's digital identity 'off-the-bus', i.e. on the chip itself. The chip enables the device to become a 'node' and to autonomously communicate with the blockchain.
With every legitimate node then being registered on the blockchain, devices can easily identify and authenticate each other for various activities, e.g. sending and receiving data, transferring tokenized assets, etc., M2M, i.e., circumventing intermediation by the central server. This enables a decentralized, globally distributed and scalable network to support billions of devices without the need to commit additional resources.
The following step-by-step process explains how the solution developed by RIDDLE&CODE overcomes the challenges associated with expansion of IoT in the context of centralized networks: security, interoperability and maintenance. RIDDLE&CODE’s approach also provides foundation for future large-scale IoT deployments.
How to set up a secure IoT decentralized network between hardware devices using RIDDLE&CODE hardware and software solutions
Step 1: customer order
Customer orders a required number of chips based on a number of IoT devices to be connected
Step 2: production of chips
Production involves loading the firmware into the chips, followed by provisioning and attestation (see steps 3.1 to 3.3 below)
Step 3.1: loading firmware
RIDDLE&CODE produces chips by equipping them with the firmware combining 5 application programming interfaces (APIs) (Crypto Chip, Blockchain, NFC, BLE and Web) which is 100% Arduino IDE compatible. This provides a gateway to crypto and blockchain technology and optimizes the use of developers’ time in customizing the chip to specific customers requirements.
Step 3.2: provisioning
Provisioning of the chips is a process whereby the chip runs the Elliptic Curve Cryptography (ECC) algorithm for the first time and creates an asymmetric key pair (public and private).
RIDDLE&CODE’s strength is in ensuring that private key remains truly private. This is achieved as follows: the creation of the keys (provisioning) requires no human intervention whatsoever. The storage is 'off-the-bus', i.e. on the chip itself. This way, the private key remains unknown to anyone, including RIDDLE&CODE.
Step 3.3: attestation
Attestation immediately follows provisioning. This process consists of creating a new transaction (writing into the blockchain) and registering the device with its public key.
The attestation also includes calibration to any smart contract (self-executing code) set up between the parties.
Step 4: embed chips into connected devices
Provisioned and attested chips are then sent to the customer to be embedded into the connected devices: sensors, cars, machines etc.
Step 5: validation
Once the connected devices are deployed in the network, RIDDLE&CODE periodically runs a validation process to check that none of the objects have being tampered with.
In order to perform the validation, the connected devices send a request to RIDDLE&CODE’s BigchainDB instance through our Web API.
Step 6: communication of IoT devices on blockchain
Once the device has been validated, it has a unique identity, allowing it to safely store information and exchange it in a secure way with other connected devices on the blockchain network.