C05 ECIES Verschlüsselung mit einem String

Dieses ist ein Beispiel für das dritte asymmetrische Verschlüsselungsverfahren namens ECIES. Die beiden führenden Buchstaben „EC“ stehen für „Elliptic Curve“ oder „Elliptische Kurven“, welche als Grundlage für dieses Verfahren dienen. Bei der Verschlüsselung mittels „EC“ gibt es keine direkte Schlüssellänge als Indiz für die Stärke der Verschlüsselung, sondern Ihr könnt nur über den verwendeten Kurvennamen einen Hinweis auf die Schlüssellängen erhalten.

An dieser Stelle gibt es von mir keinen Hinweis wie „längere Schlüssel = höhere Sicherheit“, denn bei Elliptischen Kurven entstehen schnell Glaubensfragen, da eine Elliptische Kurve und damit deren „Aussehen“ über Parameter definiert wird. Die richtige Auswahl der Parameter entscheidet am Ende über eine höhere oder geringere Sicherheit. Es gibt immer wieder Gerüchte, dass die amerikanische „National Security Agency“ (oder kurz „NSA“) bei der Parameterauswahl von einigen Kurven „mitgeredet“ haben soll und sich so einen Vorteil (oder gar eine Hintertür) verschafft hat, um einen derart verschlüsselten Datensatz entschlüsseln zu können. Wie gesagt – das könnt Ihr glauben oder auch nicht, faktisch ist die Elliptische Kurven Kryptographie nach heutigem Stand sicherer als die RSA- und DSA-Varianten.

In den Zeilen 56-60 sind einige Kurvennamen aufgeführt, die Ihr durch Auskommentieren nutzen könnt. Eine Übersicht über die in Bouncy Castle implementierten Kurven ist im Bouncy Castle Wiki zu finden.

Hier nun der Steckbrief:

Verschlüsselungssteckbrief
Name des Verfahrens ECIES
Langname Elliptic Curves Integrated Encryption Scheme
Art der Chiffre Kompletter Plaintext
Blocklänge (Byte)
Schlüssellänge (Byte/Bit) Nutzung von Kurvennamen
Padding genutzt Nein
Sicherheit grundsätzlich sicher
Besonderes Geeignet nur für kleine Datenmengen

Bitte die nachfolgende Routine nicht für den Echteinsatz nutzen, da sie aus kryptographischer Sicht sehr angreifbar ist !

Auf der Konsole ist folgende Ausgabe zu sehen:

Die Lizenz zum obigen Beispiel findet Ihr auf der eigenen Lizenz-Seite.

Letzte Aktualisierung: 26.12.2018