blockchain.lucas.zip

Glossary

Every term the module uses, in one place, in one or two sentences each. · Updated 6 September 2026

Each session ends with its vocabulary; this page is the union, alphabetical, with the short definition you would give a colleague. Where a term has a longer treatment, the day is given.

A

ABI
The JSON description of a contract’s functions and events. Libraries use it to encode calls and decode results. Produced by the compiler. Day 2.
Account abstraction
Letting an account be a contract rather than a key pair, so that it can have rules: passkeys, spending limits, sponsored gas, recovery. ERC-4337 and EIP-7702. Days 3 and 4.
Address
Twenty bytes identifying an account, written as 0x and forty hex characters. Derived from a public key for an EOA; from the deployer and nonce for a contract, or from the deployer, a salt and the code for one deployed with CREATE2, which is how a contract can have a known address before it exists. Day 1.
AMM (automated market maker)
An exchange without an order book: a pool of two assets priced by a formula, most simply x × y = k. Day 3.
Approve / allowance
An ERC-20 holder authorising a contract to spend up to an amount on its behalf; the contract then calls transferFrom. The two-step behind every token interaction. Day 3.
Arbitrage
Trading a price difference between two venues until it closes. What keeps an AMM’s price tracking the outside world. Day 3.
Audit
A paid security review of a contract by specialists. Evidence of care, not a guarantee. Day 3.

B

Base
An optimistic rollup on the OP Stack, built by Coinbase. The module deploys to its testnet, Base Sepolia. Day 1.
Base fee
The part of the gas price set by the protocol from block fullness, and burned. Day 1.
Block
A batch of transactions plus a pointer to the previous block’s hash. Day 1.
Bridge
A contract that lets an asset move between chains by locking it on one and issuing it on the other. The most exploited category of contract. Day 3.
Bundler / paymaster
In account abstraction, the service that submits user operations, and the contract that can pay their gas. Day 4.

C

calldata / memory / storage
Where a reference value lives: read-only call input; scratch space for one call; the contract’s persistent state. Day 2.
Checks-effects-interactions
Validate, then change state, then call out. The discipline that prevents reentrancy. Day 2.
Checksum address (EIP-55)
The mixed-case spelling of an address, in which the capitalisation encodes a checksum. Libraries disagree about when to apply it, so a checksummed and a lowercase address can be the same account and different strings. Normalise with getAddress before comparing. Day 1.
CID
A content identifier on IPFS: the hash of the content, which is also its address. Day 3.
Commit-reveal
Submitting a hash of a value now and the value later, so that nobody can react to it before it is fixed. Day 3.
Composability
Contracts calling contracts without permission, so that protocols are built from other protocols. Days 1 and 3.
Consensus
How the network agrees on the next block. Proof of Work, then Proof of Stake. Day 1.
Custom error
error NotOwner(address);, a typed, cheap revert reason that clients can decode. Day 2.

D

Decentralisation test
Replace the chain with a database and a trusted administrator: what breaks? Project.
delegatecall
Running another contract’s code in the caller’s storage. How proxies work; a complete takeover if misused. Day 3.

E

EIP / ERC
An Ethereum Improvement Proposal; an ERC is one that defines an application-level standard, such as ERC-20. Day 3.
EIP-712
Typed structured data for signatures, so that a signed message is bound to a contract, a chain, and a schema. Day 3.
EOA (externally owned account)
An account that is a key pair. What a wallet holds. Day 1.
ERC-20 / ERC-721 / ERC-1155
Fungible tokens; non-fungible tokens; both in one contract. Day 3.
Event
A log a contract emits, readable by clients and indexers, not by contracts. The read interface of a contract. Day 1.
EVM
The Ethereum Virtual Machine: the deterministic execution environment every node runs contracts in. Day 1.

F

Finality
The point past which a block will not be undone. Roughly fifteen minutes on Ethereum; seconds of soft confirmation on a rollup. Day 1.
Flash loan
Borrowing any amount with no collateral, on condition that it is repaid in the same transaction. The tool behind oracle manipulation. Day 3.
Fork test
A test run against a copy of a real network’s state at a block. Day 4.
Foundry
The Rust toolchain with tests in Solidity; where fuzzing and invariants are most accessible. Day 4.
Front-running
Seeing a pending transaction and getting one included ahead of it. Day 3.
Fuzzing
Running a test with many random inputs to find the one that breaks it. Day 4.

G

Gas
The unit of computation. Each operation has a price, sometimes flat, sometimes depending on what it touches: writing a storage slot that was empty costs far more than overwriting one that was not, and the first access to a slot or an address costs more than the next. A transaction pays for what it uses at a market price; on a rollup, plus a fee for publishing its bytes to Ethereum. Days 1 and 4.

H

Hardhat
The TypeScript development environment: compiler, local node, tests, deployment. Day 1.

I

Ignition
Hardhat’s deployment system: declare what to deploy, and it records what it deployed per network. Day 1.
immutable / constant
Values fixed at deployment or at compile time, read for free. Day 2.
Indexer
A service that reads events into a database so that history and search can be queried. The Graph, Ponder, or your own. Day 3.
Invariant
A property that must hold after any sequence of calls; tested by generating random sequences. Day 4.
IPFS
Content-addressed storage: files identified by their hash, hosted by whoever pins them. Where large content goes, with the hash on chain. Day 3.

K

Keystore
Hardhat’s encrypted store for secrets such as private keys and RPC URLs, read through configVariable. Day 2.

L

Layer 1 / Layer 2
Ethereum itself; the networks that execute on top of it and post results back for security. Day 1.
Lending protocol
A pool where depositors supply and borrowers borrow against overcollateralised positions, with liquidation when collateral falls. Day 3.
Liquidation
Repaying an undercollateralised loan and taking the collateral at a discount. Open to anyone. Day 3.

M

Mapping
A hash table in storage with no length and no iteration. Day 1.
Mempool
Where an Ethereum L1 node keeps the transactions it has heard of and not yet seen included, visible to anyone who asks. Base has none that is public: transactions go straight to the sequencer. Day 3.
MEV
Value extracted by ordering transactions: sandwiches, front-running, back-running. A design constraint. Day 3.
msg.sender / msg.value
The address calling the function; the ETH sent with the call. Days 1 and 2.

N

Nonce
A per-account counter that orders transactions and prevents replay. Day 1.
Node
A machine holding the chain’s state and executing its transactions, reachable over JSON-RPC. Day 1.

O

OpenZeppelin
The standard library of audited contracts: tokens, access control, guards, proxies. Day 2.
Optimistic rollup / ZK rollup
A Layer 2 that assumes correctness and allows disputes for a week; one that posts a proof of correctness. Day 3.
Oracle
A service that brings outside data on chain. A trusted party by definition. Day 3.
Oracle problem
The chain guarantees what was recorded, not that it was true. Project.

P

payable / receive
A function that may receive ETH; the function that receives plain transfers. Day 2.
Permit (ERC-2612)
An ERC-20 approval given by signature rather than by transaction. Day 3.
Proxy
A contract that forwards calls to an implementation that can be swapped. How upgradeability is done, and a trust decision. Day 3.
Pull payment
Recording what is owed and letting the recipient withdraw, rather than sending. Day 2.

R

Read after write
A confirmed receipt says the chain accepted your transaction, not that the node answering your next request has caught up. RPC providers load-balance across nodes, so a read that follows a write can lag it by a block or two. Retry such reads. Day 2.
Reentrancy
An external call handing control to a contract that calls back before the caller’s state is updated. The DAO, 2016. Day 2.
Revert
Aborting a transaction and undoing everything it did, with a reason. Day 2.
Roles and trust table
For every role in a system: what it can do, and what happens if it is malicious or absent. Project.
RPC provider
A company running nodes and selling access to them over JSON-RPC. Alchemy, Infura, QuickNode. Prerequisites.

S

Sandwich
Buying before a victim’s swap and selling after it, in the same block. Day 3.
Sequencer
The single operator that receives a rollup’s transactions, orders them, and publishes batches to Ethereum. On Base it is run by Coinbase; it can delay or decline your transaction, and the escape hatch is a slow forced inclusion through the L1 bridge. Days 1 and 3.
Signature
Proof, from a private key, that its holder authorised a message. Recoverable to an address. Day 1.
Slippage
The difference between the price expected and the price received, from a trade moving the pool. Day 3.
Slither
A static analyser for Solidity. Day 3.
Smart account
A contract acting as a user’s account. Day 4.
Solidity
The language. Version 0.8 throughout. Day 1.
Soulbound
A non-transferable token. For credentials and memberships. Day 3.
Stablecoin
A token meant to hold one dollar: fiat-backed, crypto-backed, or algorithmic. Day 3.
State
Everything the chain remembers: every account’s balance, code, and storage. Day 1.

T

Testnet
A network with the same software and worthless tokens, for development. Base Sepolia here. Day 1.
Timelock
A delay between a decision and its execution, so that those affected can react. Day 3.
Tip
The part of the gas price paid to the validator for priority. Day 1.
Transaction
A signed instruction from an account: a recipient, a value, data, a nonce, gas. The only thing that changes state. Day 1.

U

Upgradeability
Making a contract’s rules changeable after deployment. Always a trust decision. Day 3.

V

Verification
Publishing a contract’s source to an explorer, which checks it matches the deployed bytecode. Day 2.
viem / wagmi
The TypeScript client library; the React hooks on top. Day 2.

W

Wallet
Software that holds keys and signs on the user’s behalf. MetaMask here. Day 1.
Wei
The smallest unit of ETH; 10^18 wei to one ETH. Day 1.

Z

Zero-knowledge proof
A proof that a statement is true which reveals nothing else. Used for scaling and for privacy. Day 4.