XMPP+OMEMO currently is the most secure and private form of instant messaging. This Article explains it well. OMEMO encryption in the digdeeper @ chat.disroot.org room is required for communication or else you wouldn't be able to decrypt and read other peoples' messages. For now, this guide will be how to use XMPP+OMEMO with the instant messaging program Pidgin. You may also use other XMPP programs that support OMEMO here. I have not tested other clients yet - Pidgin is guaranteed to work.
First, start off with installing Pidgin from your Linux distro's package manager or from the Pidgin website if you are on Windows.
Then, install the plugin lurch by gkdr from Github.
While logged into Pidgin with your XMPP account click on Tools -> Plugins from the top. Scroll down to find the lurch plugin and checkmark it to enable it. Restart Pidgin and it should work.
When instant messaging other users that have OMEMO enabled it should say OMEMO / OMEMO available next to their username in the room/user tab. For group chatrooms you have to type '/lurch enable' to enable OMEMO. This has to be done only once - There is no need to do this everytime you join the group chat. You have to add everyone in the group chat and authorize them to start receiving and sending messages with encryption. If there are any errors with the encryption it will tell you everytime if you or the user(s) send a message and the message will be sent unencrypted instead.
Not every XMPP server supports OMEMO encryption. Please check here to see XMPP server OMEMO encryption compliance. Avoid XMPP servers that do not support it as you won't be able to read or decrypt messages from other users that use OMEMO.