Research

Projects still in the research phase

Coordicide

List and solve all the problems on the way to a Coo-less IOTA. This project is mostly theoretical, and includes threat analysis, mathematical modeling, simulation, and formalization of our consensus protocol.

Spam prevention and detection

We are looking for creative ways of dealing with FPGAs and asymmetric PoW. We are examining various options, mostly around the idea of throttling noisy neighbors. Our aim is to isolate spammers and protect the rest of the network.

Automatic peer discovery

Given the community input and various ecosystem projects, we are taking a closer look at the security implications of auto-peering. Although this is a complex research topic, it is important for us to formulate a well-founded position on this matter, and carefully assess the risks involved.

Economic Incentives

Continuing the recent efforts of Popov et al with their Nash Equilibria work, we are analyzing the IOTA incentive model using increasingly more realistic game theoretical models. This incentive analysis plays a fundamental role in understanding the Tangle behavior and its stability when deployed at scale.

Consensus Algorithm spec

We are working on detailed spec of the Tangle consensus algorithm, building upon the foundation set by the white paper. The main purpose of this doc is allowing public peer review of the algorithm.

Cryptography spec

This spec details all the cryptographic elements of IOTA: the hash functions, signing schemes, and threat model assumptions. The purpose of this document is to provide a basis for a public peer review and audit.

Attack analysis

This project is related to the Coordicide efforts, and involves analytical and numerical analysis of various sorts of attacks, from the simplest side-chain double spend to the more complex thug, parasite chain, and splitting attacks. We are working to get numerical estimations for the cost of attacking the network, and making sure the price tag stays prohibitively in the post-Coordinator world.

Engineering

Projects under active development

Hub

While a number of exchanges have had great success integrating IOTA, it is certainly not the easiest task in the world. Hub simplifies exchange integration of IOTA so that IOTA can be listed in weeks, not months.

IRI

The IOTA Reference Implementation is the de facto model for running an IOTA node. It is the place where both community and Foundation engineers meet and collaborate to improve the Tangle, and the focus of our network target.

Coo-free IRI

As it stands, IRI does not support the Tangle as described in the white paper. In order to support alternate consensus mechanisms, the current approach to consensus must be abstracted out so that it can later be replaced by a fully distributed mechanism. This project is separate from, but closely related to Coordicide, and this separation allows us to work on different parts of the problem in parallel.

Qubic

Enable smart contracts, oracles, and outsourced computation on the Tangle.

Trinity

While the original desktop IOTA wallet got the job done, it is not exactly the best in terms of user experience. With Trinity, IOTA brings a top quality user experience together with in-depth security audits, enabling more people to use IOTA easily and safely.

Local Snapshots & Permanodes

Some IOTA nodes care about the entire history of the Tangle, and some don't. As the Tangle scales, it would become impossible for smaller nodes to keep up. Allowing for local snapshots and permanodes are the 'two sides of the same coin' needed to allow for either permanent and selective storage as required for a particular use case.

C Client

Most existing client libraries are written in higher-level languages unsuitable for embedded devices. Since IOTA is designed for the IoT, it will ultimately be necessary to support small, low-powered, embedded devices, and C is the 'lowest common denominator' programming language for many of these potential applications.

MAM+

While MAM already exists, it is missing a few key features and documentation. A formal specification and improved version of MAM leveraging public-key encryption is currently being written by the experts from the Research Institute for Applied Problems of Mathematics and Informatics at Belarusian State University.

Tanglescope

It's difficult to understand, critique, or improve upon what we can't see. Performance and monitoring tools such as TangleScope allow researchers, engineers and interested 3rd parties to gain deeper insights into the Tangle's network capabilities.

PoWBox

One of the difficulties in developing for IOTA is waiting for Proof of Work results for every transaction. Additionally, small or low-powered devices may simply be unable to do PoW in a realistic timeframe. The PoWBox provides an example of how PoW may simply be outsourced to a more powerful machine, and demonstrates the flexibility of the IOTA protocol

iota.lib.js

The JavaScript client library is widely used for IOTA development, and serves as a reference point for client libraries in other languages.

Curl+

Since replacing Curl-P with the industry standard Keccak hash function, we have enlisted the help of the renowned cryptography experts from CyberCrypt. CyberCrypt's experts will take what we've learned from Curl-P, work to understand IOTA's specific requirements, and design a better, more secure lightweight hash function specifically for the IoT.

The roadmap below shows the progress of various projects within the IOTA Foundation. They are divided into to Research and Engieering sections.

This page will be updated as the projects progress.