In this episode, B10C discusses his work in the Bitcoin ecosystem, focusing on the importance of censorship resistance, the role of mining pools, and the implications of OFAC sanctions on Bitcoin transactions. He introduces the Peer Observer project aimed at monitoring the Bitcoin network for anomalies and attacks, and highlights the need for a collaborative approach to Bitcoin network operations through the Bitcoin Network Operations Collective.

Takeaways:

🔸B10C has been working on Bitcoin open source projects since 2021.

🔸Research on mining pools reveals they may filter out certain transactions.

🔸Censorship resistance is a key feature of Bitcoin that needs monitoring.

🔸The Bitcoin network lacks a professional monitoring system compared to large companies.

🔸The Peer Observer project aims to detect attacks on Bitcoin nodes.

🔸Monitoring tools can help identify anomalies in the Bitcoin network.

🔸The Bitcoin Network Operations Collective is a forum for collaboration on network monitoring.

🔸Compact block relay improves block propagation efficiency.

🔸Different mining pools have varying policies on transaction inclusion.

🔸The future of Bitcoin monitoring relies on community collaboration.

Timestamps:

(00:00) – Intro

Links: 

Sponsor:

Stephan Livera links:

Transcript:

Stephan Livera (00:01)
Hi everyone, welcome back to Stephan Livera podcast. Today we’re going to be doing an interesting one on the Bitcoin network and observing what’s happening. So joining me today is ⁓ the famous 0xB10C or I believe now you’ve rebranded to B10C. So welcome to the show B10C.

Right, yeah, yeah. And I was looking at this up as well because does the 0x in that like context imply hexadecimal and now you’re just kind of just for simplicity you just you’re just known as B10C?

Yeah, okay. Well, let’s start just for listeners who have no idea who you are. Obviously, you’re known as a NIM in the Bitcoin developer world and let’s say in maybe some of the Bitcoin mining circles as well. ⁓ Can you just, I mean, obviously only what you’re willing to share. Tell us a little bit about yourself. What do you see as your role in this Bitcoin ecosystem?

Excellent.

Fantastic.

Excellent. So let’s get into that. ⁓ Now, I think one of the earlier things that perhaps you became known for was, as you mentioned, ⁓ the OFAC thing. So for listeners who aren’t aware, this relates to what’s called sanctions laws and basically governments around the world have sanctions.

Regimes and they might have a list so I think in the u.s. It’s called the SDN or something like sanction designated whatever anyway The point is they put some Bitcoin addresses on there and as I’m understanding this is some of your early work where you were trying to under like Point out are there mining pools who are not including transactions that are sent to the addresses listed in this sanctions list so can you just Elaborate a little bit on some of your research there

I see. Yeah, and maybe there’s kind of just special cases where they’ll do this kind of thing where, you know, I think there’s an infamous case where I think it was the F2 pool founder, I think, actually at the time, I think it was Luke Dasher was asking for like a donation. And I think he paid him out of a Coinbase output, right? Like it was like a baller move that he had paid out of his own pool kind of thing. ⁓

There you go. Yeah, so I guess we should just touch on, just sort of finish the censorship discussion as well. Because I mean, maybe even that term might be the wrong, I don’t know, maybe it’s not the correct term to apply, but you know, right.

Yeah, well they are quote-unquote black market hash rate or black market pool, let’s say. Yeah, okay.

Not censorship. Yeah. And it’s interesting because, know, a few years ago, and I believe you were around at this time, right, it was maybe three or four years ago, Mara had this thing where like, it would say like, you know, OFAC compliance, something like this. And then basically, a lot of people were kind of social media campaigning them to like stop doing that, because that was seen, at least at that time, people weren’t using the term filtering, they’ll say, no, but you’re censoring and like the whole point of Bitcoin to be censorship resistant and someone

Do have any comment on that? You were around then, right? Yeah.

so it didn’t even matter at that time.

Yeah, interesting.

Yeah. And that that does track with at least historically. Now, again, I’m talking in tendencies and things like this, but it’s definitely a thing that like hacked coins or, you know, coins that were stolen, you know, whatever, rumored to be by Lazarus group or whatever. It’s like it’s been a thing that

you know, some big exchange would get hacked and those coins just wouldn’t move. They would just like sit there for ages. Now, of course, other coins, they go through mixers and whatever. And there’s other, you know, techniques that they’re applying, or maybe they’re using mules to try to get out through KYC exchanges and things like this. But it would say, yeah, that’s at least it that tracks at least this idea that there are a bunch of these coins that just sit there that don’t move. So be it.

Mm.

Interesting. Okay. Yeah, I mean, I, you know better than me. I’m just saying colloquially from what you’ve sort of heard. ⁓ Okay, and then I’m curious in your research, did you see a difference in the treatment between let’s say a Chinese mining pool and an American mining pool or a non US non China mining pool? did you notice differences in their treatment of this of the so called sanctioned transactions?

Okay. Sure. Yeah. I guess because the argument might also go well, just because it’s sanctioned by the US doesn’t mean some other country cares. And I guess the general Bitcoin argument would be the whole point is it’s censorship resistant. And so just because one particular mining pool doesn’t want to take that transaction.

or included in their block, someone else will. And the idea is that the person who is hypothetically trying to get their transaction through, they can just keep increasing the fee until such time that there is a mining pool who’s willing to take that. Now, again, not defending, now to be clear for listeners, obviously not defending actual criminals, terrorists, anything like this, but just talking, let’s say more academically about the network under the condition of people trying to make it censorship resistant.

I Yeah, and I guess so to your knowledge, then it’s only the US that has Bitcoin sanctioned addresses. Now I know other I believe the EU does have sanctions like in Fiat, Fiat sanctions, and other countries have their own sanctions regimes. But it seems that it’s only the US that explicitly adds these Bitcoin addresses to their SDN list. Is that correct? Is that your understanding? Yeah. Yeah.

Great, okay. ⁓ And then I guess the other big one you mentioned just earlier was this concept of multiple mining pools using the same block template. So do you mind just elaborating a little bit on that? And I guess what we’re getting to here is this kind of ant pool and friends kind of argument. So what’s your thought there?

Sorry, I was on mute. Just adding one other point to this, and I’m sure you’re aware of this, is it’s not just this stratum work component of it. I think some people were doing chain analysis and basically looking at where the payouts were going.

At least, know, couple years ago, this is true, I don’t know if it still is, that a lot of the mining pool payouts were going to the same, I believe some entity called Kobo in China, because apparently they were like an OTC desk. So then it was sort of like, not only was the stratum aspect of it ⁓ being a proxy pool, the payouts were also going the same place.

Okay, now this does throw into question around all the arguments around, you know, Bitcoin mining decentralization. Of course, we want it to be decentralized. I think most people can agree with that. But maybe where people might disagree is where they might say, well, pool entry is still relatively open or the fact that these they might say, hang on, these pools are just an intermediary, the underlying

Miners or hashes if you want to use that different parlance those hashes can just point their hash rate somewhere else that if they see something wrong now to be clear and to be fair to you some of your work might help them understand if there is some kind of filtering happening at the pool level but theoretically those hashes can You know with without a huge amount of effort or though even that’s a debated point maybe so those hashes can point their hash rate to some other pool and in that way

that the argument could be, well, it’s still decentralized in that sense. ⁓ What’s your thought on that?

Right, and that’s again back to Bitmain and so on. Yeah.

Yeah, I see. yeah, so because there’s different ways you can slice and dice that aspect as you as you mentioned, it’s mainly bitmain and I think the micro BT the creators of what’s minor. But then I know there are some competitors, you know, competition, there is some competition there, like is it proto the one from Dorsey’s block? Yeah. And maybe some other some other smaller ones. I know there’s um, what’s it called? Aura Dean or a dying. I don’t know how to pronounce it. But I believe they have an SV two.

compatible or it’s like built into the mining machine.

Gotcha, okay. And so, yeah, I guess then, yeah, do you, I guess, do you have any further thought there or any point you wanna make there about mining, actually that’s the other point I was gonna ask you, around FPPS and PPLNS or PPLNS style payout models? So this has been another, let’s say, big debate and talking point, which is that,

FPS FPS is sort of like an insurance product for some of these ⁓ mining pools or so and so you need a large balance sheet because you are like fronting the capital you’re paying them out before you’ve actually received the incoming of course there have been arguments there from ⁓ Some of the other pool operators saying that’s you know Maybe that’s the wrong thing or that’s not the good thing for deep Bitcoin decentralization obviously here

⁓ like Ocean is one example with their datum and then another it would be the demand pool with their they have full SV2 and so they would be probably in the camp of they see them they arguably see themselves as going against FPPS. ⁓ Do you have any comment on the payout structure for mining pools?

Yeah. Okay, understood. And then while we’re here, I’m not sure how close you are with this, but Bitcoin Core V30 has this new thing. think it’s called, I was just looking it up. It’s called IPC, Inter-process Communication Mining Interface. And the idea is it was a way for SV2 to connect with Bitcoin Core. I’m curious if any of your work touches in this area or not really.

I see.

I see. Yeah. And as I understand the SV2 guys, Stratov2 guys see that as, you know, they’ve been trying to get something like this into Core. And I think this was their way of making it, ⁓ you know, because their goal obviously would be to have ecosystem support, right? Like the pools to support it, the mining machines to support it and Bitcoin Core to support it. And of course, people to demand it themselves, like to want to use it. And so I guess this is one step to sort of in that direction. ⁓

And so they’re also trying to show various things about SV two being better things like okay, the communication layer is encrypted and obviously the block template creation can be decentralized. That’s probably the big headline thing but there are these other benefits that some of those guys are talking about.

I see. And let’s now talk a bit, you were touching on it there, but let’s talk about your broader project, which is this peer observer project. I see this is one of the newer ones that you are working on. Can you give us an overview? What is the peer observer project?

Yeah. And as I recall from the earlier days, there used to be this kind of network alert key thing. I don’t know the detail of it now. And I think that’s now since been retired, to be clear, because that is also kind of a centralization vector. So at the same time, it’s like, this thing has grown so much compared to early days of Bitcoin. You want a way for people to sort of obviously track and stay up to date on what’s going on.

And then also, if the fix is needed, how do you get the word out, right?

like a spy node kind of thing.

Right.

Interesting. And as you mentioned, in your I believe is in your blog, you mentioned that you run them with different configurations, right? Some of them are on Tor and I2P and CJ DNS. And one is got like, ⁓ you said Bloom filters known to be DOSable. Can you talk to talk talk us through some of the different configurations that you have ⁓ on this?

I see, yeah. so are there any overall insights that you have to share from what you’ve done so far on the peer observer project?

see.

So what other non-P2P things that you think need to be monitored? Or what else would be interesting to monitor?

Okay, yeah, yeah.

Like a fork monitor thing, yeah.

Yeah. In terms of costs, what does it cost to do this? Like, how do you like is it does it a big cost to do this? Or is it a cheap cost?

Right, as in to analyze the logs and things like this.

Understood, okay. So talk to us a little bit about how you’re getting that, like, what kinds of data are we talking about here from, now, let’s say, in the world of P2P, like, are we talking things like the INV message and, you know, like, ⁓ kind of that version negotiation between nodes, like how peers find each other, this kind of thing? This is the realm that we’re talking about, right?

Okay, so just to make this, guess, practical for listeners, and especially people who aren’t, let’s say, as deep into the weeds, let’s talk about what is the expected behavior for a Bitcoin node and what would be unexpected behavior or typically like spy node behavior or like aggressively trying to connect. So maybe you could talk us through like what is like a standard expected node? What are the normal behaviors you should see? First, and then we can talk about what is like a more

malicious or maybe questionable node might do.

Right, you’re reachable, the word is, right?

Right.

Right, kind of like a griefing method sort of thing.

Yeah, as I recall, this is like part of the motivation for like the whole dandelion protocol thing. I don’t think the dandelion thing made it into core, but the idea was, if you had like some super nodes, like all around the world, and you were trying to aggressively aggressively connect to everybody, so you would find out where it first appeared. And then you could sort of triangulate, ⁓ it was very likely it came from this location. And if it is a home IP, then boom, they already are able to figure out

with other information, like they could potentially figure out your address. And that’s also obviously a doxing thing.

Right, this is that exchange. This is a coin based coins. This is Binance coins or whatever. Yeah. Interesting. Yeah. And of course, even now, nowadays in the age of, you know, let’s say when treasury companies come out and announce, we just bought this many coins, like people are trying to like trace on chain to sort of understand, okay, where, where are these coins coming from? What’s their OTC provider? What’s their custodian? There are, let’s say there are things people are trying to figure out by kind of looking at these things in the background kind of under the hood.

So, yeah, guess, yeah, so, so I guess in the, in the realm of expected behaviors, you should see nodes just, you know, syncing up the chain, transact, you know, forwarding transactions and forwarding blocks and receiving transactions where they need to. ⁓ but then in the malicious side of things, let’s say the malicious or spy node might be kind of aggressively connecting to everybody or aggressively like griefing your

network slots or kind of aggressively asking for information even if it doesn’t need it, this kind of thing, right?

Yeah.

Gotcha, yeah, so it’s more just like you have some rough ideas of what attackers have done before, but there’s always something new they could try.

Right, out of the baseline, then okay that’s something I need to research or analyse. Okay, yeah.

Gotcha. I’m curious how that impacts or is impacted by the V2 peer to peer encryption. Because don’t we already have that now as of like a few versions back? So is that, you know, not enough or you see it as like that’s just like some orthogonal thing.

I see, yeah. So while we’re talking about spy nodes and other entities, I know you did a post about this entity you named as Linking Lion. So tell us the story here. Who or what do we know about Linking Lion?

They’re like an ISP for whoever’s doing this.

⁓ I see, yeah. Like a chain analysis or one of these other ones. Elliptic or whatever, yeah.

Yeah, I guess the point is it fits the pattern. It fits the pattern of a chain surveillance company.

Yeah, fascinating. And the other thing, as I’m sure you’re well aware, but just for listeners, it’s known that, you know, in the past, and probably nowadays, a bunch of the public electrum servers might be run by some of these chain surveillance companies too, because that’s another way that they can easily find out, okay, you are coming from this IP address, and you’re asking me about these particular coins, I’m going to assume you control those coins, right? And so that’s like a way for them

for unsuspecting users to dox their coins to the chain surveillance firms. ⁓ And so, yeah.

Right, trying to surveil them back and figure out which of the public Electrum servers are likely to be chain surveillance ones.

Interesting and I guess this is also part of the broader thing of like why you know typical like Bitcoin, you know advocates will say hey run your own Bitcoin node because you get more privacy that way and maybe yeah

Of course, of course. so maybe for that, let’s say that user who is not willing or not able to run their own full Bitcoin node yet, that’s where some of this compact block filter stuff, or maybe in the future, who knows, like maybe this Floresta project is going to be interesting to get more people able to quickly ⁓ do their own validation without doxing to the public Electrum servers and things like this.

Yeah, so let’s talk a little bit about compact block relay because I know this is another area you’ve done some research and some writing on this. ⁓ And this kind of comes into like block propagation. And my understanding here is the general idea is for the decentralization of the network, you want this block propagation to be, you know, want it to be very low latency and ⁓ such that nodes are not having to go out and manually ask for transactions that they can just, you know,

do it on their own. Can you just elaborate and explain this?

57 and 157. Yeah, 158 is it? Yeah.

Yeah.

Okay, yeah, so just let me try to recapitulate in simple terms, just both myself and also for the listeners. So the idea is when you’re running a Bitcoin node, you are also sending receiving transactions that you’re relaying. And the idea is that instead of having to download a full new block, the idea is actually you might already have these transactions that have been relayed to you anyway. So just use that to help reconstruct

or create the block without needing to manually go and request, I’m missing the 99th transaction and the whatever the 27th transaction or whatever. And the idea is by saving by doing this compact block relay, you’re saving that extra round trip of having to go and manually ask for these transactions that you don’t know about. Is that broadly right? Or Yeah.

Yeah. And I guess the point you’re getting at there is mining has become such a brutal competition that mining pools are doing this because they don’t want to lose out because even these small delays in timing can really cost them in their bottom line, right?

I see. And so this is coming now to…

How much of a factor do you think that is? Is it meaningful to the point that small mining pools can no longer start up? I guess what I’m trying to understand from you is, is this just like, quote unquote, nerds arguing about technical minutiae, or how relevant is this to the actual real world business model of mining pools?

Okay. And so, yeah.

Yeah, and I guess just to clarify there, the point also there is that you want, if you’re a big mining pool, obviously you want to have a very low or zero stale rate because the more stale rate you have, that’s just like directly you were contributing or you’re putting hash rate into a block that was not viable, right? And so basically they want to minimize that or avoid it completely, eliminate it if possible.

Right, but get it really low. Gotcha. so can you just, obviously I know you’ve written like blog posts and put up whole diagrams about it, but do you have any broad trends you can share with listeners on, you know, the reconstruction rates and the success rates and the failure rates there?

Okay, do you have a sense of how much of a delay that was causing?

Gotcha. But you would say fair to say that events on the network such as quote unquote, subsat summer, which for listeners, there was like, let’s say a social phenomenon of, okay, so guess I’m just going to quickly explain it and you correct me if I’m getting something wrong here. But for a long time in Bitcoin, it was kind of just assumed that one sat per V byte was the floor. And so this is kind of hard coded into a bunch of wallets and everything. But then I think someone tweeted it or posted about this and it was like a social phenomena that someone said, hey, actually,

There are other peers on the network who are willing to relay transactions below one SAT per V byte. And then this kind of kicked off a trend where a bunch of pools all lowered their min relay TX fee such that it was now below one SAT. And some of them were going to 0.1, some of them went down to 0.1 but back up to 0.5. Anyway, the point is this was like a social phenomenon that then resulted in many, many transactions.

where previously 1SAT was just kind of unquestionably the floor for most things, it was like now there were actually lot of transactions going through at below 1SAT. Have I recapitulated it correctly there or anything you want to add there?

the config, right? So like, just for listeners, this is like if you go into your bitcoin.conf file and you type it, think it’s min relay txv equals, you know, whatever. And if you manually change that, that’s what we’re talking about here. Just so you know, go on.

Yeah. So just to explain that a little, it’s what you’re getting out there is that in the case of full RBF, that was arguably kind of mining led. It wasn’t actually Core who kind of came out and changed the default. It was that, you know, the miners had either realized that maybe Peter Todd or someone was kind of ⁓ pushing that idea of ⁓ full RBF. And then because it was already in practice on the network, then at that time Core

changed the default and yes, at that time, off the top of my head, I think this is like late 2022-ish around there. ⁓ There were a few people in opposition of that. So people like John Cavallo or Sergey from Bitrefill were against that. ⁓ And I think the MoonWallet guys also didn’t like that. But I think it eventually was seen like the network is just going this way. We’re just gonna have to deal with it. Do you wanna add anything there? on the kind of, I guess the context around that?

Yeah. But I guess from an observation and analytical standpoint, did you notice that when it was like, let’s say in the full RBF case or even were you, were you doing some of these stats even back then in the full RBF days?

Okay, so I’m curious then, you say it’s fair to say that when the miners were just doing it on their side, not at the core default level, compact block reconstruction rates were lower and then after core changed to the default they went up? Is that a fair statement?

So bringing it to the current let’s say, oh go on.

Okay. so bringing it to the more recent, let’s say debates or arguments, I guess the subset summer is an interesting one and also the. return limit or default change. ⁓ so what pattern did you notice there on the, let’s say on the subset summer, as I’m recalling, you were saying there was that same dynamic, right? Like mining pools had shifted first block reconstruction rates when.

down in terms of, you know, the good like what we want. And then after it became, or at least after more and more people started changing their own setting, would you say the block reconstruction rate came back up? Or what are you seeing?

Okay.

Interesting. So yeah, so you’re saying it really did make a difference on block propagation and the block re block reconstruction rates. But I guess to your point, yeah.

Yeah. It’s one of multiple factors. Yeah. Okay. Fair, fair enough. ⁓ so I’m just trying to think through the implications. So then now in the, you know, op return case, did you notice anything there or do you think it was just too like not, there weren’t enough op returns that it made a difference?

Interesting.

So yeah, I, okay, yeah, so, and I guess bringing it to some of the kind of arguments online about, even nowadays, people in the knots camp would see that as maybe, maybe they would argue, no, I don’t know, I’m not personally in that camp, but let’s say they’re in the camp of, you know, it’s not a big deal. It’s not changing block propagation by that much.

Whereas maybe if you’re in the core camp or other camps, you might sort of see it like, no, that is important. Is that how you think there’s the different camps are seeing this or how are you seeing this?

Yeah.

Yeah.

Another argument that probably would be interesting to get your perspective on is, think an argument I hear and see in the Notts camp is, oh, it’s a good thing to punish spam miners. And therefore, if their block propagation gets worse, then that’s a good thing from a perspective of stopping spam. What do you, how do you see that? Do you agree or disagree or how are you seeing that?

Interesting. Yeah, because I can imagine people might. Yeah. Yeah. And I, I’ve seen people talk about this concept of a tolerant, tolerant minority, right? This idea that as long as there’s even a few nodes that are more, let’s say liberal or permissive in what they will relay, it’s just going to be very difficult to stop that. And eventually getting to a miner. And if that miner wants to mine it into a block, or the mining pool or the block template creator wants to put it into a block.

then there’s very little that can be done to stop that. But I think maybe where some people would disagree is they would say, no, actually there are certain forms of spam. Maybe the argument is more like you can’t encode ways to actually stop this spam. I don’t know, maybe that’s kind of how, maybe that’s how I’m seeing it. At least I see it as like, yeah, some of these things are spam, but I just don’t think there’s a good way to actually stop this spam. yeah.

I see, yeah. Okay, so let’s… Yeah, I think those are the key points probably to cover there. What about the Bitcoin network operations collective? I know that’s a new idea that you are floating or putting out there. Can you tell us what is the Bitcoin network operations collective? What is this idea?

Excellent. So ⁓ where can people go if they want to find information or contribute in some way with the Bitcoin Network Operations Collective?

Excellent. Well, I think that’s a great spot to leave it there. listeners, ⁓ first off, make sure listeners you share this episode with especially with any Bitcoin, Bitcoin developer friends, go to b10c.me for b10c’s blog. And as you mentioned, bnoc.xyz for the Bitcoin Network Operations Collective. B10c, thank you for joining me today and sharing your insights for the listeners.

Leave a Reply