Is there a Nostr equivalent of cleartext PGP signatures? This is something I'd need to switch over from PGP for Bull Bitcoin's signed and timestamped invoice protocol

Reply to this note

Please Login to reply.

Discussion

all events are signed and all events include timestamps as the created_at field.

There is no need to reinvent PGP haha. Nostr did not reinvent Schnorr. Nostr uses BIP340 Schnorr signatures.

Nothing is going to give you better timestamping than Bitcoin’s immutable chain. #Nostr is far from immutable and isn’t synchronized.

Im not going to switch timestamping to nostr. I would use nostr key for signatures as there is more adoption of nostr for reputation than pgp now that keybase looks effectively dead

What I want to know is simply if nostr message signing supports cleartext signatures

No, Schnorr does not.. you can take a hash of your clear text and sign that though! That should be sufficient for timestamping. Sign a tamper-proof hash of the plaintext!

The use case requires a "noob" to be able to manually review the content of a signed message visually and validating the signature by copy/pasting the clear text signature. Adding a hashing step sounds trivial but makes it far less user friendly

Visual verification like that would indeed be easier with PGP. One more extra step for noobs, and you’ve lost em. I understand!

Like I said, that would be you using BIP340 Schnorr. If you don’t need counterparties to decrypt your message, that is definitely sufficient over PGP. Timestamping doesn’t need PGP, you’re right.

We’re working on a standalone Schnorr library in Go that aligns with BIP340 standards for #Nostr. Will release soon! You can use it easily since Go works on any OS. If interested, I’ll expedite its release and link ya!

Why PGP with ECC signatures are not working?

You can do open timestamps with nostr events.

https://github.com/nostr-protocol/nips/blob/master/03.md

I'm not familiar with what you need for your invoices but you can almost certainly do something with Nostr. Happy to chat specifics if you want.