Was ist SSL-Kontext?

8

Wenn Sie für ein SSL programmieren, egal welche Sprache Sie wählen (C ++, Java, Ruby usw.), werden Sie wahrscheinlich SSLContext Objekt finden, das verwendet werden würde. Ich weiß nicht, was bedeutet SSLContext semantisch? Wenn ich nach Google suche, gibt es nur viele Seiten, die die syntaktische Verwendung eines solchen Objekts für verschiedene Programmiersprachen erklären.

Meine Frage: Was bedeutet SSLContext in Bezug auf SSL? Unabhängig von der Sprache, die es implementiert.

    
Mostafa Talebi 26.07.2015, 06:15
quelle

2 Antworten

14

SSL-Kontext ist eine Sammlung von Verschlüsselungen, Protokollversionen und vertrauenswürdigen Zertifikaten B. TLS-Optionen, TLS-Erweiterungen usw. Da es sehr häufig mehrere Verbindungen mit denselben Einstellungen gibt, werden sie in einem Kontext zusammengefügt und die relevanten SSL-Verbindungen werden dann basierend auf diesem Kontext erstellt. Und um eine neue Verbindung zu erstellen, müssen Sie nur auf den Kontext verweisen, der Ihnen im Vergleich zu dem Fall, in dem Sie alle diese Einstellungen neu erstellen müssten, Zeit und Speicherplatz spart.

EDIT: @EJP beschreibt diese "Sammlung" nett als Fabrik. Ein SSL-Kontext ist nicht identisch mit einer SSL-Sitzung , obwohl beide Sammlungen von die Einstellungen. Eine Session erhält man nach dem SSL-Handshake und behandelt nur die Verschlüsselungs- und Protokollversion, die beide Parteien vereinbart haben, und auch den ausgetauschten Schlüssel. Während der Kontext alle Chiffrier- und Protokollversionen sowie die Liste der vertrauenswürdigen Zertifikate umfasst, die das lokale System (Client oder Server) beim Aufbau einer neuen TLS-Verbindung zu unterstützen bereit ist. Daher beschreibt eine SSL-Sitzung eine etablierte SSL-Beziehung, während der SSL-Kontext beschreibt, was Sie zum Aufbau einer SSL-Beziehung benötigen.

    
Steffen Ullrich 26.07.2015, 06:24
quelle

Tags und Links