537 karma · joined May 29, 2016
It's still very early in the development but it looks pretty good.
> What do we think about this protocol?
It's the first encryption protocol that allowed me to actually use it on a daily basis. I regularly use my desktop client and my mobile client in parallel and switch between them constantly. OMEMO allows me to do that.
> Is it a good idea?
Yes. Compared to OTR the entire stack (that includes the XMPP layer) is properly standardized. This also kinda answers your questions regarding the OTR implementations. OTR had the problem that it couldn't do multiple devices and the behavior regarding multiple devices and when to start and end sessions wasn't defined at all. All OMEMO developers are also in regular contact to coordinate behavior between the apps.
> Why are there three encryption choices I would really like to get rid of OTR (and we will eventually) but we currently still need it for backwards compatibility with older clients (primarily Pidgin) PGP servers a bit of a different use case. It doesn't provide forward secrecy and authentication but it turn allows for a server-side re-retrievable archive. If you get a new client it can automatically retrieve old messages. (In OMEMO the receiving must exist at the time of writing. It doesn't have to be online but it has to exist and announced the device specific key material)
In reality the choice isn't too much of a problem. You select it once per contact and that's it. It's not like you are getting new contacts every day.
> How is the server support.
The server requirements for OMEMO aren't too bad. However it is recommended that you do pick a modern XMPP server for other reasons (battery-friendliness, reliability). Have a look at this comparison list to see if your server supports all modern extensions: https://gultsch.de/compliance_ranked.html
> How is the support of group chat
Support for group chat exists and works fine once it is setup. However it has some limitations that make setup harder. Everyone has to be in everyone elses contact list. And the group needs to be setup with special parameters. (Conversations automatically sets it up this way, but you couldn't for example create the group with Pidgin and then expect OMEMO to work.) The readme on the Conversations github page explains this in a little more detail: https://github.com/siacs/Conversations/blob/master/README.md...
and the relevant discussion on HN: https://news.ycombinator.com/item?id=11837466
If you want alternatives there is jabber.at, which has also proven to be very well maintained in the past.
And there is jabber.de (but they don't have MAM (yet))
That is completely untrue. First of all there are public servers that have exactly the same feature set like jabber.at second of all we are running ejabberd on conversations.im. ejabberd is open source can be run by anyone. You just have to do it. Granted the list of public servers with a full feature set is not as long as we'd like. But the best way of changing this is to run one yourself.
The alarm manager - where apps can schedule to be run at some point in the future - is in fact grouping those events together. But that happens entirely independent of GCM. The Alarm Manager is part of Android where as the push service is a proprietary Google service.
I mean I rather have people use matrix than a closed system like WhatsApp or Signal. But I honestly don't see the point for developing a new protocol other than JSON over HTTP fits better into the zeitgeist and NIH syndrome.