ZmnSCPxj [ARCHIVE] on Nostr: š
Original date posted:2019-01-22 š Original message:Good Morning Matt, > ### ...
š
Original date posted:2019-01-22
š Original message:Good Morning Matt,
> ### ZmnSCPxj,
>
> I'm intrigued by this mechanism of using fixed R values to prevent multiple signatures, but how do we derive the R values in a way where they are
unique for each blockheight but still can be used to create signatures or verify?
One possibility is to derive `R` using standard hierarchical derivation.
Then require that the staking pubkey be revealed to the sidechain network as actually being `staking_pubkey = P + hash(P || parent_R) * G` (possibly with some trivial protection against Taproot).
To sign for a blockheight `h`, you must use your public key `P` and the specific `R` we get from hierarchical derivation from `parent_R` and the blockheight as index.
Regards,
ZmnSCPxj
Published at
2023-06-07 18:15:59Event JSON
{
"id": "098f7cbadb56cfd480368382b53fd0d7de8dff7f2d72d026ea4be4fe1aa06cd4",
"pubkey": "4505072744a9d3e490af9262bfe38e6ee5338a77177b565b6b37730b63a7b861",
"created_at": 1686161759,
"kind": 1,
"tags": [
[
"e",
"4df79c01c3ed2b69e2412feaaaf51b7a98cb72fa692aaad7d28519466f8f3082",
"",
"root"
],
[
"e",
"fb824aa7f64c4e634b3fed24e522b71ae47224ef59f12d613885be82ecd4ab12",
"",
"reply"
],
[
"p",
"4a70cd64c9c91d9c34ef7c615f6c033ebd7c7bb2a1c54f7ca6780aef2b9014e6"
]
],
"content": "š
Original date posted:2019-01-22\nš Original message:Good Morning Matt,\n\n\u003e ### ZmnSCPxj,\n\u003e\n\u003e I'm intrigued by this mechanism of using fixed R values to prevent multiple signatures, but how do we derive the R values in a way where they are\nunique for each blockheight but still can be used to create signatures or verify?\n\nOne possibility is to derive `R` using standard hierarchical derivation.\nThen require that the staking pubkey be revealed to the sidechain network as actually being `staking_pubkey = P + hash(P || parent_R) * G` (possibly with some trivial protection against Taproot).\nTo sign for a blockheight `h`, you must use your public key `P` and the specific `R` we get from hierarchical derivation from `parent_R` and the blockheight as index.\n\n\n\nRegards,\nZmnSCPxj",
"sig": "aa90c0bbf5fdfeb0a405391a8ac8653990648b4b0d54ea12b43d1e0d80067c9810b9dd73c86c62f4a7431a0b67aaef20b31aca3699d29f12f7e76f00c8389657"
}