This week in sBTC

Week of August 21, 2023

Dear Bitcoiners,

Last week, the sBTC working group got together IRL for a hackathon that spanned contributors across all the major workstreams. The energy this week was electric — and the team made considerable progress on components of sBTC and the Nakamoto upgrade.

✍️ This week’s newsletter will highlight the wins and takeaways from the event.

Hackathon Recap

The Stacks community is full of humble geniuses spread around the world. On August 14, we logged off Zoom and descended on New York City for a week long hackathon. The event was an incredible reminder about what we can achieve together in-person.

💻 Day 1 | Tuesday, Aug 15

  • We kicked off the week with a brainstorming session on product requirements for the sBTC Signer. The Signer is responsible for validating block production under Nakamoto consensus and approving/denying deposits and withdrawals for sBTC. This set the tone for a productive week!

  • Next, we laid out the goals for the week and formed teams focusing on:

    1. sBTC Signer

    2. Block Producer Signer & Stacks Signer

    3. Clarity Wasm

  • Jude shipped an implementation of StackerDB — the communication protocol that enables Stacks nodes to query each other. This helped unlock a lot of downstream work for the rest of the teams.

  • I presented a workshop on sBTC’s product-market fit

 Day 2 | Wednesday, Aug 16

  • Elena led the sBTC Signer user stories workshop

  • Workshops on sBTC commit-reveal, signer, and coordinator — which resulted in a comprehensive design of the Signer architecture

  • More sessions on the Nakamoto and integration testing plans

💡 Day 3 | Thursday, Aug 17

  • Joey was able to use StackerDB to run a full DKG (distributed key generation) round. The current code includes both ECDSA sign/verify of all DKG messages (to verify they came from the expected sources), and encrypt/decrypt of the DkgPrivateShares messages.

  • The Wasm team established the basic setup for testing and executing our compiled Wasm modules. Brice demoed a benchmark showing a >90x speedup over the existing runtime.

  • Completed an initial integration into Clarinet, to allow for simple testing in the clarinet test and clarinet console environments.

  • Clarified our release strategy for the Nakamoto & sBTC upgrades (details to follow in a later post).

Overall, the team left feeling energized with more clarity on the scope of deliverables for the upcoming releases. While core engineering was hacking on sBTC, the marketing working group was busy hosting an sBTC competition of their own…

Ready Layer 2: Bitcoin Pitch Competition Recap

Ready Layer 2 is a Bitcoin pitch competition that offered $10,000 in prizes for the best ideas, prototypes, and plans for new sBTC-powered applications. Truly an exciting weekend, the event drew 360+ registrants, 100+ participants, and 24 completed submissions.

The winners: (drumroll please 🥁)

All projects that were submitted can be viewed using this link.

We couldn’t have done it without our fantastic partners. Huge shoutout to Hiro, Xverse and ALEX for their support of the event!

Highlights from Sprint 3

sBTC:

  • Commit-Reveal & Coordinator:

    • Enhanced coordinator scaffolding and revealer trait.

    • Managed stacks-core docs and updated sBTC contract names.

    • Prepared signer architecture docs for Hackathon.

    • Explored testing, commit-reveal updates, and sBTC development.

    • Started work on Stacks P2P layer implementation.

  • Cryptography:

    • Reviewed and finalized various PRs for Signer trait, taproot, and DKG.

    • Collaborated on schnorr signatures and BTC transaction formats.

    • Worked on approve/deny flow with nonces and exposing schnorr signatures.

    • Full DKG running on top of StackerDB!

  • sBTC SDK:

    • Completed length-prefixed contract names for sBTC deposit parsing.

    • Ensured SIP-005 compliant principal encoding and outlined future steps.

    • Planned next steps for stacks-core and sbtc-core .

  • sBTC UX/UI:

    • sBTC bridge deployment planning.

    • Continuing refactoring of sbtc-bridge-lib.

    • Xverse bridge integration.

    • Finished Xverse PR.

    • Started work on signer dashboard.

    • Designed sBTC Dashboard.

    • sBTC Bridge Settings page design.

  • Clarity:

    • Enhanced test coverage for sBTC Minting contract.

    • Developed unit tests and Clarity Trait for sBTC.

    • Actively progressing on sBTC Clarity trait contract and security exploration.

    • Engaged in PR reviews, Clarity libraries, and contract fixes.

  • Signer:

    • Brainstormed Signer docs/implementations.

    • Created tickets and discussions related to signer schema and withdrawal mapping.

    • Continued documentation and signer scaffolding work.

    • Reviewed developer release smart contracts.

    • Working on stubbing out signer architecture.

  • Product & Project Mgmt:

    • Planned and hosted a hackathon.

    • Workshopped launch planning, scope decision, and migration plan.

    • Workshopped sBTC user stories and product-market fit.

    • Contributed to Explorer integration, partnerships, and documentation.

Nakamoto:

  • Shipped StackerDB!

  • Producer Architecture

  • Wire format parsing for producer candidacy operation

  • Nakamoto block producer bitcoin operations

  • Block Producer RPC Endpoints

  • Integration: Block Producer Binary

ClarityVM:

  • Defined stack memory model in Wasm runtime.

  • Implemented clar2wasm compiler operations.

  • Reviewed design concerns and rebased with improvements.

  • Worked on var operations and clar2wasm implementation.

Around the ecosystem

Signing off,

Andre