Skip to content

Commit 8b4326f

Browse files
committed
Include external signer verification test
1 parent 3b57d98 commit 8b4326f

File tree

1 file changed

+21
-2
lines changed

1 file changed

+21
-2
lines changed

pkix/src/test/java/org/bouncycastle/cms/test/NewSignedDataTest.java

Lines changed: 21 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3522,14 +3522,33 @@ private static void implTestVerifySignedData(byte[] signedData, SampleCredential
35223522
{
35233523
CMSSignedData sd = new CMSSignedData(signedData);
35243524

3525-
assertTrue(sd.verifySignatures(new SignerInformationVerifierProvider()
3525+
// Verify using the certificate from the supplied credentials
3526+
SignerInformationVerifierProvider verifierProvider = new SignerInformationVerifierProvider()
35263527
{
35273528
public SignerInformationVerifier get(SignerId signerId)
35283529
throws OperatorCreationException
35293530
{
35303531
return new JcaSimpleSignerInfoVerifierBuilder().setProvider(BC).build(credentials.getCertificate());
35313532
}
3532-
}));
3533+
};
3534+
3535+
// External signer verification
3536+
{
3537+
SignerInformationStore signers = sd.getSignerInfos();
3538+
3539+
Iterator it = signers.getSigners().iterator();
3540+
while (it.hasNext())
3541+
{
3542+
SignerInformation signer = (SignerInformation)it.next();
3543+
3544+
SignerInformationVerifier verifier = verifierProvider.get(signer.getSID());
3545+
3546+
assertTrue(signer.verify(verifier));
3547+
}
3548+
}
3549+
3550+
// Built-in signer verification
3551+
assertTrue(sd.verifySignatures(verifierProvider));
35333552
}
35343553

35353554
private static class TestCMSSignatureAlgorithmNameGenerator

0 commit comments

Comments
 (0)