Shi Launches First Lab to Study Smart Contracts

news story image

Elaine Shi, an assistant professor of computer science with appointments in UMIACS and the Maryland Cybersecurity Center (MC2), recently launched the world’s first undergraduate laboratory course that combines “smart” contracts—computer programs that can automatically execute the terms of a contract—and cryptocurrency.

The lab, which ran for five weeks during the Fall 2014 semester, was tied into a University of Maryland undergraduate course on computer and network security. It required students to create smart contracts atop a new cryptocurrency called Ethereum, which has a Bitcoin-like decentralized infrastructure with an open platform for development.

The aim of smart contracts is to provide security superior to traditional contract law and to reduce other transaction costs. Someday, these programs may replace lawyers and banks for handling certain common financial transactions.

“Smart contracts will shape the future of our financial transactions and e-commerce.” Shi says. “They carry out high-value financial transactions, so their security is particularly important. We learned many lessons from this lab, including it is very tricky to write a safe cryptocurrency contract.”

Assisting Shi in developing and overseeing the lab was MC2 doctoral student Andrew Miller, an up-and-coming authority on Bitcoin and other cryptocurrencies.

Students worked in groups of four with one graduate student adviser. Using Ethereum, they created apps such as games, an escrow service, auctions, a parking meter and a stock market trading app.

“Smart contracts will shape the future of our financial transactions and e-commerce.”

Elaine Shi

Shi also shared insights and lessons learned at Cryptoeconomicon and the MIT Bitcoin Expo.

Shi and Miller will soon be releasing online course materials on smart contract programming, as well as well-structured lab design and instructions with a virtual machine image.

Mitchell Arnett, a junior majoring in computer science, says the lab taught him that smart contracts can automate a lot of aspects of our lives.

“The largest thing I learned from working with Ethereum and smart contracts was that our society runs at a largely inefficient pace, and smart contracts can help eliminate the red tape and just get things done,” he says.

—Story by Melissa Brachfeld