IC3 Blockchain Camp
June 10-16, 2019 Gates Hall, Cornell University. Ithaca, New York

Cornell University
Ithaca, New York

IC3 conducted our Fourth immersive weeklong coding and learning experience in Cryptocurrencies, Blockchains, and Smart Contracts with world-leading professors, open source architects, developers, and students.

Blockchain Camp Sponsors

What Participants Are Saying

"The IC3 Blockchain Camp was an opportunity to immerse ourselves for one week with some of the greatest minds in blockchain research. The collaborations, relationships, and discussions started at the Camp will shape the state of blockchain development for the coming years." - Shaul Kfir, CTO, Digital Asset

"The IC3 Blockchain Camp was one of the best events of its kind I've ever attended, with great atmosphere and plenty of inspiring discussions. I hope I can join again next time." - Sascha Hanse, Chief of Research and Blockchain Architect, Aeternity

"The IC3 Blockchain Camp was an invaluable experience. Not only did the camp provide the opportunity to work with the experts of industry on cutting-edge research and development, it fostered an environment for deeper connections with like-minded, very well-connected individuals. The networking is unparalleled by any other blockchain event, as is the learning. It felt like a nerdy summer camp. All around, it was an amazing experience I feel incredibly fortunate to have attended." - Zane Witherspoon, CTO, Dispatch Labs

"I love how IC3 gives me facetime access to researchers and developers who are working on revolutionary ideas. Working on a week-long project with them is challenging yet fruitful!" - Parth Gargava, Senior Software Engineer, Fidelity

"Extremely impressive work on the Casper consensus protocol, Proof-of-Work discouragement attacks, SNARK applications and more all around!" - Vitalik Buterin, Ethereum Foundation

"The IC3 Blockchain Camp has been a blast, and it's so much fun to see the ~12 or so projects bear fruit." - Prof. Emin Gun Sirer, Cornell/IC3

Participants

Several of the participants gathered for a Group Photo after lunch on Day 5, on the steps of Gates Hall, home of Cornell Computer and Information Science.

There were 12 project teams. Awards were made to the top 3 teams at the Celebration and Awards Dinner on June 16 at Coltivare (photos below) in downtown Ithaca.

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

First Place: Unconditional Key Knowledge
Summary: With the advent of trusted execution environments (TEE's), bribery is easier than ever in decentralized applications like e-voting. The fundamental problem is that secret key information is not known to the holder. The project's goal is to implement a crypto scheme that proves that the user has unconditional knowledge of the key.
Team Members: Philip Daian, Surya Bakshi, Ed Mahrez, Shreyas Gandlur, Mahimna Kelkar, Yue Guo, and Jacek Sieka
Second Place: Coercion Resistance
Summary: Coercion and bribery are classic e-voting problems that still plague current implementations. This project works off a previous proposal by Vitalik Buterin (https://ethresear.ch/t/minimal-anti-collusion-infrastructure) to implement a coercion resistant e-voting mechanism. We developed a Minimal Anti Collusion Infrastructure (MACI) using ZK-snarks (a form of Zero Knowledge cryptography) to develop ways to minimize or eliminate the risk of collusion in scenarios such as electronic voting.
Team Members: Barry Whitehat, Parth Gargava, Luke Riley, and Sascha Hanse
Third Place: Ethsites
Summary: Ethsites is a project that stores arbitrary websites on the Ethereum blockchain. This enables dissidents and others to take advantage of the censorship-resistant properties of blockchain for hosting their content. With the power of metamask and our magic JavaScript we render websites from on-chain right in your browser just like the old web 1.0. For more info and T-shirts - see ethsites.io
Team Members: Tyler Kell and Drake Eidukas

Camp Activities and Schedule - June 10-16

We took occasional breaks from the hacking to attend talks by well-known experts in the community - and visit points of interest in Ithaca.

Prof. Emin Gun Sirer at the chalkboard on Wednesday morning, lecturing on the newest updates in consensus protocols.

The Cayuga Lake Boat Cruise was on a "gorges" Friday afternoon. We sailed out of the Allan Treman Marine State Park on the 43-ton Teal for 2 hours, and followed that with a lavish dinner at the Cornell Ornithology Lab in Sapsucker Woods.

The Teal is docked at Allan Treman Marine State Park on Cayuga Lake.
Dinner at the Cornell Ornithology Lab in Sapsucker Woods on Friday evening.

Saturday the 15th was a solid day of hacking capped by a lavish BBQ hosted by IC3 sponsor, Chainlink, in a Cayuga Heights mansion. Our thanks to CEO Sergey Nazarov!

Site of the Saturday night BBQ in Cayuga Heights hosted by Chainlink.

Sunday the 16th was devoted to the project presentations and the Awards Celebration Dinner at Coltivare.

The Celebration and Awards Dinner on Sunday June 16 at Coltivare in downtown Ithaca.
The schedule for the first 5 days.

Additional Projects

Accountable Off-Chain Watchers with Provisions

Team Leader: Patrick McCorry

All off-chain protocols introduce a new security requirement, the always online assumption, that requires users to be online and synchronised with the network to look out (and respond) to bad behavior. The community are hoping to solve this problem by letting users hire a third party watcher who can protect the channel on their behalf. The fundamental issue with this approach is accountability - how do we know the watcher just won't cheat the customer? This project focuses on how to incorporate Provisions, a zero knowledge proof approach to prove liabilities/assets, for third-party watchers.

HoneyBadgerMPC Decentralized Exchange

Team Leader: Andrew Miller

HoneyBadgerMPC is a toolkit for robust computing on confidential secret-shared data. This can extend the functionality of a confidential cryptocurrency override beyond what can be achieved using zk proofs alone. An order book / digital asset exchange is a good example of a functionality that cannot be implemented using just zero knowledge proofs because the order book strike price is a function of all the bids, which are not known to any one party. FuturesMEX is the most closely related project. It combines Zcash-like implementation for its underlying digital asset, and uses non-robust MPC (sharemind) to implement the order book.

Blockchain Insurance

Team Leaders: Emin Gun Sirer and Kevin Sekniqi

It's time to disrupt the insurance industry. At its core, insurance is an inherently peer-to-peer business with just a small arm whose job is to act as an oracle on the amount of damages. We plan to build a smart contract driven insurance business where insurance products are turned into digital assets. These assets are traded on markets, at prices reflecting the associated risks.

DEX on SGX

Team Leader: Emin Gun Sirer

The world needs better exchanges. Centralized exchanges can engage in all sorts of behaviors intended to rob their clientele, which necessitates complex auditing and regulatory compliance rules. DEXes can provide stronger guarantees, accept all of today's blockchains. Trusted execution environments, like Intel's SGX, enable us to build DEXes that are better than all existing decentralized exchanges, and also better than all existing exchanges anywhere on Wall Street. The goal of this project is to build a trustworthy exchange that is guaranteed by construction to misbehave, and to provide the best execution for its clients according to its prescribed rules.

Cryptoeconomic Defragmentation

Team Leaders: Ben Jones and Karl Floersch

Plasma is a Layer 2 scaling solution which creates a non-custodial side chain rooted in the main chain for security. In plasma, we must express coins as "ranges on a number line", so that particular users own particular line segments. However, this poses a problem: if users own many distinct ranges, we lose scalability. The proposed solution to this problem is dubbed "defragmentation." The idea is that users atomically swap their coins with others, so that they end up with contiguous segments. This is a ripe problem for plasma, with a big payoff: we don't know what the best approach is, and we need it for plasma to work in practice. This week, we will design one or more defragmentation algorithms, and build a "defragmentation simulator" which evaluates the performance of these strategies.

Enabling High-Performance Blockchains on IoT devices (Siemens)

Team Leaders: Monika Sturm and Christoph Inauen

Siemens is investing significantly in technology that allows us to enable Digitization projects for our customers and ourselves. Some of the key solutions in that portfolio tackle the challenges in the production environment in manufacturing, like Digital Twins or Simulation and Automation SW, others focus on Industrial IoT (Siemens MindSphere) and low-code App Development environments (Mendix). Blockchain is one promising solution for digitalization of our products, but so far public blockchains do not scale nor do they satisfy our high-performance requirements (~1-2s confirmation) required for real-world applications. This project is a case study that focuses on emerging new blockchains like Avalanche or ThunderCore.

Multi-Fork Selfish Mining in Ethereum

Team Leader: Ari Juels

In current analyses of selfish mining in Bitcoin, it is assumed that honest miners only extend the longest/heaviest chain they have fully validated, and thus mine on a single branch. In practice, however, non-adversarial miners don't necessarily all mine on a single branch. This is because, in addition to honest miners, there is another class of miners that we call rational miners. Rational miners benefit from assuming that blocks they receive are valid, thus avoiding the time and expense of validating transactions. Rational mining happens in practice, as shown by empty blocks in both the Bitcoin and Ethereum networks---even consecutive empty ones. In this project, we will explore different multi-fork strategies against Ethereum. The strategy space for such attacks is a rich one, and needs exploration. Project participants will write their own multi-fork algorithms and compete with each other using a multi-fork simulator I've created. We will examine winning strategies in depth and brainstorm potential mitigations of multi-fork selfish mining.

Bringing Rollup to Production

Team Leader: Barry Whitehat

The idea behind rollup is to use snarks to periodically batch off-chain transactions and checkpoint them on the blockchain. By using snarks, we can prove the checkpoint is well-formed and the validation is succinct. The implementation for rollup is becoming more mature, but there are still some missing components that we wish to build during the workshop. While building these components, the students will learn how rollup works and get their hands dirty with writing snarks.

Code: https://github.com/barryWhiteHat/rollupNC

Evaluating DAML as an Embedded Workflow Runtime on the Ethereum Network

Team Leader: Viv Diwakar

The purpose of the project is to build a hybrid DAML <> Ethereum stack, wherein a DAML ledger is running embedded within an Ethereum private network. DAML applications connect into and transact directly with the DAML ledger, which uses Ethereum for ordering of transactions, coming to consensus and data persistence.

DAML transactions are submitted via a write adapter to a Solidity "queue" contract - effectively the DAML ledger's source of truth, which is then consumed by a DAML ledger node, and executed on a native DAML interpreter running on that node. Any change of state is persisted locally, transmitted to the DAML users' UIs, and persisted to the Ethereum ledger; any settlement is done within the embedded DAML ledger, and movement of value is done in Ether.

The sample use-case for the project was tokenization of a high-value building, with the apportionment tracked in an ERC20 token implemented in DAML.