@@ -904,9 +904,14 @@ void verifyJar(String jarName)
904
904
Calendar c = Calendar .getInstance (
905
905
TimeZone .getTimeZone ("UTC" ),
906
906
Locale .getDefault (Locale .Category .FORMAT ));
907
- c .setTime (tsTokenInfo .getDate ());
907
+ Date tsDate = tsTokenInfo .getDate ();
908
+ c .setTime (tsDate );
908
909
JarConstraintsParameters jcp =
909
- new JarConstraintsParameters (chain , si .getTimestamp ());
910
+ new JarConstraintsParameters (chain , tsDate );
911
+ JarConstraintsParameters jcpts =
912
+ new JarConstraintsParameters (
913
+ tsSi .getCertificateChain (tsToken ),
914
+ tsDate );
910
915
history = String .format (
911
916
rb .getString ("history.with.ts" ),
912
917
signer .getSubjectX500Principal (),
@@ -915,9 +920,9 @@ void verifyJar(String jarName)
915
920
verifyWithWeak (key , jcp ),
916
921
c ,
917
922
tsSigner .getSubjectX500Principal (),
918
- verifyWithWeak (tsDigestAlg , DIGEST_PRIMITIVE_SET , true , jcp ),
919
- verifyWithWeak (tsSigAlg , SIG_PRIMITIVE_SET , true , jcp ),
920
- verifyWithWeak (tsKey , jcp ));
923
+ verifyWithWeak (tsDigestAlg , DIGEST_PRIMITIVE_SET , true , jcpts ),
924
+ verifyWithWeak (tsSigAlg , SIG_PRIMITIVE_SET , true , jcpts ),
925
+ verifyWithWeak (tsKey , jcpts ));
921
926
} else {
922
927
JarConstraintsParameters jcp =
923
928
new JarConstraintsParameters (chain , null );
@@ -1267,13 +1272,13 @@ private String verifyWithWeak(String alg, Set<CryptoPrimitive> primitiveSet,
1267
1272
boolean tsa , JarConstraintsParameters jcp ) {
1268
1273
1269
1274
try {
1270
- DISABLED_CHECK .permits (alg , jcp );
1275
+ DISABLED_CHECK .permits (alg , jcp , false );
1271
1276
} catch (CertPathValidatorException e ) {
1272
1277
disabledAlgFound = true ;
1273
1278
return String .format (rb .getString ("with.disabled" ), alg );
1274
1279
}
1275
1280
try {
1276
- LEGACY_CHECK .permits (alg , jcp );
1281
+ LEGACY_CHECK .permits (alg , jcp , false );
1277
1282
return alg ;
1278
1283
} catch (CertPathValidatorException e ) {
1279
1284
if (primitiveSet == SIG_PRIMITIVE_SET ) {
@@ -1295,13 +1300,13 @@ private String verifyWithWeak(String alg, Set<CryptoPrimitive> primitiveSet,
1295
1300
private String verifyWithWeak (PublicKey key , JarConstraintsParameters jcp ) {
1296
1301
int kLen = KeyUtil .getKeySize (key );
1297
1302
try {
1298
- DISABLED_CHECK .permits (key .getAlgorithm (), jcp );
1303
+ DISABLED_CHECK .permits (key .getAlgorithm (), jcp , true );
1299
1304
} catch (CertPathValidatorException e ) {
1300
1305
disabledAlgFound = true ;
1301
1306
return String .format (rb .getString ("key.bit.disabled" ), kLen );
1302
1307
}
1303
1308
try {
1304
- LEGACY_CHECK .permits (key .getAlgorithm (), jcp );
1309
+ LEGACY_CHECK .permits (key .getAlgorithm (), jcp , true );
1305
1310
if (kLen >= 0 ) {
1306
1311
return String .format (rb .getString ("key.bit" ), kLen );
1307
1312
} else {
@@ -1318,9 +1323,9 @@ private void checkWeakSign(String alg, Set<CryptoPrimitive> primitiveSet,
1318
1323
boolean tsa , JarConstraintsParameters jcp ) {
1319
1324
1320
1325
try {
1321
- DISABLED_CHECK .permits (alg , jcp );
1326
+ DISABLED_CHECK .permits (alg , jcp , false );
1322
1327
try {
1323
- LEGACY_CHECK .permits (alg , jcp );
1328
+ LEGACY_CHECK .permits (alg , jcp , false );
1324
1329
} catch (CertPathValidatorException e ) {
1325
1330
if (primitiveSet == SIG_PRIMITIVE_SET ) {
1326
1331
legacyAlg |= 2 ;
@@ -1347,9 +1352,9 @@ private void checkWeakSign(String alg, Set<CryptoPrimitive> primitiveSet,
1347
1352
1348
1353
private void checkWeakSign (PrivateKey key , JarConstraintsParameters jcp ) {
1349
1354
try {
1350
- DISABLED_CHECK .permits (key .getAlgorithm (), jcp );
1355
+ DISABLED_CHECK .permits (key .getAlgorithm (), jcp , true );
1351
1356
try {
1352
- LEGACY_CHECK .permits (key .getAlgorithm (), jcp );
1357
+ LEGACY_CHECK .permits (key .getAlgorithm (), jcp , true );
1353
1358
} catch (CertPathValidatorException e ) {
1354
1359
legacyAlg |= 8 ;
1355
1360
}
0 commit comments