“Cryptocurrencies changed the way we look at money. It created financial, socioeconomic and technological effects. The course will introduce the technical aspects of blockchain technologies, consensus protocols and cryptocurrencies. Students will learn the basics of the blockchain systems and how to engineer blockchain systems to create cryptocurrencies. They will learn the bottlenecks of the blockchain systems and study new blockchain design proposals to see if these bottlenecks are overcome. Further, the course will also cover the basics of Ethereum and smart contracts. Students will have the chance to learn programming smart contracts.”
ECE 579 involved learning about cryptocurrencies at a fundamental level. It included some information on cryptology and different hashing methods used, Bitcoin fundamentals, consensus mechanisms (proof of work vs. proof of stake), Ethereum basics, and information on smart contracts. The course involved two programming projects– developing ScroogeCoin, a basic proof-of-concept coin using python, and developing a basic bidding smart contract in Solidity. I also did a presentation on a topic of my choice, where I selected layer-2 networks in Ethereum.