straycat on Nostr: I’m thinking: NIP: vanilla ring signatures event type: any authored by a one time, ...
I’m thinking:
NIP: vanilla ring signatures
event type: any
authored by a one time, throwaway pubkey
special tag:
[
“ring-signature”,
“[<pk1>, <pk2>, …]”,
<ring-signature>
]
The message that is signed by the ring signature will be whatever is in the content field.
The fact that we’re using a one-time use throwaway pubkey means that WoT will not be a feasible method to prevent spam. It will therefore be recommended but optional to use something like PoW for spam mitigation. If spam becomes a problem, relays can reject any note with the ring signature tag that does not meet the PoW threshold.
And that’s it. Pretty simple.
Published at
2025-04-20 19:42:37Event JSON
{
"id": "9c925f3499b83ece46b494492b5982f1704352eb960e09ff0eecb5fd870409fe",
"pubkey": "e5272de914bd301755c439b88e6959a43c9d2664831f093c51e9c799a16a102f",
"created_at": 1745178157,
"kind": 1,
"tags": [
[
"e",
"60c3bc0adc50191201928cfa5415aee6c6dca6eb8bbebe487af89df5e7d17f71",
"",
"root"
],
[
"e",
"d51031ef41eb9863cb716a4e7c170dae36f05646a5895b08bd2ffbf227e38b30",
"",
"reply"
],
[
"p",
"c230edd34ca5c8318bf4592ac056cde37519d395c0904c37ea1c650b8ad4a712"
],
[
"p",
"df67f9a7e41125745cbe7acfbdcd03691780c643df7bad70f5d2108f2d4fc200"
]
],
"content": "I’m thinking: \n\nNIP: vanilla ring signatures\n\nevent type: any\n\nauthored by a one time, throwaway pubkey\n\nspecial tag:\n[\n“ring-signature”,\n“[\u003cpk1\u003e, \u003cpk2\u003e, …]”,\n\u003cring-signature\u003e\n]\n\nThe message that is signed by the ring signature will be whatever is in the content field. \n\nThe fact that we’re using a one-time use throwaway pubkey means that WoT will not be a feasible method to prevent spam. It will therefore be recommended but optional to use something like PoW for spam mitigation. If spam becomes a problem, relays can reject any note with the ring signature tag that does not meet the PoW threshold. \n\nAnd that’s it. Pretty simple.",
"sig": "2393be96481c0ef1e1d0bf737eeea076238ee0a4c8c01be145dfae8493b912e18cf73d354cd7b5b2768634d793638cef48e7dab68d9e6e07ae184c82e8767808"
}