LearnBitcoin

Bitcoin Dev Archive 2026

Fly Client Proposal

9 messages, 29 Apr to 21 May 2026. Started by Zac Mitton.

Zac Mitton (3), Nuh.dev (3), Tom Harding (2), Super Testnet

Permalink Original thread on gnusha.org

Zac Mitton permalink original

Hi, Ive been looking into FlyClient first described here <https://www.youtube.com/watch?v=BPNs9EVxWrA&t=8386s>. I don't see any BIPs, or previous discussion in this forum about it either.

On bitcoin It could allow a light-client to verify the entire work of the heaviest chain with a single ~100KB proof.

It can theoretically be done as a soft-fork by injecting a single hash into the coinbase tx (similar to how segwit is committed to).

What do you guy's think?

Super Testnet in reply to Zac Mitton permalink original

Seems pretty cool. It looks like it has similar trust assumptions as a standard light client: the light client trusts the merkle root once it is buried under several blocks of proof of work, believing that an attacker is unlikely to do all that work just to fool a light client (especially when they could have been actually mining bitcoin with all that hashrate). A nice property is that, to get started, a fly client does not have to download a variable number of block headers (namely, all of them, however many there are), only a constant number of block headers, and it's a pretty small total number. That property seems to make fly clients more efficient than standard light clients.

On Wednesday, April 29, 2026 at 5:03:36 PM UTC-4 Zac Mitton wrote:

Quoted text (12 lines)
> Hi, Ive been looking into FlyClient first described here
> <https://www.youtube.com/watch?v=BPNs9EVxWrA&t=8386s>. I don't see any
> BIPs, or previous discussion in this forum about it either.
>
> On bitcoin It could allow a light-client to verify the entire work of the
> heaviest chain with a single ~100KB proof.
>
> It can theoretically be done as a soft-fork by injecting a single hash
> into the coinbase tx (similar to how segwit is committed to).
>
> What do you guy's think?
>
Nuh.dev in reply to Super Testnet permalink original

FlyClient is very useful compared to SPV client, especially for blockchains with much more headers per day than Bitcoin. But fortunately, this is one of the few soft forks that we don't actually need, because we can substitute with a STARK proof as you can see here; https://github.com/starkware-bitcoin/raito ... so any energy for gathering consensus for a soft fork, before Bitcoin ossifies forever, is better spent elsewhere.

On Thursday, 30 April 2026 at 21:55:05 UTC+3 Super Testnet wrote:

Quoted text (26 lines)
> Seems pretty cool. It looks like it has similar trust assumptions as a
> standard light client: the light client trusts the merkle root once it is
> buried under several blocks of proof of work, believing that an attacker is
> unlikely to do all that work just to fool a light client (especially when
> they could have been actually mining bitcoin with all that hashrate). A
> nice property is that, to get started, a fly client does not have to
> download a variable number of block headers (namely, all of them, however
> many there are), only a constant number of block headers, and it's a pretty
> small total number. That property seems to make fly clients more efficient
> than standard light clients.
>
> On Wednesday, April 29, 2026 at 5:03:36 PM UTC-4 Zac Mitton wrote:
>
>> Hi, Ive been looking into FlyClient first described here
>> <https://www.youtube.com/watch?v=BPNs9EVxWrA&t=8386s>. I don't see any
>> BIPs, or previous discussion in this forum about it either.
>>
>> On bitcoin It could allow a light-client to verify the entire work of the
>> heaviest chain with a single ~100KB proof.
>>
>> It can theoretically be done as a soft-fork by injecting a single hash
>> into the coinbase tx (similar to how segwit is committed to).
>>
>> What do you guy's think?
>>
>
Zac Mitton in reply to Nuh.dev permalink original

It makes sense that a STARK proof can do similar, however the 2 benefits to this would be that (1) This doesnt require (any) more strict assumptions which I'm assuming STARKS do, and (2) just the sheer simplicity of its design. Sorry to bring up a touchy topic but is the STARK version quantum safe, for instance? The flyclient version requires no new cryptographic assumptions beyond the "honest mining majority" used currently.

Admittedly my dumb brain understands it better. I assume it would get grouped into some larger softfork rollout...

On Friday, May 1, 2026 at 5:03:47 AM UTC-4 Nuh.dev wrote:

Quoted text (36 lines)
> FlyClient is very useful compared to SPV client, especially for
> blockchains with much more headers per day than Bitcoin. But fortunately,
> this is one of the few soft forks that we don't actually need, because we
> can substitute with a STARK proof as you can see here;
> https://github.com/starkware-bitcoin/raito ... so any energy for
> gathering consensus for a soft fork, before Bitcoin ossifies forever, is
> better spent elsewhere.
>
> On Thursday, 30 April 2026 at 21:55:05 UTC+3 Super Testnet wrote:
>
>> Seems pretty cool. It looks like it has similar trust assumptions as a
>> standard light client: the light client trusts the merkle root once it is
>> buried under several blocks of proof of work, believing that an attacker is
>> unlikely to do all that work just to fool a light client (especially when
>> they could have been actually mining bitcoin with all that hashrate). A
>> nice property is that, to get started, a fly client does not have to
>> download a variable number of block headers (namely, all of them, however
>> many there are), only a constant number of block headers, and it's a pretty
>> small total number. That property seems to make fly clients more efficient
>> than standard light clients.
>>
>> On Wednesday, April 29, 2026 at 5:03:36 PM UTC-4 Zac Mitton wrote:
>>
>>> Hi, Ive been looking into FlyClient first described here
>>> <https://www.youtube.com/watch?v=BPNs9EVxWrA&t=8386s>. I don't see any
>>> BIPs, or previous discussion in this forum about it either.
>>>
>>> On bitcoin It could allow a light-client to verify the entire work of
>>> the heaviest chain with a single ~100KB proof.
>>>
>>> It can theoretically be done as a soft-fork by injecting a single hash
>>> into the coinbase tx (similar to how segwit is committed to).
>>>
>>> What do you guy's think?
>>>
>>
Nuh.dev in reply to Zac Mitton permalink original

Yes, STARK proofs are post quantum secure, as they don't require much more than polynomials and hash functions, and they don't have trust assumptions like SNARKs, which is why they are called scalable Transparent arguments of knowledge.

STARKs are not too difficult to vaguely understand, and in fact they aren't too different from FlyClient, both start from an interactive proof, then use Fiat-Shamir heuristic too convert it into a non-interactive proof, the major difference is that FlyClient does that over a specific function (sum of Work), whereas STARK needs to prove arbitrary functions, usually a CPU instruction set.

Finally, there will most likely not be any future soft forks, not even string concatenation in Script, so we are lucky this one doesn't need consensus change.

On Saturday, 2 May 2026 at 23:07:22 UTC+3 Zac Mitton wrote:

Quoted text (48 lines)
> It makes sense that a STARK proof can do similar, however the 2 benefits
> to this would be that (1) This doesnt require (any) more strict assumptions
> which I'm assuming STARKS do, and (2) just the sheer simplicity of its
> design. Sorry to bring up a touchy topic but is the STARK version quantum
> safe, for instance? The flyclient version requires no new cryptographic
> assumptions beyond the "honest mining majority" used currently.
>
> Admittedly my dumb brain understands it better. I assume it would get
> grouped into some larger softfork rollout...
>
> On Friday, May 1, 2026 at 5:03:47 AM UTC-4 Nuh.dev wrote:
>
>> FlyClient is very useful compared to SPV client, especially for
>> blockchains with much more headers per day than Bitcoin. But fortunately,
>> this is one of the few soft forks that we don't actually need, because we
>> can substitute with a STARK proof as you can see here;
>> https://github.com/starkware-bitcoin/raito ... so any energy for
>> gathering consensus for a soft fork, before Bitcoin ossifies forever, is
>> better spent elsewhere.
>>
>> On Thursday, 30 April 2026 at 21:55:05 UTC+3 Super Testnet wrote:
>>
>>> Seems pretty cool. It looks like it has similar trust assumptions as a
>>> standard light client: the light client trusts the merkle root once it is
>>> buried under several blocks of proof of work, believing that an attacker is
>>> unlikely to do all that work just to fool a light client (especially when
>>> they could have been actually mining bitcoin with all that hashrate). A
>>> nice property is that, to get started, a fly client does not have to
>>> download a variable number of block headers (namely, all of them, however
>>> many there are), only a constant number of block headers, and it's a pretty
>>> small total number. That property seems to make fly clients more efficient
>>> than standard light clients.
>>>
>>> On Wednesday, April 29, 2026 at 5:03:36 PM UTC-4 Zac Mitton wrote:
>>>
>>>> Hi, Ive been looking into FlyClient first described here
>>>> <https://www.youtube.com/watch?v=BPNs9EVxWrA&t=8386s>. I don't see any
>>>> BIPs, or previous discussion in this forum about it either.
>>>>
>>>> On bitcoin It could allow a light-client to verify the entire work of
>>>> the heaviest chain with a single ~100KB proof.
>>>>
>>>> It can theoretically be done as a soft-fork by injecting a single hash
>>>> into the coinbase tx (similar to how segwit is committed to).
>>>>
>>>> What do you guy's think?
>>>>
>>>
Tom Harding in reply to Zac Mitton permalink original

In the linked presentation by Benedict Bünz, it's worth listening to the first audience question/answer. Questioner is spot on that an SPV client polling the network to gain probabilistic confidence of unspentness could easily subsume the task of gaining input inclusion proofs from the network, with no forking change necessary.

On Wednesday, April 29, 2026 at 2:03:36 PM UTC-7 Zac Mitton wrote:

Quoted text (12 lines)
> Hi, Ive been looking into FlyClient first described here
> <https://www.youtube.com/watch?v=BPNs9EVxWrA&t=8386s>. I don't see any
> BIPs, or previous discussion in this forum about it either.
>
> On bitcoin It could allow a light-client to verify the entire work of the
> heaviest chain with a single ~100KB proof.
>
> It can theoretically be done as a soft-fork by injecting a single hash
> into the coinbase tx (similar to how segwit is committed to).
>
> What do you guy's think?
>
Tom Harding in reply to Tom Harding permalink original

Zac,

That's probably because the question, and my post, are off-topic.  They are not about FlyClient, which is not interesting to me because bitcoin's header chain is tiny.

Instead they touch on two techniques which would improve on most historical implementations of SPV clients by adding protocol support for them.

Sorry for the distraction.

Tom

On 5/3/26 12:26, Zac Mitton wrote:

Quoted text (31 lines)
> Tom I can’t seem to grok the question or your explanation of it. Could
> you spell it out for us in detail?
>
>
> Thanks, Zac
>
> On Sun, May 3, 2026 at 12:58 PM Tom Harding <tomh@thinlink•com> wrote:
>
>     In the linked presentation by Benedict Bünz, it's worth listening
>     to the first audience question/answer. Questioner is spot on that
>     an SPV client polling the network to gain probabilistic confidence
>     of unspentness could easily subsume the task of gaining input
>     inclusion proofs from the network, with no forking change necessary.
>
>     On Wednesday, April 29, 2026 at 2:03:36 PM UTC-7 Zac Mitton wrote:
>
>         Hi, Ive been looking into FlyClient first described here
>         <https://www.youtube.com/watch?v=BPNs9EVxWrA&t=8386s>. I don't
>         see any BIPs, or previous discussion in this forum about it
>         either.
>
>         On bitcoin It could allow a light-client to verify the entire
>         work of the heaviest chain with a single ~100KB proof.
>
>         It can theoretically be done as a soft-fork by injecting a
>         single hash into the coinbase tx (similar to how segwit is
>         committed to).
>
>         What do you guy's think?
>
>
Zac Mitton in reply to Tom Harding permalink original

Ok, Let's keep this thread about Flyclient on Bitcoin. The challenges related to actually getting a soft-fork into bitcoin are best discussed elsewhere.

If anyone has information related to progress on this, or implementation ideas please help by posting here or DMing me. I will try to aggregate.

On Mon, May 4, 2026 at 12:26 PM Tom Harding <tomh@thinlink•com> wrote:

Quoted text (47 lines)
> Zac,
>
> That's probably because the question, and my post, are off-topic.  They
> are not about FlyClient, which is not interesting to me because bitcoin's
> header chain is tiny.
>
> Instead they touch on two techniques which would improve on most
> historical implementations of SPV clients by adding protocol support for
> them.
>
> Sorry for the distraction.
>
> Tom
>
>
> On 5/3/26 12:26, Zac Mitton wrote:
>
> Tom I can’t seem to grok the question or your explanation of it. Could you
> spell it out for us in detail?
>
>
> Thanks, Zac
>
> On Sun, May 3, 2026 at 12:58 PM Tom Harding <tomh@thinlink•com> wrote:
>
>> In the linked presentation by Benedict Bünz, it's worth listening to the
>> first audience question/answer.  Questioner is spot on that an SPV client
>> polling the network to gain probabilistic confidence of unspentness could
>> easily subsume the task of gaining input inclusion proofs from the network,
>> with no forking change necessary.
>>
>> On Wednesday, April 29, 2026 at 2:03:36 PM UTC-7 Zac Mitton wrote:
>>
>>> Hi, Ive been looking into FlyClient first described here
>>> <https://www.youtube.com/watch?v=BPNs9EVxWrA&t=8386s>. I don't see any
>>> BIPs, or previous discussion in this forum about it either.
>>>
>>> On bitcoin It could allow a light-client to verify the entire work of
>>> the heaviest chain with a single ~100KB proof.
>>>
>>> It can theoretically be done as a soft-fork by injecting a single hash
>>> into the coinbase tx (similar to how segwit is committed to).
>>>
>>> What do you guy's think?
>>>
>>
>>
Nuh.dev in reply to Zac Mitton permalink original

To make a counter argument to mine, and assuming Bitcoin soft forks are not impossible, FlyClient has an advantage that is impossible to replicate with ZK proofs; they are simple enough that one can reason about and implement from scratch similar to implementing an SPV, whereas formally proving ZK Starks end to end is very unlikely to happen any time soon, and reviewing all of its complexity is impossible for any single mortal.

The same argument applies for validating Sidechains by the way, you can use a ZK proof, but I am increasingly thinking that a FlyClient verifier native in Bitcoin as an opcode, is orders of magnitude safer and easier to implement.

So I encourage you and everyone to not give up on FlyClient in Bitcoin yet.

On Tuesday, 19 May 2026 at 00:07:54 UTC+3 Zac Mitton wrote:

Quoted text (57 lines)
> Ok, Let's keep this thread about Flyclient on Bitcoin. The challenges
> related to actually getting a soft-fork into bitcoin are best discussed
> elsewhere.
>
> If anyone has information related to progress on this,
> or implementation ideas please help by posting here or DMing me. I will try
> to aggregate.
>
> On Mon, May 4, 2026 at 12:26 PM Tom Harding <to...@thinlink•com> wrote:
>
>> Zac,
>>
>> That's probably because the question, and my post, are off-topic.  They
>> are not about FlyClient, which is not interesting to me because bitcoin's
>> header chain is tiny.
>>
>> Instead they touch on two techniques which would improve on most
>> historical implementations of SPV clients by adding protocol support for
>> them.
>>
>> Sorry for the distraction.
>>
>> Tom
>>
>>
>> On 5/3/26 12:26, Zac Mitton wrote:
>>
>> Tom I can’t seem to grok the question or your explanation of it. Could
>> you spell it out for us in detail?
>>
>>
>> Thanks, Zac
>>
>> On Sun, May 3, 2026 at 12:58 PM Tom Harding <to...@thinlink•com> wrote:
>>
>>> In the linked presentation by Benedict Bünz, it's worth listening to the
>>> first audience question/answer.  Questioner is spot on that an SPV client
>>> polling the network to gain probabilistic confidence of unspentness could
>>> easily subsume the task of gaining input inclusion proofs from the network,
>>> with no forking change necessary.
>>>
>>> On Wednesday, April 29, 2026 at 2:03:36 PM UTC-7 Zac Mitton wrote:
>>>
>>>> Hi, Ive been looking into FlyClient first described here
>>>> <https://www.youtube.com/watch?v=BPNs9EVxWrA&t=8386s>. I don't see any
>>>> BIPs, or previous discussion in this forum about it either.
>>>>
>>>> On bitcoin It could allow a light-client to verify the entire work of
>>>> the heaviest chain with a single ~100KB proof.
>>>>
>>>> It can theoretically be done as a soft-fork by injecting a single hash
>>>> into the coinbase tx (similar to how segwit is committed to).
>>>>
>>>> What do you guy's think?
>>>>
>>>
>>>