Porque HTTPS no está muy bien adaptado para asegurar descargas de archivos públicos grandes. Para este caso de uso, es lento y no es tan útil. Hay razones para no usar HTTPS más allá de la incompetencia o el desconocimiento.
HTTPS no resuelve completamente el problema . Esto Si obtiene su aplicación directamente del sitio web del proveedor, HTTPS garantiza la autenticidad de la aplicación. Pero si obtiene su aplicación de un tercero (por ejemplo, réplicas de software libre), HTTPS solo protege la conexión con el tercero. Un esquema de firma de paquete funciona mejor: puede proteger a toda la cadena del proveedor. La distribución de aplicaciones requiere protección de extremo a extremo y HTTPS no proporciona eso .
HTTPS usa más ancho de banda . La sobrecarga por descarga es mínima si no tiene en cuenta el almacenamiento en caché. Esta es la vaca esférica de "HTTPS no cuesta más": si utiliza SSL, no puede almacenar datos en caché excepto en los puntos finales de SSL. Las descargas de aplicaciones son cacheables en extremo: son archivos grandes que muchas personas descargan.
HTTPS es una exageración . La confidencialidad de la descarga de una aplicación rara vez es un problema, todo lo que necesitamos es autenticidad. Lamentablemente, HTTPS no proporciona autenticidad sin proporcionar también confidencialidad. La autenticidad es compatible con el almacenamiento en caché, pero la confidencialidad no lo es.
HTTPS requiere más recursos en el servidor. correo de Google lo redujo a una sobrecarga del 1% y una sobrecarga del 2% de ancho de banda, pero Esto es para un caso de uso muy diferente. Los servidores frontend de Gmail hacen algo más que servir archivos sin pensar; un servidor de archivos no necesita una CPU potente en primer lugar (está muy fuertemente vinculado a IO), por lo que es probable que la sobrecarga sea significativamente mayor. Lo mismo ocurre con la sobrecarga de memoria: en primer lugar, un servidor de archivos necesita muy poca memoria por sesión, casi toda su memoria es un caché de disco. Para reducir el uso de los recursos se necesita una gran cantidad de trabajo .
HTTPS no ayudaría a muchas personas . La persona preocupada por la seguridad verificará el hash proporcionado por el proveedor ( que debe estar sobre HTTPS). Los que no están preocupados por la seguridad harán clic alegremente en el mensaje "esta conexión es insegura" (hay tantos servidores mal configurados que muchos usuarios están capacitados para ignorar los errores de HTTPS). Y eso sin mencionar a las CA dudosas que otorgan certificados que no deberían.
Si desea asegurarse de que está obteniendo la aplicación original, verifique su firma o su hash con un valor de referencia que obtenga con una firma (por ejemplo, a través de HTTPS).
Los buenos vendedores hacen esto automáticamente. Por ejemplo, Ubuntu proporciona firmas GPG de sus medios de instalación . También proporciona los hash a través de HTTPS (lamentablemente no está vinculado desde ningún lugar cerca de la página de descargas por lo que puedo ver). Después de eso, la herramienta de instalación de software comprueba automáticamente que los paquetes vienen con una firma válida. Consulte ¿Cómo usar https con apt-get?
Nota: si obtiene la aplicación directamente del proveedor (en lugar de a través de algún repositorio de paquetes o mercado de aplicaciones), HTTPS brinda protección. Entonces, si usted es un proveedor que proporciona su aplicación directamente para descargar en su sitio web, ¡protéjalo con HTTPS!