Replies: 3 comments 2 replies
-
|
FWIW I don't think that discussion has all that much relevance for Braidpool though people may find it interesting. Using a local getblocktemplate (on localhost) and not providing the ability to filter ordinals/inscriptions/addresses) is the answer to avoiding regulatory capture and censorship. It's the SV2 plan to outsource templates that could lead to regulatory capture by having "compliant" template providers external to the miner. This will result in less decentralization and I don't think their argument about there being lots of template providers to choose from works. No one wants this legally risky responsibility and it's likely to collapse into only one global template provider IMHO. I have never proposed that Braidpool should outsource templates in this way. The template will be constructed locally by each miner either by braidpool-node or bitcoind. If we do that this isn't a concern. One implication though is that I don't think the Braidpool UI should offer any kind of tx filtering at all. If we make filtering an option, everyone will do it out of an abundance of legal caution, to the detriment of the network. |
Beta Was this translation helpful? Give feedback.
-
Sure, I'm not advocating for that.
The second option on this phrase is the main issue I'm trying to point out. By having Sure, we could simply assume the miner would run both Perhaps the wording on my original message was a bit confusing. In summary, what I'm saying is: each |
Beta Was this translation helpful? Give feedback.
-
|
I wanted to comment on this in hopes that this is kept in mind while designing this project. 1st, my high-level view is this software would replace P2Pool. To that end, I expect this will get forked for child UXTO chains. I'm personally involved in 2 UXTO networks in Golang and JS atm. I would like to see the software have design choices to adapt to other UXTO/BTC-sibling chains easily. Many have a BTC-compact RPC API. But some also don't. This effort is a possible solution to a broader problem with UXTO mining centralization. If there is 0 interest in enabling this to be adaptable (including different hash algo's), then it will just mean intentionally making it harder for the wider community. I just thought I would bring this up, given some of the technical discussion around P2P networks and mempools. Kudos. |
Beta Was this translation helpful? Give feedback.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
-
We recently merged #54, where we imbue
braidpool-nodewith the ability to listen for new blocks via ZMQ and fetch new templates viagetblocktemplateRPC.This design is taking Braidpool's architecture in a direction where
braidpool-nodeis essentially a separate entity tobitcoindand relies on it as a Template Provider. Beforebraidpool-nodeis ossified with this design, it's important to discuss its potentially negative consequences.As it was discussed by @mcelrath and @TheBlueMatt on the
#template-distributionchannel of SV2 Discord (perhaps not 100%, but with some degree of agreement), Template Providers are inevitably bound to become a target for legal attack vectors coming from Nation-States trying to impose censorship and compliance (e.g.: OFAC).One alternative could be to design
braidpool-nodesuch that it taps into the mempool itself. It would requirebraidpool-nodeto join the p2p communication with otherbitcoindnodes and participate in the tx gossip like a regular node.(to clarify: I'm not arguing to literally re-write
braidpool-nodeas C++ code, I'm sure this could be achieved with Rust crates)In practice, it would be the same as if
braidpool-nodeandbitcoindwere always running on the samelocalhost. But there wouldn't be any option to do this differently (e.g.:braidpool-nodeandbitcoindon separate machines), because the code simply wouldn't allow for that configuration. The only way for a pure/unmodifiedbraidpool-nodeto create a template would be to pick transactions straight from the mempool, without any middleman whatsoever.I do wonder if this design wouldn't make whoever is running
braidpool-nodevulnerable to regulatory capture, but I'm not a lawyer so I'm not equipped to answer this question.Beta Was this translation helpful? Give feedback.
All reactions