@@ -973,9 +973,14 @@ void verifyJar(String jarName)
973
973
Calendar c = Calendar .getInstance (
974
974
TimeZone .getTimeZone ("UTC" ),
975
975
Locale .getDefault (Locale .Category .FORMAT ));
976
- c .setTime (tsTokenInfo .getDate ());
976
+ Date tsDate = tsTokenInfo .getDate ();
977
+ c .setTime (tsDate );
977
978
JarConstraintsParameters jcp =
978
- new JarConstraintsParameters (chain , si .getTimestamp ());
979
+ new JarConstraintsParameters (chain , tsDate );
980
+ JarConstraintsParameters jcpts =
981
+ new JarConstraintsParameters (
982
+ tsSi .getCertificateChain (tsToken ),
983
+ tsDate );
979
984
history = String .format (
980
985
rb .getString ("history.with.ts" ),
981
986
signer .getSubjectX500Principal (),
@@ -984,9 +989,9 @@ void verifyJar(String jarName)
984
989
verifyWithWeak (key , jcp ),
985
990
c ,
986
991
tsSigner .getSubjectX500Principal (),
987
- verifyWithWeak (tsDigestAlg , DIGEST_PRIMITIVE_SET , true , jcp ),
988
- verifyWithWeak (tsSigAlg , SIG_PRIMITIVE_SET , true , jcp ),
989
- verifyWithWeak (tsKey , jcp ));
992
+ verifyWithWeak (tsDigestAlg , DIGEST_PRIMITIVE_SET , true , jcpts ),
993
+ verifyWithWeak (tsSigAlg , SIG_PRIMITIVE_SET , true , jcpts ),
994
+ verifyWithWeak (tsKey , jcpts ));
990
995
} else {
991
996
JarConstraintsParameters jcp =
992
997
new JarConstraintsParameters (chain , null );
@@ -1333,13 +1338,13 @@ private String verifyWithWeak(String alg, Set<CryptoPrimitive> primitiveSet,
1333
1338
boolean tsa , JarConstraintsParameters jcp ) {
1334
1339
1335
1340
try {
1336
- DISABLED_CHECK .permits (alg , jcp );
1341
+ DISABLED_CHECK .permits (alg , jcp , false );
1337
1342
} catch (CertPathValidatorException e ) {
1338
1343
disabledAlgFound = true ;
1339
1344
return String .format (rb .getString ("with.disabled" ), alg );
1340
1345
}
1341
1346
try {
1342
- LEGACY_CHECK .permits (alg , jcp );
1347
+ LEGACY_CHECK .permits (alg , jcp , false );
1343
1348
return alg ;
1344
1349
} catch (CertPathValidatorException e ) {
1345
1350
if (primitiveSet == SIG_PRIMITIVE_SET ) {
@@ -1361,13 +1366,13 @@ private String verifyWithWeak(String alg, Set<CryptoPrimitive> primitiveSet,
1361
1366
private String verifyWithWeak (PublicKey key , JarConstraintsParameters jcp ) {
1362
1367
int kLen = KeyUtil .getKeySize (key );
1363
1368
try {
1364
- DISABLED_CHECK .permits (key .getAlgorithm (), jcp );
1369
+ DISABLED_CHECK .permits (key .getAlgorithm (), jcp , true );
1365
1370
} catch (CertPathValidatorException e ) {
1366
1371
disabledAlgFound = true ;
1367
1372
return String .format (rb .getString ("key.bit.disabled" ), kLen );
1368
1373
}
1369
1374
try {
1370
- LEGACY_CHECK .permits (key .getAlgorithm (), jcp );
1375
+ LEGACY_CHECK .permits (key .getAlgorithm (), jcp , true );
1371
1376
if (kLen >= 0 ) {
1372
1377
return String .format (rb .getString ("key.bit" ), kLen );
1373
1378
} else {
@@ -1384,9 +1389,9 @@ private void checkWeakSign(String alg, Set<CryptoPrimitive> primitiveSet,
1384
1389
boolean tsa , JarConstraintsParameters jcp ) {
1385
1390
1386
1391
try {
1387
- DISABLED_CHECK .permits (alg , jcp );
1392
+ DISABLED_CHECK .permits (alg , jcp , false );
1388
1393
try {
1389
- LEGACY_CHECK .permits (alg , jcp );
1394
+ LEGACY_CHECK .permits (alg , jcp , false );
1390
1395
} catch (CertPathValidatorException e ) {
1391
1396
if (primitiveSet == SIG_PRIMITIVE_SET ) {
1392
1397
legacyAlg |= 2 ;
@@ -1413,9 +1418,9 @@ private void checkWeakSign(String alg, Set<CryptoPrimitive> primitiveSet,
1413
1418
1414
1419
private void checkWeakSign (PrivateKey key , JarConstraintsParameters jcp ) {
1415
1420
try {
1416
- DISABLED_CHECK .permits (key .getAlgorithm (), jcp );
1421
+ DISABLED_CHECK .permits (key .getAlgorithm (), jcp , true );
1417
1422
try {
1418
- LEGACY_CHECK .permits (key .getAlgorithm (), jcp );
1423
+ LEGACY_CHECK .permits (key .getAlgorithm (), jcp , true );
1419
1424
} catch (CertPathValidatorException e ) {
1420
1425
legacyAlg |= 8 ;
1421
1426
}
0 commit comments