HTTP en HTTPS kom je dagelijks tegen bij het gebruik van internet, of je nu in de cybersecurity werkt of niet. Je hebt waarschijnlijk wel eens een URL gezien die er zo uitziet:
https://www.google.com or http://www.fakewebsite.com.
Dit zijn essentiële onderdelen van hoe het zoeken naar een URL op internet werkt, maar niet iedereen weet hoe HTTP en HTTPS werken. Dus wat zijn HTTP en HTTPS, en wat is het verschil tussen de twee?
Wat is HTTP?
HTTP, oftewel Hypertext Transfer Protocol, zorgt voor de overdracht van gegevens via een netwerk. Gegevens worden in een bepaald formaat en syntaxis gezet om ervoor te zorgen dat ze correct kunnen worden gelezen en overgedragen. HTTP is ingesteld om zowel verzoeken als antwoorden te verzenden en te ontvangen. HTTP-verzoeken vinden plaats wanneer er op een hyperlink wordt geklikt of een website-URL in de browser wordt ingevoerd. Het HTTP-verzoek wordt verzonden met behulp van een van de verschillende HTTP-methoden om informatie op te halen of te verzenden naar een webpagina. De webserver levert op zijn beurt een HTTP POST-antwoord, een HTTP-antwoord, dat de gebruiker toegang geeft tot de gewenste webpagina.
De meeste webpagina's gebruiken geen HTTP, maar HTTPS, omdat HTTP geen veilige manier is om gegevens via een netwerk te verzenden.
Wat is HTTPS?
HTTPS, ofwel Hypertext Transfer Protocol Secure, is de veiligere manier om gegevens over te dragen tussen een webbrowser en een webserver. Daarom gebruiken de meeste websites HTTPS. HTTPS maakt gebruik van een TLS/SSL- verbinding om gegevens veilig over te dragen tussen uw webbrowser en de server van de webpagina.
Verzoeken en antwoorden die via HTTPS worden verzonden, zijn versleuteld, zodat eventuele man-in-the-middle-aanvallen worden afgeweerd omdat de gegevens niet kunnen worden gelezen. HTTPS maakt gebruik van asymmetrische en symmetrische versleuteling . Bij asymmetrische versleuteling genereert de server een publieke en een privésleutelpaar. De publieke sleutel wordt opgeslagen in een SSL-certificaat . De privésleutel blijft, zoals de naam al aangeeft, alleen toegankelijk voor de webserver.
Wanneer er een HTTPS-verbinding met de webserver tot stand wordt gebracht, voltooien de client en de server een TLS-handshake. Deze handshake geeft een symmetrische sessiesleutel aan de server, die de sessiesleutel vervolgens decodeert met de bijbehorende privésleutel. Wanneer een versleuteld bericht wordt ontvangen, wordt het bericht versleuteld met de sessiesleutel en kan de client de sessiesleutel decoderen met behulp van de privésleutel. Dit maakt het mogelijk om het bericht tijdens de overdracht te versleutelen en bevestigt dat het versleutelde bericht afkomstig is van de server, aangezien het sleutelpaar wiskundig gekoppeld is.
HTTP en HTTPS vergelijken
Nu we weten wat HTTP en HTTPS zijn, kunnen we kijken naar de verschillen en overeenkomsten tussen de twee.
HTTP is onveilig, terwijl HTTPS veilig is
Zoals we in het gedeelte over HTTPS hebben besproken, is HTTPS extreem veilig vanwege het gebruik van asymmetrische encryptie voor gegevens die via het netwerk worden verzonden. Bovendien vereist HTTPS dat zowel de server zelf als de aanvrager over een geldig TLS/SSL-certificaat beschikken om elke gebruiker te identificeren en de door de gebruiker verzonden berichten te verifiëren. HTTP daarentegen verzendt berichten ongecodeerd naar de aanvrager. Dit betekent dat aanvallen zoals man-in-the-middle-aanvallen succesvol zullen zijn, waardoor de man-in-the-middle de informatie die naar de server wordt verzonden, kan stelen, waaronder creditcardgegevens of andere persoonlijk identificeerbare informatie (PII).
Gegevens verzonden via poorten
Bij HTTP worden gegevens verzonden via poort 80, waardoor ongecodeerde gegevens naar aanvragers kunnen worden verzonden. HTTPS gebruikt daarentegen poort 443, waardoor gecodeerde communicatie mogelijk is.
OSI-lagen en URL's
Een laatste verschil tussen HTTP en HTTPS is de OSI-laag waarop ze werken en hoe URL's zijn gestructureerd. Het Open Systems Interconnection (OSI)-model is een model dat de zeven verschillende lagen laat zien waarlangs computers communiceren.
De zeven lagen zijn:
- De applicatielaag
- De presentatielaag
- De sessielaag
- De transportlaag
- De netwerklaag
- De datalinklaag
- De fysieke laag
HTTP werkt op de applicatielaag en HTTPS werkt op de transportlaag.
HTTP-URL's beginnen met http:// en hebben een open hangslotje in de zoekbalk naast de URL. Omdat HTTPS beveiligd is, hebben HTTPS-URL's een gesloten hangslotje naast de URL en beginnen ze met https://.
Conclusie
Het gebruik van encryptie en digitale certificaten is belangrijk voor zowel verbindingen via internet als binnen het interne netwerk van een organisatie. Beveiligingssystemen zoals Public Key Infrastructures (PKI's) voorzien gebruikers en apparaten binnen een organisatie van certificaten waarmee ze kunnen worden geïdentificeerd en berichten kunnen worden versleuteld . Bezoek onze website www.encryptionconsulting.com voor meer informatie over hoe Encryption Consulting u kan helpen bij het opzetten van een PKI binnen uw organisatie.
