A one-time password (HOTP/TOTP) library for Java
This release changes the public API a bit and is intended to make java-otp easier to work with in general. Important changes include:
NoSuchAlgorithmException
now throw an UncheckedNoSuchAlgorithmException
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 runtimeTimeBasedOneTimePasswordGenerator
no longer extends HmacOneTimePasswordGenerator
, which serves to make its public API a little clearer (it no longer exposes counter-based methods for generating one-time passwords)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 expectedFor a complete list of changes, please see the 0.4.0 milestone.
This release includes a fix for a build error that caused a NoSuchMethodError
when running under Java 8 or newer. It contains no new features or functional changes.
Version 0.3.0 of java-otp adds support for formatting one-time passwords as strings and includes an automatic module name for JPMS interoperability.
For a complete list of changes, please see the v0.3.0 milestone.
As of v0.2, java-otp requires Java 8 or newer. This release also includes performance enhancements that increase throughput and reduce garbage collection pressure.
This is the initial public release of java-otp.