Internet Relay Chat

Da Wikipedia, l'enciclopedia libera.
(Reindirizzamento da IRC)
bussola Disambiguazione – "IRC" rimanda qui. Se stai cercando altri significati, vedi IRC (disambigua).
irssi, un client IRC

Internet Relay Chat (IRC) è un protocollo di messaggistica istantanea su Internet, che consente sia la comunicazione diretta fra due utenti, che il dialogo contemporaneo di interi gruppi di persone in stanze[1] di discussione chiamate canali.

Storia[modifica | modifica wikitesto]

IRC fu creato da Jarkko Oikarinen nell'agosto 1988 per rimpiazzare un programma chiamato MUT (MultiUserTalk) che girava sulla BBS finlandese OuluBox. Jarkko Oikarinen trovò l'ispirazione dalla Bitnet Relay Chat che operava sulla rete Bitnet. [2] [2]

Per ovviare alle censure dei mezzi di comunicazione di massa, IRC fu usato sia durante il tentato colpo di Stato in Unione Sovietica[3], sia durante la Guerra del Golfo[4]. I registri delle conversazioni IRC in questi ed altri importanti eventi sono conservati nell'archivio ibiblio[5].

Informazioni tecniche[modifica | modifica wikitesto]

L'RFC 1459 descrive i protocolli utilizzati e più recentemente IRC2 con il RFC 2810, il RFC 2811, il RFC 2812 e il RFC 2813 descrivono un insieme di proposte di estensioni al modello IRC. Molte implementazioni IRC consistono nel protocollo IRC2 con vari add-on che prevengono le incompatibilità causate delle differenze tra i software utilizzati per la gestione dei server di rete.

IRC è un protocollo di rete aperto che utilizza il protocollo di trasmissione TCP (Transmission Control Protocol) e opzionalmente il Transport Layer Security (TLS). Un server IRC (chiamato IRCd) è in grado di connettersi con altri server IRC formando così una vera e propria rete di comunicazione; gli utenti accedono ad essa mediante la connessione di un client ad un server. Molti server IRC non richiedono all'utente di autenticarsi, ma va comunque specificato un nickname (univoco a livello della rete IRC).

IRC è un protocollo plaintext, questo significa che è possibile (comunque con qualche inconveniente) usarlo tramite una connessione socket di tipo raw. Tuttavia non vi è modo di definire il carattere di decodifica dei messaggi e dei nickname rendendo impossibile il filtraggio di caratteri non-ASCII.

Il mezzo di comunicazione fondamentale in una sessione IRC è il "canale", un gruppo di utenti identificato da un nome, dove tutti gli appartenenti possono mandare messaggi leggibili solo dagli utenti dello stesso gruppo. Un canale IRC si crea automaticamente al primo ingresso da parte di qualsiasi utente.
I nomi dei canali appartenenti a tutta un'intera rete IRC si identificano col carattere "#" iniziale, mentre quelli locali (specifici di un server) sono identificati con il carattere "&" (tuttavia quest'ultimo potrebbe non essere disponibile su alcune reti). Per ovviare a problemi di desincronizzazione dei canali nel momento in cui dei server si fossero scollegati furono creati i canali "!" senza i problemi di sincronismo che però ottennero scarso successo anche per la mancanza di informazione agli utenti.

Il primo utente che entra in un canale acquisisce automaticamente dei privilegi che può poi passare a qualsiasi altro utente presente nel medesimo canale; questi utenti vengono chiamati operatori di canale (channel operator). Vi sono anche diversi utenti con privilegi differenti e con compiti di amministrazione della rete; questi sono chiamati IRC Operator (abbreviato in IRCop, spesso erroneamente confuso in IR-Cop) o in italiano "operatori IRC". Nelle implementazioni più recenti è anche possibile registrare i canali, in modo che i diritti di accesso non vengano persi alla disconnessione dell'ultimo operatore; ove questo non sia possibile viene fatto uso di bot, programmi speciali che appaiono come normali utenti, ma che presidiano il canale e, all'uso, ri-conferiscono lo status di operatore ai proprietari.

Gli "Operatori del canale" possono impostare diverse opzioni su quel determinato canale, vedi b:IRC/Modi canale.

Gli utenti nell'ambito del canale o del server possono avere diversi attributi, vedi b:IRC/Modi utente

Le connessioni IRC sono un ghiotto obiettivo per cracker, in quanto, pur essendo cifrate, prendono, per loro stessa natura, lunghi periodi di tempo di connessione. È necessario pertanto assicurare a queste connessioni, una accurata politica di sicurezza in grado di proteggerle dagli attacchi di script kiddie che cercano di prenderne il controllo (IRC takeover war), magari tentando di sfruttare a proprio vantaggio un netsplit (come si dice in gergo cavalcando lo split).

La connessione IRC viene spesso utilizzata da parte degli script kiddies come "laboratorio" per provare diversi tipi di attacchi in rete, per esempio inviando pacchetti ICMP (Internet Control Message Protocol) mal formati al fine di disturbarne gli utenti (vedi anche nuke). Tuttavia, con l'entrata in scena dei Bouncer (BNC) e dei virtual host, è molto difficile per queste persone malintenzionate portare a termine un attacco, visto che questi servizi riescono a nascondere l'indirizzo IP collegato ad un nickname.

Reti di comunicazione[modifica | modifica wikitesto]

Il primo server IRC: tolsun.oulu.fi

In tutto il mondo, ci sono diverse centinaia di reti IRC attive. Eseguono diverse implementazioni di server IRC, e sono amministrate da vari gruppi di Operatori IRC, ma tutti i protocolli utilizzati dagli utenti IRC presentano similitudini, per cui in tutte le reti IRC si può accedere col medesimo client senza problemi.

La differenza tra i vari network sta nella gestione delle implementazioni. IRCnet ad esempio è fedele all'implementazione storica di IRC e può essere definita la rete più anarchica poiché non prevede alcun controllo di nickname o canali. Al contrario altre reti hanno sviluppato sistemi per registrare i nickname o i canali debellando così l'uso di bot e i problemi causati da ircwar.

Come in Usenet i contenuti inviati sono immediatamente visibili da più siti e su tutti i server d'accesso, però, a differenza di usenet, non sono più cancellabili. Una traccia delle discussioni (non in chat room private) è tenuta in file di log di pubblico dominio.

IRC offre le funzionalità tipiche delle chat più evolute: possibilità di creare profili-utente con dati personali, chattare, invio di messaggi privati, scambio di file, organizzare meeting della chat.

Per individuare un'ora standard in tutto il mondo è stata scelta la convenzione UTC.

Client IRC[modifica | modifica wikitesto]

Exquisite-kfind.png Per approfondire, vedi Lista di client IRC.

Le reti IRC hanno dato luogo alla creazione di "client automatici" chiamati "bot", abbreviazione di "robot". Il primo "bot" fu scritto da Greg Lindahl e serviva da moderatore automatizzato per il gioco Wumpus.

Quelli più recenti (tra tutti eggdrop) sono invece usati per automatizzare la moderazione dei canali nelle reti sprovviste di servizi irc (come NickServ, ChanServ e altre implementazioni) anche se sono spesso solo di fastidio agli utenti (oltre che per i server che si ritrovano un carico maggiore di utenti da gestire). Sono solitamente sviluppati in linguaggio Java e permettono uno standard di funzionalità che spaziano dall'invio di messaggi privati all'e-mail di utenti non connessi, all'apertura di chat room private con utenti in linea, all'invio di emoticon all'interno dei messaggi.

Un'ulteriore evoluzione in campo di "bot" è sicuramente l'avvento di psotnic, un bot le cui velocità sono di gran lunga superiori a quelle di un eggdrop. Anch'esso è dotato di partyline, invio messaggi privati ed espansioni con script in c.

IRC moderni[modifica | modifica wikitesto]

IRC ha subito una notevole evoluzione nel tempo. Software più recenti di gestione dei server hanno aggiunto nuove funzioni e caratteristiche.

  • Services: sono servizi gestiti da "bot" che permettono la registrazione dei nickname (NickServ) e dei canali IRC (ChanServ), ma anche l'invio di messaggi per utenti non connessi in quel momento (MemoServ).
  • Extra Modes: I sistemi originali IRC usavano un serie di modalità standard, ora le nuove caratteristiche permettono di rimuovere i codici colore dai testi, o per nascondere un utente al fine di proteggerlo dagli attacchi di hacker malintenzionati (denial of service).
  • Proxy Detection: molti server moderni implementano la possibilità di individuare e bloccare utenti che tentano di connettersi attraverso proxy mal configurati, spesso per compiere abusi del servizio (ad esempio "IRC War").

Lo slang di IRC[modifica | modifica wikitesto]

Exquisite-kfind.png Per approfondire, vedi Lista di abbreviazioni in uso su Internet.

Su IRC spesso può capitare di imbattersi in acronimi usati in sostituzione di frasi fatte, il più delle volte in inglese ma non necessariamente, come ad esempio:

  • LOL - Laughing Out Loud (risata ad alta voce)
  • ROFL - Rolling On the Floor Laughing ( "... mi sto rotolando sul pavimento dalle risate")
  • BRB - Be Right Back ("ritorno subito")
  • IMO - In My Opinion ("secondo me")
  • IMHO - In My Humble Opinion - In My Honest Opinion ("secondo il mio modesto parere")
  • AFK - Away From keyboard (non al computer)
  • AFAIK - As Far As I Know ("per quanto ne sappia")
  • STFU - Shut The Fuck Up. ("chiudi il becco")
  • IRL - In Real Life. ("nella vita vera")
  • ASL - Age Sex Location. ("Età sesso località")
  • LMAO - Laughing My Ass Off. ("mi spacco dalle risate")
  • BTW - By The Way ("ad ogni modo")
  • ASAP - As Soon As Possible ("quanto prima")
  • AKA - Also Known As. ("conosciuto anche come")
  • RE - REturned ("sono rientrato")
  • KISS - Keep It Simple, Stupid! ("falla semplice, stupido!": non complicarti la vita)
  • NUKE - qualunque tipo di attacco in grado di disconnettere un utente dal server irc
  • FYI - For Your Information (per tua informazione)
  • BYOB - Bring Your Own Beer. ("porta la tua birra")
  • RTFM - Read The Fucking Manual ("leggi il fottuto manuale")
  • RULES - Dominanza su altri utenti

I network implementano un servizio di gestione delle risorse. (chanserv, nickserv, memoserv, helpserv, etc.) Sia da considerare di primaria importanza la gerarchia nelle stanze irc. (v. Chan Operators / Moderators.)

Note[modifica | modifica wikitesto]

  1. ^ Glossario in: Carola Frediani, Dentro Anonymous. Viaggio nelle legioni dei cyberattivisti, Informant, 2012, ISBN 978-88-907232-5-4.
  2. ^ a b Jarkko Oikarinen, Founding IRC, mIRC. URL consultato il 19 marzo 2014.
  3. ^ IRC transcripts from the time of the 1991 Soviet coup d'état attempt, ibiblio. URL consultato il 19 marzo 2014.
  4. ^ IRC logs of events of the Gulf War, ibiblio. URL consultato il 19 marzo 2014.
  5. ^ Logs of major events in the online community, ibiblio. URL consultato il 19 marzo 2014.

Voci correlate[modifica | modifica wikitesto]

Altri progetti[modifica | modifica wikitesto]