• Non ci sono risultati.

Fondamenti di Informatica

N/A
N/A
Protected

Academic year: 2022

Condividi "Fondamenti di Informatica"

Copied!
109
0
0

Testo completo

(1)

Fondamenti di Informatica

Laurea in

Ingegneria Civile e Ingegneria per l’ambiente e il territorio

Principi di Reti di Calcolatori e Problematiche di Internet

Stefano Cagnoni e Monica Mordonini

Dipartimento di Ingegneria dell’Informazione

Università degli Studi di Parma

(2)

Cenni su Reti di Calcolatori

n

Cosa è una rete?

ã

Punto di vista logico: sistema di dati ed utenti distribuito

ã

Punto di vista fisico: insieme di hardware,

collegamenti, e protocolli che permettono la

comunicazione tra macchine remote

(3)

Reti di Calcolatori

n

Una rete di calcolatore offre alcuni vantaggi rispetto all’uso di un calcolatore isolato:

q Condivisione dell’Informazione

q Condivisione delle Risorse

q Accesso a Risorse Remote

q Alta Affidabilità

q Convenienza Economica

q Crescita Graduale

(4)

Trasmissione dati

n

Mezzi di trasmissione (bps=bit x sec) si

utilizzano metodi per trasmissione telefonica

q Doppino telefonico (vel. 2400-9600 bps)

q Cavo coassiale (vel. 10^4-10^6 bps)

q Fibra ottica (bit=assenza/presenza segnale luminoso) (vel. 10^9 bps)

q Onde elettromagnetiche (es via satellite)

(5)

Digitale-Analogico

n Informazione=digitale (seq. Bit)

n Segnali=analogico (continuo)

n Il Modem (Modulatore-Demodulatore) si preoccupa di trasformare bit in segnali e viceversa

q Modulazione in frequenza=il modem altera in frequenza una sequenza portante

0=freq più bassa; 1=freq più alta

q ...modulazione in ampiezza, fase,

n Es PC collegati ‘da casa’ attraverso un modem

(6)

Reti di Calcolatori

n Le reti sono classificate in base alla loro dimensione:

q Rete locale (LAN)

q Rete Metropolitana (MAN)

q Rete Geografica (WAN)

(7)

Reti di Calcolatori

n Le prestazioni di una rete è indicata con la larghezza di banda.

q La larghezza di banda indica la quantità di informazione che la rete è in grado di trasmettere.

q La larghezza di banda viene misurata in bit al secondo:

n un collegamento telefonico via modem (fino a 56 Kbps).

n un collegamento telefonico dedicato ISDN o ADSL (fino a 6.4Mbps).

n un collegamento di una rete locale (fino a 1Gbps).

(8)

Reti Locali

n

Terminali nella stessa stanza/edificio possiamo utilizzare collegamenti diretti (senza passare per reti pubbliche)

n

Rete locale più diffuse:

q Ethernet e Fast Ethernet

insieme di componenti hardware e software

particolari che gestiscono la trasmissione dati in

(9)

Rete Locale

server pc

pc

pc

LAN dorsale

(10)

Reti Metropolitane e Geografiche

n

Nodi distribuiti su medio-lunga distanza

n

Possiamo usare

q la rete di comunicazione pubblica utilizzando

modem o affittando linee di trasmissione (PSTN)

q Oppure reti digitali di trasmissione dati (ISDN)

n

Trasmissione dati: attraverso messaggi

(11)

Topologia di una Rete

n

A stella=tutti nodi collegati ad un elaboratore centrale (che smista messaggi)

n

Ad anello=treno di messaggi

n

A bus=nodi disposti lungo un unico canale

n

Irregolare=attraverso host e nodi di

trasmissione

(12)

Messaggi?

n Sequenze di bit (come al solito...)

q Mittente

q Destinatario

q Caratteri di controllo (per consistenza)

q Contenuto messaggi

n Nodo di trasmissione: riceve e ritrasmette un

messaggio al destinatario o ad un nodo vicino se il destinatario non è collegato

Routing=pecorso del messaggio nella rete può

(13)

Protocolli di Comunicazione

n Utilizzati dai calcolatori per dialogare

n Come nel caso della codifica dei dati occorre

utilizzare degli standard internazionali per problemi di compatibilità!

n Esempi

q Modello OSI/ISO (Open System Interconnection)

q Modello TCP/IP (standard de facto)

(14)

Internet

n Inter-rete (cioè che collega molte sottoreti tra loro) nata dalla fusione di diverse reti di agenzie

governative americane (ARPANET) e reti di università

n Internet è una rete di calcolatori che permette potenzialmetne la comunicazione tra tutti i

calcolatori del mondo:

q Un indirizzo diverso per ogni calcolatore (indirizzo IP).

(15)

Modello TCP/IP

n

Suddiviso in vari livelli

q Applicazione: software applicativo

q Trasporto: trasforma dati in messaggi usando i protocolli TCP (trasmissione sicura) e UDP

(trasmissione veloce)

q Internet: protocollo IP di spedizione dei messaggi sulla rete

n Indirizzo IP=indirizzo degli host in rete

q Al di sotto aspetti legati al tipo di rete

(16)

Modello TCP/IP

SMTP DNS

FTP TELNET

UDP TCP

IP Internet

Trasporto Applicaz.

(17)

Indirizzi IP

n

Un indirizzo IP è composto da una

sequenza di quattro numeri compresi tra 0 e 255.

160.78.28.83

n

Esiste un sistema detto Domain Name Server (DNS) che permette di associare dei nomi simbolici agli indirizzi IP.

foresto.ce.unipr.it

www.unipr.it

(18)

Indirizzi IP

n I nomi simbolici associati agli indirizzi IP non sono liberi, ma assegnati da uffici appositi.

n Il simbolo terminale è assegnato a livello internazionale e può essere di due tipi:

q Indicante il tipo di organizzazione

n com

n edu

n gov

n net

(19)

Dominio

n Domini=suddivisione logica di Internet per facilitare la gestione dei nomi delle risorse

n Internet è suddivisa in una multitudine di domini radice

q Domini nazionali: uk it de

q Domini generici: com edu

n Un dominio radice include una collezione di host e può essere suddiviso a sua volta in sottodomini e così via

q Sottodominio del DII: ce.unipr.it

(20)

Spazio dei nomi dei domini

com gov org it jp

unipr unipi

dii ceda di

yahoo ac co

...

...

...

microsoft

(21)

Name Server

n Lo spazio dei nomi è diviso in zone gestiti da un server principale e server secondari che

mantengono la lista degli host inclusi nel dominio (database dei nomi)

n Se un server non trova un nome nel suo database manda una richiesta al server del dominio antenato o successore e così via (interrogazioni ricorsive)

n Si usa una memoria cache per mantenere gli indirizzi recuperati tramite altri server

(22)

Domain Name Server

n Lo spazio dei nomi è memorizzato quindi sotto forma di database distribuito (DNS)

n Ogni rete locale ha un proprio server DNS che mappa nomi logici (indirizzi DNS) in indirizzi fisici (indirizzi IP)

n Ricordate che

q Indirizzi IP=codice binario utilizzato dal protocollo di invio dati del modello TCP/IP (livello Internet)

(23)

Servizi di Internet

n

La rete internet fornisce quattro servizi principali:

q FTP (File Transfer Protocol)

q SMTP (Simple Mail Transfer Protocol)

q TELNET

q HTTP (HyperText Transport Protocol)

(24)

World Wide Web

n

Assieme alla posta elettronica, World Wide Web (WWW o Web) è il modo più diffuso di utilizzare la rete Internet.

n

Il Web permette agli utenti di internet di mettere a disposizione e di accedere a documenti via HTTP.

n

Il Web si basa su due programmi:

(25)

L’ipertesto globale

n

1990 : l’idea della ragnatela a

protocollo unico universale (CERN di Ginevra)

n

1993 : sviluppo della piattaforma ad interfaccia grafica per

l’accesso ai siti (200 server web)

n

1998 : varie decine di milioni di server web

n

2000: 500 milioni di server web accessibili

(26)

Il successo del web

n

Distribuzione planetaria : si serve del canale di distribuzione più vasto e

ramificato del mondo (linee telefoniche)

n

Facilità di utilizzo

n

L’organizzazione ipertestuale

n

Possibilità di trasmettere / ricevere informazioni multimediali

n

Semplicità di gestione per i fornitori di

(27)

I concetti base del www

n Ipertesto : informazione organizzata in modo non sequenziale ma reticolare

n Esempio di informazione sequenziale : libro in cui le pagine sono lette in sequenza

n Multimedia: più mezzi ( e linguaggi) in una stessa unità di messaggio comunicativo

n Ipertesto è costituito da unità informative (nodi), e collegamenti che permettono di passare da un

nodo ad un altro

n Se i nodi sono costituiti da documenti

multimediali , l’ipertesto si definisce ipermedia

(28)

World Wide Web (WWW)

n Architettura software per gestire dati distribuiti

geograficamente basata sulla nozione di ipertesto

n Pagine web: ipertesti che possono contenere testo, immagini, suoni, programmi eseguibili

q un utente legge le pagine, se seleziona un link la pagina viene sostituita con quella richiesta (scaricata dal sito

remoto)

n Si appoggia a TCP/IP e quindi è compatibile con ogni tipo di macchina collegata ad Internet

(29)

Struttura del Web

n Architettura Client-server

n Client (ad esempio explorer) permette la navigazione nel web

q trasmette le richieste di pagine/dati remoti, riceve le informazioni e le visualizza sul client

q A volte utilizza programmi esterni (plug-in) per gestire i dati ricevuti

n Il Server è un processo sempre attivo che aspetta e serve le richieste dei client

q Restituisce la pagina richiesta oppure un messaggio di errore

(30)

Client-Server

CNN.COM Explorer

SERVER

Last News

Richiesta

Pagina

(31)

Le regole del web

n Formato universale dei documenti (HTML)

n Protocollo (linguaggio) di comunicazione “standard” tra l’utente (client) ed il server: HTTP

§

Strumento essenziale : il browser:

programma che riceve i comandi-utente, li

trasmette al server, riceve da questo le

informazioni (documenti), ne interpreta il

formato e ne effettua la presentazione sul

client

(32)

Le regole del web

n

Attraverso appositi programmi ( Common Gateway Interface) il server-web esegue le richieste del client

n

Il linguaggio HTML (Hyper Text Markup Language)

q Le istruzioni contengono dei marcatori, detti

tag ( caratteri ASCII) che servono a descrivere la struttura, la composizione e l’impaginazione del documento testuale

(33)

La tecnica di indirizzamento

n

URL /Uniform Resource Location : indirizzo unico della rete

n

Indirizzamento alla risorsa : file,

documento, pagina web, computer….

n

Esempio di indirizzo:

q http:// www.liberliber.it/index.htm

Nome del file Nome computer

(34)

URL: indirizzi nel WEB

n Per accedere a un documento su Web bisogna conoscere il suo indirizzo.

n L’indirizzo è detto URL (Uniform Resource Locator) ed è composta da quattro parti:

q Il protocollo (http in questo caso).

q L’indirizzo del calcolatore su cui è in esecuzione il Web server.

q Il numero di porta (opzionale: default 80).

q Il percorso per accedere il file.

(35)

URL: specifiche standard

n Specifica:

q Come si vuole accedere alla risorsa (metodo)

q Dove si trova la risorsa (indirizzo server DNS)

q Nome della risorsa (nome)

n Formato:

q Metodo://host/nome

http://www.ce.unipr.it/index.html http://www.ce.unipr.it/

http://www.ce.unipr.it/people/

(36)

Protocolli (“metodi”)

n

http: protocollo gestione ipertesti

n

ftp: trasferimento file

n

news: gruppi di discussione

n

telnet: accedere a macchine remote

n

file: accedere a documenti locali

(37)

Nome

n

Nome (mnemonico) di dominio del server DNS al quale si vuole chiedere la risorsa

n

Esempio:

q Server Web DII-PR: www.ce.unipr.it

q Server FTP DII-PR: ftp.ce.unipr.it

(38)

Nome risorsa

n Path name (cammino) che porta al file contente la risorsa (es pagina, foto, ecc) nello spazio di dati gestito dal server del sito che abbiamo contattato

q Solitamente ogni sito ha una pagina di ingresso denominata index.html

q Riepilogando:

o http://www.ce.unipr.it/

o ftp://ftp.ce.unipr.it/

(39)

Le funzionalità del browser

n La navigazione ipertestuale dalla pagina HTML

n Il ritorno alla pagina precedente/ successiva

n Cronologia delle pagine visitate

n Memorizzazione, stampa della pagina/documento

n Scrolling delle righe

n Ritorno alla pagina iniziale

n Attivazione d una nuova ricerca/indirizzo

n Uscita

(40)

“come” funziona il browser

n Uso della memoria cache per la ottimizzazione dei tempi di presentazione

n Uso del “proxy server” ( server più vicino, appartenente alla stessa sottorete del client)

n Attivazione di tutti quei programmi che

consentono la corretta visualizzazione delle

pagine (il cui nome è memorizzato nella testata di trasmissione tra Client e Server; es. winword / applet Java…)

(41)

Funzioni avanzate del web

n Plug –in: modulo software – in grado di integrarsi con il browser che può attivarlo ed eseguirlo online (Acrobat Reader, shockwave, quicktime……)

n Java : linguaggio di programmazione (object oriented), multiforma , interoperabile, compatibile con HTML

(applet)

q Utile per rappresentare:

n Suoni,video,animazioni,grafica

(42)

Linguaggi del Web

(43)

Il linguaggio HTML

n Il linguaggio HTML (HyperText Markup Language) utilizza annotazioni per descrivere come verrà

visualizzato il documento sul browser di un cliente

q Es: La prossima parola è in <b>neretto</b>

n Il browser interpreta le annotazioni traducendole in effetti grafici

q Es: La prossima parola è in neretto

n Alcuni tool forniscono direttamente l’effetto desiderato senza dover usare HTML

(44)

Il linguaggio HTML

n

Un documento HTML contiene:

q Testo.

q Comandi HTML (tag).

q Collegamenti ad altri documenti.

(45)

Il linguaggio HTML

n

I comandi HTML hanno in genere la forma:

<tag> … testo … </tag>

n

Un documento HTML ha in genere la forma:

<html>

<head>

</head>

<body>

</body>

(46)

Tag HTML

n

I tag HTML possono essere divisi in cinque gruppi:

q Tag di intestazione

q Tag di formattazione fisica

q Tag di strutturazione logica

q Tag di collegamento ipertestuale

q Tag di inclusione di immagini e programmi

(47)

Tag di intestazione e formattazione fisica

n I tag di intestazione vengono utilizzati nella parte di intestazione di un documento HTML.

<meta>

<meta name=“author”content=“M. Mordonini”>

<title>

<title>List of recomended books</title>

(48)

Tag di intestazione e formattazione fisica

n I tag di formattazione fisica permettono di impaginare il documento.

q <font> <font face=“arial” size=+1>font arial</font>

q <b>, <i>, <ul> <b>Grassetto</b>

q <hr>, <br>

(49)

Tag di strutturazione logica

n I tag di strutturazione logica permettono di organizzare la struttura del documento.

q <h1>, …, <h6> <h2>informazioni utili</h2>

q <em>, <strong> <em>corsivo</em>

q <address>, <blockquote>, <cite>, <p>

<address>

Monica Mordonini Università di Parma

Parco Area delle Scienze 181A 43100 Parma

(50)

Tag di strutturazione logica

q <table>, <th>, <tr>, <td>

<table border=1>

<tr><th>Nome</th><th>Cognome</th><th>Città</th></tr>

<tr><td>Mario</td> <td>Rossi</td> <td>Parma</td></tr>

<tr><td>Paola</td> <td>Bianchi</td> <td>Piacenza</td></tr>

</table>

(51)

Tag di strutturazione logica

q <ol>, <ul>, <li>

<ul>

<li>Uno</li>

<li>Due</li>

</ul>

1. Uno 2. Due

Uno

Due

<ol>

<li>Uno</li>

<li>Due</li>

</ol>

(52)

Tag di collegamento ipertestuale

n

I tag di collegamento ipertestuale permettono di accedere al contenuto di altri documenti.

<a href=“http://www.ce.unipr.it”>DII-Parma</a>

(53)

Tag di inclusione

di immagini e programmi

n

I tag di inclusione di immagine permettono di inserire delle immagini in un documento.

<img

src=“http://www.ce.unipr.it/image/pippo.gif”>

n

I tag di inclusione di programmi permettono di inserire dei programmi in un documento.

q <script>, <applet>

(54)

Sorgente pagina web

<HTML>

<BODY>

<b>Marco Rossi</b><br>

PhD Student <br>

Universit&agrave di Parma<br>

<IMG SRC=“marco.gif”><hr>

Per scaricare la mia tesi premi qui sotto<br>

<a href=“ftp://ftp.disi.unige.it/RossiM/tesi.ps”>

<i>TESI</i></a>

(55)

Pagina visualizzata su browser

Marco Rossi PhD Student

Università di Parma

Per scaricare la mia tesi premi qui sotto TESI

(56)

Form e interazione con cliente

n

Si possono creare pagine che permettono all’utente di immettere dati attraverso FORM (moduli da compilare)

n

I dati vengono gestiti poi da programmi

residenti sul server (es CGI)

(57)

Form esempio

n Un tipico esempio di form potrebbe essere un motore di ricerca.

n

Inviando questo form, ecco cosa succede:

n Le parole di ricerca vengono mandate a un programma sul server.

n Il programma cerca un database per i riscontri.

n Il programma crea una pagina web con i risultati.

n La pagina web con i risultati viene rimandata al visitatore.

(58)

Form:

esempio

(59)

Xml: cos’è?

n Xml: eXtensible Markup Language

n Linguaggio di markup: permette di evidenziare il contenuto di un documento, all’interno di marcatori descrittivi, che ne definiscono gli attributi, ad es.

linguaggio html.

n Estensibilità: in realtà Xml è un metalinguaggio di markup, cioè viene utilizzato per creare linguaggi di markup personalizzati.

n NON è un linguaggio di programmazione.

(60)

Alcune caratteristiche di XML

n Permette di organizzare a proprio piacimento le

informazioni, consentendo di inviarle a chiunque in modo libero e gratuito.

n Standard aperto, no royalty, no brevetti, no copyright o segreti industriali.

n Salvataggio dei dati: se avete dei file in un formato proprietario quale Visicalc, Lotus Jazz, magari su floppy da 5”¼, la possibilità di recuperarli è piuttosto bassa. Il formato di solo testo resiste abbastanza

bene alle alterazioni magnetiche.

(61)

Alcune caratteristiche di XML

n

L’importanza di uno standard di

comunicazione tra applicazioni, per evitare che i dati possano essere letti e “capiti” solo da pochissimi programmi.

n

La gran parte dei flussi di informazioni viaggia attraverso sistemi proprietari e costosi, ad es. Oracle, SQL, DB2.

n

Ciò che invece, possiamo ottenere con XML

è questo:

(62)

XML

Documento XML

È

Cellulare

Documento di Microsoft Word

Documento Adobe Acrobat

Grafico di Microsoft Excel

Documento HTML

(63)

XML Alcuni punti chiave considerati nella progettazione

n

Supporto di una vastissima gamma di applicazioni (non solo Web).

n

I documenti XML devono rimanere leggibili da parte dell’uomo, e ragionevolmente chiari.

n

Minimizzare le caratteristiche opzionali.

n

Facile da redarre, ossia creabile anche con semplici editor di testo.

n

Formale e conciso: piccoli insiemi di regole ma

assolutamente precise.

(64)

Struttura XML

<?xml version="1.0" ?>

<Media>

<CDs>

<CD quantity=“10”>

<Title>Glory and consequence</Title>

<Artist>Ben Harper</Artists>

<Album>The wheel to live</Album>

</CD>

<CD quantity=“6”>

<Title>Bigmouth strikes again</Title>

<Artist>The Smiths</Artists>

<Album>Meat is murder</Album>

</CD>

I tag XML vengono chiamati nodi o elementi.

(65)

Regole di sintassi e strutturazione

n Quando un documento XML rispetta le regole strutturali definite dal W3C, si dice che è un documento “ben formato”. Gli interpreti XML rifiutano e ignorano i documenti mal formati. Ciò invece non accade in Html.

n Tutti i documenti XML devono avere una tag radice.

n Tutti i tag devono necessariamente essere chiusi.

n L’ annidamento dei tag deve rispettare la gerarchia di apertura.

<tag1><tag2>Getafix</tag1></tag2> NON e’ consentito in XML (in Html si!)

n Il valore degli attributi DEVE sempre essere racchiuso tra virgolette.

n I nomi degli elementi e degli attributi devono iniziare con una lettera, un underscore _ o un segno di due punti (:), poi possono seguire un numero qualsiasi di lettere, numeri, due punti, punti singoli, trattini e underscore. Attenzione perché XML è “case sensitive”.

(66)

La ricerca delle informazioni

Internet come biblioteca virtuale

(67)

La funzione “principe” di internet: la ricerca

n

La metafora della più grande biblioteca del mondo:

q

Disordinata

q

Non “certificata”

q

condizioni necessarie:

q

conoscere la rete (attori che vi pubblicano le informazioni

q

saper utilizzare gli strumenti (come

operano i “motori di ricerca”)

(68)

Caratteristiche dell’informazione in Internet

n Informazione

q NON strutturata ed eterogenea (testi, immagini, video, ….)

q Ad alto dinamismo e caotica : modifiche continue, non controllabili

q Non “classificabile”: banche dati specialistiche ed a contenuto di alto valore professionale

sono disponibili “ allo stesso livello” di contenuti a fini divulgativi e meramente commerciali

(69)

Gli accorgimenti per una “buona ricerca”

n

Per l’utilizzatore:

q Strategie di ricerca

q L’organizzazione dei risultati ottenuti

n

Per il fornitore di informazione:

q Costruire buona informazione e buoni

ipertesti ( “collegamenti funzionali allo scopo del sito”

(70)

Ma attenzione ai conflitti di interesse:

n

Il fornitore di informazione vuole ottenere il maggior numero di visitatori possibile e per il maggior tempo possibile ( meglio se

acquista i prodotti pubblicizzati)

n

Il fruitore naviga per:

q

Studio

q

Ricerca di informazioni particolari e/o

specialistiche

(71)

Gli strumenti

n I motori di ricerca

q di gran lunga i più usati

n Altri strumenti per la ricerca di :

q Programmi o file “particolari”

n Gopher per archivi catalogati attraverso strutture ad albero (ambito accademico)

n Selezione di newsgroup , per la ricerca di gruppi di interesse specifici (newsgroup filter)

(72)

Come funziona un motore

n Un particolare programma scorre sistematicamente e periodicamente TUTTO il web generando degli indici aggiornati con tutte le parole trovate, assegnando

loro dei pesi per ogni pagina

n Al momento della ricerca il motore scorre solo questi indici e propone la lista dei siti con le parole trovate, evidenziando alcune informazioni di carattere

generale (occupazione di memoria della pagina, data

(73)

Alcuni motori di ricerca

n

Altavista

n

Lycos

n

Excite

n

Google

n

Copernic

n

Excite

n

Virgilio

i motori all’interno dei grandi portali fanno

(74)

I motori di ricerca

n Ricerca attraverso una o più parole

n La “prevalenza” è stabilita dall’ordine delle parole ma la presentazione dei risultati avviene secondo regole

(pesi) interne al motore stesso ( e diverse da motore a motore)

n Esempi: numero di volte che la parola compare nella pagina, “dove” compare…)

L’ordine “logico” dei risultati può essere stravolto da accordi

(75)

Consigli per la ricerca

n

Formulare “a priori” uno schema concettuale di ciò che si desidera trovare

n

visionare sempre la “home-page” del sito di interesse

n

Controllare la validità dei “link” messi a

disposizione dal sito

(76)

Gli elementi di forza del navigatore

n

Scelta della “rotta di navigazione”:

q

Quale motore

q

Quali pagine aprire

q

Come navigare sui siti scelti

q

Come raccogliere le informazioni e quali

q

Come organizzarle (stampa,

archiviazione..)

(77)

Informazione organizzata in rete

n

Portale

n

Prodotto editoriale on-line che svolge funzione di

punto privilegiato di accesso al web per gli utenti

e che fornisce loro le risorse informative, i servizi

di comunicazione personale e gli strumenti con

cui ricercare contenuti ed altri servizi sul web

(78)

Portale: informazione organizzata in rete

n

Prodotto editoriale su web

q Insieme di pagine web organicamente collegate e coerenti secondo uno specifico punta di vista (di argomento,di riferimento istituzionale,

pubblicitario, di impresa……….)

n

Il problema della fidelizzazione

q Nomadismo del navigatore ( a differenza del lettore di giornale)

(79)

I portali si diversificano

n

Portali orizzontali

q Generalisti (ampio spettro tematico)

q Offrono servizi “general-purpose” (su web)

q Utenza indifferenziata

n

Portali verticali

q Domini tematici particolari (finanza, sport, cinema,informatica ecc.)

q Gruppi sociali e comunità caratterizzanti interessi comuni (affinity portal)

(80)

I requisiti per mettere informazione in rete

n

Saper realizzare pagine web

q Conoscere il linguaggio HTML: linguaggio di marcatura , formale e non di programmazione,

logica semplice che permette di indirizzare le parti di una normale pagina

q In alternativa : utilizzare prodotti “end-user” che permettono la costruzione “visiva” di pagine web, senza conoscere l’HTML (ES. Netscape

Composer, Frontpage…..

(81)

I requisiti per mettere informazione in rete

n

Acquistare spazio web, in generale presso il fornitore di connettività (ISP); verificarne le caratteristiche di sicurezza (molte linee, molto veloci, anche in relazione al numero di utenti)

q Alcuni Internet Provider offrono spazio web (limitato) anche a titolo gratuito (siti amatoriali)

q Dotarsi di un server proprio e stipulare un contratto con un ISP

(82)

Le frodi informatiche

(83)

Le frodi informatiche

n Accessi non autorizzati

q Sicurezza informatica (tecnologia)

n Violazione della privacy

q Normativa vigente estesa alla rete

n Violazione dei diritti del copyright : occorre una

rivisitazione della normativa con un respiro planetario (già in essere)

n Frodi finanziarie : tecnologia di protezione

Ø

Tentativi “censori” o “limitativi” ad hoc non sortiscono effetti validi per la natura stessa della rete

(84)

Problemi di sicurezza in rete

n La parte di File System del server accessibile al client è controllata dal server (i nomi delle risorse sono relativi a tale parte di file system!)

n Il client può scaricare dalla rete programmi (es

Java) che vengono poi automaticamente eseguiti dal browser (ad es animazioni); tali programmi

hanno permessi molto limitati per evitare intrusioni nel sistema del client

(85)

Problemi di sicurezza in internet

n

intranet: rete privata (aziendale) utilizzata in modo da sfruttare al suo interno i servizi

offerti dalle reti geografiche

n

firewall: macchina dedicata utilizzata da una rete privata per filtrare il traffico tra la rete

privata e la rete esterna (internet).

(86)

Problemi di sicurezza: crittografia delle informazioni

n I messaggi trasmessi sulla rete possono essere

ascoltati da un "intruso" che può anche modificare il messaggio o inviare un messaggio apocrifo.

n Crittografia

n I dati possono essere crittati (cifrati) per impedire che vengano letti o alterati mentre vengono spediti sulla

rete. Verranno poi decrittati (decifrati) dal ricevente.

n Avremo così:

q testo in chiaro

q testo cifrato

(87)

Tecniche elementari di crittografia

n

Sostituzione

q Alfabeto: a b c d e

q Alfabeto cifrato: n z q a h

n

Problemi: tecniche statistiche (conoscenza della frequenza delle lettere, delle coppie etc.

permettono una facile decrittazione.

(88)

Tecniche elementari di crittografia

Trasposizione

Si altera l`ordine delle lettere del testo secondo una chiave.

Testo in chiaro: this is a lovely day

3 2 4 1 chiave crittografica T H I S

_ I S _ A _ L O V E L Y _ D A Y

Testo crittato: S_OYY HI_ED T_AV_ ISLLA

(89)

Algoritmi di crittografia

n

Algoritmi a chiave privata (simmetrici):

q Si usa la stessa chiave per la codifica e per la decodifica. La chiava deve essere privata e

conosciuta dalle due persone che comunicano.

n

Algoritmi a chiave pubblica (asimmetrici):

q Si usano due differenti chiavi. Una pubblica, nota da tutti per crittare, ed una privata, nota solo al destinatario e da mantenere segreta, per

decrittare.

(90)

Algoritmi simmetrici

n Un algoritmo di questo tipo generalmente utilizzato al momento è il DES (Data Encription Standard), nelle sue versioni con chiavi a 56 e 112 bit.

n Questi algoritmi non si presta bene a garantire la riservatezza nella comunicazione continuativa fra n soggetti indipendenti:

q Occorre una chiave privata per ogni coppia di soggetti

q Ogni soggetto è costretto a possedere n-1 chiavi, a mantenerle segrete ed a ricordare quale sia la chiave da utilizzare per comunicare con ciascuno degli altri soggetti.

q Nel caso in cui la chiave sia generata autonomamente dal soggetto che avvia la comunicazione, è necessario che venga

(91)

Algoritmi asimmetrici

n Gli algoritmi asimmetrici sono di concezione recente (1976) ed utilizzano due chiavi distinte per cifrare e decifrare, con alcune proprietà fondamentali:

q un documento cifrato con una chiave può essere decifrato con l’altra e viceversa.

q le chiavi vengono generate in coppia da uno speciale algoritmo ed è di fatto impossibile ottenere una chiave a partire dall’altra.

q Una qualsiasi delle due chiavi viene detta pubblica, è può essere distribuita. L’altra, detta privata, deve

essere mantenuta segreta.

(92)

Algoritmi asimmetrici

n L’algoritmo RSA, proposto da Rivest, Shamir e Adleman nel 1978, è attualmente considerato come standard per la

crittografia a chiave pubblica.

q RSA basa la sua robustezza sulla complessità algoritmica della scomposizione in fattori primi,

operazione per la quale non è attualmente noto un algoritmo efficiente.

q Esistono varie implementazioni di RSA, che variano in funzione della dimensione in bit delle chiavi, e quindi del grado di sicurezza offerto. Chiavi di 512 bit sono un

(93)

Algoritmi asimmetrici

n Essendo asimmetrico, RSA risulta molto più versatile di DES, ed è alla base di tutti i servizi di sicurezza.

n Nella comunicazione fra n soggetti, ad esempio, RSA garantisce riservatezza con 2n chiavi, una coppia (pubblica,privata) per ciascun soggetto.

Se il soggetto A vuole inviare un messaggio riservato al soggetto B, ad esempio, cifra il messaggio con la chiave pubblica di B che, in quanto pubblica, è nota a tutti. In questo modo il messaggio sarà decifrabile soltanto con la chiave privata di B che, in quanto privata, solo B

A B

(94)

Algoritmi asimmetrici

n A causa della complessità algoritmica, le

implementazioni di RSA sono generalmente troppo lente per cifrare direttamente i documenti

q Per questo motivo RSA si utilizza spesso in congiunzione con altri algoritmi.

q Per inviare un documento di grandi dimensioni in

modo riservato, ad esempio, si genera una password casuale, si cifra il documento con DES (algoritmo

simmetrico) utilizzando la password casuale, poi si

(95)

Introduzione di riservatezza

Informazione in chiaro

DES

Chiave RSA pubblica del destinatario

Chiave DES casuale

Informazione cifrata RSA

Chiave DES casuale cifrata

DES:algoritmo di cifratura e decifratura simmetrico: usa 1 sola chiave privata

RSA alfgoritmo di cifratura asimmetrico: uso di due chiavi:

la pubblica per cifrare, la privata per decifrare

(96)

Rimozione di riservatezza

Informazione cifrata

DES Chiave RSA privata

del destinatario RSA

Chiave DES cifrata

Chiave DES

(97)

Politiche di Sicurezza

n L’insieme delle misure (di carattere organizzativo e

tecnologico) tese ad assicurare a ciascun utente autorizzato (e a nessun altro) tutti e soli i servizi previsti per quell’utente, nei tempi e nelle modalità previste.

n Più formalmente, l’insieme delle misure atte a proteggere i requisiti che si desidera il sistema soddisfi, in termini di

q disponibilità

q integrità

q riservatezza

(98)

Politiche di sicurezza: Requisiti

nIl sistema deve impedire la alterazione diretta o indiretta delle informazioni, sia da parte di utenti e processi non autorizzati, che a seguito di eventi accidentali.

nIl sistema deve impedire la alterazione diretta o indiretta delle informazioni, sia da parte di utenti e processi non autorizzati, che a seguito di eventi accidentali.

nNessun utente deve poter ottenere o dedurre dal sistema informazioni che non è autorizzato a conoscere.

(99)

Politiche di sicurezza

n Occorre partire dal presupposto che, a dispetto delle misure attuate, un evento indesiderato possa comunque violare i requisiti di disponibilità, integrità e riservatezza,

attraverso meccanismi che non avevamo previsto.

n Proteggere i requisiti di sicurezza di un sistema significa, in termini realistici,

q Ridurre ad un valore accettabile la probabilità che vengano violati.

q Individuare tempestivamente quando ed in quale parte del sistema questo accade.

q Limitare i danni e ripristinare i requisiti violati nel minor tempo possibile.

(100)

Analisi del Sistema Informatico

q Risorse fisiche

n Il sistema visto come insieme di dispositivi che vanno protette da furti e danni materiali.

q Risorse logiche

n Il sistema come insieme di informazioni, flussi e processi.

Vanno classificate in base al loro valore per

l’organizzazione, al contesto in cui si opera, al grado di riservatezza

q Analisi delle dipendenze fra risorse

n Per ciascuna risorsa del sistema, fisica o logica, occorre individuare di quali altre risorse ha bisogno per funzionare correttamente.

(101)

Analisi e Classificazione utenti

n Un presupposto essenziale per la sicurezza di un sistema, è che gli utenti possano controllarlo ed accedere alle

informazioni esclusivamente attraverso i servizi da lui stesso messi a disposizione.

n È quindi fondamentale individuare con precisione tutti i

servizi offerti dal sistema informatico, al fine di verificare poi, in maniera sistematica, che ogni servizio risponda

pienamente a tutte e sole le specifiche di progetto (e non presenti, ad esempio, pericolosi side-effects).

(102)

Diritti di accesso: esempio di matrice utenti/servizi)

Servizi

S 4

Condizioni alle quali un utente appartenente alla

•Per ogni coppia

•(Classe di utente CU, Servizio S),

•si definiscono le condizioni che regolano se, come e quando un utente appartenente alla classe CU può accedere al servizo S.

(103)

Assegnazione di un profilo il cui accesso è controllato mediante password; al profilo ( e quindi all’utente) sono associate una serie di azioni, di permessi e di divieti.

Questi controlli vengono realizzati a diversi livelli:

- delle basi di dati, - del sistema operativo - di gruppi di utenti

Esempio: una password è richiesta per la connessione da casa al provider Internet o per entrare in un’area di servizi a cui l’utente è abilitato ad accedere gratuitamente(previa iscrizione con invio di

La password

(104)

La password deve essere la più lunga possibile

La password non deve essere in alcun modo collegata alla vita privata dell’utente (soprannomi, diminutivi, date di nascita ecc.)

La password non deve essere una parola comune riportata in un vocabolario

La password non deve venire scritta da nessuna parte

Password : criteri di scelta

(105)

Eventi indesiderati

n Un qualsiasi accesso (a servizio o informazione) che non sia esplicitamente permesso dalla rispettiva matrice dei diritti.

n L’insieme degli eventi indesiderati, tuttavia, è più esteso in quanto comprende eventi che non sono affatto degli accessi, dal guasto di un disco all’attacco di un virus.

n Occorre condurre una indagine sistematica al fine di

individuare il maggior numero possibile di eventi indesiderati.

n A tal fine è possibile in generale distinguere

q Attacchi intenzionali

q Eventi accidentali

(106)

Attacchi

n Classifichiamo gli attacchi intenzionali in funzione di

la risorsa, fisica o logica, oggetto dell’attacco

la tecnica utilizzata per condurre l’attacco.

n E’ naturale pensare che una risorsa può essere

attaccata con un piu’ tecniche contemporaneamente ed un sistema sara’ attaccato su piu’ risorse

contemporaneamente

n Le tecniche di attacco possono essere classificate in funzione del livello al quale operano (logico o fisico)

(107)

Tecniche di attacco

n Gli attacchi a livello fisico sono principalmente tesi a sottrarre o danneggiare risorse critiche.

q Furto. Prevedibile per nastri di backup, dischi o interi server. È un attacco alla disponibilità ed alla

riservatezza.

q Danneggiamento. Prevedibile per apparecchiature e cavi di rete, più difficilmente per calcolatori, dischi ed apparecchiature di supporto come trasformatori di

corrente ed impianti di condizionamento. È un attacco alla disponibilità ed alla integrità.

(108)

Tecniche di attacco

n Gli attacchi a livello logico sono tesi a sottrarre

informazione o degradare la operatività del sistema.

n Un attacco logico può essere classificato come di

q Intercettazione e deduzione (attacco alla riservatezza, incrocia informazioni tratte

dall’osservazione del sistema con informazioni ottenute per altre vie. Es: informazione negata).

q Intrusione (attacco alla integrità ed alla riservatezza.

Es: Accesso con password di altro utente, introduzione di backdoor ).

(109)

Individuazione e Integrazione delle contromisure

n Individuazione del sotto-insieme di costo minimo che al contempo rispetti alcuni vincoli essenziali:

q Completezza. Il sotto-insieme delle contromisure scelte deve comunque far fronte a tutti gli eventi indesiderati individuati per il sistema in esame.

q Omogeneità. Tali contromisure devono essere compatibili ed integrabili tra loro in modo da minimizzare il costo della loro attuazione congiunta.

q Ridondanza controllata. La ridondanza delle contromisure ha un costo e deve quindi essere rilevata e vagliata accuratamente. Può accadere, ad esempio, che più contromisure siano inutilmente

ridondanti, che ad esempio neutralizzino un medesimo evento valutato a basso rischio. D’altra parte, è anche possibile che un evento ad alto rischio, che potrebbe e dovrebbe essere

neutralizzato da più di una contromisura, di fatto non lo sia.

Riferimenti

Documenti correlati

La stragrande maggioranza delle imprese, non solo quelle appartenenti al settore agroalimentare, hanno negli ultimi anni attuato misure volte al perseguimento

from bagnanti Mostra il codice dell’ultimo iscritto select nome, cognome.

e.g.: search in a database, file request, purchase a book, booking a flight, … Transmit user data to the Web server. Process data on server-side, accessing a database

– L’accesso in lettura permette di conoscere l’elenco dei file contenuti – L’accesso in scrittura permette di creare, eliminare e rinominare

• La directory si può considerare come una tabella in cui sono memorizzate le informazioni relative al file e necessarie a:. – Individuare la posizione

I programmi in esecuzione su ciascun nodo sono in grado di condividere le proprie informazioni e di richiedere l’esecuzione di altri programmi da parte di altri nodi.

L’architettura più semplice e più diffusa L architettura più semplice e più diffusa Un client invia una richiesta ad un server per l’esecuzione di un compito (task). Un task

Cliente (Client): quando l’applicazione utilizza dei servizi messi a disposizione da altre applicazioni Servente (Server): quando l’applicazione fornisce servizi usati da