GPG in Standardkonfiguration nicht empfohlen
Bei einem nächtlichen Gespräch mit Benni von der C-Base erfuhr ich zwei Tatsachen, die für meinen GPG-Vortrag im Newthinking Store von besonderer Relevanz sind: Zunächst veröffentlicht die Bundesnetzagentur jährlich Emfehlungen zur Schlüssellänge mit Abschätzungen, wie lange Schlüssel mit bestimmter Länge noch als sicher anzusehen sind – soweit, so gut. Auf Seite 7 der Empfehlungen für 2008 befindet sich eine Tabelle mit dem Titel Bitlängen für den DSA
, die folgendermaßen aussieht:
Parameter bis Ende 2007 bis Ende 2008 bis Ende 2009 bis Ende 2014 p 1024 (Mindestwert)
2048 (Empfehlung)1280 (Mindestwert)
2048 (Empfehlung)1536 (Mindestwert)
2048 (Empfehlung)2048 q 160 160 160 224
Schaut man nun in die ursprüngliche DSA-Spezifikation FIPS 186, wird eine Problematik offensichtlich: Der Parameter p muss nämlich so gewählt werden, dass 2L-1 < p < 2L mit 512 ≤ L ≤ 1024, d.h. ein p mit einer Länge von mehr als 1024 Bits ist schlicht nicht vorgesehen.
Und nun zum Zweiten: Generiert man Schlüssel mit einer aktuellen Version von GPG und verwendet die Standardeinstellungen, sind alle DSA-Schlüssel genau 1024 Bits lang und somit laut BNetzA nicht sicher. Abhilfe schafft die Option --enable-dsa2
, mit der DSA-Schlüssel bis zu 3072 Bits lang generiert werden können oder die Verwendung von RSA-Schlüsseln, die auch ohne besondere Optionen eine Länge bis zu 4096 Bits haben können.