|
|
Veröffentlicht am 18.06.2021 09:41:15
|
|
|
|

SSL (Secure Socket Layer) verwendet Datenverschlüsselung, Authentifizierung und Mechanismen zur Überprüfung der Nachrichtenintegrität, um Sicherheitsgarantien für Anwendungsprotokolle auf Basis zuverlässiger Verbindungen wie TCP zu gewährleisten. Wenn die Übertragung des Nutzers nicht über SSL erfolgt, werden die Daten im Klartext im Netzwerk übertragen, was Möglichkeiten für Menschen mit Hintergedanken eröffnet. Daher haben viele große Websites mittlerweile die SSL-Funktion aktiviert. Ähnlich können in unserer Datenbank die Daten während der Übertragung gestohlen werden, wenn der Client sich mit dem Server verbindet, um Daten zu erhalten, anstatt eine SSL-Verbindung zu verwenden.
Die Hauptfunktionen des SSL-Protokolls sind:
1. Vertraulichkeit der Datenübertragung: Die übertragenen Daten werden mit einem symmetrischen Schlüsselalgorithmus verschlüsselt. 2. Authentifizierungsmechanismus: Basierend auf dem Zertifikat werden Server und Client mit digitalen Signaturmethoden authentifiziert, wobei die Authentifizierung des Clients optional ist. 3. Nachrichtenintegritätsverifikation: MAC-Algorithmen werden verwendet, um die Integrität von Nachrichten während der Nachrichtenübertragung zu überprüfen.
Wenn Sie .NET/C# verwenden, um eine MySQL-Datenbank zu betreiben,Der Standardwert für SslMode ist Bevorzugt, wenn der Server das unterstützt, verwenden Sie SSL.
Der Hyperlink-Login ist sichtbar.
Mit der Standardmethode kann der Fehler im Fall einer großen Anzahl von Nebenwirkungen wie folgt sein:
Englische Nachricht: Verbindung offen Fehler . Authentifizierung für den Host '192.168.1.100' für Benutzer 'itsvse' mit der Methode 'mysql_native_password' fehlschlug mit der Nachricht fehl: Das Lesen aus dem Stream ist gescheitert.
Verbindung offen Fehler . Fehler beim Verbinden: Timeout ist abgelaufen. Die Timeout-Frist lief ab, bevor eine Verbindung aus dem Pool erhalten wurde. Dies könnte geschehen sein, weil alle Pool-Verbindungen in Betrieb waren und die maximale Poolgröße erreicht wurde.
Die Verwendung von SSL gewährleistet die Sicherheit der Datenübertragung, verringert aber auch die Effizienz von Abfragen und Ausführung, was den Druck auf Datenbank und Programme erhöht. Da sich unsere Datenbank in einer privaten Netzwerkumgebung befindet, ist sie relativ sehr sicher und es besteht keine Notwendigkeit für Übertragungsverschlüsselung, sodass wir Effizienz und Leistung auch ohne SSL-Verschlüsselung verbessern können.
Vor und nach SSL-Leistungsvergleich (QPS):Der Hyperlink-Login ist sichtbar.
Aus den Testdaten geht hervor, dass nach Aktivierung von SSL das Datenbank-QPS im Durchschnitt um etwa 23 % reduziert wird, was die Leistung relativ beeinträchtigt. Aus Sicht der SSL-Implementierung ist es notwendig, beim Aufbau einer Verbindung die Hand zu schütteln, zu verschlüsseln, zu entschlüsseln und andere Operationen herzustellen. Daher befindet sich die benötigte Zeit im Wesentlichen in der Verbindungsphase, was bei Anwendungen mit kurzen Links wie PHP-Entwicklung zu größeren Leistungsverlusten führen kann. Es kann jedoch viel besser sein, wenn du Verbindungspools oder lange Verbindungen verwendest.
Um die Leistung zu verbessern, modifizieren Sie die Verbindungszeichenkette wie folgt:
(Ende)
|
Vorhergehend:.NET/C# legt die Mindestanzahl der Threads in ThreadPool.SetMinThreads fest, um die Leistung zu verbessernNächster:MySQL bestimmt, ob eine Tabelle oder ein Feld existiert, wenn eine neue Tabelle hinzugefügt wird
|