
Discover how Bitcoin uses addresses, outputs, and signatures to secure one-to-one and multi-signature transactions, create blocks, and support different address types and Schnorr signatures.
Learn how Bitcoin uses blockchain to solve authenticity and double spending with signed transactions and proof of funds, and how mining forms blocks with proof of work to prevent forks.
Compare proof-of-work with alternatives under proof-of-x, highlighting stake-based, memory-hard, delegated, ownership and publication variants, their energy costs, central authority implications, and real-world challenges.
Explore how Bitcoin wallets connect to the peer-to-peer network, manage private keys and addresses, and differentiate custodial vs non-custodial use, including deterministic, seed-based derivation.
Explore Ethereum fundamentals: smart contracts written in solidity compile to bytecode and run on the Ethereum Virtual Machine, the world computer, enabling public, replicated, unstoppable code across nodes.
Understand how gas cost, gas price, and gas fee set transaction costs on blockchains. See how operations and storage costs, gas limits, and dynamic data affect actual gas usage.
Examine Ethash, Ethereum’s proof-of-work mining until 2022, highlighting the memory-hard dag, 1 gigabyte graph, 16 megabyte cache, seed-based data generation, and uncle blocks within the ghost protocol.
Explore decentralized finance, or defi, a blockchain-based system using smart contracts without central intermediaries, featuring non-custodial, permissionless, auditable, and composable primitives like Ethereum transactions and collateral liquidations.
Oracles connect smart contracts to real-world data, bridging price feeds and event outcomes; decentralized oracles aggregate multiple sources to reduce central points of failure and ensure data integrity.
Explore graph models for account-based blockchains like Ethereum, contrasting coin and token transactions, and map externally owned addresses, smart contract addresses, and null addresses with smart contracts and programmable interactions.
Explore token transaction networks on Ethereum, including ERC-20 fungible tokens and ERC-721 non-fungible tokens with unique identifiers, defined by smart contracts.
Bitcoin cryptocurrency and the Blockchain technology that forms the basis of Bitcoin have witnessed unprecedented attention. As Blockchain applications proliferate, so does the complexity and volume of data stored by Blockchains. Analyzing this data has emerged as an important research topic, already leading to methodological advancements in the information sciences. Although there is a vast quantity of information available, the consequent challenge is to develop tools and algorithms to analyze the large volumes of user-generated content and transactions on blockchains, to glean meaningful insights from Blockchain data. The objective of the course is to train students in data collection, modeling, and analysis for blockchain data analytics on public blockchains, such as Bitcoin, Litecoin, Monero, Zcash, Ripple, and Ethereum.
Expectations and Goals
We will teach all core blockchain components with an eye toward building machine learning models on blockchain data. Students will be able to achieve the following learning objectives upon completion of the course.
Learn the history of digital currencies and the problems that prevented their adoption. What are the real-life use cases of Blockchain? How does Blockchain differ from earlier solutions?
Learn the concepts of consensus and proof-of-work in distributed computing to understand and describe how blockchain works.
Learn data models for addresses, transactions, and blocks on cryptocurrencies and Blockchain platforms.
Use Java Python and R to extract blockchain blocks and store the transaction network on Bitcoin, Ripple, IOTA, and Ethereum blockchains.
Model weighted, directed multi-graph blockchain networks and use graph mining algorithms to identify influential users and their transactions.
Predict cryptocurrency and crypto-asset prices in real-time.
Extract and mine data from smart contracts on the Ethereum blockchain.
We would like to thank Ignacio Segovia-Dominguez of UT Dallas and NASA for his help in editing and providing feedback on the course content.