Hypertext Transfer Protocol Secure

Hypertext Transfer Protocol Secure (HTTPS) är ett protokoll för krypterad transport av data för HTTP-protokollet. HTTPS-anslutningar används ofta för betalningsöverföringar på Internet och för känsliga överföringar inom företag, för inloggning och hantering av privat information, samt mera allmänt för att skydda användarens integritet. Med HTTPS skall förbindelsen inte kunna avlyssnas av tredje part och användaren skall kunna lita på att webbservern är densamma som den utger sig för att vara. Det är möjligt att använda HTTPS också för att verifiera användarens identitet, förutsatt att användaren har lämpligt certifikat, men den möjligheten används sällan.

Protokollet utvecklades av Netscape för säkra transaktioner. Det har varit känt som "Hypertext Transfer Protocol over Secure Socket Layer", men nu kan HTTPS också vara krypterat med Transport Layer Security (TLS) istället för Secure Sockets Layer (SSL)-protokollet. HTTP-data sänds normalt över TCP-port 80. HTTPS sänds i stället över port 443. Vid användning av HTTPS börjar internetadressen med https, till exempel https://sv.wikipedia.org istället för http. 

En nackdel med HTTPS är att det ställer till problem för proxy-servrar och antivirusprogram som har installerats centralt, eftersom dessa inte ser de filer som förs över. HTTPS skyddar inte heller för alla typer av attacker. HTTPS användes under februari 2018 av 5,42% av den totala registrerade svenska domäner (Svensk Internetstatistik).

Certifikat och säkerhet 
För att användaren skall kunna lita på att en webbserver tillhör den som den utger sig tillhöra krävs att en betrodd tredje part tillhandahåller ett undertecknat digitalt certifikat. Certifikatet installeras på webbservern och kontrolleras av webbläsaren med hjälp av den tredje partens lokalt installerade certifikat.

Säkerheten är beroende av att kedjan av certifikat fungerar, att användaren vet vilken webbserver som bör användas och att användaren reagerar då certifikat saknas eller gäller fel organisation. Dessutom måste webbläsarens och webbserverns säkerhet vara i ordning, de använda algoritmerna och nycklarna vara tillräckligt säkra och alla av webbservern godkända tredje parter vara pålitliga.

Webbläsaren kan bara kontrollera att en webbplats är den den utger sig vara och hör till en viss organisation. Att detta är den webbplats man vill ha att göra med är användarens sak att kontrollera. Till exempel kan man vara i kontakt med example.mu, Example ltd på Mauritius, då man trodde att man var i kontakt med example.nu, tillhörande svenska Example AB. Under toppdomäner där flera alfabet tillåts är den typen av attacker än lättare: till exempel grekiska ν kan misstas för svenska u eller v.

Ifall webbläsaren anger att en förbindelse är osäker är det inte alltid lätt att reda ut varför. Det kan vara frågan om att webbservern är felkonfigurerad, att ett certifikat föråldrats eller blivit tillbakadraget, att datorns klocka går fel (och webbläsaren därför tror att certifikatet är gammalt eller märkligt), att den betrodda tredje partens certifikat inte finns installerat eller något annat – eller så är man på riktigt i kontakt med fel webbserver eller i kontakt med rätt server, men via en tredje part med möjlighet att manipulera förbindelsen.

De flesta webbläsare som stöder HTTPS visar när en besökt sida är krypterad. I Firefox visas ett låst hänglås till vänster om https i adressfältet. Används ett EV-certifikat (Extended Validation) är hänglåset och sidägarens namn grönt; annars är hänglåset grått och sidägarens namn visas inte. I Internet Explorer visas ett låst grått hänglås till höger i adressfältet. Används ett EV-certifikat färgas hela adressfältet grönt och sidägarens namn visas till höger om hänglåset. I Google Chrome visas ett låst grönt hänglås till vänster om https, som också är grönt. Används ett EV-certifikat visas sidägarens namn och hänglåset mot grön bakgrund till vänster i adressfältet. I Opera visas ett låst grönt hänglås till vänster i adressfältet, men https visas inte. Används ett EV-certifikat visas sidägarens namn i grönt mellan hänglåset och adressen.

Mindre organisationer har inte alltid ett certifikat av en betrodd tredje part. Detta är i princip inget problem om användaren själv kan verifiera certifikatet (t.ex. genom att hämta det två skilda gånger, jämföra certifikaten och hoppas att förbindelsen inte är kapad båda gångerna), men kan kräva mer sakkunskap än då den betrodda tredje partens certifikat finns färdigt installerade, till exempel tillsammans med webbläsaren.

Också då en förbindelse anges som säker av webbläsaren, certifikatet gäller rätt organisation och certifikatet utfärdats av en trovärdig organisation kan det finnas säkerhetsrisker. Den krypterade kommunikationen hindrar inte manipulation av datat på server eller klientmaskin; om servern eller webbläsaren blivit utsatta för dataintrång finns inga garantier för säkerhet. Det är också möjligt att server eller klient hanterar sessionsdata slarvigt, till exempel så att en nyckel också sänds över osäkra förbindelser.

Se även 
 HTTP
 HTTP Strict Transport Security (HSTS)
 Stunnel

Källor 
 RFC 2818: HTTP Over TLS
 RFC 6797: HTTP Strict Transport Security

Nätverksprotokoll