Course outline
Module 1
Module 1: Introduction to Ethereum
Introduction to Ethereum
Knowledge check
Q1. What is Ethereum primarily known for?
- A. A decentralized messaging platform
- B. A blockchain platform for building decentralized applications ✓
- C. A cryptocurrency exchange
- D. A digital wallet service
Why: Ethereum is primarily known as a blockchain platform that enables the creation of decentralized applications (dApps) and smart contracts.
Q2. Who is the founder of Ethereum?
- A. Satoshi Nakamoto
- B. Vitalik Buterin ✓
- C. Richard Stallman
- D. Tim Berners-Lee
Why: Vitalik Buterin is the co-founder of Ethereum.
Q3. What is a key feature of Ethereum compared to Bitcoin?
- A. It has a higher transaction speed
- B. It supports smart contracts ✓
- C. It uses a different type of blockchain
- D. It has no mining process
Why: A key feature of Ethereum is its support for smart contracts, which allows for automated execution of agreements.
Q4. What is the native cryptocurrency of Ethereum?
- A. Bitcoin (BTC)
- B. Ethereum (ETH) ✓
- C. Litecoin (LTC)
- D. Ripple (XRP)
Why: The native cryptocurrency of Ethereum is called Ethereum (ETH).
Q5. What is a smart contract on Ethereum?
- A. A contract written in traditional legal language
- B. A self-executing contract with the terms directly written into code ✓
- C. A contract between two parties mediated by a third party
- D. A contract that requires manual enforcement
Why: A smart contract on Ethereum is a self-executing contract with the terms directly written into code.
Module 2
Module 2: Blockchain Basics
Blockchain Basics
Knowledge check
Q1. What is a blockchain?
- A. A database managed by a single entity
- B. A decentralized ledger managed by a network of computers ✓
- C. A type of cryptocurrency
- D. A secure messaging protocol
Why: A blockchain is a decentralized ledger that is managed by a network of computers, ensuring transparency and security without the need for a central authority.
Q2. What is the primary purpose of a blockchain?
- A. To store personal data securely
- B. To enable trustless transactions and record-keeping ✓
- C. To replace traditional banking systems
- D. To create digital art
Why: The primary purpose of a blockchain is to enable trustless transactions and record-keeping by using cryptographic techniques and a distributed network.
Q3. What is a block in a blockchain?
- A. A single transaction
- B. A collection of transactions grouped together ✓
- C. A type of cryptocurrency wallet
- D. A server that hosts the blockchain
Why: A block in a blockchain is a collection of transactions grouped together, which are then added to the chain in a secure and immutable manner.
Q4. What is a hash in the context of blockchain?
- A. A digital signature used for authentication
- B. A unique identifier for a block ✓
- C. A type of cryptocurrency
- D. A way to store large amounts of data
Why: In the context of blockchain, a hash is a unique identifier for a block, generated using cryptographic algorithms to ensure data integrity.
Q5. What is mining in the context of blockchain?
- A. The process of creating new blocks and adding them to the blockchain ✓
- B. The process of verifying transactions on a blockchain
- C. The process of sending cryptocurrency to another user
- D. The process of creating digital art on the blockchain
Why: Mining in the context of blockchain refers to the process of creating new blocks and adding them to the blockchain, typically through solving complex mathematical problems.
Module 3
Module 3: Smart Contracts Explained
Smart Contracts Explained
Knowledge check
Q1. What is a smart contract?
- A. A type of cryptocurrency
- B. A self-executing contract with the terms of the agreement directly written into code ✓
- C. A type of blockchain wallet
- D. A decentralized application
Why: Smart contracts are self-executing contracts with the terms of the agreement directly written into code, which automatically enforce and execute the terms when predefined conditions are met.
Q2. Which programming language is commonly used to write smart contracts on the Ethereum blockchain?
- A. Python
- B. Solidity ✓
- C. JavaScript
- D. Java
Why: Solidity is the most commonly used programming language for writing smart contracts on the Ethereum blockchain.
Q3. What is the purpose of a smart contract's code?
- A. To store user data
- B. To execute actions based on predefined conditions ✓
- C. To generate new cryptocurrencies
- D. To provide user interfaces
Why: The purpose of a smart contract's code is to execute actions based on predefined conditions automatically when those conditions are met.
Q4. Which of the following is a benefit of using smart contracts?
- A. They require intermediaries to enforce agreements
- B. They are always secure and cannot be hacked
- C. They automatically execute agreements without the need for intermediaries ✓
- D. They are only used for financial transactions
Why: A key benefit of using smart contracts is that they automatically execute agreements without the need for intermediaries, reducing costs and increasing efficiency.
Q5. What does the term 'immutable' mean in the context of blockchain and smart contracts?
- A. They can be changed easily
- B. They are permanent and cannot be altered once deployed ✓
- C. They are temporary and expire after a certain time
- D. They are only visible to the creator
Why: In the context of blockchain and smart contracts, 'immutable' means that once data is written to the blockchain, it is permanent and cannot be altered.
Module 4
Module 4: Ethereum Architecture
Ethereum Architecture
Knowledge check
Q1. What is the primary function of the Ethereum Virtual Machine (EVM)?
- A. To store blockchain data
- B. To execute smart contracts ✓
- C. To manage user accounts
- D. To validate transactions
Why: The EVM is responsible for executing the code of smart contracts on the Ethereum blockchain.
Q2. Which component of Ethereum is responsible for maintaining the state of the blockchain?
- A. Blockchain
- B. Ethereum Virtual Machine
- C. State Trie ✓
- D. Merkle Tree
Why: The State Trie is a data structure used to efficiently store and retrieve the current state of accounts on the Ethereum blockchain.
Q3. What is the role of the Merkle Tree in Ethereum?
- A. To execute smart contracts
- B. To store transaction data
- C. To provide a secure and efficient way to verify data integrity ✓
- D. To manage block validation
Why: Merkle Trees allow for efficient and secure verification of data integrity within blocks.
Q4. Which of the following is NOT a part of Ethereum's architecture?
- A. Blockchain
- B. Smart Contracts
- C. Bitcoin Wallet ✓
- D. Ethereum Virtual Machine
Why: Bitcoin Wallet is not a component of Ethereum's architecture.
Q5. What does the term 'gas' refer to in the context of Ethereum?
- A. A type of cryptocurrency used to pay for transactions
- B. A unit of measurement for computational effort ✓
- C. A feature of Ethereum wallets
- D. A type of smart contract
Why: Gas is used to measure the computational effort required to execute transactions and smart contracts on the Ethereum network.
Module 5
Module 5: Gas and Transactions
Gas and Transactions
Knowledge check
Q1. What is gas in the context of Ethereum transactions?
- A. A type of cryptocurrency used to pay for transaction fees
- B. A unit of measurement for the computational effort required to execute transactions ✓
- C. A feature that allows users to set a maximum price for their transaction
- D. A security mechanism that prevents double spending
Why: Gas is a unit of measurement for the computational effort required to execute transactions on the Ethereum blockchain.
Q2. Which of the following is NOT a component of a transaction on the Ethereum blockchain?
- A. From address
- B. To address
- C. Gas price
- D. Transaction hash ✓
Why: Transaction hash is a result of a transaction, not a component used to create it.
Q3. What happens if the gas limit set by a user is too low for a transaction?
- A. The transaction is automatically increased to meet the required gas limit
- B. The transaction is executed with the remaining gas
- C. The transaction is reverted and the gas is lost ✓
- D. The transaction is queued until the gas limit is increased
Why: If the gas limit is too low, the transaction is reverted and the gas is lost, as the transaction cannot be completed.
Q4. What is the purpose of the gas price in an Ethereum transaction?
- A. To determine the speed at which a transaction is processed ✓
- B. To calculate the total amount of gas used in a transaction
- C. To set the maximum amount of gas a user is willing to pay
- D. To ensure that transactions are always executed successfully
Why: The gas price determines the speed at which a transaction is processed, as higher gas prices incentivize miners to prioritize the transaction.
Q5. What is the role of the miner in the Ethereum network?
- A. To validate and execute transactions ✓
- B. To create new Ethereum blocks
- C. To set the gas price for transactions
- D. To ensure that all transactions are transparent and public
Why: Miners validate and execute transactions, ensuring the integrity of the Ethereum network.
Module 6
Module 6: Decentralized Applications (dApps)
Decentralized Applications (dApps)
Knowledge check
Q1. What is a key characteristic of decentralized applications (dApps)?
- A. They are controlled by a single entity
- B. They run on a blockchain and are tamper-proof ✓
- C. They require a central server to function
- D. They are only accessible via mobile devices
Why: dApps operate on a decentralized network, typically a blockchain, making them tamper-proof and resistant to censorship.
Q2. Which of the following is NOT a component of a dApp?
- A. Frontend interface
- B. Smart contracts
- C. Centralized database ✓
- D. Blockchain network
Why: dApps use decentralized blockchain networks and smart contracts, not centralized databases.
Q3. What programming language is commonly used to develop smart contracts on Ethereum?
- A. Python
- B. JavaScript
- C. Solidity ✓
- D. Java
Why: Solidity is the primary language used for writing smart contracts on the Ethereum blockchain.
Q4. Which of the following best describes the role of a dApp frontend?
- A. It stores user data on the blockchain
- B. It executes smart contracts
- C. It provides a user interface for interacting with the dApp ✓
- D. It secures the blockchain network
Why: The frontend of a dApp is responsible for providing a user interface that allows users to interact with the underlying smart contracts.
Q5. What is a common use case for dApps?
- A. Online banking with a single financial institution
- B. Decentralized voting systems ✓
- C. Centralized social media platforms
- D. Traditional e-commerce websites
Why: dApps are often used in decentralized systems like voting, where transparency and trust are essential.
Module 7
Module 7: Ethereum vs. Other Blockchains
Ethereum vs. Other Blockchains
Knowledge check
Q1. Which of the following is a key difference between Ethereum and Bitcoin?
- A. Bitcoin is a platform for smart contracts
- B. Ethereum supports smart contracts while Bitcoin does not ✓
- C. Bitcoin has faster transaction speeds
- D. Ethereum is not a blockchain
Why: Ethereum supports smart contracts, which allows for the execution of code on the blockchain, while Bitcoin is primarily designed as a digital currency without this capability.
Q2. What is a primary use case for Ethereum that is not common on other blockchains?
- A. Sending encrypted messages
- B. Executing smart contracts ✓
- C. Mining cryptocurrency
- D. Storing digital files
Why: Ethereum is known for its support of smart contracts, which enable automated execution of agreements without intermediaries, a feature not commonly found on other blockchains.
Q3. Which blockchain is more commonly used for decentralized applications (dApps)?
- A. Bitcoin
- B. Ethereum ✓
- C. Litecoin
- D. Ripple
Why: Ethereum is the most widely used blockchain for building and deploying decentralized applications due to its support for smart contracts.
Q4. What is a major limitation of Ethereum compared to some other blockchains?
- A. It does not support tokens
- B. It has limited scalability ✓
- C. It is not open source
- D. It has no mining process
Why: Ethereum has faced challenges with scalability, which has led to the development of solutions like Ethereum 2.0 to improve performance.
Q5. Which of the following blockchains is known for high transaction throughput and is often used for cross-border payments?
- A. Ethereum
- B. Bitcoin
- C. Ripple ✓
- D. Litecoin
Why: Ripple is known for its high transaction throughput and is often used for cross-border payments, unlike Ethereum, which focuses more on smart contracts and dApps.