Elementi di Sicurezza e Privatezza Lezione 11 Web Security. Chiara Braghin. Sicurezza Web?

Documenti analoghi
IL LIVELLO APPLICAZIONI WEB e HTTP

Applicazioni web. Sommario. Parte 4 http. http Metodi, intestazioni e codici di stato get post Parametri e cookie. Applicazioni web.

Reti di Calcolatori. IL LIVELLO APPLICAZIONI WEB e HTTP

IL LIVELLO APPLICAZIONI WEB e HTTP

IL LIVELLO APPLICAZIONI WEB e HTTP

Programmazione in Rete

Parte II: Reti di calcolatori Lezione 7 (31)

Livello di applicazione: Web e HTTP

World Wide Web (WWW o Web)

Web (1) Internet. Elementi di Sicurezza e Privatezza Lezione 9 Web Security (1) Chiara Braghin. chiara.braghin@unimi.it! 20/11/12. browser.

Sicurezza delle applicazioni web: protocollo HTTP

Tito Flagella - Il protocollo HTTP

Applicazioni e protocolli a livello applicazione

Stack protocolli TCP/IP

Introduzione alle Architetture di Rete

Introduzione. Java HTTP. G. Prencipe

Introduzione a Internet e World Wide Web

WEB: Architettura Client Server

Parte II: Reti di calcolatori Lezione 6 (30)

Livello applicazione. Fondamenti di Informatica

Basi di Dati. Prof. Alfredo Cuzzocrea Università degli Studi di Trieste. Basi di Dati e Web. Credits to: Prof. M. Di Felice UniBO

Appunti di Sistemi A cura del prof. ing. Mario Catalano. Internet e il Web

Parte II.4 World Wide Web

Corso di Laurea Specialistica in Ingegneria Informatica Corso di Laurea Specialistica in Ingegneria delle Telecomunicazioni

Applicazioni di rete 1

Introduzione all inguaggio HTML e CSS3 INTRODUZIONE. Prof.ssa Cristina Gena

Collaborazioni on-line

Ipertesto (testo + link a risorse)

Corso di Applicazioni Telematiche

Luca Tesei. Laboratorio di Sviluppo Web: Le Basi. Modulo IFTS. Fermo 31/03, 03/04, 07/ Prof. Luca Tesei Università di Camerino 1

Web e HTTP. path name. host name Realizzato da Roberto Savino.

Alberti, Bruschi, Rosti DICo - Università degli Studi di Milano 1

OSOR. Applicazioni di Rete

World Wide Web. WWW e Tim Berners Lee

Online Essentials. 1. Concetti di navigazione in rete

Il protocollo HTTP. Caratteristiche del protocollo HTTP. Versioni del protocollo. Due tipologie di messaggi:

Progettazione Siti Web: Web

3.3.6 Gli operatori Le funzioni di accesso al tipo Le strutture di controllo Le funzioni

INFORMATICA DISTRIBUITA. lez 5 World Wide Web (cont)

Reti informatiche. 2. Internet e navigazione

Livello applicativo: protocollo HTTP

Architetture Client/Server e World Wide Web

Il protocollo HTTP. Corso di Applicazioni Telematiche. A.A Lezione n.2 Prof. Roberto Canonico

Informatica per Umanisti Antonio Lieto. Parte IV Le reti informatiche, Internet e il Web (Come colleghiamo i computer?)

Uso di Internet: Esempio. Prof. Franco Callegati

Sicurezza delle applicazioni web: protocollo HTTP

World Wide Web. Angelo Di Iorio. ALMA MATER STUDIORUM UNIVERSITA DI BOLOGNA

Internet 2B IPIA

Corso di Web Programming

NAVIGAZIONE WEB MODULO 3

Architetture Client/Server. Un architettura è centralizzata quando i dati e le applicazioni (programmi) risiedono in un unico nodo elaborativo

Elementi di Sicurezza e Privatezza Lezione 12 Web Security

Reti di Calcolatori I. Prof. Roberto Canonico Dipartimento di Ingegneria Elettrica e delle Tecnologie dell Informazione

Architetture Applicative Il Web

Internet Architettura del www

Basi di Dati Architetture Client/Server

Uso di Internet: introduzione. Prof. Franco Callegati

Protocolli di strato applicazione

Le Reti Informatiche

Prof. Pagani Corrado HTML

Architetture Client/Server. Un architettura è centralizzata quando i dati e le applicazioni (programmi) risiedono in un unico nodo elaborativo

Esercizio 1 : HTTP. Soluzione Esercizio 1 : HTTP

Metodologie Informatiche Applicate al Turismo

Scuola di Specializzazione in Fisica Sanitaria a.a. 2004/2005. Corso di Informatica e Statistica Medica. Internet

Reti di Calcolatori. Master "Bio Info" Reti e Basi di Dati Lezione 2

Il documento HTML. Funzionamento del Web. Messaggio HTTP

Telematica II 7. Introduzione ai protocolli applicativi

Livello applicazione: protocollo HTTP

Metodologie Informatiche Applicate al Turismo

INFORMATICA. Prof. MARCO CASTIGLIONE. Istituto Tecnico Statale Tito Acerbo - PESCARA

Applicazioni web centrati sui dati (Data-centric web applications)

Programmazione web. Lezione del 2 Marzo 2018

Siti web centrati sui dati (Data-centric web applications)

Informatica: arte e mestiere 3/ed

Viene pubblicata la versione 1.0 di HTML:

Capitolo 16 I servizi Internet

HTML. Linguaggio testuale formato da TAG, che consente il collegamento tra diversi file.

Protocolli strato applicazione in Internet

Livello applicazione: protocollo HTTP, cookie, web cache

Sicurezza delle applicazioni web: protocollo HTTP

Lezione 6. Siti, Utenti e Sessioni

Scuola di Specializzazione in Fisica Sanitaria a.a. 2005/2006. Corso di Informatica e Statistica Medica. Internet

Ipertesto. Reti e Web. Ipertesto. Ipertesto. Ipertestualità e multimedialità

2Dove vogliamo arrivare:

Laboratorio di Basi di Dati

Mezzi trasmissivi. Twisted Pair (TP) Due cavi di rame isolati ed intrecciati

Tecnologie Web Introduzione

Sicurezza delle applicazioni web: protocollo HTTP

Introduzione alle Reti e Linguaggio HTML

Transcript:

Elementi di Sicurezza e Privatezza Lezione 11 Web Security Chiara Braghin Sicurezza Web? Sicurezza Web = Sicurezza delle applicazioni Web Web = World Wide Web Una particolare applicazione di Internet, un mezzo di comunicazione globale, interattivo, multimediale e ipertestuale che ha cambiato radicalmente il modo di comunicare e lavorare 1 1

Web (1) Idea di base: archiviare pagine di ipertesto su computer collegati tra loro tramite Internet permettendo di linkarle fra loro, (indipendendentemente dalla loro collocazione fisica) permettendone l accesso da qualunque computer in Internet specificandone soltanto un nome simbolico, detto URL (Uniform Resource Locator) 2 Web (2) INTERNET Pagina (file) Link Internet e il World Wide Web 3 2

Web (3) Chi è coinvolto? Browser (client) Web server Base di dati (DBMS) Internet (come mezzo di trasporto) Su quali tecnologie ed applicazioni si basa: Il protocollo HTTP La comunicazione avviene tramite lo scambio di messaggi, secondo il paradigma richiesta-risposta Il concetto di ipertesto Il linguaggio HTML Linguaggi di scripting (PHP, JavaScript, ecc.) 4 Web (4) Il WWW usa il modello client-server per lo scambio di informazioni il client (browser), programma applicativo che gira sull elaboratore dell utente il server, programma applicativo che gira sull elaboratore del fornitore di informazioni (provider) la rete Funzionamento della comunicazione tra browser e Web server: ogni utente può richiedere informazioni attraverso il suo programma client la richiesta viaggia attraverso la rete fino a raggiungere l elaboratore server il server interpreta la richiesta e restituisce all elaboratore client la risposta, un file HTML contenente le informazioni desiderate 5 3

Web (4) risposta server richiesta INTERNET client 6 Web (5) - Storia Il WWW nasce nel maggio del 1990, quando Tim Berners Lee, un ricercatore del CERN di Ginevra presenta una relazione intitolata "Information Management: a Proposal Lo scopo iniziale era quello di mettere a disposizione dei fisici che lavoravano nei Centri di ricerca sparsi per tutto il mondo un linguaggio comune per la condivisione dei documenti e dei risultati delle loro ricerche. Nell'ottobre di quello stesso anno iniziano le prime sperimentazioni. Solo nell'anno 1993 il WWW riceve un impulso decisivo al suo sviluppo dal National Center for Supercomputing Applications (NCSA) dell'università dell'illinois, dove Marc Andressen ed Eric Bina sviluppano un interfaccia grafica multipiattaforma per l'accesso ai documenti presenti su World Wide Web (MOSAIC). Da quel momento la quantità di server Web nel mondo è cresciuta in maniera incredibile. 7 4

Web (5) - Storia Mosaic: : precursore di Netscape Navigator 8 Web (6) - Il successo Le caratteristiche che hanno fatto del World Wide Web una vera e propria rivoluzione nel mondo della telematica possono essere riassunte nei seguenti punti: la sua diffusione planetaria la facilità di utilizzazione delle interfacce la sua organizzazione ipertestuale la possibilità di trasmettere/ricevere informazioni multimediali le semplicità di gestione per i fornitori di informazione 9 5

Crescita del Web 10 Web: Utenti Millions of users % of population World Total 606 9,60% Africa 6 Asia/Pacific 187 Europe 191 Italy 19 33% Middle East 5 Canada & USA 183 USA 166 59% Latin America 33 Source: www.nua.ie/surveys - Sept 2002 11 6

Numero di account su Facebook 12 Web in a Nutshell 7

Il concetto di ipertesto (1) Un ipertesto è un insieme di documenti messi in relazione tra loro tramite parole chiave La lettura può svolgersi in maniera non lineare e non rigida: il documento successivo dipende dalla scelta del lettore di quale parola chiave usare come collegamento Un ipertesto informatico è una struttura informativa formata da un insieme di documenti, collegati tra loro tramite riferimenti ipertestuali, denominati hyperlink o link i documenti possono essere costituiti da testo, immagini, suoni, ecc. 14 Il concetto di ipertesto (2) Il linguaggio HTML permette di scrivere gli ipertesti per il web documenti memorizzati sui server web che vengono visualizzati dai client web, ovvero dai browser (Netscape Navigator, Microsoft Internet Explorer, Opera,...). 15 8

Organizzazione di un testo lettura sequenziale pag1 pag2 pag3 pag4 pag5 pag7 pag6 16 Esempio di ipertesto pagina html link lettura non sequenziale seguendo legami associativi 17 9

Tab Bottone Immagine attiva Testo attivo 18 Uniform Resource Locator (URL) Ogni pagina web viene identificata specificandone il contenitore, cioè: - il nome del computer che la contiene - il nome del file all interno di tale computer - il protocollo per lo scambio della pagina Esempio: http://www.repubblica.it/index.html protocollo nome del dominio nome del file 19 10

Web (7) - Comunicazione All interno del browser si seleziona l URL della pagina desiderata Il browser richiede al server la pagina Il server risponde con un messaggio contenente: il tipo di pagina (HTML, gif, pdf, zip,...) i contenuti della pagina Il browser usa informazioni sul tipo per visualizzare correttamente la pagina 20 Web (8) - Comunicazione request response Computer su cui è installato un browser Web Server Web Quando l utente fa click su un URL nel browser, il browser invia una richiesta per quella pagina al server Web dove risiede Il server individua la pagina specificata e la invia al browser per visualizzarla 21 11

Il world wide web: sintesi File HTML browser Internet URL Server web server Client il protocollo: HTTP 22 Tipologia di siti Web Siti statici presentano contenuti recuperati da una pagina web; solitamente vengono aggiornati con una bassa frequenza e sono mantenuti da una o più persone che agiscono direttamente sul codice della pagina (tramite appositi editor web). Siti dinamici contenuti redatti dinamicamente (per esempio grazie al collegamento con un database) e forniscono contenuti che possono variare in base a più fattori. 23 12

Struttura di un sito web statico 24 Struttura di un sito web dinamico 25 13

Struttura di una applicazione Ajax Ajax: Asynchronous JavaScript e XML per fornire all'applicazione web funzionalità di aggiornamento asincrono La trasmissione di dati tra il client e il server avviene secondo richieste "esclusive per zone della pagina" non si ha la necessità di aggiornare tutta la pagina per visualizzare i contenuti aggiornati di un area 26 Web (7) - Problemi di sicurezza Sicurezza del browser Cookie Sicurezza del Web server Sicurezza dei protocolli di comunicazione tra browser e server Sicurezza dell interazione con il DBMS Sicurezza del Web dinamico Scripting languages 27 14

HTTP HyperText Transfer Protocol Il protocollo HTTP (1) Il protocollo HTTP (HyperText Transfer Protocol) definisce le regole che governano il trasferimento di pagine web dal computer che le archivia (server) al computer che le richiede (client) Browser Il programma che sta sul computer client, in grado di richiedere pagine HTML (via HTTP) formattarle come prescritto (via HTML) 29 15

Il protocollo HTTP (2) Protocollo a livello applicativo Orientato agli oggetti, generico, stateless Pagina web: Consiste di oggetti Gli oggetti possono essere file HTML, immagini JPEG, applet Java, file di audio, Consiste di un file HTML di base, che include degli oggetti indirizzabili tramite un URL 30 Il protocollo HTTP (3) Modello client-server client: browser che richiede, riceve e visualizza oggetti Web server: il Web server spedisce degli oggetti in risposta ad una richiesta PC running Explorer Mac running Safari HTTP request HTTP response HTTP request HTTP response Server running Apache Web server 31 16

Il protocollo HTTP (4) Usa TCP: Il client inizia una connessione TCP (crea un socket) con il server alla porta 80 Il server accetta la connessione TCP connection del client Vengono scambiati dei messaggi HTTP (messaggi del protocollo a livello application) tra il browser (HTTP client) e il Web server (HTTP server) La connessione TCP viene chiusa. HTTP è stateless Il server non mantiene alcuna informazione relativa alle richieste passate 32 Connessioni HTTP Non persistenti Viene spedito al più un oggetto lungo la connessione TCP Persistenti Possono venire spediti più oggetti lungo una stessa connessione TCP tra il client e il server 33 17

HTTP/1.0 Consente solo connessioni non persistenti: Ogni richiesta o risposta richiede una nuova connessione Per scaricare una pagina con immagini richiede più connessioni Può sovraccaricare a causa dell eccessivo overhead 34 HTTP/1.1 Fornisce una connessione persistente di default: La connessione rimane aperta finché non si sono scaricati tutti gli oggetti (oppure si verifica timeout) Il client può richiedere tutte le immagini in una pagina contemporaneamente Riduce il numero di connessioni quindi l overhead 35 18

HTTP non persistente (1) L utente inserisce l URL: www.someschool.edu/somedepartment/index.html (contiene testo, riferimenti a 10 immagini jpeg) 1a. il client inizia una connessione TCP al server HTTP www.someschool.edu alla porta 80 2. Il client spedisce una richiesta HTTP lungo il socket. Il messaggio indica che il client vuole l oggetto: time somedepartment/index.html 1b. Il server HTTP all host www.someschool.edu attende alla porta 80, accetta la connessione, notifica il client 3. Il server HTTP riceve la richiesta e spedisce lungo il socket una risposta HTTP contenente l oggetto richiesto 36 HTTP non persistente (2) time 5. Il client HTTP client riceve la risposta contentente il file HTML e lo visualizza. Facendo il parsing del file HTML trova 10 immagini jpeg 6. I passi 1-5 vengono ripetuti per ciascuna delle 10 immagini. 4. Il server HTTP chiude la connessione TCP 37 19

HTTP persistente Problemi con HTTP non persistente: I browser spesso aprono connessioni TCP parallele per recuperare tutti gli oggetti Overhead del SO per ciascuna connessione TCP HTTP persistente: Il server lascia la connessione aperta dopo aver spedito la risposta Messaggi HTTP successivi tra gli stessi client/server vengono spediti lungo il medesimo socket Il client spedisce le richieste appena incontra un nuovo oggetto 38 HTTP Request Metodo URL Versione protocollo Header Body (opzionale) GET /index.html HTTP/1.1 Host: www.example.com User-Agent: Mozilla/5.0 Accept: text/html, */* Accept-Language: en-us Accept-Charset: ISO-8859-1,utf-8 Connection: keep-alive (extra carriage return, line feed) Carriage return, line feed indica la fine del messaggio 39 20

HTTP request: formato generale 40 Campi dell header di richiesta Il client può specificare ulteriori informazioni nella richiesta. User-Agent: indica la versione del browser Referer: comunica al server da dove proviene l utente (utile per eseguire il log e per tenere traccia dell utente) From: contiene l indirizzo e-mail dell utente (generalmente non usato per motivi di privacy) Authorization: può inviare il nome utente e la password (usato con documenti che richiedono l autorizzazione). If-Modified-Since: invia il documento solo se è più recente della data specificata (usato per memorizzare nella cache) 41 21

HTTP Response Status line: Versione Status Messaggio di status Header Body HTTP/1.1 200 OK Date: Thu, 24 Jul 2008 17:36:27 GMT Server: Apache-Coyote/1.1 Content-Type: text/html;charset=utf-8 Content-Length: 1846 blank line <html>... </html> 42 HTTP response status code 200 OK La richiesta ha avuto successo 301 Moved Permanently Il documento è stato spostato permanentemente 400 Bad Request Errore di sintassi nella richiesta del client 403 Forbidden Request Al client non è consentito l accesso 404 Not Found Il file non è stato trovato 505 HTTP Version Not Supported 43 22

Altri campi dell header di risposta Oltre al codice di stato, la risposta del server può includere: Date: tempo di risposta (ora GMT) Server: informazioni d identificazione sul server Last-modified: ora in cui è stato modificato per l ultima volta (ora GMT) Content-length: dimensione del documento in byte Content-type: formato file (html, gif, pdf) Expires: evita al browser di memorizzare la pagina nella cache oltre la data di scadenza 44 Metodi HTTP/1.0 GET POST HEAD Come GET, ma nella risposta restituisce solo l HEADER e non il BODY HTTP/1.1 GET, POST, HEAD PUT DELETE Cancella il file specificato nell URL 45 23

GET vs POST Metodo POST: L eventuale input di un form viene trasmesso al server all interno del corpo della richiesta. Metodo GET: L input viene inserito nell URL: www.somesite.com/login.jsp?name= john &pwd= john5 46 Formato richiesta GET La maggior parte delle URL ha la seguente forma: protocollo://nameserver URI http://www.repubblica/index.html Quindi, la richiesta del browser in genere ha la forma: GET /index.html HTTP/1.1 Host: hostname 47 24

Come provare HTTP (lato client) 1. Fare telnet ad un Web server: telnet www.dti.unimi.it 80 Apre una connessione TCP alla porta 80 di www.dti.unimi.it Quanto scritto dopo viene spedito a www.dti.unimi.it 2. Digitare una richiesta HTTP di tipo GET: GET /index.html HTTP/1.1 Host: www.dti.unimi.it Scrivendo questo seguito da invio 2 volte, si spedisce una richiesta minimale al server 3. Guardare la risposta spedita dal server HTTP. 48 Messaggi HTTP L invio delle risposte HTTP è stateless: due richieste successive (anche con gli stessi contenuti) ottengono la stessa risposta Però, molte applicazioni di commercio elettronico richiedono memoria persistente delle interazioni dei clienti amazon.com ricorda il nome dell utente, la carta di credito, gli acquisti già effettuati, gli interessi Shopping cart Queste tipologie di applicazione richiedono sessioni stateful, in cui la risposta a una richiesta dipende anche dalle richieste precedenti e non solo da quella corrente. 49 25

User-server state: cookies La maggior parte dei siti Web usa cookies 4 componenti: 1) cookie header line del messaggio HTTP response 2) cookie header line del messaggio HTTP request 3) file di cookie mantenuto nel client e gestito dal browser 4) database di back-end nel Web server Esempio: Alice accede ad Internet con il PC visita un sito di e- commerce per la prima volta quando la sua richiesta HTTP arriva al sito, il server crea: unique ID memorizza l ID nel database 50 Cookie Un cookie è una raccolta di informazioni sull utente/client che fa richieste HTTP Serve per memorizzare a lato client lo stato di una sessione Il server spedisce un cookie al client usando l header Set-cookie in una risposta HTTP Set-cookie: CUSTOMER=John_Ford; PATH=/; EXPIRES=Thursday, 11-Jan-09 12:00:00 Quando l utente ritorna all URL, il browser manda al server i dati del cookie all interno della sua richiesta Cookie : CUSTOMER=John_Ford 51 26

I linguaggi di Markup In un documento il markup si trova il codice che contiene le informazioni per la sua formattazione Il testo è costituito da due parti: il contenuto vero e proprio le istruzioni o meta-informazioni (spesso chiamate tag) che specificano come il contenuto deve essere rappresentato Gli ipertesti del web sono scritti usando il linguaggio HypeText Markup Language (HTML) HTML non è un linguaggio di programmazione I documenti HTML sono dei file in formato testo con l estensione.html o.htm I browser leggono i documenti HTML e li visualizzano interpretando le specifiche di formattazione in modo sequenziale 52 What is HTML? HTML (HyperText Markup Language) è un linguaggio per la costruzione di ipertesti. È un linguaggio di markup: descrive, tramite TAG predefiniti, in modo preciso al browser sia il tipo del contenuto del documento che come esso deve apparire all utente. Storia di HTML: 1992: prima versione del linguaggio HTML ~ 1994: HTML 3.0 diventa uno standard Dicembre 1997: Recommendation HTML 4.01 del W3C Il browser interpreta i tag e formatta il contenuto del file html nel modo voluto dal suo autore (dimensione, fine riga, fine paragrafo, tabelle, colori, 53 ecc.) 27

HTML: embedding JavaScript File JavaScript esterno <body>... <script type="text/javascript" src= mycode.js" /> <script type="text/javascript"> //<![CDATA[ alert("page is loading"); //]]> </script> Inline code <p onclick="alert('i told you not to click on me!');"> Please do not click on this text.</p>... </body> Event handler 54 La guerra dei browser HTML appartiene alla famiglia dei linguaggi SGML, ma è molto più semplice appena introdotto era troppo povero, non permetteva frame né immagini, perché orientato alla trasmissione dei contenuti, poco al layout Per accaparrarsi più utenti, i browser hanno cominciato ad inserire nel linguaggio nuovi tag proprietari blink (Netscape): testo lampeggiante marquee (Internet Explorer): testo scorrevole La guerra dei browser ha portato un arricchimento delle possibilità offerte ma anche grossi problemi di incompatibilità HTML 4.0 viene considerato lo standard a cui le nuove versioni e I browser devono fare riferimento, anche non risolve del tutto il problema di incompatibilità In genere, è consigliabile testare la pagina HTML generata su diversi browser, oppure limitarsi ad utilizzare i TAG più standard. 55 28

Problemi e limiti di HTML Crescita disordinata e incompatibilità HTML 4.0.1 Contenuto e aspetto non vengono considerati separatamente Cascading Style Sheet (CSS) fogli di stile Il numero notevole di pagine web presenti oggi rende difficile qualunque modifica al linguaggio HTML che non sia retrocompatibile Come fare? 56 La scommessa del W3C: XML XML, extensible Markup Language risolve molti problemi: separa contenuto da presentazione permette un espandibilità senza fine del linguaggio (i tag vengono definiti dall utente a seconda della necessità) adatto a contenuti internazionali adatto a dispositivi di visualizzazione diversi (browser, wap, palmari, ecc.) utilizzato in molti settori: web services, scambio dati tra applicazioni, accesso a basi di dati, ecc. 57 29

HTTP e sicurezza HTTPS (1) HTTP Secure Funziona esattamente come HTTP, tranne che per il fatto che i messaggi di richiesta e risposta sono trasmessi usando SSL (Secure Sockets Layer) o TLS (Transport Layer Security) Creato nel 1994 da Netscape Communications per il browser Netscape Navigator Originariamente usato con SSL encryption. In seguito all evolvere di SSL in TLS, usato con TLS (RFC 2818, maggio 2000) Usato in automatico per tutte le URL che iniziano con "https:" invece che "http:" 59 30

HTTPS (2) Come funzona: La richiesta e la risposta sono trasmessi cifrati tra il browser e il server Il browser identifica il server con il quale sta comunicando mediante un certificato NB1: HTTPS non permette al server di indentificare (=> autenticare) il browser NB2: HTTPS non garantisce che il browser e il server si possano fidare l uno dell altro: l unica garanzia è che nessun altro può ascoltare la comunicazione HTTPS richiede un operazione addizionale da parte del server: Il server deve creare un certificato che lo identifichi con il browser 60 HTTPS (3) HTTPS S-HTTP S-HTTP = Secure HTTP Descritto nell RFC 2660 Non supportato da tutti i browser Supporta diversi algoritmi crittografici per la cifratura 61 31

HTTPS (4) - il luchetto Obiettivo: Indicare all utente che la comunicazione è cifrata I contenuti delle pagine non sono stati letti o modificati da un attaccante lungo la rete Garantisce che: Tutti gli oggetti della pagina sono stati recuperati usando HTTP (con alcune eccezioni) Per ciascun elemento: Prodotto un certificato valido 62 HTTPS (5) - il luchetto IE7: 63 32

HTTPS (6) - il luchetto Firefox 3: (no SSL) (SSL) 64 33