unMessage is a peer-to-peer instant messaging application designed to enhance privacy and anonymity.
Warning ''''''' unMessage is alpha software. While every effort has been made to make sure unMessage operates in a secure and bug-free fashion, the code has not been audited. Please do not use unMessage for any activity that your life depends upon.
Transport makes use of Twisted
, Tor Onion Services
and
txtorcon
_
Encryption is performed using the Double Ratchet Algorithm
implemented in pyaxo
(using PyNaCl
_)
Authentication makes use of the Socialist Millionaire Protocol
implemented in Cryptully
Transport metadata is minimized by Tor and application metadata by
the unMessage protocol
_
User interfaces are created with Tkinter
(graphical) and
curses
(command-line)
Install the following requirements via package manager::
$ # If using Debian/Ubuntu
$ sudo apt-get install build-essential gcc libffi-dev libopus0 \
libsodium-dev libssl-dev portaudio19-dev python-dev python-tk
$ # If using Fedora
$ sudo dnf install gcc libffi-devel libsodium-devel \
openssl-devel opus portaudio-devel python-devel \
redhat-rpm-config tkinter
If you have tor installed, make sure its version is at least
0.2.7.1
::
$ tor --version
If you must update it or do not have it installed, check the version provided by the package manager::
$ # If using Debian/Ubuntu
$ apt-cache show tor
$ # If using Fedora
$ dnf info tor
If the version to be provided is not at least 0.2.7.1
, you will
have to set up Tor's package repository
_. Once you have a repository
which can provide an updated tor, install it::
$ # If using Debian/Ubuntu
$ sudo apt-get install tor
$ # If using Fedora
$ sudo dnf install tor
Installing
''''''''''
Finally, using virtualenv
, pip
and setuptools
_ (the latter
probably installed automatically with pip), you can easily install
unMessage with::
$ virtualenv ~/unmessage-env
$ . ~/unmessage-env/bin/activate
(unmessage-env)$ pip install unmessage
Launch unMessage with any of the commands::
(unmessage-env)$ unmessage-gui # graphical user interface (GUI)
(unmessage-env)$ unmessage-cli # command-line interface (CLI)
(unmessage-env)$ unmessage # last interface used
Updating '''''''' If you installed unMessage with pip, you can also use it for updates::
(unmessage-env)$ pip install --upgrade unmessage
You can find installation
and usage instructions (for the GUI
and the CLI
) on the documentation
.
Please join us on #unMessage:anemone.me or #anemone:anemone.me
with Matrix
, #anemone at OFTC
, or use the
GitHub issue tracker
_ to leave suggestions, bug reports, complaints
or anything you feel will contribute to this application.
.. cli
: https://unmessage.readthedocs.io/en/latest/cli/cli.html
.. cryptully
: https://github.com/shanet/Cryptully
.. curses
: https://docs.python.org/2/library/curses.html
.. double ratchet algorithm
: https://whispersystems.org/docs/specifications/doubleratchet
.. documentation
: https://unmessage.readthedocs.io
.. github issue tracker
: https://github.com/AnemoneLabs/unmessage/issues
.. gui
: https://unmessage.readthedocs.io/en/latest/gui/gui.html
.. set up tor's package repository
: https://www.torproject.org/docs/debian.html.en#ubuntu
.. installation
: https://unmessage.readthedocs.io/en/latest/installation.html
.. matrix
: https://matrix.org
.. oftc
: https://oftc.net
.. pip
: https://pypi.python.org/pypi/pip
.. pyaxo
: https://github.com/rxcomm/pyaxo
.. pynacl
: https://github.com/pyca/pynacl
.. setuptools
: https://pypi.python.org/pypi/setuptools
.. socialist millionaire protocol
: https://en.wikipedia.org/wiki/Socialist_millionaire
.. tkinter
: https://docs.python.org/2/library/tkinter.html
.. tor onion services
: https://www.torproject.org/docs/hidden-services.html
.. twisted
: https://twistedmatrix.com
.. txtorcon
: https://github.com/meejah/txtorcon
.. unmessage protocol
: https://unmessage.readthedocs.io/en/latest/protocol.html
.. virtualenv
: https://pypi.python.org/pypi/virtualenv