Blockchain in the Real World: Horizon State
By: Anurag Angara
Tags: Real World, Smart Contracts, Ethereum, Blockchain, Elections

Part of Hydro’s mission is to take blockchain beyond the proof-of-concept phase. To that end, this series will take a look at some examples of blockchain technology being used in the real world. There are a variety of blockchain projects out there with live, working products and services you can use today, and we want to highlight them here!

Background

Horizon State launched HST, an ERC-20 token, with an ICO in October of 2017. Horizon State smart contracts are designed to act as a platform to help voting applications manage the vote recording process with blockchain functionality. Importantly, Horizon State already has a minimum viable product called MiVote — an Australian voting platform. Horizon State’s roadmap allows for a wide range of elections and votes to be built with similar functionality — ranging from shareholder or town hall meetings in small communities to full-scale political elections. This roadmap is a feasible extension of the MVP they already have since the development involves adding iterative functionality to make the core product more robust.

Experiences Using the Product

MiVote is interesting as an MVP because they are a client of Horizon State rather than a direct product. In my opinion, the coolest part of MiVote is that to an end user, MiVote looks like a standard website. In the back end, all user voting behavior is anonymized and passed to smart contracts to be stored on the Ethereum blockchain immutably. Theoretically, MiVote could pass false results to the Ethereum blockchain, but users would be able to see that their public key is paired with an incorrect result and immediately call MiVote out on voter fraud.

The downside of MiVote is that it requires a centralized mechanism of confirming identity in order to prevent the same person from creating multiple addresses and casting multiple votes. MiVote does this through verifying the voter’s Australian phone number; I didn’t test spoofing a number, but I imagine someone would be able to cast multiple votes by spoofing numbers, or at least having access to multiple devices.

Strengths and Challenges of Horizon State as it Currently Stands

Storing votes on-chain provides a number of advantages.

Transparency — Voters are able to indisputably see the record of their votes on-chain. To an extent, they also maintain anonymity in their votes (I’ll discuss this further below). This is important because it combats sham elections in which centralized parties falsify the results.

Cost — For large elections, Horizon State’s voting protocol doesn’t require nearly as much overhead as modern voting processes (counting, recounting, hand counting, etc), which makes the per-voter cost much lower. For smaller elections such as a shareholder meeting, the cost is negligible in both cases, though slightly higher with Horizon State (just the cost of gas).

Simplicity — If dApps are ever to scale, they need to be designed in such a way that end-users need zero or very limited knowledge about blockchain. Horizon State allows the front-end of voting applications to look just like any other website — users don’t even need MetaMask or an ethereum-enabled browser. All of the blockchain activity is handled by the party launching the election, and the ethereum network itself.

Relative decentralization — The party that launches the election could technically change the results before passing them onto the blockchain, but because users can see how their specific vote was registered on-chain, they will immediately know when election results have been falsified by the central party managing the election. Accordingly, functional decentralization in elections is achieved. *Update, per Horizon State’s response: although MiVote isn’t structured this way, elections built off of Horizon State’s platform can be structured such that the voter’s device passes the vote directly to the Smart Contract. This would require the user to have MetaMask or an ethereum browser and would make the process completely decentralized.

Data analysis — anonymized data stored on-chain allows election organizers to determine interesting data trends regarding voter behavior. The white paper doesn’t provide too much detail on this, but my best guess is that a block explorer would make demographic conclusions about a public address based on that address’ voting behavior, and then use that demographic profile to predict future voting results

Despite the above strengths, Horizon State faces several challenges as a protocol.

Scalability — Horizon State’s white paper notes that their protocol requires far too much on-chain data storage to be able to support a global network of elections. Gas costs would skyrocket upon mass adoption, and elections would take a long time to clear. Horizon State’s dApp by nature requires either trust in a central party that stores results on chain, or all votes to be stored on-chain. Nonetheless, I don’t love the concept of dApps that have to wait for other technology like Plasma or Raiden which may never be built in order to scale.

Anonymity — since votes are connected to public addresses, machine learning software could de-anonymize certain user data by observing an address’ voting behavior over time.

Identity management — Unless a blockchain-based identity management protocol is built and widely adopted, elections hosted off of the Horizon State platform require trust in a central party for identity management. That central party has to conduct KYC to make sure each voter only votes once. If this trust doesn’t exist, voters could just vote multiple times, and nobody would know who did it. For instance, in MiVote, identity management is conducted through SMS verification of an Australian phone number. Someone who uses a virtual number service could vote repeatedly by providing multiple fake numbers with Australian country codes.

Altogether

All-in-all, Horizon State’s product opens the door to improvements for certain types of elections where transparency is required at a low-cost. It allows simple implementation of a robust range of election infrastructure. The Horizon State team further intends to add modular functionality such as crowdfunding functions, campaign management, and actionable intelligence to their product. Most importantly, Horizon State has a functioning MVP that allows end-users to intuitively leverage the strengths of blockchain. Horizon State has promising utility, particularly if scalability and zero knowledge technologies soon proliferate on the Ethereum platform.

Note: I do not hold any HST or have any connection to Horizon State as a project outside of my interest in the technology.