8
Nella prima parte della trattazione si analizzano, piuttosto dettagliatamente e
tecnicamente, quali sono le minacce che possono derivare dall’uso poco
corretto di un personal computer. La prima cosa da tenere presente quando si
è collegati in una rete è che non si è al sicuro. Un qualsiasi malintenzionato
con un minimo di conoscenza tecniche può in ogni momento carpire
fraudolentemente dati memorizzati nel proprio PC o prendere il totale
controllo dell’elaboratore. Questa visione non deve essere un deterrente per
non usare un PC, l’avvertenza è di usarlo ma tenendo in considerazione le
minacce che possono presentarsi nel suo uso. La miglior politica da usare è
sempre quella di avere una discreta conoscenza dei problemi tecnici e di non
sottovalutare i pericoli.
Nella seconda parte, sono analizzate le norme che regolano la materia con
una particolare attenzione ai crimini informatici e soprattutto tenendo in
considerazione i recenti aggiornamenti normativi.
Per concludere la terza parte analizza, ancora una volta sotto un profilo
tecnico, alcuni sistemi per aumentare la sicurezza delle comunicazioni e quali
sono i mezzi a disposizione di un utente per avere un buon margine di
sicurezza nel sapere che le proprie comunicazioni non siano violate da un
malintenzionato.
9
CAPITOLO I
PROBLEMI DI SICUREZZA NELL’USO DEI PC
1.1. LAN
1.1.1. Definizione di LAN e loro utilità
LAN è l’acronimo per Local Area Network, ossia rete locale: una rete di due
o più macchine che condividono risorse tra loro, quali ad esempio file, dischi
stampanti, ecc.. Avere più postazioni di lavoro interconnesse tra loro è senza
ombra di dubbio molto pratico e necessario in tutte quelle situazioni dove sia
fondamentale fornire agli utenti la possibilità di condividere tra loro dati e
PC, basti pensare al caso più semplice di tutti e cioè a quello di un qualsiasi
ufficio che utilizzi computer o ancora a tutti quei contesti in cui i calcolatori
sono forniti ad utenti a scopo consultativo come per esempio negli ospedali,
nelle fiere e nei musei, solo per citarne alcuni. È utile in ogni caso spiegare
come funzionano le LAN, come sono organizzate e vedere quali sono i loro
punti deboli dal punto di vista della sicurezza informatica.
In primo luogo si deve affermare che all’interno della rete i PC non hanno
tutti lo stesso ruolo: alcuni svolgono il compito di “client”, e sono quelli usati
solitamente dall’utente per svolgere il normale lavoro di tutti di routine
(workstatation); altri PC invece si occupano ad esempio di fornire ai client
una lista di tutte le risorse presenti sulla rete quando questi ultimi le
richiedono, infine altri PC hanno il compito di dare la possibilità a tutte le
postazioni presenti nella rete di collegarsi ad Internet.
Se la LAN, senza ombra di dubbio, può essere uno strumento molto utile in
un ufficio essa è comunque una porta di accesso ai dati da tenere sotto
controllo. Attraverso la rete locale è possibile eseguire qualsiasi operazione
sui file e sulle cartelle. È fondamentale impostare le necessarie restrizioni di
accesso per evitare che chiunque possa modificare, prelevare, cancellare o
immettere nuovi file (magari back door). Per quanto riguarda questa
10
funzionalità i sistemi Windows si differenziano tra le versioni Windows
95/98 e Windows NT/2000.
Windows 95/98 ha un sistema di protezione che si basa sulla condivisione
delle risorse. Questo significa che è possibile mettere una password ad un
hard disk condiviso in rete, in modo che dagli altri PC della rete possa farvi
accesso solo chi conosce tale password. Non si può però mettere la password
ad un hard disk lasciando libere da password solo alcune cartelle in esso
contenute. Questo significa che la password si estende in ordine gerarchico
dal livello superiore a tutti i sottolivelli.
Ciò che comunque resta è il problema della sicurezza fornita da questa
password che non ha blocco sui tentativi e facile da trovare anche tramite
semplici attacchi di “brute-force”, programmi che provano password
sfruttando dizionari di parole comuni o tutte le combinazioni possibili di
lettere o numeri.
Per Windows NT e 2000 la situazione è differente, in quanto offrono una
protezione di accesso a livello utente: le password non vengono assegnate
alle risorse condivise, ma servono per una verifica di identità. Superata
l’autenticazione, il sistema stesso si occupa di diritti e restrizioni impostati in
precedenza per tale utente. In una rete NT sarà possibile, di conseguenza,
permettere l’accesso solo ad alcune risorse siano esse cartelle, periferiche o
quant’altro, anche senza alcuna gerarchia e sempre differenziate da utente ad
utente. Così facendo è anche più difficile violare la password poiché è
necessario conoscere il nome dell’”utente amministratore” che ha tutti i diritti
su ogni risorsa, anche se spesso come nome dell’utente amministratore viene
lasciato quello standard di Windows. Si bloccano così anche eventuali
attacchi senza intelligenza: l’amministratore, infatti, può impostare delle
opzioni in modo tale che dopo un certo numero di tentativi l’account che
sferra l’attacco via rete venga bloccato.
Nome utente e password sono “case-sensitive” ovverosia il sistema
differenzia tra minuscole e maiuscole, in questo modo la sicurezza viene
notevolmente aumentata. Ultima risorsa di questi sistemi operativi consiste
nel fatto che possiedono entrambi un log di “Audit” che sarebbe un sistema
11
di memorizzazione delle operazioni importanti, ad esempio registrano i
tentativi di accesso non autorizzati.
1.1.2. Problemi creati dalle LAN
Quelle sino ad ora descritte sono le caratteristiche positive di questi sistemi
operativi ma purtroppo anch’essi non sono immuni da problemi riguardanti la
sicurezza. Un primo problema consiste nella presenza di alcuni bug del
sistema che permettono l’accesso come amministratore a chiunque. Anche se
con versioni più recenti sono stati corretti tali problemi non è garantito che
non ne esistano altri oppure anche più semplicemente la versione utilizzata di
NT potrebbe non essere aggiornata.
A parte i bug esistono altre tecniche per appropriarsi di informazioni e dati
importanti: uno dei principali consiste nell’installare programmi che mostrino
la password proprio nell’account dell’amministratore del sistema (key-
logger). Questi programmi sono i famosi cavalli di Troia. Una volta ottenuta
in questo modo la password va da sé che il sistema è a disposizione
dell’intrusore-hacker. Infine, un altro sistema è l’utilizzo di programmi
Sniffer, ma l’argomento sarà trattato in un altro capitolo.
Figura 1 – Esempio di una Lan.
12
1.2. PROTOCOLLI
1.2.1. Cos’è un protocollo
Per capire a fondo come fare per proteggere il computer da intrusioni esterne
è fondamentale conoscere, per lo meno a grandi linee, il modo in cui la
comunicazione si svolge.
L’esigenza di comunicazione deve soddisfare alcune richieste e in particolare
deve permettere che i computer siano collegati tra loro e con altri terminali di
input-output; devono dare la possibilità che le informazioni contenute in un
PC lontano possano essere raggiunte dall’utente e infine consentire uno
scambio di informazioni veloce e comodo tra più elaboratori, anche se
fisicamente a grandi distanze l’uno dall’altro.
Gli elaboratori, perché possano attuare tra loro una comunicazione, devono
essere “compatibili” ovverosia devono parlare un linguaggio comune che è
definito dalle regole di uno specifico protocollo di comunicazione.
Un protocollo di comunicazione si può definire come un’insieme di regole
per la corretta comunicazione fra due apparecchiature.
1
I protocolli possono riguardare il formato dei messaggi, la loro lunghezza, i
caratteri di controllo e quant’altro.
Senza ombra di dubbio al giorno d’oggi è diventano di uso quotidiano
servirsi, per comunicare, della rete Internet. La sua storia inizia intorno agli
anni ’70 ma ciò che si deve sottolineare in questa trattazione è che i
protocolli usati da Internet si discostano dal modello di comunicazione
globale che era che fino allora usato, ovverosia il modello standard ISO/OSI
il quale individua sette livelli di comunicazione e stabilisce i corrispondenti
vincoli di compatibilità. Internet si basa sui protocolli IP (Internetworking
Protocol) e TCP (Transport Control Protocol). Il primo di essi (IP) controlla
il funzionamento dei router in Internet e si assicura che i singoli pacchetti
giungano a destinazione; il secondo (TCP) gestisce la ricomposizione dei
messaggi e il controllo del flusso dei dati.
1 In: “Manuale di informatica giuridica” di P.Baldini, G. Sartor, P.Guidotti. Pag. 171
13
Prima di continuare con un’analisi più approfondita dei protocolli di
comunicazione è da rilevare che tutti gli standar sono pubblicati in una serie
di documenti, dette RFC (Request for Comments), dove si scrivono i servizi
di rete o i riassunti delle politiche; benché tutti gli standard siano pubblicati
come RFC, non tutte le RFC specificano gli standard.
1.2.2. I protocolli dello Stack TCP/IP
Ritornando ai protocolli, la denominazione TCP/IP quindi denomina
un’intera famiglia di protocolli e non solo TCP e IP anzi la definizione
corretta è stack
2
di protocolli TCP/IP inoltre questo standard opera su diversi
livelli che sono:
• applicazione: qui gli utenti possono interagire con la rete; permette
alle applicazioni di accedere ai servizi degli altri livelli e definisce i
protocolli che esse utilizzano per scambiare i dati;
• trasporto: fornisce il flusso di dati per il livello di applicazione; qui
si può effettuare la garanzia d’affidabilità;
• Internet: responsabile delle funzioni d’indirizzamento, di
distribuzione e d’impacchettamento; non consente la garanzia
d’affidabilità;
• rete: responsabile della comunicazione con l’effettivo hardware;
immette i dati sul filo della rete e li estrae; qui risiedono i driver di
dispositivo e non dipende dal metodo d’accesso alla rete, dal
formato del frame e dal mezzo/supporto.
È TCP/IP progettato quindi affinché ogni protocollo esegua un compito
specifico, a ciò si aggiunga che TCP e IP sono due standard separati che
forniscono funzioni diverse. È da specificare che la trasmissione su Internet
hanno come unità base dei “pacchetti” i quali contengono informazioni sui
dati e sulle intestazioni. Queste ultime sono formate, solitamente, da
2 Stack di protocolli: è un gruppo di protocolli che collaborano per completare il trasferimento di
dati da un computer all’altro. Un protocollo monolitico, per contro, è un singolo standard
responsabile di tutti i comportamenti associati a tale trasferimento.
14
informazioni sul controllo degli errori, identificatori di protocolli, indirizzi di
fonte e di destinazione.
I dati si spostano su è giù nello stack; ogni livello al suo interno può solo
inviare e ricevere i dati da e per i livelli adiacenti e le intestazioni vengono
aggiunte da parte di ciascun livello. I protocolli invece agiscono in un solo
livello.
Gli standard sono i motori dello stack e funzionano in background, quindi
generalmente sono invisibili all’utente. Essi sono:
• TCP (Transfer Control Protocol);
• UDP (User Datagram Protocol);
• IP (Internet Protocol);
• ICMP (Internet Control Message Protocol);
• IRDP (Internet Router Discovery Protocol);
• IGMP (Internet Group Management Protocol);
• ARP (Address Resolution Protocol).
TCP
TCP è un servizio di distribuzione affidabile orientato alla connessione il che
significa che occorre stabilire una connessione prima che gli host scambino i
dati. La distribuzione garantita si svolge enumerando ciascun segmento
trasmesso, dopodiché un acknowledgement verifica la ricezione dei dati. Più
precisamente i dati sono trasmessi in segmenti e per ciascun segmento inviato
l’host ricevente devo restituire, entro un determinato periodo, un pacchetto
ACK di byte ricevuti. Se un ACK non è ricevuto, i dati vengono ritrasmessi.
Il protocollo TCP è definito nella RFC 793 ed è usato solo per le
comunicazioni uno ad uno; invece, in Windows 2000 si usa un’altra versione
di TCP sviluppata per prevenire tutti gli attacchi che si sono verificati nel
corso del tempo.
I dati una volta che arrivano ai PC hanno bisogno di un metodo per
identificare un certo tipo di servizio (ad esempio la posta), questo compito è
assolto dalle porte, ossia dei numeri d’identificazione che sono inclusi nel
15
pacchetto TCP. Si tratta di un modo per dirigere i pacchetti verso
l’applicazione adeguata.
Proprio attraverso queste porte TCP si può ottenere l’accesso ad un
elaboratore usando uno scanner di porte aperte, per poi cercare di stabilire
una connessione con un programma installato sul PC. Spesso gli scanner
sono usati da malintenzionati per avere un accesso non autorizzato, ma hanno
anche il merito di diagnosticare le debolezze nel sistema. In particolare
possono:
• trovare un PC o una rete;
• scoprire i servizi correntemente attivi;
• collaudare i servizi per individuare buchi di cui si è informati.
UDP
Il protocollo UDP fornisce un servizio ad assenza di connessione che offre
una distribuzione dei dati non affidabile. Questo sta a significare che non è
garantito né l’ordine corretto dei datagrammi né il loro arrivo; come risultato,
UDP non ripristina i dati mediante la ritrasmissione. Questo protocollo,
definito nella RFC 768, è usato dalle applicazioni che non richiedono
l’ackwledgement e che inviano solo pochi dati per volta. Per usare questo
protocollo è necessario che un’applicazione fornisca l’indirizzo IP e il
numero di porta UDP dell’applicazione in arrivo; la porta può ricevere più
messaggi alla volta e ciascuna di esse è identificata da un numero univoco.
Queste porte sono distinte e separate da quelle TCP, anche se alcune di esse
utilizzano lo stesso numero.
IP
IP è il protocollo che permette la classificazione e la diffusione dei pacchetti;
a questo livello ogni pacchetto in entrata o in uscita è detto datagramma.
Ogni datagramma IP genera l’indirizzo IP di origine del mittente e quello di
destinazione del destinatario. IP, definito nella RFC 791, è un protocollo di
datagrammi ad assenza di connessione e inaffidabile, è incaricato
dell’indirizzamento e dell’instradamento dei pacchetti fra gli host; prima
16
dello scambio dei dati non è stabilita alcuna sessione e la stessa distribuzione
non è garantita. Questo protocollo tenta in ogni modo di trasmettere un
pacchetto. Nel caso in cui il pacchetto sia smarrito, corrotto o in ritardo, IP in
ogni caso non fa alcun tentativo per rimediare a tali errori, poiché la garanzia
di distribuzione è prerogativa degli standard di livello superiore come, come
TCP. La funzione principale quindi di IP è l’instradamento. Esso riceve i
datagrammi da UDP e TCP al di sopra e dalla scheda di rete al di sotto. Ogni
datagramma è etichettato con un indirizzo IP di origine e con uno di
destinazione; IP esamina il secondo su ogni datagrammi, lo confronta con
una tabella delle route mantenuta localmente e decide sul da farsi. Ogni
datagramma ha tre possibilità:
1) può essere passato, sull’host locale, ad un livello di protocollo
superiore a IP;
2) può essere inoltrato mediante una delle schede di rete collegate
localmente;
3) può essere rifiutato.
Il protocollo IP è anche responsabile del modo in cui far giungere i pacchetti
a destinazione ovverosia l’instradamento. Questo standard, tuttavia, non
necessita di conoscere l’intera route, bensì solo dove inviare i pacchetti per
tutti gli indirizzi non locali.
Un router è diverso da un classico PC sulla rete perché connette due o più
reti.
Windows 2000 Server aggiunge alla propria implementazione
d’instradamento il supporto NAT (Network Address Translation), che
fornisce una traduzione dell’indirizzo IP fra una rete pubblica e una privata.
Uno dei vantaggi offerti da questo supporto è di ridurre i rischi degli attacchi
di rifiuto del servizio sui sistemi interni, poiché tutti gli indirizzi di rete
interni sono nascosti. Ad ogni router occorre conoscere solo i router a cui è
connesso e il suo unico onere è quello di stabilire la successiva destinazione
del pacchetto. Per far ciò ogni computer detiene una tabella d’instradamento
che è formata principalmente da questi elementi:
• rete di destinazione;
17
• maschera di rete;
• gateway o router per accedere alla rete;
• quale interfaccia locale utilizzare;
• una metrica che determina la propria data alla route, se più router
possono soddisfare l’esigenza.
Per un PC su una semplice rete locale ci sono, in genere, sei voci nella tabella
d’instradamento di default:
1) l’interfaccia di loopback: permette ad un host di connettersi a se
stesso;
2) la rete locale: comunica a IP che il PC è direttamente connesso a un
determinato insieme di indirizzi IP; attraverso ARP, il protocollo IP
calcola l’indirizzo hardware corrispondente a vi invia i pacchetti;
3) il gateway predefinito: consente ad IP di inviare i pacchetti per tutti
gli indirizzi non locali sul router; quest’ultimo consulta la propria
tabella d’instradamento e stabilisce se questa è connessa
direttamente alla rete di destinazione e nel caso non lo sia, esso la
invia al proprio gateway predefinito e il processo continua;
4) l’host locale;
5) il broadcast;
6) il multicast.
Per visualizzare la tabella delle route, si può usare il comando “route print”.
Le route si scambiano informazioni reciprocamente, avvalendosi di protcolli
quali RIP (Rupting Infomation Protocol) o OSFP (Open Shortest Phat First);
il RIP viene fornito con Windows 2000 Professional, mentre i protocolli
d’instradamento superiori sono supportati da Windows 2000 Server.
L’ultima funzione di IP è quella di frammentazione e riassemblaggio. Se un
router riceve un pacchetto troppo esteso per la rete successiva, IP lo
frammenta in pacchetti più piccoli che si possono poi inoltrare al prossimo
segmento; terminato il viaggio, IP, che si trova sull’host di destinazione,
riassembla i frammenti nel carico di lavoro originario.
18
IPSec è un’altra funzione presente in Windows 2000; per una maggiore
sicurezza, essa sfrutta la crittologia, tra cui l’autenticazione dell’origine dei
dati trasmessi.
ICMP
ICMP (Internet Control Message Protocol è definito nella RFC 792) fornisce
i programmi per la risoluzione dei problemi e il rapporto degli errori. Per
esempio se IP non riesce ad inviare un pacchetto all’host di destinazione,
ICPM invia un messaggio “Destination Unreacchable” all’host di origine.
Windows 2000 utilizza ICPM per:
• costruire e mantenere le tabelle delle route;
• coprire i router;
• assistere alla rilevazione di PMTU (Path Maximum Trasmission
Unit);
• diagnosticare i problemi mediante “ping” e “tracert”;
• sistemare le velocità del flusso di dati.
ICPM non rende IP affidabile, ma tenta di riportare gli errori e di fornire
feedback in condizioni specifiche; i suoi messaggi sono privi di
acknowledgement e inaffidabili.
L’utility “ping” invia ad un indirizzo IP le richieste eco di ICPM, riporta il
numero di risposte e il tempo trascorso prima di riceverle; con “ping” è
possibile utilizzare numerose opzioni diverse.
“Tracert” è un programma di tracciamento delle route e, come ping, invia a
un indirizzo IP le richieste di ICPM; inoltre, aumenta il TTL (Time To Live)
di 1 partendo da 1 e analizza gli errori ICPM che vengono restituiti. Ogni
richiesta eco dal buon esito dovrebbe fare un salto in avanti, prima che il
campo TTL raggiunga lo 0 e il router restituisca un errore ICPM “Time
Exceeded”. Tracert stampa inoltre, una lista ordinata di router che hanno
restituito messaggi d’errore. Uno degli impieghi più noti di ICPM è proprio
“ping”, spesso utilizzato per collaudare la configurazione di TCP/IP e per
verificare che un host remoto funzioni e sia disponibile; ICPM fornisce le
risposte visibili dopo avere usato il comando ping.
19
IRDP
IRDP (Internet Router Discovery Protocol), indicato nella RFC 1256, è usato
da Windows 2000 per scoprire i router, questo protocollo fornisce un metodo
molto avanzato di configurare e rivelare i gateway di default. Gli host
possono scoprire i router sulle loro sottoreti, oppure passare ad un router di
backup se quello principale fallisce.
L’host ascolta gli annunci del router indirizzati al group multicast (224.0.0.1)
ma può anche inviare messaggi all’indirizzo multicast (224.0.0.2), dove
un’interfaccia inizializza la ricerca di un router; Windows 2000 invia un
massimo di tre sollecitazioni a intervalli di circa 600 millisecondi. L’impiego
della scoperta del router controllabile dai parametri di registro
PerformRouterDiscovery e SolicitationAdressBCast; impostando sul valore 1
quest’ultimo registro, le sollecitazioni al router sono broadcast anziché
multicast.
IGPM
IGPM (Internet Group Managemanent Protocol) è un protocollo che gestisce
i gruppi multicast di IP. Un gruppo multicast è un gruppo di host che ascolta
un particolare indirizzo IP multicast e riceve tutti i pacchetti inviati a tale
indirizzo; il traffico IP multicast viene senza dubbio inviato ad un singolo
indirizzo, ma è anche elaborato da più host IP.
Per supportare il multicasting IP viene definita un route aggiuntiva sull’host,
la quale specifica che se un datagrammi sta per essere inviato ad un gruppo di
host multicast sarebbe bene inoltrarlo mediante la scheda di interfaccia locale
anziché al gateway predefinito.
In Windows 2000, la scoperta del router si ha mediante i multicast, se ne
avvalgono anche i server WINS quando provano di posizionare i partner di
replica.
Il TCP/IP di Windows 2000 supporta il multicast IP del livello2, ossia ha la
facoltà di inviare e ricevere il traffico multicast IP.
20
ARP
ARP (Adress Resolution Protocol), individuato nella RFC 286, serve a
determinare l’indirizzo MAC (Media Access Control) associato a quello IP di
destinazione.
Per risolvere un indirizzo IP sul proprio indirizzo MAC, ARP usa messaggi
broadcast per inviare una richiesta; la risposta, che contiene l’indirizzo MAC
corrispondente a quello IP desiderato, è resa al mittente della richiesta ARP.
Per contenere al minimo il numero di richiesta ARP, implementazione di
Windows 2000 dello stack TCP/IP incorpora una cache ARP. Quest’ultima
contiene gli indirizzi IP risolti di recente con i loro corrispondenti MAC ed è
controllata prima di inviare una richiesta ARP; ogni scheda di rete ne è
munita.
1.2.3. I protocolli delle applicazioni
Ci sono poi anche altri tipi di protocolli che operano al livello delle
applicazioni, questi sono visibili all’utente e visualizzano informazioni sulla
connessione, messaggi d’errore o lo stato dei trasferimenti di file. Alcuni di
quelli inclusi in Windows 2000 sono:
• FTP (File Transfert Protocol);
• Telnet;
• HTTP ( Hypertext Trasfert Protocol);
• SMTP (Simple Mail Transfer Protocol).
Per permettere alle applicazioni di accedere ai protocolli TCP/IP in modo
standard, Windows 2000 usa le API (Application Programming Interface).
Queste sono funzioni e comandi chiamati dall’applicazione per eseguire
funzioni di rete; un esempio è fornito da un browser Web che si connette a un
sito e che necessita di instaurare la connessione con un servizio TCP.
Esempio di interfacce al livello applicazione, per le applicazioni di cui si sta
trattando ovverosia TCP/IP, sono: Windows Socket e NetBIOS.
21
La prima fornisce un’API standard; NetBIOS invece, è un’interfaccia
standard per accedere ai servizi di protocollo, come le sessioni, i datagrammi
o la risoluzione dei nomi.
Legato al protocollo NetBIOS che è utilizzato nelle LAN, IBM introduce nel
1985 NetBUI che permette agli elaboratori che usano Windows 2000 di
comunicare con altri elaboratori sotto Windows, purché posizionati sullo
stesso segmento di rete. NetBUI è un protocollo non routable.
SMB
SMB (Server Message Block) è un protocollo che definisce una serie di
comandi utilizzati per passare informazioni fra i computer della rete. Un
blocco di dati contiene una richiesta di lavoro, da una stazione di lavoro al
server, o la risposta, dal server alla stazione.
Gli SMB si adoperano per tutte le comunicazioni che attraversano il server o
la stazione di lavoro, come ad esempio lo stampare, l’amministrare gli
account o eseguire qualsiasi altra funzione che il redirector indente compiere.
I servizi ad alto livello per la funzionalità delle reti standard di Microsoft,
sono forniti proprio da SMB.
SMB è stato progettato per consentire ai sistemi di accedere in modo
trasparente ai file che risiedono sul sistema remoto; esso è indipendente dal
protocollo di risoluzione del nome, da quello di controllo e da quello di
trasporto e, infine, definisce il modo in cui si svolge il browsing di una
directory.
SMB è usato da vari prodotti tra i quali: Windows 2000, NT, 95,98.
SMB è conosciuto anche come standard di condivisione CIFS (Common
Internet File System) e supporta sia l’autenticazione reciproca sia quella di
messaggio. La prima impedisce a una terza parte di mascherarsi da mittente,
mentre la seconda garantisce che i messaggi provengano dal mittente
corretto.