XSF Discussion - 2022-01-31


  1. phryk

    Were the XEPs for video calls and conferencing used in collaboration with the jitsi folks?

  2. phryk

    Were the XEPs for video calls and conferencing developed in collaboration with the jitsi folks?

  3. phryk

    Good morning everyone. I finally have the first draft for the central article done and would love if people could look and see if they find anything that's wrong. I put a render of it at https://docs.phryk.net/x/X%20as%20in%20Freedom.html – the sections "Free & Open standard" and "eXtensibility" especially contains things that people here know better where I'm not sure.

  4. phryk

    And with that, I'm off to sleep.^^

  5. phryk

    SVGs might look slightly less fancy because I haven't converted texts to paths yet.

  6. Menel

    phryk: > Were the XEPs for video calls and conferencing developed in collaboration with the jitsi folks? Jitsi does their own thing.

  7. moparisthebest

    "Interop via embedding our iframe" - jitsi

  8. pep.

    phryk: I'm no native but isn't "dissident" pejorative? I'd use activist instead probably

  9. edhelas

    moparisthebest exactly :D

  10. mjk

    phryk: > OTR only works for direct messaging – i.e. not for chatrooms, file transfers or calls. > ::: > OpenPGP works for direct messaging as well as chatrooms, but not for file transfers or calls. It's worth reminding the context of these statements: > OTR/PGP _in XMPP, in practice_ only work for ... There's no technical reason for being unable to encrypt files or verify caller identity with those

  11. mjk

    And... I'm not sure there's a spec for pgp muc, is there?

  12. mjk

    pep.: I'm no native either, but pretty sure it's not. It only means 'one who disagrees'

  13. pep.

    mjk: yeah that's also what I found as a definition. Somebody in opposition to.. I'd still prefer something more positive :)

  14. mjk

    Well, at least 'activist' is not equivalent, one can disagree passively :D

  15. pep.

    It's already depressing enough to see how #&%£@ stuff around us is, it's nice when words don't add another layer :)

  16. mjk

    I don't disagree :))

  17. pep.

    phryk: also I'm not that set on p2p being the bestest. It's all about that model. p2p often leaks metadata you'd rather keep for yourself.

  18. Zash

    You might think that p2p means "there are no servers". This isn't accurate. Instead, everyone is a server.

  19. pep.

    Yeah

  20. pep.

    It's all about threat model*

  21. edhelas

    Zash maybe we should do p2p over blockchain with e2ee to solve the issue

  22. Kev

    Just for a somewhat native speaker's perspective just on the English side - 'dissident' does have overtones, yes.

  23. Zash

    !slap edhelas

  24. edhelas

    Zash too bad for you, you'll not be part of the next multi-billion $ startup

  25. Zash

    I don't wanna!

  26. pep.

    phryk: re anonymity I find it weird that you discard using pseudonymity to then use "true anonymity" to talk about anonymity.

  27. pep.

    I'm curious about the expected reader of this article. I still find it too technical. Also, reality is not as rainbow and flowers as the article describes it. But I haven't finished reading and I'll come back to it later actually. It's good that this topic is brought up though :)

  28. pep.

    > The body governing XMPP is the [XSF] phryk, governing is a strong word, maybe something more alongside the lines of stewardship? The XSF only defines a process to publish specs that gravitate around XMPP. Nothing prevents another entity to start publishing specs on XMPP (and some already do).

  29. Zash

    _That_ is the true extensibility

  30. pep.

    I also find the title "Free & Open standard" deceitful. To me it relates to "Free & Open source", but in the first paragraph you say free as in free beer

  31. pep.

    And I'm yet to see a definition for open standard. Just sounds like another word that means everything and its opposite

  32. pep.

    (Same in FOSS tbh)

  33. Zash

    How about this one: https://www.itu.int/en/ITU-T/ipr/Pages/open.aspx

  34. Sam

    The usual reminder that it's "Tor" not "TOR" applies

  35. Sam

    The backronym came later and only applies to a specific part of the project.

  36. Zash

    ToR

  37. MattJ

    #NotTheOnionRouter

  38. pep.

    Taking about Tor, I felt like it was name-dropped in the article. Not really explained why it's needed

  39. pep.

    Also I'm not sure I'd attribute a phrase such as direct democracy to the XSF :/

  40. pep.

    The article, still

  41. pep.

    phryk: maybe you want feedback in another form? I feel like there's a lot more to say, details etc.

  42. moparisthebest

    phryk: also pgp does allow for encrypted file sharing

  43. phryk

    Okay, thanks a bunch for the feedback; yreading from top to bottom (and technically supposed to be in a meeting, but boss doesn't replay): * "dissident" was chosen over "activist" for associated connotations in leftist/anarchist spaces where "activists" are often perceived to care primarily about "optics". * mjk, XEP 373 ("OX") intro states "Therefore this XEP can be used for example to implement end-to-end encrypted Multi-User Chat" – i just assumed that means usually implementations support it? * pep, I actively said P2P wasn't the "bestest" and that other factors overruled its theoretically better resilience features. this isn't clear from the current wording? * Zash, IIRC the agreed-upon terminology is that P2P neither has clients nor servers, but only peers. I mean you could've also called them sients or clervers, but that would only add to the confusion :P pep: * in a previous version of the identity compartmentalization section, i was being all anal about pseudonymity being the right term, but that doesn't reflect everyday use by normal people, so I changed it to confuse non-techies less. * I agree that it isn't "there yet" in terms of being readily digestible for non-techies. any hints on what things still need explaining would be welcome. * I think free & open are at least as well defined as most things in everyday speech – language is a mess and there's no real way around that, especially if you don't want to end up with an academic text so dry it'll make you shrivel up reading it. * non-members being able to hand in proposals is indeed a *very* good and relevant point. * good point about tor not being explained. * the direct democracy bit is supposed to refer to people being able to dictate what parts of the whole spec (as in core + extensions) is "active" or "alive" simply through their usage. this point is about community influence, not about XSF members. * moparisthebest, source plox – XEPs say no.

  44. phryk

    Okay, thanks a bunch for the feedback; reading from top to bottom (and technically supposed to be in a meeting, but boss doesn't reply): * "dissident" was chosen over "activist" for associated connotations in leftist/anarchist spaces where "activists" are often perceived to care primarily about "optics". * mjk, XEP 373 ("OX") intro states "Therefore this XEP can be used for example to implement end-to-end encrypted Multi-User Chat" – i just assumed that means usually implementations support it? * pep, I actively said P2P wasn't the "bestest" and that other factors overruled its theoretically better resilience features. this isn't clear from the current wording? * Zash, IIRC the agreed-upon terminology is that P2P neither has clients nor servers, but only peers. I mean you could've also called them sients or clervers, but that would only add to the confusion :P pep: * in a previous version of the identity compartmentalization section, i was being all anal about pseudonymity being the right term, but that doesn't reflect everyday use by normal people, so I changed it to confuse non-techies less. * I agree that it isn't "there yet" in terms of being readily digestible for non-techies. any hints on what things still need explaining would be welcome. * I think free & open are at least as well defined as most things in everyday speech – language is a mess and there's no real way around that, especially if you don't want to end up with an academic text so dry it'll make you shrivel up reading it. * non-members being able to hand in proposals is indeed a *very* good and relevant point. * good point about tor not being explained. * the direct democracy bit is supposed to refer to people being able to dictate what parts of the whole spec (as in core + extensions) is "active" or "alive" simply through their usage. this point is about community influence, not about XSF members. * moparisthebest, source plox – XEPs say no.

  45. pep.

    The part on jitsi is slightly weird. Jitsi publishing a first version of their spec at the XSF, that later was extended and changes not pushed back into the spec. But it's not "because" some of it isn't specified that it's not usable with "normal" XMPP clients (what is normal here, "A/V" wasn't part of normal in most clients until recently). Clients could very well implement unspecified, or non-standard, or non-XSF-standard behaviour, such as Jitsi-meet's, if they wanted.

  46. Zash

    phryk, the point is that having clear roles and responsibilities is nice. I know which servers see the metadata of any message I send. Harder to say in dht p2p things.

  47. pep.

    And "clients have integrated audio and video calls with OMEMO encryption", nit as well, but (please correct me if I'm wrong), call transport isn't exactly encrypted with OMEMO, it's only that some things are verified as part of initializing the transport(?)

  48. pep.

    (with OMEMO)

  49. Zash

    You can say the same about "TLS encryption".

  50. pep.

    hmm possible, yes

  51. Zash

    Probably not very useful outside of detailed crypto system design discussions to make that kind of distinction.

  52. pep.

    Would you say OpenPGP encrypted calls though if it replaced OMEMO?

  53. moparisthebest

    phryk: send a file with Conversations and pgp turned on, you'll notice it http uploads a .pgp file

  54. pep.

    I guess one would.. for marketing purposes probably :/

  55. pep.

    istr monkeysphere, even though it's slightly different

  56. phryk

    pep., "say" or "through" supposed to be a different word? because i can't parse that sentence…

  57. pep.

    which one

  58. phryk

    "Would you say OpenPGP encrypted calls though if it replaced OMEMO?"

  59. pep.

    remove "though" and it still works

  60. pep.

    And you can quote "OpenPGP encrypted calls"

  61. phryk

    Ah, I'd probably say "PGP encrypted calls" in that case.

  62. Zash

    Are the messages "encrypted with OMEMO" ? No, it's likely AES or somesuch cipher

  63. phryk

    Zash, that's actually a good point, I can substitute "encrypted" with "secured" in a lot of places and make things more understandable for non-techies…

  64. pep.

    Zash, sure. I get why we say OMEMO-encrypted messages, just like we say PGP-encrypted messages. But when people say for example "OMEMO encrypted files" it feels eird.

  65. pep.

    Zash, sure. I get why we say OMEMO-encrypted messages, just like we say PGP-encrypted messages. But when people say for example "OMEMO encrypted files" it feels weird.

  66. pep.

    As you'd use a very similar way (if not the exact same) to share file with PGP

  67. Sam

    It doesn't seem worth distinguishing between OMEMO for key exchange or OMEMO encrypting the actual data in a thing for users who won't even care what OMEMO is ¯\_(ツ)_/¯

  68. pep.

    Exactly? I would just use "encrypted"

  69. Zash

    Encrypted with 🦄️🎉️

  70. pep.

    Anyway, I did say it was a nit. Please ignore, that's far from the most important comment in the article

  71. Sam

    I meant "OMEMO-encrypted files" or "PGP-encrypted files" or whatever seems fine, even if it's actually only encrypting an AES key under the hood and that is being used to encrypt the actual data.

  72. Sam

    But I don't know the exact context; I'm just assuming it's something where you actually want to distinguish between "OMEMO is being used or PGP is being used" but don't care exactly how it's used.

  73. pep.

    "* non-members being able to hand in proposals is indeed a *very* good and relevant point." I think you misunderstood my comment? phryk

  74. Zash

    How pedantic do we wanna be today? 😀

  75. jonas’

    very, obviously

  76. phryk

    pep., okay, wanna elaborate on that?^^

  77. phryk

    also boss just appeared, so I'm kind of in a meeting now^^

  78. pep.

    That was the one on the XSF "governing" XMPP right? I was saying it's not (governing XMPP).

  79. pep.

    *a wild boss appears*

  80. pep.

    Grab your shield and sword, quick

  81. Zash

    The XSF is governing the XEP series, if anything.

  82. pep.

    *boss casts meeting*

  83. pep.

    aaaaahhhrrg, they got me

  84. Zash

    The wider XMPP ecosystem ... I mean we can _try_ but it's like herding cats.

  85. pep.

    Yeah no thanks. I don't think the XSF is legitimate to "govern" the wider ecosystem. It's definitely not to me as it stands

  86. moparisthebest

    pep., *It's dangerous to go alone! Take this.* ... *uh wtf is this?* *an XML library of course* ... *oh no*

  87. pep.

    *I'd rather use my **JSON LIBRARY** haha!!*

  88. pep.

    "It's very effective"

  89. phryk

    pep., no, that was about collaboration being open through membership and you pointing out that membership isn't actually required. :)

  90. pep.

    I don't remember saying that, but good

  91. Zash

    pep., and 9 months later https://xmpp.org/extensions/xep-0432.html was born

  92. phryk

    might've been zash :P

  93. Zash

    membership is mostly a legal thing for organizational reasons

  94. pep.

    Zash, aaarrrhhhggg, that thing turned against me!

  95. pep.

    phryk, my general feeling is that it's pretty thick for actualy activists. The circles I'm in are not very technical and I'm sure this wouldn't be understood

  96. pep.

    (Also some don't speak english, but a translation might help here)

  97. pep.

    In general I go with the practical things, "XMPP doesn't require a phone number", "There's a number of public servers you can use to blend in the masses", "there's not central entity" (analogy to the government we want to overthrow :))

  98. pep.

    And of course use Tor, etc.

  99. phryk starts compiling notes from feedback while waiting for the second meeting

  100. emus

    > analogy to the government we want to overthrow I guess that pulls in more people besides drug and weapon dealers we actually dont want. but yes, its good to not have a central instance

  101. pep.

    I don't understand your first sentence

  102. emus

    I just wanted to state that such analogies raises interest to radical people I assume few people want to encourage within their networks. Even so independent infrastructure is a thing

  103. pep.

    Who doesn't want to get rid of capitalism and the injustice that goes with it? :)

  104. emus

    offtopic

  105. pep.

    Sure that's a great way to cut a discussion short, but fine :)

  106. pep.

    I'm not sure where you discussed the reasons for this article if even just this is offtopic

  107. emus

    I dont see why I should discuss radical politics here now

  108. MattJ

    I think it's fair to say that discussions of political views and statements like "who doesn't X?" (when some people clearly do not) are off-topic here. I assume the article was posted primarily because the author is seeking review about the XMPP parts from people with XMPP experience, and this is probably the most likely place to find them. And the majority of feedback on the article has been about technical rather than political aspects, which I imagine was the intention.

  109. MattJ

    I can't assume everyone here is of the same political opinions, and I really don't want to spend time moderating political discussions

  110. pep.

    (I doubt everyone here is of the same political opinions..)

  111. MattJ

    Certainly

  112. Zash

    s/everyone here/any two people/

  113. pep.

    Ah I misread, I first thought you said everyone was :P

  114. MattJ

    If only :)

  115. pep.

    fwiw, there's more politics that happens in here than you think :)

  116. jonas’

    pep., what is the use in that statement?

  117. pep.

    Answering the "I don't want to spend time moderating political discussions"

  118. jonas’

    well if more politics is happening here than $someone thinks, it doesn't seem to require moderation *so far*. I think the statement from MattJ was meant as a foreshadowing(?), if things go farther than they have.

  119. pep.

    It doesn't need to because it's probably opinions the majority has (which often passes as "non-political" ..)

  120. emus

    Definitively, and thats good (differnet polt. views). But my gut feeling told me that if we just continue for 5 mins with this we are back to useless root discussion of how we can force people into some poltical direction with XMPP tech. I doubt thats what we are here for in the end nor have any resources. Let`s propagate the protocol and their applications in a way most people would understand and see it as useful (with the few resources we have).

  121. jonas’

    pep., see, excellent.

  122. pep.

    ..

  123. pep.

    Dismissing different opinions 101

  124. moparisthebest

    XMPP is a tool, like a hammer, that can be used for good or evil, regardless of what you consider good or evil :)

  125. Daniel

    XMPP greatest accomplishment is to trick the majority into believing they would benefit from it

  126. Zash

    Playing XMPP's advocate eh?

  127. pep.

    moparisthebest, your tool enables TLS, why? It also speaks unicode, why not just ascii? Why is federation even an option? That's what your tool that has totally nothing to do with politics (/s) does :)

  128. jonas’

    pep., let's cut it here.

  129. moparisthebest

    I agree unicode was a mistake

  130. moparisthebest

    a hammer is also a poor tool for driving in screws

  131. Kev

    We should have just chosen a charset that can encode the 29 letters of the alphabet in one byte each, numbers, some punctuation and been done with it ;)

  132. flow

    but I want to write Fußball!

  133. emus

    Heizölrückstoßabdämpfung :-)

  134. Zash

    räksmörgås?

  135. moparisthebest

    see? no use-case at all for nonsense words like these in chat... /s

  136. jonas’

    🙀

  137. mjk

    phryk: > XEP 373 ("OX") intro states "Therefore this XEP can be used for example to implement end-to-end encrypted Multi-User Chat" – i just assumed that means usually implementations support it? Errr, _are_ there implementations of OX? Much less OX MUC? Genuine question, but I have my doubts. I humbly opine that the article should mostly talk about actual impl status rather than theoretically possible implementations :)

  138. Menel

    Profanity in some state?

  139. mjk

    Nebraska?

  140. moparisthebest

    :sensible_chuckle:

  141. phryk

    mjk, I honestly have no idea. Lemme look if I can find which XEP Conversations implements for PGP…

  142. moparisthebest

    phryk, it's not OX, it's https://xmpp.org/extensions/xep-0027.html

  143. moparisthebest

    no signing, no replay prevention etc etc

  144. phryk

    According to my DOAP table builder thingie, Conversations, Dino and Gajim support XEP-0027 and Gajim additionally implements XEP-373.

  145. moparisthebest

    if you are a dissident who the govt is after you might not want signing

  146. phryk

    moparisthebest, So XEP-0027 messages can be forged?

  147. moparisthebest

    anyone can encrypt to a key if that's what you mean

  148. phryk

    Ye, that's why I spelled the identity assurance part explicitly out in the article.

  149. mjk

    Replayed rather

  150. moparisthebest

    the authenticity just comes from normal xmpp guarantees (so if you have an evil server operator, those are out the window)

  151. phryk

    Well if a login is compromised but the pgp isn't the attacker with the login can forge messages that for the recipient are indiscernable from messages by the actual holder of the pgp key, right?

  152. phryk

    Well if a login is compromised but the pgp key isn't, the attacker with the login can forge messages that for the recipient are indiscernable from messages by the actual holder of the pgp key, right?

  153. moparisthebest

    you don't need or use a pgp key to send a xep-0027 message

  154. phryk

    Yes, that's kind of the cause. You just need the recipients pubkey.

  155. moparisthebest

    yes

  156. phryk

    Just want to make sure I understand correctly. :)

  157. mjk

    > Gajim Right, I remembered something like that. Interestingly, I don't hear people talking about actually using it, even just testing. Weird

  158. phryk

    Well, the only "advantage" it really has to OMEMO is that you can have something approaching legally binding proof of identity, right? Don't see many people having a use-case for that.

  159. phryk

    If municipalities used XMPP for bureaucracy I could see a strong use-case, but not in the current environment.

  160. mjk

    > Well, the only "advantage" it really has to OMEMO is that you can have something approaching legally binding proof of identity, right? Don't see many people having a use-case for that. Makes sense

  161. mjk

    >? Don't see many people having a use-case for that. Makes sense

  162. phryk

    mjk, your edit just gave me an *awful* idea.

  163. phryk

    having a bot do a marquee on their last message through continuous edits.

  164. mjk

    That's an actual thing...

  165. phryk

    This already exists? D:

  166. phryk

    Not sure if I should be sad or relieved…^^

  167. mjk

    Don't remember whether in profanity or poezio

  168. mjk

    Btw, does OX not provide the convenience of having the entire history encrypted with one key?

  169. phryk

    I would think so, but honestly haven't read the specs. :P

  170. phryk

    I mean, at least for devices on which you use the same key.

  171. phryk

    But I also assume that you could migrate OMEMO keypairs between devices and have the same result. Just haven't seen clients offering that as a feature.

  172. moparisthebest

    phryk, yea implementing <marquee> with last message edit was already done, Link Mauve iirc ?

  173. moparisthebest

    you can't migrate OMEMO keypairs actually

  174. moparisthebest

    you can't use the same ones on 2 different devices that is

  175. phryk

    And here I was, thinking I'd be doing something unspeakably offensive by implementing that. ^^

  176. phryk

    moparisthebest, how come?

  177. moparisthebest

    one of the properties of OMEMO is you can only decrypt messages once

  178. Menel

    I think its about the rotating keys after use. Pfs

  179. phryk

    Ah, nice to know, thanks for explaining.

  180. mjk

    Technically, you could probably clone omemo state and receive messages on all clones successfully, but the moment you try to send something, the ratchets go out of sync

  181. mathieui

    mjk, the marquee thing is from a poezio plugin -I wrote it, don’t hit me-

  182. mjk

    mathieui: it's not abuse if it's for fun!

  183. mathieui

    allowed us to find a some bugs in correction code, though (between unbounded message correction depth which leads to leaks, and recursion that goes further than the python limits and crashes)

  184. mjk

    Noice