From e51f0cf9638df4c88ee6e13d73cb0ca6d55ad8b5 Mon Sep 17 00:00:00 2001
From: ARVIN <141419722+Arvin21M@users.noreply.github.com>
Date: Mon, 15 Dec 2025 19:47:28 -0500
Subject: [PATCH 01/11] Add skeleton
---
data/blog/fifteenth-wave-of-bitcoin-grants.mdx | 9 +++++++++
1 file changed, 9 insertions(+)
create mode 100644 data/blog/fifteenth-wave-of-bitcoin-grants.mdx
diff --git a/data/blog/fifteenth-wave-of-bitcoin-grants.mdx b/data/blog/fifteenth-wave-of-bitcoin-grants.mdx
new file mode 100644
index 000000000..3cd6b6de4
--- /dev/null
+++ b/data/blog/fifteenth-wave-of-bitcoin-grants.mdx
@@ -0,0 +1,9 @@
+---
+title: "Fifteenth Wave of Bitcoin Grants"
+date: '2025-12-16'
+tags: ['OpenSats', 'grants', 'bitcoin', 'wave']
+authors: ['default', 'arvin']
+images: ['/static/images/blog/TODO.jpg']
+draft: false
+summary: "OpenSats is funding fifteen more open-source projects advancing the Bitcoin ecosystem."
+---
From 219444866731f8bca4bc8cc1b21c73292f65c92d Mon Sep 17 00:00:00 2001
From: ARVIN <141419722+Arvin21M@users.noreply.github.com>
Date: Mon, 15 Dec 2025 20:01:54 -0500
Subject: [PATCH 02/11] Add first draft
---
.../blog/fifteenth-wave-of-bitcoin-grants.mdx | 283 ++++++++++++++++++
1 file changed, 283 insertions(+)
diff --git a/data/blog/fifteenth-wave-of-bitcoin-grants.mdx b/data/blog/fifteenth-wave-of-bitcoin-grants.mdx
index 3cd6b6de4..a3cb41344 100644
--- a/data/blog/fifteenth-wave-of-bitcoin-grants.mdx
+++ b/data/blog/fifteenth-wave-of-bitcoin-grants.mdx
@@ -7,3 +7,286 @@ images: ['/static/images/blog/TODO.jpg']
draft: false
summary: "OpenSats is funding fifteen more open-source projects advancing the Bitcoin ecosystem."
---
+
+We’re pleased to announce our latest wave of grants, supporting a mix of
+protocol research, core infrastructure maintenance, privacy-preserving wallets,
+and mining decentralization—work that benefits Bitcoin’s resilience as an open
+monetary network.
+
+This wave includes eight first-time grants and seven grant renewals. The
+projects and contributors in this round span different layers of the stack, from
+protocol-level work and Lightning infrastructure to operating systems, wallets,
+mining coordination, and Bitcoin Core maintenance. Together, they reflect a
+shared focus on strengthening Bitcoin as a public good by improving safety,
+decentralization, usability, and the ability for independent contributors to
+participate over the long term.
+
+The eight first-time grants in this wave go to:
+
+- [BlindBit Suite](#blindbit-suite)
+- [Dana Wallet](#dana-wallet)
+- [Daniel Pfeifer](#daniel-pfeifer)
+- [FreeBSD](#freebsd)
+- [Janb84](#janb84)
+- [LaWallet](#lawallet)
+- [LNHANCE](#lnhance)
+- [Mohd Zaid](#mohd-zaid)
+
+The seven grant renewals have been awarded to:
+
+- Bitcoin Dev Kit ([Aug. 2023](blog/bitcoin-and-nostr-grants-august-2023#bdk))
+- Satoshi Nakamoto Institute ([Jul.
+ 2024](/blog/announcing-the-opensats-education-initiative#satoshi-nakamoto-institute))
+- Africa Free Routing ([Sep.
+ 2024](/blog/second-wave-of-education-grants#africa-free-routing))
+- Floresta ([Sep. 2024](/blog/bitcoin-grants-september-2024-7th-wave#floresta))
+- Yes Bitcoin Haiti ([Nov.
+ 2024](/blog/3rd-wave-of-education-grants#yes-bitcoin-haiti))
+- Silent Payments Shepherd ([Aug.
+ 2025](/blog/thirteenth-wave-of-bitcoin-grants#silent-payments-shepherd))
+- Swift Bitcoin ([Jul.
+ 2025](/blog/twelfth-wave-of-bitcoin-grants#swift-bitcoin))
+
+These grants are made possible by donations to our [General
+Fund](/funds/general). If you’d like to help sustain free and open-source work,
+please consider donating:
+
+
+
+
+
+Below, we take a closer look at each grant and the work being supported.
+
+---
+
+### BlindBit Suite
+
+BlindBit Suite is a collection of open-source tools focused on making Silent
+Payments practical and easy to use across different Bitcoin setups. The suite
+includes [BlindBit Oracle], an indexer that serves Silent Payments–specific data
+in a privacy-preserving way, and [BlindBit Desktop], a background wallet that
+continuously scans for incoming Silent Payments. [BlindBit Scan] is a
+lightweight, self-hostable service that keeps wallets up to date by querying
+Oracle. [BlindBit Spend] is a mobile wallet that connects to Scan to spend
+discovered UTXOs without doing on-device scanning. Together with supporting
+libraries, these components aim to reduce the heavy scanning burden that Silent
+Payments impose while preserving strong privacy for users and developers.
+
+With support from this grant, the project will focus on making each component
+stable and ready for regular use. BlindBit Desktop will move through alpha and
+beta testing toward a 1.0.0 release, while BlindBit Oracle will be optimized for
+higher performance and heavier loads, including work on faster sync and improved
+storage backends. BlindBit Scan will be prepared for a 1.0.0 release as a
+private scanner with easy self-hosting via Docker on platforms like [Umbrel] and
+[Start9]. BlindBit Spend will be cleaned up, tested, and prepared for wider
+distribution on Android and iOS. The project will also explore enhancements such
+as DM-style notifications between senders and receivers and GPU-accelerated
+scanning, with the goal of making Silent Payments adoption more accessible for
+both desktop and mobile users relying on remote scanners.
+
+Repositories: [/blindbitbtc]
+License: MIT
+
+[BlindBit Oracle]: https://github.com/setavenger/blindbit-oracle
+[BlindBit Desktop]: https://github.com/setavenger/blindbit-desktop
+[BlindBit Scan]: https://github.com/setavenger/blindbit-scan
+[BlindBit Spend]: https://github.com/setavenger/blindbit-spend
+[/blindbitbtc]: https://github.com/blindbitbtc
+[Umbrel]: https://umbrel.com/
+[Start9]: https://start9.com/
+
+### Dana Wallet
+
+[Dana Wallet] is a mobile bitcoin wallet built for the donation use case and
+designed around [silent payments]. It does not offer receiving on legacy
+addresses, which removes the risk of accidental address reuse and helps protect
+user privacy. Incoming payments are discovered using a [BIP158]-like structure
+with local scanning, meaning no external server learns which addresses belong to
+the user. The wallet is also built around [BIP353] “email-like” payment
+identifiers, replacing copy-and-paste address flows with a more familiar and
+streamlined experience for donors and recipients.
+
+With support from this grant, Dana Wallet aims to move into a production-ready
+release, including a stable build on the Google Play Store. The work will focus
+on error handling, reliable recovery through chain rescans, and basic security
+features such as PIN or biometric protection. Beyond those core milestones, the
+project plans to improve the speed and consistency of scanning, allow users to
+register their own “username@danawallet.app” addresses, improve the
+transaction history view, and add features like offline mode and flexible
+denomination display. Over time, the project may introduce a contact list, and
+notifications between Dana Wallet users to make receiving silent payments more
+seamless.
+
+Repository: [cygnet3/danawallet]
+License: MIT
+
+[Dana Wallet]: https://danawallet.app/
+[silent payments]: https://gist.github.com/RubenSomsen/c43b79517e7cb701ebf77eec6dbb46b8#file-silent_payments-md
+[BIP158]: https://github.com/bitcoin/bips/blob/master/bip-0158.mediawiki
+[BIP353]: https://github.com/bitcoin/bips/blob/master/bip-0353.mediawiki
+[cygnet3/danawallet]: https://github.com/cygnet3/danawallet
+
+### Daniel Pfeifer
+
+[Daniel Pfeifer] is focused on improving the long-term maintainability, safety,
+and clarity of the Bitcoin Core codebase. His work centers on cleaning up the
+build system by replacing ad-hoc scripts and undocumented conventions with
+declarative, reproducible [CMake] configurations, and on refactoring C++
+components so they are easier to understand and work on in isolation. This
+includes enforcing clear ownership rules in the code and removing unsafe
+constructs. He also aims to define, document, and promote modern [C++ coding
+guidelines] within the Bitcoin community, drawing on his involvement with the
+ISO C++ Committee, and to develop the [BtcK] multi-language API so that
+different programming languages can talk to Bitcoin Core through consistent,
+idiomatic bindings. Alongside this, Daniel prioritizes C++ education and
+mentorship.
+
+With support from this grant, Daniel will focus on concrete near-term milestones
+that support future architectural improvements. These include helping to prepare
+a stable C API for the [Bitcoin Kernel library], ensuring its SDK is deployed
+cleanly, and replacing platform-specific packaging scripts with a unified CPack
+definition.
+
+Repositories: [purpleKarrot/btck]; [bitcoin/bitcoin]
+Licenses: MIT
+
+[Daniel Pfeifer]: https://github.com/purpleKarrot
+[CMake]: https://cmake.org/
+[C++ coding guidelines]: https://isocpp.github.io/CppCoreGuidelines/CppCoreGuidelines
+[BtcK]: https://purplekarrot.github.io/btck/
+[Bitcoin Kernel library]: https://github.com/bitcoin/bitcoin/issues/27587
+[purpleKarrot/btck]: https://github.com/purpleKarrot/btck
+[bitcoin/bitcoin]: https://github.com/bitcoin/bitcoin
+
+### FreeBSD
+
+[FreeBSD] is an operating system used across servers, desktops, and embedded
+platforms, and is the most widely deployed of the [BSD family], second only to
+Linux among open-source operating systems. This project maintains the
+FreeBSD/EC2 platform, ensuring that FreeBSD runs reliably on [Amazon EC2] by
+producing and supporting cloud images and coordinating with the wider project.
+
+With support from this grant, [Colin Percival] will continue engineering work
+around the newly released [FreeBSD 15.0], including EC2 image builds and work on
+[future branches] to improve robustness and security in cloud environments.
+
+Repository: [freebsd/freebsd-src]
+License: BSD-2-Clause
+
+[FreeBSD]: https://www.freebsd.org/
+[BSD family]: https://ftp.netbsd.org/pub/NetBSD/NetBSD-current/src/share/misc/bsd-family-tree
+[Amazon EC2]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/concepts.html
+[Colin Percival]: https://github.com/cperciva/
+[FreeBSD 15.0]: https://www.freebsd.org/releases/15.0R/announce/
+[future branches]: https://wiki.freebsd.org/Releng/16.0ISSUES
+[freebsd/freebsd-src]: https://github.com/freebsd/freebsd-src
+
+### Janb84
+
+[Janb84] contributes to Bitcoin Core with a focus on coordinating software
+release testing and improving the supporting documentation and feedback loop
+around that work. This includes maintaining Release Candidate Testing Guides and
+running feedback threads for testers, as well as facilitating group review
+through the [PR Review Club].
+
+With support from this grant, janb84 will continue in-depth PR review and
+contributor-facing documentation such as [README]s and testing guides.
+
+Repository: [bitcoin/bitcoin]
+License: MIT
+
+[Janb84]: https://github.com/janb84
+[PR Review Club]: https://bitcoincore.reviews/
+[README]: https://github.com/bitcoin/bitcoin/blob/master/doc/README.md
+
+### LaWallet
+
+[LaWallet] is a Lightning wallet stack designed to make bitcoin onboarding
+simple and practical for communities. It provides Lightning Addresses,
+[BoltCards] for NFC payments, and [Nostr Wallet Connect] as the backend, and can
+be deployed on platforms like [Vercel] or [Netlify]. This model is already being
+deployed with [VEINTIUNO.LAT].
+
+With support from this grant, LaWallet will focus on heavy testing, bug fixes,
+and improving the operator and user experience.
+
+Repository: [lawalletio/lawallet-nwc]
+License: MIT
+
+[LaWallet]: https://lawallet.io/
+[BoltCards]: https://www.boltcard.org/
+[Nostr Wallet Connect]: https://nwc.dev/
+[Vercel]: https://vercel.com/
+[Netlify]: https://www.netlify.com/
+[VEINTIUNO.LAT]: https://veintiuno.lat/
+[lawalletio/lawallet-nwc]: https://github.com/lawalletio/lawallet-nwc
+
+### LNHANCE
+
+The LNHANCE Expedition project explores the proposed [LNhance soft fork] by
+building proof-of-concept implementations of [Eltoo] channels, hash-lock Ark
+([hArk]), and [vaults], with a focus on [CTV] and [CSFS].
+
+With support from this grant, the project will complete a CTV-only vault proof
+of concept, implement Eltoo channels in [LDK], explore Ark-like protocols in
+[bark], and simulate multiparty Eltoo coinpools for decentralized miners such as
+[Braidpool].
+
+Repositories: [LNHANCE-Expedition]
+Licenses: CC0-1.0, CC BY 4.0, MIT
+
+[LNhance soft fork]: https://lnhance.org/
+[Eltoo]: https://bitcoinops.org/en/topics/eltoo/
+[hArk]: https://delvingbitcoin.org/t/evolving-the-ark-protocol-using-ctv-and-csfs/1602#p-4785-hark-hash-lock-ark-10
+[vaults]: https://bitcoinops.org/en/topics/vaults/
+[CTV]: https://bitcoinops.org/en/topics/op_checktemplateverify/
+[CSFS]: https://bitcoinops.org/en/topics/op_checksigfromstack/
+[LDK]: https://github.com/lightningdevkit
+[bark]: https://docs.rs/bark-wallet/latest/bark/
+[Braidpool]: https://opensats.org/blog/bitcoin-grants-feb-2024#braidpool
+[LNHANCE-Expedition]: https://github.com/LNHANCE-Expedition
+
+### Mohd Zaid
+
+[Mohd Zaid] is a developer contributing to [Braidpool], a zero-fee Bitcoin
+mining pool that aims to reduce centralization. His work includes an [Audit
+Mode] proxy and the [UHPO] accounting module built on a shared [DAG] of mining
+“beads”.
+
+With support from this grant, Mohd will harden Audit Mode, complete the UHPO
+module, integrate both systems, and research decentralized signing using
+[FROST].
+
+Repositories: [/braidpool/braidpool]
+License: AGPL-3.0
+
+[Mohd Zaid]: https://github.com/zaidmstrr
+[DAG]: https://en.wikipedia.org/wiki/Directed_acyclic_graph
+[Audit Mode]: https://github.com/braidpool/braidpool/pull/305
+[UHPO]: https://github.com/braidpool/braidpool/blob/main/docs/braidpool_spec.md#unspent-hasher-payment-output
+[FROST]: https://www.rfc-editor.org/rfc/rfc9591.html
+[/braidpool/braidpool]: https://github.com/braidpool/braidpool
+
+---
+
+From Silent Payments tooling and donation-focused wallet UX to long-term Bitcoin
+Core maintainability, operating system diversity, and mining decentralization
+research, this fifteenth wave supports the kind of work that keeps Bitcoin
+robust and usable without sacrificing privacy or decentralization.
+
+By funding both new contributors and ongoing maintenance, we aim to reduce
+bottlenecks that would otherwise limit review capacity, user choice, and the
+ability for independent builders to participate over the long term.
+
+Our work is made possible by the generosity of our donors. If you’d like to help
+make the future of free and open-source Bitcoin development more sustainable,
+consider setting up a recurring donation to one of [our funds](/funds). Any
+amount helps.
+
+
+
+
+
+If you’re building free and open-source Bitcoin software that advances
+decentralization, privacy, and user sovereignty, we encourage you to [apply for
+funding](/apply).
From 072394ef5e3885500446376c6b093916d83074af Mon Sep 17 00:00:00 2001
From: ARVIN <141419722+Arvin21M@users.noreply.github.com>
Date: Mon, 15 Dec 2025 20:39:35 -0500
Subject: [PATCH 03/11] Correction on link formats with conflicts
---
.../blog/fifteenth-wave-of-bitcoin-grants.mdx | 146 ++++++++++++------
1 file changed, 103 insertions(+), 43 deletions(-)
diff --git a/data/blog/fifteenth-wave-of-bitcoin-grants.mdx b/data/blog/fifteenth-wave-of-bitcoin-grants.mdx
index a3cb41344..ff95bfccc 100644
--- a/data/blog/fifteenth-wave-of-bitcoin-grants.mdx
+++ b/data/blog/fifteenth-wave-of-bitcoin-grants.mdx
@@ -35,17 +35,12 @@ The eight first-time grants in this wave go to:
The seven grant renewals have been awarded to:
- Bitcoin Dev Kit ([Aug. 2023](blog/bitcoin-and-nostr-grants-august-2023#bdk))
-- Satoshi Nakamoto Institute ([Jul.
- 2024](/blog/announcing-the-opensats-education-initiative#satoshi-nakamoto-institute))
-- Africa Free Routing ([Sep.
- 2024](/blog/second-wave-of-education-grants#africa-free-routing))
+- Satoshi Nakamoto Institute ([Jul. 2024](/blog/announcing-the-opensats-education-initiative#satoshi-nakamoto-institute))
+- Africa Free Routing ([Sep. 2024](/blog/second-wave-of-education-grants#africa-free-routing))
- Floresta ([Sep. 2024](/blog/bitcoin-grants-september-2024-7th-wave#floresta))
-- Yes Bitcoin Haiti ([Nov.
- 2024](/blog/3rd-wave-of-education-grants#yes-bitcoin-haiti))
-- Silent Payments Shepherd ([Aug.
- 2025](/blog/thirteenth-wave-of-bitcoin-grants#silent-payments-shepherd))
-- Swift Bitcoin ([Jul.
- 2025](/blog/twelfth-wave-of-bitcoin-grants#swift-bitcoin))
+- Yes Bitcoin Haiti ([Nov. 2024](/blog/3rd-wave-of-education-grants#yes-bitcoin-haiti))
+- Silent Payments Shepherd ([Aug. 2025](/blog/thirteenth-wave-of-bitcoin-grants#silent-payments-shepherd))
+- Swift Bitcoin ([Jul. 2025](/blog/twelfth-wave-of-bitcoin-grants#swift-bitcoin))
These grants are made possible by donations to our [General
Fund](/funds/general). If you’d like to help sustain free and open-source work,
@@ -139,13 +134,17 @@ guidelines] within the Bitcoin community, drawing on his involvement with the
ISO C++ Committee, and to develop the [BtcK] multi-language API so that
different programming languages can talk to Bitcoin Core through consistent,
idiomatic bindings. Alongside this, Daniel prioritizes C++ education and
-mentorship.
+mentorship by teaching fundamentals, sharing best practices, and helping new
+maintainers grow into long-term contributors.
With support from this grant, Daniel will focus on concrete near-term milestones
that support future architectural improvements. These include helping to prepare
-a stable C API for the [Bitcoin Kernel library], ensuring its SDK is deployed
-cleanly, and replacing platform-specific packaging scripts with a unified CPack
-definition.
+a stable C API for the [Bitcoin Kernel library], making sure its SDK is deployed
+cleanly with the correct headers, library artifacts, and package configuration,
+and replacing a patchwork of platform-specific packaging scripts with a unified
+CPack definition. Because improving maintainability and educating future
+developers is an ongoing effort, progress will be iterative and aimed at the
+long-term sustainability of the Bitcoin Core project.
Repositories: [purpleKarrot/btck]; [bitcoin/bitcoin]
Licenses: MIT
@@ -165,10 +164,19 @@ platforms, and is the most widely deployed of the [BSD family], second only to
Linux among open-source operating systems. This project maintains the
FreeBSD/EC2 platform, ensuring that FreeBSD runs reliably on [Amazon EC2] by
producing and supporting cloud images and coordinating with the wider project.
+This work underpins operating system diversity for critical infrastructure,
+which is important for Bitcoin operators who cannot rely on a single-kernel
+monoculture.
With support from this grant, [Colin Percival] will continue engineering work
-around the newly released [FreeBSD 15.0], including EC2 image builds and work on
-[future branches] to improve robustness and security in cloud environments.
+around the newly released [FreeBSD 15.0], including EC2 image builds and
+coordination needed to keep the release stable and supported. Additional work
+will extend to [future branches], addressing larger changes and issues deferred
+from 15.0 and improving the robustness and security of FreeBSD in cloud
+environments. The goal is to ensure that FreeBSD remains a well-maintained
+operating system option for long-term infrastructure, including those in the
+Bitcoin ecosystem that rely on operating system diversity to reduce systemic
+risk.
Repository: [freebsd/freebsd-src]
License: BSD-2-Clause
@@ -186,11 +194,13 @@ License: BSD-2-Clause
[Janb84] contributes to Bitcoin Core with a focus on coordinating software
release testing and improving the supporting documentation and feedback loop
around that work. This includes maintaining Release Candidate Testing Guides and
-running feedback threads for testers, as well as facilitating group review
-through the [PR Review Club].
+running dedicated feedback threads for testers, as well as facilitating group
+review and discussion of the testing process through the [PR Review Club].
-With support from this grant, janb84 will continue in-depth PR review and
-contributor-facing documentation such as [README]s and testing guides.
+With support from this grant, janb84 will continue to expand his work on Bitcoin
+Core, including in-depth PR review and contributor-facing documentation such as
+[README]s and testing guides, with the goal of improving the quality of review
+and testing so changes are easier to evaluate and safer to release.
Repository: [bitcoin/bitcoin]
License: MIT
@@ -198,17 +208,30 @@ License: MIT
[Janb84]: https://github.com/janb84
[PR Review Club]: https://bitcoincore.reviews/
[README]: https://github.com/bitcoin/bitcoin/blob/master/doc/README.md
+[bitcoin/bitcoin]: https://github.com/bitcoin/bitcoin
### LaWallet
[LaWallet] is a Lightning wallet stack designed to make bitcoin onboarding
simple and practical for communities. It provides Lightning Addresses,
-[BoltCards] for NFC payments, and [Nostr Wallet Connect] as the backend, and can
-be deployed on platforms like [Vercel] or [Netlify]. This model is already being
-deployed with [VEINTIUNO.LAT].
-
-With support from this grant, LaWallet will focus on heavy testing, bug fixes,
-and improving the operator and user experience.
+[BoltCards] for NFC payments, [Nostr Wallet Connect] as the backend, and can be
+deployed for free on platforms like [Vercel] or [Netlify] to give users an
+instant Lightning wallet experience. The same stack can run on self-hosted
+platforms such as Umbrel or Start9, where communities offer courtesy NWC
+accounts and guide users toward operating their own infrastructure. LaWallet’s
+core idea is progressive custody, where users can start with hosted providers
+and later move to their own node without changing their interface or habits.
+This model is already being deployed with [VEINTIUNO.LAT] across several
+circular economies.
+
+With support from this grant, LaWallet will focus on improving the stack through
+heavy testing, bug fixes, and completion of the admin dashboard. The project
+aims to have at least ten circular communities running the platform, improving
+the simple wallet frontend, NWC integrations, and BoltCard flows based on user
+feedback. Additional work will refine the deployment and management experience
+for operators, making it easier for grassroots initiatives to roll out Lightning
+Addresses, POS devices, and NFC cards while progressively guiding new users
+toward self-custody.
Repository: [lawalletio/lawallet-nwc]
License: MIT
@@ -223,14 +246,32 @@ License: MIT
### LNHANCE
-The LNHANCE Expedition project explores the proposed [LNhance soft fork] by
-building proof-of-concept implementations of [Eltoo] channels, hash-lock Ark
-([hArk]), and [vaults], with a focus on [CTV] and [CSFS].
-
-With support from this grant, the project will complete a CTV-only vault proof
-of concept, implement Eltoo channels in [LDK], explore Ark-like protocols in
-[bark], and simulate multiparty Eltoo coinpools for decentralized miners such as
-[Braidpool].
+The LNHANCE Expedition project explores the proposed [LNhance soft fork] for
+Bitcoin by building and analyzing proof-of-concept implementations of [Eltoo]
+channels, hash-lock Ark ([hArk]), and [vaults], with a focus on
+OP_CHECKTEMPLATEVERIFY ([CTV]) and OP_CHECKSIGFROMSTACK ([CSFS]). Its goal is to
+understand the practical viability, limitations, and tradeoffs of these new
+opcodes in real-world channel, Ark, and vault designs. Current work centers on a
+CTV-only vault that uses a predefined spending plan to control how quickly funds
+can be moved, support a large number of deposits and withdrawals, and provide a
+secure recovery path with clear limitations for users, alongside tools,
+documentation, educational materials, and reusable libraries that help other
+developers adopt these designs.
+
+With support from this grant, the project will complete the CTV-only vault proof
+of concept, refine its command-line and minimal graphical interfaces, and
+document the CTV precomputed state machine design for both general and technical
+audiences. It will then implement Eltoo channels using CTV and CSFS in [LDK] and
+extend this work to multiparty Eltoo using a precomputed settlement state
+machine, comparing on-chain efficiency and design tradeoffs with existing
+approaches. Further work will apply CTV and CSFS to [Ark-like protocols] by
+implementing hArk in [bark] and exploring related designs such as [Erk]. The
+project will also simulate multiparty Eltoo coinpools as non-custodial payout
+mechanisms for decentralized miners such as
+([Braidpool](/blog/bitcoin-grants-feb-2024#braidpool)), and investigate
+additional vault designs, including social recovery, offline key delegation, and
+deleted key recursion aimed at reducing precomputation overhead to levels
+suitable for hardware wallets.
Repositories: [LNHANCE-Expedition]
Licenses: CC0-1.0, CC BY 4.0, MIT
@@ -242,26 +283,45 @@ Licenses: CC0-1.0, CC BY 4.0, MIT
[CTV]: https://bitcoinops.org/en/topics/op_checktemplateverify/
[CSFS]: https://bitcoinops.org/en/topics/op_checksigfromstack/
[LDK]: https://github.com/lightningdevkit
+[Ark-like protocols]: https://bitcoinops.org/en/topics/ark/
[bark]: https://docs.rs/bark-wallet/latest/bark/
-[Braidpool]: https://opensats.org/blog/bitcoin-grants-feb-2024#braidpool
+[Erk]: https://blog.second.tech/erk-update/
[LNHANCE-Expedition]: https://github.com/LNHANCE-Expedition
### Mohd Zaid
-[Mohd Zaid] is a developer contributing to [Braidpool], a zero-fee Bitcoin
-mining pool that aims to reduce centralization. His work includes an [Audit
-Mode] proxy and the [UHPO] accounting module built on a shared [DAG] of mining
-“beads”.
-
-With support from this grant, Mohd will harden Audit Mode, complete the UHPO
-module, integrate both systems, and research decentralized signing using
-[FROST].
+[Mohd Zaid] is a developer contributing to [Braidpool], zero-fee Bitcoin mining
+pool that aims to reduce centralization in the Bitcoin mining landscape.
+Braidpool replaces the single-operator model of traditional pools with a shared
+Directed Acyclic Graph ([DAG]) of “[beads]” (shares or weak blocks) that records
+miners’ work quickly and with less waste. Building on this braid-like structure,
+Mohd has been working on two core pieces of infrastructure: an [Audit Mode]
+proxy that transparently logs mining activity into the DAG to create a
+tamper-evident record of work performed, and an Unspent Hash Payout Output
+([UHPO]) module that serves as an auditable accounting layer for tracking what
+each miner is owed and how payouts are constructed.
+
+With support from this grant, Mohd will focus on turning these components into
+robust tools that miners and ecosystem partners can rely on. He will implement
+and strengthen Audit Mode, including the pass-through proxy, the DAG logic for
+anchoring mining events, and privacy features that let miners selectively share
+contribution data with contract counterparties. Mohd will then design and build
+out the UHPO module, defining its data model, core operations for tracking
+balances and settlement, and the logic to generate valid payout transactions. In
+the final phase, he plans to integrate Audit Mode and UHPO while researching and
+prototyping decentralized signing with [FROST] or similar threshold schemes,
+followed by comprehensive functional and integration testing. The goal is to
+provide an open-source foundation for transparent mining accounting and
+hashrate-linked financial tools, reducing dependence on centralized pool
+infrastructure.
Repositories: [/braidpool/braidpool]
License: AGPL-3.0
[Mohd Zaid]: https://github.com/zaidmstrr
+[Braidpool]: https://github.com/braidpool/braidpool
[DAG]: https://en.wikipedia.org/wiki/Directed_acyclic_graph
+[beads]: https://github.com/braidpool/braidpool/blob/main/docs/braid_consensus.md
[Audit Mode]: https://github.com/braidpool/braidpool/pull/305
[UHPO]: https://github.com/braidpool/braidpool/blob/main/docs/braidpool_spec.md#unspent-hasher-payment-output
[FROST]: https://www.rfc-editor.org/rfc/rfc9591.html
From 0835b24330f5b7057003e56a2c7a761322a30939 Mon Sep 17 00:00:00 2001
From: ARVIN <141419722+Arvin21M@users.noreply.github.com>
Date: Mon, 15 Dec 2025 20:42:47 -0500
Subject: [PATCH 04/11] Fix formatting for username address (dana wallet)
section
---
data/blog/fifteenth-wave-of-bitcoin-grants.mdx | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/data/blog/fifteenth-wave-of-bitcoin-grants.mdx b/data/blog/fifteenth-wave-of-bitcoin-grants.mdx
index ff95bfccc..70220c085 100644
--- a/data/blog/fifteenth-wave-of-bitcoin-grants.mdx
+++ b/data/blog/fifteenth-wave-of-bitcoin-grants.mdx
@@ -106,7 +106,7 @@ release, including a stable build on the Google Play Store. The work will focus
on error handling, reliable recovery through chain rescans, and basic security
features such as PIN or biometric protection. Beyond those core milestones, the
project plans to improve the speed and consistency of scanning, allow users to
-register their own “username@danawallet.app” addresses, improve the
+register their own `username@danawallet.app` addresses, improve the
transaction history view, and add features like offline mode and flexible
denomination display. Over time, the project may introduce a contact list, and
notifications between Dana Wallet users to make receiving silent payments more
From 0ca313ebdcf7845fa744c9ecd4a206dc1d166ca8 Mon Sep 17 00:00:00 2001
From: ARVIN <141419722+Arvin21M@users.noreply.github.com>
Date: Mon, 15 Dec 2025 20:45:01 -0500
Subject: [PATCH 05/11] Fix repository links formatting
---
data/blog/fifteenth-wave-of-bitcoin-grants.mdx | 8 ++++----
1 file changed, 4 insertions(+), 4 deletions(-)
diff --git a/data/blog/fifteenth-wave-of-bitcoin-grants.mdx b/data/blog/fifteenth-wave-of-bitcoin-grants.mdx
index 70220c085..3c0093d7f 100644
--- a/data/blog/fifteenth-wave-of-bitcoin-grants.mdx
+++ b/data/blog/fifteenth-wave-of-bitcoin-grants.mdx
@@ -79,14 +79,14 @@ as DM-style notifications between senders and receivers and GPU-accelerated
scanning, with the goal of making Silent Payments adoption more accessible for
both desktop and mobile users relying on remote scanners.
-Repositories: [/blindbitbtc]
+Repositories: [blindbitbtc]
License: MIT
[BlindBit Oracle]: https://github.com/setavenger/blindbit-oracle
[BlindBit Desktop]: https://github.com/setavenger/blindbit-desktop
[BlindBit Scan]: https://github.com/setavenger/blindbit-scan
[BlindBit Spend]: https://github.com/setavenger/blindbit-spend
-[/blindbitbtc]: https://github.com/blindbitbtc
+[blindbitbtc]: https://github.com/blindbitbtc
[Umbrel]: https://umbrel.com/
[Start9]: https://start9.com/
@@ -315,7 +315,7 @@ provide an open-source foundation for transparent mining accounting and
hashrate-linked financial tools, reducing dependence on centralized pool
infrastructure.
-Repositories: [/braidpool/braidpool]
+Repositories: [braidpool/braidpool]
License: AGPL-3.0
[Mohd Zaid]: https://github.com/zaidmstrr
@@ -325,7 +325,7 @@ License: AGPL-3.0
[Audit Mode]: https://github.com/braidpool/braidpool/pull/305
[UHPO]: https://github.com/braidpool/braidpool/blob/main/docs/braidpool_spec.md#unspent-hasher-payment-output
[FROST]: https://www.rfc-editor.org/rfc/rfc9591.html
-[/braidpool/braidpool]: https://github.com/braidpool/braidpool
+[braidpool/braidpool]: https://github.com/braidpool/braidpool
---
From 0fc9d8719f439c97c1608347b811484bde85c50a Mon Sep 17 00:00:00 2001
From: ARVIN <141419722+Arvin21M@users.noreply.github.com>
Date: Mon, 15 Dec 2025 21:12:46 -0500
Subject: [PATCH 06/11] Update image path
---
data/blog/fifteenth-wave-of-bitcoin-grants.mdx | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/data/blog/fifteenth-wave-of-bitcoin-grants.mdx b/data/blog/fifteenth-wave-of-bitcoin-grants.mdx
index 3c0093d7f..b1415f331 100644
--- a/data/blog/fifteenth-wave-of-bitcoin-grants.mdx
+++ b/data/blog/fifteenth-wave-of-bitcoin-grants.mdx
@@ -3,7 +3,7 @@ title: "Fifteenth Wave of Bitcoin Grants"
date: '2025-12-16'
tags: ['OpenSats', 'grants', 'bitcoin', 'wave']
authors: ['default', 'arvin']
-images: ['/static/images/blog/TODO.jpg']
+images: ['/static/images/blog/92-fifteenth-wave-of-bitcoin-grants.jpg']
draft: false
summary: "OpenSats is funding fifteen more open-source projects advancing the Bitcoin ecosystem."
---
From ecd7b14ee8e4eaec76d6d7813ec383eafcd82f3f Mon Sep 17 00:00:00 2001
From: ARVIN <141419722+Arvin21M@users.noreply.github.com>
Date: Mon, 15 Dec 2025 21:14:15 -0500
Subject: [PATCH 07/11] Add header image file
---
.../92-fifteenth-wave-of-bitcoin-grants.jpg | Bin 0 -> 254544 bytes
1 file changed, 0 insertions(+), 0 deletions(-)
create mode 100644 public/static/images/blog/92-fifteenth-wave-of-bitcoin-grants.jpg
diff --git a/public/static/images/blog/92-fifteenth-wave-of-bitcoin-grants.jpg b/public/static/images/blog/92-fifteenth-wave-of-bitcoin-grants.jpg
new file mode 100644
index 0000000000000000000000000000000000000000..fef193423172529a0883c2a230aae18abb40f86d
GIT binary patch
literal 254544
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