I think, locality is the key here. Back to the roots of bitchat. But other than "chat only with who's in reach of your antenna", use the antenna to collect and broadcast keys. And then use these keys to limit the chat with encryption! Key leaking will still be a problem sometimes but at least it would work for some time for most locations. My street chat would remain private but some "Pub-key Bar" chat would probably get spammed and would have to rotate keys often.

Reply to this note

Please Login to reply.

Discussion

So every user could pick their own deterministic symmetric key to encrypt messages while broadcasting the key locally and collecting other keys, too. When messages are received with other known keys, these keys can also be used for own messages, so maybe a location will end up using just one key, making it easier for people living at the far extreme of the locality to be able to read all messages.

With the above, local chats would be encrypted but sometimes we want proof of locality for local plain text reports - reports/live footage/fotos/... known to have emerged from a specific location. Crypto can certainly help there, too. So some key hashes could be published for a geohash ahead of time but only the group members know the keys - again, only transmitted via local radio. Now, reports signed with those keys would have a high assurance of emerging from that location but other group members would have to check on those and confirm/deny having seen them on local radio.

This is basically the architecture of contact tracing apps, right? I think this could work!