This release changes the public API a bit and is intended to make java-otp easier to work with in general. Important changes include:
- Methods that used to throw a (checked)
NoSuchAlgorithmException
now throw anUncheckedNoSuchAlgorithmException
because, most of the time, folks are using algorithms that are guaranteed to be supported by the JVM and there really isn't any corrective action to be taken at runtime TimeBasedOneTimePasswordGenerator
no longer extendsHmacOneTimePasswordGenerator
, which serves to make its public API a little clearer (it no longer exposes counter-based methods for generating one-time passwords)- Unit tests now assume that the JVM supports HMAC-SHA512 and will skip those tests if it does not (rather than reporting failure)
- The various methods for generating one-time passwords are no longer
synchronized
(but password generators are still thread-safe!), making the concurrency story much simpler: you can use one-time password generators in as many threads as you want, and throughput should scale as expected
For a complete list of changes, please see the 0.4.0 milestone.