Elf Qrin's Cyber Lab

since 1999


Guida allo scambio di file binari su UseNet
by Elf Qrin (www.ElfQrin.com)
v1.6it r30jul2013 fr18Mar2000 (English), fr10Nov2000 (Italian)
The latest version of this document can be found at www.ElfQrin.com/docs/ngload_it.html
Una riduzione di questo articolo è stata pubblicata su Inter.net #60 settembre 2000.



IMPORTANTE: Ho reso questo documento disponibile sul Web. Se trovi questo documento postato su qualche newsgroup da qualcun altro, non significa che io sia un frequentatore di tale newsgroup.

NOTE: Alla fine di questo articolo troverai la lista di tutti i programmi citati, con gli indirizzi da dove scaricarli.


I newsgroup

Inviare un messaggio a un newsgroup è un po' come spedire una e-mail. La differenza principale sta nel fatto che non ci limitiamo ad indicare l'indirizzo di uno o più destinatari ai quali vogliamo far pervenire il messaggio, ma lo indirizziamo a un'area pubblica alla quale chiunque può accedere. Dal momento che queste aree (i newsgroup, appunto), sono decine di migliaia, ognuna riservata ad un argomento specifico, il nostro messaggio sarà a disposizione di un vasto numero di persone che condividono l'argomento relativo al gruppo al quale abbiamo inviato la nostra mail, che potranno leggerla e rispondere nello stesso gruppo di discussione, permettendo in modo semplice e pratico uno scambio di opinioni su scala globale. Ci sono gruppi per praticamente qualunque interesse possiate avere: linguaggi di programmazione, giardinaggio, sport semisconosciuti, attori, musiche, e più o meno tutto quello che vi può saltare per la testa.

Per avere accesso a un newsgroup, sia che vogliate inviare un messaggio, sia che desideriate accedere a quanto già inviato a tale gruppo da altre persone, dovete prima di tutto trovare un server NNTP (detti anche newsserver) che supporti il newsgroup scelto. Infatti su UseNet (l'area di Internet dove si trovano i newsgroup) non esiste alcuna censura, e anche per questo dovete fare attenzione ai gruppi che visitate, ma gli amministratori dei server possono a loro discrezione escludere i gruppi che ritengono inappropriati.
Normalmente il vostro provider di accesso a Internet (ISP), così come mette a disposizione i server SMTP e POP3 (rispettivamente per l'invio e la ricezione di e-mail), fornisce anche l'accesso a un server NNTP (per l'invio e la ricezione di messaggi su UseNet). Se però per qualche motivo non siete soddisfatti del newsserver del vostro provider, potete trovare una lista aggiornata di server NNTP pubblici all'URL www.elfqrin.com/hacklab/pages/nntpserv.php .

Inviare dei messaggi con degli allegati

Ma lo scambio di opinioni è solo una delle possibilità offerte dai newsgroup. Proprio come succede con le e-mail possiamo allegare ai nostri messaggi anche dei file, in modo da poterli far pervenire ad altre persone che condividano i nostri interessi. Per esempio, si possono allegare ai messaggi foto, filmati, musiche MIDI o MP3 (questi file aggiunti ai messaggi prendono il nome di allegati binari, per distinguerli dai messaggi composti da solo testo). Ci sono gruppi di fan di vari cantanti che si scambiano in questo modo le rarità del loro artista preferito (i cosiddetti bootleg). Le persone che scaricano i nostri messaggi possono a loro volta rispondere con altro materiale in loro possesso, sempre inviandolo allo stesso newsgroup, facilitando enormemente lo scambio di informazioni e materiale tra appassionati.

I file da inviare, sono però spesso molto lunghi, mentre i server che gestiscono i newsgroup in genere limitano la dimensione di ogni messaggio, spesso non oltre 1 Megabyte. In questo caso diventa necessario spezzettare il file che intendiamo inviare in singoli blocchi e allegarli a più messaggi. Come regola generale, ogni file che superi le dimensioni di 700Kb dovrebbe essere suddiviso in pezzi più piccoli (al contrario, evitate di inviare più allegati in un singolo messaggio, perché rende più difficile scartare file già posseduti da parte di chi scarica, che dovrà necessariamente attendere l'apertura di tutti gli allegati del messaggio).

L'applicazione più utilizzata in ambiente Windows per spezzettare grossi file è MasterSplitter, il cui scopo dichiarato è proprio "suddividere i grossi file così da poterli trasportare tramite floppy o e-mail". L'uso è semplicissimo: tutto quello che dovete fare è inserire il nome del file che volete dividere, e la dimensione di ogni pezzetto. Oltre a questo il programma è anche capace di riunire gli spezzoni da lui creati o verificare che questi siano identici al file originale.
Un altro ottimo file splitter/joiner che tra l'altro è gratuito, à BLJoin, che funziona in maniera simile.
Comunque se avete un po' di esperienza di programmazione, potete facilmente scrivere voi stessi un programmino per spezzettare i file in C, Pascal, o QBasic.

E' meglio non creare troppi spezzoni, perché qualcuno potrebbe andare perduto nel passaggio da un newsserver a un altro (il sistema che gestisce UseNet, se pure molto funzionale non è certamente il massimo in termini di efficienza), e vi ritrovereste a dover far fronte a numerose richieste che vi supplicheranno di rinviare i pezzi mancanti. Una dimensione di circa 700Kb dovrebbe andar bene, considerando i byte aggiuntivi richiesti per il resto del messaggio, e che gli allegati - come vedremo meglio poi - sono sempre codificati in qualche modo, crescendo di circa 1/4 delle loro dimensioni originali, arrivando quindi molto vicini al limite di 1 Mb.

Una volta che il nostro file è stato suddiviso, possiamo inviarlo al newsgroup che abbiamo scelto. Per poterlo inviare è necessario assicurarsi che il server NNTP che intendiamo utilizzare supporti tale newsgroup, che accetti l'invio dei messaggi (che sia cioè abilitato al posting, e non solo un server read-only, di sola lettura), e che accetti gli allegati binari (che non rifiuti quindi i messaggi che non contengano soltanto testo). L'unico modo di verificarlo con certezza è inviare un messaggio di prova, e controllare se è pervenuto al newsgroup completo di allegato.

Dal momento che allegare ogni singolo pezzetto a un messaggio e poi inviarlo è un lavoro lungo e noioso, è preferibile utilizzare un programma che svolga questo lavoro in modo automatico, come Autopost.
Con Autopost è possibile mettere tutti i file che si desiderano inviare in una directory, per esempio C:\TEMP, dopo di che basterà lanciare il programma, premere il bottone "Settings" per entrare nella finestra delle opzioni nella quale andranno inseriti il server NNTP che si desidera utilizzare (campo Host), le eventuali informazioni di login (username e password) nel caso il server non sia di pubblico accesso, le informazioni da includere nell'intestazione del messaggio (Name, Reply-To, Organization), e un prefisso per l'oggetto del messaggio. L'oggetto del messaggio sarà infatti costituito dal testo che avete inserito come prefisso, seguito dal nome del file e dall'indicazione [1/1] che significa che il messaggio ha un allegato. Purtroppo Autopost non aggiunge la dimensione in byte dell'allegato, che è un informazione molto utile per coloro che scaricheranno il file, soprattutto a chi ha una connessione più lenta che magari può escludere a priori i file troppo lunghi.
Una volta che avete finito di configurare Autopost, potete premere su OK, e poi è possibile iniziare a inviare i file premendo il pulsante "Post".

Per fare un'ulteriore cortesia agli utenti del newsgroup sul quale state postando, se state inviando un set di immagini, potete inviare una o più immagini indice contententi delle miniature, e un file indice CSV (Comma Separated Value, cioè con gli elementi separati da virgole) contenenti il nome del file, l'eventuale cartella nella quale è organizzato, e il CRC del file. Questi file CSV possono essere letti da utility (come scansort) per ordinare, rinominare, o confrontare i file in proprio possesso con quelli elencati nel CSV per vedere cosa manca.
Nel caso stiate inviando un filmato, potete inviare anche alcune scene prelevate dal filmato stesso per darne un'anteprima, mentre per gli MP3 o la musica potete inviare il testo della canzone, e una foto del cantante.

E' sempre buona norma per chi invia per la prima volta dei messaggi a un newsgroup fare delle prove per assicurarsi che tutto vada bene. Per effettuare i propri esperimenti c'è a disposizione il newsgroup alt.test o meglio ancora nel nostro caso andrebbe utilizzato il newsgroup alt.binaries.test, poiché non è una Buona Cosa inviare allegati binari in gruppi non espressamente sotto la gerarchia binaries, anche se il server vi consente di farlo.
Inoltre, prima di inviare un messaggio a un gruppo, assicuratevi che il contenuto del vostro messaggio sia a tema (on topic), onde evitare di importunare i frequentatori di quel gruppo. E' meglio scaricare i messaggi di un certo gruppo che coprano un periodo di tempo di circa due settimane e osservarli, per essere sicuri che il materiale che si intende proporre sia in linea con quello generalmente inviato nel gruppo. Oltre a questo, valgono le regole generali della netiquette, per esempio evitate di scrivere i vostri messaggi (incluso il vostro nome e l'oggetto) esclusivamente in CARATTERI MAIUSCOLI.

Scaricare dei file da un newsgroup

Per scaricare dei messaggi (con gli eventuali allegati) da un newsgroup, così come quando li si vuole inviare, è necessario prima avere accesso al newsgroup. E' quindi necessaria un'applicazione capace di leggere i newsgroup e un newsserver che supporti il newsgroup che si desidera aprire.
Se il vostro ISP non ha un server NNTP, o ce l'ha ma non porta il newsgroup che desiderate, o riporta soltanto pochi messaggi per quel gruppo, potete cercarne un altro di pubblico accesso.

Per quanto riguarda l'applicazione, un browser come Netscape o Internet Explorer è sufficiente. Se volete provare un news agent specifico, potete orientarvi su Forte Agent. Comunque, Netscape è migliore sotto molti aspetti. Vi permette di aprire direttamente un newsgroup senza dover caricare l'elenco di tutti i gruppi (spesso decine di migliaia) supportati dal server. Potete aprire più finestre e sfogliare vari newsgroup allo stesso tempo, e aprire più messaggi contemporaneamente, anche da gruppi diversi (in genere un server NNTP non consente più di tre accessi simultanei, anche meno se è congestionato, ma potete connettervi a più server), mentre Forte Agent si limita a mettere in coda tutte le vostre richieste. Inoltre potete vedere le immagini mentre vengono scaricate, ed eventualmente interrompere lo scaricamento se l'immagine non vi interessa.

Per aprire un newsgroup da un browser, dovete inserire nel campo dove normalmente immettete l'URL di una pagina web il protocollo news seguito dal nome di un server NNTP e dal nome del newsgroup che intendete aprire, come in questo esempio:

news://news.unina.it/alt.binaries.pictures.animated.gifs

Il contenuto di un newsgroup appare abbastanza simile a quello della vostra mailbox: potete leggere i messaggi clickandoci sopra. Se hanno un allegato questo solitamente apparirà come un link alla fine del testo. Tutto quello che dovrete fare sarà premere il tasto destro del mouse sopra il link e salvarlo su disco. Se l'allegato è un pezzo di un file più grande, nominatelo con un numero progressivo (per esempio "File1", "File2", "File3"...), per rendere le cose più facili quando dovrete riunirli.
Se l'allegato è una foto verrà mostrata direttamente, a meno che non sia codificata in modo particolare, o avete disabilitato questa funzione (su Netscape 4.5+ è possibile disabilitare il caricamento automatico delle immagini con Edit... | Preferenze... | Avanzate | e disabilitando "Carica automaticamente le immagini").

Potrebbe succedere che il messaggio che avete aperto non contiene quello che vi aspettavate, perché non ha niente a che vedere con il topic del newsgroup. Potrebbe trattarsi di un messaggio mandato per errore a un newsgroup errato, o molto più probabilmente spam (un messaggio pubblicitario di commercianti senza scrupoli), o un messaggio inviato da un troll, come viene definita in gergo una persona poco tollerante che inonda il gruppo di finti messaggi o insulti.
In questo caso la cosa migliore da fare è ignorare il messaggio e aprirne un altro. Come regola generale, è inutile e addirittura controproducente rispondere a questo tipo di messaggi: gli spammer neanche leggono il contenuto dei newsgroup, mentre i trolls non vivono che per leggere le reazioni irate ai loro interventi. Se non ricevono alcuna considerazione, in breve abbandoneranno il gruppo. La cosa migliore da fare è protestare presso il loro ISP, invece. Se il gruppo è uno di quelli moderati i moderatori semplicemente cancelleranno i messaggi fuori tema (in generale, però, nel mondo di UseNet la moderazione non è vista molto di buon occhio perché è comunque una forma di censura).
Come forma di protezione, se utilizzate un browser, è bene disabilitare il JavaScript all'interno dei messaggi per evitare che aprendo un messaggio inviato da uno spammer questo possa aprire automaticamente delle finestre che puntino al loro sito. Su Netscape 4.5+ questo è possibile tramite Edit | Preferenze… | Avanzate | e poi disabilitando "Attiva JavaScript per la posta e le news".

Decodificare gli allegati

Gli allegati binari, per loro stessa natura (poiché si tratta di file binari allegati ad un messaggio che altrimenti conterrebbe unicamente puro testo) sono codificati in qualche modo, ma generalmente un browser può decodificarli automaticamente, in maniera completamente trasparente per l'utente, tuttavia qualche tipo di codifica non può avvenire "al volo" (come nel caso del Base64, che però è più ottimizzata rispetto ad altre, producendo quindi un file allegato di dimensioni più ridotte). In questo caso, se state scaricando delle immagini, non potrete vederle mentre avviene lo scaricamento, anche se avete abilitato "mostra le immagini automaticamente".
Il più antico e tuttora il più utilizzato metodo di codifica è l'UUencode (UU sta per "Unix to Unix"), che consente una decodifica al volo. Qualche volta l'intestazione MIME (il formato di posta elettronica che definisce i messaggi contenenti più tipi di file oltre al testo) di un allegato manca, così che il browser non riconosce il file codificato come allegato e verrà visualizzato all'interno del messaggio come puro testo, così come in questo esempio:

begin 644 flag_it.gif M1TE&.#EA%``/`)$``/\```"``/___P```"P`````%``/```(2``#"!P80(#! M@P`2*@1`<.!!A`L3-A3XT&!$B1,K"KC(,&-%CA,+?KP84B-(CP]/-C1)$B7$ 5B"5'PG1IL>5*F0MCIK1)D&7$@``[ ` end

begin e end comunicano l'inizio e la fine dei dati codificati. Il numero che segue begin sono i permessi di accesso al file, e hanno senso solo per i sistemi Unix o Linux, mentre il testo che segue è il nome con cui salvare il file una volta decodificato. I dati in formato UUencode sono una serie di linee di testo ASCII stampabile, che normalmente sono lunghe 60 caratteri e iniziano con la lettera "M". Poiché Netscape 4.5+ e Forte Agent indicano quante linee di testo sono presenti in ogni messaggio, potete farvi un'idea di quanto è grande prima di aprirlo. La dimensione approssimata di un messaggio in Kbyte può essere ottenuta moltiplicando il numero delle linee per 60 e dividendo poi il risultato per 1024. Questa sarà la dimensione del file da scaricare. Per sapere quanti Kb occuperà sull'hard disk, dovrete ulteriormente moltiplicare per 3 e dividere per 4 questo risultato (come spiegato più in alto, la codifica UUencode fa crescere le dimensioni del file di 1/4 ). Chiariamo il tutto con un esempio: se un messaggio è lungo 1000 linee, dovrete scaricare 1000 * 60 / 1024 = 58.5Kb, che però una volta decodificati occuperanno soltanto 58.5 * 3 / 4 = 43.8Kb su disco (un po' meno, in realtà, dal momento che non tutte le linee del messaggio servono per descrivere l'allegato).

Se ottenete questo tipo di allegato in formato testuale, dovrete decodificarlo "manualmente" per poterlo utilizzare. Per fare questo procedete in questo modo:

Copiate l'intero corpo del messaggio (solitamente basta premere CTRL+A per selezionare tutto, seguito da CTRL+C per copiare), poi incollatelo (CTRL+V) su un buon editor di testo. Non usate il normale Notepad di Windows perché non può gestire file troppo lunghi e ha problemi con alcuni caratteri speciali.
Il miglior rimpiazzo per il Notepad che possiate trovare in circolazione è JGsoft EditPad Lite, che tra l'altro è gratuito. Per utilizzarlo come editor predefinito dopo averlo scaricato, e scompattato con 7-Zip, rinominate editpad.exe come notepad.exe e copiatelo nella directory di Windows (normalmente C:\WINDOWS) sovrascrivendo il notepad.exe originale. A questo punto potete dimenticarvi che l'orribile blocco note di Windows sia mai esistito. Se tuttavia desiderate mantenerne una copia, copiate il notepad.exe originale in un'altra cartella, ma non spostatelo o rinominatelo, perché altrimenti Windows sposterà i collegamenti dei Tipi di File verso il programma spostato o rinominato.
Se non vi interessano tutte le funzioni di EditPlus, ma volete un semplice rimpiazzo per NotePad senza tutte le limitazioni di quest'ultimo, potete sostituirlo con TheGun, un semplice editor simile al NotePad, scritto interamente in linguaggio macchina e le cui dimensioni sono di soli 6144 byte.
Un altro eccellente editor di testo è EditPlus, ma ha troppe funzioni per essere considerato un semplice rimpiazzo del Notepad, per cui è preferibile adottarlo come secondo editor di testo.

Una volta che avete incollato il messaggio all'interno dell'editor, cancellate tutte le linee di testo che non sono parte dell'allegato UUencoded, quindi qualunque cosa sopra la linea "begin" e sotto la linea "end") e salvatelo su disco con un nome qualunque. Adesso potete ricostruire il file binario (sia esso un filmato, un'immagine, o qualunque altra cosa), decodificando il file che avete appena salvato con un programma come Shell Decode Extension (con il quale potete semplicemente premere con il tasto destro sul file e scegliere Decode dal menu contestuale), che provvederà automaticamente a decodificarlo). Potete anche utilizzare dei programmi da lanciare dalla linea di comando MS-DOS come UUdecode96. Ricordatevi di cancellare il file che avete creato una volta decodificato, perché rappresenterebbe soltanto uno spreco di spazio sull'hard disk.

Se l'allegato che avete scaricato è stato codificato in UUencode e poi diviso in vari pezzi, potrebbe succedere che i singoli pezzi non hanno le linee "begin" e "end". In questo caso, dopo aver eliminato tutte le linee inutili, in pratica lasciando soltanto quel blocco di linee che iniziano con la lettera "M", aggiungente manualmente le informazioni di begin e end, come in questo esempio:

begin 644 File2 M@P`2*@1`<.!!A`L3-A3XT&!$B1,K"KC(,&-%CA,+?KP84B-(CP]/-C1)$B7$ 5B"5'PG1IL>5*F0MCIK1)D&7$@``[ end

A questo punto potete decodificarlo come spiegato nel paragrafo precedente.

Rimettiamo insieme i pezzi

Se sul vostro hard disk avete più spezzoni di un unico grande file, è arrivato il momento di riunirli per ricostruire il file originale. Potete utilizzare un programma come MasterSplitter, oppure farlo manualmente utilizzando il comando COPY di MS-DOS, in questo modo:

COPY /B File1+File2+File3+File4+FileN FileDest.ext

Dove FileDest.ext è il nome del file originale con l'estensione appropriata: .MPG per I filmati MPEG, .MP3 per i file audio in formato MPEG Layer 3, .JPG o .GIF per le immagini, e così via...

L'opzione /B è necessaria perché comunica al comando COPY che state unendo dei file binari. Se tentate di concatenare dei file binari senza l'opzione /B, gli spezzoni verranno trattati come file ASCII (puro testo), e MS-DOS interromperà la copia non appena incontrerà un byte con valore 0, perché lo considererà un marcatore di fine file (EOF).

Se avete parecchi spezzoni e non riuscite a far stare tutti i nomi all'interno di una singola linea di comando MS-DOS (c'è un limite di 127 caratteri per ogni linea di comando), potete unire gli spezzoni in pezzi più grandi, che poi riunirete a loro volta per formare il file originale, come in questo esempio:

COPY /B File1+File2+File3+File4+File5+File6 File1-6 COPY /B File7+File8+File9+File10+File11+File12 File7-12 COPY /B File1-6+File7-12 Film.mpg

Potrebbe accadere che non tutti gli spezzoni siano riusciti a pervenire al server da cui avete scaricato i messaggi. In questo caso potete inviare un messaggio in cui chiedete alla persona che ha inviato il file (detta poster, in gergo) o agli altri frequentatori del newsgroup di inviare di nuovo (repost) gli spezzoni che non vi sono pervenuti. Sarebbe meglio se ci fosse un secondo newsgroup dedicato ai repost, così da non appesantire il gruppo per chi ha ricevuto tutti gli spezzoni.
In ogni caso, prima di chiedere, potete tentare di accedere al newsgroup da un altro server. Infatti, dal momento che i messaggi vengono scambiati tra i vari server, potrebbe accadere che il server che avete utilizzato non abbia ricevuto tutti i messaggi, ma potreste trovare le parti mancanti in un altro (che magari a sua volta non avrà ricevuto alcuni messaggi che avete scaricato dal primo server al quale vi eravate connessi). I newsserver migliori sono quelli con un feed ampio (ricevono messaggi da un vasto numero di altri server), e una lunga history (conservano i vecchi messaggi per molto tempo).

Per facilitare il ripristono di file con parti mancanti, esiste un sistema molto intelligente chiamato PARchive. Probabilmente avrete visto file con estensioni del tipo PAR, P00, P01, e così via, inviati insieme agli spezzoni di un file.
Questi file possono essere usati dalle applicazioni PARchive come FSRaid, QuickPar, o SmartPAR per ricostruire un file. I file PAR vanno messi nella stessa directory contenente le parti del file che volete ricostruire. Se il numero di file PAR è uguale o superiore a quello degli spezzoni mancanti, l'applicazione PARchive sarà in grado di ricostruire il file originale.

Comunque, può succedere che non riusciate in alcun modo a procurarvi gli spezzoni che risultano mancanti. Se però il file in questione è un filmato MPEG e avete in mano almeno il primo spezzone (quello che contiene l'header con le informazioni necessarie per interpretare i dati che compongono il filmato), è ancora possibile riunire i pezzi che avete ed eseguire il filmato che mostrerà soltanto quanto siete riusciti a scaricare. Noterete qualche effetto un po' strano durante il passaggio tra due spezzoni non consecutivi.

Un'altra interessante peculiarità del formato MPEG è la possibilità di poter visualizzare il filmato mentre lo si sta scaricando. Per fare questo, quando aprite (con Netscape) un messaggio che contiene un filmato MPEG, fermatelo non appena appare il link con il nome del file. Premete il tasto destro del mouse sul link e scegliete di salvare il file su disco, di modo che venga scaricato direttamente sull'hard disk man mano che giunge da Internet. A questo punto aprite la cartella dove sta avvenendo il salvataggio del file, e fatene una copia selezionando il nome del file e premendo CTRL+C seguito da CTRL+V. Ora potete lanciare il file copiato mentre il computer continua a scaricare la parte restante. Questo è molto utile per accertarsi che il filmato che si sta scaricando (solitamente molto lungo) sia effettivamente quello che vi aspettavate, piuttosto che un filmato che già avevate, magari con un nome differente, o dello spam, o qualcosa che potreste non gradire.
Per poter vedere il primo fotogramma del filmato, è necessario attendere che siano stati scaricati almeno 35 Kb circa (in realtà questo dipende dalle dimensioni in termini di altezza e larghezza e dalla risoluzione del filmato), mentre se volete avere un'idea più precisa dei primi secondi di animazione, dovreste attendere di aver scaricato almeno 75/100 Kb (come al solito, dal momento che si tratta di dati codificati, il file che salverete su disco sarà solo 3/4 di quello che avete scaricato fino a quel momento). La stessa peculiarità è riscontrabile nei file in formato MP3 e JPG.

Scaricamento differito (tramite Forte Agent)

Mentre un convenzionale client e-mail con funzioni di news reader come Netscape o Outlook Express vi permette di navigare nei newsgroup "in tempo reale", consentendovi di aprire manualmente ogni messaggio e vederne il contenuto, se dovete scaricare parecchi messaggi, in special modo file divisi in più parti allegati a diversi messaggi, è preferibile utilizzare un programma client specifico come Forte Agent, che vi consente di selezionare tutti i messaggi ai quali siete interessati, per poi ritirarli con un singolo click. In questo modo potete scegliere parecchi messaggi e lasciare che Agent li scarichi durante la notte, così che il mattino dopo potete salvare tutti i file allegati o navigare i newsgroup offline.

Forte Agent è un software molto completo che vi consente di fare parecchie cose, comunque qui viene suggerita una configurazione rapida che vi consentirà di scaricare i messaggi dai newsgroup. Per prima cosa, andate nel menu Options/User and System Profile, premete sul tab System e immettete il vostro NNTP server preferito nel campo News Server. Se tale NNTP server non è libero e richiede una password, premete sul tab User e inseritela ("News Server Login"). Sotto la tab User inoltre dovete inserire il vostro nome e e-mail ("Email Address" e "Full Name") ma naturalmente non è necessario inserire i vostri veri dati, se non volete.
Adesso siete pronti per andare online: premete il pulsante "Go Online/Offline" o attivate la voce "Online" dal menu Online. A questo punto dovete scaricare la lista completa dei newsgroup disponibili sul server NNTP che avete specificato: andate nel menu Online e premete su "Get New Groups". Questa azione può richiedere anche parecchi minuti per essere completata ma normalmente dovrete effettuarla soltanto la prima volta o quando scegliete un nuovo server NNTP. Ricordatevi di andare offline e poi di nuovo online quando cambiate server, inoltre in questo caso potete conservare i "gruppi estinti" quando aggiornate la lista dei gruppi in modo da non doverla scaricare un'altra volta nel caso vogliate tornare al vecchio server). Dopo aver aggiornato la lista, i nuovi gruppi verranno evidenziati con una stellina gialla.
Una volta che avete la lista di tutti i newsgroup disponibili sul server NNTP scelto, potete "abbonarvi" a uno o più di essi (selezionate il nome del gruppo, e poi premete il pulsante "Subscribe" o selezionate "Subscribe" dal menu contestuale) o semplicemente selezionate uno o più gruppi clickandoci sopra (per selezionarne più di uno tenete premuto il tasto CTRL, mentre potete selezionare un intero gruppo tenendo premuto il tasto SHIFT e selezionando il primo e l'ultimo messaggio del gruppo). Adesso potete scaricare i messaggi nei gruppi sottoscritti o selezionati premendo rispettivamente "Get New Headers in Subscribed Groups" o "Get New Headers in Selected Groups".
Quando avete tutti i titoli (headers) potete scaricare i messaggi relativi (e i loro allegati): selezionate uno o più messaggi, e poi marcateli per lo scaricamento (utilizzate il pulsante "Mark for Retrieval" o la stessa voce dal menu contestuale). Infine clickate il bottone "Get Marked Message Bodies" o la stessa voce dal menu Online e lasciate che Agent compia il suo lavoro. Quando avrà finito scegliete "Save All Attachments" dal menu File. Gli allegati sono generalmente salvati nella stessa directory del programma Forte Agent.
Prima di marcare un gruppo di messaggi per lo scaricamento, accertatevi che contentano realmente quello che vi aspettate, perché potrebbero essere messaggi finti o forgiati da spammers o trolls: selezionate un paio di messaggi del gruppo (non il primo e l'ultimo, meglio sceglierne qualcuno dal mezzo) e clickate su "Get Selected Message Bodies", poi salvate gli allegati, e verificate il loro contenuto.

yEnc encoding

A partire dal Marzo 2002 circa, un nuovo formato di codifica -- yEnc, inventato da Jürgen Helbing -- ha iniziato a fare la sua comparsa su UseNet ed ha riscosso un certo consenso soprattutto nei newsgroup binari perché è più efficiente dell'uuencode, generalmente circa del 30%, così che le dimensioni dell'immagine codificata sono all'incirca le stesse di quella originale.

Sfortunatamente questo ha causato una certa confusione dal momento che la maggior parte dei news reader non è in grado di gestire questo nuovo formato. Questo è come un file codificato in yEnc appare:

=ybegin line=128 size=111 name=flag_it.gif qspbc‹>*9*»**)***ª*)))***V****>*9**2r*-2FBjªë­*<T=njš=Jk®5=}`>"úŠn³=}U4âòZo¸=}5¨æB|Mr¹9y`^s<Oî²Oq잓ÛtÃ5ÐÞsºîª*e =yend size=111 crc32=ADE067E3

Se siete utenti registrati di Forte Agent, non dovreste comunque avere problemi, perché tale client offre supporto nativo per lo yEnc dalla versione 1.91. Inoltre, Jürgen Helbing è entrato a far parte del team di sviluppo di Forte Agent.
In caso contrario, ci sono alcune applicazioni che gestiscono o processano i file yEnc. La prima è un'applicazione per la linea di comando chiamata yDec fornita direttamente dal creatore di yEnc, ma è preferibile utilizzare yEnc32 perché ha un'interfaccia grafica, può processare più file alla volta (batch) ed è inoltre in grado di codificare in formato yEnc, invece di limitarsi a decodificarlo. yEnc32 a partire dalla versione 0.0.4 offre una shell extension così che è possibile salvare uno o più messaggi su disco, clickarci sopra con il tasto destro e scegliere "yDecode with yEnc32" dal menu contestuale. Poi potete scegliere la directory di destinazione dove salvare i file decodificati tramite "Save files to folder" e se volete potete cancellare i file codificati dopo la decodifica spuntando "Remove encoded files after decoding", e poi potete iniziare il processo di decodifica premendo su "OK".

Comunque, utilizzare questi programmi è un po' complicato perché dovete salvare i file su disco e poi convertirli. Inolte, la maggior parte delle volte non potrete decodificare tali file probabilmente per via del modo in cui i news reader trattano il testo e può succedere che vadano persi alcuni caratteri speciali, e in tal caso otterete un messaggio di errore e un file erroneamente decodificato. Fortunatamente c'è un'altra eccellente applicazione chiamata yProxy che fa da tramite tra il vostro news reader e il server NNTP convertendo automaticamente e in modo trasparente da yEnc a UUencode così che praticamente ogni news reader può leggere i file codificati in yEnc come se avesse un supporto nativo per tale formato!
Utilizzare yProxy è molto semplice: fatelo partire, e inserite il vostro server NNTP favorito in "NNTP Server Address". Poi copiate l'yProxy Address (che normalmente è localhost o 127.0.0.1 - che significa localhost comunque) e utilizzate questo come server NNTP sul vostro browser of news reader preferito. Infine assicuratevi che "yEnc Decode" sia spuntato. Premete il pulsante Start per far partire il proxy locale (e ovviamente Stop per fermarlo).

Una volta che yProxy è configurato e attivo potete accedere un newsgroup come in questo esempio:

news://localhost/alt.binaries.pictures.animated.gifs

Questo è il modo in cui yProxy funziona: legge i dati direttamente dal server NNTP che avete selezionato, poi converte i file yEnc e funziona da server locale ("localhost") dal quale il vostro news reader effettivamente leggerà i messaggi.

Come nota finale su questo argomento, raccomanderei yEnc32 per creare file yEnc e yProxy insieme al vostro news reader preferito per leggerli.
Un newsgroup specifico è stato creato per fare prove con il format yEnc: alt.binaries.test.yenc

Vediamo cosa abbiamo scaricato

Sembra quasi banale, eppure non lo è affatto. Molte persone si trovano in difficoltà quando devono visualizzare un file scaricato da Internet, soprattutto quando ha un'estensione poco comune e non viene riconosciuto automaticamente dal computer quando si tenta di lanciarlo con un doppio click sopra di esso.

Innanzitutto c'è da dire che se il file è compresso deve prima essere decompresso per poter essere utilizzabile. Ci sono parecchi tipi di compressione, ma il formato più comune è lo ZIP (originariamente PK-ZIP, dalle iniziali del suo creatore), che può venire associato ad altri tipi di compressione. In particolare, se l'estensione del file è qualcosa come .ZIP, .Z, .GZIP, .TZIP, .TAR.ZIP, .RAR è possibile decomprimerlo utilizzando 7-Zip. Se avete attivato la WinZip shell extension durante l'installazione del programma, sarà sufficiente fare click con il tasto destro sul nome del file e per estrarlo utilizzando il menu contestuale.

Una volta che il file è stato decompresso, è possibile visualizzarlo tramite il software più appropriato a seconda del tipo di informazione che contiene. VLC è in grado di mostrare quasi tutti i tipi di formati audio/video esistenti nell'industria del software. Assicuratevi di avere installato l'ultima versione. XnView (freeware) o IrfanView (freeware) sono in grado di aprire pressoché qualunque immagine. Altri tipi di immagine meno comuni possono essere aperti con un'applicazione professionale come Corel PhotoPaint. Con PhotoPaint potete anche modificare le immagini per regolarne i colori, il contrasto o la definizione. In questo caso dovreste salvare il file modificato con lo stesso nome, aggiungendo una "r" (che sta per "ritoccato") come suffisso al nome del file: è buona norma non cambiare mai il nome di un immagine, specialmente se è parte di una serie.

Se invece il file che avete scaricato è un eseguibile (fate attenzione a tutti quei file che terminano con estensione .EXE, .COM o .BAT), cancellatelo immediatamente. Non lanciate mai un programma che avete scaricato da un newsgroup: è infatti altamente probabile che si tratti di un virus o di un trojan (specialmente se il programma è stato inviato in un gruppo dove sono espresse idee impopolari). Anche se vi fidate del mittente, non potete essere sicuri se invece si tratti di qualcun altro che ha falsificato le informazioni dell'intestazione del messaggio, fingendo la sua identità (un cosiddetto forger).
Ricordatevi che virus e trojan possono portare conseguenze molto spiacevoli, come formattare o modificare i dati sul vostro hard disk, funzionare come server nascosti che mantengono una porta aperta nel vostro sistema permettendo l'ingresso di intrusi di vario genere, o inviare il vostro indirizzo e-mail o altre informazioni riservate sul vostro conto a qualcun altro attraverso Internet.
Se per qualche motivo pensate di dover assolutamente provare un eseguibile prelevato da un newsgroup, per lo meno fatelo controllare prima da un buon antivirus, come Avira Free Antivirus, il che è comunque una buona cosa da fare ogni volta che si scarica un programma da Internet, soprattutto se proviene da un sito nel quale non siete mai stati in precedenza.
Ricordatevi che un newsgroup è un posto eccellente per scambiare informazioni tra appassionati di uno stesso genere, ma che per sua stessa natura è totalmente incontrollato. Questo può essere considerato un pregio perché contribuisce a far circolare idee che non potrebbero sopravvivere altrove, ma nel contempo rende vulnerabili gli utenti più sprovveduti. Perciò siate prudenti.


APPENDICE 1 - SOFTWARE
Questo è l'elenco dei programmi citati all'interno dell'articolo. Il numero della versione corrisponde all'ultima disponibile al momento della stesura dell'articolo.
Gli URL puntano direttamente alla pagina di download del sito ufficiale del programma. Sono stati tutti verificati e risultavano funzionanti al termine della stesura dell'articolo.


MasterSplitter (shareware $10) by TomaSoft Corporation
http://www.tomasoft.com/app/site/products

BLJoin (freeware) by Browny Lads Productions
http://www.yproxy.com/downloads.html

Mozilla Thunderbird (freeware)
www.mozilla.org/thunderbird/

Forte Agent (shareware $29)
http://www.forteinc.com/agent/index.htm

Forte Free Agent(freeware, light version of Forte Agent) by Forte
http://www.forteinc.com/agent/freagent.htm

Decode Shell Extension (freeware) by Funduc Software
http://www.funduc.com/otsoft.htm#decodeshellextension

7-Zip
http://www.7-zip.org/

Avira Antivirus
www.avira.com/downloads
Virii reference list updates: http://www.avira.com/it/support-vdf-update-info

TheGun.Exe (freeware) by 21st Century Missile Ware
http://www.pbq.com.au/home/hutch/thegun.htm

EditPad Classic (freeware) by JGsoft
http://www.jgsoft.com/editpad.shtml

EditPlus Text Editor (shareware $30) by ES-Computing
http://www.editpadpro.com/editpadlite.html

yDec (freeware, open source) by yenc.org
http://www.yenc.org/ydec.htm

yEnc32 (freeware) by eSite Media
http://www.yenc32.com/

yProxy (freeware) by Browny Lads Productions
http://www.brawnylads.com/software/

PARchive
http://parchive.sourceforge.net/

QuickPar
http://parchive.sourceforge.net/

VLC - multimedia player
http://www.videolan.org/vlc/

XnView (freeware)
http://www.xnview.com/en/index.php

IrfanView (freeware) by Irfan Skiljan
http://www.irfanview.com/

Acrobat Reader (freeware) by Adobe
http://www.adobe.com/products/acrobat/readstep2.html


CCleaner
http://www.piriform.com/ccleaner/download


APPENDICE 2 - UN FILE SPLITTER IN QBASIC

REM FILE SPLITTER v1.02 r25apr2000 by Elf Qrin - Made in QBasic true=-1: o4=true: o5=true: o9=1 spb: CLS: PRINT "FILE SPLITTER by Elf Qrin - www.ElfQrin.com" PRINT "File Sorgente"; : GOSUB inpfn: IF fi$ = "" THEN GOTO fpcs fio$ = fi$ PRINT "Non inserire estensione per il File Destinazione" PRINT "File Destinazione"; : GOSUB inpfn: IF fi$ = "" THEN GOTO fpcs IF INSTR(fi$, ".") THEN PRINT : PRINT "L'estensione non e' permessa.": GOSUB pkey: GOTO spb fo2$ = fi$: fi$ = fio$ PRINT "Quanti bytes per spezzone ? "; : LINE INPUT a$: bs = VAL(a$) PRINT : PRINT "STO DIVIDENDO "; fi$; " IN "; fo2$; ".xxx": t1 = TIMER PRINT e$: PRINT OPEN fi$ FOR BINARY AS #1 la1 = 0: la2 = 0: j = 0 DO j = j + 1 IF j < 10 THEN fen$ = "00" + RIGHT$(STR$(j), 1) IF j < 100 AND j > 9 THEN fen$ = "0" + RIGHT$(STR$(j), 2) IF j > 99 THEN fen$ = MID$(STR$(j), 2) fo3$ = fo2$ + "." + fen$ IF o9 = 1 THEN OPEN fo3$ FOR OUTPUT AS #2 ELSE OPEN fo3$ FOR APPEND AS #2 l2 = 0 DO l2 = l2 + 1: la2 = la2 + 1 li$ = INPUT$(1, 1) IF o5 THEN PRINT "Spezzone # :"; j PRINT "Questo Spezzone: Bytes:"; l2 PRINT "Totale : Bytes:"; la2: LOCATE CSRLIN - 3 END IF kq$ = INKEY$: IF kq$ = CHR$(27) THEN LOCATE CSRLIN + 4: PRINT "*** INTERROTTO DALL'UTENTE! ***": EXIT DO PRINT #2, li$; LOOP UNTIL l2 >= bs OR EOF(1) CLOSE 2 IF kq$ = CHR$(27) THEN EXIT DO IF la2 < bs THEN LOCATE CSRLIN + 4: PRINT "Il File Sorgente contiene meno di"; bs; "bytes." LOCATE CSRLIN - 3 END IF LOOP UNTIL EOF(1) CLOSE : t2 = TIMER: LOCATE CSRLIN + 4: PRINT "TERMINATO." fpcs: IF o4 THEN BEEP: BEEP: BEEP PRINT : k$ = "Vuoi dividere un altro file": GOSUB wyn IF y$ = "Y" THEN GOTO spb END inpfn: PRINT ": "; : LINE INPUT fi$ IF fi$ = "" THEN PRINT : PRINT "Nome di file vuoto": GOSUB pkey: GOTO exinpfn k = 0: FOR i = 1 TO LEN(fi$) a$ = MID$(fi$, i, 1): IF a$ = "*" OR a$ = "?" THEN k = 1 NEXT: IF k AND k$ <> "FILE KILL" THEN PRINT : PRINT "Nome di file errato": GOSUB pkey: GOTO inpfn exinpfn: RETURN wyn: PRINT k$; " (Y/N) ? "; : y$ = "": WHILE y$ <> "Y" AND y$ <> "N": y$ = "": WHILE y$ = "": y$ = INKEY$: WEND: y$ = UCASE$(y$): WEND: PRINT y$ RETURN pkey: PRINT : PRINT "Premi un tasto per continuare...": GOSUB wkey RETURN wkey: a$ = "": WHILE a$ = "": a$ = INKEY$: WEND RETURN