IRC: The First Messenger in History

IRC: The First Messenger in History

Chat has become the main form of communication in the modern world. Even with our closest friends and family, we often communicate more through messengers than in person. The vast majority of popular messaging solutions are centralized and proprietary, meaning they are controlled by a small group of people, and most of their internal processes are completely out of the end user’s control. There are also open-source projects, such as XMPP (Jabber), Matrix, ActivityPub, and many other less popular protocols and projects.

Open-source projects are characterized by the complete transparency of both client and server source code—anyone can deploy a full ecosystem on their own infrastructure without any dependence on the main developers. Anyone with programming skills can audit the source code to assess security, modify any part of the program, or even write their own client for the desired protocol.

The era when the “IRC” protocol (also known as “irki” or “irc”) was born is evident from one simple fact: IRC has no official logo. Apparently, in the late 1980s, little attention was paid to the visual branding of software. Despite this, IRC became a true titan in its niche among its contemporaries: synchronized operation of multiple servers within a single IRC network, various user roles (operators, administrators, several access levels for regular users), group chats, private messages, easy bot development, and extremely low server resource consumption.

This article is dedicated to the IRC (Internet Relay Chat) protocol, which is older than many of its readers. IRC originated in 1988 and is rightfully considered the first mass-standardized messenger! Architecturally, it is considered outdated, but let’s look at it from another angle—it’s the most minimalist of all mass communication protocols!

For comparison, email is also hopelessly outdated, but thanks to the openness of its protocol, we still have thousands of independent servers and millions of users who regularly check their inboxes. While big tech companies try to lock users into their own social networks, isolating them from the rest of the world, open mass protocols confidently maintain their niche in global communication. Even Apple and Microsoft accept the need for unique tools and provide users with their own email servers. It’s also worth mentioning VKontakte, which in 2021 suddenly started promoting its own email service.

We have gradually become accustomed to SMS registration confirmations and the widespread linking of accounts to phone numbers (essentially, to our personal identification). A messenger that can work without any registration at all seems like science fiction! In contrast to modern trends, the IRC protocol allows you to join a public chat or use private messages without any registration: no password, no login, just a nickname—and you’re in.

IRC is so anarchist and minimalist that you can use it without a client, and you don’t need any API to write a bot. You can connect to a server and send messages using utilities like telnet or netcat, which let you write directly to the IRC server socket.

For practical use, this approach isn’t ideal, as you’ll see a lot of service information, and the regular server ping responses can be distracting (if you miss a ping, you’ll be disconnected by timeout).

Thanks to the protocol’s age, there are now many different clients available for comfortable IRC use. The most popular include: HexChat, Quassel IRC, Konversation, and Kvirc. There are also many nice clients for smartphones (though my experience is limited, I can recommend Revolution). In the age of JavaScript and ubiquitous web browsers, web clients are a must; the most notable are The Lounge, KiwiIRC, and qwebirc. The console-based client WeeChat is especially popular among those who prefer no graphical interface.

I’m younger than the protocol, but I use it every day with pleasure. I might think I’m crazy, but look: many modern clients are still actively maintained. This means someone still needs IRC.

Let’s not dive too deep into the history or list all the computer-related fields of the ’90s and early 2000s where IRC was used—it was everywhere due to the lack of alternatives. The main question is: where is IRC used today?

Initially, I planned to talk about using IRC as a corporate chat, which is simple to use and administer. However, today there are so many office chat options that discussing office IRC in 2021 seems pointless.

In reality, IRC is mainly used by people who started using it during its heyday—hence its popularity among seasoned programmers. You’ve probably come across mentions of freenode (or libera chat), as well as irc. subdomains for various IT projects (especially open-source ones that need active community communication). It would be remiss not to mention RusNet—the largest Russian-language general-purpose IRC network.

If you look at which communication tools are popular in hidden networks, especially in I2P, you’ll be surprised—except for a few exceptions, IRC is still the dominant player. On one hand, the explanation is simple: the same group of geeks who use other IRC servers also use hidden networks. But let’s look at it from another angle…

Registration in almost any modern social network, email service, or messenger requires receiving a confirmation code via SMS. This used to cause a lot of outrage, but now even highly praised services like Signal and Telegram are tied to your phone number. I don’t understand how privacy can be claimed when an account is associated with my personal data. Even if you use burner SIM cards for registration, the very fact that a SIM card is required is a red flag. It’s like a joke from “1984,” where the Ministry of Love was responsible for torture: now we have branches of the Ministry of Privacy everywhere.

Users of hidden networks value privacy in its highest form, meaning they care about their anonymity (for more on whether everything in the darknet is criminal, see a separate article).

In contrast to popular messengers, IRC makes you question modern trends: does spam protection really justify linking every account to a user’s personal data, especially if the service claims to be privacy-focused? Hidden networks serve as a benchmark here, demonstrating the highest possible anonymity in communication.

But it’s not all sunshine—there are some drawbacks. The main reason IRC lost its popularity is the lack of offline messages. We’re used to opening any messenger and receiving messages sent while we were offline, but in IRC, it’s not so simple for the average user. The protocol doesn’t support sending messages to users who are currently offline. The name Internet Relay Chat reflects its essence—IRC is just a relay, a transit link, not a message storage server.

This problem is easily solved with a bouncer. A bouncer acts as an intermediary between the user and the server. It allows you to read chat history and receive private messages during your actual absence. The user’s profile is “online” when connected to the bouncer, or “away” when disconnected.

The screenshot shows the web interface of ZNC—the most popular solution, which can be installed on any VPS in just a few commands. ZNC is multi-user, meaning it can serve many clients. When using a bouncer, the end user connects not to the IRC server address, but to the ZNC address, entering their bouncer account credentials.

For comfortable simultaneous IRC use from different devices (PC, laptop, smartphone), you can use Quassel Core, which is similar to ZNC but focuses on high-quality synchronization between a user’s devices (using the cross-platform Quassel Client).

The second most important issue is the lack of media: no file transfers, no colorful stickers, no video conferences. The standard IRC message size doesn’t exceed a kilobyte, so it’s pointless to even try sending media files in real messages (the client sends no more than one message per second, so mass sending of small messages won’t work either). For file transfers, there’s the DCC (Direct client-to-client) protocol, which requires a direct connection between users. In most cases, this is impossible due to lack of direct accessibility or lack of protocol support by one of the clients. As a result, file sharing is usually done through third-party file-sharing services. In hidden networks, the lack of media can even be considered a plus, since media files are additional metadata that could potentially leak sensitive user information.

The last common criticism of IRC is the lack of encryption. This accusation is as valid for IRC as it is for most modern messengers. Secure server connections have long been solved with TLS (the same encryption used for HTTPS websites), which protects against interception and analysis of traffic between the user and the server. In hidden networks, no one can eavesdrop on traffic by default, so TLS encryption for IRC servers (for example, in I2P) isn’t needed at all.

On the server side, all messages are transmitted (or stored) in plain text (just like private messages in VKontakte, Facebook, Instagram, and so on). This means the administrator can see the content of transmitted messages. To solve this, there are several plugins for end-to-end encryption between users: OTR (well supported in HexChat), Blowfish (tested in Quassel), and other similar tools you can find via search engines. If users use end-to-end encryption, messages are transmitted in encrypted form on the server side, eliminating the risk of message monitoring.

If you want to try IRC but don’t know where to start—join ILITA IRC. ILITA is a network of servers created in 2016 (the reference to “elite” is ironic). Its main difference is that connections between network servers are made via I2P, which prevents servers with different levels of anonymity from compromising each other. Connection addresses can be found on the following web pages:

If you’re interested, check out this video about IRC, which covers general facts and also mentions ILITA IRC.

Leave a Reply