Skip to content

Releases: web-eid/web-eid-authtoken-validation-java

v3.1.1

13 Mar 20:52
v3.1.1
Compare
Choose a tag to compare

v3.1.1 is a bug fix and maintenance release that fixes OcspService.validateResponderCertificate() to use system time for validation and makes SubjectCertificateNotRevokedValidator thread-safe.

What's Changed

  • Use system time in OcspService.validateResponderCertificate() by @mrts in #64
  • Make SubjectCertificateNotRevokedValidator thread-safe by @mrts in #69
  • Fix expired test certificate in AuthTokenSignatureTest by @mrts in #71
  • Bump version to 3.1.1 and update dependencies by @mrts in #70

Full Changelog: v3.1.0...v3.1.1

v3.1.0

28 May 12:38
v3.1.0
b57eaa2
Compare
Choose a tag to compare

Minor backwards-incompatible changes

Although we adhere to semantic versioning principles, the following backwards-incompatible changes are included in the minor version 3.1.0. The updates are primarily structural and cosmetic rather than essential functionality changes, therefore we consider them compatible with a minor version increment.

Maven group ID updated to eu.webeid

The Maven group ID has been changed from org.webeid to eu.webeid. This change aligns with the package namespace, domain of the official project website and emphasizes the focus on European Union eID cards.

Optional return values in CertificateData

The certificate subject field extraction methods in the CertificateData utility class now return Optional<String> instead of String. This change clarifies when a field is absent as opposed to when a certificate parsing error occurs. Users of these methods must now check for Optional<String> presence with isPresent() or using methods like orElse() or orElseThrow() to handle missing values.

What's changed

  • Use java 17 for SonarCloud by @metsma in #49
  • Encode correctly OCSP NONCE extension by @metsma in #51
  • Nonce support was added to EstEID 2015 by @metsma in #52
  • Update copyright year by @metsma in #57
  • Update JJWT to version 0.12 and use Jackson ObjectReader, update other dependencies by @mrts in #58
  • fix: use system time in OcspResponseValidator.validateCertificateStatusUpdateTime() by @mrts in #55
  • build(deps): bump org.bouncycastle:bcprov-jdk18on from 1.77 to 1.78 by @dependabot in #61
  • Use Optional in CertificateData by @mrts in #60
  • Validate relevant CA only by @mrts in #59
  • Fix incorrect groupId and challenge token code example in README by @zutnop in #53
  • Update group ID to eu.webeid.security, amend REAME by @mrts in #63
  • Bump version to 3.1.0 by @mrts in #62

New contributors

Full Changelog: v3.0.1...v3.1.0

v3.0.1

27 Nov 08:49
v3.0.1
Compare
Choose a tag to compare

v3.0.1 is a minor maintenance release that includes several dependency upgrades, most importantly BouncyCastle and jackson-databind. Additionally, it features adjustment of the OCSP nonce length to 32 bytes, enhancements in the build process to generate source and Javadoc JARs alongside the library JAR and a fix to an expired certificate in tests.

Full changelog: v3.0.0...v3.0.1.

Packages

The release Maven package along with source and Javadoc JARs is available in the GitLab Package Repository.

v3.0.0

07 Aug 13:00
v3.0.0
Compare
Choose a tag to compare

Changes

v3.0.0 is a major release that requires Java 11. It uses the built-in HttpClient instead of OkHttpClient for OCSP requests, OkHttpClient dependency is no longer included. The public API has not changed.

If needed, you can continue using OkHttpClient by implementing the OcspClient interface with OkHttpClient and inject the implementation using the AuthTokenValidatorBuilder.withOcspClient() method.

Full changelog: v2.1.2...v3.0.0.

Packages

The release Maven package is available in the GitLab Package Repository.

v2.1.2

16 May 15:08
v2.1.2
9fd984c
Compare
Choose a tag to compare

Changes

v2.1.2 is a minor maintenance release, bumping jackson-databind from 2.13.4.1 to 2.13.4.2 and adding other minor changes.

Full changelog: v2.1.1...v2.1.2.

Packages

The release Maven package is available in the GitLab Package Repository.

v2.1.1

19 Oct 09:23
v2.1.1
Compare
Choose a tag to compare

Changes

Bump jackson-databind from 2.13.4 to 2.13.4.1.

Packages

The release Maven package is available in the GitLab Package Repository.

v2.1.0

19 Sep 11:52
v2.1.0
Compare
Choose a tag to compare

Changes

  • Allow overriding the OCSP client with AuthTokenValidatorBuilder.withOcspClient(). This gives the possibility to either configure the request timeouts, proxies etc of the OkHttpClient instance used by OkHttpOcspClient or provide an implementation that uses an altogether different HTTP client, for example the built-in HttpClient provided by Java 9+.
  • Remove the Guava dependency that was used in only a few places.

Full list of changes is in the v2.1.0 milestone.

Packages

Maven package is available in the GitLab Package Repository.

v2.0.1

13 Jul 17:30
v2.0.1
Compare
Choose a tag to compare

Changes

  • allow more than one responder certificate in the OCSP response.

Full list of changes is in the v2.0.1 milestone.

Packages

Maven package is available in the GitLab Package Repository.

v2.0.0

21 Jan 14:17
v2.0.0
Compare
Choose a tag to compare

v2.0.0 is a major backwards incompatible release.

In version 1, the generated challenge nonces were stored in a JSR107 compatible cache. However, in case the website had a CSRF vulnerability, this made the solution vulnerable to forged login attacks. In version 2, a session-backed challenge nonce store must be used instead to mitigate this attack.

The Web eID authentication token format changed in version 2. In version 1, the authentication token was in the OpenID X509 ID Token (JWT) format in order to be compatible with the standard OpenID Connect ID Token specification. The JWT format was found out to be undesirable, as it implies that the claims presented in the Web eID authentication token can be trusted and processed, while they actually cannot be trusted. Therefore a custom JSON-based format was adopted for the Web eID authentication token in version 2.

Detailed overview of the changes and upgrade instructions are available here.

Changes

See the list of changes in the v2.0.0 milestone.

Backwards incompatible changes

  • the Maven group ID and package namespace changed from org.webeid to eu.webeid,
  • a session-backed challenge nonce store that implements the ChallengeNonceStore interface is required instead of a JSR107 cache,
  • usages of the withNonceCache() method should be removed,
  • authentication token validation method signature has changed,
  • CertUtil is renamed into CertificateData.

See upgrade instructions for details.

Packages

The v2.0.0 Maven package is available in the GitLab Package Repository.

v2.0.0-rc1

11 Jan 12:47
Compare
Choose a tag to compare
v2.0.0-rc1 Pre-release
Pre-release
refactor(challenge): change ChallengeNonceStore type from abstract cl…