Https-Verschlüsselung
Einführung
Http geht direkt durch die Ebene Text in Nachrichten wird zwischen dem Browser und dem Server übertragen und der Kommunikationsinhalt kann leicht abgefangen und erfasst werden.
Https verwendet für die Kommunikation eine Kombination aus symmetrischer und asymmetrischer Verschlüsselung.
Https ist kein neues Protokoll auf der Anwendungsebene, aber die HTTP-Kommunikationsschnittstelle verwendet SSL und TLS, um den Verschlüsselungs- und Authentifizierungsmechanismus zu stärken.
Verschlüsselungsmethode
Symmetrische Verschlüsselung: Verschlüsselung und Entschlüsselung verwenden denselben Schlüssel.
Asymmetrische Verschlüsselung: Schlüssel erscheinen paarweise, unterteilt in öffentliche Schlüssel und private Schlüssel. Die Verschlüsselung mit öffentlichen Schlüsseln erfordert die Entschlüsselung mit privaten Schlüsseln, und die Verschlüsselung mit privaten Schlüsseln erfordert die Entschlüsselung mit öffentlichen Schlüsseln.
Der Unterschied zwischen den beiden
Symmetrische Verschlüsselung ist schnell, während asymmetrische Verschlüsselung langsam ist.
Bei der symmetrischen Verschlüsselung muss der Schlüssel offengelegt werden, was sich nicht von der Klartextübertragung unterscheidet.
Asymmetrische Verschlüsselung stellt den öffentlichen Schlüssel für die Client-Verschlüsselung bereit und der Server verwendet den privaten Schlüssel zum Entschlüsseln.
Auswahl der HTTPS-Verschlüsselung
Nachteile der symmetrischen Verschlüsselung
Die symmetrische Verschlüsselung ist schnell und für den HTTPS-Verschlüsselungsalgorithmus geeignet, das Passwort wird jedoch zwischen den übertragen Server und Browser Der Schlüsselvorgang wurde überwacht und im Klartext übermittelt.
Nachteile der asymmetrischen Verschlüsselung
Der Server stellt nur den öffentlichen Schlüssel bereit. Der Browser verwendet den öffentlichen Schlüssel, um die Nachricht asymmetrisch zu verschlüsseln, und der Server verwendet den privaten Schlüssel, um die Nachricht zu entschlüsseln. Wenn der Server jedoch dem Browser antwortet, kann er nur den privaten Schlüssel zum Verschlüsseln verwenden und der Browser kann nur den öffentlichen Schlüssel zum Entschlüsseln verwenden. Allerdings ist der öffentliche Schlüssel jedem bekannt und jeder kann die vom Server geantwortete Nachricht lesen und entschlüsseln, sodass das Problem, dass der Server die Nachricht an den Browser sendet, nicht gelöst werden kann.
HTTPS-Verschlüsselung
Eine Kombination aus symmetrischer und asymmetrischer Verschlüsselung
Der Browser verwendet die HTTPS-URL, um auf den Server zuzugreifen und eine SSL-Verbindung herzustellen.
Der Server empfängt den SSL-Link und sendet den asymmetrisch verschlüsselten öffentlichen Schlüssel A zurück an den Browser
Der Browser generiert eine Zufallszahl als symmetrisch verschlüsselten Schlüssel B
Durchsuchen Sie die Der Browser verwendet den öffentlichen Schlüssel A, um den von ihm generierten Schlüssel B zu verschlüsseln, und erhält Schlüssel C
Der Browser sendet Schlüssel C an den Server.
Der Server verwendet den privaten Schlüssel D, um den empfangenen Schlüssel C zu entschlüsseln und erhält den symmetrischen Verschlüsselungsschlüssel B.
Schlüssel B kann als symmetrischer Verschlüsselungsschlüssel für die Kommunikation zwischen dem Browser und dem Server verwendet werden.
Zusammenfassung
Auf diese Weise teilen sich der Browser und der Server einen symmetrischen Verschlüsselungsschlüssel B, und das Wichtigste ist, dass er nicht abgefangen wird. Die asymmetrische Verschlüsselung wird nur einmal bei der Übertragung des Schlüssels B durchgeführt und anschließend wird die symmetrische Verschlüsselung zur Übertragung der Daten verwendet.
Das obige ist der detaillierte Inhalt vonWas ist die https-Verschlüsselungsmethode?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!