-
lovetox
about occupant-id calculation
-
lovetox
real jid + room jid + secret, should work?
-
lovetox
and the secret does not need to be per room, it could be one secret for the whole server
-
pep.
lovetox, it could be, but then IDs would be the same if a room is destroyed and then recreated and occupied by different users
-
pep.
(or the same users, it doesn't actually matter)
-
lovetox
hm not sure this is a problem?
-
lovetox
you are still not able to find out from the hash the real jid, it does not matter how often you recreate the room
-
Zash
room destroyed, recreated by new owner, who could then verify a occupant-id→jid relation
-
pep.
lovetox, how do you find the jid from the hash?
-
pep.
I mean technically a server could do occupant-id == jid, but I doubt anyone is going to do this
-
lovetox
pep., that would be very bad and a violation of the xep
-
lovetox
> Additionally, a MUC service SHOULD generate the identifier such that the occupant identifier of a user in one room of the service does not match the occupant identifier of the same user in another room of the same service.
-
pep.
Ok but that wasn't my question
-
pep.
I was trying to understand your message
-
lovetox
the goal of the xep is to have a anonym identifier, recreating the room, makes the identifier not less anonym
-
lovetox
so why would it need to change?
-
lovetox
Zash, your argument i would counter with, a new owner sees the real jid anyway, he does not need to unmask occupant-id
-
pep.
Yet another thing that should be removed :(
-
pep.
I don't understand why room owners/moderators need to see real jids
-
moparisthebest
> real jid + room jid + secret, should work? Why not just generate it randomly though ↺
-
lovetox
per room?
-
moparisthebest
> I don't understand why room owners/moderators need to see real jids To ban them across other rooms right? :) ↺
-
moparisthebest
> per room? Yes ↺
-
lovetox
yes of course this would be even better, my question was about the minimal necessary impl
-
pep.
moparisthebest, I only need the nick for this, and it's easy enough to see it's the same person
-
moparisthebest
Not necessarily, and especially not enough to add to rtbl
-
pep.
I guess I'd be ok for something like a rtbl to require operator intervention
-
singpolyma
You can't prevent muc service from seeing jid unless you use anonymous JIDs of some kind
-
pep.
singpolyma, yeah, occupant-ids :)
-
Zash
> yes of course this would be even better, my question was about the minimal necessary impl 1. Generate a random secret per room 2. HMAC(occupant real JID, room secret) 3. ??? 4. PROFIT! ↺
-
pep.
(Even though I agree that's not perfect, it's not addressable etc.)
-
singpolyma
pep.: No, occupant id is just a new privacy leak for non moderators in semi-anon rooms. Does nothing for what the service itself sees
-
Zash
pep., imagine a flag you set when you join that swaps the occupant id and the nickname
-
lovetox
good news, ejabberd implemented a first draft of occupant-id
-
pep.
Zash, not sure I understand. Actually same for singpolyma
-
singpolyma
pep.: occupant id provides more info about room participants to all other participants. It is a privacy leak vs not having it
-
Zash
pep., in the future, we could use do an opt-in thing that makes occupant JIDs be room@muc.host/occupant-id, via a flag you set in your join presence
-
singpolyma
The room service still must see the jid with or without occupant id
-
Zash
then we can slowly move to that being the default
-
pep.
Zash, ok yeah. That's a discussion I'd be happy to have. (I don't want these defaults but the direction is somewhere around there)
-
pep.
singpolyma, yes the room service still sees it, but that's server operator level, not any moderator
-
singpolyma
Zash: yes, that's a very interesting direction for sure. I'm already sending user nickname in muc presence along similar thoughts
-
lovetox
and how is the nickname communicated ?
-
Zash
XEP-0172 probably
-
pep.
<nick/>
-
lovetox
how does a nickname change work then?
-
singpolyma
New presence with new <nick>
-
lovetox
you can write a new muc xep :)
-
Zash
you probably send a new stanza with a new nick
-
Zash
and then ever so slowly we turn MUC into MIX without anyone noticing!
-
pep.
lovetox, it doesn't really deviate from MUC fwiw, that's just an improvement on it
-
pep.
Like the many other MUC extensions
-
pep.
That every one rediscovers every so often after having praised MIX because it did it and not MUC
-
pep.
singpolyma, I'm not dead set on occupant-id fwiw, an id that contains less info is also good to me :)
-
lovetox
there aremany flows in muc that depend on the nickname
-
moparisthebest
Isn't random per room much easier than anything with hmac or anything else at all?
-
lovetox
it would be a pretty huge extension, that you even need to make backwards compatible
-
Zash
eventually we'll have a pile of MUC extensions that effectively turn it into MIX, and then moving to MIX might be easier.
-
lovetox
no then it becomes even less likely
-
lovetox
the problem with nobody moving to mix, is cost/benefit
-
pep.
I agree with lovetox :P
-
lovetox
make MUC more like MIX and this ratio gets worse
-
lovetox
> I agree with lovetox :P i screenshot that
-
moparisthebest
> I guess I'd be ok for something like a rtbl to require operator intervention pep.: The main contributor to rtbl is a muc hosted on a server without the server operator being involved at all :P ↺
-
pep.
Maybe that's an issue? Dunno
-
badlop
Generate a random secret per room <-- why per room and not simply for the whole server deployment?
-
moparisthebest
badlop: because then a user can identify the same user across rooms
-
moparisthebest
This isn't IRC where 1 user is the same across all rooms on a server
-
Zash
> room destroyed, recreated by new owner, who could then verify a occupant-id→jid relation ↑ ↺
-
pep.
moparisthebest, the MUC jid is generally included in there too, so it's not the same id across all the service✎ -
badlop
aha! ok
-
pep.
moparisthebest, the MUC jid is generally included in there too, so it's not the same id across the service ✏
-
Zash
where "new owner" would be someone who was previously not allowed to see the real jid
-
moparisthebest
How does a client detect it's a "new room" with a new owner?
-
Zash
they're suddenly the owner of it
-
pep.
They don't have the same occupant-id? :x
-
pep.
They've received a <destroy/> payload before for this room
-
moparisthebest
Clients could also just regenerate occupant-id every so often, and on every nick change at least
-
Zash
On the other hand, one could just prevent rooms from ever being recreated, solves a bunch of problems.
-
moparisthebest
> They've received a <destroy/> payload before for this room And on that ↺
-
Zash
Clients don't generate occupant-id?
-
Zash
MUC does
-
pep.
And their client hasn't registered it and is still rejoining the room
-
moparisthebest
What's lovetox talking about generating then
-
Zash
Didn't someone wonder just the other day why a room they destroyed was suddenly populated by new users and new owner?
-
lovetox
moparisthebest, i was interested for the server impl
-
moparisthebest
Aaahhhh
-
lovetox
because i wanted to support badlop in implementing this for ejabberd
-
Zash
MUC rooms has configuration options, which would presumably be as persistent as the room. Easy enough to stick a hidden config option with the per-room secret there.
-
lovetox
yes Holger had the same idea, and i proposed it
-
lovetox
this would make it very stable, and survives, restore procedures, and moving to other machines etc, as long as you backup your database