tag:linuxfr.org,2005:/tags/chatsecure/publicLinuxFr.org : les contenus étiquetés avec « chatsecure »2017-01-30T22:08:40+01:00/favicon.pngtag:linuxfr.org,2005:News/377942017-01-26T10:10:04+01:002017-01-28T17:21:44+01:00 ChatSecure 4.0 ronronne et adopte OMEMO Licence CC By‑SA http://creativecommons.org/licenses/by-sa/4.0/deed.fr<div><p>ChatSecure est un client de messagerie XMPP chiffré pour iOS. Il est publié sous licence GPL v3.</p>
<p>Jusqu’ici ChatSecure chiffrait ses messages avec <a href="https://fr.wikipedia.org/wiki/Off-the-Record_Messaging">OTR</a>. La version 4.0 de ChatSecure permet d’utiliser <a href="https://en.wikipedia.org/wiki/OMEMO">OMEMO</a> pour chiffrer ses conversations. Cette nouvelle fonctionnalité a été ajoutée avec l’aide de Daniel Gultsch, le développeur du client Conversations et superviseur du développement par Andreas Straub du protocole OMEMO.</p>
<p>Trois personnes utilisant chacune soit ChatSecure, soit Conversations.im (Android) soit Gajim (Windows & GNU/Linux) peuvent tenir une conversation chiffrée avec OMEMO.</p>
<p><img src="//img.linuxfr.org/img/68747470733a2f2f636861747365637572652e6f72672f696d616765732f636861747365637572652d62616e6e65722e706e67/chatsecure-banner.png" alt="ChatSecure client XMPP sécurisé pour IOS" title="Source : https://chatsecure.org/images/chatsecure-banner.png"></p></div><ul><li>lien nᵒ 1 : <a title="https://chatsecure.org" hreflang="en" href="https://linuxfr.org/redirect/99130">ChatSecure</a></li><li>lien nᵒ 2 : <a title="https://chatsecure.org/blog/chatsecure-v4-released/" hreflang="en" href="https://linuxfr.org/redirect/99131">Annonce de la publication de ChatSecure 4</a></li><li>lien nᵒ 3 : <a title="https://conversations.im/omemo/" hreflang="en" href="https://linuxfr.org/redirect/99132">Le protocole OMEMO</a></li><li>lien nᵒ 4 : <a title="https://github.com/ChatSecure/ChatSecure-iOS" hreflang="en" href="https://linuxfr.org/redirect/99160">Code source sur GitHub</a></li></ul><div><h2 class="sommaire">Sommaire</h2>
<ul class="toc">
<li><a href="#historique">Historique</a></li>
<li><a href="#%C3%80-quoi-sert-omemo">À quoi sert OMEMO ?</a></li>
<li><a href="#avantages-domemo-et-xmpp-par-rapport-aux-autres-logiciels">Avantages d’OMEMO et XMPP par rapport aux autres logiciels</a></li>
<li><a href="#omemo-dans-chatsecure">OMEMO dans ChatSecure</a></li>
<li><a href="#autres-nouveaut%C3%A9s-de-chatsecure">Autres nouveautés de ChatSecure</a></li>
<li><a href="#%C3%80-venir">À venir</a></li>
<li><a href="#h%C3%A9bergements-xmpp-%C3%A0-jour-conseill%C3%A9s">Hébergements XMPP à jour conseillés</a></li>
<li><a href="#jabberfr-cherche-un-d%C3%A9veloppeur-ou-une-d%C3%A9veloppeuse-web">JabberFR cherche un développeur ou une développeuse Web</a></li>
</ul><h2 id="historique">Historique</h2>
<p>ChatSecure est un client XMPP pour iPhones et iPads permettant de chiffrer ses discussions. Il est proche de <a href="https://guardianproject.info"><em>The Guardian Project</em></a>, qui vise à développer et promouvoir des logiciels de chiffrement pour téléphones mobiles. Entre <a href="https://guardianproject.info/2013/10/24/chatsecure-v12-provides-comprehensive-security-and-a-whole-new-look/">2013</a> et <a href="https://chatsecure.org/blog/chatsecure-android-deprecated/">2016</a> une version Android était développée par une autre équipe, mais celle‐ci a dérivé le projet sous un autre nom : <a href="http://zom.im">Zom</a>. Ce projet se veut plus facile d’utilisation et plus jovial. Cependant, il lui est reproché de mettre au second plan, voire d’empêcher, la fédération avec le reste de l’écosystème XMPP.</p>
<p>Dorénavant, l’équipe de ChatSecure iOS conseille <a href="https://conversations.im">Conversations.im</a> comme client XMPP pour Android.</p>
<h2 id="À-quoi-sert-omemo">À quoi sert OMEMO ?</h2>
<p>OMEMO pour « <em>OMEMO Multi‐End Message and Object Encryption</em> » soit « OMEMO chiffrement de messages et objets pour plusieurs destinations ».</p>
<p>OMEMO est une adaptation pour XMPP du <a href="https://en.wikipedia.org/wiki/Signal_Protocol">protocole Signal-Axolotl</a> initialement développé par Open Whisper Systems et utilisé dans les applications de messagerie Signal, WhatsApp et Google Allo. Il a été développé par Andreas Straub durant un <a href="https://fr.wikipedia.org/wiki/Google_Summer_of_Code" title="Google Summer of Code"><em>GSoC</em></a> (Daniel Gultsch, le développeur du client Conversations pour Android, ayant été son « mentor ») et il est normalisé par la <a href="http://xmpp.org/extensions/xep-0384.html">XEP-0384</a> au statut encore expérimental.</p>
<p><a href="https://fr.wikipedia.org/wiki/Off-the-Record_Messaging">OTR</a>, qui est le protocole de chiffrement de bout en bout le plus répandu, a de nombreux problèmes, car il a été conçu pour des ordinateurs de bureau et des conversations synchrones. Par exemple, si vous n’avez pas de session OTR active, vous ne pouvez pas démarrer de nouvelle session si votre contact est hors ligne. Même si vous avez une session OTR active, elle peut être abandonnée si l’un des utilisateurs ferme son client (dans le cas de ChatSecure, ça peut être un arrêt automatisé par le système pour manque de mémoire disponible). Ce qui amène à des messages qui disparaissent sans avoir la possibilité d’indiquer quels messages n’ont pas pu être déchiffrés. Il est important de noter que, pour des raisons de confidentialité, ces fonctions peuvent aussi être vues comme des avantages, d’où l’intérêt de garder OTR à disposition.</p>
<p>Un des avantages d’OMEMO est sa compatibilité avec MAM (voir ci‐dessous la description de cette XEP) : on peut synchroniser les messages chiffrés dans l’archive et tout appareil qui a déjà signalé sa prise en charge d’OMEMO (et a été vérifié, selon la politique de sécurité en vigueur) au moment de la discussion peut les déchiffrer et donc fournir un changement d’appareil indolore à l’utilisateur.</p>
<p>OMEMO permet de commencer une conversation chiffrée sur un client, par exemple un téléphone mobile, puis de la poursuivre sur un autre, par un exemple un ordinateur de bureau (en utilisant <a href="https://gajim.org/">Gajim</a> et <a href="https://dev.gajim.org/gajim/gajim-plugins/wikis/OmemoGajimPlugin">le greffon qui va bien avec</a>), sans rompre la session chiffrée.</p>
<p>OMEMO permet aussi de chiffrer une conversation de groupe. Conversations.im et Gajim supportent déjà cette fonctionnalité. ChatSecure 4 ne la gère pas encore, mais c’est sur la feuille de route pour la version 4.1.</p>
<p>Une autre propriété importante d’OMEMO est la <a href="https://fr.wikipedia.org/wiki/Confidentialit%C3%A9_persistante">confidentialité persistante</a> (<em>forward secrecy</em> en anglais). En plus des clefs publiques et privées utilisées par les correspondants, des clefs de session sont générées, puis effacées après utilisation. Ainsi, si un attaquant intercepte les discussions et récupère les clefs privées des correspondants, il ne pourra pas déchiffrer les messages. Cependant, il est important de savoir que cette confidentialité persistante est assurée pour les messages lors de leur transport. Or, par défaut et pour des raisons pratiques, les applications Signal, WhatsApp, Conversations, ChatSecure, etc., stockent quand même l’historique des conversations en local. Ainsi, un attaquant peut prendre connaissance de ces conversations en subtilisant ou piratant les terminaux ou les clients où elles sont enregistrées.</p>
<p>Une page récapitule <a href="https://omemo.top">l’avancement de la prise en charge d’OMEMO</a> par les différents clients XMPP.</p>
<p>On peut noter que ni Gajim, ni Conversations, ni ChatSecure n’utilisent l’actuelle version standard, ils utilisent tous une version basée sur <em>libsignal</em>, alors que le standard utilise <em>olm</em> (variante spécifiée par les équipes de Matrix). Ceci dit, la mise à jour devrait être relativement simple (si <em>olm</em> est disponible dans les langages utilisés).</p>
<h2 id="avantages-domemo-et-xmpp-par-rapport-aux-autres-logiciels">Avantages d’OMEMO et XMPP par rapport aux autres logiciels</h2>
<p>Les clients XMPP utilisant OMEMO (ChatSecure, Conversations et Gajim) bénéficient de plusieurs avantages par rapport aux autres clients de messagerie chiffrée, en particulier du point de vue de la sécurité.</p>
<p>Par rapport à WhatsApp ou des clients similaires, ces clients XMPP ont l’avantage de reposer entièrement sur du code source publié et recompilable pour son propre usage. Cela permet d’auditer le code et vérifier l’absence de porte dérobée.</p>
<p>Par rapport à Signal ou des clients libres similaires, XMPP est fédéré. On peut donc utiliser son propre hébergement. Ce point est un avantage, à condition d’avoir confiance en son hébergeur XMPP et en les hébergeurs de nos correspondants.</p>
<p>Par ailleurs, les clients XMPP ne lient pas l’identité à des numéros de téléphone, ce qui peut être pratique pour renforcer l’anonymat.</p>
<p>Enfin, XMPP étant lui‐même un protocole « <em>push</em> », ce qui est important pour ne pas vider la batterie, il n’est <a href="https://gultsch.de/xmpp_2016.html">pas nécessaire d’utiliser des services annexes</a> fournis par Google, comme le <em>Google Cloud Messaging</em>. Cependant, sur iOS, on est obligé d’utiliser le service <em>push</em> d’Apple.</p>
<p>Enfin, en termes d’ergonomie, notamment pour vérifier la validité des clefs de chiffrement, ces clients sont proches de Signal, WhatsApp, etc. (voir ci‐dessous).</p>
<h2 id="omemo-dans-chatsecure">OMEMO dans ChatSecure</h2>
<p>Prendre en charge OMEMO d’un point de vue logiciel est important, mais il est aussi important que l’utilisateur puisse vérifier la stabilité des clefs de chiffrement. ChatSecure a donc ajouté une interface permettant de faire un contrôle visuel des clefs.<br><img src="//img.linuxfr.org/img/68747470733a2f2f636861747365637572652e6f72672f696d616765732f76342d70726f66696c652e706e67/v4-profile.png" alt="Vérification des clefs de chiffrement dans ChatSecure" title="Source : https://chatsecure.org/images/v4-profile.png"></p>
<p>Par ailleurs, ChatSecure a adopté un comportement appelé TOFU pour « <a href="https://en.wikipedia.org/wiki/Trust_on_first_use"><em>Trust On First Use</em></a> » (confiance lors du premier usage). Cela consiste à demander à l’utilisateur de confirmer la légitimité d’une clef de chiffrement lors du premier contact, y compris pour chaque nouvel appareil utilisé par un correspondant.<br><img src="//img.linuxfr.org/img/687474703a2f2f61322e6d7a7374617469632e636f6d2f75732f7233302f507572706c653132322f76342f61352f32662f65392f61353266653937352d343538642d656539622d363933362d6330653066363132643062312f7363353532783431342e6a706567/sc552x414.jpeg" alt="ChatSecure interface de confirmation des clefs TOFU" title="Source : http://a2.mzstatic.com/us/r30/Purple122/v4/a5/2f/e9/a52fe975-458d-ee9b-6936-c0e0f612d0b1/sc552x414.jpeg"></p>
<p>Ce comportement peut être lourd, notamment lorsqu’on doit valider les clefs de nombreux correspondants. Certaines applications comme WhatsApp ont choisi de simplifier l’utilisation en faisant confiance sans demander une validation de l’utilisateur. Ce choix amène d’autres problèmes de sécurité.</p>
<p>Une solution médiane a été proposée par Daniel Gultsch : « <a href="https://gultsch.de/trust.html"><em>Blind Trust Before Verification</em></a> » (confiance aveugle avant vérification). Cela consiste à ne pas demander confirmation de la clef lors du premier contact, mais une fois qu’un utilisateur fait la démarche pour valider la clef, alors tout nouveau changement de clef nécessitera une confirmation. Cette technique est utilisée par Conversations, mais elle n’a pour l’instant pas été implémentée pour ChatSecure.</p>
<h2 id="autres-nouveautés-de-chatsecure">Autres nouveautés de ChatSecure</h2>
<p>Cette nouvelle version a d’autres améliorations, telles qu’une file des messages sortants qui gère le chiffrement (pour renégocier automatiquement les sessions chiffrées, si nécessaire, en cas d’échec d’envoi du message).</p>
<h2 id="À-venir">À venir</h2>
<p>La version 4.1 va voir arriver la prise en charge de MAM. <em>Message Archive Management</em> (<a href="http://xmpp.org/extensions/xep-0313.html">XEP-0313</a>) est la nouvelle extension de gestion des archives de messages côté serveur. Elle permet de synchroniser l’historique avec le serveur et d’en demander des portions de façon indépendante pour les consulter.</p>
<p>Le chiffrement de conversations de groupe dans des salons en utilisant OMEMO a été reporté pour la version 4.1. Cela ne fonctionnera que si tous les participants présents dans le salon utilisent des clients qui prennent en charge OMEMO.</p>
<p>ChatSecure en a profité pour annoncer qu’il est prévu de développer une version bureau de leur logiciel XMPP. Cependant, aucune date n’a été indiquée.</p>
<p>La version 4.1 intégrera également la prise en charge des <em>chat markers</em> (<a href="https://xmpp.org/extensions/xep-0333.html">XEP-0333</a>), qui permettent de savoir si le message a été reçu, affiché, ou lu (ce dernier état étant accompagné d’une interaction utilisateur).</p>
<p>Enfin, une amélioration du partage de fichiers est également prévue, avec notamment un chiffrement des fichiers envoyés via OMEMO.</p>
<h2 id="hébergements-xmpp-à-jour-conseillés">Hébergements XMPP à jour conseillés</h2>
<p>Récemment XMPP a beaucoup évolué. Par exemple, pour ne plus vider rapidement la batterie des téléphones mobiles. Maintenant, grâce à MAM il permet aussi de continuer une conversation sur un autre client ou de stocker les messages non délivrés. De <a href="https://gultsch.de/xmpp_2016.html">nombreuses autres fonctionnalités améliorent l’ergonomie sur téléphone mobile</a> et ordinateur de bureau.</p>
<p>Mais ces fonctionnalités exigent des serveurs à jour des dernières XEP. Pour se repérer, Daniel Gultsch publie <a href="https://gultsch.de/compliance_ranked.html">un tableau qui classe les services d’hébergement selon leur conformité</a>.</p>
<p>Actuellement, trois hébergeurs à jour des récentes évolutions permettent d’utiliser notre propre nom de domaine, nous permettant ainsi de ne pas être dépendant de leurs services :</p>
<ul>
<li>celui de <a href="https://jabber.apinc.org/">JabberFR</a> ;</li>
<li>celui de <a href="https://account.conversations.im/domain/">Conversations.im</a> ;</li>
<li>celui de <a href="https://support-en.mailbox.org/knowledge-base/article/using-jabber-service-with-own-domain">Mailbox.org</a>.</li>
</ul><p>Il est vivement conseillé de les utiliser. Le service d’hébergement avec DNS personnalisable de <em>Conversations.im</em> est présenté dans un <a href="//linuxfr.org/users/apichat/journaux/hebergeurs-xmpp-avec-noms-dns-personnalises-conversations-im-mailbox-org">journal‐tutoriel publié sur <em>LinuxFr.org</em></a>.</p>
<p>Pour l’auto‐hébergement, le serveur XMPP installé par <a href="http://yunohost.org">Yunohost</a> et sa configuration doivent encore s’améliorer. En particulier la prise en charge en charge de MAM est <a href="https://dev.yunohost.org/issues/49">prévue pour les versions futures</a>. Pour le serveur, le <a href="https://dev.yunohost.org/issues/67">passage de Metronome à Prosody</a> est prévu.</p>
<h2 id="jabberfr-cherche-un-développeur-ou-une-développeuse-web">JabberFR cherche un développeur ou une développeuse Web</h2>
<p>Cette dépêche a été réalisée grâce à l’aide de <em>mathieui</em> (ainsi que <em>Goffi</em> et <em>palm123</em>).<br><em>mathieui</em>, avec <em>Link Mauve</em>, travaille au renouveau de JabberFR, en particulier son service d’hébergement XMPP. Celui‐ci a été hérité de l’APINC, qui aujourd'hui n’existe plus, et nécessite notamment une modernisation et une évolution de son interface Web. Comme cela a été <a href="//linuxfr.org/news/renouveau-de-jabberfr">annoncé lors d’une précédente dépêche</a>, ils sont à la recherche d’un développeur ou d’une développeuse Web pour les aider.</p>
<p>Pour l’instant, personne ne s’est présenté. Donc, si le cœur vous en dit, n’hésitez pas à les contacter. Voici le <a href="//linuxfr.org/news/renouveau-de-jabberfr#recherche-de-volontaires-pour-moderniser-le-site-web">message initialement publié</a> :</p>
<blockquote>
<p><em><strong>Recherche de volontaires pour moderniser le site Web</strong></em></p>
<p><em>Comme exposé plus haut, JabberFR a tout un héritage de services, notamment Web, qui lui permettent d’être une vitrine pour les fonctionnalités offertes par XMPP. Cependant, il y a des éléments dont l’âge se fait sentir, tels que le design du site Web ou des choses moins visibles comme le code derrière. Il n’est, bien sûr, pas question de devenir un site flashy réclamant du JavaScript pour tout avec des animations dans tous les sens (ce serait mal nous connaître), mais JabberFR est quand même à la recherche de volontaires pour donner un coup de fraîcheur visuelle et technologique pour son site.</em></p>
</blockquote></div><div><a href="https://linuxfr.org/news/chatsecure-4-0-ronronne-et-adopte-omemo.epub">Télécharger ce contenu au format EPUB</a></div> <p>
<strong>Commentaires :</strong>
<a href="//linuxfr.org/nodes/111072/comments.atom">voir le flux Atom</a>
<a href="https://linuxfr.org/news/chatsecure-4-0-ronronne-et-adopte-omemo#comments">ouvrir dans le navigateur</a>
</p>
ApichatDavy DefaudmathieuiXavier Teyssierpalm123Benoît SibaudGofficlaudexhttps://linuxfr.org/nodes/111072/comments.atom