The changes to the Provider class in Tiger caused an unintended change in behavior. It used to be that put("MessageDigest.MD2", "com.foo..."); put("messagedigest.MD5", "com.foo..."); put("MESSAGEDIGEST.SHA", "com.foo..."); all worked. Now the parsing code is case sensitive and only "MessageDigest" works (similarly for other engine types). Although the documentation is unclear about case sensitivity in this case, the previous behavior needs to be restored for compatibility. In addition, the new code in the Provider.Service class treats attributes as case sensitive, even though our documentation explicitly defines them to be case insensitive (see http://java.sun.com/j2se/1.5.0/docs/guide/security/CryptoSpec.html#AppA under "Service Attributes"). This should be corrected as well.
|