project screenshot 1
project screenshot 2
project screenshot 3
project screenshot 4
project screenshot 5
project screenshot 6

FIL-Riot-Protocol

Experience the secure and reliable communication offered by the Riot protocol. Protect your IoT networks from security threats.

FIL-Riot-Protocol

Created At

HackFS 2023

Project Description

IoT is facing identity, security, and interoperability problems. Current systems rely on a centralized client-server model that will soon be unsatisfactory due to the rapid increase in the number of devices connected to the Internet.

Networks are highly prone to trojan devices that piggyback into the so-called smart devices and steal sensitive data and hack into our lives. This is more cynical when it comes to industrial automation, where high-volume sensor data can easily get into the wrong hands.

A single protocol that ensures device authentication, authorization and manages the data layer is a much needed technology of the hour.

The Riot protocol provides robust device authentication and data encryption mechanisms to secure the communication between IoT devices and users.

With decentralized key generation(Lit Protocol PKPs), the Riot protocol ensures that cryptographic keys are generated securely and distributed in a decentralized manner.

Blockchain Smart Contract: The Blockchain Smart Contract module is responsible for managing the group membership, verifying device identities, and storing device keys. The module uses Ethereum smart contracts to enforce the rules and regulations of the protocol. When a new device is registered in the system, the smart contract verifies its identity and adds it to the group. The device keys are also stored in the smart contract, making them easily accessible to other devices in the group.

Device firmware module: The Device Firmware Module is responsible for managing the firmware of each device in the Riot protocol. It ensures that all devices are running the latest firmware and are compatible with the other devices in the group. The module uses Over-the-Air (OTA) updates to remotely update the firmware of devices in the group. It also checks the integrity of the firmware by comparing its hash with the hash stored in the blockchain network.

Key Distribution Module: The Key Distribution Module in the Riot protocol is responsible for generating and distributing unique device keys to authorized devices. The keys are used to encrypt and decrypt messages sent between devices in a group. The module uses a combination of group salt, session salt, and other token ingredients to create a Merkle hash, which is used to generate a unique key for each device. These keys are then securely distributed to each device in the group using the blockchain network.

Device Registration Module: The Device Registration Module is responsible for registering new devices in the Riot protocol. It verifies the identity of the device by checking its firmware hash and device subscriber address. Once the identity is verified, the module generates a unique device ID and adds the device to the blockchain network. The module also generates a unique device key for the device using the Key Distribution Module.

Encryption/Decryption Module: The encryption/decryption module is responsible for securing the IoT sensor data before it is stored in the data storage microservice. Fernet symmetric encryption is used for encryption, which provides a high level of security and speed.

How it's Made

Push Protocol: This protocol serves the purpose of notifying platform administrators about various events and updates occurring on the Riot platform. It enables the platform to send notifications regarding device connections, as well as other significant events that require attention or action.

Drand: Drand is utilized within the IoT ecosystem to generate a random session salt, which is a crucial element for ensuring the security and integrity of the IoT device's current usage. This random session salt adds an extra layer of protection by introducing an unpredictable factor into the encryption and authentication processes.

IPFS Saturn: IPFS Saturn plays a vital role in the retrieval of device riot token ingredients. These ingredients are stored as metadata on the InterPlanetary File System (IPFS). By leveraging IPFS Saturn, the platform can efficiently fetch the necessary data elements required for authenticating and authorizing IoT devices within the Riot ecosystem.

Lit Protocol: The Lit Protocol is employed by Public Key Providers (PKPs) to facilitate programmatically signing, encrypting, and decrypting IoT device sensor readings and other critical data. It provides the necessary cryptographic functions and algorithms to ensure secure communication and data protection between devices and the platform.

PolyBase: It enables the platform to store the encrypted sensor readings in a distributed and decentralized manner, ensuring high availability, fault tolerance, and data redundancy. By utilizing PolyBase, the platform can achieve enhanced data security and durability for IOT data encryption.

FVM: FVM (Federated Virtual Machine) serves multiple purposes within the RiotProtocol ecosystem. It is primarily responsible for creating and managing organizations, enabling administrators to define access controls and permissions. Additionally, FVM is utilized to establish storage deals, allowing the platform to store and persist the encrypted data generated by IoT devices securely.

Filecoin/IPFS: Filecoin, in conjunction with IPFS (InterPlanetary File System), plays a significant role in the storage and retrieval of data within the RiotProtocol. The platform leverages the incentivized protocol provided by Filecoin/IPFS to store and fetch data from hosted Content Identifiers (CIDs). This decentralized storage system ensures data availability, durability, and immutability while providing incentives for network participants

background image mobile

Join the mailing list

Get the latest news and updates