Question Surcharge HTTPS comparée à HTTP


HTTPS est la version chiffrée de HTTP et il est de plus en plus courant de chiffrer tout le trafic Web, pas seulement le trafic sensible.

L’inconvénient de HTTPS, outre la nécessité d’acheter des certificats coûteux et de dépendre d’une autorité de certification tierce, est l’augmentation de la charge du processeur (pour le cryptage réel) et de la consommation de bande passante (pour la négociation de protocole supplémentaire).

Cette surcharge n'est pas seulement un problème côté serveur, mais également une latence plus élevée perçue par le client.

Quel est le surcoût réel en termes de charge du processeur, de bande passante et de latence?

Quel est l'état de l'art (en termes de logiciels, de matériel et de meilleures pratiques) pour réduire ces frais généraux?


6
2018-01-28 10:15


origine


Remarque: vous pouvez obtenir gratuitement des certificats de classe 1 auprès de Startcom. En ce qui concerne le cryptage, il existe un support matériel pour AES utilisé pour le cryptage de disque. Vous pourriez envisager un éventuel support matériel pour OpenSSL HTTPS. - Halfgaar


Réponses:


  • Prix : Il existe un grand nombre de CA et de revendeurs qui fournissent des certificats SSL bien pris en charge, qui sont même abordables pour le site Web des recettes de votre mère, et encore moins pour une utilisation professionnelle. À part quelques boissons gratuites, comme dans la bière, d’autres sont encore moins chères qu’une pinte. Donc pas de problème là-bas.

  • La latence est augmentée en passant à HTTPS : la prise de contact SSL initiale nécessite deux allers-retours supplémentaires avant que la connexion ne soit établie, par rapport à l'aller-retour requis pour établir une connexion TCP vers le port HTTP non chiffré. Donc, effectivement, il faudra trois fois plus de temps avant que les premières données soient reçues par vos utilisateurs.

From: High Performance Browser Networking by Ilya Grigorik 

  • Augmentation de la bande passante : La bande passante utilisée augmentera légèrement, car la taille de l'en-tête augmentera de plusieurs octets pour des raisons de protocole. La charge utile effective diminuera en raison de la surcharge de la trame. Certains chiffreurs utiliseront également le remplissage. Supposons un MTU commun d’une taille de paquet de 1500 octets; La surcharge du protocole HTTPS laissera toujours au moins 1 400 octets de taille effective des données utiles, donc une augmentation maximale de 6 à 7% de la bande passante.

  • Charge du processeur : La partie la plus coûteuse en calcul est l’échange de clé publique, après quoi un chiffrement symétrique relativement efficace est utilisé. La plupart des citations suggèrent que le matériel de base moderne ne nécessite pas de cartes de déchargement SSL pour gérer cette surcharge.

En janvier de cette année (2010), Gmail a opté pour HTTPS pour   tout par défaut. Auparavant, il avait été introduit comme une option,   mais maintenant, tous nos utilisateurs utilisent HTTPS pour sécuriser leur messagerie entre   les navigateurs et Google, tout le temps. Pour ce faire, nous avons dû   déployer pas de machines supplémentaires et pas de matériel spécial. Sur notre   machines frontales de production, SSL / TLS représente moins de 1% de la   Charge du processeur, moins de 10 Ko de mémoire par connexion et moins de 2% de   surcharge du réseau. Beaucoup de gens croient que SSL / TLS nécessite beaucoup de processeur   temps et nous espérons les chiffres précédents (public pour la première fois)   aidera à dissiper cela.

Si vous arrêtez de lire maintenant, il vous suffit de vous rappeler une chose: SSL / TLS   n'est plus coûteux en calcul.        - Adam Langley (Google)

Une bonne ressource est le chapitre 4 de Réseau de navigation haute performance par Ilya Grigorik

En conclusion, les frais généraux, à l'exception de la latence liée à l'établissement d'une nouvelle connexion, sont négligeables.

Le mieux est que cela dépende de vos besoins ... L'utilisation d'un CDN peut devenir plus chère lorsque vous avez également besoin de la prise en charge de SSL, par exemple.


10
2018-01-28 12:31



Libre Des certificats SSL qui peuvent vous donner une barre verte? Comment est-ce possible? - Pacerier
@pacerier, j’ai bien soutenu, c’est-à-dire accepté sans avertissement par la grande majorité des navigateurs actuels. Celles-ci sont bon marché. Assez bon marché pour ne pas utiliser de certificats auto-signés. Les certificats EV qui indiquent la barre verte sont un outil de marketing et ne diffèrent pas beaucoup des certificats normaux d’un point de vue technique. - HBruijn
@HBruijin, quels seraient quelques exemples? les certificats sont inutiles s'ils ne sont pas acceptés. Du point de vue de Chrome, "un utilisateur accède à une page https et voit une barre verte" par rapport à "un utilisateur accède à une page https et voit un Page d'avertissement sans moyen évident de procéder "est un énorme différence. - Pacerier
Et il y a bien sûr l'intermédiaire, pas de barre verte mais pas d'alerte de sécurité non plus ... - HBruijn
Oui, il existe des options de cert gratuites. Le plus connu est LetsEncrypt.org - Foo Bar