My #1 priority right now is to get encrypted DM's and group chat working. nostr:nprofile1qqsyvrp9u6p0mfur9dfdru3d853tx9mdjuhkphxuxgfwmryja7zsvhqpz3mhxue69uhhyetvv9ujuerpd46hxtnfduqs6amnwvaz7tmwdaejumr0dsq3gamnwvaz7tmjv4kxz7fwdehhxarj9e3xwdmg2sa 's proposal is nearing completion, but it requires a solid foundation of NIP 44 cryptography and NIP 59 wrapping.

If you have opinions on either of these, please chime in! I have written a summary issue here:

https://github.com/nostr-protocol/nips/issues/717

My personal goal is to have NIP 44 and 59 in a final-ish state by the end of today so we can finalize NIP 24 as early as next week along with implementations in Amethyst, Snort, 0xChat, and Coracle. We'll of course wait to merge until we have worked through all feedback.

I'm also working on PRs for adding NIP-44 support to nostr:nprofile1qqsyv47lazt9h6ycp2fsw270khje5egjgsrdkrupjg27u796g7f5k0spz3mhxue69uhhyetvv9ujuerpd46hxtnfduq3kamnwvaz7tmwdaehgu339e682mnwv4k8xct5wvhxxmmdqywhwumn8ghj7mn0wd68yttsw43zuam9d3kx7unyv4ezumn9wsqxk3rc and nos2x. If anyone out there maintains a signer application, please look into adding support sooner rather than later. It will be amazing to get everyone off of NIP 04.

I'm not trying to rush this because there's a bounty out, I'm just trying to keep the momentum we currently have built up. The bounty IMO should be shared among all early implementations and contributors. nostr:nprofile1qqs9336p4f3sctdrtft2wlqaq5upjz9azpgylhfd3dplwf005mfrr9spz3mhxue69uhhyetvv9ujuerpd46hxtnfduq3wamnwvaz7tmwdaehgu3wvekhgtnhd9azucnf0gq32amnwvaz7tm9v3jkutnwdaehgu3wd3skueq5rp9j7

Reply to this note

Please Login to reply.

Discussion

Maybe use Nostr to establish a multi-person channel, but use a secondary protocol to send messages more directly, like privately hosted or hidden relay services.

Encrypt messages with a shared private key, and encrypt the shared private key with each peer's public key, then transmit to each peer. Peer will encrypt/decrypt messages with the shared key. Peers may sign by own private to authenticate messages, allowing other peers to verify.

Generate new private keys upon membership shrink, or optionally upon any membership change for greater security (new peers can't read older messages).

For admin/moderation, a super key generates shared key(s).

This is essentially my design for https://github.com/nostr-protocol/nips/pull/706 aside from sending messages outside nostr. That could easily be added if there's a preferable transport protocol, but since you can recommend relays the group should use to communicate, it seems to me we basically have that.

Do you have a suggestion for an alternative transport protocol? Seems like gundb could work fine but I don't know the tradeoffs (since it's a group the scaling issues of DHTs probably don't apply).

the best option is the simplex chat protocol. The same has been mentioned by @jb55 @jack @DerekRoss etc...

Planning to look into it, but it seems like most people don't really know what they're recommending, so I'm not sure if the hype is warranted or not. It looks like you might work on Session chat? Do you guys use SimpleX over there?

I just heard of Simplex yesterday or the day prior, so I haven't looked into it much at all. If I can get ahead of my work, I might look into it more.

I'd also like to start actually contributing to code.

What languages would you recommend I learn? I am pretty versed in JS-based stuff, anything else? #askNostr

Javascript is the easiest way to get going, and there are lots of web clients out there (particularly in svelte). I've got lots of issues open at https://github.com/coracle-social/coracle/issues if you want to contribute to Coracle. Otherwise, you can find a list of projects here: https://github.com/aljazceru/awesome-nostr

One way you might consider contributing is by building data vending machines, in particular I'd be interested in one for search.

I have been trying to brush up my js a little bit. I'll see if i can do something there.

πŸ‘€

nostr:note16qdx9wkr8m3jqeyk2nk9n3ww69jyhj8thv5aje4u8pskjgfv785scqw3mz

πŸ‘€

nostr:note16qdx9wkr8m3jqeyk2nk9n3ww69jyhj8thv5aje4u8pskjgfv785scqw3mz