I just published Introducing Nunchuk: Multisig Made Easy link.medium.com/7uYBIDxk2ab
(Bitcoin, year 11.)

Alice: This year sucks. You know what’s almost as bad as 2020?
Bob: Yeah?
Alice: Multisig is still scary.
Nunchuk: Hold my beer.

It’s somewhat ironic that for a technology that reveres decentralization as its central operating principle, Bitcoin still heavily relies on single point of failure as the dominant method of ownership. 2/
This despite the fact that the unique risk profile of digital assets desperately calls against such a practice.

The highest barriers are technical challenges. Multisig is not for the faint of heart. Many pitfalls await around the corner. 3/
Did you back up all your seeds? Do you need seeds? Are you sure the signing devices use the same derivation path? What about that change address? What do you mean you lost your device in a boating accident? Oops, some vendor has just made an update that bricks my setup. 4/
What if we tell you you don’t have to worry about any of this anymore. What if there’s something. THAT. JUST. WORKS. 5/
Say hello to Nunchuk. The app that makes multisig feel like a walk in the park. 6/
Before we talk about features, let’s talk about design philosophy.
If we were to design a multisig wallet today, what should our goals be? 7/
Our answer:
It must be secure.
It must be seamless.
It must be future-proof.
It must go above and beyond to empower the user. 8/
(I) It must be secure

Security starts by knowing our limits. We defer to specialists in the most security-sensitive areas.
That means delegating the task of managing private keys to single-purpose hardware. 9/
That means sticking close to Bitcoin Core for consensus code, for standardness rules, for future upgrades. That means avoiding reinventing the wheel.

There’s no need to rewrite that low-S low-R signature verification code, no matter how cool elliptic curve math is. 10/
That also means ruthlessly cutting down on the number of software dependencies, because each dependency is a potential attack surface. 11/
That means going with the desktop first and not the browser. That means outside of Core, only using battle-tested software. We can’t completely eliminate all attack surfaces. But we can minimize them. 12/
(II) It must be seamless

Going from a single signer to multiple signers necessarily requires some level of friction. The goal is to avoid further friction in every other part of the multisig process. 13/
In the early days of Bitcoin, wallet vendors were often incompatible with one another, which complicated multisig setups. 14/
On this front, there have been great developments in the last few years, notably PSBT and the descriptor language. Both have greatly improved Bitcoin ecosytem’s interoperability.

Nunchuk treats descriptors and PSBTs as first-class citizens.

The consequence of this is that you can use Nunchuk with many different hardware vendors, or easily recover a multisig wallet created by Nunchuk on other wallet software such as Core. 16/
Being seamless also means the ability to switch between singlesig and multisig use cases.

Nunchuk introduces a third type of wallet: an Escrow. An Escrow is a one-time-use multisig wallet specially created for the purpose of holding funds temporarily. 17/
With Nunchuk, you can easily move funds among these three types of wallets. 18/
(III) It must be future-proof

It would be a shame if we design a brand new multisig solution, only for it to get outdated quickly by tomorrow’s protocol changes. 19/
Many multisig solutions in the past no longer serve us well, because they were designed at a time when tools were lacking, and ended up being needlessly complex. Multisig is bound to evolve further in the coming years.

MuSig anyone? 20/
Because Nunchuk stays close to Core code, it can immediately reap all the benefits of future protocol upgrades.
When Taproot is ready, Nunchuk is ready. 21/
(IV) It must go above and beyond to empower the user

Last but not least, we want to offer the user granular control over their wallet, and most importantly, their privacy.

That’s why we invested time and effort to add support for things like coin control, replace-by-fee, UTXO consolidation, personal server, TOR support, etc.

The little things matter. 23/
The reason is simple: we ourselves are users of multisig. If someone else designs this app, these features would be high on our wish list. 24/
That, in a nutshell, is Nunchuk.

Nunchuk’s mission is to make multisig the gold standard — no pun intended 🙂 — for owning Bitcoin.

Nunchuk beta is available for download at nunchuk.io.

We still need to iron out the kinks, but it's fairly feature-complete. Grab a copy and play around. We look forward to hearing your feedback.

Keep stacking. 26/
Special thanks to @ChaincodeLabs . I had the opportunity to attend Chaincode Residency last year, and it gave me & my team the knowledge we needed to start this project.

If you want to be a Bitcoin contributor, there's no better on-ramp than the Chaincode Residency! 27/
A big shout-out to my mentor @achow101. Andrew was kind enough to let me work on a small part of Core descriptor project last year. And continued to answer my zillion noob questions, long after the residency. 28/
Perhaps you don't know, but @achow101 is also singlehandedly responsible for unifying the hardware wallet industry, for spearheading projects like PSBT, descriptor, and HWI. Without his efforts, none of this would have been possible.

He's the hero we don't deserve. 29/
Shout-outs to @COLDCARDwallet, @Trezor, @Ledger, @ShiftCryptoHQ. Designing a secure hardware wallet is one of the hardest jobs in crypto. Appreciate all the work you guys have done.
And to @CasaHODL, @SpecterWallet, @unchainedcap, @ElectrumWallet for pushing multisig forward. /30
P.S. We need to clean up our code base, but we will open-source Nunchuk's core engine (the app minus the thin UI layer) in a few days. Stay tuned. 31/

• • •

Missing some Tweet in this thread? You can try to force a refresh

Keep Current with Hugo Nguyen

Hugo Nguyen Profile picture

Stay in touch and get notified when new unrolls are available from this author!

Read all threads

This Thread may be Removed Anytime!


Twitter may remove this content at anytime! Save it as PDF for later use!

Try unrolling a thread yourself!

how to unroll video
  1. Follow @ThreadReaderApp to mention us!

  2. From a Twitter thread mention us with a keyword "unroll"
@threadreaderapp unroll

Practice here first or read more on our help page!

More from @hugohanoi

12 Apr
Why S2F has been misapplied in Bitcoin, in mathematical terms:

By using S2F and by restricting ‘flow’ to merely rewards, you are saying Bitcoin supply is an integral function (of changes in supply over time).

But asymptotically changes are zero. There’s nothing to integrate.
Applying S2F to things that are not integrals in nature is a mistake. Math is useful only when it’s applied correctly to phenomenon. It’s mental masturbation otherwise.
Examples of things with true S2F characteristics: population, CO2 concentration, the Bitcoin’s ledger (security strength as an integral of fee flows over time)

Read 6 tweets
28 Jan 19
Last few words on @VladZamfir's poor piece of “work” (or is it propaganda?).

A 18-min rant to express what are some very simple ideas should be enough of a major red flag. But let me point out some tactics/fallacies. They are used elsewhere in this “space” too.
Tactics/fallacies used:
(a) “Call black white, white black”
(b) Deflection
(c) Framing
(d) Ad Hominem
(e) Intentional Vagueness
When someone suggests Zamfir’s idea invites centralized control/reinvents the status quo, note that he doesn’t respond to that point directly.
Read 15 tweets
31 Dec 18
1/ People have asked me to elaborate on the “verification-not-computation” point. And why Ethereum has a flawed architecture from the get-go.

Thread. 👇

*Note: I use “blockchain systems” to refer to Bitcoin-like blockchains that are based on PoW.
2/ First of all, Greg Maxwell explained verification-not-computation concept so well already so I highly recommend reading his full post, linked in @TuurDemeester ’s thread here.
3/ @BobMcElrath also succinctly described the problem here.
Read 32 tweets
29 Sep 18
1/ Emin again with the BS that PoW’s role is merely a “Sybil-controlled mechanism”. (And therefore PoS is a reasonable drop-in replacement.)

It’s the classic mistake domain experts make when analyzing systems purely from their Point-of-View.
2/ Here is Emin’s original “lecture” for reference

I seriously hope Emin is not the only one teaching blockchain at @Cornell. Because he is dead wrong.
3/ Reducing PoW’s role to Sybil control is like an alien looking at cars and conclude that their main purpose is for protecting people from external objects. When they try to create the same thing, they might end up with something like the Flintstones’ car. 🙄
Read 12 tweets
27 Aug 18
1/ Great article by @LaurentMT !

The TL;DR is that energy spent per block contributes not just to UTXOs belonging in that block, but retroactively to all global & past UTXOs.

The often-cited “energy spent per Bitcoin tx” number in many economic papers is flawed for this reason.
2/ Another way to put it is that Bitcoin transactions are secured by high stock-to-flow ratio.

I mentioned this recently in terms of mining hardware stock. But economic history is also another kind of stock.
3/ So Bitcoin possesses high stock-to-flow ratio in two dimensions:
- Stock #1: ledger history
- Stock #2: mining hardware
Read 11 tweets
7 Jun 18
1/ Thread on variance.
PoW mining is critical to Bitcoin network security. Mining, in turn, is subject to 3 major sources of variance, from (roughly) easiest to tame to hardest:

i/ Finding blocks via SHA256 hashing
ii/ Market demand (for BTC & transactions)
iii/ Tech innovation
2/ Quick note: contrary to popular belief that miners are bad & evil, they are vital to Bitcoin’s survival. So it’s imperative to foster a healthy mining industry.
3/ The best miners would be the ones who understand the nature of these variances & know how to handle them most effectively.
Read 20 tweets

Did Thread Reader help you today?

Support us! We are indie developers!

This site is made by just two indie developers on a laptop doing marketing, support and development! Read more about the story.

Become a Premium Member ($3/month or $30/year) and get exclusive features!

Become Premium

Too expensive? Make a small donation by buying us coffee ($5) or help with server cost ($10)

Donate via Paypal Become our Patreon

Thank you for your support!

Follow Us on Twitter!