I've been doing some more exploring with OpenSSL and have seen one of the RSA signatures generated by it in a server key exchange message: engineVerify: DBytes: 00000: 00 01 FF FF FF FF FF FF FF FF FF FF FF FF FF FF ................ 00016: FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF ................ 00032: FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF ................ 00048: FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF ................ 00064: FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF ................ 00080: FF FF FF FF FF FF FF FF FF FF FF 00 64 66 B7 24 ............df.$ 00096: 40 94 1F 0A B0 12 25 D9 45 FC 4A 4A 42 F4 DA 1A @.....%.E.JJB... 00112: 5C D3 E0 46 B7 F9 8E C7 33 31 D4 5D ED 02 F6 B3 \..F....31.].... There are 36 bytes of data there, and they are the MD5 and SHA hashes of the client and server randoms and the temporary RSA key parameters. My signature classes expect (and the Java JCE, I think) expect signatures to be a hash of input data. I guess the hash algorithm could be null to achieve this result but you need to ensure the input data is at least 11 bytes less than the key length in bytes. This is why things are not working out... the data at the end of the PKCS#1 block in my signatures would be the MD5 hash value of those 36 bytes wrapped in a DigestInfo structure, not simply the 36 bytes themselves. I'm guessing OpenSSL has been tested against Netscapes SSL implementation and shown to work so I'll find a way to do signatures like this. -- Regards, David Taylor ======================================================================= David Taylor e-mail [EMAIL PROTECTED] Software Engineer Forge Research Pty Ltd Phone +61 2 9209 4175 PO Box 598, Alexandria Fax +61 2 9209 4172 NSW 1435, Australia Web http://www.forge.com.au ======================================================================= ______________________________________________________________________ OpenSSL Project http://www.openssl.org Development Mailing List [EMAIL PROTECTED] Automated List Manager [EMAIL PROTECTED]
