Difference between revisions of "Main Page"

Line 8: Line 8:
  
 
===The Ledger===
 
===The Ledger===
The Bitcoin ledger is also formed as a [[wikipedia:Directed Acyclic Graph|Directed acyclic graph]] (DAG) where each transaction is a node. Following this graph back can trace every the ownership of every coin in an unbroken chain of signatures back to the original [[Coinbase]] transactions.  
+
The Bitcoin ledger is also formed as a [[wikipedia:Directed Acyclic Graph|Directed acyclic graph]] (DAG) where each transaction is a node. Following this graph back can trace every the ownership of every coin in an unbroken chain of digital signatures back to the original [[Coinbase]] transactions.  
 +
 
 +
[[File:Chain of Signatures.png|frame|centre|alt=Electronic coins are defined as a chain of digital signatures]]
 +
 
 
The ledger is held on a [https://en.wikipedia.org/wiki/Distributed_networking distributed network] of nodes who compete with each other to extend it.  
 
The ledger is held on a [https://en.wikipedia.org/wiki/Distributed_networking distributed network] of nodes who compete with each other to extend it.  
  
 
Miners gather transactions from the network and evaluate whether they want to mine them or not.  
 
Miners gather transactions from the network and evaluate whether they want to mine them or not.  
  
[[GetBlockTemplate interface|Block templates]] are created by a node which calculates the root of a [https://en.wikipedia.org/wiki/Merkle_tree Merkle tree] containing all of the transactions they are attempting to mine. The order of transactions in the Merkle tree is not related to their position in the transaction DAG. As new transactions arrive, they are added to the tree.[[File:Merkle tree.png|frame|centre|alt=The structure of a Merkle Tree]]
+
[[GetBlockTemplate interface|Block templates]] are created by a node which calculates the root of a [https://en.wikipedia.org/wiki/Merkle_tree Merkle tree] containing all of the transactions they are attempting to mine. The order of transactions in the Merkle tree is not related to their position in the transaction DAG. As new transactions arrive, they are added to the tree.
 +
 
 +
[[File:Merkle tree.png|frame|centre|alt=The structure of a Merkle Tree]]
  
 
===Transactions===
 
===Transactions===

Revision as of 23:24, 18 January 2020

Temporary log in link

Welcome to the BitcoinSV wiki. Here we aim to provide a correct and up-to date set of information on the Bitcoin network and its features and functionality.

Bitcoin

Bitcoin is a peer to peer cash system created by Dr. Craig Wright under the pseudonym Satoshi Nakamoto and released as open-source software in 2009. It does not rely on a central server to process transactions or store funds. The leaderless structure of the network famously solves The Byzantine Generals Problem allowing disconnected entities to follow a common direction without centralised instruction.

The Ledger

The Bitcoin ledger is also formed as a Directed acyclic graph (DAG) where each transaction is a node. Following this graph back can trace every the ownership of every coin in an unbroken chain of digital signatures back to the original Coinbase transactions.

Electronic coins are defined as a chain of digital signatures

The ledger is held on a distributed network of nodes who compete with each other to extend it.

Miners gather transactions from the network and evaluate whether they want to mine them or not.

Block templates are created by a node which calculates the root of a Merkle tree containing all of the transactions they are attempting to mine. The order of transactions in the Merkle tree is not related to their position in the transaction DAG. As new transactions arrive, they are added to the tree.

The structure of a Merkle Tree

Transactions

All Bitcoin Transactions are payments of some kind. Transactions are written in a flexible scripting language that is used to assign ownership rights to each transaction output. All network events including the creation of a block are inscribed in transactions.

Valid transactions that are broadcast on The Bitcoin Network are committed to the Bitcoin public ledger by miners in Blocks. Blocks are discovered just under every 10 minutes on average and held in a a Directed acyclic graph (DAG) structured as a Block chain. Each block forms a node in the graph. This graph is consistent in structure and can be traced back to the first block mined.

Transactions can be exchanged peer to peer, allowing them to be modified in payment channels. Once a transactions is sent to the network in a closed channel, global consensus can be reached on the validity in less than 2 seconds.

Application Layer Protocols

It is possible to build application layer protocols that use the Bitcoin protocol as a data transport layer. There are several ways of embedding data in Bitcoin transactions with the most common being the use of False Return outputs.

The Metanet is an application layer protocol developed by Dr Craig Wright which allows for a secondary DAG structure to be overlaid on the transaction DAG. Metanet graphs are defined using the Metanet Protocol and represent a new paradigm in how data is stored and presented for consumption by users.

Nodes

Nodes are operated by the Bitcoin mining enterprises who build the network. Bitcoin's economic incentives are structured such that for the nodes to be most profitable at building the ledger they must be as closely connected to other well performing nodes as possible. This leads to miners forming a Small World Network which trends towards a Nearly Complete Graph where all miners are connected to all other miners. Miners gather transactions from users who connect in a layered network over the nodes at the core forming a Mandala Network. In this shell network, peers use Simplified Payment Verification to form a much less densely packed structure where information is exchanged in Payment Channels.

As Bitcoin scales, the nodes who comprise the network will be variously compartmentalised into specialised hardware. These clustered systems will be distributed globally, each being placed in a location optimised for its task.

Proof of Work

The miners use hash based Proof of Work to compete for the right to extend the ledger, and as a means to vote on network rules.

Unit of account

Satoshis are the ledger's native unit of account and 100,000,000 satoshis is abstracted to one Bitcoin. Satoshis are held in script puzzles called Unspent Transaction Outputs or UTXOs. These are transaction outputs which are held by miners in a quick access database called the UTXO set. During the spending process, UTXOs being used in a transaction are consumed and the solution to their puzzle script is recorded in the transaction.

Subsidy

Satoshis are issued by miners to themselves as a subsidy payment during the network establishment phase. As the network matures, the the subsidy dissipates forcing the miners to find alternate revenue streams. The payment allows miners to finance their operations through the payment of goods and services in Bitcoin, spreading them through the economy.

Network rules

Bitcoin operates on a fixed ruleset. So-called consensus rules include things such as the operation of the opcodes in Bitcoin Script, the rate at which new bitcoins are issued, the mathematical function used to calculate the target for the Difficulty algorithm and more. The protocol is agreed upon by the miners who control network operation.

Limits

There are no limits in the Bitcoin protocol. Any limits imposed are are put in place by miners who are incentivised to catch the largest profitable pools of transactions they can. Miners compete to offer better service to fee paying users by scaling their own capabilities.

History

Bitcoin has a rich history and has been attacked in many ways since its inception.

Tools and Building on Bitcoin

Bitcoin has a rich and diverse set of tools which are being added to all the time.