I am still having a problem running RSA_verify which returns 'Data too large
for modulus' errors. If I check the big number value of the 'signatureValue'
and 'Modulus' they are 268628280 and 268628488 respectively which obviously
explains the error I am receiving. I have changed my code from using
'strlen' to the base64 decoded length as suggested but this has made no
difference. These are the steps I am taking with the Signature XML I am
receiving in order to verify the signature:

1) Extracting the 'SignedInfo' node and creating a 20 byte SHA1 hash of the
value of it and its contents.
2) Extracting the 'Modulus' and 'Exponent' values and then Base64 decoding
both. This creates a 128 byte modulus and 3 byte exponent.
3) Extracting the 'SignatureValue' value and Base64 decoding it which
creates a 128 byte signature.
4) Converting the Base64 decoded modulus and exponent values and assigning
them to a RSA structure (n and e).
5) Calling RSA_Verify with 'NID_sha1', the 20 byte hash, the 128 byte
signature value, a signature size of 128, and the previously populated RSA
structure.

Is there something I am doing incorrectly here?

Thanks

Chris 



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

Reply via email to