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

Reply via email to