Does Mongooseim support Signal protocol?

XEP-0384: OMEMO Encryption (Signal / Text Secure)

https://wiki.xmpp.org/web/XMPP_E2E_Security

I don’t know if it supports it out of the box. But you would not need to implement much on the server side to make it work. Basically the only thing the server needs to take care of is storing and distributing the pre-keys of the users. Apps like WA and Wire do only encrypt the message payload (i.e. the stanza body in the xmpp world). The sever is agnostic to the content of the payload and handles encrypted messages like any other message.

Some form of the Signal potocol also handles encrypting message meta data. I don’t know which apps implement this.

Cool, you are quite right.

We could use Rustler to NIF in a Rust/C impl for that.

Anybody any experience on that? Good Rust impl for that?

No need to have any nif for handling the pre-keys. Define a IQ handler in MongooseIM and let it accept and store the pre-keys in some xmpp compatible format (like base64).

Does MongooseIM support XEP-0239 : Binary XMPP ?
https://xmpp.org/extensions/xep-0239.html

1 Like

I open an issue on Github for MongooseIM:

Where is the branch phoenix-integration ? I can’t find it now.

I am reading this: https://github.com/kevinblade/phoenix-mim
I like to have access like that: iex> :ejabberd_auth.try_register(“username”, “localhost”, “password”)

Even can run MIM in standalone mode, but would like to using:
iex> :ejabberd_auth.try_register(“username”, “localhost”, “password”)

Please help on this.