I'm new to Reticulum. I found it because I wanted to make something just like it, so searched for prior art. Proof of the design's elegance! Reticulum is a cool name by the way. Was it inspired by Neal Stephenson, or just a coincidence? Anyway, what I really want to know is how people are managing their identity (or identities). If I want to use Reticulum on my phone, and on my laptop, and I'm sending LXMF messages to someone, then I want it to be transparent to them when I switch devices. I know enough to realise that this isn't how it works out of the box. My phone and my laptop should have different identities, or things won't work very well. So for multiple devices to act as 'me', I want something else, not a device-local identity. But what? A Network Identity perhaps, aggregating my device identities? Or an always-on device, running some server which has my master identity and stores and forwards all my messages to all my devices? Or is this what the Group message functionality is for, or will become? Thanks for any pointers.
Practicalities of Identities
Started by Alex 5b8d93cb6c64815a... ·
Hello! I'm new too - and it's currently something I'm looking into myself.
My understanding is the way a lot of people choose to handle this is either:
a) sign a message that can only be from your original ID and that list your other ids (alex_sideband, alex_phone1, etc). I was thinking doing that from my nomadpage as everything is cryptographically signed in rns.
b) have a permanently connected node and put your ID there. There remote connect to that node by whatever means you prefer. I know someone who browse his LXMF from his iphone by having a tailscale connection to a box back home.
c) someone has built a federated system. I haven't tried it. It's the author of 'retichat' on IOS, and that feature came out like 2 days ago. https://github.com/jrl290/RFed is the repo.
At first i had the same problem, wanting to have a common identity because i was using different devices and applications.
I even exported and imported my main identity between sideband and columba. Well in the end i just accepted that i have multiple identities. Why bother to try and centralize it, as long as i can communicate here on reticulum i don't see a need to have a unique identity. If needed i can just reveal "hey i'm also x and y" and confirm from x and y.
Philosophically speaking, some say that attachment to identity is to be abandoned, as it's one of many things that keeps us captive in the endless cycle of suffering, and i find some beauty in this :). Reticulum doesn't care about the transport medium, i don't care about a fixed identity. I am on reticulum, nothing else.
On the pragmatical side i think just using similar names for multiple identities is the most practical and require no additional steps.
There's been a few discussion threads about this here and on the old Matrix chat before we moved to dog-fooding RNS-based communications.
Some people think it requires multicast/group messaging to provide this kind of user-identity functionality on multiple devices. I don't believe it does, but I haven't had time to put towards a solution (and my own skillset to make it happen.)
NONGKHAEM_BKK_TH wrote:
Hello! I'm new too - and it's currently something I'm looking into myself.
My understanding is the way a lot of people choose to handle this is either:a) sign a message that can only be from your original ID and that list your other ids (alex_sideband, alex_phone1, etc). I was thinking doing that from my nomadpage as everything is cryptographically signed in rns.
b) have a permanently connected node and put your ID there. There remote connect to that node by whatever means you prefer. I know someone who browse his LXMF from his iphone by having a tailscale connection to a box back home.
c) someone has built a federated system. I haven't tried it. It's the author of 'retichat' on IOS, and that feature came out like 2 days ago. https://github.com/jrl290/RFed is the repo.
offtopic: rfed is cool but heavily vibecoded....
ontopic vvv
mark has included a group chat script into nomadnet, you could use it for that purpose
also, try out rrc
Thanks for the replies, all.
It seems people are solving this problem in different ways, which means there isn't yet a convention for how to do it.
I think it is important to be able to establish one or more personal identities, orthogonal to the devices they are used on. When I'm talking to someone, I often want to know who it is, for many good reasons. And I don't want to have to manually verify who they are every time they get a new device. But this kind of personal identity is a separate concept to reticulum network identities, even if the same mechanisms (i.e. public/private keys) could be used to implement both concepts.
I say I don't want to have to manually verify who someone is, but an automatic mechanism for doing it would be fine. So imagine I am configuring a new device, and so it gets a new reticulum identity. What if I can also configure it with the public key of each of my other devices, as a claim that this device is operated by the same person as those others. Then imagine some protocol, either extending LXMF or on top of it, where a third-party can ask my device for this list, and then query one or more of my other devices to confirm my claim (they each must also have such a list which should now include my new device). Then when I message someone (or post on a forum), they can work out that they've already been in contact with me, and add this device to their single entry for me in their address book. That would get me my requirement of a personal identity othogonal to an rns identity.
Another requirement would be to forward messages sent to one device to my other devices. It could be done by the sender, but that doesn't seem ideal. Better to send to the last of my devices that they've heard from, and then it's up to that device to forward the message on to my other devices.
What I like about this solution is that preserves the decentralised ethos of reticulum -- no one of my devices is the 'center' of my personal identity. I can lose any one of them and simply cut them out of the list that the others publish. There would be a lot more details to work out, e.g. what if nodes disagree on their lists? What if one node gets compromised and I want to invalidate it, but we also don't want this mechanism to open the door to abuse, etc.
Would such a protocol be a good addition? Is there such a thing already? Would it fit into LXMF, or be something to add as another protocol layer for applications which care about personal identity to use?
BTW, Alex2 is also me, on another device. See how
this is awkward to do manually? :)