[Red de ordenadores] --- protocolo HTTP y HTTPS detalla

[Red de ordenadores] protocolo HTTP y HTTPS se detalla

Introducción : Cuando abrimos una página web, un maravilloso viaje comienza como una ventana importante para el mundo saber, desde la página web abierta o introduzca una URL, que han tenido lugar en el medio en el final lo que? Con estas dudas, trabajamos juntos para explorar los misterios de este!

una .URL

Definiciones : En www cada uno tiene una fuente de información unificada y la única dirección de Internet, la dirección se llama el URL (Uniform Resource Locator, localizador uniforme de recursos), es www localizador uniforme de recursos, se refiere a la dirección de red.
Sintaxis : URL consta de tres partes: el tipo de recursos, recursos de almacenamiento del nombre de dominio de host, el nombre del archivo de recursos.
También se puede considerar consta de cuatro partes: el protocolo, host, el puerto de trayectoria

Explorador, introduzca la dirección URL
1Introduce la URL que desea acceder en el navegador.
2El aspecto del navegador la dirección IP del nombre de dominio, primero tiene que confirmar que el nombre de dominio correspondiente a la dirección IP del servidor, el servidor DNS para resolver el nombre en la dirección IP correspondiente del servidor.
Búsqueda de DNS proceso:

  • · Caché del navegador: El navegador almacena en caché los registros DNS para un período de tiempo, por lo general entre 2 minutos a 30 minutos.
  • • Sistema de caché: Si el caché del navegador necesita ningún registro se encuentra, el navegador va a hacer una llamada al sistema (es decir, la función gethostbyname), por lo que se puede conseguir fácilmente la memoria caché del sistema de grabación.
  • · Caché Router: A continuación, las anteriores solicitudes de consulta enviado al router, es en general, que tendrá su propia caché DNS.
  • · ISP DNS caché: A continuación, debemos comprobar el almacenamiento en caché del servidor DNS del ISP, donde el correspondiente registro de caché, en general, se puede encontrar.
  • · Búsqueda recursiva: final, servidor DNS del proveedor del servidor de nombres de dominio raíz de búsqueda recursiva comenzó, desde el servidor de dominio de nivel superior .com al servidor de nombres de dominio del sitio, la caché del servidor DNS en general, tienen el nombre de dominio del servidor de nombres de dominio .com.

Aquí Insertar imagen Descripción
3De acuerdo con el formato del protocolo HTTP, petición HTTP organización (HTTP formato de protocolo)
4. Construir cliente TCP (características de formato de protocolo orientado a la conexión TCP ---- transmisión fiable)
5. Las capas se envían al servidor a través del envase, de enrutamiento
Aquí Insertar imagen Descripción
6El servidor analiza el protocolo HTTP de acuerdo con una solicitud de formato, de procesamiento de servicio, la organización de datos correspondiente envía una respuesta HTML al cliente, el servidor después de recibir la petición por el servidor web (http servidor debe ser exactos) para procesar la petición, tal como Apache, Ngnix, IIS y así sucesivamente. servidor web resuelve una solicitud del usuario, para saber qué recursos necesita archivo de programación, y luego procesar la solicitud del usuario y los parámetros correspondientes de los archivos de recursos y la información de la base de datos de llamadas, y luego devolver el resultado al cliente del navegador a través del servidor web.

Aquí Insertar imagen Descripción
7Cerca de tres vías, agitando cuatro veces para finalizar la conexión.
8El navegador analiza HTML, precisamente, las necesidades del navegador para analizar la carga más que HTML, incluyendo también CSS, JS. Otros recursos de medios, y también para cargar imágenes y vídeos. Navegador por medio de análisis de HTML, se genera árbol DOM, CSS análisis, la generación de reglas CSS árbol, y luego generar el árbol DOM por árbol y render reglas CSS árbol. Renderizado diferente árbol DOM y el árbol, y no hace que la cabeza del árbol, no es otro nodo de pantalla no tiene que ser visualizado. Cabe señalar que el navegador proceso de resolución no se lleva a cabo en serie, por ejemplo, al analizar CSS, puede continuar para cargar analizar HTML, pero al analizar la ejecución del script JS, el seguimiento se detendrá análisis de HTML, que aparecerá problemas de bloqueo .
9La prestación distribución del examinador, de acuerdo con el diseño del árbol de render, la computación de estilos CSS, es decir, el tamaño y la posición de cada nodo en la información de la página geometría. HTML es el valor por defecto del flujo de diseño, CSS y JS se romperá este diseño, cambiar el aspecto del estilo y el tamaño y la ubicación del DOM. A continuación, hay que destacar dos conceptos importantes: pintar y reflujo.
10La interfaz del navegador final al usuario.

Dos acuerdo .http

1.http protocolo describe
el protocolo ①HTTP (HyperText Transfer Protocol, protocolo de transferencia de hipertexto) es el protocolo de red más utilizado de Internet, todos los documentos WWW deben cumplir con la norma de protocolo.
protocolo ②HTTP se basa en el protocolo de comunicación TCP / IP para la transferencia de datos (como archivos HTML e imágenes, y otra información en la parte superior de la página de resultados de la consulta para acceder a la URL)
acuerdos ③HTTP se realizan generalmente a través del protocolo TCP, entonces nuestro HTTPS está en su base Añadir un protocolo TLS o SSL.
Aquí Insertar imagen Descripción
protocolo ④HTTP es un protocolo de capa de aplicación, compuesto de una solicitud y la respuesta, es un modelo cliente-servidor estándar. Nota: HTTP es un protocolo sin estado.
⑤HTTP puerto predeterminado es el puerto 80.

método de petición 2.http

No. método descripción
1 OBTENER información de la página de solicitud especificado y devuelve el cuerpo de la entidad.
2 CABEZA Al igual que en la solicitud GET, devuelve una respuesta, pero no el contenido específico, para la obtención de la cabecera
3 ENVIAR El envío de datos al recurso especificado solicitud de procesamiento (por ejemplo, formulario de envío de archivos o de carga). Los datos contenidos en el cuerpo de la petición. solicitud POST puede dar lugar a una revisión para establecer y / o los recursos existentes a nuevos recursos.
4 PONER Los datos transmitidos desde el cliente al servidor designado para reemplazar el contenido del documento.
5 ELIMINAR Pide al servidor para borrar la página especificada.
6 CONECTAR Protocolo HTTP / 1.1 puede ser reservado para la conexión con el modo de canalización servidor proxy.
7 OPCIONES Que permite al cliente el rendimiento del servidor vista.
8 RASTRO solicitud de eco recibida por el servidor, principalmente para probar o diagnóstico.
9 PARCHE Se complementa el método PUT, utilizado actualización recurso conocido localmente.

Formato de solicitud 3.HTTP
formato de solicitud HTTP sin el cuerpo (parámetros):
Aquí Insertar imagen Descripción
HTTP solicitud tiene un cuerpo de formato (parámetros):
Aquí Insertar imagen Descripción

请求行:
    方法:
        GET 获取资源
        POST 向服务器端发送数据,传输实体主体
        PUT 传输文件
        HEAD 获取报文首部
        DELETE 删除文件
        OPTIONS 询问支持的方法
        TRACE 追踪路径
    协议/版本号
    URL
    
请求头:
    通用首部(General Header)
    请求首部(Request Header)
    响应首部(Response Header)
    实体首部(Entity Header Fields)
    
请求体

protocolo 4.HTTP características:

  • Sin estado: no hay acuerdo sobre un almacenamiento de estado del cliente, no hay capacidad "memoria" a las cosas de la manija, como visitar un sitio web requiere inicio de sesión repetida.
  • No hay conexión: HTTP / 1.1 antes, debido a las características de los apátridas, las necesidades de cada solicitud para dar la mano a través de TCP agitó tres y cuatro veces, y volver a establecer la conexión con el servidor. Por ejemplo, un cliente con múltiples solicitudes en un tiempo corto un servidor de recursos y no puede distinguir si la respuesta ha sido la petición de un usuario, que siempre tiene que responder a las solicitudes, que consume tiempo y el tráfico innecesario.
  • Sobre la base de las solicitudes y respuestas: características básicas, iniciado por la solicitud del cliente, simple y rápido, respuesta del lado de servicio flexible.
  • El uso de solicitud de comunicación de texto plano y la respuesta no se confirmará la parte de comunicación hace integridad de los datos no protege.

Flujo de trabajo 5.HTTP
un HTTP operación se denomina una transacción, su trabajo se divide en cuatro pasos

  • En primer lugar, el cliente y las necesidades de los servidores para establecer una conexión, sólo tiene que hacer clic en un hipervínculo, HTTP comenzó a trabajar.
  • Una vez establecida la conexión, el cliente envía una solicitud al servidor, la solicitud significa el formato: identificador uniforme de recursos (URL), el número de versión del protocolo, la parte posterior es un mensaje MIME incluye una solicitud de información del cliente, modificadores y el posible contenido.
  • Después de que el servidor recibe una petición, para dar la información de respuesta correspondiente, el formato de una línea de estado que comprende una información de número de versión de protocolo, una parte posterior código de éxito o de error es un información MIME incluye información del servidor, información de la entidad y el posible contenido.
  • El cliente recibe la información devuelta por el servidor está representada por el navegador en la pantalla del usuario, el cliente y el servidor se desconecta.

acuerdo de tres .HTTPS

1.HTTPS Protocolo Descripción:
HTTPS (protocolo seguro de transferencia de hipertexto) Protocolo seguro de transferencia de hipertexto.
HTTPS es un canal de comunicaciones seguro, basado en el desarrollo de HTTP, para el intercambio de información entre el equipo cliente y el servidor.
HTTPS a través de Secure Sockets Layer (SSL) para el intercambio de información, en definitiva, es seguro hacerlo HTTP.
HTTPS es desarrollado por Netscape y se instalan en su navegador para operaciones de compresión y descompresión de datos, y devuelve el resultado se transmite a través de la red.
Aplicación de seguridad SSL Socket Layer de Netscape HTTPS mundo como una capa de aplicación HTTP subcapa
HTTPS utiliza el puerto 443 en lugar de HTTP puerto 80 de manera que el uso y TCP / IP para comunicarse
con SSL 40 palabras clave como algoritmo de cifrado RC4, que para el cifrado de la información empresarial es apropiado.
HTTPS y SSL apoyar el uso de certificados digitales X.509.
2.HTTPS principio:
La lista de clientes del algoritmo apoyado y se utiliza como una clave para generar un número aleatorio enviado al servidor.
algoritmo de selección de servidor de una lista algoritmo de cifrado, y envía el certificado que comprende un servidor de claves públicas para el cliente; también contiene la identificación de certificado de servidor para fines de autenticación, mientras que también proporciona un servidor como generar una clave de números aleatorios.
Los clientes verifica el certificado del servidor (para la verificación de certificados, firmas digitales de referencia puede ser), y los extractos de la clave pública del servidor y, a continuación, genera una cadena de contraseña aleatoria llamada pre_master_secret y el servidor utilizando su clave pública encriptación (referencia asimétrico de cifrado / descifrado), y envía la información encriptada al servidor.
El cliente y el servidor calcula independientemente un cifrado y claves MAC (referirse a un algoritmo de intercambio de claves DH), y un valor aleatorio pre_master_secret El cliente y el servidor.
El cliente envía todos los mensajes valor MAC apretón de manos con el servidor.
El servidor envía todos los valores MAC apretón de manos mensaje al cliente.

3.HTTPS cifrado, descifrado características
tomado de la imagen del hermano mayor: https: //blog.csdn.net/kobejayandy/article/details/52433660

Aquí Insertar imagen Descripción
El cliente inicia solicitudes HTTPS
configuración del servidor

  • 1. El uso de HTTPS protocolo debe tener un certificado digital, puede hacer su propio, también puede aplicarse a las organizaciones
  • 2. La diferencia es que el certificado requiere su propia forma de autenticación de cliente a través antes de que puedan seguir teniendo acceso a, y el uso de un certificado de confianza no pop-up página de instrucciones
  • 3. Este certificado es en realidad un montón de certificado de transferencia públicas y claves privadas

Esto es en realidad un certificado de clave pública que contiene una gran cantidad de información
certificado de análisis del cliente

  • 1. por el cliente TLS a completa, en primer lugar verificar la validez de la clave pública
  • 2. Si el certificado no es el problema, se genera un valor aleatorio
  • 3. cifra el valor aleatorio es a continuación con el certificado

Transmitir información cifrada

  • 1. Esta parte del valor aleatorio transmitida se cifra con un certificado
  • 2. El propósito es permitir que el servidor para obtener este valor aleatorio, después de que el cliente de comunicación y el servidor pueden ser encriptados desencriptados por el valor aleatorio de

El servidor descifra la información

  • 1. Después de la clave privada del servidor para obtener la clave privada a través del cliente y, a continuación, cifrando el valor de contenido simétrica

  • 2. La llamada de cifrado simétrico, la información de clave privada y un algoritmo mezclando juntos, por lo menos que conozca la clave privada, o no se puede obtener el contenido, pero sólo el cliente y el servidor es consciente de esta clave privada, siempre y cuando el algoritmo de cifrado lo suficientemente resistente , lo suficientemente complejo privado, seguridad de datos suficiente.

información de cifrado del tráfico

  • 1. Esta información es parte de la clave privada para cifrar el segmento de información de servicio, el cliente puede reducirse

La información de descifrado cliente

  • La clave privada del servidor a la información procedente de descifrado generación antes de finales con 1 cliente, a fin de obtener el contenido descifrado

4.HTTPS objetivos de diseño:
(1) La confidencialidad de los datos: para asegurar que los datos no se conformará con ver una tercera parte en el proceso de transmisión. Al igual que los correos entregar paquetes, ya que son el paquete, otros pueden no saber lo que había dentro.

(2) integridad de los datos: se transmite el contenido para detectar la manipulación por un tercero. Como si la parcela de mensajería instalado no sé qué, pero podía rellenar la forma, se refiere a la integridad de los datos si la sustitución, podemos encontrar fácilmente y rechazado.

(3) la seguridad de verificación de identidad: para asegurar que los datos llegan al destino deseado del usuario. Al igual que cuando el paquete postal, aunque no es un paquete de material empaquetado, pero debemos estar seguros de que el paquete no enviará el lugar equivocado, a través de la verificación de identidad para asegurar que el lugar adecuado para enviar
5.HTTPS ventajas:

  • 1. protocolo https y el servidor de autenticación de usuario, transmite los datos para garantizar que el cliente y el servidor correcto.
  • 2.https protocolo se construye mediante SSL + http cifrado protocolo de transmisión, un protocolo de autenticación de red, el protocolo http de seguridad, para evitar que los datos sean robados durante la transmisión, los cambios para asegurar la integridad de datos.
  • 3.https en el marco actual es la solución segura la mayoría, aunque no absoluta seguridad, pero aumenta considerablemente el costo del ataque intermediario.

6.HTTPS Desventajas:

  • 1.https etapa apretón de manos protocolo de tiempo, el tiempo de carga se extenderá.
  • 2.https no tan buena como la eficiencia http caché de conexiones, aumentar datos suplementarios, incluso las medidas de seguridad existentes también se verán afectadas.
  • 3.https protocolo de seguridad es tener una serie de ataques de hackers, ataques de denegación de servicio y los aspectos del servidor tales como qué papel casi de secuestro.
  • 4.SSL证书通常需要绑定IP,不能在同一IP上绑定多个域名,IPv4资源不可能支撑这个消耗。
  • 5.成本增加。部署 https后,因为 Https协议的工作要增加额外的计算资源消耗,例如 SSL 协议加密算法和 SSL 交互次数将占用一定的计算资源和服务器成本。
  • 6.https协议的加密范围也比较有限。最关键的,SSL证书的信用链体系并不安全,特别是在某些国家可以控制CA根证书的情况下,中间人攻击一样可行。

四.HTTP与HTTPS区别(重中之重)

不同点:

  • 1.https协议需要到CA (Certificate Authority,证书颁发机构)申请证书,一般免费证书较少,因而需要一定费用。
  • 2.https在TCP三次握手阶段以后,还需要进行SSL的headshake,协商加密使用的对称加密密钥。http是超文本传输协议,信息是明文传输,https则是具有安全性的ssl加密传输协议。
  • 3.http和https使用的是完全不同的连接方式,用的端口也不一样,前者是80,后者是443。
  • 4.http的连接很简单,是无状态的。Https协议是由SSL+Http协议构建的可进行加密传输、身份认证的网络协议,比http协议安全。(无状态的意思是其数据包的发送、传输和接收都是相互独立的。无连接的意思是指通信双方都不长久的维持对方的任何信息。)
  • 5.http是超文本传输协议,信息是明文传输,https则是具有安全性的ssl加密传输协议。

相同点:

  • 1.都是采用同一个基础协议作为HTPP或HTTPS客户端—浏览器
  • 2.设立一个连接到Web服务器指定的端口
  • 3.服务器接收到请求,会返回一个状态码以及消息
  • 4.系统使用统一资源定位器URI模式,因此资源可以被唯一指定

五、如何正确选择HTTP协议和HTTPS协议

Mediante el análisis de la parte delantera sabemos que con el fin de garantizar la seguridad, el protocolo HTTPS a través de una serie de cifrado de transmisión de datos, instalar certificados y otras operaciones, el rendimiento y la eficiencia reducirá en gran medida el sitio, y hay una variedad de seguridad, ataques de hackers , ataques de denegación de servicio y el secuestro del servidor y casi logran ningún efecto, por lo que muchos, en uso, si es necesario algunos documentos o informaciones confidenciales, podemos utilizar el protocolo HTTPS para la transmisión. Además, HTTPS consumirá una gran cantidad de costos ya que los certificados SSL tienen que comprar el más caro es el certificado más potente. En resumen, el protocolo HTTP, aunque no seguro, pero sus características eficientes y convenientes de cualquier curso es el protocolo de red de Internet más utilizado.

Publicado 45 artículos originales · ganado elogios 271 · Vistas a 30000 +

Supongo que te gusta

Origin blog.csdn.net/L19002S/article/details/104749810
Recomendado
Clasificación