1
0
mirror of https://github.com/bitcoinbook/bitcoinbook synced 2024-12-02 04:48:40 +00:00
Commit Graph

4588 Commits

Author SHA1 Message Date
David A. Harding
8b09a51b7b CH10: SPV privacy: update to account for compact block filters too
Previously assumed bloom filters would be used.  Only small updates
needed.
2023-05-18 15:55:38 -10:00
David A. Harding
1e2a2252b3 CH10: add section about compact block filters 2023-05-18 15:55:38 -10:00
David A. Harding
f75f6b83cc CH10: bloom filters: edits and introduce problems
- Introduce problems to provide context for the creation of compact
  block filters
2023-05-18 15:55:38 -10:00
David A. Harding
38f859fe3c CH10: SPV clients: edits and clarify misconceptions 2023-05-18 15:55:38 -10:00
David A. Harding
ad1fecb408 CH10: remove subhead before intro 2023-05-18 15:55:38 -10:00
David A. Harding
f1aea5e372 CH10: s/(SPV|lightweight) node/\1 client/ 2023-05-18 15:55:38 -10:00
David A. Harding
28cfc751c1 CH10: Inventory section
Update for headers-first sync rather than the old blocks-first sync.
2023-05-18 15:55:38 -10:00
David A. Harding
7d2ba06209 CH10: update Full Node section
- Drop everything that says a full node needs a complete copy of the
  blockchain
2023-05-18 15:55:38 -10:00
David A. Harding
cf750ecf4d CH10: update peer finding section
- Update example for Bitcoin Core 24
- Generalize language a bit
2023-05-18 15:55:38 -10:00
David A. Harding
9142816196 CH10: add compact block relay & update relay networks
- Describe BIP152 compact block relay
- Describe why we still need relay networks (what they do that BIP152
  can't)
- Drop FALCON relay (never used, AFAIK)
- Minor updates to relay section
2023-05-18 15:55:38 -10:00
David A. Harding
0ed5d4a199 CH10: edits to node roles sections
- Remove images: these are incorrect and (IMO) not very useful.  The
  first image is a legend.  The second image contains multiple errors or
  confusions, such as implying that a miner needs a full copy of the
  block chain or that a wallet is a routing node.  The third image is a
  very busy depiction of a network showing that clients connect to
  nodes, which I think is fine to just say in the text.

- Revise text to not reference images.

- Maintain distinction between nodes and peers by not using terms "full
  node client" or "SPV node"

- Update the count of reachable nodes

- Remove some dead full node implementations
2023-05-18 15:55:38 -10:00
David A. Harding
da1f8ee2ba CH10: intro edits
- We revise sentence about equality among peers to make it clear that
  the peers are full nodes.  Clients are not peers of a full node.

- Remove clause about "reciprocity" being the incentive for
  participation.  I think there are varied reasons for operating a full
  node, ranging from wanting to validate your own transactions
  (requiring only a pruning full node) to wanting to keep mining
  decentralized (e.g. by relaying transactions).

- Drop line about non-Bitcoin-P2P protocols being "extended Bitcoin
  network".  I think that's an unnecessary categorization.
2023-05-18 15:55:38 -10:00
David A. Harding
328c11c1ec CH10: s/bitcoin/Bitcoin/ 2023-05-18 15:55:38 -10:00
David A. Harding
e5dc7d86ab CH10: reflow text so that future diffs will be more readable 2023-05-18 15:55:38 -10:00
David A. Harding
c4007411b4 CH08: fix reference 2023-05-18 15:55:38 -10:00
kristen@oreilly.com
04fde07744 Edited author_bio.html with Atlas code editor 2023-05-18 05:29:50 -07:00
David A. Harding
037d8108fc CH07 & CH08: edits for arufino feedback (thanks!) 2023-05-08 14:21:49 -10:00
David A. Harding
d687eb538f CH09: add images 2023-05-07 09:25:10 -10:00
harding
14a5d35a59 Updated atlas.json 2023-05-07 12:18:23 -07:00
David A. Harding
3ff08d8fff CH09: add info about fees
- New introduction to fees
- More detail about how the fee market works
- Adds RBF and CPFP fee bumping
- Adds transaction pinning
- Adds package relay
- Adds CPFP carve out
- Small edits to 'Adding fees'
- Tiny edits to fee sniping
2023-05-07 09:16:34 -10:00
David A. Harding
02d7401f9d fixmes 2023-04-09 05:52:11 -10:00
David A. Harding
eb78eb1dfd Delete now-unused files for original chapters 6 & 7 2023-04-09 05:35:55 -10:00
David A. Harding
7291582cb0 [Move only] Move CH07 MTP section to Mining chapter 2023-04-09 05:33:18 -10:00
David A. Harding
e0af3f1fa3 [Move only] Move CH06/07 fee material to Fees chapter 2023-04-09 05:30:48 -10:00
harding
7a50453afc Updated atlas.json 2023-04-08 14:49:03 -07:00
David A. Harding
e96341c9b7 CH08: add conclusion 2023-04-08 11:42:33 -10:00
David A. Harding
51a71a8e01 CH08: ECDSA terminology update
- "Ephemeral key pair" -> nonce; makes it consistent with schnorr
  section and better composes with section about avoiding nonce reuse

- Changed variables to be consistent with schnorr section
2023-04-08 11:42:33 -10:00
David A. Harding
4f53af3f4e CH08: Add new intro to ECDSA to compare it to schnorr 2023-04-08 11:42:33 -10:00
David A. Harding
4749fc033f CH08: Describe schnorr signatures, multisignatures, t-signatures 2023-04-08 11:42:33 -10:00
David A. Harding
a28d4bb054 CH08: update RFC6979 text to describe BIP340 and synthentic nonces 2023-04-08 11:40:31 -10:00
David A. Harding
5f4a8cfc66 CH08: Edits to intro and other prev edition content 2023-04-08 11:40:31 -10:00
David A. Harding
5515a74870 CH08: update text about flex sighashes to ANYPREVOUT 2023-04-08 11:40:31 -10:00
David A. Harding
260df04abe CH08: clarify that diff sigs in the same input can have diff sighashes 2023-04-08 11:40:31 -10:00
David A. Harding
afed975b8c CH08: Move serialization of ECDSA signatures 2023-04-08 11:40:31 -10:00
David A. Harding
237fd1ea50 CH08: generalize text about signatures (ECDSA->{ECDSA,schnorr}) 2023-04-08 11:40:31 -10:00
David A. Harding
07e475583b CH08: drop paragraph about segwit commiting to input amount
This now has a well-known problem and doesn't provide the guarantees
that were hoped for.
2023-04-08 11:40:31 -10:00
David A. Harding
61369c7206 CH06/07: Update titles, anchors, and cross-references links 2023-04-08 11:40:31 -10:00
David A. Harding
43b736cd3b [Move Only] Content from old ch06/07 to new chapter 8 (signing) 2023-03-31 05:23:35 -10:00
David A. Harding
d7955dc284 Old CH07: delete section about bech32 addresses
We covered this in depth in the addresses chapter.
2023-03-31 05:21:23 -10:00
David A. Harding
32d0aca1c0 CH07: Fix chapter heading 2023-03-30 14:20:01 -10:00
David A. Harding
dfb3aae2e0 CH06: try again to fix listing xref 2023-03-30 14:17:54 -10:00
David A. Harding
6dfdbbcd70 CH03/06: remove [listing] tag to see if that fixes ref 2023-03-30 14:09:33 -10:00
harding
8f94f765cd Updated atlas.json 2023-03-30 17:03:50 -07:00
David A. Harding
a0a50cb547 CH06: edits for feedback from arufino (thanks!) 2023-03-30 14:01:06 -10:00
David A. Harding
1a27ee296e CH07: Add MAST, P2C, scriptless multisignature, taproot, tapscript 2023-03-30 14:01:06 -10:00
David A. Harding
fe575bb33e CH07: New chapter introduction 2023-03-30 14:01:06 -10:00
David A. Harding
eb1a75ad97 CH07: Minor edits
A bunch of minor edits just from reading through the previous text.
2023-03-30 14:01:06 -10:00
David A. Harding
3d659cec16 CH07: Leave future todo about implications of no script in scriptSig
- E.g., the idea that it might have been possible to implement
  script delegation
2023-03-30 14:01:06 -10:00
David A. Harding
61b18af41b CH07: Update warning about mixing locktimes
We go into more detail about the problems of mixining locktimes, both
CLTV and CSV.
2023-03-30 14:01:06 -10:00
David A. Harding
7b6bc29171 CH07: drop confusing claims about segwit wallet requirements 2023-03-30 14:01:06 -10:00