Talks
Episode 6: Discussing Pre-25.0 Bitcoin Core Vulnerability Disclosures
I joined Gloria and Niklas on the brink.dev podcast to talk about the recently disclosed Bitcoin Core pre-25.0 vulnerabilities.
Episode 6: Discussing Pre-25.0 Bitcoin Core Vulnerability Disclosures
Monitoring Bitcoin P2P network attacks and anomalies with eBPF and USDT tracepoints
I spoke at the eBPF Summit 2024 about how I’m using eBPF and the USDT tracepoints in Bitcoin Core to extract P2P network events to use them for, for example, anomaly detection.
Bitcoin Core Development
At the “Bitcoin Burg Academy” I talked about Bitcoin Core development to an non-techincal audience. Often when I talk to non-technical Bitcoiners, they don’t really know much about the Bitcoin Core open-source software project but are very interested to learn more about it. In this talk, I covered the basics starting from the beginning with Satoshi, to the early years without Satoshi, to how Bitcoin Core development works now. I detail how Bitcoin Core developers communicate, I briefly introduce GitHub, Issues, PRs, and review, and I discuss what jobs maintainers have and how Developer Funding works.
FFM BTC Meetup: New features in Bitcoin Core v26.0
The upcoming Bitcoin Core v26.0 release will include new experimental features like AssumeUTXO and P2P transport v2.
At the Frankfurt Bitcoin Meetup (German), I explained the Bitcoin Core development process, that for this release cycle contributors focused their review on specific projects, and when to expect the new release (after testing, where everyone can participate!). Then dove into the problems that AssumeUTXO and P2P transport provide solutions for and what these solutions are. This was followed by a small discussion.
No slides.
Workshop: Writing a NixOS module for YOUR_APP
I held a workshop about “Writing a NixOS module for YOUR_APP”.
Workshop: Tracing Bitcoin Core v23.0
I’ve held a workshop showcasing the new tracepoints and tracing functionallity included in Bitcoin Core release v23.0.
0xB10C – Tracepoints and monitoring the Bitcoin network
Jonas, Murch, and I chat about monitoring Bitcoin mining pools and tracing Bitcoin Core.
anchor.fm Podcast PageMonitoring Bitcoin mining pool transaction selection
Can we detect transaction censorship by mining pools on the Bitcoin network?
I spoke at the MIT Bitcoin Expo 2022 about mining pool transaction selection, my miningpool-observer project, and observed extra, missing, and conflicting transactions between my block templates and the blocks mined by pools. I conclude that we can detect large scale transcation censorship by but haven’t seen any concrete evidence for censorship attempts yet.
P2P monitoring
I presented my planned P2P monitoring project to the CoreDev attendees.
Bitcoin Core PR Review Club: #20827
I’ve prepared and moderated a Bitcoin Core PR review club meeting on luke-jr’s PR #20827: During IBD, prune as much as possible until we get close to where we will eventually keep blocks. This is an potential IBD speed-up for pruned nodes.
Bitcoin Core PR Review Club: #23724
I’ve prepared and moderated a Bitcoin Core PR review club meeting on my PR #23724: add systemtap’s sys/sdt.h as depends for GUIX builds with USDT tracepoints. My goal was to get feedback and eventually reach consensus on having the tracepoints for Userspace, Statically Defined Tracing in GUIX, and release builds.
Updates on USDT in Bitcoin Core
I updated about my recent work on Userspace, Statically Defined Tracing (USDT) support for Bitcoin Core, and showed examples. We discussed where debug logging and where USDT makes more sense and security and performance of USDT. We briefly touched on adding automated testing for the tracepoints. A few additional tracepoint ideas were proposed by different developers.
Blog post: Userspace, Statically Defined Tracing support for Bitcoin Core on my blog.
Update on Reorgs on SigNet
I updated about my recent work on reorgs on SigNet and showed a work-in-progress block tree visualization. Approach and reorg parameters were discussed.
Discussion: Reorgs on SigNet - Looking for feedback on approach and parameters on the bitcoin-dev mailing list.
Bitcoin Core PR Review Club: #22006
I’ve prepared and moderated a Bitcoin Core PR review club meeting on my PR #22006 Tracing: first tracepoints and documentation on User-Space, Statically Defined Tracing (USDT). My goal was to familiarize Bitcoin Core contributors with the concept of Userspace, Statically Defined Tracing, and to get review on the first tracepoints, examples, and documentation.
Regulatory conform mining on einundzwanzig Podcast (German)
Dennis Reimann and I chat about regulatory conform mining in the context of my miningpool.observer project.
Podcast (German)BIP42 on einundzwanzig Podcast (German)
Dennis Reimann and I chat about BIP42. We talk about the background of BIP42, Satoshi’s implementation of the subsidy function, the bug in the implementation and the fix which enables a finite monetary supply for Bitcoin.
Podcast (German)Interview on einundzwanzig Podcast (German)
Dennis Reimann and I talk about my projects, the Chaincode Labs Residency, and more on the German einundzwanzig Podcast.
Podcast (German)How Bitcoin Core works: LoadMempool() and DumpMempool()
I’ve talked about the LoadMempool()
and DumpMempool()
functions of Bitcoin Core at the 2019 Chaincode Labs Summer Residency seminar.
These functions are used to write and read the mempool.dat
file.
BIP-42: A finite monetary supply for Bitcoin
I’ve talked about BIP-42 at the 2019 Chaincode Labs Summer Residency seminar. With BIP-42 a fix for a bug in the block subsidy calculation of Bitcoin Core is described. This BIP is meant as an april-fools joke and will only become relevant in 2262.
Slides (Google Slides) Slides (PDF)BIP-125: Opt-in Full Replace-by-Fee Signaling
I’ve presented about BIP-125 Replace-by-Fee at the 2019 Chaincode Labs Summer Residency seminar. This talk was about the motivation, the history, other proposals and the specification of BIP-125 Replace-by-Fee.
Slides (Google Slides) Slides (PDF)Building mempool.observer - mempool stats and visualizations
I’ve presented my mempool.observer project at the 93rd NYC BitDevs Socratic Seminar. This included past challenges, current todo’s and future ideas as well as a demo of the site.
Slides (PDF)