22 episodes

A podcast about Bitcoin protocol development

The Chaincode Podcast Chaincode Labs

    • Technology
    • 5.0 • 13 Ratings

A podcast about Bitcoin protocol development

    0xB10C – Tracepoints and monitoring the Bitcoin network

    0xB10C – Tracepoints and monitoring the Bitcoin network

    We catch up with 0xB10C about monitoring pools and tracing code execution in nodes.



    Our topics:

    - What he's been up to since the residency (1:05)

    - Monitoring the mempool (2:52)

      - Mempool Observer


    - Monitoring Mining pools (4:27)

      - MiningPool Observer

      - Mining pools not mining P2TR at Taproot activation (5:24)

      - Why monitor the network? (8:20)

      - Template discrepancies between pools and monitor (9:25)


    - User-space Statically Defined Tracing (USDT) (11:07)

      - Tracing Readme

      - Using tracepoints to simulate coin selection (13:36)

      - Why are tracepoints in production code? (14:38)

      - Using tracepoints for P2P monitoring (17:05)

      - Using tracepoints to review PRs (22:00)

      - Benchmarking Erlay with USDT (22:42)


    Other resources:
      - TransactionFee.info



    Thanks to Emily Kee for the sound engineering.

    • 25 min
    Gloria Zhao and Package Relay - Episode 21

    Gloria Zhao and Package Relay - Episode 21

    Gloria Zhao sits down with us to discuss her package relay proposal and what it is like as a relative newcomer to propose a big change.



    - What's package relay? (1:04)

      - Mailing List: Package Relay Proposal

    - Why do people care about package relay? (3:12)

    - What are these "contracting protocols" package relay matters for? (5:03)

      - Pinning attacks (6:28)

    - Why do you work on package relay? (6:55)

    - What's special about the mempool? (10:18)

    - How do you approach the security considerations? (12:07)

    - Synthesizing information for the ones coming after you (15:27)

    - What's next for package relay? (17:50)

    - Bridging protocol development with L2 (20:55)



    Additional resources:

    - Mailing List: Package Mempool Accept and Package RBF

    - Brink Podcast: Ep1 Mempool Policy

    - Censorship and DoS Attacks: An intro to Mempool Policy

    - Transaction Relay Policy for L2 Developers

    - Mempool Garden



    Thanks to Emily Kee for the sound engineering.

    • 26 min
    Martin Zumsande and Address Relay - Episode 20

    Martin Zumsande and Address Relay - Episode 20

    Martin Zumsande joins us to tell us about the address spam in the summer of 2021 and his interests in AddrRelay and Bitcoin Core development.

    We discuss with Martin:

    - His background (1:38)

    - Getting interested in Bitcoin (2:45)

    - How to approach P2P (3:55)

    - The network is changing (7:30)

    - What's the purpose of the Address Manager (AddrMan)? (9:33)Peering differences to LN nodes (11:00)

      - Ethan Heilman's talk on Network Partitioning Attacks (12:10)

      - Addrman and eclipse attacks (12:27)

    - AddrRelay and the role of node addresses (12:55)Getting connected to the network (13:37)

    - Self-announcements (14:25)

    - Address spam in summer 2021 and peer distribution (15:05)

    - Correction: The peer would not get addresses-divided-by-peers addresses, but 2×addresses-divided-by-peers addresses as the addresses get forwarded to two peers each. (18:00)

    - Estimating the Node Degree of Public Peers and Detecting Sybil Peers Based on Address Messages in the Bitcoin P2P Network by Matthias Grundmann (19:30)

    - Simulating the network (20:15)

    - Requesting addresses from peers (21:45)

    - Walking through first connection of a node (25:25)Coinscope paper (27:10)

    - Being a Bitcoin Core contributor (27:50)



    Thanks to Emily Kee for the sound engineering.

    • 31 min
    Sergei Tikhomirov and Lightning privacy - Episode 19

    Sergei Tikhomirov and Lightning privacy - Episode 19

    Postdoc Researcher Sergei joins Murch and Jonas to talk about channel balance probing in Lightning, privacy concerns in general, and the importance of researcher-developer collaboration.

    We discuss:

    - Sergei's background (1:50)

       - Sergei's homepage with links to all prior research

    - Lightning basics (2:50)

    - Why LN payments fail (3:40)

    - Why privacy is important (5:30)

    - Privacy potential of Lightning vs L1 Bitcoin (6:40)

    - How probing works (8:40)

    - Why is balance discovery bad? (11:30)

    - Persistent identities in Lightning (13:00)

    - Multi-vector security model and trade-offs (17:45)

    - "Twitter for your bank account" meme (20:20)

    - The danger of overestimating Bitcoin's privacy (21:00)

    - Lightning integrations and walled gardens (22:00)

    - Lightning Service Providers and LN's centralized topology (23:05)

    - LNBIG booth in El Salvador (25:30)

    - Potential oligopoly of large nodes (27:15)

    - Probing parallel channels (28:30)

      - Analysis and Probing of Parallel Channels paper

    - Combining probing with jamming (33:00)

    - The limit on in-flight payments (36:00)

      - StackExchange answer about transaction size limit

    - Bad and good probing (41:20)

    - Countermeasures and reputation (44:00)Overview of anti-jamming measures

    - Hub-and-spoke terminology and aviation analogy (49:00)

    - Doing research in Bitcoin and Lightning (53:10)

    - Why Bitcoin is unique (55:10)

    - Researcher-developer collaboration (58:00)

    Related research:

    - On the Difficulty... -- the first paper about LN balance probing

    - An Empirical Analysis paper about three LN attack vectors including probing

    - Counting Down Thunder paper about timing attacks

    - Congestion Attacks paper about jamming

    - Cross-layer Deanonymization paper about linking L1 and L2

    - Flood & Loot paper about malicious fee negotiation strategies

    - Hijacking Routes paper about adversarial fee undercutting



    Thanks to Justin for the sound engineering.

    • 1 hr
    Block Building with Clara and Murch - Episode 18

    Block Building with Clara and Murch - Episode 18

    Postdoc Researcher Clara joins Murch to discuss their block building research. They cover their proposal, which outlines suggested improvements to the current Bitcoin Core block building algorithm using candidate sets.

    Murch and Clara discuss:

    - Building a valid block 101 (5:45)

    - The current getblocktemplate algorithm (11:35)

    - Child pays for parent (13:40)

    - Is there something better? (15:45)

    - How easy would it be to guess the next block? (27:25)

    - Do we have a better idea than initially mining an empty block? (29:25)

    - Empty blocks and SegWit (33:45)

    - How to improve on the candidate set algorithm e.g., linear programming (35:00)

    - Why should Bitcoin Core have better block building? (37:00)

    - How to compare different block building techniques (38:55)

    Thanks to Caralie for the sound engineering.

    • 48 min
    Sanket Kanjalkar and Miniscript - Episode 17

    Sanket Kanjalkar and Miniscript - Episode 17

    Sanket describes to Murch his work on Miniscript. We explore uses for Miniscript, learn about intersections with PSBTs, Output Descriptors, and Taproot, and suss out the difference between Miniscript and Miniscript Policy.

    Note: This episode was recorded in the context of travel for Bitcoin 2021. We apologize for the less polished than usual audio quality due to the different equipment and recording environment.



    We discuss:

    - What's Miniscript? (1:54)

    - Partially Signed Bitcoin Transactions (PSBTs) (5:13)

      - Analyzing PSBTs with Miniscript (7:22)

    - How do Output Descriptors relate to Miniscript (10:16)

    - Implementations of Miniscript (13:36)

    - Semantic analysis of Scripts (14:54)

      - Non-malleability of miniscript (22:47)

    - Miniscript Policy (25:15)

      - Rediscovering HTLCs (29:41)

    - Miniscript uses (33:11)

      - Removing script limitations with Taproot (34:42)

      - Generic signing (35:53)

      - Future work (37:34)

      - The role of policy (40:24)


    Related links:

    - Miniscript website

    - Rust Miniscript

    - Miniscript C++ implementation

    - Gramtropy

    - ##miniscript on Libera Chat

    Thanks to Caralie for the sound engineering, and thanks to Matthew Zipkin for assistance with squashing reverb artifacts.

    • 45 min

Customer Reviews

5.0 out of 5
13 Ratings

13 Ratings

Mariann!! ,

Love it!

It’s definitely worth your time if you are trying to stay informed.

Onetallnerd ,

The more technical podcasts the better!

Excited to see chain code start such a high level technical bitcoin podcast.

Mark Rex ,

Excellent Bitcoin Podcast

Can’t wait for more! In-depth bitcoin podcast. 5 stars!