Elektrine lite

← Feed

@hallam@infosec.exchange

Post #2175102

2025-09-17 22:07 UTC

Big progress on my @nyone scheme which allows people to exchange contact card information by means of DNS handles or QR codes in an industry standard format (JSContact) with extensions that support inclusion of cryptographic credentials linked to specific applications and automatic updates. Why is this important? Because once Alice and Bob exchange their contact information, they each have all the contact addresses and all the cryptographic credentials they support, both today and in the future. If Alice adds a Signal account to her card after they exchanged contacts, Bob can contact her on Signal without any need for them to meet up again. The Signal option simply appears in his contacts app. [Now yes, this does raise the problem of how to efficiently notify a set of subscribers to one or more elements in collection of objects of an update to that object. But that is a very general problem and we could apply a solution to that problem to many things. Yes, yes, Bloom filters to you as well]. The piece of the puzzle I solved today is the problem of maintaining multiple identities which I perhaps referred to a little flippantly at HOPE 2025: If you don't want your grandmother knowing you are on FetLife, don't put it in your contact card. While this advice is surely sound, what if Alice is exchanging her contact information for her addiction support group? We want that to still use modalities like QR codes and NFC and DNS Handles. How can we do that and avoid accidental disclosures? My solution is that the organization runs a key service for members which will provide keys to decrypt documents encrypted under the club key but ONLY to members of the club. I won't go into the technical details here but of course I would use threshold cryptography for this. The club service can control decryption but cannot decrypt and has no idea who they are decrypting for. So, 'all' Alice needs to do is to use an additional layer of encryption to encrypt the club contact card under the club key and to specify that in a format that doesn't reveal which key was involved to anyone that isn't a member of the club. Can all be built with code I already have.

Replies (0)

No replies.