Title
Town Crier: An Authenticated Data Feed for Smart Contracts.
Abstract
Smart contracts are programs that execute autonomously on blockchains. Their key envisioned uses (e.g. financial instruments) require them to consume data from outside the blockchain (e.g. stock quotes). Trustworthy data feeds that support a broad range of data requests will thus be critical to smart contract ecosystems. We present an authenticated data feed system called Town Crier (TC). TC acts as a bridge between smart contracts and existing web sites, which are already commonly trusted for non-blockchain applications. It combines a blockchain front end with a trusted hardware back end to scrape HTTPS-enabled websites and serve source-authenticated data to relying smart contracts. TC also supports confidentiality. It enables private data requests with encrypted parameters. Additionally, in a generalization that executes smart-contract logic within TC, the system permits secure use of user credentials to scrape access-controlled online data sources. We describe TC's design principles and architecture and report on an implementation that uses Intel's recently introduced Software Guard Extensions (SGX) to furnish data to the Ethereum smart contract system. We formally model TC and define and prove its basic security properties in the Universal Composibility (UC) framework. Our results include definitions and techniques of general interest relating to resource consumption (Ethereum's \"gas\" fee system) and TCB minimization. We also report on experiments with three example applications. We plan to launch TC soon as an online public service.
Year
DOI
Venue
2016
10.1145/2976749.2978326
IACR Cryptology ePrint Archive
Keywords
DocType
Volume
Authenticated Data Feeds, Smart Contracts, Trusted Hardware, Intel SGX, Ethereum, Bitcoin
Conference
2016
Citations 
PageRank 
References 
69
3.98
13
Authors
5
Name
Order
Citations
PageRank
Fan Zhang123412.75
Ethan Cecchetti2946.86
Kyle Croman3693.98
Ari Juels47263590.42
Elaine Shi54258220.79