CS120 Study Guide

Unit 1: Introduction to Bitcoin Technology

1a. Describe the structure of a peer-to-peer network

  • How would you describe the structure of the Bitcoin network?

The Bitcoin network has a flat structure meaning that no node, or computer, on the network has more control than any other node. The network is peer-to-peer, where all nodes can communicate with no intermediary or coordinator. Some nodes on the network are mining nodes, or miners, who do some work to record transactions in the blockchain, but all nodes communicate and exchange data on the same flat network.

The whitepaper states that "a purely peer-to-peer version of electronic cash would allow online payments to be sent directly from one party to another without going through a financial institution". Bitcoin is a network without a central authority.

To review, see Bitcoin: A Peer-to-Peer Electronic Cash SystemWhat is Bitcoin?, and The Bitcoin Network.

 

1b. Describe how Bitcoin keeps track of value on the network

  • Bitcoin doesn't use the concept of accounts, nor does it keep track of "coins", so how is value exchanged and recorded on the network?

The Bitcoin blockchain is a shared ledger that keeps track of the inputs and outputs of transactions. The Bitcoin software does not include the concept of accounts. Instead, the software keeps track of unspent transaction outputs or UTXOs. A Bitcoin wallet doesn't hold coins but rather keeps track of UTXOs.

Instead of transfers between accounts, Bitcoin operates in terms of transaction inputs and outputs. Every transaction consumes one or more UTXOs as inputs and creates one or more outputs that become UTXOs themselves.

To review, see Bitcoin Transactions.

 

1c. Explain how a balance of power is maintained in Bitcoin to keep the system open and decentralized

  • Who controls the Bitcoin network? Which groups or entities influence the development of the software or the network?

No one person, group, or entity controls Bitcoin. Several groups influence the Bitcoin network and the software. They include miners, developers, wallets, merchants, users, etc. As no one entity controls Bitcoin, but many people have some influence, a balance of power is maintained.

One group cannot force a change in the software or network without cooperation from the other influential groups.

To review, see Understanding Consensus.

 

1d. Discuss what makes a blockchain "open"

  • Who can join the Bitcoin network, and what do they need to do to join?

Anyone with an internet connection and a computer can join the Bitcoin network. As no one controls the Bitcoin network, no one entity can control access to the network. All Bitcoin network data is public.

No entity grants access to the network. Anyone who is technically capable of accessing the public network can participate. The network itself will allow all valid transactions to be propagated. Miners will include all transactions they have an incentive to include regardless of who sent the transaction, as they likely will not even have that information.

To review, see Why Open Blockchains Matter.

 

1e. Look up a transaction and explain its current status on the network

  • How are transactions, or ledger entries, on the Bitcoin network viewed?

The most basic way to view Bitcoin transaction data is via the command line when running the Bitcoin software. However, there are some user-friendly options. Block explorer websites offer an easy-to-use option for exploring blockchain data. There are explorers available, and transaction data can be found quickly in various ways, such as by searching a block hash or a transaction ID.

To review, see Bitcoin Transactions.

 

Unit 1 Vocabulary

This vocabulary list includes terms you will need to know to successfully complete the final exam.

  • miner
  • node
  • peer-to-peer network 
  • UTXO