Advanced Bitcoin Scripting -- Part 1: Transactions & Multisig
Channel: aantonop
Date: 2017-09-02

This is the first part of a more technical talk where Andreas explores Bitcoin script, with examples from the 2nd edition of Mastering Bitcoin, focusing on the use of conditional statements, flow control, guard clauses and time locks. The examples will include advanced multi-signature scripts, hash time lock contracts and asymmetric revocable commitments. Then he answers questions about Bitcoin's quirky bugs, where Bitcoin differs from Ethereum at a scripting level, how SegWit works, how consensus rules change, and whether Bitcoin is more than just a currency. 

Watch Part 2 here: https://youtu.be/pQbeBduVQ4I

This talk took place at the San Francisco Bitcoin Developer (@SFBitcoinDev) meetup on April 3rd, 2017: https://www.meetup.com/SF-Bitcoin-Devs/events/238773843/

Review materials on the topics presented:
Chpt. 7: https://github.com/bitcoinbook/bitcoinbook/blob/develop/ch07.asciidoc
Chpt. 12: https://github.com/bitcoinbook/bitcoinbook/blob/develop/ch12.asciidoc

Chapters
2:17 The fundamentals of Bitcoin script 
5:00 Bitcoin's operators 
6:30 Creating transactions (P2PKH - Pay to Public Key Hash) 
7:42 Public Key CheckSigs, security by obfuscating public keys 
9:05 Redeeming the script 
12:05 The RIPEMD160 hash operation 
14:05 OP_EQUALVERIFY, OP_CHECKSIG, & the elliptic curve digital signature algorithm (ECDSA) 
18:30 Summary 
19:45 Illustrating scripts: Equal, EqualVerify, CheckSig, CheckVerify, CheckMultisig, CheckLockTimeVerify
23:02 Guard clauses 
24:53 Script-based timelocks 
26:50 Flow control statements, interactive artificial intelligence 
28:35 If, Else, EndIf 
33:55 Unlocking scripts, what conditional flows do in Bitcoin 
35:44 1-of-2 multi-signature script 
38:28 1-of-2 multi-signature script with guard clause 
41:30 2-of-3 multi-signature script 
43:20 2-of-3 multi-signature script with timelock guard clause 
44:42 BIP-113, how time is referenced in Bitcoin 
46:58 Backup clause & other nuances in multi-signature schemes 
52:36 Game theory, complexity from simplicity
53:45 2-of-3 multi-signature script, unlocking 

RELATED:
Bitcoin: Where the Laws of Mathematics Prevail - https://youtu.be/HaJ1hvon0E0
The rules of Bitcoin (part 1) - https://youtu.be/VnQu4uylfOs
The rules of Bitcoin (part 2) - https://youtu.be/vtIp0GP4w1E
Forkology: A Study of Forks for Newbies - https://youtu.be/rpeceXY1QBM
Irreversibility and consumer protection - https://youtu.be/R107YWu5XzU

Andreas M. Antonopoulos is a technologist and serial entrepreneur who has become one of the most well-known and well-respected figures in bitcoin.

Follow on Twitter: @aantonop https://twitter.com/aantonop
Website: https://antonopoulos.com/

He is the author of two books: “Mastering Bitcoin,” published by O’Reilly Media and considered the best technical guide to bitcoin; “The Internet of Money,” a book about why bitcoin matters.

THE INTERNET OF MONEY, v1: https://www.amazon.co.uk/Internet-Money-collection-Andreas-Antonopoulos/dp/1537000454/ref=asap_bc?ie=UTF8

MASTERING BITCOIN: https://www.amazon.co.uk/Mastering-Bitcoin-Unlocking-Digital-Cryptocurrencies/dp/1449374042

[NEW] MASTERING BITCOIN, 2nd Edition: https://www.amazon.com/Mastering-Bitcoin-Programming-Open-Blockchain/dp/1491954388

Subscribe to the channel to learn more about Bitcoin & open blockchains!

If you want early-access to talks and a chance to participate in a monthly LIVE Q&A with Andreas, become a patron: https://www.patreon.com/aantonop

Music: "Unbounded" by Orfan (https://www.facebook.com/Orfan/)
Outro Graphics: Phneep (http://www.phneep.com/)
Outro Art: Rock Barcellos (http://www.rockincomics.com.br/)
Join the aantonop Channel: https://aantonop.io/joinaantonopyt