<oembed><type>rich</type><version>1.0</version><author_name>npub17cwk7hm623dm5npjzu8cvv994h43k2keanegs8w78xyvlez8hqqsqqmtzy</author_name><author_url>https://nostr.ae/npub17cwk7hm623dm5npjzu8cvv994h43k2keanegs8w78xyvlez8hqqsqqmtzy</author_url><provider_name>njump</provider_name><provider_url>https://nostr.ae</provider_url><html>📅 Original date posted:2020-03-04&#xA;📝 Original message:Hello,&#xA;&#xA;I noticed recently that a PR to Bitcoin Core that pretty much touched&#xA;everything my BIP-322 pull request touches (around the same&#xA;complexity) was merged without a thought given to BIP-322&#xA;compatibility, despite the BIP-322 PR being open for 2x the time. I&#xA;can only conclude from this that people dislike BIP-322 in its current&#xA;form, which the 9 month old pull request stagnating can probably&#xA;attest to.&#xA;&#xA;There are several things that I can do to make this a bit more&#xA;appealing to people, which would hopefully kick the progress on this&#xA;forward. I have already put in a non-trivial amount of energy and&#xA;effort into maintaining the pull request as is, so I&#39;d prefer if&#xA;people were harsh and unfiltered in their criticism rather than polite&#xA;and buffered, so I can beat this thing into shape (or abandon it, in&#xA;the worst case).&#xA;&#xA;=============&#xA;1. People use signmessage as a way to prove funds. This is misleading&#xA;and should be discouraged; throw the sign message stuff out and&#xA;replace it entirely with a prove funds system.&#xA;&#xA;I know in particular luke-jr is of this opinion, and Greg Maxwell in&#xA;https://github.com/bitcoin/bitcoin/pull/16440#issuecomment-568194168&#xA;leans towards this opinion as well, it seems.&#xA;&#xA;=============&#xA;2. Use a transaction rather than a new format; make the first input&#39;s&#xA;txid the message hash to ensure the tx cannot be broadcasted. This has&#xA;the benefit of being able to provide to an existing hardware wallet&#xA;without making any modifications to its firmware.&#xA;&#xA;I think Mark Friedenbach and Johnson Lau are of this opinion, except&#xA;Johnson Lau also suggests that the signature hash is modified, see&#xA;https://github.com/bitcoin/bips/pull/725#issuecomment-420040430 --&#xA;which defeats the benefit above since now hw wallets can no longer&#xA;sign.&#xA;&#xA;Prusnak (I think he works at Trezor; apologies if I am mistaken) is&#xA;against this idea, and proposes (3) below:&#xA;https://github.com/bitcoin/bips/pull/725#issuecomment-420210488&#xA;&#xA;=============&#xA;3. Use Trezor style&#xA;&#xA;See https://github.com/trezor/trezor-mcu/issues/169&#xA;&#xA;This has the benefit of already being adopted (which clearly BIP-322&#xA;is failing hard at right now), but has the drawback that we can no&#xA;longer do *generic* signing; we are stuck with the exact same&#xA;limitations as in the legacy system, which we kinda wanted to fix in&#xA;the updated version.&#xA;&#xA;=============&#xA;4. Introduce OP_MESSAGEONLY&#xA;&#xA;Quoting Johnson Lau at&#xA;https://github.com/bitcoin/bips/pull/725#issuecomment-420421058 :&#xA;&#34;&#34;&#34;&#xA;OP_MESSAGEONLY means the script following the code would never be&#xA;valid. For example, a scriptPubKey:&#xA;&#xA;OP_IF OP_MESSAGEONLY &lt;key_m&gt; OP_ELSE &lt;key_s&gt; OP_ENDIF OP_CHECKSIG&#xA;&#xA;For messaging purpose, OP_MESSAGEONLY is considered as OP_NOP and is&#xA;ignored. A message could be signed with either key_m or key_s.&#xA;&#xA;For spending, only key_s is valid.&#xA;&#xA;I don&#39;t think it is a big problem to consume a op_code. If this is a&#xA;real concern, I could modify it as follow: in message system,&#xA;OP_RETURN will pop the top stack. If top stack is msg in hex, it is&#xA;ignored. Otherwise, the script fails.&#xA;&#34;&#34;&#34;&#xA;&#xA;=============&#xA;5. Some other solution</html></oembed>