Asymmetrische Algorithmen (welche bei Kryptosystemen mit öffentliche Schlüsseln eine Rolle spielen) ermöglichen die Bewältigung von Problemen, die mit der Schlüsselübertragung über einen gesicherten Kanal zusammenhängen. Allerdings sind sie (in Bezug auf die Rechenzeit) weit weniger effizient als symmetrische Algorithmen.
Das Konzept von Session Keys stellt einen Kompromiss zwischen symmetrischer und asymmetrischer Chiffrierung dar, der es ermöglicht, die beiden Techniken zu kombinieren.
Das Prinzip des Session Keys ist einfach : es besteht darin, zufällig einen ausreichend großen Session Key zu erzeugen, und diesen mit Hilfe eines Chiffrier-Algorithmus' mit öffentlichem Schlüssel zu chiffrieren (genauer - mit Hilfe des öffentlichen Schlüssels des Empfängers).
Der Empfänger dechiffriert den Session Key dann mit Hilfe seines privaten Schlüssels. So habe der Sender und der Empfänger einen gemeinsamen Schlüssel, den nur sie kennen. So ist es ihnen möglich, chiffrierte Dokumente mit Hilfe eines symmetrischen Chiffrier-Algorithmus' zu versenden.
Der Algorithmus von Diffie-Hellman (von den Namen der Erfinder Diffie und Hellman) wurde 1976 entwickelt, um den Austausch von Schlüsseln über einen nicht gesicherten Kanal zu ermöglichen. Er nutzt die Schwierigkeit, diskrete Logarithmen in einem endlichen bereich zu errechnen.
Der Algorithmus von Diffie-Hellman ist allerdings anfällig für den "Man in the middle" Angriff (manchmal übersetzt als "Angriff über die Mitte").