Publication Date

Spring 2023

Degree Type

Master's Project

Degree Name

Master of Science (MS)


Computer Science

First Advisor

Thomas Austin

Second Advisor

Mike Wu

Third Advisor

Justin Rietz


SpartanGold, blockchain, price oracle


Nakamoto’s Bitcoin is the first decentralized digital cash system that utilizes a blockchain to manage transactions in its peer-to-peer network. The newer generation of blockchain systems, including Ethereum, extend their capabilities to support deployment of smart contracts within their peer-to-peer networks. However, smart contracts cannot acquire data from sources outside the blockchain since the blockchain network is isolated from the outside world. To obtain data from external sources, smart contracts must rely on Oracles, which are agents that bring data from the outside world to a blockchain network. However, guaranteeing that the oracle’s off-chain nodes are trustworthy remains a challenge. A centralized oracle that relies on a single off-chain node creates a single point of failure. Therefore, a decentralized mechanism is necessary. One possible design for a decentralized oracle is to use a game mechanism that utilizes the Schelling-point theory to identify the correct data point among various data points reported by the oracle’s off-chain nodes. In this paper, we introduce Spartan Price Oracle (SPO), a decentralized oracle designed to provide accurate price data. SPO utilizes the Schelling-point theory in its game mechanism to ensure the accuracy of the price data it provides. The mechanism design of SPO is based on SchellingCoin but with two significant improvements. Firstly, SPO uses Kernel Density Estimation to estimate the probability density function of data points that are reported by multiple off-chain nodes. This enables SPO to identify the accurate data by determining the mode of the probability density function. Secondly, SPO utilizes a redistributive economic incentive model that incorporates an appeal mechanism to increases the maximum reward for its off-chain nodes. This model has

been proven to raises the budget required for compromising off-chain nodes and helps in preventing potential attacks on the oracle.