Category Archives: 07 – Reference

Base Network Reference

Welcome to the NZRT Wiki Podcast. Today we’re looking at Base Network Reference.

If you’re doing any blockchain development at NZRT, Base is one of the networks you’ll be working with regularly. This episode covers the key parameters, useful contracts, and how to configure your local Hardhat setup for both the mainnet and testnet environments.

So first, let’s talk about what Base actually is. Base is a Layer 2 blockchain network built on top of Ethereum, developed by Coinbase. Like Ethereum, it uses ETH as its currency and gas token. The important thing to understand is that NZRT works with two versions of the Base network. There’s Base Mainnet, which is the live production network where real transactions happen with real value. And then there’s Base Sepolia, which is the testnet — a sandbox environment where you can develop and test without spending real money.

Let’s go through the network parameters for both. Each network has what’s called a Chain ID, which is a unique number that identifies the network to your tools and wallets. For Base Mainnet, that Chain ID is 8453. For Base Sepolia testnet, it’s 84532. You’ll need these numbers when configuring wallets or development tools.

Both networks use ETH as the currency, though on the testnet it’s test ETH with no real-world value.

For connecting to the networks, you have two RPC endpoint options — think of these as the addresses your tools use to talk to the blockchain. The public RPC for Base Mainnet is mainnet.base.org, and for the testnet it’s sepolia.base.org. If you’re using Alchemy for a more reliable connection, there are dedicated Alchemy endpoints for both networks that include your API key as part of the URL.

For browsing transactions and contracts on-chain, the explorer for Base Mainnet is basescan.org, and for the testnet you’d go to sepolia.basescan.org. These are essentially search engines for the blockchain — you can look up wallet addresses, transactions, and contract details.

If you need to move ETH between Ethereum and Base, the bridge for mainnet is bridge.base.org. For the testnet, you’d use testnets.superbridge.app. And speaking of the testnet — if you need test ETH to actually run transactions in the Sepolia environment, you can get it free from the Coinbase faucet at coinbase.com/faucets. There’s no faucet needed for mainnet since that uses real ETH.

One more useful number: the block time on both networks is approximately 2 seconds. That means transactions confirm pretty quickly compared to Ethereum mainnet.

Now let’s look at two important contract addresses you’ll use frequently on Base Mainnet. A contract address is a fixed location on the blockchain where a specific token or smart contract lives. The first is USDC — the USD Coin stablecoin — which lives at an address starting with 0x8335. The second is WETH, which stands for Wrapped Ether, and that lives at an address starting with 0x4200. You’ll need these addresses any time you’re interacting with those tokens programmatically. Make sure you grab the exact full addresses from the wiki rather than typing them manually — contract addresses are case-sensitive and errors can be costly on mainnet.

Now let’s cover the Hardhat configuration. Hardhat is a development environment for building and deploying smart contracts. The code block in the wiki shows how to add Base Mainnet and Base Sepolia as named networks in your Hardhat config file. What it’s doing is defining two network entries. The first, called base-mainnet, points to your Alchemy Base Mainnet URL — which you store as an environment variable so it stays out of your code — and it uses your private key, also stored as an environment variable, to sign transactions. It also specifies that Chain ID of 8453 so Hardhat knows exactly which network it’s talking to. The second entry does the same thing for Base Sepolia, pointing to the Alchemy Sepolia URL and using Chain ID 84532. Once these entries are in your config, you can deploy or run scripts against either network just by passing the network name in your Hardhat command.

A quick note on environment variables — you’ll notice the config references things like your Alchemy URL and private key pulled from the environment rather than hardcoded. That’s intentional. Never put API keys or private keys directly in your config files. Store them in a dot-env file locally and make sure that file is excluded from version control.

For further reading, the wiki cross-references three related topics: the broader Ethereum and Base Network page, the Alchemy integration notes, and the Hardhat documentation. If you’re setting up a new project or onboarding to NZRT’s blockchain stack for the first time, those are worth working through in that order.

That’s it for this episode of the NZRT Wiki Podcast. Thanks for listening.

Blockchain Glossary

Welcome to the NZRT Wiki Podcast. Today we’re looking at Blockchain Glossary.

If you’re new to blockchain development or just need a quick reference for the terminology you’ll encounter working with NZRT’s stack, this episode walks you through the core terms. We’ve got a big list here, so let’s move through it in a way that actually makes sense.

Let’s start with the foundations. A blockchain transaction is a signed instruction sent to the network, whether that’s transferring tokens or calling a smart contract. A smart contract is a self-executing program stored directly on the blockchain, and it’s written in a language called Solidity, which is the primary language for Ethereum-based development. When you want to run that contract, it gets compiled down to bytecode, which is the machine-readable version that lives on-chain. The thing that actually runs it is called the EVM, or Ethereum Virtual Machine. Think of it as the engine underneath everything.

Now, every contract and wallet has an address, which is a twenty-byte hexadecimal identifier derived from a public key. You’ll see these starting with zero-x followed by a string of characters. There are two main account types. An EOA, or Externally Owned Account, is a wallet controlled by a private key, which is a two-hundred-and-fifty-six-bit secret that authorises your transactions. Then there are smart contract accounts, like a Multisig, which requires multiple approvals before anything executes. Gnosis Safe is a common example of that.

To deploy a contract means publishing it to the blockchain. Once it’s live, you interact with it through something called an ABI, which stands for Application Binary Interface. The ABI defines how to call the contract’s functions, what inputs they take and what they return. If you’re building tooling around a contract, you’ll be working with the ABI constantly.

Let’s talk about networks. NZRT’s primary network is Base, which is an Ethereum Layer 2 blockchain built by Coinbase. Layer 1, or L1, refers to the base blockchain itself, which in this context is Ethereum. Layer 2, or L2, is a scaling solution built on top of that. Base has two main environments you’ll use. Mainnet is the live production network, and it has a Chain ID of eight-four-five-three. Base Sepolia is the testnet, where you use fake ETH to test your work without spending real money, and it has a Chain ID of eighty-four-five-three-two. Always build and test on Sepolia first.

Now for the cost side of things. Gas is the unit that measures computational work on the network, and you pay for it in ETH. Gas prices are usually expressed in Gwei, which is one billion Wei. Wei is the smallest unit of ETH, and there are ten to the power of eighteen Wei in a single ETH. So Gwei sits in the middle, which makes it a convenient unit for talking about fees without writing out enormous numbers.

When a transaction goes through, you’ll hear about confirmations. Each confirmation is another block added to the chain after your transaction’s block. More confirmations means more finality, meaning it becomes increasingly unlikely the transaction will be reversed.

Every account has a nonce, which is a sequential number that prevents transaction replay attacks. Each transaction from an account increments the nonce, so the network knows the order and won’t let the same transaction be submitted twice.

For token standards, ERC-20 defines fungible tokens, meaning each token is identical and interchangeable. USDC is a great example, a stablecoin pegged one-to-one with the US dollar, and it’s widely used on Base. ERC-721 is the NFT standard, where each token is non-fungible, meaning unique and non-interchangeable.

A few more terms worth knowing. OpenZeppelin is a library of audited Solidity base contracts, a solid starting point for writing secure token and access control logic. Hardhat is the development environment used to compile, test, and deploy contracts. RPC stands for Remote Procedure Call, and it’s the API layer you use to talk to a blockchain node. Verification means publishing your contract’s source code on Basescan, the block explorer for Base, so anyone can inspect what the contract actually does.

DeFi is Decentralised Finance, financial services running on-chain without traditional intermediaries. RWA stands for Real-World Asset, which refers to a physical asset that’s been represented on-chain as a token.

On the security side, your seed phrase is the twelve or twenty-four words used to recover a wallet. These follow the BIP-39 standard. Treat it like a master password, because it is one. Ethereum itself runs on Proof-of-Stake, which has been its consensus mechanism since an upgrade known as The Merge.

That’s it for this episode of the NZRT Wiki Podcast. Thanks for listening.