Multisig is a familiar concept for most in Bitcoin: a multisig transaction requires approval from multiple parties before it can be executed. We distinguish between “n-of-n” multi-signatures, where the number of involved parties is n, and they all need to approve, and “t-of-n” threshold signatures, where only a smaller number t of participants need to approve. Cryptographic schemes like MuSig, MuSig-DN and MuSig2 for multi-signatures and FROST by Komlo and Goldberg for threshold signatures can reduce transaction cost and improve privacy of multisig wallets.
So far, in the Bitcoin Community FROST has only been used in experimental implementations. In this post, we explain why this is the case and how we aim to advance FROST in a Bitcoin production environment through our recent publication of a BIP draft for the ChillDKG distributed key generation protocol.
First, what are the benefits of FROST?
With MuSig2 and FROST, even though multiple participants contribute to the signing process, the outcome is a single signature.
This not only gives better privacy to the participants by making the transaction look like as ordinary singlesig-wallet transaction. It also trims down the transaction, reducing its size and therefore lowering the transaction fee. All great things!
MuSig2 and FROST allow Bitcoin users to operate a multisig wallet with the same transaction cost as a regular single-signature wallet. The cost benefits are especially significant for systems with a large number of signers and frequent transactions, such as federated sidechains like Liquid or Fedimint. Unlike traditional multisig, which leaves a distinct fingerprint that allows blockchain observers to identify transactions of the wallet, FROST-based wallets are indistinguishable from regular single-signature wallets on the blockchain. Therefore, they provide an improvement in privacy compared to traditional multisig wallets.
While MuSig2 has seen adoption from the Bitcoin industry, the same cannot be said for FROST as far as we know. This may be surprising, considering the existence of multiple FROST implementations, such as in ZF FROST (by the Zcash Foundation), secp256kfun (by Lloyd Fournier), and an experimental implementation in libsecp256k1-zkp (by Jesse Posner and Blockstream Research). There is even a IETF specification for FROST, RFC 9591 (though it is not compatible with Bitcoin due to Taproot tweaking and x-only public keys). One of the most plausible explanations is that FROST’s key generation process is considerably more complex compared to MuSig2.
FROST essentially consists of two parts: key generation and signing. While the signing process closely resembles that of MuSig2, key generation is significantly more involved than in MuSig2. Key generation in FROST is either trusted or distributed:
DKG typically requires secure (i.e., authenticated and encrypted) channels between participants to deliver secret shares to individual signers, and a secure agreement mechanism. The purpose of the secure agreement mechanism is to ensure that all participants eventually reach agreement over the results of the DKG, which include not only parameters such as the generated threshold public key, but also whether no error occurred and the ceremony was not disrupted by a misbehaving participant.
While the IETF specification considers DKG out of scope entirely, the FROST implementations mentioned above do not implement secure agreement, leaving this task to the library user. But agreement is not trivial to implement: there exist countless protocols and flavors of agreement, ranging from simple echo broadcast schemes to full-fledged Byzantine consensus protocols, and their security and availability guarantees differ significantly, and sometimes subtly.
Despite the confusion that may arise due to this jungle of agreement protocols, the exact flavor of agreement that DKG relies on is often not clearly communicated to engineers, leaving them in the dark.
To overcome this obstacle, we propose ChillDKG, a new “ready-to-use” DKG protocol tailored to the use in FROST (draft). We provide a detailed description in the form of a draft of a Bitcoin Improvement Proposal (BIP), which is intended to serve as a specification for implementers.
The main feature of ChillDKG is that it is standalone: The establishment of secure communications and secure agreement is done within the protocol, while all of this underlying complexity is hidden behind a simple and hard-to-misuse API. As a result, ChillDKG is ready to use in practice and does not rely on any setup assumption, except that each signer has decided on the set of co-signers as identified by individual public keys. ChillDKG is based on the SimplPedPop protocol, in whose design and formal security proof Blockstream Research has been involved, see, the CRYPTO 2023 paper “Practical Schnorr Threshold Signatures Without the Algebraic Group Model” by Chu, Gerhart, Ruffing (Blockstream Research), and Schröder
Additional goals for ChillDKG’s design include:
The ChillDKG BIP is currently in draft stage, and we are seeking feedback on design choices and implementation details. While the specification is mostly complete, it lacks test vectors, and we are considering adding some additional features (e.g., “identifiable aborts”). Once finalized, the ChillDKG BIP can be used in combination with a BIP for FROST signing to instantiate the entire FROST protocol.
This is a guest post by Jonas Nick, Kiara Bickers, and Tim Ruffing. Opinions expressed are entirely their own and do not necessarily reflect those of BTC Inc or Bitcoin Magazine.
Intel lost out on a contract to design and fabricate Sony's PlayStation 6 chip in…
AAP minister Atishi on Tuesday addressed the media for the first time after being elected…
Dive into the latest updates that are making waves and shaping the world. Here’s a…
2024-09-20 08:15:03 Mortgage rates are a lot lower today than they were at the start…
SEOUL, South Korea -- South Korea’s government, Western countries and adoption agencies worked in tandem…
2024-09-20 08:05:03 Durante el Mes de la Herencia Hispana, Google ha decidido utilizar sus Doodle…