1
0
mirror of https://github.com/bitcoinbook/bitcoinbook synced 2024-12-29 09:58:09 +00:00
bitcoinbook/ch05.asciidoc
Andreas M. Antonopoulos 80196d3088 ch5 outline
2014-06-07 12:06:47 -07:00

87 lines
2.1 KiB
Plaintext

== Chapter 5 - Transactions
=== Introduction
=== Transactions and the Blockchain
==== Transaction Lifecycle
===== Creating Transactions
===== Broadcasting Transactions
===== Validating and Propagating Transactions
===== Mining Transactions into Blocks
==== Transaction Fees
==== Transaction Validation
===== Validation Limits
==== Transaction Locktime
==== Transaction Irrevocability
==== Transaction Self-Sufficiency
=== Transaction Structure
=== Transaction Outputs and Inputs
[TIP]
====
Outputs come first, chicken and egg.
====
==== Transaction Outputs
===== Spending Conditions (Encumbrances)
===== Unspent Transaction Outputs (UTXO)
[TIP]
====
The are no accounts or balances in bitcoin, only UTXO.
====
==== Transaction Inputs
===== Spending the Transaction Outputs
===== Unlocking the Conditions (Encumbrance Satisfaction)
==== Transaction Fees
=== Standard Transactions
==== Pay to Public Key Hash (P2PKH)
==== Simple Pubkey
==== Mutli-Signature
==== Data Injection (OP_RETURN)
==== Pay to Script Hash (P2SH)
===== Redeem Script and isStandard Validation
=== Non-Standard Transactions
=== Transaction Scripts and Script Language
==== Scripting Language
==== Turing Incompleteness
==== Stateless Verification
==== Transaction Script Operands
==== Script Construction (Lock + Unlock)
[[scriptSig and scriptPubKey]]
.Combining scriptSig and scriptPubKey to evaluate a transaction script
image::images/scriptSig_and_scriptPubKey.png["scriptSig_and_scriptPubKey"]
=== Standard Transaction Scripts
==== Pay to Public Key Hash Script Example
[[P2PubKHash1]]
.Evaluating a script for a Pay-to-Public-Key-Hash transaction (Part 1 of 2)
image::images/Tx_Script_P2PubKeyHash_1.png["Tx_Script_P2PubKeyHash_1"]
[[P2PubKHash2]]
.Evaluating a script for a Pay-to-Public-Key-Hash transaction (Part 2 of 2)
image::images/Tx_Script_P2PubKeyHash_2.png["Tx_Script_P2PubKeyHash_2"]
==== Pubkey Script Example
==== Multi-Signature Scripts Example
==== P2SH Script Example
=== Scripts and Signatures
==== Elliptic Curve Digital Signature Algorithm
===== Signing with the Private Key
===== Validating a Digital Signature
==== Types of Signature Hashes
=== Transaction Malleability