# Sharing block templates

**URL:** <https://delvingbitcoin.org/t/sharing-block-templates/1906>\
**Category:** Implementation\
**Tags:** mempool, block-relay\
**Created:** [August 5, 2025, 7:08pm UTC](https://delvingbitcoin.org/t/sharing-block-templates/1906 "2025-08-05T19:08:31Z")\
**Posts on this page:** 1\
**Showing post:** 22

<div class="post-metadata">

**Author:** ![ajtowns](https://delvingbitcoin.org/user_avatar/delvingbitcoin.org/ajtowns/32/417_2.png) [@ajtowns](https://delvingbitcoin.org/u/ajtowns)\
**Post date:** [October 9, 2025, 6:43am UTC](https://delvingbitcoin.org/t/sharing-block-templates/1906/22 "2025-10-09T06:43:07Z")

</div>

> [@portlandhodl](#):
>
> I love the idea; but combined with GETDATA this would allow for someone to obtain transactions a miner has deemed to valuable enough even with bad prop to be private.

You don’t need GETDATA here; the messages would just be:

```mermaid
sequenceDiagram
    Pleb->>Miner: GETTEMPLATE
    Miner->>Pleb: TEMPLATE [shortids...]
    Pleb->>Miner: SENDBLOCKTXNS [missing-tx-indexes...]
    Miner->>Pleb: BLOCKTXNS [secret-transactions...]

```

Probably having a bastion node would be the best way to avoid sharing data, something like:

```mermaid
sequenceDiagram
    Pleb<<->>Bastion: normal relay
    Bastion->>Helper: txs, templates and blocks
    Helper->>Miner: txs, templates and blocks
    Miner->>Helper: txs and blocks
    Helper->>Bastion: blocks only
    Pleb<<->>Bastion: normal relay

```

Having a fake node that only relays txs to the miner, but never relays txs from the miner would probably work pretty well; having it pass on templates generated by the bastion node might help ensure CPFP txs and the like don’t get lost, but if the miner and bastion run the same policy and just have slightly different sets of txs, shouldn’t make a huge difference, I think.

Presumably you want something like that now, if you want to prevent early relay of secret transactions that don’t violate standardness rules.

---

_[View the full topic](https://delvingbitcoin.org/t/sharing-block-templates/1906)._
