2010-09-06 10 views
17

http://www.definityhealth.com/marketing/how_ssl_works.htmlSSL ist halb symmetrisch und halb asymmetrisch?

Sieht aus wie SSL asymmetrischen Algorithmus verwendet, um den symmetrischen Schlüssel auszutauschen, danach verwendet es einen symmetrischen Algorithmus zum Verschlüsseln der Daten.

Eine Frage, kann ich nur asymmetrischen Algorithmus verwenden? Wie Alice und Bob haben beide ein Zertifikat und verwenden alle den öffentlichen Schlüssel von Peer, um die Daten zu verschlüsseln. man kann

Antwort

23

Nein, Sie können nicht nur asymmetrische Verschlüsselung verwenden.

TLS (SSL) unterstützt keine Verschlüsselung von Anwendungsdaten mit Algorithmen für öffentliche Schlüssel, da dies keinen Sinn ergeben würde: Es wäre weniger effizient, bietet jedoch keine Verbesserung der Sicherheit.

Verschlüsselung mit öffentlichen Schlüsseln ist nicht schwieriger als symmetrische Algorithmen. Tatsächlich kann es nach allem, was wir wissen, einen Trick geben, der das Aufbrechen einiger asymmetrischer Algorithmen trivial macht und nur darauf wartet, entdeckt zu werden.

Öffentlicher Schlüsselalgorithmus löst das Schlüsselaustauschproblem, und so werden sie von TLS und jedem anderen Sicherheitsprotokoll verwendet. Symmetrische Algorithmen werden verwendet, um Daten privat zu halten und ihre Integrität zu schützen.

+3

+1 Asymmetrische Schlüssel sind deutlich leichter zu brechen als symmetrische Schlüssel. Sie müssen nur prüfen, was für beide Schlüssellängen sicher sind. Ein 1024-Bit-RSA-Schlüssel ist ein wenig weniger sicher als ein 128-Bit-AES-Schlüssel. – JeremyP

+0

Ich würde hinzufügen, dass es deshalb wichtig ist, TLS/SSL mit einem guten Zufallszahlengenerator zu kombinieren, um sicherzustellen, dass die symmetrischen Schlüssel nicht leicht zu erraten sind (eine geeignete Wahl der Cipher Suite hilft auch). Soweit mir bekannt ist, sind die Bedingungen der (Un) -Bruchsfähigkeit von symmetrischen Schlüsseln mathematisch bewiesen worden, während sie für asymmetrische Schlüssel immer noch auf der Annahme von Primzahlen beruhen. – Bruno

+1

Bedenken Sie auch, dass der Angreifer bei Algorithmen mit öffentlichem Schlüssel auch die Verschlüsselungsfunktion ausführen kann - was bedeutet, dass er "erraten und verschlüsseln" kann, wenn der Klartext viel Struktur aufweist. Das spielt keine Rolle, wenn Ihr Klartext nur ein zufällig generierter symmetrischer Schlüssel ist, aber wenn es sich um beliebige Daten (zB HTTP) handelt, dann ist dies der Fall. – caf

6

In der Regel sagen, dass asymmetrische Algorithmen sind viel intensiver Berechnung als symmetrische Algorithmen. Daher ist es sehr üblich, einen asymmetrischen Algorithmus zu verwenden, um einen symmetrischen Schlüssel auszutauschen, der zum Austausch der Daten verwendet wird. Es wird auch als ausreichend sicher betrachtet.

  • Können Sie für alles asymmetrische Algorithmen verwenden? Sicher kannst du.
  • Können Sie es innerhalb von SSL tun? Ich weiß es nicht.
2

Ja, Sie können, wenn Sie Ihre eigene Implementierung für SSL bereitstellen - da dies nicht das ursprüngliche SSL-Design ist. (BTW, verwenden Sie TLS - es ist sehr ähnlich, aber sicherer).

0

Der symmetrische Schlüssel verwendet den gleichen Schlüssel zum Verschlüsseln und Entschlüsseln der Daten. Das größte Problem dabei ist, diese an den Empfänger zu senden. Daher wird die Verwendung von asymmetrischen Schlüsseln empfohlen, wo sie private und öffentliche Schlüssel haben.

Symmetrische Schlüssel werden im Allgemeinen verwendet, um große Datenmengen schneller zu verschlüsseln. Danach senden wir diese Daten mit einem asymmetrischen Algorithmus erneut an den Empfänger.

Verwandte Themen