Serious question from a non-cryptographer pleb and important discussion for the future of Nostr.

1. Private keys derive public keys; but is it possible to derive a new private key associated with the old public one? (And burn the old nsec)

—— In the regular world, I often change my passwords frequently for opsec. How does one protect their npub on Nostr? (Saying “be smart with your private key” simply won’t cut it if we want mass adoption)

—— is there a technical solution that would allow users to change up their nsec every so often to prevent compromise?

2. I’ve seen a few accounts here get compromised. What solutions do we have if this happens?

—— the only thing I can think of is having a second “ICE” npub posted on your bio that will only post in the event the main npub gets compromised. Not a perfect solution but could at least provide some assurance that the main account was hacked. (Granted most followers would never see it, but at least would provide some backup incase of anything nefarious being posted “as you”)

Obviously being smart with keys and using solutions like nsecbunker/extensions/signing devices is important, but they don’t address what happens should your main account be compromised. Anyone thinking about these things? #asknostr

Cc: nostr:npub180cvv07tjdrrgpa0j7j7tmnyl2yr6yr7l8j4s3evf6u64th6gkwsyjh6w6 nostr:npub1xtscya34g58tk0z605fvr788k263gsu6cy9x0mhnm87echrgufzsevkk5s nostr:npub16c0nh3dnadzqpm76uctf5hqhe2lny344zsmpm6feee9p5rdxaa9q586nvr nostr:npub1jlrs53pkdfjnts29kveljul2sm0actt6n8dxrrzqcersttvcuv3qdjynqn nostr:npub1lunaq893u4hmtpvqxpk8hfmtkqmm7ggutdtnc4hyuux2skr4ttcqr827lj nostr:npub137c5pd8gmhhe0njtsgwjgunc5xjr2vmzvglkgqs5sjeh972gqqxqjak37w nostr:npub1guh5grefa7vkay4ps6udxg8lrqxg2kgr3qh9n4gduxut64nfxq0q9y6hjy nostr:npub1qny3tkh0acurzla8x3zy4nhrjz5zd8l9sy9jys09umwng00manysew95gx nostr:npub12rv5lskctqxxs2c8rf2zlzc7xx3qpvzs3w4etgemauy9thegr43sf485vg

Reply to this note

Please Login to reply.

Discussion

To change your public key, send your coins to a new address that you control.

1) It's not possible from a cryptographic point of view;

2) We don't have any official solution, only some proposal to invalidate and promote a new key pair; one solution by nostr:npub1l2vyh47mk2p0qlsku7hg0vn29faehy9hy34ygaclpn66ukqp3afqutajft uses a secondary key, similari to what you envisioned, to signal (via clients automation) the burned key and to autofollow the new one.

It's an important issue and I agree it's critical to address it for mass adoption. I think we will use bunkers, probably multi signature (so mainly custodial, but with a good overall security) and key rotation will be used only for exceptional events.

Incredibly helpful. That’s kind of what I thought about the cryptography standpoint.

I had not heard about the idea from Pablo. Sounds like a promising solution. Hopefully more people are thinking about this now because compromised keys will certainly be coming down the road.

1. Practically speaking, no. The fact that the compute required to do this is so high is the only reason it is secure and works in the first place. But maybe something could be done by chaining keys rather than using the master key directly? I think the limitation here is making the "username" the public key.

It would be nice to have some kind of backup key. Perhaps one could generate two keys, one is used on the regular and the other is dumped offline for emergencies or more security conscious users.

Then in the event of a breach there could be a procedure to "revoke" or "redirect" that public key to a specific other private key (set ahead of time to prevent stealing the public key).

It would be interesting if Nostr supported some form of dual signature or certificate chaining. Perhaps there are two account keys, and one is capable of redirecting or taking the public key and generating a new private key for routine actions, while the other is used to sign routine actions.