SSL (Secure Socket Layer) utiliza mecanismos de cifrado de datos, autenticación y verificación de integridad de mensajes para proporcionar garantía de seguridad a los protocolos de la capa de aplicación basados en conexiones fiables como TCP. Si la transmisión del usuario no es vía SSL, entonces los datos se transmiten en texto plano en la red, lo que abre oportunidades para personas con motivos ocultos. Por ello, muchos sitios web grandes ahora tienen activada la función SSL. De manera similar, en nuestra base de datos, si el cliente se conecta al servidor para obtener datos en lugar de usar una conexión SSL, los datos pueden ser robados durante la transmisión.
Las principales funciones que proporciona el protocolo SSL son:
1. Confidencialidad de la transmisión de datos: Los datos transmitidos se cifran mediante un algoritmo de clave simétrica. 2. Mecanismo de autenticación: Según el certificado, el servidor y el cliente se autentican mediante métodos de firma digital, donde la autenticación del cliente es opcional. 3. Verificación de integridad de mensajes: Se utilizan algoritmos MAC para verificar la integridad de los mensajes durante la transmisión.
Al usar .NET/C# para operar una base de datos MySQL,El valor predeterminado para SslMode es Preferred, si el servidor lo soporta, usa SSL.
El inicio de sesión del hipervínculo es visible.
Usando el método por defecto, en caso de un gran número de concurrencias, el error puede ser el siguiente:
Mensaje en inglés: Error de apertura de conexión. La autenticación al host '192.168.1.100' para el usuario 'itsvse' usando el método 'mysql_native_password' falló con mensaje: La lectura del flujo ha fallado.
Error de apertura de conexión. error al conectar: Tiempo de espera expirado. El tiempo de espera transcurrió antes de obtener una conexión de la piscina. Esto pudo haber ocurrido porque todas las conexiones agrupadas estaban en uso y se alcanzó el tamaño máximo de la piscina.
El uso de SSL garantiza la seguridad de la transmisión de datos, pero también reduce la eficiencia de la consulta y ejecución, aumentando la presión sobre la base de datos y los programas. Como nuestra base de datos está en un entorno de red privada, es relativamente muy segura y no es necesario cifrar la transmisión, por lo que podemos mejorar la eficiencia y el rendimiento sin cifrado SSL.
Antes y después de la comparación de rendimiento SSL (QPS):El inicio de sesión del hipervínculo es visible.
A partir de los datos de prueba, se puede observar que tras habilitar SSL, la base de datos QPS se reduce aproximadamente un 23% de media, lo que afecta relativamente al rendimiento. Desde la perspectiva de la implementación de SSL, es necesario estrechar la mano, cifrar, descifrar y realizar otras operaciones al establecer una conexión. Por lo tanto, el tiempo dedicado es básicamente en la fase de conexión, lo que puede causar una mayor pérdida de rendimiento para aplicaciones que usan enlaces cortos, como el desarrollo en PHP. Sin embargo, puede ser mucho mejor si usas pools de conexiones o conexiones largas.
Para mejorar el rendimiento, modifica la cadena de conexión de la siguiente manera:
(Fin)
|