HTTP

HTTP (HyperText Transfer Protocol) è un insieme di regole che un server deve seguire quando si tratta della trasmissione di file (immagini, video, audio e altre forme di file) attraverso il World Wide Web (WWW). Quando un utente apre un browser, sta già utilizzando un HTTP. Fondamentalmente, si tratta di un protocollo applicativo che viene eseguito attraverso la parte superiore della suite di protocolli TCP/IP.[1]

Funzionalità

La meccanica e il concetto che sta dietro HTTP include è che i file sono collegati ad altri file attraverso una serie di riferimenti. Questa selezione darà luogo a ulteriori richieste di trasmissione. Qualsiasi dispositivo web server contiene in realtà un programma chiamato demone HTTP, progettato per anticipare le richieste HTTP e gestirle al loro arrivo. Il vostro browser web tipico è un client HTTP che invia costantemente richieste ai dispositivi server. L'utente inserisce le richieste di file passando attraverso un file web, che in questo caso è solitamente un URL, oppure clicca su un link; il browser crea una richiesta HTTP e poi la invia ad un IP che viene indicato attraverso l'URL.

L'HTTP segue il ciclo indicato ogni volta che invia una richiesta:[2]

  1. Il browser richiede una pagina HTML. Il server restituirebbe quindi un file HTML dall'host.1
  2. Il browser richiede un foglio di stile. Il server restituisce quindi un file CSS.
  3. Il browser richiede un'immagine JPG. Il server restituisce un file JPG.
  4. Il browser richiede un codice JavaScript (un linguaggio di programmazione). Il server restituirebbe quindi un file JS.
  5. Il browser richiede diverse forme di dati. Il server restituisce i dati sotto forma di file XML o JSON.

Differenza tra HTTP e HTTPS

La maggior parte degli individui non sono a conoscenza delle differenze tra il http:// e https:// poiché entrambi sono quasi visivamente simili. Conoscere le differenze tra di esse è fondamentale per poter mantenere un sito sicuro ed efficiente in grado di proteggere informazioni e dati. I browser sono stati progettati in modo tale che la barra degli URL evidenzierà la S in HTTPS con un colore diverso in modo che gli utenti siano in grado di notare. [1:1]

Qui ci sono alcune chiare differenze tra i due:

  1. HTTP - Non è in corso l'implementazione della crittografia dei dati.
    1. Ogni link URL utilizza l'HTTP come il tipo di base del protocollo di trasferimento di ipertesto. Con questo in mente, un HTTP è paragonato ad un sistema che non appartiene ad alcuno stato. Questo permette di abilitare qualsiasi connessione su richiesta.
    2. Questo protocollo è fondamentalmente un protocollo di livello applicativo. Ciò significa che si concentra maggiormente sulle informazioni che vengono presentate all'utente, ma non sul modo in cui i dati vengono trasmessi dall'host di origine al destinatario. Ciò può diventare un danno in quanto questo mezzo di consegna può essere facilmente intercettato e rintracciato da utenti terzi malintenzionati (solitamente noti come hacker).
  2. HTTPS - I dati sono criptati.
    1. Rispetto all'HTTP, le informazioni dell'utente, come i numeri di carta di credito e altre forme di informazioni personali importanti, sono crittografate. Questo impedisce a qualsiasi forma di utenti terzi malintenzionati di accedere a queste forme di dati sensibili.
    2. Con una rete più sicura, gli utenti avranno un livello di fiducia maggiore quando utilizzano il sito, poiché i loro dati sono criptati e gli utenti con intenzioni malintenzionate avranno difficoltà a penetrare i loro dati.[3]
  3. Le statistiche mostrano che l'84% degli acquirenti abbandona i siti web una volta che sanno che il sito web sta trasferendo dati attraverso un canale insicuro.
  4. Il 29% degli utenti è consapevole della differenza tra HTTP e HTTPS e cerca attivamente questa differenza nella barra degli indirizzi.
    1. Essendo una nuova forma di tecnologia, l'HTTPS ha ancora alcune caratteristiche che sono ancora considerate sperimentali. Di conseguenza, i vecchi tipi di browser avranno difficoltà ad adattarsi a questi siti web.
    2. Rispetto alla semplice configurazione di un sito con HTTP, la transizione verso HTTPS richiede che l'utente debba passare attraverso diversi processi legali per ottenere un certificato SSL. Ciò significa che i proprietari di pagine e siti devono spendere soldi. Ottenere un certificato SSL è un servizio a pagamento di un'Autorità di Certificazione.
    3. A causa del processo di codifica, il server indirizza la potenza e i tempi di elaborazione verso la codifica delle informazioni prima della trasmissione.

Sintesi della differenza tecnica tra HTTP e HTTPS:

  • HTTP è insicuro mentre HTTPS è un protocollo sicuro.
  • HTTP utilizza la porta TCP 80 mentre HTTPS utilizza la porta TCP 4433.
  • HTTP funziona all'interno del livello dell'applicazione mentre HTTPS funziona all'interno del Transport Layer Security (TLS).
  • Non esiste un certificato SSL richiesto per l'HTTP, ma HTTPS richiede che un certificato SSL sia firmato e implementato da un'Autorità di Certificazione (CA).
  • L'HTTP non richiede necessariamente la convalida del dominio, mentre l'HTTPS richiede obbligatoriamente la convalida del dominio e alcune certificazioni che richiedono un processo legale.
  • Non vi è alcuna crittografia dei dati nell'HTTP mentre i dati vengono crittografati proprio prima della loro trasmissione per l'HTTPS.
  • HTTPS è un'estensione di HTTP. In questo caso, collabora con un altro protocollo, Secure Sockets Layer (SSL), per trasmettere i dati in modo sicuro.
  • Sia l'HTTP che l'HTTPS non affrontano i dati che saranno trasmessi verso la destinazione di destinazione. Inversamente, SSL non ha alcuna funzione per quanto riguarda l'aspetto dei dati.

Gli utenti spesso credono erroneamente che HTTPS e SSL siano gli stessi protocolli. HTTPS è sicuro in quanto utilizza SSL per la trasmissione dei dati. Attualmente, SSL è in fase di graduale eliminazione da parte di TSL in quanto si tratta di un metodo ancora più sicuro di crittografia dei dati che sta per essere inviato. [4]


  1. https://www.w3schools.com/whatis/whatis_http.asp ↩︎ ↩︎

  2. https://www.globalsign.com/en/blog/the-difference-between-http-and-https/ ↩︎

  3. https://www.howtogeek.com/181767/htg-explains-what-is-https-and-why-should-i-care/ ↩︎

  4. https://www.instantssl.com/https-tutorials-ssl-certificates ↩︎