[[!meta title="Chatting with Pidgin"]]

For chatting and instant messaging, Tails includes the <span class="application">[Pidgin Instant
Messenger](http://pidgin.im/)</span>.

You can use it to connect to [[!wikipedia IRC]] or [[!wikipedia XMPP]]
(also known as Jabber) servers, and have several accounts connected at
the same time.

To start <span class="application">Pidgin</span> choose
<span class="menuchoice">
  <span class="guimenu">Applications</span>&nbsp;▸
  <span class="guisubmenu">Internet</span>&nbsp;▸
  <span class="guimenuitem">Pidgin Instant Messenger</span>
</span> or click on the <span class="application">Pidgin</span> icon in
the [[<span class="guilabel">Favorites</span> submenu|doc/first_steps/introduction_to_gnome_and_the_tails_desktop#favorites]].

For more detailed documentation refer to the [official <span
class="application">Pidgin</span> user
guide](http://developer.pidgin.im/wiki/Using%20Pidgin).

[[!toc]]

Predefined accounts
===================

Two accounts are configured in <span class="application">Pidgin</span>
by default:

- `irc.oftc.net` to connect to the OFTC IRC server.
- `127.0.0.1` to connect to the I2P IRC server.

Those accounts are deactivated when Tails is started. To activate them,
choose
<span class="menuchoice">
  <span class="guimenu">Accounts</span>&nbsp;▸
  <span class="guisubmenu">Enable Account</span>
</span>, and select the account that you want to enable in the submenu.

<span class="application">Off-the-record</span> (<span class="application">OTR</span>) encryption
=================================================================================================

As explained on its [official page](http://www.cypherpunks.ca/otr/),
<span class="application">Off-the-Record</span> messaging allows you to
have private conversations over instant messaging by providing:

- **Encryption**<br />
    No one else can read your instant messages.
- **Authentication**<br />
    You are assured the correspondent is who you think it is.
- **Deniability**<br />
    The messages you send do not have digital signatures
    that are checkable by a third party. Anyone can forge messages after
    a conversation to make them look like they came from you.
    However, during a conversation, your correspondent is assured
    the messages he sees are authentic and unmodified.
- **Perfect forward secrecy**<br />
    If you lose control of your private keys, no previous conversation is compromised.

<div class="caution">

<p><strong>OTR is deactivated by default</strong>, and your conversations are
not private.</p>

</div>

<div class="caution">

<p><strong>File transfers are not encrypted by OTR.</strong> OTR only encrypts conversations.</p>

</div>

To learn how to use OTR with <span class="application">Pidgin</span>,
refer to the documentation from [Security in-a-box: How to Use OTR to
Initiate a Secure Messaging Session in
Pidgin](https://securityinabox.org/en/pidgin_securechat).

<div class="tip">

To store your OTR keys and preferences across separate working sessions,
you can activate the [[<span class="guilabel">Pidgin</span> persistence
feature|doc/first_steps/persistence/configure/#pidgin]].

</div>

<div class="bug">

In a private OTR conversation over IRC, <strong>a message sent using the
<code>/me</code> command is not encrypted</strong>. The person receiving
the message is notified by a warning.

</div>

IRC servers blocking Tor
========================

Some IRC servers block connections from Tor because
Tor is sometimes used to send spam.

- [Accessing freenode Via Tor](https://freenode.net/irc_servers.shtml#tor)
(the hidden services mentioned on this page are sometimes unavailable)
- [OFTC and Tor](http://www.oftc.net/Tor/)
- [List of IRC/chat networks that block or support Tor](https://trac.torproject.org/projects/tor/wiki/doc/BlockingIrc)

Random username generation
==========================

Every time you start Tails, a random username is generated for all <span
class="application">Pidgin</span> accounts.

The generator uses a list of common English first names, and modifies
them, so that they are almost unique, and does not reveal that you are
using Tails.

It is based on the <span class="application">language confluxer</span>
by [Christopher Pound](http://generators.christopherpound.com/).

<div class="tip">

If you want to reuse the same username across separate working sessions,
you can activate the [[<span class="guilabel">Pidgin</span> persistence
feature|doc/first_steps/persistence/configure/#pidgin]].

</div>

Adding support for another protocol
===================================

For security reasons, it is only possible to use IRC and XMPP with
<span class="application">Pidgin</span> in Tails. Here are the
prerequisites to enable another protocol that is supported by <span
class="application">Pidgin</span> otherwise:

a. The support in <span class="application">Pidgin</span> for this protocol has been successfully tested
   in Tails.
a. Someone volunteers to maintain the corresponding support in Tails
   on the long term.
a. Someone has verified that the security record of the desired plugin
   (including open bugs) is good enough.

If you want to work on this issue, see [[our contribute page|contribute/how/code]].
