1
0
mirror of https://github.com/bitcoinbook/bitcoinbook synced 2024-11-23 00:28:14 +00:00

ch5 outline

This commit is contained in:
Andreas M. Antonopoulos 2014-06-04 00:17:57 -04:00
parent 9b6e771645
commit 80196d3088

View File

@ -1,17 +1,70 @@
== Chapter 5 - Transactions
=== Introduction
=== ScriptPubKey and ScriptSig
=== 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"]
=== Transaction Script Language
=== Stack-Based Script Evaluation
=== Common Transaction Scripts
==== Pay to Public Key Hash
=== 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"]
@ -20,8 +73,14 @@ image::images/Tx_Script_P2PubKeyHash_1.png["Tx_Script_P2PubKeyHash_1"]
.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
=== Complex Transaction Scripts
=== P2SH Scripts
=== Multi-Signature Scripts
=== Transaction Malleability