ZmnSCPxj [ARCHIVE] on Nostr: š
Original date posted:2022-04-25 š Original message:Good morning Zac, > On ...
š
Original date posted:2022-04-25
š Original message:Good morning Zac,
> On Mon, 25 Apr 2022 at 07:36, ZmnSCPxj <zmnscpxj at protonmail.com> wrote
>
> > CTV *can* benefit layer 2 users, which is why I switched from vaguely apathetic to CTV, to vaguely supportive of it.
>
>
> Other proposals exist that also benefit L2 solutions. What makes you support CTV specifically?
It is simple to implement, and a pure `OP_CTV` SCRIPT on a P2WSH / P2SH is only 32 bytes + change on the output and 32 bytes + change on the input/witness, compared to signature-based schemes which require at least 32 bytes + change on the output and 64 bytes + change on the witness ***IF*** they use the Taproot format (and since we currently gate the Taproot format behind actual Taproot usages, any special SCRIPT that uses Taproot-format signatures would need at least the 33-byte internal pubkey revelation; if we settle with the old signature format, then that is 73 bytes for the signature).
To my knowledge as well, hashes (like `OP_CTV` uses) are CPU-cheaper (and memory-cheaper?) than even highly-optimized `libsecp256k1` signature validation, and (to my knowledge) you cannot use batch validation for SCRIPT-based signature checks.
It definitely does not enable recursive covenants, which I think deserve more general research and thinking before we enable recursive covenants.
Conceptually, I see `OP_CTV` as the "AND" to the "OR" of MAST.
In both cases, you have a hash-based tree, but in `OP_CTV` you want *all* these pre-agreed cases, while in MAST you want *one* of these pre-agreed cases.
Which is not to say that other proposals do not benefit L2 solutions *more* (`SIGHASH_ANYPREVOUT` when please?), but other proposals are signature-based and would be larger in this niche.
Regards,
ZmnSCPxj
Published at
2023-06-07 23:07:52Event JSON
{
"id": "3c8a57465dc69cfbaf8884ed8f58f2d7efd6968581c1ad116e531240b9aaffe7",
"pubkey": "4505072744a9d3e490af9262bfe38e6ee5338a77177b565b6b37730b63a7b861",
"created_at": 1686179272,
"kind": 1,
"tags": [
[
"e",
"2ad3d3403e1d63b96ae96eb1c1f2ba31d1c1dccbc5720a099543ffc26240da8b",
"",
"root"
],
[
"e",
"6d91cf166e5d82bab66c44c27960acafa304ae4e6cbafcc88b3037c49a9578d3",
"",
"reply"
],
[
"p",
"4137bb41a55a1c2c51d18f37f33cf0c29082422c56398d859ff1085f29eebd4b"
]
],
"content": "š
Original date posted:2022-04-25\nš Original message:Good morning Zac,\n\n\u003e On Mon, 25 Apr 2022 at 07:36, ZmnSCPxj \u003czmnscpxj at protonmail.com\u003e wrote\n\u003e\n\u003e \u003e CTV *can* benefit layer 2 users, which is why I switched from vaguely apathetic to CTV, to vaguely supportive of it.\n\u003e\n\u003e\n\u003e Other proposals exist that also benefit L2 solutions. What makes you support CTV specifically?\n\nIt is simple to implement, and a pure `OP_CTV` SCRIPT on a P2WSH / P2SH is only 32 bytes + change on the output and 32 bytes + change on the input/witness, compared to signature-based schemes which require at least 32 bytes + change on the output and 64 bytes + change on the witness ***IF*** they use the Taproot format (and since we currently gate the Taproot format behind actual Taproot usages, any special SCRIPT that uses Taproot-format signatures would need at least the 33-byte internal pubkey revelation; if we settle with the old signature format, then that is 73 bytes for the signature).\nTo my knowledge as well, hashes (like `OP_CTV` uses) are CPU-cheaper (and memory-cheaper?) than even highly-optimized `libsecp256k1` signature validation, and (to my knowledge) you cannot use batch validation for SCRIPT-based signature checks.\nIt definitely does not enable recursive covenants, which I think deserve more general research and thinking before we enable recursive covenants.\n\nConceptually, I see `OP_CTV` as the \"AND\" to the \"OR\" of MAST.\nIn both cases, you have a hash-based tree, but in `OP_CTV` you want *all* these pre-agreed cases, while in MAST you want *one* of these pre-agreed cases.\n\nWhich is not to say that other proposals do not benefit L2 solutions *more* (`SIGHASH_ANYPREVOUT` when please?), but other proposals are signature-based and would be larger in this niche.\n\nRegards,\nZmnSCPxj",
"sig": "f7b3c8df1ce639fe9f80581d9bb30e428e36424fd55a3c4cc0f4ee9b2ee5b260b049d258abb7c5d26c70eda2fd03d0c4f233c0640340f8af29dc50a04baef300"
}