IC3-Ethereum Crypto Boot Camp
July 12-18, 2018 Gates Hall, Cornell University. Ithaca, New York

IC3 and the Ethereum Foundation Conducted our Third Immersive Weeklong Coding and Learning Experience in Blockchains and Smart Contracts with World-leading Professors, Open Source Architects, Developers and Students.

Boot Camp Sponsors

There were 10 project teams. Awards were made to the top 3 teams at the Celebration and Awards Dinner on July 18 at Coltivare in downtown Ithaca.

Top 3 Projects – Award Winners at the Celebration and Awards Dinner

First Place: Project Chicago
Award: 10 ETH
IC3 Associate Directors: Prof. Ittay Eyal (at far left in photo) and Prof. Andrew Miller (at far right)
Team Members: (left to right, after Ittay Eyal) Sam Apter, Yan Ji (Team co-Leader), Edward Mehrez, Phil Daian (Team co-Leader, kneeling), Leland Lee, Kersing Huang.
Ethereum Foundation: Hudson Jameson and Vitalik Buterin (both standing at center of photo behind Phil)
We implemented financial instruments for cryptocommodities à la GasToken (gastoken.io). For more info, please see projectchicago.io.
Second Place: Battleship MPC
Award: 5 ETH
IC3 Associate Directors: Prof. Ittay Eyal (at far left in photo) and Prof. Andrew Miller (at far right)
Team Members: (Left to right in front row, after Ittay Eyal) Julian Koh, Chang Xu, Carlos de Oliveira, Andrew Miller (Team Leader), Libby Kent, Sylvain Bellemere.
Ethereum Foundation: Hudson Jameson and Vitalik Buterin (both standing at center of photo behind Carlos)
We used a multiparty-computation cryptography toolkit to implement a Battleship application. This battleship game is better than all the other cryptographic battleship games. It will sink their battleship. Let us know if you want to compete!
Third Place: Layer 2 Battle System
Award: 3 XMR (from a Bug Bounty awarded to IC3)
IC3 Associate Directors: Prof. Ittay Eyal (at far left in photo) and Prof. Andrew Miller (at far right)
Team Members: (Left to right, after Ittay Eyal) Oded Naor, Deepak Maram, Frank Sauer, Matthew Salazar, Surya Bakshi, Karl Wust (holding beer). Team Leader, Prof. Patrick McCorry is not in photo.
Ethereum Foundation: Vitalik Buterin and Hudson Jameson (both standing behind Karl)
We constructed and demonstrated that a battleship game's integrity can be enforced using crypto-economics (instead of elaborate cryptography). Afterwards we converted the game into a state channel and performed an empirical evaluation of state channels as a scaling solution for cryptocurrencies.

Boot Camp Schedule and Presentation Videos - July 12-18

We took occasional breaks from the hacking to attend talks by well-known experts in the community – please see the Boot Camp schedule and check back later for links to the talks below. Note that some talks are pre-publication oriented and may not be posted.

Additional Projects

Smart Contracts for Radical Markets: Cryptokitties has brought Dutch Auctions to the mainstream. In this project we'll use smart contracts to experiment with new kinds of auctions too. For inspiration, we’ll start with ideas from Radical Markets by Posner and Weyl.

Submarines!: Submarine sends are a technique used to prevent frontrunning, a problem in blockchain systems where miners may manipulate the order of transactions in a block. This project built a high-quality reusable library and smart contract for the community to use submarine sends, including an additional merkle proof verification library (for verifying a transaction is legitimately in a block from within a smart contract). See this blog post for more details: http://hackingdistributed.com/2017/08/28/submarine-sends/"

ViperFlow: a Smart Contract language with Information Flow: For this project we built a security-critical smart contract using ViperFlow. ViperFlow is a language we are still developing that provides an information flow type system on top of Viper, the existing smart contract programming language.

Plasma Gold Private SegWit Unlimited: Plasma Classic, Plasma MVP, Plasma Cash, Plasma XT... Plasma Gold Private SegWit Unlimited? Plasma's nature as an abstract framework makes it simultaneously confusing and exciting. In this project, we had some fun by speccing and building the weirdest things we could think of that still counts as "Plasma."

Updatable and Universal Common Reference Strings: We implemented updatable common reference strings for SNARKs. This allows the “trusted setup” to be updatable by anyone before it is used, and thus alleviates the “trusted” requirement of SNARKS.

CBC Casper and Sharding: CBC Casper is a family of consensus protocols that all share the same proof of asynchronous, Byzantine fault tolerant safety. During this boot camp, we explored the problem of consensus as it relates to blockchain scaling, designing and implementing proof-of-concepts simulations for different sharded blockchain consensus algorithms!

Town Crier (http://www.town-crier.org/): We implemented a secure oracle using Intel SGX enclaves in Rust, triggering smart contract events using an SGX enclave that implements the Town Crier protocol.

Participants

Many of the participants gathered for a Group Photo prior to lunch on Day 1, on the steps of Gates Hall.