On 03/24/2014 05:30 PM, Florian Weimer wrote:
This CR adds a new class java.security.StandardMessageDigests:

<http://fweimer.fedorapeople.org/openjdk/standard-message-digests/>

Could I get a bug number if this change is fine in principle?

Cryptographic hash functions are frequently used directly, often for
non-cryptographic purposes, so I think it makes sense to provide a
convenient way to access implementations for the most common hashes. The
new class follows the java.nio.charset.StandardCharsets precedent
(separate class, "Standard" in the name).

I deliberately did not include support for MD5.  It would be nice if we
could drop the NoSuchAlgorithmException, but this would be problematic
once there are providers that do not support SHA-1.

Instantiating digest objects through cloning should be quite a bit
faster than the provider route (but I measured this some time ago only,
so these results could be outdated by now).

Ping?  This change proposal is in response to an earlier discussion:

<http://mail.openjdk.java.net/pipermail/security-dev/2010-December/002531.html>

I fixed the webrev so that the fast path actually runs, and now JMH reports a speedup:

Benchmark Mode Samples Mean Mean error Units o.o.j.b.StandardMessageDigestsBenchmark.get thrpt 200 1650.350 53.388 ops/ms o.o.j.b.StandardMessageDigestsBenchmark.smd thrpt 200 1814.137 59.414 ops/ms

--
Florian Weimer / Red Hat Product Security Team

Reply via email to