Introduction to Blockchains
Students in this course learn the concepts of blockchain technologies and how to apply them in the design and implementation of Distributed Applications (DApps) that utilize smart contracts for their coordination and transaction execution. They learn about the blockchain cryptographic properties to achieve immutability and other desirable properties that blockchains achieve; distributed architectures and protocols used to achieve consensus in distributed environment; infrastructure used to implement blockchains; and about Ethereum and Hyperledger fabrics, the two most prominent blockchain technologies that introduced flexible contracts, wherein Ethereum is a public blockchain that can be joined by anyone, while Hyperledger is permissioned. Research topics, related to the challenges faced by the blockchain fabric, will be explored, including approaches to improve scalability, transaction throughput, consensus algorithms, privacy and anonymity, and other topics, such as governance, cryptocurrencies, use of blockchains forincreasing trust, and blockchain-assistive technologies, such as IPFS and side-chains. PREREQUISITES: Students should be competent in writing distributed applications in which components communicate using REST-full services.
Sources
Catalogue variants
- Introduction to Blockchains · 3 · Graduate