.NET entmystifiziert die Verschlüsselung

Beim Start erstellt der Client seine eigene Instanz der Klasse RSACryptoServiceProvider. Bei der Instantiierung enthält das Objekt in der Standardeinstellung starke Schlüssel. Der Client muss den öffentlichen Schlüssel aus diesem RSA-Objekt bekommen und ihn dem Server senden. Der öffentliche Schlüssel wird mithilfe der ExportParameters-Methode geholt, so dass er sich dann in einem RSAParameters-Objekt befindet. Wie senden wir dieses Objekt an den Server? Wir können hierzu .NETs binäre Serialisierung aus dem Namensraum System.Runtime.Serialization.Formatters.Binary verwenden:

Der BinaryFormatter schreibt direkt in Streams, und in diesem Fall schreibt er die serialisierte Version des RSAParameters in den Netzwerkstrom. Der Server erhält diese Bytes und deserialisiert sie in ein RSAParameters-Objekt:

Jetzt erstellt der Server einen symmetrischen Schlüssel und IV, die beide Seiten verwenden können und verschlüsselt sie mithilfe des öffentlichen Schlüssels des Client:

Im Gegensatz zu den symmetrischen Providern verschlüsseln die asymmetrischen Provider nicht in einen Stream, sondern in ein Byte-Array hinein. Das Byte-Array kann dann mithilfe von NetworkStream an den Client gesendet werden.

Sobald der Client die verschlüsselten Versionen des symmetrischen Schlüssels und des IV erhält, entschlüsselt er sie mithilfe seines eigenen privaten asymmetrischen Schlüssels. Jetzt haben beide Seiten einen gemeinsamen symmetrischen Schlüssel und IV. Von jetzt an senden sie sich Daten zu, die nur mit dem symmetrischen Schlüssel verschlüsselt sind. Der asymmetrische Algorithmus hat seinen Zweck erfüllt und muss nicht mehr verwendet werden.

Page: 1 2 3 4 5 6 7 8

ZDNet.de Redaktion

Recent Posts

Bericht: Google entwickelt App-Quarantäne für Android

Die Sicherheitsfunktion taucht in einer Beta eines kommenden Android-Updates auf. Die Quarantäne beendet unter anderem…

2 Wochen ago

Kostenloser Kurs zum Ausbau von Low-Code-Programmierung

Die OutSystems Developer School hilft Entwicklern, in 2 Wochen komplexe reaktive Anwendungen mit der Low-Code-Plattform…

2 Wochen ago

Cloudflare: DNS-basierte DDoS-Angriffe steigen im ersten Quartal um 80 Prozent

Das Jahr 2024 beginnt laut Cloudflare mit einem Paukenschlag. Die automatischen Systeme des Unternehmens wehren…

2 Wochen ago

Roblox: 34 Millionen Zugangsdaten im Darknet

Laut Kaspersky nehmen Infostealer gerade auch Spieleplattformen ins Visier. Neue Studie untersucht Angriffe zwischen 2021…

2 Wochen ago

EU-Datenschützer kritisieren Facebooks „Zustimmung oder Bezahlung“-Modell

Ohne eine kostenlose Alternative, die ohne Zustimmung zur Verarbeitung personenbezogener Daten zu Werbezwecken auskommt, ist…

3 Wochen ago

Europol meldet Zerschlagung der Phishing-as-a-Service-Plattform LabHost

LabHost gilt als einer der größten Phishing-Dienstleister weltweit. Die Ermittler verhaften 37 Verdächtige, darunter der…

3 Wochen ago