Kryptographie auf Mehrkernprozessoren

Moores Gesetz besagt, dass sich die Rechenleistung von Prozessoren ungefähr alle zwei Jahre verdoppelt. Dieser bereits über lange Zeit beobachtbare Trend wird mittlerweile nicht mehr ausschließlich durch eine Erhöhung der Taktfrequenz erreicht. Gerade bei modernen Prozessoren wird die Rechenleistung nicht mehr durch Steigerung der Verarbeitungsgeschwindigkeit, sondern durch die Integration mehrerer Recheneinheiten (Prozessorkerne) erhöht. Dadurch können mehrere Berechnungen parallel ausgeführt werden, wodurch die Rechenleistung wieder erhöht und damit die Gültigkeit von Moores Gesetz auch weiterhin gewährleistet wird.

Um die zusätzliche Rechenleistung, die durch diese „neue“ Parallelität zur Verfügung steht, auch in der Praxis ausnutzen zu können, sind spezielle Algorithmen, die möglichst viele Rechenschritte parallel ausführen, notwendig. Besonders bei sehr rechenintensiven kryptographischen Verfahren scheint hier viel Potential zu liegen. Andererseits entsteht durch die Parallelisierung (Aufteilung einer Berechnung auf mehrere Prozessor-Kerne) jedoch auch ein gewisser Mehraufwand. Dies führt dazu, dass der Einsatz paralleler Algorithmen erst ab einer bestimmten Komplexität sinnvoll ist.

Ziel dieser Arbeit war es zu untersuchen, inwieweit sich die Performance bestehender kryptographischer Algorithmen durch den Einsatz von Mehrkernprozessoren verbessern lässt. Dabei wurde in einem ersten Schritt analysiert, auf welchen Abstraktionsebenen parallele Algorithmen existieren bzw. eingesetzt werden könnten. Anhand von Java-Implementierungen wurden diese Resultate für den praktischen Einsatz evaluiert. Dazu wurden Messungen auf verschiedenen Systemen durchgeführt.

Insbesondere wurden die folgenden kryptographischen Verfahren näher analysiert:

  • RSA Schlüsselgenerierung
  • RSA Verschlüsselung
  • ECDSA Signaturverifikation

Es zeigte sich, dass durch die Parallelisierung bestehender sequentieller Implementierungen kryptographischer Verfahren bedeutende Performanceverbesserungen zu erzielen sind. Die Ergebnisse dieser Arbeit wurden bei einer wissenschaftlichen Konferenz eingereicht und werden derzeit einem Review-Prozess unterzogen. Nach erfolgter Veröffentlichung der Arbeit werden die detaillierten Ergebnisse auf dieser Web-Seite abrufbar sein.