Luke Dashjr [ARCHIVE] on Nostr: 📅 Original date posted:2017-04-08 📝 Original message:I think it might be ...
đź“… Original date posted:2017-04-08
📝 Original message:I think it might be important that the mandatory commitment expire as in
Greg's proposal - when we do eventually hardfork, it will be simpler to do in
a safe manner if such a commitment in the fake "old block" is not required.
I don't like your proposal because it allows ASICBoost. ASICBoost effectively
makes SHA2 semi-ASIC-resistant. ASIC-resistance raises the barrier of entry to
new mining chip manufacturers, and gives a larger advantage to the miners able
to make use of it. Instead, IMO we should fix the vulnerability exploited by
ASICBoost entirely to keep SHA2 as ASIC-friendly as possible - or change the
PoW to an algorithm that is more ASIC-friendly.
That being said, I don't think I would oppose the proposal if it gained
notably better support than Segwit currently has (as yet another compromise),
and the above concerns were addressed (eg, Bitfury and Canaan state they can
compete using ASICBoost and the patents are licensed freely to everyone).
Luke
On Saturday, April 08, 2017 12:05:16 AM Jimmy Song via bitcoin-dev wrote:
> I've gotten feedback from Adam Back that you actually don't need all 32
> bits in the header for overt ASICBoost, so I'm modifying my proposal. Of
> the 32-bit version field, bits 16 to 23 are reserved for miners, the
> witness commitment stays as defined in BIP-141 except that it's now
> required. BIP9 then is modified so that bits 16 to 23 are now no longer
> usable.
>
> On Fri, Apr 7, 2017 at 3:06 PM, Jimmy Song <jaejoon at gmail.com> wrote:
> > Hey everyone, This is an idea that I had about Segwit and Gregory's
> > proposal from yesterday that I wanted to run by everyone on this list.
> > I'm not at all sure what this would mean for non-upgraded nodes on the
> > network and would like feedback on that. This is not a formal BIP as
> > it's a modification to a previously submitted one, but I'm happy to
> > formalize it if it would help.
> > ----------------------------------------
> > MotivationOne of the interesting aspects of Gregory Maxwell’s proposal is
> > that it only precludes the covert version of ASICBoost. He specifically
> > left the overt version alone.
> >
> > Overt ASICBoost requires grinding on the version bits of the Block header
> > instead of the Merkle Root. This is likely more efficient than the Merkle
> > Root grinding (aka covert ASICBoost) and requires way less resources
> > (much less RAM, SHA256 calculations, no tx shuffling, etc).
> >
> > If we combine Gregory Maxwell’s proposal with BIP-141 (Segwit) and add a
> > slight modification, this should, in theory, make ASICBoost a lot more
> > useful to miners and appeal to their financial interests.
> > The Modification
> >
> > Currently, the version bits (currently 4 bytes, or 32 bits) in the header
> > are used for BIP9 signaling. We change the version bits to a nonce-space
> > so the miners can use it for overt ASICBoost. The 32-bits are now moved
> > over to the Coinbase transaction as part of the witness commitment. The
> > witness commitment goes from 38 bytes to 42 bytes, with the last 4 bytes
> > being used as the version bits in the block header previously. The
> > witness commitment becomes required as per Gregory Maxwell’s proposal.
> > Reasoning
> >
> > First, this brings ASICBoost out into the open. Covert ASICBoost becomes
> > much more costly and overt ASICBoost is now encouraged.
> >
> > Second, we can make this change relatively quickly. Most of the Segwit
> > testing stays valid and this change can be deployed relatively quickly.
> >
> > Note on SPV clients
> >
> > Currently Segwit stores the witness commitment in the Coinbase tx, so
> > lightweight clients will need to get the Coinbase tx + Merkle proof to
> > validate segwit transactions anyway. Putting block version information in
> > the Coinbase tx will not impose an extra burden on upgraded light
> > clients.
Published at
2023-06-07 17:59:45Event JSON
{
"id": "5a1c255f22eab742c427cd56b81fabb93ada01c9cabea02d5daef258663d8ce9",
"pubkey": "5a6d1f44482b67b5b0d30cc1e829b66a251f0dc99448377dbe3c5e0faf6c3803",
"created_at": 1686160785,
"kind": 1,
"tags": [
[
"e",
"b3abda28c58fcdd36a7f3d79347d12387effc8cb5f326fca3c05e821d4348755",
"",
"root"
],
[
"e",
"1009805ede19a98b0d4fc7559e4bffc9cc2469f0cef88ed4a7694e55f4c6233a",
"",
"reply"
],
[
"p",
"f38e3745cbc0df11360d95f78947ce7a35ff1510807f9fae029e4cdb2d8f039e"
]
],
"content": "📅 Original date posted:2017-04-08\n📝 Original message:I think it might be important that the mandatory commitment expire as in \nGreg's proposal - when we do eventually hardfork, it will be simpler to do in \na safe manner if such a commitment in the fake \"old block\" is not required.\n\nI don't like your proposal because it allows ASICBoost. ASICBoost effectively \nmakes SHA2 semi-ASIC-resistant. ASIC-resistance raises the barrier of entry to \nnew mining chip manufacturers, and gives a larger advantage to the miners able \nto make use of it. Instead, IMO we should fix the vulnerability exploited by \nASICBoost entirely to keep SHA2 as ASIC-friendly as possible - or change the \nPoW to an algorithm that is more ASIC-friendly.\n\nThat being said, I don't think I would oppose the proposal if it gained \nnotably better support than Segwit currently has (as yet another compromise), \nand the above concerns were addressed (eg, Bitfury and Canaan state they can \ncompete using ASICBoost and the patents are licensed freely to everyone).\n\nLuke\n\n\nOn Saturday, April 08, 2017 12:05:16 AM Jimmy Song via bitcoin-dev wrote:\n\u003e I've gotten feedback from Adam Back that you actually don't need all 32\n\u003e bits in the header for overt ASICBoost, so I'm modifying my proposal. Of\n\u003e the 32-bit version field, bits 16 to 23 are reserved for miners, the\n\u003e witness commitment stays as defined in BIP-141 except that it's now\n\u003e required. BIP9 then is modified so that bits 16 to 23 are now no longer\n\u003e usable.\n\u003e \n\u003e On Fri, Apr 7, 2017 at 3:06 PM, Jimmy Song \u003cjaejoon at gmail.com\u003e wrote:\n\u003e \u003e Hey everyone, This is an idea that I had about Segwit and Gregory's\n\u003e \u003e proposal from yesterday that I wanted to run by everyone on this list.\n\u003e \u003e I'm not at all sure what this would mean for non-upgraded nodes on the\n\u003e \u003e network and would like feedback on that. This is not a formal BIP as\n\u003e \u003e it's a modification to a previously submitted one, but I'm happy to\n\u003e \u003e formalize it if it would help.\n\u003e \u003e ----------------------------------------\n\u003e \u003e MotivationOne of the interesting aspects of Gregory Maxwell’s proposal is\n\u003e \u003e that it only precludes the covert version of ASICBoost. He specifically\n\u003e \u003e left the overt version alone.\n\u003e \u003e \n\u003e \u003e Overt ASICBoost requires grinding on the version bits of the Block header\n\u003e \u003e instead of the Merkle Root. This is likely more efficient than the Merkle\n\u003e \u003e Root grinding (aka covert ASICBoost) and requires way less resources\n\u003e \u003e (much less RAM, SHA256 calculations, no tx shuffling, etc).\n\u003e \u003e \n\u003e \u003e If we combine Gregory Maxwell’s proposal with BIP-141 (Segwit) and add a\n\u003e \u003e slight modification, this should, in theory, make ASICBoost a lot more\n\u003e \u003e useful to miners and appeal to their financial interests.\n\u003e \u003e The Modification\n\u003e \u003e \n\u003e \u003e Currently, the version bits (currently 4 bytes, or 32 bits) in the header\n\u003e \u003e are used for BIP9 signaling. We change the version bits to a nonce-space\n\u003e \u003e so the miners can use it for overt ASICBoost. The 32-bits are now moved\n\u003e \u003e over to the Coinbase transaction as part of the witness commitment. The\n\u003e \u003e witness commitment goes from 38 bytes to 42 bytes, with the last 4 bytes\n\u003e \u003e being used as the version bits in the block header previously. The\n\u003e \u003e witness commitment becomes required as per Gregory Maxwell’s proposal.\n\u003e \u003e Reasoning\n\u003e \u003e \n\u003e \u003e First, this brings ASICBoost out into the open. Covert ASICBoost becomes\n\u003e \u003e much more costly and overt ASICBoost is now encouraged.\n\u003e \u003e \n\u003e \u003e Second, we can make this change relatively quickly. Most of the Segwit\n\u003e \u003e testing stays valid and this change can be deployed relatively quickly.\n\u003e \u003e \n\u003e \u003e Note on SPV clients\n\u003e \u003e \n\u003e \u003e Currently Segwit stores the witness commitment in the Coinbase tx, so\n\u003e \u003e lightweight clients will need to get the Coinbase tx + Merkle proof to\n\u003e \u003e validate segwit transactions anyway. Putting block version information in\n\u003e \u003e the Coinbase tx will not impose an extra burden on upgraded light\n\u003e \u003e clients.",
"sig": "5cb4aaef7696cf3916bdb5d7a8eff84be1cfbc1c0221e00178f96e765bcfb28751c9cc7e5bf6a42bfd6ce40165293ced19af0e8b7ba435027687cf2a381e702f"
}