close
  • Be chevron_right

    Year of the OX: OpenPGP for XMPP

    debacle · pubsub.movim.eu / berlin-xmpp-meetup · Monday, 1 February - 02:02 edit

In February 2021, this month, starts the year of the ox. At Berlin XMPP meetup, we will celebrate the new year with an introductionary talk about "XEP-0373: OpenPGP for XMPP" and "XEP-0374: OpenPGP for XMPP Instant Messaging" and the panel of experts:

  • DebXWoody (implementor of OX in Profanity)
  • defanor (implementor of OX in rexmpp)
  • Florian (co-author of the OX standards)
  • lovetox (implementor of OX for Gajim)
  • Paul (implementor of OX in Smack)

When? Wednesday, 2021-02-10 18:00 CET (always 2ⁿᵈ Wednesday of every month)

Where? Online, via our MUC (xmpp:berlin-meetup@conference.conversations.im?join). A Jitsi video conference will be announced there.

See you then!

#yearoftheox #openpgp #xmpp #ox #jabber #encryption #e2ee #privacy #omemo #🐂️ #berlin #meetup #community #profanity #rexmpp #gajim #smack

  • favorite

    3 Like

    DebXWoody , ed00 , Holger Weiß

  • chevron_right

    (brouillon) Messagerie instantanée : comment allier communication et liberté de manière durable / Partie 2 : Comment faire ?

    Yannv · Friday, 29 January - 22:13 edit · 11 minutes

En cours de rédaction, n'hésitez pas à me faire part de vos remarques, oublis, erreurs éventuelles.

Messageries instantanées : Partie 2

COMMENT peut-on profiter du mouvement autour de #whatsapp pour rétablir la liberté dans la messagerie instantanée ?

Libérez vous de l'effet réseau!

Avant toute chose, il est nécessaire de réaliser un état de fait désagréable: celui de notre impuissance face aux choix de #Facebook (propriétaire de Whatsapp) quant à l'évolution de son service. Et si cette dernière ne nous convient pas, nous devrons alors quitter tous nos contacts, présents sur cette plateforme.

Bien évidemment, cette décision, potentiellement lourde en conséquences affectives et/ou professionnelles, nous fait le plus souvent rester sur la plateforme en dépit du fait que nous ne cautionnons pas sa politique d'utilisation. Ce phénomène de captivité officieuse -et le plus souvent inconsciente- est dû à "l'effet réseau" qui nous rend captifs, par crainte de perdre notre cercle social.

Comme il serait dommage de quitter un réseau fermé pour déménager vers... un autre réseau fermé, aux allures faussement alternatives (expliqué dans la 1ère partie), voici une autre solution pour le plus grand nombre, qui est un compromis entre centralisation et accessibilité à tous.

Procédure pour smartphone Android

  1. chercher et installer le client #quicksy sur le Play Store ou F-Droid. Il vous faudra votre numéro de téléphone pour récupérer le code de confirmation par SMS. Cela vous permettra de valider votre nouvelle adresse personnelle.
  2. convaincre ses amis de faire la même chose (l'étape la plus difficile). S'ils ont votre numéro de téléphone dans leur carnet d'adresses, vous vous retrouverez automatiquement dès qu'ils l'installeront.

Bienvenue sur #xmpp! Vous venez de rejoindre un réseau ouvert et sécurisé pour votre messagerie instantanée! 🎉

Petit lexique

Les clients

Les clients xmpp sont des logiciels sur ordinateur, des applications sur smartphone ou des sites web particuliers qui se connectent à votre fournisseur xmpp. Vous devez avoir un compte pour pouvoir les utiliser et ils fonctionnent avec tous les fournisseurs. Ils peuvent fonctionner simultanément sur le même compte.

Les fournisseurs (ou serveur)

Les fournisseurs xmpp sont des acteurs qui vous donnent un compte avec une adresse (ou identifiant ou JID) sous la forme : monnom@monfournisseur . Nous pouvons souscrire à un nombre illimité de fournisseurs.

Vous pouvez créer une nouvelle adresse via une page web dédiée du fournisseur, ou directement dans un client Xmpp compatible : "Conversations", "Gajim", "Dino", "Siskin", je préciserai au cas par cas :

FournisseurCoûtInscriptionLimitations
chapril.org (association de promotion et défense du logiciel libre)gratuitinscription depuis un client xmpp250Mo par envoi max, 500Mo max sur le compte pendant 380 jours
movim.eu (orienté réseau social)gratuitinscription préalable uniquement sur le site web10Mo par envoi maximum
jabberfr.org (association des utilisateurs francophones de Jabber)gratuitinscription préalable uniquement sur le site webstockage de l'historique pendant 2 semaines
conversations.imgratuit 6 mois, 8€ par aninscription depuis un client xmppGarantie d'une disponibilité professionnelle.
quicksy.imgratuitautomatique lors de l'installation du client Quicksy "+33numero_sans_0@quicksy.im"

éventuellement d'autres, mais je vous conseille au préalable de bien vérifier leur compatibilité avec toutes les fonctionnalités avancées ici

Groupes de discussion (MUC, salon de discussion, canal, groupchat)

Il existe deux types de groupes de discussions : privés ou publics. Pour les groupes privés, il faut que la personne qui a crée le groupe (ou une autre personne autorisée) vous invite. Pour les salons publics, vous pouvez généralement utiliser un pseudonyme. Vous pouvez y accéder via l'adresse publique du salon, par exemple: linuxfr@chat.jabberfr.org

Chiffrement, cryptage, #OMEMO...

Même si votre client vous indique "non chiffré", toutes les communications sur le réseau xmpp entre les serveurs et les clients sont protégées, ainsi que les appels audio et vidéo. Ce que le chiffrage OMEMO garanti en plus, c'est que vos messages ne seront pas lisibles par votre fournisseur ou autre autorité. "Quicksy" et "Conversations" utilisent par défaut ce chiffrage "bout à bout" qui protège ainsi les données stockées chez votre fournisseur. Il est aussi possible de protéger un groupe de discussion privé, si les participants utilisent tous le chiffrage OMEMO.

Les "Stores"

playstore est le catalogue Google d'applications installés par défaut sur les appareils Android.

#fdroid est un "store" ou catalogue installable d’applications libres et open-source sans publicité pour la grande majorité. Ce logiciel, lui même un logiciel libre, facilite la découverte, l’installation et le suivi des mises à jour sur votre appareil Android. Pour l'installer :

  • ouvrez le navigateur de votre téléphone et allez à la page d’accueil de F-Droid
  • sélectionnez le bouton "Télécharger"
  • exécutez le fichier sur votre smartphone et suivez les instructions

Suite pour une utilisation avancée (plusieurs identités)

Cette étape n'est pas obligatoire et peut se faire ultérieurement. Si vous avez besoin de séparer vie privé et vie publique en utilisant des adresses différentes, continuez la procédure. Vous pouvez par exemple utiliser votre adresse Quicksy comme adresse privée et une adresse sur un autre fournisseur comme adresse professionnelle (ou inversement): votre adresse sera connue uniquement par les contacts qui auront votre numéro de téléphone.

Les points suivants vous permettront d'obtenir une nouvelle adresse et de pouvoir gérer les deux (ou plus) adresses simultanément. Quicksy ne peux gérer qu'une identité, c'est pour ça que je vous propose d'utiliser à la place #conversations, qui s'utilise de la même manière tout en permettant de centraliser tous vos comptes sur cette application.

1. Créer une sauvegarde de votre compte actuel

  • ouvrir Quicksy sur l'écran principal
  • menu "" -> Paramètres -> "Créer une sauvegarde" (tout en bas)
  • lancer la sauvegarde

2. Noter les informations de votre compte actuel

  • retourner sur l'écran principal
  • menu "" -> "Gérer les comptes"
  • noter scrupuleusement votre identifiant "+33xxxxxxxxx@quicksy.im" et le mot de passe (icône œil). C'est lui qui vous permettra de récupérer votre historique crypté. Sans celui-ci, vous ne pourrez plus lire vos anciens messages

3. Choisir votre prochain fournisseur

  • Si vous prenez une adresse chez movim.eu ou jabberfr.org, il faut s'inscrire sur leur site web avant de continuer la procédure.
  • Si vous choisissez conversations.im ou chapril.org, l'inscription se fera au point suivant

4. Installer "Conversation"

  • désinstaller Quicksy
  • lancer l'installation de l'application Conversations, celle-ci est gratuite sur F-Droid, et payante (2,5€) sur le PlayStore.
  • lancer Conversations
  • choisir "J'ai déjà un compte" si vous l'avez crée en amont (avec jabberfr par exemple) sinon choisir "Créer un nouveau compte"

Choix 1 : "Utiliser votre propre fournisseur". Voir le "Petit lexique" plus haut pour faire votre choix, à l'exception de conversations.im (voir choix 2 ci-dessous). Saisissez votre adresse xmpp : monadresse@fournisseur, puis le mot de passe souhaité. Retranscrire les chiffres de l'image (captcha) pour valider

Choix 2 : "Utiliser conversations.im" (8€/an, 6 mois d'essai gratuit) si vous voulez avoir une adresse "professionnelle". Suivre la procédure proposée.

5. Restaurer et activer votre ancien compte "Quicksy"

  • retourner sur l'écran principal.
  • menu "" -> "Gérer les comptes". Puis menu "" -> option "Restaurer la sauvegarde"
  • sélectionner la sauvegarde quicksy.
  • saisir le mot de passe du compte Quicksy que vous avez noté précédemment
  • sur l'écran principal
  • menu "" -> "Gérer les comptes". Activer le compte +33xxxxxxxxx@quicksy.im . Vous avez fini! 🎉

6. Si vous voulez ajouter un nouveau compte

  • sélectionner le bouton "+" dans la "Gestion des comptes" en appliquant le point 3. si nécessaire

Réinstallation / nouveau matériel

Vous pouvez trouver toutes les informations détaillées en anglais sur le dépôt de Conversations / Quicksy. Ici la procédure rapide :

  1. Sur votre ancien appareil ou installation, ouvrir Quicksy ou Conversations sur l'écran principal. Puis menu -> Paramètres -> Créer une sauvegarde (tout en bas) et lancer la sauvegarde
  2. Retourner sur l'écran principal. Puis menu -> Gérer les comptes. Noter scrupuleusement vos identifiants et mots de passe (icône œil). C'est eux qui vous permettront de récupérer vos historiques cryptés.
  3. Réinstaller Quicksy ou Conversations sur votre nouvel appareil
  4. Ne pas répondre à la proposition de connexion à un compte au premier démarrage: aller dans menu -> Restaurer la sauvegarde
  5. Sélectionner les sauvegardes. Saisir le mot de passe de chaque compte que vous avez noté.
  6. Activer le compte: Écran principal. Puis menu -> Gérer les comptes. Activer le compte +33xxxxxxxxx@quicksy.im

"Siskin" pour un utilisateur d'iPhone ou de tablette iOS

L'application Quicksy permettant la recherche automatique des contacts n'existe pas sous iOS. Vous devrez choisir un fournisseur (voir "Petit lexique"). Suivre cet article qui vous détaillera la marche à suivre.

Pour un utilisateur qui utilise un téléphone simple sans internet

Si votre téléphone ne permet pas d'accès à internet mais que vous souhaitez néanmoins être joignable via une messagerie instantanée, vous pouvez l'utiliser sur un ordinateur :

  1. Choisissez un fournisseur (voir le "Petit lexique" plus haut)
  2. Optionnel : Pour être retrouvé automatiquement par vos contacts qui utilisent quicksy et qui ont votre numéro de téléphone, inscrivez-vous dans l'annuaire Quicksy (5€ par paypal)
  3. Installer un client XMPP en fonction de votre ordinateur : Gajim sous Windows et Linux, Dino sous Linux, BeagleIM sous MacOS. Pour l'instant, ils n'offrent pas la possibilité de passer des appels audio/vidéo.
  4. Actuellement, pour passer un appel vidéo ou audio, connectez vous sur http://mov.im avec votre adresse XMPP depuis n'importe quel ordinateur.

Pourquoi ces choix ?

Un réseau ouvert évolutif tel que XMPP a l'inconvénient de ses avantages : une incontestable liberté mais aussi beaucoup de choix... qui ne sont pas toujours totalement compatibles entre eux, ce qui s'avère compliqué quand on débute. C'est pour cela que dans cet article, j'expose volontairement un nombre limité d'applications et de fournisseurs compatibles entre eux, afin de rendre la première expérience durable et facile. La centralisation sur Quicksy n'est bien sûr pas une fin en soi, il faut le voir comme un appel au changement, l'occasion de passer d'un réseau fermé à un réseau ouvert. Comme expliqué dans l'utilisation avancée, il est "facile" d'avoir plusieurs adresses et de changer de fournisseur.

Client "Quicksy"

  • simple à installer et à utiliser, à l'image de whatsapp,
  • découverte automatique des correspondants qui ont installé quicksy
  • appels audio et vidéo à l'international (votre correspondant doit être connecté à internet pour que son icône d'appel s'affiche)
  • envois rapides de fichiers sons, images et vidéos avec redimensionnement et ré-encodage automatiques en cas de fichier trop volumineux.

A noter: pour l'instant, il n'y a pas d'outils de découpage de vidéo intégré. Il est nécessaire de le faire en amont de l'envoi. Mais cela peut changer dans le futur: en effet, cette application étant géré par des bénévoles passionnés, les améliorations futures dépendent en partie de leur motivation, qui augmentera sans doute en fonction de l'intérêt porté à leur travail. Et cet intérêt se mesure par le nombre d'utilisateurs...Il est d'ailleurs possible de suivre, d’interagir et de proposer des évolutions aux concepteurs: pour cela, rdv ici (en anglais)

  • possibilité de créer simplement des groupes de discussion privés et publics
  • citation d'ancien message, émoticons, accusés, statut en cours d’écriture, etc..
  • sécurisé avec le chiffrage bout à bout OMEMO : votre fournisseur ne pourra pas accéder à vos données
  • code source libre
  • disponible gratuitement sur le Play Store et F-Droid

Client "Conversations"

  • L'application "Quicksy" est un dérivé officiel du même auteur de l'application "Conversations" avec la découverte automatique des contacts. Ces deux applications ont été créees par le même développeur, Daniel Gultsch et ont les mêmes fonctionnalités de base. Seulement, dans une volonté de cohérence et de simplicité d'utilisation, Quicksy ne permet pas de gérer plusieurs identités.
  • code source libre (GPLv3 niveau client et serveur)
  • à l'installation, vous obtenez un nouvel identifiant valable sur tout le réseau #xmpp ainsi que votre inscription sur l'annuaire Quicksy après validation de votre numéro de téléphone

au sujet de son auteur Daniel Gultsch et de son modèle économique

  • Il a une politique respectueuse de la vie privée quand à l'utilisation du service de découverte des numéros de téléphone. Quicksy n’envoie pas votre carnet d'adresses sur les serveurs Quicksy : l'application sur votre téléphone interroge l'annuaire Quicksy avec les numéros de votre carnet d'adresses pour trouver un correspondant qui utilise déjà l'application.

  • Son financement se fait grâce aux personnes possédant déjà une adresse xmpp et souhaitant être retrouvé automatiquement par leurs contacts utilisant quicksy. Daniel Gultsch perçoit également des financements grâce à la vente de l'application libre conversations sur le PlayStore et en tant que fournisseur d'adresses xxx@conversations.im

  • Il participe activement à l'évolution de l'écosystème xmpp et à la défense du concept de fédération (réseau ouvert à tous).

Client web "Movim" solution multi plateformes

Pour voir et interagir avec toutes vos conversations sur votre ordinateur, je vous conseille d'utiliser Movim. C'est un client web (comme un webmail externe) qui possède toutes les possibilités de "Conversations" (appel audio / vidéo entre autre) avec des fonctionnalité de blogage supplémentaire.

Vous pouvez vous connecter avec n'importe quelle adresse XMPP.

auteur : Yann, relecture : Ludivine, publié sur le réseau XMPP à partir du client web #movim.

  • Vous pouvez commenter cet article via le réseau XMPP en vous connectant au préalable sur movim (avec votre compte xmpp ou en créant un nouveau) et en vous rendant à cette adresse.

  • Be chevron_right

    Berlin Online XMPP Sprint 2020

    debacle · pubsub.movim.eu / berlin-xmpp-meetup · Sunday, 22 March, 2020 - 00:47 edit

Berlin Online XMPP Sprint 2020

The planned XMPP sprint in Berlin from Thursday, 2020-03-26 to Sunday, 2020-03-29, will take place despite the current crisis. But instead of an in-person meeting, it will be an online event!

We will mainly use the XMPP group chat xmpp:xmpp-sprint@chat.cluxia.eu?join for all coordination, and multiple Jitsi instances for audio/video conferencing, maybe also mumble for voice chat.

Please find all details in the wiki and consider participation! This time, there are neither travel nor hotel costs! https://wiki.xmpp.org/web/Sprints/2020_March_Berlin

See you at the Berlin Online XMPP Sprint! Berlin is whereever you are!

#xmpp #sprint #event #community #hacking #freesoftware #uwpx #beagleim #siskinim #xmppjs #omemo #kaidan #smack #dino #omemo #prosody #xmpprs #salutatoi #debian #jitsi

  • favorite

    1 Like

    DebXWoody

  • Mo chevron_right

    Movim 0.16.1 – Cesco

    Timothée Jaussoin · pubsub.movim.eu / Movim · Friday, 6 December, 2019 - 09:50 · 1 minute

Only a few weeks after the 0.16 release here is the 0.16.1 one!

This release includes several fixes and a few new features.

Features

You can now share posts to your connected chatrooms :)

Chatroom post sharing

Communities layout were a bit redesigned, publication rules are now displayed clearly in the right column and the header shows more information on mobile.

Communities redesigned

All the messages that you sent in the one to one discussions can now be edited.

Message edition for the whole history

The videoconferencing feature was heavily refactored and several issues were fixed during this process. A new XEP was also used partially to improve the call negociation flow, XEP-0353: Jingle Message Initiation.

Fixes

In the database an index was added on the key that was tracking contacts avatars. This sounds maybe a bit technical to you but this small fix boost quite a lot the performances during the login process, when you join a chatroom (especially that one) or when a contact updates his/her avatar. Because it's a database change you should run the database migrations when updating from 0.16 to 0.16.1.

All the entities that are on the XMPP network needs to declare what they are capable of to the others. This allows feature discovery and negociation and is specified in the #XMPP extension XEP-0115: Entity Capabilities. After the big code refactor of the handling of those #capabilities within the Movim codebase some other small improvements and fixes were done to wrap up properly this feature.

Presences sent to MUC are now generated the same way than those sent to contacts, this fixes #711.

DNS resolution errors an timeout are now handled properly displayed during the authentication flow (#368).

The SQL_DATE constant was renamed to MOVIM_SQL_DATE to prevent some naming conflicts (#820).

What's next?

PHP 7.4 was released a few days ago, so the upcoming version will focus on fixing issues to make Movim fully compatible with that version.

This new PHP release also includes an exciting feature that allows #PHP developpers to call directly C libraries in their codes. This could allow #Movim to directly use the libsignal C library and therefore (finally) allow OMEMO end-to-end-encryption to be implemented. This will be a lot of work and verifications so we're not promissing anything anytime soon. Stay calm please!

That's all folks!

#omemo #videoconference #jingle #release

  • movim/movim

    Movim - Decentralized social platform. Contribute to movim/movim development by creating an account on GitHub.

  • favorite

    4 Like

    Marzanna , CNT 31 , eyome , togart

  • Xm chevron_right

    Hat OpenPGP heutzutage noch eine Bedeutung?

    DebXWoody · pubsub.movim.eu / xmpp-messenger · Monday, 28 October, 2019 - 21:08 · 2 minutes

Meiner Meinung nach, “Ja!”.

Ich bin kein Experte der Kryptographie. Ich kenne mich eigentlich sehr wenig damit aus. Jedoch ist meiner Meinung dazu die Folgende.

Ich bin ein OpenPGP / GnuPG Fan. Ich finde die Idee der Prüfung von öffentlichen Schlüsseln gut und auch das Konzept vom Web-of-Trust finde ich super. Das ist jedoch meiner persönliche Meinung, deswegen zurück auf die Frage,..

Alle folgenden Informationen können gerne auf Korrektheit geprüft werden (wenn jemand Plan davon hat) und auch gerne Feedback im Issue geben:

Issue auf Codeberg zu XMPP und OpenPGP

OMEMO ist ein Protokoll was Perfect Forward Secrecy (PFS) verwenden. Mein Verständnis ist hierbei, dass die Nachrichten nur innerhalb einer “Sitzung” entschlüsselt werden können. Bei OMEMO ist es wohl nicht die “Session” selber, vielleicht ist hier die “Session” mehr zeitlich orientiert (ich weiß es nicht).

Unabhängig davon, muss die Nachricht wegen der “Perfect Forward Secrecy” auf dem Client entschlüsselt werden. Da man später die Nachricht nicht mehr entschlüsselt kann! Das ist ja auch die Idee dahinter. Ferner ist OMEMO Geräte basierten, was auf der einen Seite sicherlich gut ist (z.b. kein Vertrauen von Geräten wie Smartphone oder Web-Apps, aber dem Desktop Client). Jedoch ist die Lösung auch ab und zu nicht immer Perfekt.

Bei OpenPGP ist der Schlüssel einer Person und nicht einem Gerät zugeordnet. Unabhängig welches Gerät ich später verwende, können Nachrichten noch gelesen werden. Da OpenPGP kein (PFS) verwenden, muss man auch die Nachrichten nicht auf dem Client entschlüssel und speichern. Man kann die Nachrichten währen der Laufzeit entschlüsseln und anzeigen. Die Nachricht selber bleibt verschlüsselt.

Die Token wie Nitrokey und Yubikey können verwenden werden, um den privaten Schlüssel zu verwalten. Kleine Erinnerung: Der private Schlüssel ist geheim zu halten und hierbei ist fraglich, ob ein Schlüssel etwas auf einem Server oder Smartphone verloren hat!

Es gibt kein “blindes” Vertrauen - bzw. mir ist es nicht bekannt. Ein Verschlüsselungsverfahren hat etwas mit Vertrauen zu tun. Wenn ich jedem einfach blind vertraue (also davon ausgehen, dass der öffentlich Schlüssel / Fingerprint zu einer Person passt), dann ist der Nutzen von Verschlüsselung etwas fragwürdig :-) Das Web-of-Trust wie es bzw. bei GnuPG / OpenPGP verwendet wird, ist sicherzustellen, dass ein öffentlicher Schlüssel genau der Person gehört (Zertifizierung - unterschreiben des öffentlichen Schlüssels einer anderen Person) und das Verwenden von Trust-Level und Trust-DB bildet die Möglichkeit Schlüssel als Gültig zu betrachten, ohne den Schlüssel selber signiert zu haben.

Fazit: Ich finde OpenPGP immer noch ein wichtiges und sehr gutes Konzept und würde mich freuen, wenn es auch in XMPP mehr einsetzt findet.

#XMPP #OpenPGP #GnuPG #Nitokey #Yubikey #OMEMO

  • Be chevron_right

    Kaidan - A user-friendly XMPP client, and ATT - Automatic Trust Transfer

    debacle · pubsub.movim.eu / berlin-xmpp-meetup · Saturday, 2 March, 2019 - 12:48 edit

Kaidan - A user-friendly XMPP client, and ATT - Automatic Trust Transfer

At this months Berlin XMPP meetup, we will probably

When? Wednesday, 2019-03-13 18:00 CET

Where?JWD: Takustraße 3, 14195 Berlin

#xmpp #meeting #meetup #berlin #jabber #kaidan #client #sprint #att #omemo #jwd

  • chevron_right

    Things I don't like with OMEMO as it is today

    debacle · Tuesday, 13 November, 2018 - 19:21 edit · 2 minutes

I use OMEMO every day, because I prefer end-to-end encrypted messaging for many purposes. OMEMO is much better than OTR, and it works well enough to be useful. But OMEMO has a number of usability issues, that should be addressed by the IM and XMPP community at some point.

  1. It relates to devices instead of users. I don't want to know, whether my contacts own a new device, nor should they care when I do.
  2. Forward secrecy is a good thing for TLS. But when used for messaging, I cannot decrypt my old messages stored on the server in all cases. Also, it makes key escrow impossible, which is a killer for using it in business.
  3. Deniability. I want verifiable signatures instead. Maybe I want to conclude a contract via XMPP? For deniability I would use an anonymous account in the first place.
  4. OMEMO does not encrypt the complete stanza, but only the textual part of a message.
  5. It does not work with local, serverless messaging. I don't use this feature a lot, but still, encryption should work with it, too.
  6. OMEMO seems to be pretty complex, which makes implementation relatively hard. In fact, bugs related to OMEMO are still frequent in some clients.
  7. I already have an OpenPGP key, that is trusted (and occasionally signed) by many. Why not re-use it for IM purposes?
  8. (added 2019-02-15) This is an amendment to the first point: If we accept the concept of keys per device, at least improve the management. The keys should have a label, e.g. "mobile" or "PC at work", to be less confusing. Or why not automatically cross-sign keys from all devices?

Some of the points can be addressed in later OMEMO versions, but some points seem to be woven into the fabric. Fortunately, I see the light at the end of the tunnel (and I hope it is not the oncoming train): OX or "OpenPGP for XMPP". I hope, that it will heal all my OMEMO aches:

https://xmpp.org/extensions/xep-0373.html

https://xmpp.org/extensions/xep-0374.html

The only thing, I do not like is synchronising of encrypted private keys using PEP, which involves storing it on the server, only secured by the PGP passphrase and the "backup code", generated by the device. But nobody forces me to use the backup feature and I assume, that it can be blocked by admins who feel uneasy about it. Also, OpenPGP seems to have a higher per message overhead than OMEMO. This is probably unavoidable.

Edit: Correction about OX private key encryption, thanks to lovetox!

Edit: Add point about OMEMO complexity and errors, thanks to Holger!

#omemo #xmpp #im #ox #openpgp #e2ee

  • favorite

    1 Like

    Timothée Jaussoin

  • Mo chevron_right

    Movim 0.11 - Tuttle

    Timothée Jaussoin · pubsub.movim.eu / Movim · Friday, 31 March, 2017 - 08:00 edit · 6 minutes

Six months after Movim 0.10 Holmes, here is the new winter release of the Movim project.

Small recap: Movim is a project that aims to build an IM and social networking service exclusively on top of the XMPP protocol.

This 0.11 version refined several features and will introduce a couple of big changes, mainly regarding the navigation and the project UI.

Features

New contacts list

The contacts list (or roster) has always been a very complex element inside Movim. It was ported on Angular 1 a couple of versions ago but suffered since then of performances issues (that could block the page loading for several seconds).

This new version brings a complete rewrite of this feature in pure PHP (with a bit of JavaScript). The contacts are now grouped in a simple list. The search has been improved and now allows you to search instantly among your contacts using their name, ID, nickname or group.

Onboarding

At first startup, Movim is now asking for some browser and account preconfiguration regarding notifications and pop-ups (used for videoconferencing) preferences.

test

The sharing feature

As promised, articles sharing has been greatly improved in and around the Movim project. It is now possible to share an article (as in "write an article as an answer to") on your own Blog. This feature is based on the IETF — Atom Threading Extensions (RFC 4685) norm. Again, Movim aims at showing that it's possible to build a social solution relying only on existing standards.

Sharing an external link has also been improved. Movim now understands XMPP URIs.

Communities

Communities, previously named "groups", are the result of a deep redesign of the way articles are displayed navigated through. The reorganization of the content makes the exploration much easier and natural. This new name also lets Communities clearly stand out from group discussions (chatrooms) and groups in the contacts list.

Communities also benefited of a better management system, for users, but also for administrators who can now assign roles in a more precise way.

All in all, that's a lot of changes but don't worry, Movim will still be compatible with old versions as nothing has changed on the XMPP side. ;)

Posts

Two littles features have been added on the articles page to facilitate articles discovery and evaluation. An article is now surrounded by links to the previous and following articles of the same Community or from the same contact and a "Like" button let's you express your contempt to the author of the article. :)

As an author, a new Notifications block on the homepage informs you of comments and likes on your published articles.

Discovery

The interface redesign also brings new features of content discovery.

Movim now provides readers with related articles published on Blogs or in Communities. Suggestions are so far pretty basic but should get better in the upcoming versions.

Chat

The Chat part has not been forgotten. A lot of changes have been done on the interface to ease the navigation on small and big screens (removal of useless spaces) and to fix a few bugs (on Android). A new pack of stickers has been added with a Creative Common BY-SA license.

The file upload and file sharing UI have both been redesigned and now make use of one of the latest XMPP norms, XEP-0385 : Stateless Inline Media Sharing (SIMS). It allows Movim to integrate them better in Chats.

Videoconferencing (beta)

In this version, the videoconferencing feature is coming back in Movim. As usual, nothing but standards here (WebRTC and XMPP Jingle this time). However some bugs still remain. They should all be fixed for the upcoming (0.12) version. This feature is only available for the desktops for now.

Refactoring of the session system

The user sessions management code within Movim was one of the oldest ones in use in the project. It has been heavily redesigned and now brings a new way of handeling cookies and session variables both in memory and in the database.

Around Movim

We now see more and more external contributions on Movim and its linked projects.

Android Client

Thanks to schlusslicht the Android native file selector has been integrated to the application. You can now upload files from your phone.

A little security update regarding certificates management has been added at the same time (non valid certificates are no longer accepted).

The Android application is available on Google Play and F-Droid.

Electron Client (desktop)

The Electron client has been updated. Mike Barnes (bremensaki) has added the support of contextual menus in the interface. Thanks Mike !

New Debian and RPM packages have been made. Movim is now also available on Windows and macOS. All those applications are available on the official website.

Atomtopubsub

Atomtopubsub is the little magic tool that, as its name suggests, parses Atom feeds and injects them on Pubsub nodes. It allows Movim to offer a lot of news feeds among Communities. A big thanks to Link Mauve, who took some time during the 33c3 to port atomtopubsub in Python 3 and to optimize the processing of articles inside the application.

Movim Europe

Movim Europe is a structure that provides support for the Movim project. It has been declared in the Netherlands and currently offers two services.

  • technical support and advices to deploy the platform (and linked services such as XMPP servers or SQL databases) and/or on the technologies involved in the project;
  • the possibility as a company, an association or an individual to fund the development of features that were not initially planned on the roadmap and that are part of a particular need.

The gathered funds will first cover the running costs (domains, hosting, travels...) that were until now payed by the founder, but also to free more time to develop the project and its surroundings (administration, linked projects, conferences...).

Don't hesitate to contact us on the official chatroom.

A few figures

We also have two official servers: one hosted in Amsterdam, with around 4 000 registrations and 50 connected people, and one in Roubaix with 2 800 registered people and around 20 simultaneously connected people.

Everyday, 4 000 messages (simple or from groupchats) are sent or received, and around twenty articles are written by the users of nl.movim.eu.

Statistics that are (voluntarily) sent on api.movim.eu by the deployed instances are showing a total of 8 000 registered users and around 250 simultaneously connected ones along the day. The XMPP server movim.eu reaches 300 connected people during the day.

Some plans are made to open new servers both in Australia and in Russia.

Movim 0.12

A new roadmap is also planned for the 0.12 that should be released this summer. Two main changes are planned:

  • Movim has a heavy memory consumption, it can reach 50 Mio for some users connected on a server. This problem is not due to memory leaks but to architectural decisions that are duplicating for each session some parts of the Movim code in memory. A huge change on this subject is planned, that should significantly reduce the memory footprint during runtime.
  • An implementation of the OMEMO protocol has been strongly demanded by the community. A preliminary research work has been done in January and it seems that this end-to-end encryption protocol could be implemented in Movim. A publication about this feature will most probably be released in the next few months.

We need you!

Don't forget, the Movim project needs you! As a source code contributor, but also as an administrator, packager, translator or even a drawer (if you want to add your own stickers to Movim!).

All contributions are welcome, so don't hesitate to come and discuss them with us on movim@conference.movim.eu. :)

That’s all folks!

Translated from the original French article by nodpounod - Christine HO & daftaupe - Pierre-Alain TORET

  • Movim

    Movim is a kickass distributed social networking platform that protect your privacy an comes with a set of awesome features.

  • favorite

    8 Like

    Matija Šuklje , preptorrent , Roelof Pieter , U , Timofey Kostenko , krille , daftaupe , Tristan

  • 1 Comments

  • 31 March, 2017 Matija Šuklje

    If anyone wonders, AtomPubSub is available through GitHub and edhelas is its main author.

    Link to code and project: <https://github.com/edhelas/atomtopubsub>