It’s closing in on a year since my last deep dive which I gave on EOS back in July of 2017.
A lot has changed in the cryptocurrency and blockchain landscape since then, and so I decided to embark on series of giving deep dives to a number of innovative blockchain projects.
As a moderator for Reddit’s /r/Cryptocurrency (which can receive as many as 10M unique monthly visitors) I do a pretty good job at being up-to-date on the latest crypto launches.
However, today I’ll be doing a review of a coin that I completely overlooked until it had broken the Top 50 coins by marketcap.
Token Name: Internet of Services TokenSymbol: IOSTType: ERC-20 TokenTotal Supply: 21 BillionMarketCap: $266M as of April 8th.Social Media: Reddit, Discord, BitcoinTalk, Twitter, MediumWhitepaper: IOST Primer, Technical White Paper
The “Internet-of-Services” (IOS) blockchain is a project out of China that is aims to address the fundamental scalability challenges faced by blockchain technology in order to empower people, services and machines to scale robust services on a network with a thouroughput of more than 100,000 TPS (transactions-per-second).
The blockchain has built in features for:
Well, first of all, current blockchain’s have a problem — a big problem. They can’t yet handle transactions at scale.
It doesn’t matter if you are:
All these actions require the blockchain to ‘validate’ and process the transaction.
To put it into perspective, people like to compare blockchain tps against the Visa Network which handles around 2000 tps on average. While the Visa network seldom handles more than 4000 tps, the network is estimated to be able to handle around 56,000 tps.
The problem with this comparison is two-fold:
To put this question into perspective based on the IOST blockchain and what they hope to achieve, we’ve got to look at another ‘smart blockchain’ — that is to say we have to look at a blockchain that allows the processing of programmable contracts and code execution, rather than just looking at a blockchain that only facilitates transfers or payments.
**Comparison #1 — Ethereum:**Ethereum is the current king when it comes to being a robust smart contract platform and having live useable dApp products.
On January 4th, 2018, a few months after the chaos of the CryptoKitties Craze rendered the Ethereum network practically unusable for nearly 24-hours, Ethereum had it’s highest transaction day of all time processing 1.35M transactions in a single day.
Broken out evenly across the day, this would account to roughly 15 TPS.
During this time, processing at 15 TPS, transfers become very slow and Ethereum’s “gas price” skyrocketed costing users significant fees for using the network.
**Comparison #2 — Stellar:**Stellar is a blockchain managed by the non-profit Stellar foundation and partnered with companies like IBM and Square.
Stellar is what is called a “decentralized permissioned blockchain” meaning that through use of its quorum slices, validators, and trusted nodes, their “Stellar Consensus Protocol” (SCP) isn’t quite as decentralized as other blockchains, but it gives them advantages in speed and cost.
Recently, a team at Barclay’s testing the Stellar protocol on Google Cloud infrastructure was able to stress test a private version of the Stellar network and achieve a transaction rate of 10,000 TPS. But, it is important to note that this was in a perfectly controlled lab environment and not on the public blockchain.
How does IOST aim to scale up to over 100,000 TPS when current infrastructure is struggling to process that volume on a daily basis?
#1 — Light Weight Nodes/IoT nodes:
One of the first big wins for IOST is that not all nodes are created equal. To be a node in the Bitcoin or Ethereum network you at the very least need to use a dedicated computer to store the blockchain and validate transactions through mining — in many cases, you may even need a dedicated server to handle this.
For IOST, there will be “First Class Nodes” that have full functionality, and “Simplified Payment Verification Nodes (SPV)” as a method of simply verifying a transaction.
It’s the goal of IOST to target a lightweight enough node system that any smart connected device from computers, to drones, to unmanned terminals can be a node in order to verify and act on transactions.
#2 — User Reputation and Community Rewards:
One of the biggest challenges of distributed ledger technology outside of scale, is what is known as the ‘bad actor challenge.’
A bad actor is anyone who harms the collective technology for their own benefit.
For example, on the Ethereum network we’re usually bad actors when we send small transactions (such as actions in CryptoKitties) to the network. We know they are low priority, low fee transactions that ultimately clog up the network, but we want to take our next game action so we do it anyway.
In IOST, users can be rewarded in one of two ways:
In the FTFS system, users, services and contracts can receive feedback based on their actions and interactions with others. Having good feedback will effect their “believability score” (which we’ll outline below) which ultimately leads to benefits within the blockchain and encourages users to act in the best interest of the community even when they are pseudo-anonymous.
The Servi token on the other hand is a rewardable token that will be distributed when users take voluntary actions to help the network. This could include providing a pro-bono community service, reviewing third-party services, or making other contributions to the community.
These Servi tokens are a non-tradable, self-destructing asset that contribute to a users ‘believability score’ on a one-time (per transaction) basis.
**#3 — Proof-of-Believability/Believability Score:**Most networks have nodes where there is a pay-for-authority kind of loophole.
In mining PoW networks, you can buy equipment to up your hashrate.
With masternodes and PoS networks, you lock up capital in dedicated nodes to become the validator.
IOST aims at building a faster and fairer system through what they call “Proof-of-Believability.”
Proof-of-Believability acts as a hybrid to the classic Proof-of-Stake model.
In Proof-of-Believability each node will have a “believability score” based on:
The IOST network will randomly, and algorithmically select a set number of validators for each block. The nodes with a higher believability score in the network are by design more likely to be selected, but it is never guaranteed.
Rather than strictly setting validation to a set group of trusted servers or masternodes, the PoB system is constantly selecting a random group of validators based on the reputation of good actors within the ecosystem.
Since users cannot guarantee that they will be the validator on any future block, it reduces the risk of malicious action, as you would need >51% of the randomly selected actors to be bad actors with the same goal to compromise the network and this is almost impossible in a crowdsourced reputation environment where you are more often picking the ‘good actors.’
**#4 — Efficient Distributed Sharding (EDS):**Another feather in the cap of IOST is their proposal of the Efficient Distributed Sharding or “EDS” system.
This allows them to split the workload across nodes, and monitor the workload on nodes as well as the general network health.
When a node is overworked the EDS system selects another node to allocate some of the incoming workload to allowing a linear scaling of network capability as new nodes enter the ecosystem.
#5 — Atomix:
The IOST Atomix system, is an atomic commitment system designed to prevent issues such as “double-spend attacks.”
When a network can have multiple transactions taking place we run into an issue where we could have two transactions that impact each other:
Transaction A: “Transfer 100 IOST from address X to address Y”
Transaction B: “Check the balance of address X”
If we have these transactions take place within the network at the exact same time, we’re going to run into issue. For example, if the goal of “Transaction B” is to check that a user has a certain balance before proceeding with a transfer, and it checks just before or during “Transaction A” takes place then we will be generating a false-positive response for “Transaction B.”
In order to deal with this, we need to handle the events as “an atomic unit” that are dealt with as a whole, and where the results of each transaction must be completed without error for any transaction to proceed.
If we take this problem in the other direction, we could have a very complicated transaction with 17 different steps, and our Efficient Distributed Sharing (EDS) system decides to split each of those steps across 17 different nodes.
If one of those steps has a conflict and fails, but the other 16 were able to process successfully, this would have unexpected, and possibly damaging impacts to the network.
To deal with this problem, IOST is bundling the transaction steps as an atomic unit, even when it is spread across different processing entities.
This ensures that the entire process either successfully commits, or entirely fails as a full atomic unit, and that no partial transactions take place.
#6 — Micro State Blocks:
The last key feature of IOST’s scalability is the one that, I unfortunately have the least technological understanding of, and yet, ironically am most excited for.
IOST has proposed a concept called “Micro State Blocks.”
One of the challenges traditional blockchains face is that they store a new ‘block’ of data every few seconds. This block is to record what happened in the blockchain in those few seconds, such as any transactions. Even if nothing took place during that time, the block still has to be issued.
There is no NULL in the blockchain, there is no skipping blocks. If nothing happened you’re still storing an ‘empty block’ but it is often the same size, or nearly the same size as a block that stores transactions.
Over time this blockchain gets larger and larger, but still needs to be stored on the node in order to validate transactions. This gets to be a significant problem over time.
For example, right now, in April 8th 2018, the Bitcoin blockchain is roughly 165 GB in size. That means if you want to run a node, you need to download and store 165 GB worth of information.
One of the most compelling aspects of IOST is the quality of their team. While many projects rely on individual developers, the IOST Foundation has a team of more than 18 highly experienced core developers, including:
The token was distributed in a private token sale which sold 40% of the total 21 billion IOST to private fund investors.
The IOST Foundation also announced that they were locking up all 7.35 billion of their IOST tokens from the foundation allocation until the launch of their mainnet.
No, the mainnet isn’t launched yet.
IOST recently published the first of their code to their public Github — building a new blockchain on an entirely new consensus protocol is something that takes time. But, IOST has been moving at an aggressive pace.
Based on their roadmap they hope to deploy a fulling functioning testnet by Q2 of 2018, and launch a full standalone network in Q3 of 2019.
Given the ambition of the IOST project, they’ve also managed to bring on board some top brass investors including the Chinese arm of leading Venture Capital firm Sequoia Capital.
Some of their other prominent advisors include:
Looking at IOST on CoinCheckUp.com we can see that over the last 30-days IOST has seen strong performance even in the bear market seeing daily volumes between $30M and $150M since it began trading on Binance.
In fact, IOST, even in the bear market of early Q1/Q2 2018 — IOST grew by 56.45% in March, making it the 4th fastest growing of the top 50 coins, beating out investments like EOS, Binance Coin, Tron, Bitcoin and Ethereum.
Disclaimers:
What coins are up next?
Over the next few months I’m going to be deep diving coins like:
And many more, leave comments in the comment section to vote for your favourite, and don’t forget to subscribe so you never miss a detailed primer!
Edit: An earlier version of this article called a number of prominent figures “investors” when they are in fact “advisors” for this project.