Skip to content

Commit 38ddbc5

Browse files
committed
Fix thread-safety by creating a new DigestCalculator each time SubjectCertificateNotRevokedValidator.getCertificateId() is called
WE2-1068 Signed-off-by: Mart Somermaa <[email protected]>
1 parent be477cb commit 38ddbc5

File tree

1 file changed

+2
-2
lines changed

1 file changed

+2
-2
lines changed

src/main/java/eu/webeid/security/validator/certvalidators/SubjectCertificateNotRevokedValidator.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -60,7 +60,6 @@
6060
public final class SubjectCertificateNotRevokedValidator {
6161

6262
private static final Logger LOG = LoggerFactory.getLogger(SubjectCertificateNotRevokedValidator.class);
63-
private static final DigestCalculator DIGEST_CALCULATOR = DigestCalculatorImpl.sha1();
6463

6564
private final SubjectCertificateTrustedValidator trustValidator;
6665
private final OcspClient ocspClient;
@@ -197,7 +196,8 @@ private static void checkNonce(OCSPReq request, BasicOCSPResp response) throws U
197196

198197
private static CertificateID getCertificateId(X509Certificate subjectCertificate, X509Certificate issuerCertificate) throws CertificateEncodingException, IOException, OCSPException {
199198
final BigInteger serial = subjectCertificate.getSerialNumber();
200-
return new CertificateID(DIGEST_CALCULATOR,
199+
final DigestCalculator digestCalculator = DigestCalculatorImpl.sha1();
200+
return new CertificateID(digestCalculator,
201201
new X509CertificateHolder(issuerCertificate.getEncoded()), serial);
202202
}
203203

0 commit comments

Comments
 (0)