pull down to refresh
my host has access to 8 shared AMD EPYC-Rome (2019) cores, not the newest and fastest, but should be plenty to validate a signet block...
I got some timestamps for a miner mining at Foundry's pool:
https://bnoc.xyz/t/two-block-reorg-at-height-941880/97/20
It indeed seems to be the case that they mined these two blocks just after the competing ones.
localprobelocalprobe
Team:Team:
- b10c – https://github.com/0xb10c
What We Built:What We Built:
If your browser (Firefox does; Chrome/Brave/Edge are ok) leaks that are running a Bitcoin node (mainnet/testnets) on the same machine as your browser, localprobe alerts you about it by showing a privacy alert when you visit a website. Currently, https://b10c.me does (test by running bitcoind -regtest and visiting https://b10c.me). This leak might be used by e.g. advertisers to show you Bitcoin related ads.
Stack:Stack:
plain JS
Submission:Submission:
https://loot.fund/hackathons/bitcoin-exploits-edition/applications/13
Repo:Repo:
https://gist.github.com/0xB10C/4e6b3d8394bb375323e887945091ead5
Next Steps:Next Steps:
Using the same technique, we can actually harm remote Bitcoin nodes by DDoSing them from the browser. I've been working on a demo of this.
@btcpp maybe show this or I can briefly talk about this when the hackathon starts?
I have a few peer-observer / monitoring project ideas for the upcoming hackathon. With peer-observer, we have a real-time feed of Bitcoin Core events. A event is for example a P2P message arriving, a connection bening opened, us periodically fetching an RPC, ...
I run a tool that transforms events from this feed into a websocket with JSON messages for them to be used in the browser. Then, I have a few HTML pages that act as tools consuiming and displaying some of the events. See https://demo.peer.observer/websocket/
For the hackathon, you can use one (or even two) websockets of wss://demo.peer.observer/websocket/hal/ or wss://demo.peer.observer/websocket/len/ for building a nice demo or Proof of Concept of a browser visualization.
A few ideas are (but feel free to be creative and experiment!):
- Build a real time Bitcoin Core debug log viewer: On the
wss://demo.peer.observer/websocket/hal/websocket (not onlen) we are sending Bitcoin Core debug logs as JSON messages. Displaying this in the browser in real-time could be cool. Addtionally, filtering (i.e. grep) or highligthing certain messages would be cool. I think building this should be fairly simple. - A Bitcoin Core orphanage visualization: Bitcoin Core keeps something called an oprhange for transactions we don't know a parent for. There's a bit more information on it in https://github.com/bitcoin-core/bitcoin-devwiki/wiki/%5BP2P%5D-known-TxOrphanage-problems with a few links and context. Having a visualization of the orphanage in real-time in the browser would be nice. peer-observer fetches the
getorphantxnRPC every 10s and sends it as JSON message via websocket. I've started working on a PoC in the past, but the orphanage has changed a bit since then: https://github.com/bitcoin/bitcoin/pull/30793#issuecomment-2379684081 - so you probably need to adapt this a bit. This is a bit harder than 1., since you need to learn about Bitcoin Core internals.
- Be creative and explore the websockets and come of with something new and cool!
If you need help, feel free to come up to me and ask for help!
Also, have a look at the existing tools and their source code:
I'm giving a talk about a bug from 2023 in Bitcoin Core that had a noticable effect on the whole network at 11:15am.
You can find my slides on https://b10c.me/talks/028-btc++exploits/ and a blog post about the bug on https://b10c.me/observations/15-inv-to-send-queue/. The Bitcoin Core disclosure is on https://bitcoincore.org/en/2024/10/08/disclose-large-inv-to-send/.
you mean something like https://fork.observer?
Linking another post from 2023 where I2P had problems. This time it seems to be something else: #172367
It's perfect for this. You know exactly what's running on the hosts and you can scale it up easily by running the same (or similar) configuration on a different host.
See https://github.com/0xb10c/peer-observer-infra-demo and https://github.com/0xb10c/peer-observer-infra-library
Just saw this now. Feel free to ping me (you'll find contact info on b10c.me) if you're still interested @spiderman
This is detailed on https://delvingbitcoin.org/t/great-consensus-cleanup-revival/710#p-1996-worst-case-block-validation-time-5