Erik Leunissen wrote:
Nils Larsch wrote:


==>    result = DSA_verify(NID_sha1, hash, 20, \
            sig, 20, dsa);



sure that your signature is 20 bytes long, as it is a structure containing two 160 bit numbers it seems a little bit short to me :)


Thanks for your response, Nils.

You appear to see through something that is still unclear to me. This may be because I'm new to both openssl and C programming in general (please bear with me if I overlook the obvious). Or maybe you just meant something different from what I understood. Just to make sure:

- 20 bytes corresponds to 160 bits, doesn't it?

yep

- How can DSA_verify() believe the signature size to be different from 20 bytes, if I pass a hard coded "20" as the fifth argument to DSA_verify()?

because it should be asn.1 encoded. How did you create the signature ?

- I don't understand which "structure containing two 160 bit numbers" you're referring to.

the asn.1 der encoded dsa signature object (see rfc 3279)

Nils
______________________________________________________________________
OpenSSL Project                                 http://www.openssl.org
User Support Mailing List                    openssl-users@openssl.org
Automated List Manager                           [EMAIL PROTECTED]

Reply via email to