Mesibo End-to-End Encryption - Introduction

mesibo's end-to-end encryption (E2EE) algorithm ensures that messages and calls between your users are secure and no one can read or listen to them, not even mesibo or your app (if you are using mesibo on-premise). mesibo end-to-end encryption (E2EE) algorithm encrypts each message with a different encryption key so that it is difficult to intercept the communication. mesibo also has a special man-in-the-middle (MITM) protection mode for extra sensitive communication.

mesibo's end-to-end encryption algorithm is an improvement over existing protocols, namely OTR, SCIMP, and Open Whisper System (used by WhatsApp, Signal, etc), and it is currently the strongest end-to-end encryption protocol in the market.

mesibo's end-to-end encryption protocol was initially based on Signal’s protocol and then improved considerable with many enhancements, for example,

  • Serverless, Peer-to-peer Protocol
  • Better Ciphers (AES-GCM, Chacha20-Ply1305) and multi-cipher mode
  • Complete protection against the man-in-the-middle attack
  • Improved X3DH and Double Ratchet Algorithm
  • Improved Fingerprints

You can read about improvements in detail hereopen_in_new.

E2EE is currently available for Android, IOS, C++, and Python only. It will be available for JavaScript soon. Note that, even without E2EE, all the communication is secure and encrypted with TLS. Also, the on-premise retention and multi-device sync feature can not work with E2EE.

Enabling End-to-End Encryption

You can enable end-to-end encryption with just one line of code. Once you enable it, your app will automatically become the most secure messaging and calling app globally. Due to the growing concern for privacy, there are no reasons to not enable end-to-end encryption in your apps.

In Java and Kotlin,

Mesibo.e2ee().enable(true);

In Objective-C,

[[MesiboInstance e2ee] enable:YES];

In Swift,

Mesibo.getInstance()?.e2ee().enable(true)

You don’t need to do anything other than to enable it. However, if you need more control, you can use the E2EE APIs described in the next few sections.