From MIXXnet Wiki

Revision as of 17:13, 21 October 2010 by Alex323 (Talk | contribs) (Added note about hash incompatibility between 1.0.0 and prior versions.)

(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)

Secure Sockets Layer (SSL) is a cryptographic protocol which provides secure communication on the Internet.

General Information

Users may connect to the MIXXnet IRC network using any server on the network. The default port is 6697 unless listed otherwise.

When you use SSL, you are establishing a secure connection between you and the server. As of February 11, 2006, MIXXnet operates with full SSL support including client-to-server connections and server-to-server links.

Users may download a copy of the CA certificate MIXXnet uses which can be imported into some clients to allow for a "trusted" connection. It is not necessary for you to do this, but the option is available to you. More information about installing MIXXnet's CA certificate can be found here.

User & Channel Information


To check to see if a user is using SSL, simply whois that user. A secured user's whois would look something like:

Chris is * Chris
Chris using Anjunabeats MIXXnet IRC Server
Chris is using a Secure Connection
Chirs End of /WHOIS list.

This means that the user "Chris" is using SSL on

Channel Protection

In a secure channel, all of the users must have SSL enabled for the channel to be secure. If one user isn't secure, then all the messages will go to that user unencrypted. SSL users and non-SSL users can co-exist on the same channel. If you wish to limit your channel to only people using SSL, you can set the channel mode +z (/mode #channel +z). The +z mode prevents non-SSL users from joining the channel. If a non-SSL user does try to join, (s)he will see this message:

#channel unable to join channel (not using secure connection)

Client Setup


To use SSL in XChat, click XChat->Network List. Next, click on MIXXnet and Edit. Then select the two check boxes that say Use SSL for all servers on this network and Accept invalid SSL certificate as shown below.

Screenshot of X-Chat with SSL enabled.


mIRC requires that you have the Windows version of OpenSSL installed on your system. You can download OpenSSL for Windows at this website. More information on how to install OpenSSL for Windows is beyond the scope of this document. To check if you've installed OpenSSL correctly, look for the SSL button in the mIRC Options window as shown below.

Screenshot of mIRC with SSL enabled.

If you have SSL enabled, choose a server from the Servers section above. Type: /server +6697. The '+' sign is important because it tells mIRC to use SSL.

When trying to connect to a SSL enabled server, you may be presented with a dialog that says the SSL certificate is invalid. As long as the certificate has not expired and the domain name matches, the certificate is OK. The reason you are seeing this dialog is because MIXXnet acts as its own certificate authority.


The use of SSL in Irssi is very simple. All you need to do is type the following commands into the status window:
/set use_ssl on
/set ssl_verify on
After you have done these, you need to pass the -ssl flag to /connect when connecting to an SSL enabled server. For example:
/connect -ssl 6697

Other Clients

Other clients that support SSL include BitchX, WeeChat, KVirc, Pidgin, Colloquy, Opera, Ircle, and Snak to name a few.

CA Certificate

If you would like to install MIXXnet's CA certificate for use in your IRC client to establish a trusted connection and avoid having to accept an "invalid" SSL certificate, please follow the steps below.


For clients that use OpenSSL (XChat, mIRC), download MIXXnet's CA Certificate to your computer and move it to the following directory (creating the directory structure if it does not already exist): C:\usr\local\ssl\certs\

When mixxnet.crt is in that directory, rename it to the following (the ".0" at the end is required): 8a4e52fb.0

NOTE: If you are using the SilvereX Windows build of XChat 2.8.6-1 or 2.8.6-2, the path is different due to a bug. The correct path is: C:\some\openssl\dir\ssl\certs\8a4e52fb.0

Mac OS X

Download MIXXnet's CA Certificate and rename it from mixxnet.crt to 8a4e52fb.0. Then move that file to /System/Library/OpenSSL/certs/


Download and move MIXXnet's CA Certificate to the path where OpenSSL is configured to look for trusted certificates. This directory varies by Linux distribution or BSD version, however common paths include: /etc/ssl/certs/, /usr/local/openssl/certs/, /usr/share/ssl/certs/, and /usr/local/ssl/certs/.

Once the CA cert is moved to that directory, make a symlink with the cert's fingerprint and ".0" appended at the end so that OpenSSL can properly detect the certificate:

ln -s mixxnet.crt 8a4e52fb.0

Tip: The filename above was derived from the command: $ openssl x509 -in mixxnet.crt -noout -hash Note: The hashes used above were calculated with OpenSSL 1.0.0a. Prior versions use a different scheme to calculate the hash. If you use a version that is less than 1.0.0, try using the filename 6730e552.0 instead.

External Links