IOTA Report: Decoding the Tangle Part (2/4)
The Known and Unknown History of the IOTA Project
IOTA Report Overview
This four-part series aims to provide an in-depth analysis of IOTA. We further discussed the purpose of this series in Part 1:
In Part 3, we contrast the technological promises of the Tangle, as outlined in the Whitepaper, against the current practical implementation of the IOTA protocol:
The Tangle vs IOTA — Comparing theory and practicemedium.com
In Part 4, we question the current implementation of the network’s usability, and examine the future plans of the IOTA network:
In this article (Part 2), we outline and analyze the history of the IOTA project (Part 2).
Summary / TL;DR
- IOTA as a project was formed by Sergey Ivancheglo, Serguei Popov and David Sønstebø back in 2015. Dominik Schiener joined later and formed the official Foundation together with Sønstebø in 2017.
- IOTA was preceded by Jinn, a project with the goal of developing ternary hardware processors.
- JINN tokens were sold during a crowdfunding campaign at the end of 2014. The IOTA crowdsale took place roughly on year later, at the end of 2015.
- JINN token holders were able to swap their tokens for IOTA during the crowdsale.
- The IOTA protocol lacks full audibility and transparency in its provision of past transaction history. There are no verifiable sources providing the necessary information to reconstruct the transaction history of the entire Tangle back to its genesis. This means that users cannot go back to the beginning in order to access and verify the transactions that took place at the start of the IOTA protocol.
- Further information on the genesis state of the Tangle are required to allow for an in-depth evaluation of the verifiable initial distribution of IOTA tokens.
- The IOTA Foundation is well funded and is capable to incentivize developers and the community to further work on the project.
- Despite the initial push for IOTA to be a fully community run project, it appears that a large amount of power and influence over IOTA has been centralized in the IOTA Foundation.
- While the distribution of IOTA is becoming more decentralized, the Top 10 addresses account for a growing share of the supply.
Part (2/4): The Known and Unknown History of the IOTA Project
The founders of the IOTA project are Sergey Ivancheglo, Serguei Popov, and David Sønstebø as well as Dominik Schiener, who joined the team later as a Co-Founder. While Sergey Ivancheglo and Serguei Popov are the main developers of the IOTA protocol, they are very conservative about their public appearances making Dominik Schiener and David Sønstebø the two public faces of the project.
Sergey Ivancheglo is credited with being one of the lead developers behind the NXT project, a blockchain platform which was one the first of its kind, allowing developers to create fungible crypto assets without having to build an underlying protocol, similar to what Ethereum offers with its ERC20 standard. Before NXT, Ivancheglo stated he has worked in game development starting in 1997 and came up with a formal version of his hardware startup Jinn, discussed in more detail later, in 2014.
Serguei Popov is an academic who has a PhD in Mathematics from the Moscow State University and is currently a Professor at the University of Campinas in Brazil. He is credited with being the author of the IOTA Tangle Whitepaper and according to his personal website participated in the writing of 68 academic papers since 1994.
For Dominik Schiener and David Sønstebø, the two main public faces of IOTA, very little background information is available in regards to their experience within the distributed ledger / blockchain industry and outside of it. Dominik Schiener co-founded a fiat crypto exchange in Zug, Switzerland in 2014, which he described as a failure in a German interview. He then went on to win a Blockchain Hackathon in Shanghai in early 2016 with a concept called CargoChain, an Ethereum based Trade Finance Platform.
David Sønstebø co-founded Jinn with Sergey Ivancheglo and Sergei Popov, focusing on business and marketing, a role which he continues to fulfill in the IOTA Foundation. Schiener later joined the project, but we were not able to determine when he joined the project nor how exactly he became involved.
JINN Token sale
Before Ivancheglo, Popov and Sønstebø focused on developing and promoting the IOTA project, they pursued another endeavour called ‘Jinn’. The aim of Jinn was to fulfill Ivancheglo’s vision to build “the first modern ternary general purpose processor”, described as “something between Intel’s CPU and Nvidia’s GPU”, with the purpose of allowing for “ultra-low energy distributed computing” that makes computations for IoT devices more efficient.
After announcing the project in September 2014, the team planned to finance the research and development of the hardware through a crowdfunding campaign. They created a cryptoasset called JINN on the NXT platform that represented a share in the profits of a company founded by Sønstebø and Ivancheglo around the same time.
We have not been able to find any public records of a JINN company founded by Sønstebø. The only public records we were able to find regarding a company founded by David Sønstebø are those for IOTA AS, which was founded in November 2015 directly prior to the IOTA crowdsale.
Nevertheless, the profit sharing assets were sold as JINN tokens on the NXT Asset Exchange in a Dutch Auction to interested buyers in September 2014. In the crowdsale, 100.000 (10%) of the 1.000.000 JINN tokens that were created were sold. The founders retained the remaining 900.000 (90%).
Being one of NXT’s most active members, Sergey Ivancheglo’s announcement of Jinn received a lot of attention in the community which helped the project raise 8,500,000 NXT, valued at approximately $250,000 at the time (assuming an average price of around $0.03 per NXT), enabling the team to start the development of the proposed ternary general purpose processor in Q4 2014.
The sale of an asset that represents a share of the profits and promises dividends from actual hardware sales of a real company raises questions regarding the potential classification of the token as a security. To our knowledge the JINN crowdsale occurred without any formal KYC & AML processes. Securities regulators have been increasingly stating in public their intent to investigate ICOs which they believe qualify as a security. We however know of no statements or actions regarding the classification or status of the JINN token crowdsale.
The founding team, however, seem to be aware of the need to address the structural and legal complexity of such a profit-participating token based on a conversation that David Sønstebø had with a JINN token holder in the IOTA slack channel in March 2017. In the conversation, Sønstebø discussed the need to resolve a full legal contract of ownership of JINN tokens holders. We have not been able to find details of their full approach around this issue.
In November 2015, roughly one year after the team started working on Jinn, they announced a new project called IOTA. The founders pursued a token sale for the IOTA project as well, but instead of issuing a profit sharing token like JINN, the IOTA team aimed to issue utility tokens that can solely be used to transact on the newly created platform. Additionally, the founders allowed participants in the IOTA crowdsale to buy IOTA tokens using JINN tokens at a fixed exchange rate.
In the time since the IOTA project was announced, we have not been able to find substantive public information on, or evidence of, the activities of the JINN company, in particular around the development of the ternary general purpose processor. The website jinnlabs.com has not been active since 2014 (based on archive.org), and there were only three tweets from the JINN Labs twitter account all September-October 2014. We have included this section in the report due to the lack of public information regarding the status and activity of Jinn.
IOTA Token sale
The IOTA crowdsale was advertised as:
“A brand new and novel micro-transaction crypto token optimized for the Internet-of-Things (IoT). Unlike the complex and heavy blockchains of Bitcoin and the like, which were designed with other uses in mind, IOTA is created to be as lightweight as possible, hence the name ‘Iota’ with emphasis on the ‘IoT’ part”
The shift from Jinn to IOTA was a logical step in the eyes of Sønstebø:
“IOTA spawned as a necessity for our vision of the Jinn project, so it only makes sense to first introduce IOTA and then Jinn afterwards”
Investors were able to purchase IOTAs using Bitcoin, or by swapping JINN for IOTA at a fixed exchange rate of 0.0063BTC per Jinn, which corresponds to roughly the same price of JINN tokens per USD at the ICO.
No pre-mine at genesis
What differentiated the IOTA token sale from other crowdsales (e.g. Ethereum) was that the founding team repeatedly stated that there was no official pre-mine or pre-sale, which means the development team did not retain any tokens at the inception of the protocol for themselves. They mentioned that their objective from the start was to create a fully community-driven project, not reliant on a single group of people. By contrast, the Ethereum Foundation did retain a significant proportion (12%) of newly created tokens, with individuals like Vitalik Buterin receiving around 0.7% of the total supply, personally.
Lack of usable Transaction History
Our team attempted to verify the statements of the founders regarding the IOTA crowdsale through analyzing the history of the tangle backwards to the genesis block. However, the full history of the tangle back to its inception is not publicly accessible. Additionally, we were not able to find sources or statements on the structure of the IOTA Tangle’s genesis state apart from those made publicly by the founders.
Problem 1: Finding the transaction history before each snapshot
The difficulty in assessing the early history of the tangle is a result of the fact that the publicly accessible transaction history is erased regularly, and only non-zero addresses are retained after certain events called ‘Snapshots’ (discussed in part 3 of this report). This means that the transaction history of the Tangle gets erased on a regular basis in order to keep the Tangle lightweight and prevent it from expanding too much in size.
To be able to fully reconstruct the entire history of the protocol would hence require someone having all of the historical records from before each snapshot plus the ability to link pre- and post-snapshop versions of the Tangle.
One potential source of the erased transaction history of Tangle before the respective Snapshots is provided by IOTA core developer Alon Elmaliah via ‘pre-snapshot’ files. However, the dates on the pre-snapshot files do not uniformly match up with the known official snapshot dates. For example, the first official snapshot date was in October 2016 and the first ‘pre-snapshot’ record by Emaliah was in September 2016. The lack of an official record or documentation from the IOTA Foundation or core developers on how to reconstruct the history of the Tangle creates extra complexity for identification of the transaction history.
Problem 2: Finding & verifying the genesis transaction
More importantly, we were not able to access in a usable manner the data provided by Elmaliah from before the very first Snapshot by using the software libraries provided by the IOTA foundation for viewing historical Tangle records. The current tools cannot restore the required data (e.g. timestamps or the value of a transaction) from the hash values made available by the IOTA Foundation.
To retrieve transaction data from before a snapshot, one can insert the transaction hash into an online tangle explorer, such as TheTangle.org or IOTAsearch. However, the tangle explorers are also unable to access records for a transaction hash from the before the first Snapshot. When a user puts such a transaction into the tangle explorers no data is retrieved. This can easily be verified by doing the following steps.
Step 1: Insert a transaction hash from the pre-snapshot file dated at Nov. 24th 2016 (e.g. HRDVCRZMCWTLRYJSLRXMHIYSGFDXYVHUFYOQPFTYJJHMIZXKHKM99YVOHENDAK9HN9GMBOYOHBZ999999) into a tangle explorer.
Result: We are able to obtain the transaction data.
Step 2: Insert a transaction hash from the file containing the transaction hashes before the first Snapshot file (e.g. YJWXVPWVKVDQPBNXENXEIVBTJEZ9EWSBAPNBAFAFXWR9LGEW9ZBOPY9CUPGBIXLGKHNZCIBTBBLTC9999) into the tangle explorer.
Result: No data is being retrieved.
On January 30th we reached out to the aforementioned core developer of IOTA, Alon Elmaliah, if he can help us to decrypt the transactions. We found out that he has not done it himself as he replied that he “added an issue + help wanted” on Github. As seen in the picture below, up to this day, the Github issue is still open. While it may be possible to reconstruct this pre-snapshot, the publicly available tooling is currently insufficient and would likely require an individual to have a high level of technical knowledge combined with understanding of the IOTA schema structures.
Why is important to have the transaction history of a distributed ledger protocol openly available for the public to see?
It is important because otherwise users cannot easily verify the entire history of the ledger, meaning that every transaction that occurred prior the first Snapshot could have been subject to a double spend or any of the potential attacks of DAG based systems, which we will outline in the 3rd part of this series.
In other words, it limits the ability of IOTA users to have full transparency and auditability of the Tangle. Such auditability is one of the most important features of most blockchain-based systems, such as Bitcoin or Ethereum.
We have no reason to doubt the public statements of the founders regarding the correct execution of the IOTA crowdsale and the following transactions that occured pre-first Snapshot. However, we do find it concerning that there is no ability to independently and accurately see the history of the tangle back to its genesis. Such a capability is one of the key foundations of having inherent trust in a decentralized cryptocurrency or cryptoasset, as it allows anyone to be able to verify the truth of the protocols history without needing to rely on the public statements of others or a centralized authority.
The number of IOTAs to be created at the genesis of the Tangle was shifted from the 1,000,000,000 from the initial token sale to 2,779,530,283,277,761. According to IOTA documentation, this number is more suitable for ternary processing and the “high supply makes IOTA optimal for tiny nano transactions while still keeping efficiency in mind”. However, we could not find any information about how exactly these newly added tokens were distributed, nor why exactly the developers went through the trouble of changing the supply post token sale, other then the reasons outlined above.
Call for transparency
We believe it would be in the communities interest to have an independently verifiable source show the genesis state of the Tangle. Additionally, we also believe it would be in the communities interest to have transparency from the founding team regarding the amount of IOTA they purchased or have received by other means during or after the initial token sale. Such information is valuable to understand the incentives and participation of the different members of the founding team in the ongoing development of IOTA as a technical protocol and a community.
Since the IOTA crowdsale at the end of 2015, the founders have referred to themselves as the ‘Foundation’. Shortly after the token sale, the founders started to collect donations from IOTA token holders to provide resources beyond the $526k in BTC raised in the initial token sale, to further the development of the IOTA protocol as they anticipated that the funds raised would not suffice to fulfill the long development roadmap that was ahead of them. At the end of May 2016, the official IOTA wallet, created by the founders, included a request to donate IOTA to support the Foundation.
The formation of the IOTA Foundation as a legal entity in Germany occurred in October 2017 and was announced in a blog post by David Sønstebø. According to Dominik Schiener, as of November 2017, the IOTA Foundation owns around 142Ti ($255 million) as foundation funds, 22Ti ($22 million) in the ecosystem fund which is used to incentivize IOTA developers and enthusiasts to enhance the community and 20Ti ($20 million) of unclaimed IOTA from the crowdsale. Note: These $ dollar values are based on the exchange rate ($1.79) on February 23rd, 2018.
The Foundation, both as a concept prior to its actual formation and now as a legal entity, look to play a critical and central role in the IOTA protocol. One such role, is the operation of the IOTA ‘Coordinator’ which has been operated by the Foundation since the inception of the protocol, including prior to the October 2017 founding of the Foundation. The coordinator plays a core technical role in the IOTA protocol, as it is currently one of the major factor that contribute to the networks centralization problem. The details of the coordinator will be further discussed in Part 3 of this series.
Despite the initial push for IOTA to be a fully community run project, it appears that a large amount of power and influence over IOTA has been centralized in the IOTA Foundation. Additionally, based on reviewing the publicly available foundation documents (‘Stiftungsatzung’) for the IOTA Foundation, it looks as though Dominik Schiener and David Sønstebø have appointed themselves to life-long positions in control of the Foundation. As our team are not experts in German foundations or structures, we are not able to assess the extent of control that the two have over the Foundation nor if this is a normal set-up for such an entity. However, this level of control seems to indicate that the success or failure of IOTA will be largely dependent on the vision and leadership of both David Schiener and Dominik Sønstebø. We believe that it is important for the community to understand this and to use their own judgement as to its impact on the future of IOTA.
Evolution of Supply and Distribution of the Token
Note: The genesis distribution is based on the file uploaded by Sergey Ivancheglo on the IOTA bitcointalk forum on March 6th 2016 and it is not technically verified by our research team for the reasons described above regarding access to the history of the Tangle.
Overall there has been an increasing broader distribution of the IOTA tokens. However, there has been an increasing concentration amongst the largest IOTA wallets. The relevance of this comes from the ability for those having holdings to have an outsized impact on the market price of the token. The source of this concentration at the top does not look to be particularly unusual, and is likely driven at least in part by the IOTA Foundation now holding around 5% of all tokens as well as exchanges potentially aggregating user deposits into single wallets. As a result, we believe it is worth being aware of, but not a major concern.
In Part 3, we dive deep into the technology deployed by the IOTA project, the differences between the protocol as described in the Whitepaper and the actual implementation, and proposed future improvements to the protocol:
The Tangle vs IOTA — Comparing theory and practicemedium.com
In the last part of our four part series, we are going to evaluate the possibilities and limitations of IOTA and analyze past controversies surrounding the IOTA Foundation.
At Konfid.io we have composed a detailed report on the IOTA project: we provide a condensed but informative four-part summary on Medium, aimed to give an overview of IOTA for entrepreneurs and companies that are planning to build on the protocol, as well as for developers and crypto-enthusiasts that are interested in the Tangle.
What is Konfid.io?
Konfid.io is a technology consultancy and venture studio based in Berlin that focuses on Blockchain technology to build decentralized applications in private as well as public distributed systems. We constantly research the practical usability of distributed ledger projects and like to share our findings with the wider community.
Disclosure: Dr. Mervyn G. Maistry, CEO & Founder of Konfid.io, is an early supporter of DLTs since 2014 and a strong believer in the potential of DAGs as a technology. He was an advisor to IOTA and personally to Dominik Schiener and David Sonstebo, advocating for setting up a transparent and corruption-free foundation in Germany and introducing them to a number of Fortune 500 and Dax 30 clients . Since June 2017, there has been no communication and no business relationship between Dr. Mervyn G. Maistry and the IOTA foundation, its founders or any of its functionaries.