Title: Beginners guide to XMPP-speak Date: 2017-2-28 Category: xmpp Tags: xmpp, lexicon, terminology Slug: beginners-guide-to-xmpp-speak Summary: placeholder status: draft XMPP - Extensible Messaging and Presence Protocol Jabber - The original name of the [Extensible Messaging and Presence Protocol](https://en.wikipedia.org/wiki/XMPP) (XMPP), the open technology for instant messaging and presence. [Jabber.org](https://en.wikipedia.org/wiki/Jabber.org) is the original instant messaging (IM) service based on XMPP. MUC - "Multi User Chat", a groupchat ROSTER - is your list of contacts XEP - XMPP Extension Protocol - * [XEP-0045 MUC](https://xmpp.org/extensions/xep-0045.html) - Multi User Conference, in other words, group chats. * [XEP-0163: PEP](http://xmpp.org/extensions/xep-0163.html) - Personal Eventing Protocol allows amongst others for automatically publishing avatars and OMEMO public keys * [XEP-0313: MAM](http://xmpp.org/extensions/xep-0313.html) - Message Archive Management, an extension that allows one to receive messages while offline) federated server - A group of decentralised servers that agreed upon certain standards to communicate with eachother. The federated XMPP protocol enables the user to select a client of preference and connect to a XMPP server of choice. centralized service - A vertical integrated service that includes both the client- and server software. ## Software: Clients As featured in our guide on [XMPP clients](http://homebrewserver.club/picking-modern-xmpp-clients.html): [Conversations](https://conversations.im/) - Mobile client for Android [Gajim](https://gajim.org/) - Desktop client for Linux distributions [ChatSecure](http://chatsecure.org/) - Mobile client for Apple iOS, 'experimental', but in active development [Adium](https://adium.im/) - Desktop client for Apple OSX [There are many more clients available](https://xmpp.org/software/clients.html). Check your local F-Droid/Google Play Store/AppStore. ## Software: Server [Prosody](http://prosody.im/) - XMPP Server software in active development (as of 2017). ## Encyption methods C2S - The connection between a client and the server S2S - The conneciton between servers E2E - End-to-end encryption encrypts the content of a message, so that only the sender and receiver at the ends of the communication chain can read it. ### https/SSL/server-to-server encryption Encrypts information while it is transfered, but the server can still read it. ### OMEMO/end-to-end encryption The information is encrypted, and also the server cannot read it . OTR - "off the record" OMEMO - OMEMO Multi-End Message and Object Encryption, OMEMO is the XMPP implementation of the Double Ratchett encryption algorithm developed for Signal by Moxie Marlinspike/Open Whisper Systems. is a client2client encryption tool, it encrypts messages between two conversations. TOFU - trust on first use (Blindly assumes the received fingerprint is trusted and is therefore checked as verified. Used in ChatSecure for OTR and OMEMO, called 'Blind Trust' in Conversations OpenPGP - Pretty good Privacy, the oldest available method of end-to-end encryption which requires quite some knowledge and maintenance by users. OMEMO is designed to provide similar or better encryption with less hassle. To use OpenPGP in Conversation athird party app called OpenKeyChain is required. Threat Model - ... This list is partly based [on this glossary](https://wiki.xmpp.org/web/Usability/Glossary) ------------------------------------------------ This guide is a companion to our article [Have You Considered The Alternative?](http://homebrewserver.club/have-you-considered-the-alternative.html) on instant messaging. Also check out our guide on [configuring the self-hosted XMPP server Prosody](http://homebrewserver.club/configuring-a-modern-xmpp-server.html), and our guide on [XMPP clients](http://homebrewserver.club/picking-modern-xmpp-clients.html).