2012-03-25 22:05:54 +00:00
|
|
|
|
OTR
|
|
|
|
|
===
|
|
|
|
|
|
|
|
|
|
*DISCLAIMER: THE OTR LIB IS IN AN EXPERIMENTAL STATE AND SHOULD NOT BE
|
|
|
|
|
CONSIDERED AS ENTIRELY RELIABLE*
|
|
|
|
|
|
|
|
|
|
('though it works pretty well')
|
|
|
|
|
|
|
|
|
|
This plugin implements http://wiki.xmpp.org/web/OTR[Off The Record messaging].
|
|
|
|
|
|
|
|
|
|
This is a plugin used to encrypt one-to-one conversation using the OTR
|
|
|
|
|
encryption method. You can use it if you want good privacy, deniability,
|
|
|
|
|
authentication, and strong secrecy. Without this
|
|
|
|
|
encryption, your messages are encrypted *at least* from your client (poezio) to
|
|
|
|
|
your server. The message is decrypted by your server and you cannot control the
|
|
|
|
|
encryption method of your messages from your server to your contact’s server
|
|
|
|
|
(unless you are your own server’s administrator), nor from your contact’s
|
|
|
|
|
server to your contact’s client.
|
|
|
|
|
|
|
|
|
|
This plugin does end-to-end encryption. This means that *only* your contact can
|
|
|
|
|
decrypt your messages, and it is fully encrypted during *all* its travel
|
|
|
|
|
through the internet.
|
|
|
|
|
|
|
|
|
|
Note that if you are having an encrypted conversation with a contact, you can
|
|
|
|
|
*not* send XHTML-IM messages to him. They will be removed and be replaced by
|
|
|
|
|
plain text messages.
|
|
|
|
|
|
|
|
|
|
Installation and configuration
|
|
|
|
|
------------------------------
|
|
|
|
|
|
|
|
|
|
To use the OTR plugin, you must first install libopenotr.
|
|
|
|
|
|
|
|
|
|
If you use Archlinux, there is a https://aur.archlinux.org/packages.php?ID=57957[libopenotr-git] package on the AUR.
|
|
|
|
|
|
|
|
|
|
If not, then you will have to install it by hand.
|
|
|
|
|
|
|
|
|
|
First, clone the repo and go inside the created directory:
|
|
|
|
|
|
|
|
|
|
==============================================
|
2012-05-16 14:53:33 +00:00
|
|
|
|
[source,bash]
|
|
|
|
|
-------------
|
|
|
|
|
git clone https://github.com/teisenbe/libopenotr.git
|
2012-03-25 22:05:54 +00:00
|
|
|
|
|
2012-05-16 14:53:33 +00:00
|
|
|
|
cd libopenotr
|
|
|
|
|
-------------
|
2012-03-25 22:05:54 +00:00
|
|
|
|
==============================================
|
|
|
|
|
|
|
|
|
|
then run autogen.sh and configure
|
|
|
|
|
|
|
|
|
|
============
|
2012-05-16 14:53:33 +00:00
|
|
|
|
[source,bash]
|
|
|
|
|
-------------
|
|
|
|
|
sh autogen.sh
|
2012-03-25 22:05:54 +00:00
|
|
|
|
|
2012-05-16 14:53:33 +00:00
|
|
|
|
./configure --enable-gaping-security-hole
|
|
|
|
|
-------------
|
2012-03-25 22:05:54 +00:00
|
|
|
|
============
|
|
|
|
|
|
|
|
|
|
Then compile & install the lib:
|
|
|
|
|
|
|
|
|
|
============
|
2012-05-16 14:53:33 +00:00
|
|
|
|
[source,bash]
|
|
|
|
|
-------------
|
|
|
|
|
make
|
2012-03-25 22:05:54 +00:00
|
|
|
|
|
2012-05-16 14:53:33 +00:00
|
|
|
|
sudo make install
|
|
|
|
|
-------------
|
2012-03-25 22:05:54 +00:00
|
|
|
|
============
|
|
|
|
|
|
|
|
|
|
Finally, install the python module:
|
|
|
|
|
|
|
|
|
|
=============================
|
2012-05-16 14:53:33 +00:00
|
|
|
|
[source,bash]
|
|
|
|
|
-------------
|
|
|
|
|
python3 setup.py build
|
2012-03-25 22:05:54 +00:00
|
|
|
|
|
2012-05-16 14:53:33 +00:00
|
|
|
|
sudo python3 setup.py install
|
|
|
|
|
-------------
|
2012-03-25 22:05:54 +00:00
|
|
|
|
=============================
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Usage
|
|
|
|
|
-----
|
|
|
|
|
|
|
|
|
|
To use OTR, make sure the plugin is loaded (if not, then do /load otr).
|
|
|
|
|
|
|
|
|
|
Once you are in a private conversation, you have to do a:
|
|
|
|
|
|
|
|
|
|
==========
|
|
|
|
|
|
|
|
|
|
/otr start
|
|
|
|
|
|
|
|
|
|
==========
|
|
|
|
|
|
|
|
|
|
The status of the OTR encryption should appear in the bar between the chat and
|
|
|
|
|
the input "OTR: encrypted".
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Once you’re done, end the OTR session with
|
|
|
|
|
|
|
|
|
|
==========
|
|
|
|
|
|
|
|
|
|
/otr end
|
|
|
|
|
|
|
|
|
|
==========
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Known problems
|
|
|
|
|
--------------
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Empty messages send when changing status.
|