public inbox for bitcoindev@googlegroups.com
 help / color / mirror / Atom feed
From: Michael Folkson <michaelfolkson@protonmail•com>
To: Christopher Allen <ChristopherA@lifewithalacrity•com>
Cc: Bitcoin Protocol Discussion
	<bitcoin-dev@lists•linuxfoundation.org>,
	bitcoindev@groups•io
Subject: Re: [bitcoin-dev] MuSig2 derivation, descriptor, and PSBT field BIPs
Date: Tue, 23 Jan 2024 12:12:35 +0000	[thread overview]
Message-ID: <3PpTlvmcynhdlowdRZmbx8HBFe-hcaS408SL98B_0qe_6NF1tzaTBkG5xBLo656jvWJqgqQ7NM4YoZf9bvbqae6vk1uv3lsOujIseS4gE6U=@protonmail.com> (raw)
In-Reply-To: <CACrqygDY0p-trbHGyhg0_uyViyryyJqO-CkOS6+tknTUG05Wew@mail.gmail.com>

[-- Attachment #1: Type: text/plain, Size: 2837 bytes --]

Hi Christopher

In the absence of a response from someone who is working on MuSig2/FROST etc I did ask Tim Ruffing about the problems with using x-only pubkeys for MuSig2 etc in an (online) London Bitcoin Devs meetup [0] in 2022.

His response was:

"If you want to do more complex things, for example MuSig or more complex crypto then this bit is always a little pain in the ass. We can always get around this but whenever we do advanced stuff like tweaking keys, a lot of schemes involve tweaking keys, even Taproot itself involves tweaking, MuSig2 has key aggregation and so on. You always have to implicitly remember that bit because it is not explicitly there. You have to implicitly remember it sometimes. This makes specifications annoying. I don’t think it is a problem for security but for engineering it is certainly annoying. In hindsight it is not clear if we would make that decision again. I still think it is good because we save a byte but you can also say the increased engineering complexity is not worth it. At this point I can understand both points of view."

Hope this helps.

Thanks
Michael

[0]: https://btctranscripts.com/london-bitcoin-devs/2022-08-11-tim-ruffing-musig2/#a-retrospective-look-at-bip340

--
Michael Folkson
Email: michaelfolkson at [protonmail.com](http://protonmail.com/)
GPG: A2CF5D71603C92010659818D2A75D601B23FEE0F

Learn about Bitcoin: https://www.youtube.com/@portofbitcoin

On Tuesday, 16 January 2024 at 08:18, Christopher Allen via bitcoin-dev <bitcoin-dev@lists•linuxfoundation.org> wrote:

> On Mon, Jan 15, 2024 at 4:28 PM Ava Chow via bitcoin-dev <bitcoin-dev@lists•linuxfoundation.org> wrote:
>
>> I've also made a change to the PSBT fields BIP where the aggregate
>> pubkey is included as a plain pubkey rather than as xonly. I think this
>> change is necessary for to make discovering derived keys easier. The
>> derivation paths for derived keys contain the fingerprint of the parent
>> (i.e. the aggregate pubkey) and the fingerprint requires the evenness
>> bit to be serialized. So the aggregate pubkey in the PSBT fields need to
>> contain that evenness information in order for something looking at only
>> the PSBT to be able to determine whether a key is derived from an
>> aggregate pubkey also specified in the PSBT.
>
> The topic of some challenges in using x-only pubkeys with FROST recently came up in a conversation that I didn't completely understand. It sounds like it may be related to this issue with MuSig2.
>
> What are the gotcha's in x-only keys with these multisig protocols? Can you explain a little more? Any other particular things do we need to be careful about with x-only pubkeys? I had mistakenly assumed the technique was just a useful trick, not that it might cause some problems in higher level protocols.
>
> Thanks!
>
> -- Christopher Allen

[-- Attachment #2: Type: text/html, Size: 10921 bytes --]

      reply	other threads:[~2024-01-23 12:13 UTC|newest]

Thread overview: 3+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2024-01-15 23:29 Ava Chow
2024-01-16  8:18 ` Christopher Allen
2024-01-23 12:12   ` Michael Folkson [this message]

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to='3PpTlvmcynhdlowdRZmbx8HBFe-hcaS408SL98B_0qe_6NF1tzaTBkG5xBLo656jvWJqgqQ7NM4YoZf9bvbqae6vk1uv3lsOujIseS4gE6U=@protonmail.com' \
    --to=michaelfolkson@protonmail$(echo .)com \
    --cc=ChristopherA@lifewithalacrity$(echo .)com \
    --cc=bitcoin-dev@lists$(echo .)linuxfoundation.org \
    --cc=bitcoindev@groups$(echo .)io \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox