Internet Citizen's Band

Last updated

Internet Citizen's Band (better known as ICB) is an early Internet chat program and its associated protocol. It was released in 1989. [1]

Contents

ICB is typically served on port 7326. [2]

History

The first version of ICB was a program called "Forumnet" or "fn", written by University of Kentucky IT staffer Sean Carrick Casey. It was widely used at the University of Kentucky, Georgia Tech, UC Davis, MIT, University of New Mexico, Stanford University, Mills College, UC Santa Cruz, and UC Berkeley. Fn, based on a MUD software program by Casey, established the protocol and clients.

Fn was used as a realtime communications channel after the 1989 Loma Prieta earthquake - Internet access from hard-hit Santa Cruz returned to service before reliable phone service did. In March 1991 the University of Kentucky changed policy and shut down the fn server. Within 2 months a new server had been created from the client software by another fn user, John Atwood Devries, and was put online now renamed ICB. This new server code, unrelated to the original server except by the common client software source, was then used as the basis of many ICB servers to follow. From 1995 to 2000 the server code was heavily rewritten for stability and additional features by Jon Luini and Michel Hoche-Mong and remains available at the ICB.net web site.

ICB is still in operation with a dedicated user base. A variety of clients exist for all major operating systems.

Features

ICB features many standard chat program functions, including channels, private messages, and nickname registration. Most of the common clients support TCL scripting of commands and functions. Some clients (principally icbm) support scripting in Perl instead.

Limitations

ICB has never supported multi-server shared groups, so the number of simultaneous users has always been somewhat limited in comparison to more popular chat programs.

ICB does not support transferring files or multimedia via the chat program. However, the very restrictive protocol has a very small remote attack surface.

The ICB protocol is not 8-bit clean.

Related Research Articles

Internet Relay Chat Protocol for real-time Internet chat and messaging

Internet Relay Chat (IRC) is a text-based chat system for instant messaging. IRC is designed for group communication in discussion forums, called channels, but also allows one-on-one communication via private messages as well as chat and data transfer, including file sharing.

The Secure Shell Protocol (SSH) is a cryptographic network protocol for operating network services securely over an unsecured network. Its most notable applications are remote login and command-line execution.

Instant messaging Form of communication over the Internet

Instant messaging (IM) technology is a type of online chat allowing real-time text transmission over the Internet or another computer network. Messages are typically transmitted between two or more parties, when each user inputs text and triggers a transmission to the recipient(s), who are all connected on a common network. It differs from email in that conversations over instant messaging happen in real-time. Most modern IM applications use push technology and also add other features such as emojis, file transfer, chatbots, Voice over IP, or video chat capabilities.

XMPP Communications protocol for message-oriented middleware

Extensible Messaging and Presence Protocol is an open communication protocol designed for instant messaging (IM), presence information, and contact list maintenance. Based on XML, it enables the near-real-time exchange of structured data between two or more network entities. Designed to be extensible, the protocol offers a multitude of applications beyond traditional IM in the broader realm of message-oriented middleware, including signalling for VoIP, video, file transfer, gaming and other uses.

In computing, the Windows Sockets API (WSA), later shortened to Winsock, is an application programming interface (API) that defines how Windows network application software should access network services, especially TCP/IP. It defines a standard interface between a Windows TCP/IP client application and the underlying TCP/IP protocol stack. The nomenclature is based on the Berkeley sockets API used in BSD for communications between programs.

Bersirc Former Internet Relay Chat client

Bersirc is a discontinued open-source Internet Relay Chat client for the Microsoft Windows operating system. Linux and Mac OS X versions were "in development". Bersirc uses the Claro toolkit, which aims to provide an interface to native windowing systems and widgets on all operating systems. Microsoft .NET and Qt toolkit ports were also planned. The final version of Bersirc was 2.2.14.

Internet Relay Chat services is a name for a set of features implemented on many modern Internet Relay Chat networks. Services are automated bots with special status which are generally used to provide users with access with certain privileges and protection. They usually implement some sort of login system so that only people on the access control list can obtain these services.

An IRC bot is a set of scripts or an independent program that connects to Internet Relay Chat as a client, and so appears to other IRC users as another user. An IRC bot differs from a regular client in that instead of providing interactive access to IRC for a human user, it performs automated functions.

An IRCd, short for Internet Relay Chat daemon, is server software that implements the IRC protocol, enabling people to talk to each other via the Internet. It is distinct from an IRC bot that connects outbound to an IRC channel.

A BNC is a piece of software that is used to relay traffic and connections in computer networks, much like a proxy. Using a BNC allows a user to hide the original source of the user's connection, providing privacy as well as the ability to route traffic through a specific location. A BNC can also be used to hide the true target to which a user connects.

OpenVPN is a virtual private network (VPN) system that implements techniques to create secure point-to-point or site-to-site connections in routed or bridged configurations and remote access facilities. It implements both client and server applications.

IRC script Way of shortening commands while connected to an IRC network

IRC scripts are a way of shortening commands and responding automatically to certain events while connected to an IRC network. There are many different scripting languages for different types of IRC clients: ircII, BitchX, HexChat, mIRC, Visual IRC, Bersirc, and others have their own scripting languages, many of which share common features and syntax and therefore are easily portable from one IRC client to another.

Remote administration refers to any method of controlling a computer from a remote location. Software that allows remote administration is becoming increasingly common and is often used when it is difficult or impractical to be physically near a system in order to use it. A remote location may refer to a computer in the next room or one on the other side of the world. It may also refer to both legal and illegal remote administration.

newLISP

newLISP is a scripting language which is a dialect of the Lisp family of programming languages. It was designed and developed by Lutz Mueller. newLISP is free and open-source software released under the GNU General Public License, version 3 or later.

The following tables compare general and technical information between a number of IRC client programs which have been discussed in independent published literature.

CGI:IRC CGI program

CGI:IRC is a CGI program written in Perl that allows access to IRC via a web browser. It is designed to be flexible and has many uses such as an IRC gateway for an IRC network, a chat-room for a website or to access IRC when stuck behind a restrictive firewall.

Mumble (software) VoIP application

Mumble is a voice over IP (VoIP) application primarily designed for use by gamers and is similar to programs such as TeamSpeak.

Mibbit Web based IRC client

Mibbit is a web-based client for web browsers that supports Internet Relay Chat (IRC), Yahoo! Messenger, and Twitter. It is developed by Jimmy Moore and is designed around the Ajax model with a user interface written in JavaScript. It is the IRC application setup by default on Firefox.

KVIrc IRC Client

KVIrc is a graphical IRC client for Linux, Unix, Mac OS and Windows. The name is an acronym of K Visual IRC in which the K stands for a dependency to KDE, which became optional from version 2.0.0. The software is based on the Qt framework and its code is released under a modified GNU General Public License.

References

  1. History of ICB, accessed November 2, 2007
  2. "Service name database". OpenBSD CVSWeb. OpenBSD. Retrieved 30 December 2015.