IOTA: A Tangle for the Internet of Things — Analysis & Review
IOTA is an innovative cryptocurrency that aims to solve the familiar block capacity-related scaling problems of widely adopted cryptocurrencies by implementing a “tangle,” or Directed Acyclic Graph (DAG), instead of a blockchain. In the tangle, each transaction is its own block: transactions are each linked to a few others instead of being arranged into chronological blocks. Each IOTA transaction accepted into the network must confirm two previous transactions, and network nodes make sure that approved transactions are not conflicting.
The tangle is envisioned as a fast, fee-free, quantum-secure, and infinitely scalable backbone for interoperability on the Internet of Things (IoT). The team envisions an open market for tradable technological resources, such as sensor output and smart energy grids, that could facilitate data storage and verify it on the ledger. IOTA also aims to facilitate micro-transactions (“flash channels”) between individuals, data transfer, decentralized voting, masked messaging, private transactions, and leasing services for the sharing economy.
Although the theoretical promise of the technology is massive, some fundamental aspects of IOTA’s technical implementation need improvement:
- The coordinator that decides where the tangle needs to grow, and protects against 34% attacks, is currently centralized, and if the developers shut down the coordinator, no transaction confirmations can occur. The IOTA team intends to replace the current coordinator model with a distributed one, but this has not happened yet.
- The technology’s cryptographic algorithms may not be strong enough to withstand attacks: a bug exploit related to key re-use forced the shutdown of all transactions via the centralized coordinator in October 2017.
- The IOTA Foundation is able to sweep users’ tokens to IOTA Foundation-controlled addresses as a “security precaution,” indicating an alarming degree of centralized control.
- The team “rolled its own crypto” by using their own Hashcash-similar function to confirm transactions; when an MIT-based team found security vulnerabilities with the code, the team claimed that the problematic code was there to provide “copy protection.”
In addition, key aspects of the IOTA user experience are currently sub-optimal:
- Users are warned not to use the same send address more than once because doing so could expose their seed to hackers.
- Describing the official wallet (v2.5.4 and earlier; v2.5.5 has been released as of December 19, 2017) as a barely functioning alpha-level product would be kind: users need to manually reattach and rebroadcast unconfirmed transactions, and unexpected steps are required to newly restore a wallet from the seed.
- The wallet technology doesn’t play nice with exchanges: most exchanges that offer IOTA trading seem to have frequent issues processing deposits and withdrawals.
Nevertheless, if these obstacles are overcome, IOTA could be a truly game-changing cryptocurrency.
The IOTA ICO was held in Q4 2015 and raised a total of 1,337 BTC, which then had a value of $584,000. In total, 2,779,530,283,277,761 IOTA (2,800,000 Gigaiota) were created, and no more will be created through mining. The original ICO offer was for 999,999,999 “old IOTA,” which was proportionally converted into the 2,779,530-GIOTA supply that exists today.
The crowdsale was straightforward:
- Only BTC and JINN tokens (which were locked at a fixed value of .0063 BTC per token) were collected.
- There was a 15% bonus for the first 9 days and a 7.5% bonus during the next 9 days. The final 9 days received no bonus.
On the surface, the capital structure was exceedingly fair and generous to investors, with no developer holdback or pre-mine of any kind. However, the developers theoretically had the ability to contribute their own BTC to the project, which would then go back to themselves while still granting them tokens. A Medium post by Ingo Fiedler analyzed the distribution of IOTA tokens amongst addresses. The first major exchange to list IOTA was Bitfinex, where it debuted to a market cap of over $1 billion on June 13, 2017.
The use of ICO proceeds and subsequent donations has become evident as development has progressed:
- During the ICO, the team announced that the crowdsale would facilitate the development of both software and the Jinn hardware processor (which would strengthen the network during its growth phase).
- The IOTA Ecosystem Fund, announced in May 2017 with a valuation of over $10 million, exists to fund the development of libraries that will be useful to the community.
- New staff members are frequently announced through the IOTA Blog.
- The IOTA Foundation carries out several functions, including core development, development bounty distribution, collaboration with other companies, and public relations. The foundation has teamed with F6S, a platform for startups that has a roster of over two million developers.
IOTA plans to address several key issues facing the blockchain space:
- Scalability — The problems with the level of overall transaction throughput allowed by major blockchains like BTC and Ethereum are rapidly worsening. With increasing adoption, BTC transactions can take hours or days to confirm, and Ethereum transactions can get stuck because miners are too busy processing transactions like CryptoKitties birthing.
- Fees — The increasing base value of BTC and organic transaction pool growth combined with the increasing prevalence of spam attacks on the network have left users paying extremely high fees to send BTC transactions.
- Interoperability — There is currently no way to modularize information services and package them within a widely accessible marketplace. Many people who would otherwise have the potential to market a technological service have no central gateway through which to find a client base.
- Quantum vulnerability — It is theoretically possible that the advent of quantum computing could generate computers that are able to break the cryptography of first-generation cryptocurrency algorithms.
The project is very ambitious: it intends to provide both basic and advanced functionality to address the entire cryptocurrency market. Not only does IOTA intend to provide a scalable, feeless value transfer mechanism, but it intends to encapsulate many second- and third-generation functions. In theory, when fully implemented, it could take over the market capitalization of the majority of the current cryptocurrency market.
IOTA’s development team aims to address the problems above by developing a complete ecosystem centered around the token. Some key aspects of the technology are:
- The tangle, a DAG in which each transaction must solve a proof-of-work problem to confirm two previous transactions. This makes the network highly resistant to spam attacks, because transaction spam would theoretically help the network to confirm additional transactions. This also eliminates the need for time-ordered blocks, increases the system’s scalability, and eliminates the need for transaction fees.
- Winternitz hash-based cryptography signatures and the self-designed Curl hash function, which are designed to reduce the proof-of-work burden for individual transactions. IOTA has hired the Cybercrypt ApS organization to help guide the maturation of its cryptographic algorithms.
- A distributed data marketplace for information generated by sensors owned by third parties. This has the potential to enable an information economy that could facilitate research and other interesting projects. For example, IOTA has partnered with REFUNITE, a missing persons database, to track and reunite refugee families after crises.
- A Masked Authenticated Messaging platform that enables censorship-resistant data communication. This platform could fulfill communication needs where both integrity and privacy are essential.
- CognIOTA, a distributed machine-learning-as-a-service platform that uses IOTA as its payment system.
- Flash Channels, which are designed to facilitate instant and feeless bidirectional off-tangle transactions. This idea is analogous to the Lightning Network.
- The IOTA Wallet, which allows users to sign in using a custom-generated seed. Unfortunately, the wallet has several functionality issues and needs improvement.
The IOTA token is useful as a store of value for both speculative trading and spending. Toronto-based Green Protocol has designed a new point-of-sale system so that IOTA can be directly accepted at stores. Other IOTA payment solutions include an IOTA and Ethereum POS certified by KnightsTemplar.io, WiFi payment terminals, and peel & stick NFC labels. Although these have not been adopted widely, their availability reflects favorably on prospects for adoption.
The token also serves as the unit of payment for all of the marketplaces listed above, such as the sensor data streams listed on IOTA’s data marketplace.
The IOTA token has gained value in part because of the promise of extensive technological development going into the platform. The token value has increased by several orders of magnitude and enabled community members to give back to the IOTA ecosystem. The IOTA Foundation is aided in its fundraising efforts by its extensive partnerships and its status as a nonprofit organization in Germany. All of the tokens that will ever exist were distributed at the time of the ICO, meaning that no further supply inflation will ever occur. The token is listed on multiple high-volume exchanges to provide liquidity.
Although IOTA has gone forward with some elaborate elements of its second-layer build out, such as marketplaces, the vast scale of IOTA’s ambition means that much more work remains to be done to realize the founders’ vision. Further, some basic features, such as the wallet, need improvement before end users will be satisfied with their experience. The IOTA Development Roadmap does not list any specific dates, but it details aspects of the project on which the development team is currently focusing:
- The IOTA Reference Implementation is currently written in Java, but is being ported to C++, and then development will continue in C++. Additional development will be done in Rust and Golang.
- The Light Client is listed as “Completed” on the roadmap, but versions up until now have had serious problems with certain core functionality, such as getting transactions to confirm and attach to the tangle. On December 19, 2017, IOTA released a new wallet client, v2.5.5, that claims to move away from reattachments and toward “Transaction Promotion,” which they claim significantly increases transaction confirmation rates and tangle reliability.
- IOTA is developing a Swarm Client, which is intended to enable IOTA clients running in resource-limited environments to shard the core logic and database among different devices. This would enable a cluster of devices to transact without being considered full nodes and lead to reduced trust requirements from light clients.
- A networking broker will enable users to switch between different network protocols while maintaining a connection to the peer-to-peer network and facilitate secure peer discovery.
- Automated snapshotting, which is similar to blockchain pruning but groups several transfers to the same address into a single record, reducing storage requirements.
- An Identity of Things protocol that assigns unique identifiers and attributes to devices in the Machine Economy. This could facilitate predictive maintenance and detection of anomalies and intrusion.
- Permanodes, which would store the entire history of tangle data and keep it accessible permanently, facilitating operations such as audits.
- Flash Channels, a Lightning Network-like system that will have no fees to set up, making it suitable for nano-transactions.
- Private Transactions; these will use token shuffling in the first iteration, but a more thorough implementation involving techniques such as zero-knowledge proofs is also being investigated.
- Oracles will be designed to feed outside data into the IOTA network.
- Stress testing, network simulations, sandboxing, and education initiatives will be used to perform fundamental research on the viability of this technology and provide direction for further development.
The wallet product released before the December 19, 2017 version (v2.5.5) had serious issues with transaction confirmation. Often, users would have to spend time manually reattaching and rebroadcasting transactions until they would go through, sometimes to no avail. Exchanges have also had to disable withdrawals because of network congestion, which theoretically should not be an issue with the tangle. Hopefully, these problems will be resolved in wallet v2.5.5 and above.
Combining all of the above attributes into one blockchain project is unique to IOTA, but there are various other companies attempting to fulfill certain needs that IOTA also intends to address:
- Byteball also implements a DAG to solve the scaling problem, but Byteball uses a main chain for including transactions and does charge transaction fees. The development of IOTA has progressed farther than that of Byteball, and Byteball does not seem equipped to challenge IOTA in everything it plans to do.
- RaiBlocks is another so-called “fast, feeless, and minerless” (FFM) cryptocurrency, but it differs significantly from IOTA in how it reaches this goal. While IOTA requires each transaction sender to perform proof-of-work on two previous transactions, RaiBlocks operates on a “block lattice,” in which each address has its own blockchain to which it can add. RaiBlocks also uses a different confirmation system based on a representative system.
- A few other cryptocurrencies have eyed the information-as-a-service model, such as the little-known Condensate, which intends to publish information from environmental sensors to its blockchain. However, the development of Condensate is stalled, and no other chain has gotten as far as IOTA with this type of development.
- In general, dApps currently gravitate towards being Ethereum-based, although Ethereum cannot replicate all of the technical achievements that IOTA promises.
- Other so-called “third generation blockchains,” such as Cardano, EOS, RChain, and Aion, also aim to solve scalability and bandwidth issues, but none of those other chains aim to offer all of the different types of buildout envisioned by IOTA.
(Image credit: Peter Ryszkiewicz)
IOTA was founded by a team including David Sønstebø, Sergey Ivancheglo, Dominik Schiener, and Serguei Popov. Sønstebø is a serial entrepreneur who had been working full-time in the blockchain and distributed ledger technology space since 2012. He is also involved with the semiconductor industry with an emphasis on artificial intelligence and IoT: in 2014, he founded a startup called Stealth that developed ultra-low-power processors for the IoT. This interest in IoT technology is strongly reflected in the IOTA ecosystem’s initial buildout. Unfortunately, he is sometimes abrasive on Twitter and Reddit; therefore, IOTA would be well served by maintaining a strong public relations department to relate to users and defray criticism.
The other cofounders also had strong backgrounds in relevant blockchain-based technologies, such as Schiener’s prototype of a proof-of-identity device on the BTC blockchain that uses a fingerprint sensor and a Raspberry Pi to enable users to register their identities on the blockchain as a SHA256 hash produced by their fingerprint data. Sergey Ivancheglo was also involved with the NXT and JINN projects.
IOTA currently has a rapid rate of hiring new Foundation members, and new hires are frequently featured on the IOTA blog. Although the initial crowdfund was quite small, The IOTA Foundation currently has a valuation north of $100 million, giving it ample resources to retain talent and pursue all of its parallel initiatives. IOTA also has several partnerships with other companies that provide access to developmental resources, some of which are listed above, although the announcement of an official partnership with Microsoft turned out to be a mistake.
IOTA has a strong community following, in keeping with its rapidly rising monetary value:
- Reddit — over 79,000 subscribers
- Facebook — over 31,000 likes and 34,000 followers
- Twitter — @iotatoken, over 58,000 followers; @iotasupport, over 33,000 followers
- YouTube — Tangleblog, over 5700 subscribers
The community seems cognizant of both the strengths and weaknesses of IOTA. On the one hand, people are excited about IOTA’s potential to innovate. The potential for advanced buildout may attract some investors, but the average user is not so concerned with the IoT applications and other bells and whistles that may be far from wide implementation. Instead, most people seem excited by IOTA’s zero-transaction-fee promise, theoretical scalability, high divisibility, and short transaction times. The potential for basic improvements over BTC as a transactional medium and value store have led some to see IOTA as a possible future contender for BTC’s throne.
On the other hand, the community is also well aware of the serious user experience issues that have plagued IOTA. Using versions of the wallet before v2.5.5 has proven akin to digitally banging one’s head against a brick wall, with strange rules about address re-use, stories of disappearing balances, and difficulties with manual reattachment/rebroadcast of transactions. Exchanges frequently disable withdrawals due to “network congestion,” even though a high transaction volume should ensure a high confirmation rate (but could slow down processing, according to the concept of the “adaptation period” in the Whitepaper). Many end users have branded IOTA as a non-functional technology that is “not ready for the bigtime” after experiencing these difficulties. In addition to being put off by IOTA’s public relations gaffes, old-school blockchain enthusiasts are concerned about the centralization of the coordinator, the team’s ability to transfer tokens without the owners’ consent, and other centralization issues.
Overall, community sentiment seems enthusiastic about the technology’s high-end potential but wary of IOTA’s poor finesse in the technical execution of its publicly released products.
+ Outstanding basic attributes as currency (no fees, transaction speed, divisibility)
+ Theoretical improvements of tangle over blockchains (scalability, no miners)
+ Ambitious plan that could tackle many important problems
+ High level of developmental resources
+ Well capitalized and has effective partnerships
+ Good progress on buildout of advanced features
– Slow improvement of user experience, such as basic wallet software
– High degree of centralization of technical functions
– Cryptographic weaknesses have been exploited
– Scale of project increases executional risk
CHAINROCK is a digital asset research and investment group, focused on blockchain technology and cryptoassets. We strive to be a trusted resource, providing transparency and insights in the crypto space.
Learn more about us here.