HTTPS (nom complet: Hyper Text Transfer Protocol over SecureSocket Layer) és un canal HTTP amb la seguretat com a objectiu. Sobre la base d'HTTP, el xifratge de transmissió i l'autenticació de la identitat garanteixen la seguretat del procés de transmissió [1]. HTTPS afegeix SSL sobre la base d'HTTP. La base de seguretat d'HTTPS és SSL, de manera que es requereix SSL per als detalls del xifratge. HTTPS té un port predeterminat diferent de HTTP i una capa de xifratge/autenticació (entre HTTP i TCP). Aquest sistema proporciona mètodes d'autenticació i de comunicació xifrats. S'utilitza àmpliament en comunicacions sensibles a la seguretat a la World Wide Web, com ara els pagaments de transaccions.
HTTPS es compon principalment de dues parts: HTTP + SSL / TLS, és a dir, s'afegeix una capa de mòdul per processar informació xifrada a HTTP. La transmissió d'informació entre el servidor i el client es xifrarà mitjançant TLS, de manera que les dades transmeses són totes dades xifrades.
Principi HTTP
① El navegador del client' primer ha d'establir una connexió amb el servidor a través de la xarxa. La connexió es completa mitjançant TCP. Generalment, el número de port per a la connexió TCP és 80. Un cop establerta la connexió, el client envia una sol·licitud al servidor. El format de la sol·licitud és: identificador uniforme de recursos (URL), número de versió del protocol, seguit de la informació MIME, inclosos els modificadors de sol·licitud, la informació del client i el contingut de la llicència.
② Després de rebre la sol·licitud, el servidor donarà la informació de resposta corresponent. El format és una línia d'estat, que inclou el número de versió del protocol de la informació, un codi d'èxit o d'error, i la informació MIME inclou informació del servidor, informació de l'entitat i contingut possible.
Principi HTTPS
① El client envia la llista d'algorismes que admet i un nombre aleatori utilitzat per generar la clau al servidor;
② El servidor selecciona un algorisme de xifratge de la llista d'algorismes i l'envia i un certificat que conté la clau pública del servidor al client; el certificat també conté la identificació del servidor amb finalitats d'autenticació, i el servidor també proporciona un usuari que s'utilitza com a nombre aleatori per generar la clau;
③ El client verifica el certificat del servidor'(per a la verificació del certificat, podeu consultar la signatura digital) i extreu la clau pública del servidor'; després, genereu una cadena de contrasenya aleatòria anomenada pre_master_secret, i utilitzeu la clau pública del servidor'encripteu (consulteu el xifratge/desxifrat asimètric) i envieu la informació xifrada al servidor;
④ El client i el servidor calculen de manera independent el xifratge i les claus MAC basant-se en pre_master_secret i el valor aleatori del client i el servidor (consulteu l'algoritme d'intercanvi de claus DH);
⑤ El client envia el valor MAC de tots els missatges d'encaix al servidor;
⑥ El servidor envia el valor MAC de tots els missatges d'encaix al client
avantatge
Utilitzeu el protocol HTTPS per autenticar usuaris i servidors per garantir que les dades s'enviïn al client i al servidor correctes;
El protocol HTTPS és un protocol de xarxa creat per SSL+HTTP que es pot utilitzar per a la transmissió xifrada i l'autenticació de la identitat. És més segur que HTTP. Pot evitar que les dades siguin robades i canviades durant la transmissió i garantir la integritat de les dades.
HTTPS és la solució més segura sota l'arquitectura actual. Tot i que no és absolutament segur, augmenta molt el cost dels atacs d'home-in-the-middle.
mancança
En el mateix entorn de xarxa, el protocol HTTPS ampliarà el temps de càrrega de la pàgina gairebé un 50% i augmentarà el consum d'energia entre un 10% i un 20%. A més, el protocol HTTPS també afectarà la memòria cau, augmentant la sobrecàrrega de dades i el consum d'energia.
La seguretat del protocol HTTPS té abast i té poc efecte sobre els atacs de pirates informàtics, els atacs de denegació de servei i el segrest de servidors.
El més important és que el sistema de cadena de crèdit del certificat SSL no és segur. Sobretot quan alguns països poden controlar el certificat arrel de la CA, els atacs man-in-the-middle són igualment factibles.
Augment de costos. Després de desplegar HTTPS, el treball del protocol HTTPS augmentarà el consum de recursos informàtics addicionals. Per exemple, l'algoritme de xifratge del protocol SSL i el nombre d'interaccions SSL ocuparan una certa quantitat de recursos informàtics i costos del servidor. En l'escenari d'aplicacions d'accés d'usuaris a gran escala, el servidor ha de realitzar operacions freqüents de xifratge i desxifrat, i gairebé tots els bytes s'han de xifrar i desxifrar, la qual cosa comporta costos de servidor. Amb el desenvolupament de la tecnologia de computació en núvol, el cost d'utilitzar servidors desplegats als centres de dades ha disminuït gradualment després de l'augment d'escala. En comparació amb la millora de la seguretat de l'accés dels usuaris, el cost d'entrada ha baixat a un nivell acceptable.




