On 2009-08-19 15:12 PDT, David Keeler wrote: > Wan-Teh Chang wrote: >> I think "rsa encryption" is a public key algorithm, where as >> "sha1 with rsa encryption" is a signature algorithm. > > Thank you for the quick response. This isn't quite what I was getting > at, though. I guess my question really should be: I have a certificate > that says its "Signature Algorithm" is "rsaEncryption" (not, for > instance, "sha1WithRSAEncryption"). What does this mean?
It means the certificate was badly generated. It means that the only way to be absolutely sure to correctly check the signature is to do these steps in this order: 1) do the RSA public key operation on the cert's signature, which reveals the hash value and the OID of the hash algorithm 2) using that hash algorithm OID, compute the hash over the signed portion of the cert, 3) verify that that hash value matches the hash value obtained from step 1. Some signature verification software is incapable of doing those steps in that order. So, it will either (a) fail immediately for lack of knowing what hash algorithm to us, or (b) guess a hash algorithm and try it, and fail if it guessed wrong, or (c) try all the hash algorithms it knows. -- dev-tech-crypto mailing list dev-tech-crypto@lists.mozilla.org https://lists.mozilla.org/listinfo/dev-tech-crypto