Wie verteilen Sie Sitzungsschlüssel in der Verschlüsselung mit öffentlichen Schlüsseln?

  • In der Verschlüsselung mit öffentlichen Schlüsseln können auch Sitzungsschlüssel verwendet werden, die symmetrisch sind. Wie stellt der Absender (zum Beispiel ein Server) seinen Clients diese Sitzungsschlüsselinformationen zur Verfügung?

    Wenn der Absender (hier der Server) den Sitzungsschlüssel durch Verschlüsselung mit seinem privaten Schlüssel bereitstellt, alles die Clients (einschließlich eines böswilligen) können sich entschlüsseln (mithilfe des verfügbaren öffentlichen Schlüssels) und diesen Sitzungsschlüssel sehen, oder? Der Server kann keinen öffentlichen Schlüssel zum Verschlüsseln des Sitzungsschlüssels verwenden, da keiner der Clients einen privaten Schlüssel zum Entschlüsseln besitzt.

    Ich frage mich, welche Informationen ich hier versäumt habe, um die Grundlagen zu verstehen Idee der Verteilung des Sitzungsschlüssels?

    12 February 2012
    Lunar Mushrooms
2 answers
  • Normalerweise sendet der Client den Sitzungsschlüssel. Dies bedeutet, dass Clients keine anderen Sitzungsschlüssel entschlüsseln können.

    Obwohl durch diese Vorgehensweise sichergestellt wird, dass jede Sitzung vor Informationen geschützt ist, die in anderen Sitzungen gesammelt wurden, wird die Sitzung nicht vor einem späteren Erwerb eines Angreifers geschützt der Server-Schlüssel und dekodiert alle aufgezeichneten Sitzungen nachträglich.

    Um sich vor dieser Bedrohung zu schützen, wird dies als Perfect Forward Privacy bezeichnet. Dies kann durch den ephemeren Diffie-Hellman-Schlüsselaustausch (EDH, DHE) erreicht werden.

    Es gibt ein hervorragendes Blog, in dem die jüngsten Verbesserungen in Perfect Forward Secrecy . Es lohnt sich zu lesen.

    29 November 2011
    poncho
  • Eigentlich der erste Satz "Bei der Verschlüsselung mit öffentlichen Schlüsseln können wir auch Sitzungsschlüssel verwenden, die symmetrisch sind." ist etwas irreführend, wenn der zweite Satz folgt. Der Teil öffentlicher Schlüssel ist dort , nur um sicherzustellen, dass der Sitzungsschlüssel sicher an den Empfänger gelangt .

    Im Allgemeinen Für eine einseitige Informationsübertragung von Bob an Alice kann Bob den öffentlichen Schlüssel von Alice verwenden, um etwas zu verschlüsseln, und Alice wird ihren privaten Schlüssel verwenden, um dieselben Informationen zu entschlüsseln. In hybriden Schemata ist dieser etwas normalerweise ein symmetrischer Sitzungsschlüssel, der zur Verschlüsselung (und Integritätsprüfung) der Hauptnachricht verwendet wird. Wenn das Verschlüsselungsschema sicher ist (und der private Schlüssel von Alice privat bleibt und Bob wirklich über ihren öffentlichen Schlüssel verfügt), hat Eve (der Angreifer) keine Möglichkeit, die Daten zu lesen (oder zu ändern).

    Wird für E-Mails (z. B. PGP und S / MIME), Datenspeicherung (wobei Bob = Alice) und andere Offline-Kommunikation verwendet.

    Für Broadcasting-Schema muss der Sitzungsschlüssel mit allen öffentlichen Schlüsseln der vorgesehenen Empfänger (parallel) verschlüsselt werden, sodass jeder von ihnen den Sitzungsschlüssel mit seinem eigenen privaten Schlüssel entschlüsseln und dann den Sitzungsschlüssel verwenden kann Um die Daten zu entschlüsseln.

    Das Verschlüsseln von Daten mithilfe des (privaten oder öffentlichen) Schlüssels des Senders ist in keiner Weise nützlich.

    Für die einzeilige Kommunikation möchten wir in der Regel nicht nur die Datenübertragung in einer Richtung, sondern auch die bidirektionale Kommunikation sichern. Gleichzeitig möchte oft eine der beiden Seiten (oft der "Client") anonym bleiben, während mindestens eine Seite auf irgendeine Weise authentifiziert werden muss. Die übliche Methode der "Public-Key-Verschlüsselung" besteht darin, dass Bob einige zufällige Daten erstellt, diese mit dem öffentlichen Schlüssel von Alice verschlüsselt und an sie sendet. Alice entschlüsselt es und beide leiten aus diesen Zufallsdaten einige gängige geheime Schlüssel ab. Alice kann dann mit diesem Sitzungsschlüssel Daten an Bob verschlüsseln, ohne zu wissen, wer Bob ist.

    12 February 2012
    cmcculloh