* sign.c (do_sign): Accept a truncated hash even for DSA1 keys (be liberal
authorDavid Shaw <dshaw@jabberwocky.com>
Thu, 22 Jun 2006 19:17:21 +0000 (19:17 +0000)
committerDavid Shaw <dshaw@jabberwocky.com>
Thu, 22 Jun 2006 19:17:21 +0000 (19:17 +0000)
in what you accept, etc).

g10/ChangeLog
g10/sign.c

index b6c84f3..ef67652 100644 (file)
@@ -1,8 +1,13 @@
+2006-06-22  David Shaw  <dshaw@jabberwocky.com>
+
+       * sign.c (do_sign): Accept a truncated hash even for DSA1 keys (be
+       liberal in what you accept, etc).
+
 2006-06-12  David Shaw  <dshaw@jabberwocky.com>
 
        * import.c (import_one): Add a flag (from_sk) so we don't check
        prefs on an autoconverted public key.  The check should only
-       happen on the sk size.  Noted by Dirk Traulsen.
+       happen on the sk side.  Noted by Dirk Traulsen.
 
 2006-06-09  David Shaw  <dshaw@jabberwocky.com>
 
index d3d0c29..39e39c6 100644 (file)
@@ -319,6 +319,12 @@ do_sign( PKT_secret_key *sk, PKT_signature *sig,
       }
     else 
       {
+#if 0
+       /* Disabled for now.  It seems reasonable to accept a
+          truncated hash for a DSA1 key, even though we don't
+          generate it without --enable-dsa2.  Be liberal in what you
+          accept, etc. */
+
        /* If it's a DSA key, and q is 160 bits, it might be an
           old-style DSA key.  If the hash doesn't match the q, fail
           unless --enable-dsa2 is set.  If the q isn't 160 bits, then
@@ -333,6 +339,7 @@ do_sign( PKT_secret_key *sk, PKT_signature *sig,
            log_error(_("DSA requires the use of a 160 bit hash algorithm\n"));
            return G10ERR_GENERAL;
          }
+#endif
 
         frame = encode_md_value( NULL, sk, md, digest_algo );
         if (!frame)