Bester Verschlüsselungs- und Signaturalgorithmus für GnuPG: RSA / RSA oder DSA / Elgamal?

29032
The-Q

Ich habe diese relativ alte Frage gefunden, ob RSA oder DSA der bevorzugte Algorithmus zum Signieren und Verschlüsseln mit GnuPG ist.

Bei der Verwendung gpg --gen-keysind die beiden relevanten Optionen entweder "RSA und RSA" oder "DSA und Elgamal". Welches ist besser? Was sind die Vor- und Nachteile für jeden? Hat sich seit 2009 etwas geändert?

45
fanden auch diese Beiträge hilfreich: [linuxquestions.org/565242#2986414((ttp://www.linuxquestions.org/questions/linux-security-4/gpg-rsa-or-dsa-with-el-gamal-for -new-keys-565242 / # post2986414) und [listen.gnupg.org/022764 ?((ttp://lists.gnupg.org/pipermail/gnupg-users/2004-June/022764.html) RubyTuesdayDONO vor 10 Jahren 0

2 Antworten auf die Frage

72
Jens Erat

Vertrauenswürdige Empfehlungen

Als zum Zeitpunkt des letzten Beitrags immer noch Diskussionen über das Ändern von Standardalgorithmen im Webarchiv mit grobem Konsens geführt wurden, wurde die Umstellung auf RSA 2k-Schlüssel als Standard durchgeführt.

Debian empfiehlt, in ihrem Dokument einen 4- k- RSA-Schlüssel zur Verwendung von Unterschlüsseln und Debian -Schlüsseln- Readme-Dateien zu verwenden. Eine große Mehrheit von etwa drei Vierteln von Schlüsseln im Debian-Entwickler-Schlüsselbund ist (noch) DSA / Elgamal (gezählt durch das Greifen der Ausgabe von gpg).

Der Erfinder von PGP Phil Zimmermann empfiehlt in einem Interview mit iX (Ausgabe 11/2013, Ausgabe 11/2013, kostenlos auch online ) "eine Länge von mindestens 3k bei der Verwendung von RSA", obwohl 1k-Schlüssel noch nicht beschädigt sind. Aber sie sind "in Reichweite von Angreifern, die reich an Ressourcen sind".

Zur Sicherheit

Im Moment wird gesagt, dass beide für ausreichende Schlüsselgrößen sicher sind (4k empfohlen für RSA, 2k für DSA2 erforderlich, ansonsten verwenden Sie DSA1, das SHA-1 verwendet ).

Um eine RSA-Schlüssellänge auszuwählen, sehen Sie sich eine Übersicht über die tatsächliche Stärke an, die von NIST bereitgestellt wird (S. 64). Es ist leicht zu erkennen, dass die Stärke nicht linear mit der Schlüssellänge (und der Rechenzeit) wächst, daher bedeutet doppelte Größe nicht "doppelte Sicherheit".

Es gab ein Problem mit der DSA-Implementierung von OpenSSL unter Debian . Dies wurde jedoch durch die Verwendung fehlerhafter zufälliger Daten verursacht und könnte auch mit RSA geschehen sein.

Wahl zwischen RSA und DSA2

Pro RSA

  • RSA ist weiter verbreitet, obwohl dies im OpenPGP-Standard nicht erforderlich ist. Alle wichtigen Implementierungen können damit umgehen. DSA2 noch nicht
  • RSA bietet eine wesentlich schnellere Signaturprüfung

Pro DSA2

  • Kleinere Signaturen, aber trotzdem klein. für E-Mail- und Code-Signierung wahrscheinlich vernachlässigbar
  • Schnellere Schlüsselerstellung (kann bei stromsparenden und eingebetteten Geräten wie Mobiltelefonen und Routern relevant sein)
  • Etwas schneller zum Signieren

Meine eigene Entscheidung

Bei der Erstellung eines neuen OpenPGP-Schlüssels entschied ich mich für 8k RSA für Primärschlüssel und 4k RSA als Unterschlüssel für den täglichen Gebrauch. RSA-Signaturen sind ohnehin schnell zu überprüfen, und die riesigen 8k-Signaturen werden nur zum Signieren anderer Schlüssel verwendet, aber 8k sollten für eine lange Zeit als ausreichend angesehen werden. 4k ist für einen aktuellen Unterschlüssel in Ordnung, da es billig ist, ihn zu widerrufen, ohne alle Signaturen zu verlieren.

Das Erstellen dieses 8k-Schlüssels hat auf meinem Core 2 Duo T9300 etwa 20 Minuten gedauert. Nehmen Sie sich also Zeit und arbeiten Sie etwas (zum Zuführen der Zufallsquelle).

0
Ben

Während ich mich für einen 4K-RSA-Master-Schlüssel mit einem 3K-RSA-Signaturunterschlüssel und einem 4K-El-Gamal-Verschlüsselungsunterschlüssel entschieden habe. Der einzige Grund, warum ich zu diesem Zeitpunkt keinen höheren Hauptschlüssel gewählt habe, ist die weit verbreitete Anzahl von Benutzern mit mobilen Geräten, die wirklich mit den größeren Schlüsseln zu kämpfen haben.

Natürlich habe ich für bestimmte Zwecke größere Tasten, die jedoch nicht für die Kommunikation mit anderen bestimmt sind.

Warum El-Gamal für die Verschlüsselung? code_monk vor 8 Jahren 1