Curriculum with Material
Students begin by understanding the fundamentals of Bitcoin Script, its role in the Bitcoin network, and how it enables custom transaction validation conditions without the need for trusted third parties.
- Bitcoin Script and its purpose: How it functions as a stack-based, deterministic, and non-Turing complete programming language.
- Structure of a script: The difference between ScriptPubKey and ScriptSig in a Bitcoin transaction.
- Essential OP_CODES: Introduction to key operation codes such as OP_DUP, OP_HASH160, OP_EQUALVERIFY, OP_CHECKSIG, and more.
- Common use cases: From P2PKH addresses to more advanced scripts like P2SH and multisig.
- Limitations and security: Bitcoin Script's constraints to prevent attacks and execution errors.
- Lectura 1: Mastering Bitcoin Chapter 2: How Bitcoin Works
- Lectura 2: Mastering Bitcoin Chapter 3: Bitcoin Core, the reference implementation
- Video Sistemas numéricos: Binario, Decimal y Hexadecimal
- Lectura 3: What is a transaction output
- Video: Bitcoin Q&A: Unspent Transaction Output (UTXO)
Students take a deep dive into how Bitcoin transactions work, analyzing their structure and how inputs and outputs are validated. They will also explore multi-signature (multi-sig) scripts, learning how to create and interpret them.
- Structure of a Bitcoin transaction: Inputs, outputs, UTXOs, and transaction serialization.
- Transaction verification: How nodes validate transactions using Bitcoin Script.
- Multi-signature scripts: Understanding OP_CHECKMULTISIG and how multi-sig transactions work.
- Writing basic multi-sig scripts: Creating and interpreting P2SH multi-sig transactions.
- Security considerations: The benefits and trade-offs of multi-signature setups.
- Lectura 1: Mastering Bitcoin Chapter 6: Transaction
- Video: Bitcoin & SHA-256 Explicados con Animaciones
- Lectura 2: What is Endianness? Big-Endian & Little-Endian
- Lectura 3: Compact Size
- Lectura 4: Merkle root / Merkle tree
Students will explore advanced scripting techniques that enable conditional transactions in Bitcoin. They will learn how hashlocks and timelocks work, allowing transactions to be locked by time or secret values, and how to implement them using Bitcoin Script.
- Conditional transactions: How Bitcoin Script enforces spending conditions.
- Hashlocks: Using OP_HASH160 and preimages to lock transactions until a secret is revealed.
- Timelocks: Implementing time-based restrictions with OP_CHECKLOCKTIMEVERIFY (CLTV) and OP_CHECKSEQUENCEVERIFY (CSV).
- Practical applications: Use cases like atomic swaps, Lightning Network, and payment channels.
- Security considerations: Best practices for safely implementing conditional logic in scripts.
- Lectura 1: Mastering Bitcoin Capítulo 6 - Wallet Recovery
- Lectura 2: Mastering Bitcoin Capítulo 11 - The Blockchain
- Bitcoin & SHA-256 Explicados con Animaciones
- Merkle root / Merkle tree
- Cartera HD y Derivation Path, ¿qué son?
- How Do Mnemonic Seeds Work?
Students will learn how to debug Bitcoin scripts using specialized tools and techniques. They will also explore real-world applications of Bitcoin Script, analyzing how different OP_CODES are used in actual transactions and smart contract-like constructions on Bitcoin.
- Debugging Bitcoin scripts: Tools and methods for testing and troubleshooting scripts.
- Script execution analysis: How to interpret stack operations and debug failures.
- Real-world use cases: Examining how scripts are used in P2SH, multi-sig, and Lightning Network.
- Simulating transactions: Using testnets and scripting environments to build and analyze Bitcoin transactions.
- Best practices and security: Avoiding common mistakes and ensuring robustness in Bitcoin scripting.
- Lectura 1: Mastering Bitcoin Capítulo 9 - Transaction Fees
- Lectura 2: Mastering Bitcoin Capítulo12 - Mining and Consensus
- Qué hacer si tu transacción Bitcoin no se confirma
- Difficulty
- ¿Qué es un bloque huérfano?
- ¿Qué es un Fork en Blockchain?
- Weekly Quizzes & Assignments (40%) – Reinforce key theoretical concepts
- Midterm Exam (20%) – To be defined
- Final Project (40%) – To be defined