http, web

Cos’è l’ HTTP?

httpsHTTP è l’acronimo per Hypertext Transfer Protocol ovvero protocollo di trasferimento di un ipertesto.

L’HTTP è usato come principale sistema per la trasmissione d’informazioni sul web.
Le specifiche del protocollo sono gestite dal World Wide Web Consortium (W3C).

Un Server HTTP generalmente resta in ascolto sulla porta 80 usando il protocollo TCP (Transmission Control Protocol).

Breve storia dell’HTTP.

La prima versione dell’HTTP, la 0.9, risale alla fine degli anni ottanta e costituiva, insieme con il linguaggio HTML e gli URL, il nucleo base della “World Wide Web WWW global information initiative” portata avanti da Tim Berners-Lee al CERN di Ginevra per la condivisione delle informazioni tra la comunità dei fisici delle alte energie.

La prima versione effettivamente disponibile del protocollo, la HTTP/1.0, venne implementata dallo stesso Berners-Lee nel 1991 e proposta come RFC 1945 all’ente normatore IETF (Internet Engineering Task Force) nel 1996.

Con la diffusione di NCSA Mosaic, un browser grafico di facile uso, il WWW conobbe un successo crescente e divennero evidenti alcuni limiti della versione 1.0 del protocollo, in particolare:

  • l’impossibilità di ospitare più siti www sullo stesso server (virtual host)
  • il mancato riuso delle connessioni disponibili
  • l’insufficienza dei meccanismi di sicurezza

Il protocollo venne quindi esteso nella versione HTTP/1.1, presentato come RFC 2068 nel 1997 e successivamente aggiornato nel 1999 come descritto dal RFC 2616.

Come funziona l’HTTP.

L’HTTP funziona su un meccanismo richiesta/risposta (client/server): il client esegue una richiesta ed il server restituisce la risposta.

Nell’uso comune il client corrisponde al browser ed il server al sito web.

Vi sono quindi due tipi di messaggi HTTP: messaggi richiesta e messaggi risposta.

L’ HTTP differisce da altri protocolli di livello 7 come FTP, per il fatto che le connessioni vengono generalmente chiuse una volta che una particolare richiesta (o una serie di richieste correlate) è stata soddisfatta.

Questo comportamento rende il protocollo HTTP ideale per il World Wide Web, in cui le pagine molto spesso contengono dei collegamenti (link) a pagine ospitate da altri server.

Talvolta però pone problemi agli sviluppatori di contenuti web, perché la natura senza stato (stateless) costringe ad utilizzare dei metodi alternativi per conservare lo stato dell’utente.

Spesso questi metodi si basano sull’uso dei cookie.

Le versioni sicure.

Dal momento che tutto il traffico HTTP è anonimo e in chiaro, sono state sviluppate diverse alternative per garantire differenti livelli di sicurezza, in termini di:

  • cifratura del traffico
  • verifica di integrità del traffico
  • autenticazione del server
  • autenticazione dell’utente

La prima proposta venne direttamente da NCSA, con le versioni server 1.1 e client 2.2 che supportavano un meccanismo di autenticazione utente e cifratura dati basati su messaggi formato PEM e chiavi PGP.

In seguito, sono state standardizzate due versioni sicure del protocollo HTTP chiamate SHTTP e HTTPS.

SHTTP

La prima, modellata sulla posta cifrata S/MIME, è ormai caduta in disuso e prevede meccanismi crittografici a livello di payload: le richieste e gli header vengono scambiati in chiaro mentre il contenuto della pagina viene cifrato come una struttura MIME multipart.

HTTPS

Il meccanismo HTTPS, inventato da Netscape, usa invece il sottostante canale cifrato a livello di trasporto mediante SSL o TLS per impedire l’intercettazione di qualsiasi parte della transazione.
Entrambi i protocolli possono garantire l’identità del mittente, ma solo SHTTP è in grado di garantire anche l’integrità del contenuto dopo averlo, ad esempio, memorizzato su un disco.

Fonte: Wikipedia

http://it.wikipedia.org/wiki/Hyper_Text_Transfer_Protocol

Annunci

Rispondi

Inserisci i tuoi dati qui sotto o clicca su un'icona per effettuare l'accesso:

Logo WordPress.com

Stai commentando usando il tuo account WordPress.com. Chiudi sessione / Modifica )

Foto Twitter

Stai commentando usando il tuo account Twitter. Chiudi sessione / Modifica )

Foto di Facebook

Stai commentando usando il tuo account Facebook. Chiudi sessione / Modifica )

Google+ photo

Stai commentando usando il tuo account Google+. Chiudi sessione / Modifica )

Connessione a %s...