Definition: DSA (Digital Signature Algorithm, DSS, Digital Signature Standard, FIPS 186,: ANSI 9.30) An alternative public-key algorithm, the DSA is a standard promulgated by NIST. DSA is only used for digital signatures but is not used for key exchange. It is based upon work done by Schnorr and ElGamal. Contrast: Whereas RSA is based upon the mathematical problem of factoring large numbers, DSA is based upon the discrete logarithm problem. DSA generates signatures faster; RSA verifies signatures better. Contrast: The terms DSA and DSS are essentially the same and are generally used interchangeably. DSS (Digital Signature Standard) is a government document mandating the use of DSA (Digital Signature Algorithm). They are both part of the same FIPS-186 document. Key point: The DSS specification provides for keys only up to 1024-bits. This is considered "weak" and probably breakable in a few years. Some products (e.g. PGP) allow non-standard larger keys to be generated. History: The standard was created by NIST with the help See also: RSA, Diffie-Hellman From Hacking-Lexicon

