Unnamed repository; edit this file 'description' to name the repository.
 help / color / mirror / Atom feed
From: Ekrem BAL <mail.ekrembal@gmail.com>
To: Bitcoin Development Mailing List <bitcoindev@googlegroups.com>
Subject: [bitcoindev] Re: Knowledge Gathering: SPV Proof Applications In the Wild and Proposed
Date: Thu, 14 May 2026 12:09:03 -0700 (PDT)	[thread overview]
Message-ID: <17f62129-3f3e-4624-ac12-2c3ede886735n@googlegroups.com> (raw)
In-Reply-To: <a3049fd5-e001-4d3a-9c99-d5629f47dfd8n@googlegroups.com>


[-- Attachment #1.1: Type: text/plain, Size: 2598 bytes --]

Hi Jeremy,

For Citrea/Clementine, we currently use SPV-style proofs in two main places.

First, on the Citrea side, the Bridge system contract uses Bitcoin 
transaction inclusion proofs to accept peg-ins/deposits. See:

<https://github.com/chainwayxyz/citrea/blob/487daa67fc54feb789b618a0ca2be1cc2f09b198/crates/evm/src/evm/system_contracts/src/Bridge.sol#L196>

The contract checks inclusion through Citrea's Bitcoin light client 
contract. More details here:

<https://docs.citrea.xyz/developer-documentation/system-contracts/bitcoin-light-client>

Second, in the Clementine Bridge proof, we use SPV proofs for verifying 
operator payout transactions. If an operator is challenged, the operator 
proves that there exists a payout transaction paying the withdrawal. See:

<https://github.com/chainwayxyz/clementine/blob/b711e92ef2725e8b3cdaacc2683583f11b5aec28/circuits-lib/src/bridge_circuit/spv.rs>

On your question about commitment structures, I think being able to verify 
that a particular coin was not spent in a block might be helpful, as it 
could make creating SNARK proofs for operator honesty easier in some bridge 
designs.

Best,
Ekrem BAL
On Thursday, May 14, 2026 at 10:47:59 AM UTC-4 jeremy wrote:

> Dear Bitcoin Developers,
>
> SPV proofs are an important part of Bitcoin's Design, after all Satoshi 
> thought they were worth including in the whitepaper!
>
> As far as I'm aware, they have somewhat limited usage in the wild, mainly 
> in Electrum and in Layer 2 Bridges, but it is important that they work 
> correctly.
>
> I'd like to gather a bit more detailed information on where and how SPV 
> proofs are currently used, as well as any other proposed uses of SPV proofs.
>
> In this Knowledge Gathering, I'd also like to glean a better understanding 
> of what types of commitment structures might work "better" than others for 
> SPV -- e.g., ability to cheaply verify if a block pays a particular 
> address, spends a particular coin, and the exclusion forms (does not pay an 
> address, does not spend a coin) etc, especially in the context of Layer 2 
> Bridging.
>
> Happy International Chihuahua Appreciation Day,
>
> Jeremy
>

-- 
You received this message because you are subscribed to the Google Groups "Bitcoin Development Mailing List" group.
To unsubscribe from this group and stop receiving emails from it, send an email to bitcoindev+unsubscribe@googlegroups.com.
To view this discussion visit https://groups.google.com/d/msgid/bitcoindev/17f62129-3f3e-4624-ac12-2c3ede886735n%40googlegroups.com.

[-- Attachment #1.2: Type: text/html, Size: 3234 bytes --]

      reply	other threads:[~2026-05-14 19:33 UTC|newest]

Thread overview: 2+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2026-05-14 14:46 [bitcoindev] Knowledge Gathering: SPV Proof Applications In the Wild and Proposed jeremy
2026-05-14 19:09 ` Ekrem BAL [this message]

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=17f62129-3f3e-4624-ac12-2c3ede886735n@googlegroups.com \
    --to=mail.ekrembal@gmail.com \
    --cc=bitcoindev@googlegroups.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox