Latest Topics

Protocol Implementation

Prototype Implementation

The prototype implementation IOTA DevNet 2.0, is where the IOTA Foundation's Research Department implements the IOTA 2.0 modules in a full node software to study and evaluate their performance. For an introduction to our prototype, please read here.

IOTA 2.0 Specifications

IOTA 2.0 Specifications

The research specifications of the IOTA 2.0 protocol were made available with the release of the IOTA 2.0 DevNet.
For some context before you dig in to the specifications, please read our introductory blog post.

Explore our research

What is a DLT?

Distributed ledger technologies (DLTs) allow to replicate and independently update an immutable database across several nodes on a peer-to-peer network without a central authority. Nodes maintain consensus on the contents of the database. To ensure that all nodes can store the entire database (or at least the recent changes), access must be managed fairly with respect to some scarce, cryptographically verifiable resource

What is a DLT - Blockchain vs Tangle

Furthermore the database is used to maintain a state machine known as the ledger. When conflicting updates are proposed to the database, nodes use a given consensus algorithm to decide which update is correct. Once a consensus has been determined, all the other nodes update themselves with the new, correct copy of the ledger. The choice of the consensus algorithm as well as the cryptographic mechanisms involved are crucial to guarantee the security of the ledger.

What is IOTA?

The DLT paradigm gained a lot of interest with the introduction of Bitcoin's blockchain in 2008. However, because a blockchain totally orders all of its data, this solution, while effective, is expensive, slow and non-scalable. IOTA aims to solve the limitations of Bitcoin’s blockchain by using a data structure based on a directed acyclic graph (DAG). The DAG-based architecture, however, introduces new complexities which must be addressed.

Our Research - What is IOTA - Tangle

The IOTA protocol is currently undergoing a series of developments. Currently, the main network is under the control of a centralized entity called ‘coordinator’, which directly tells participants which information is included in the database by issuing periodic milestones. However, the coordinator is a temporary solution which we are endeavoring to remove in our Coordicide project.

Eventually, the IOTA network will switch to the IOTA 2.0 protocol. A prototype is currently under development and is running on our DevNet. A simple description of the IOTA 2.0 protocol can be found here.

The problem of removing the coordinator is challenging as it involves consensus mechanisms, networking, cryptography algorithms and a complex protocol structure. The main ongoing research projects are described below.

Project Components and Research Topics

Project Components and Research topics - Topics - Tangle Media

Tangle

Darcy, Serguei, Olivia, Billy, Andreas, Luigi

Since its conception, the IOTA network intended to develop on the top a DAG (directed acyclic graph) technology, in order to avoid the limitations of the blockchain DLTs. The Tangle is the name of the DAG data structure we developed. Its structure allows for many desired properties, such as the absence of miners, a confirmation system that is user-dependent (meaning that as more devices use the network, the better it works) and the possibility of confirmation within seconds. More details about the Tangle can be found here.

Project Components and Research topics - Topics - Consensus Media

Consensus

Sebastian, Serguei, Hans, Andreas, Jonas, Bart

Nodes have to decide whether a given message should be considered for being part of the Tangle. To enable an efficient voting system that enables consensus we leverage the DAG data structure of IOTA. In addition, to assure eventual agreement we introduce a breaking mechanism for metastable states, see here.

Resources
Introduction blog
Specifications (See Chapter 6)
IOTA Releases Fast Probabilistic Consensus Simulator
Simulation study of the Fast Probabilistic Consensus Simulator (FPC)

Publications
FPC-BI: Fast Probabilistic Consensus within Byzantine Infrastructures Journal of Parallel and Distributed Computing
Robustness and Efficiency of Leaderless Probabilistic Consensus Protocols Within Byzantine Infrastructures
Fast Probabilistic Consensus with Weighted Votes
On Fairness in Voting Consensus Protocols

Project Components and Research topics - Topics - Ledger State Media

Ledger State

Jonas, Hans, Angelo, Vivian, Andreas

To deal with double spends, we introduced a new reality-based ledger state. In this approach, we model the different perceptions of the ledger state that exist in the Tangle. In each reality on its own there are zero conflicting transactions, and the composition of all realities defines the Realities Ledger State. Nodes are thus enabled to know which possible outcomes for the Tangle exist, where they split, how they relate to each other, if they can be merged and which messages are valid tips. All of this information can be retrieved in a fast and efficient way without having to perform heavy search algorithms on the Tangle. More on this here.

Resources
Specification

Project Components and Research topics - Topics - dRNG Media

dRNG

Bart, Angelo, Sebastian

The Fast Probabilistic Consensus Simulator (FPC - IOTA's consensus mechanism) requires a random number to break metastability and make the voting outcome impossible to predict by an attacker. Since IOTA is a permissionless protocol it is natural to look for a random number beacon in the class of decentralized random number generators (dRNG).

In this project, we analyze existing dRNG technologies based on the threshold signature schemes, verifiable delay functions, and proof of work to find the optimal randomness source. This project combines research on dRNG with reputation systems and committee selection processes.

Resources
Distributed Random Number Generator
min-Hash dRNG
Fluid dRNG committee selection
Committee selection in DAG distributed ledgers
Specification

Project Components and Research topics - Topics - Reputation System Media

Reputation System

Billy, Bart, Luigi, Olivia

Every DLT needs a Sybil protection mechanism embedded in it. Currently, the most common and well-studied Sybil protection mechanisms are the ones that allocate voting power based on non-subjective physically well-defined scarce resources, like Proof of Work (based on hash power) or Proof of Stake (based on the agents' share of tokens). Another possible, though less studied, family of scarce resources is the reputation or relevance of the agent in the economy (which combines traditional and crypto industries). This second family is based on inherently subjective quantities and --for that reason-- demands a different theoretical treatment.

IOTA's scarce resource is called mana. Our end goal is to make mana a measure of reputation and collaboration with the system; consequently, it will be a mix of objective and subjective measures. In this project, we study how mana can be successfully integrated into a robust consensus algorithm while simultaneously introducing desirable economic incentives in the system.

Resources
Mana: Part 1, Mana: Part 2 and Mana: a non-technical introduction
Committee selection in DAG distributed ledgers
Specifications

Project Components and Research topics - Topics - Autopeering Media

Autopeering

Angelo, Sebastian, Andreas, Vivian, Olivia

In peer-to-peer networks like IOTA, a node’s neighbors are its only source of information. Any peering mechanism must therefore focus on connecting to a healthy number of honest neighbors. We introduce an autopeering mechanism in which every node has specific criteria for selecting potential neighbors. Its goal is to build a secure and reliable node neighborhood to be used by the gossip protocol, while preventing attackers from “deceiving” other nodes into becoming their neighbors. The autopeering mechanism also creates a small-world network, in which messages can be propagated to every other node in an efficient and fast manner. More on this here.

Resources
Introduction: Autopeering: Part 1, Autopeering: Part 2
Specifications
Autopeering implementation (GitHub) used by GoShimmer
Simulator (GitHub)

Project Components and Research topics - Topics - Networking Media

Networking

Luigi, Billy, Jonas, Wolfgang

IOTA permits all nodes to participate in network activity by issuing and validating messages. However, this unique characteristic needs an ad-hoc networking layer to deal with network congestion and denial of service attacks. The problems investigated are somehow similar to the ones in traditional networking (e.g., TCP, scheduling, queueing theory), but also need to address specific challenges, such as security against adversaries and fairness.

Resources
On Congestion Control for Distributed Ledgers in Adversarial IoT Networks
Heterogeneity-aware flow control
Adaptive PoW: On the Fairness of Distributed Ledger Technologies for the Internet of Things
The networking layer in Coordicide (iota.cafe)
Networking layer overview (video): part1, part2
Simulator (GitHub)
Specifications

Project Components and Research topics - Topics - Verifiable Delay Functions Media

Verifiable Delay Functions

Luigi, Vidal, Bart, Vassil

Verifiable delay functions (VDF) are a new type of function which requires an exact number of sequential steps to be solved, but can be verified in a short time. In our team, we study verifiable delay functions based on modular multi exponentiation which can be used to replace Proof of Work as a rate control mechanism, or to provide a source of distributed randomness.

Resources
VDF-based rate control: Preventing Denial of Service Attacks in IoT Networks through Verifiable Delay Functions
Analysis of RSA based VDFs: Implementation Study of Two Verifiable Delay Functions
Simulator (GitHub)
Prime number generation: Smooth Operator -- The Use of Smooth Integers in Fast Generation of RSA Keys
Distributed RSA modulus generation: On the Decentralized Generation of the RSA Moduli in Multi-Party Settings
Presentation at Stanford VDF Day 2020
State of the art: VDF Alliance website

Project Components and Research topics - Topics - Smart Contracts Media

Smart Contracts

Karolis, Evaldas, Bart

Various research topics related to the multi-chain L2 IOTA Smart Contract protocol. It includes adjustments and verification of HoneyBadger BFT protocol to IOTA setup, reputation and hierarchical trust system to support permissionless market of committees of validators, conceptual design of UTXO ledger to support multi-chain system, extended scripting on the L1 UTXO ledger, tokenomical models of multi-token system with incentivized feedback loops between L1 and L2.

Resources
IOTA Smart Contracts architecture description (PDF)

Project Components and Research topics - Topics - Sharding Media

Sharding

Darcy, Billy, Bart

From the beginning, IOTA has been conceptualized as a DLT of unbounded scalability. This design requirement led to the selection of the DAG data structure, and it also led our efforts in developing our sharding solution, which we refer to as “fluid sharding.” This novel approach to sharding differs from many previous attempts at scalability, which have relied on a predefined shard space. Our dynamic approach aims to bring true unlimited throughput to the IOTA network in version 3.0 of the IOTA Protocol.

Resources
Scaling IOTA Part 1 - A Primer on Sharding
Scaling IOTA Part 2 - Untangling the Tangle
Data sharding (iota.cafe)

Project Components and Research topics - Topics - Iota Protocol Improvements Media

Iota Protocol Improvements

Billy, Darcy, Andreas, Angelo, Wolfgang

From its initial concept, the IOTA network was planned as a self-sustainable, ever-evolving entity. This means that the development of the network will never stop, with old features optimized and new features added. Our goal is to creatively develop IOTA to achieve the infinite possibilities offered by our architecture. The name IOTA 2.0 also implies that there will be a 3.0, and after that a 4.0, and so on.

With this in mind, the research department is always working on protocol improvements, changing things from the structure of the messages to the mechanism of consensus. We always work with the objective of making the network as efficient as possible, while keeping an open mind to replace components that may be hindering the evolution of the protocol. We aim to simplify the mechanisms as much as we can, without sacrificing the limitless potential of the Tangle.

Contact us

Let's start a conversation.

*
*
*