An analysis of Witnet’s fundamentals

Due diligence on the witnet network, it’s token and technology

DD chef
7 min readFeb 6, 2021

--

Introduction

In broad strokes, witnet is a decentralized oracle solution that is pretty similar to Chainlink and Band, as the main idea behind it is to have a network of nodes from which a random set is chosen to serve each data request, so in order to corrupt the data one would need to gain control over this random set.

Traction

Mainnet was launched in October 2020 but it hasn’t been integrated by any protocol/dapp yet.

I expect the first integrations to be hard, since oracles are a key piece in any protocol and using witnet would provide little benefit over other solutions while it would have multiple disadvantages:

  • It hasn’t been tested in real world scenarios and thus it has a lower reputation and a higher chance of problems appearing compared to other solutions
  • Centralization concerns explained in “Token distribution”
  • Cost of integrating it versus other solutions is negligible

Band managed to establish it’s initial reputation by targeting a market segment (cosmos chains) underserved by other solutions, but witnet right now only has a bridge to ethereum, so it’ll be competing against well-established brands there.

There also seems to be plans to create a bitcoin bridge, which may hold some promise as there seems to be an upwards trend in interest on DLCs, which require oracles, on the Bitcoin chain, and this market is currently not served by anyone. However, bitcoiners have been traditionally against any system that introduces new tokens, so adoption might struggle because of that.

Community

The discord averages something like ~1–2 messages/day and there only seems to be a single active community member that is engaged enough to build things. This is quite problematic, since chainlink seems to get a lot of bizdev done through it’s community.

Token distribution

Currently the token distribution is as follows:

  • 10% (250M) is from Republic investors — unlocked, they paid a little bit above 2.4c.
  • 10% (250M) Foundation and stampery stakeholders — 6m cliff, 24m vesting
  • 10% (250M) Foundation — unlocked, meant for incentivizing community projects
  • 70% distributed through mining, with a reward of 480k/day that halves after 5 years

A big problem with mining is that it uses a model which they call reputation-based mining, which is basically a copy of Algorand’s VRF lottery but instead of weighting the nodes based on staked value it uses reputation, which is obtained by serving a data request.

This leads to a positive feedback loop where serving a data request increases the reputation, increasing the chances of serving another and increasing reputation even further. Thus nodes that serve requests will have their reputation snowball and it will become harder and harder for other nodes to catch up. There’s some protections against that in the form of demurrage but these do nothing against the fundamental problem. So essentially once the reputation weights have been established the system should remain mostly static.

Because of this, it’s extremely important for miners to ensure that on mainnet launch they start gathering reputation, and to do that they can do two things:

  • Stake tokens and serve data requests. This converts the system into PoS and, on launch, only a select amount of parties have tokens, so it leads to the disastrous scenario of “the rich get richer”, which completely screws token distribution as rewards are not widely distributed.
  • Run a lot of nodes and hope that some of them win the lottery and mine a block.

The problem with the second one is that the node software provided by the witnet devs assumes that a node has a single key pair and thus a ticket in the block proposal lottery. However, due to the fact that there are no PoS nor PoW requirements to run a mining node, it’s possible to write software that checks a lot of key pairs for every block proposal, thus simulating a lot of nodes. In other words, someone running the of-the-shelf mining software will get a single ticket per block while someone using a modified version will be able to simulate a lot of nodes on the same hardware and thus multiply it’s chances of mining the block, thus turning the system into PoW. I haven’t found this explained anywhere, so probably only tech-savvy individuals that know the system well are exploiting this, centralizing the reward issuance on their wallets.

Furthermore, there’s already some evidence that this is already happening, some community members have estimated that there’s currently 1M nodes on the network, but this is completely impossible considering that if each node ran on a 3$ VPS this would mean there’s a total monthly spend of 3M$ on nodes for a network that is generating only 0.45M$ in monthly illiquid rewards, something which is untenable.

So all in all, a system that was defined as not PoS nor PoW on the whitepaper is actually both, and mining is exploitable with custom software. On top of this, the team behind witnet is the best positioned party to exploit that, since they know the system in and out and have a ton of tokens on launch.

This is a huge problem because not only it threatens the distribution of the token but also the decentralization of the network, from which the network derives all of it’s value. Also, a centralized set of miners is especially dangerous here because of the lack of protections against staking-focused attacks such as nothing at stake or long range attacks.

It must also be noted that all this is not explained anywhere, I’ve only managed to piece it together by reading parts of the docs, the whitepaper and the messages on discord of people complaining that they’ve been running a node for months and haven’t mined a single block.

Token technicals

  • Large initial issuance of tokens through mining/farming (as is the case here, where the first halving will only happen after 5 years), has proven to be horrible for tokens such as CRV or ZCASH, as it leads to high inflation and a lot of tokens being dumped on the market by miners.
  • Coins are very centralized and a dump by one of the major holders could crash the market
  • Token utility is weak (it’s a simple fee token)
  • The only market where it’s possible to trade the token right now are OTC channels with very little activity (the main one only had 9 offers posted through the entire month of January) where only miners are selling and the total float available is extremely small (<3M WIT whereas current market cap is >500M WIT). This means that liquidity and volume are extremely small and true price discovery is impossible.
  • Currently the token is not listed on any DEX nor CEX. The team’s plan is to do nothing on this area and just wait for exchanges to list the token organically (which would require an integration with Witnet’s blockchain, so even these shitty exchanges that list any ERC20 are unlikely to work on) or wait for the community to build some token bridge to ETH so the token can be traded on DEXes there. This is quite concerning, since Chainlink extracted a lot of value through it’s token (community, bizdev, brand awareness), so if the team overlooks this part it will miss on a lot of opportunities.
  • At the current OTC price of 0.03$ (not real as market is too illiquid), it’s fully diluted market cap is 75M$, whereas Tellor is at 55M$ and Band at 972M$.

These problems seem to be already playing out and causing a heavy decrease in token price, which has fallen by 85% in the last three months, while BTC price has tripled in the same interval (WIT/BTC is down -94%).

Tech

  • The team made the decision to develop their own blockchain from scratch. This adds a lot of overhead, as not only they have to build their core business code, but also a lot of infrastructure associated with blockchains, such as node, networking, wallets… Other competitors are able to skip all this and focus only on the core aspects, either by using a well developed blockchain core such as Tendermint (BAND) or not basing itself in any blockchain and issuing it’s token on Ethereum (LINK).
  • Parts of the technical documentation are outdated and have broken links
  • Nothing at stake and long range attacks are unsolved.
  • Randomness is sourced from the VRF outputs that are used for block generation which makes it possible to manipulate it by withholding blocks. They argue that this won’t happen since that would lead to a loss in block rewards but if the same entity controls both the first and second proposers it could do so without any loss (and minimal risk).
  • The smart contract audit found 3 critical vulnerabilities and the blockchain node hasn’t been audited.

Bull case

Witnet starts being used in systems that aggregate multiple price feeds (such as MakerDAO’s medianizer) and it manages to capture a part of $LINK’s marketcap.

Bear case

  • Continues trailing behind it’s competitors in terms of development speed because it has to develop basic infrastructure while competitors can focus on their core business.
  • Fails to gain traction as a late-comer in a red-ocean market where reputation is everything.

Note on accuracy

I have strived to make this article as accurate as possible and, to that end, I contacted the team with a draft to see if they could let me know of any errors. However, after sending an initial message, I was ghosted, so after waiting for 6 days for a response I’ve decided to publish it as-is.

--

--