TLS Prinzip
Version vom 28. August 2023, 17:22 Uhr von Thomas.will (Diskussion | Beiträge)
Voraussetzung
- Server muss einen festgelegten DNS Namen besitzen.
Prinzip
Signieren
- Generieren eines Schlüsselpaares einen privkey-s und einen pubkey-s.
- Den Pubkey-s schickt man nun an einen Zertifizierungsstelle (inkclusive FQDN durch X.509).
- Diese bildet nun einen Hashwert hash-s
- hash wird nun mit dem privkey-ca verschlüsselt,
- Das Teil nennt man nun signature-s
- diese wird an den pubkey-s angehängt
- Man nennt dies nun certifkat-s und
- Es wird zum Server zurück geschickt
- Man baut dies dann in seinen Websever ein
- CA erstellen
- Certificate Request erstellen
- CA signiert den Request
- Einbauen von Zertifikaten
- Anzeigen und überprüfen von Zertifikaten
Authentifzieren
- Zuerst verschlüsselt der Client einen Zufallswert mit dem öffentlichen Schlüssel des Servers.
- Dies schickt er zum Server, dieser entschlüsselt dies, mit seinem privaten Schlüssel und schickt diesen zurück.
- Wenn beide Werte gleich sind, ist der Client sicher, das der Server den Privat Key hat.
- Client greift auf den Server über den Domain Name zu.
- Server schickt nun das certifikat-s zum Client
- Client teilt nun dieses wieder auf in pubkey-s und signature-s
- Bildet einen hash aus dem pubkey-s genau wie vorher in der Zertifizierungsstelle.
- signature-s wieder mit dem pubkey-ca verschlüsseln haben wir wieder den orginal hash-s
- wenn beide gleich sind, ist die Authentifizierung erfolgreich ...
Verbindung
Asynchrone Authentifizierung
- Die Kommunikation beginnt mit der asynchronen Authentifizierung, bei der der Server in der Regel ein digitales Zertifikat verwendet, um sich selbst zu authentifizieren und seine öffentlichen Schlüsselinformationen an den Client zu senden.
Diffie-Hellman-Schlüsselaustausch
- Nach der Authentifizierung erfolgt der asynchrone Diffie-Hellman-Schlüsselaustausch, bei dem Client und Server einen gemeinsamen geheimen Sitzungsschlüssel vereinbaren, ohne den Schlüssel selbst über den unsicheren Kanal zu übertragen.
Symmetrische Verschlüsselung
- Der vereinbarte geheime Sitzungsschlüssel aus dem Diffie-Hellman-Schlüsselaustausch wird dann verwendet, um die tatsächlichen Daten synchron mit einem symmetrischen Verschlüsselungsalgorithmus wie AES zu verschlüsseln. Dies ermöglicht eine effiziente Verschlüsselung und Entschlüsselung der Daten.
Authentizitätsprüfung mit Hash
- Um die Integrität der übertragenen Daten zu gewährleisten, wird oft ein kryptografischer Hash-Wert verwendet, der die Daten zusammen mit einem geheimen Schlüssel hash-funktioniert. Der Empfänger kann diesen Hash-Wert überprüfen, um sicherzustellen, dass die Daten während der Übertragung nicht manipuliert wurden.

