<oembed><type>rich</type><version>1.0</version><author_name>npub1jqxs4ftunmm8qjyw9s80hpcayewkjfhpxund29l9qvzy7xqx4duq85jqeg</author_name><author_url>https://nostr.ae/npub1jqxs4ftunmm8qjyw9s80hpcayewkjfhpxund29l9qvzy7xqx4duq85jqeg</author_url><provider_name>njump</provider_name><provider_url>https://nostr.ae</provider_url><html>📅 Original date posted:2021-04-09&#xA;📝 Original message:(Continue off last email: also keep in mind, that just like BIP174,&#xA;Coordinator and Signer are abstract roles. This means in theory a Signer&#xA;can be the Coordinator too. The same criteria for trust applies equally to&#xA;a Signer and a Coordinator.)&#xA;&#xA;The use case I personally find most interesting is not a multi-party setup,&#xA;&gt; but rather just combining a bunch of my own devices. Those might even be in&#xA;&gt; the same room during the setup, only to be moved to my moon base later.&#xA;&gt;&#xA;&#xA;And that&#39;s fair. Both use cases (local and remote multisig) are valid and&#xA;currently being used. But IMO a standard should accommodate both.&#xA;&#xA;&#xA;&gt; To the list of concerns at the top of the BIP, I would add one: losing&#xA;&gt; multisig setup context. E.g. in the event of a fire where you only recover&#xA;&gt; your steel engraved mnemonic(s), but no longer have the wallet descriptors.&#xA;&gt;&#xA;&#xA;Good point.&#xA;&#xA;&#xA;&gt;&#xA;&gt; If you still have all devices and know (or guess) the threshold then BIP48&#xA;&gt; and sorted_multi descriptors will save you. But if you have a 2-of-3 setup&#xA;&gt; and lost 1 device then without the metadata your coins are lost. In a&#xA;&gt; future with musig(?) and miniscript increasingly the setup data is just as&#xA;&gt; critical as the seeds.&#xA;&gt;&#xA;&#xA;How so? Each signer device should ideally have a copy of the multisig&#xA;configuration. If you lose 1 device in a 2-of-3, you can still spend from&#xA;the wallet? Unless I&#39;m missing something here.&#xA;&#xA;&#xA;&gt; A future standard (or extension of this one) should recommend an&#xA;&gt; encryption convention for the descriptor data, ideally such that with *any*&#xA;&gt; of the seeds you can decrypt a file that contains the full setup. That file&#xA;&gt; could then just float redundantly around the internet and pieces of paper&#xA;&gt; in various locations, without compromising privacy.&#xA;&gt;&#xA;&#xA;Post-wallet-creation, each Signer can apply extra encryption on top of BSMS&#xA;for the persistence of the configuration file any way it wants :) It&#xA;doesn&#39;t contradict with the current spec.&#xA;&#xA;&#xA;&gt; The proposed encryption system doesn&#39;t help with that though, because it&#39;s&#xA;&gt; based on entropy from the Coordinator, rather than from the signers.&#xA;&gt;&#xA;&#xA;They are for different purposes. The TOKEN-based encryption is only needed&#xA;temporarily for the setup.&#xA;&#xA;&#xA;&gt; Smaller suggestions:&#xA;&gt; * link to this new mail thread in the BIP&#xA;&gt;&#xA;&#xA;Will do.&#xA;&#xA;&#xA;&gt; * use magic bytes so .bsms so operating systems like Android / iOs can&#xA;&gt; open the right app for them&#xA;&gt; * don&#39;t use separate file extensions for encrypted vs unencrypted content,&#xA;&gt; just indicate somehow that a given field is encrypted&#xA;&gt; * although plain text files are handy for debugging, I think a binary&#xA;&gt; format like PSBT is much powerful. Any device that can parse and write&#xA;&gt; binary PSBT should be able to implement a similar parser / writer for a&#xA;&gt; binary .bsms format.&#xA;&gt;&#xA;&#xA;Will consider these points, but I prefer plaintext for wallet&#xA;configuration. Human readability for the wallet configuration is a pro not&#xA;a con IMO. Also helps when backing up.&#xA;&#xA;&#xA;&gt; * BIP48 and sorted_multi descriptors are useful in a loss-of-metadata&#xA;&gt; scenario. The BIP uses both in the examples, but doesn&#39;t explictly endorse&#xA;&gt; these derivations. It also contradicts them: &#34;If the Signer chooses the&#xA;&gt; path, it should try to avoid reusing XPUBs for different wallets.&#34;. Maybe&#xA;&gt; this is out of scope.&#xA;&gt;    * one way to resolve xpub reuse would be to make the &#34;BIP48&#34; path a&#xA;&gt; function of the co-signer fingerprints and wallet threshold, but this&#xA;&gt; requires an extra communication round&#xA;&gt;&#xA;&#xA;We discussed this in the linked PR (&#xA;https://github.com/nunchuk-io/bips/pull/1), and decided that enforcing&#xA;against path reuse is out-of-scope. We give examples of sorted_multi and&#xA;multi because different vendors support different things.&#xA;&#xA;&#xA;&gt; * there should be a way for signers to communicate their capabilities,&#xA;&gt; perhaps with a different xpub for each potential scheme. E.g. there&#39;s m/48&#39;&#xA;&gt; native SegWit now, MuSig and/or or Tapleaf based multisig in the future, or&#xA;&gt; even generic Miniscript support.&#xA;&gt;&#xA;&#xA;I considered Signers signaling capabilities (for a different reason), but&#xA;opted against it because it further complicates the scheme. Also BIP48-like&#xA;proposals are made redundant with the use of output descriptors.&#xA;&#xA;&#xA;&gt; * the idea of only storing the receive descriptor, not the change&#xA;&gt; descriptor, is fine by me, though I&#39;d prefer an extension to the descriptor&#xA;&gt; format to deal with this&#xA;&gt;&#xA;&#xA;That&#39;s not quite accurate. The spec stores the top-level descriptor&#xA;(XPUB/*) along with the path restrictions (/0/*,/1/*), not the receive&#xA;descriptor.&#xA;&#xA; The path restrictions would allow you to extend on the spec. There&#39;s also&#xA;a VERSION field.&#xA;&#xA;Best,&#xA;Hugo&#xA;&#xA;&#xA;&gt;&#xA;&gt; Sjors&#xA;&gt;&#xA;&gt; &gt; Op 5 apr. 2021, om 09:02 heeft Hugo Nguyen via bitcoin-dev &lt;&#xA;&gt; bitcoin-dev at lists.linuxfoundation.org&gt; het volgende geschreven:&#xA;&gt; &gt;&#xA;&gt; &gt; Hi all,&#xA;&gt; &gt;&#xA;&gt; &gt; Please find below the complete draft of the Bitcoin Secure Multisig&#xA;&gt; Setup (BSMS) BIP. The spec has gone through a number of important updates&#xA;&gt; in the last month or so. Thanks everyone who has participated in the review&#xA;&gt; process.&#xA;&gt; &gt;&#xA;&gt; &gt; As a PR: https://github.com/bitcoin/bips/pull/1097&#xA;&gt;&#xA;&gt;&#xA;-------------- next part --------------&#xA;An HTML attachment was scrubbed...&#xA;URL: &lt;http://lists.linuxfoundation.org/pipermail/bitcoin-dev/attachments/20210409/754162ae/attachment-0001.html&gt;</html></oembed>