0

実際にいくつかの問題があるため、SignerCTest に関するいくつかの情報を入手したいと思います。

私のメインクラスで:

public class XadesTest{

    public static void main(String[] args) throws Exception {

            SignerCTest signerCTest = new SignerCTest();
            System.out.println("signerCTest :  " + signerCTest.toString());
            signerCTest.testSignC();    
    }

私の SignerCTest.class で:

      public class SignerCTest extends SignerTestBase
{
    //@Test
    public void testSignC() throws Exception
    {
        System.out.println("signC");

        Document doc = getTestDocument();
        Element elemToSign = doc.getDocumentElement();

        ValidationDataProvider vdp = new ValidationDataFromCertValidationProvider(VerifierTestBase.validationProviderNist);
        SignerC signer = (SignerC)new XadesCSigningProfile(keyingProviderNist, vdp).newSigner();
        new Enveloped(signer).sign(elemToSign);

        outputDocument(doc, "document.signed.c.xml");


    }
}

そして、私はこれらのエラーがあります:

signerCTest :  xadestest.SignerCTest@345b43
signC
Exception in thread "main" xades4j.providers.ValidationDataException: Cannot validate certificate: unable to find valid certification path to requested target
    at xades4j.providers.impl.ValidationDataFromCertValidationProvider.getValidationData(ValidationDataFromCertValidationProvider.java:54)
    at xades4j.production.SignerC.getFormatSpecificSignatureProperties(SignerC.java:70)
    at xades4j.production.SignerBES.sign(SignerBES.java:200)
    at xades4j.production.Enveloped.sign(Enveloped.java:69)
    at xadestest.SignerCTest.testSignC(SignerCTest.java:45)
    at xadestest.XadesTest.main(XadesTest.java:84)
Caused by: xades4j.providers.CannotBuildCertificationPathException: unable to find valid certification path to requested target
    at xades4j.providers.impl.PKIXCertificateValidationProvider.validate(PKIXCertificateValidationProvider.java:142)
    at xades4j.providers.impl.ValidationDataFromCertValidationProvider.getValidationData(ValidationDataFromCertValidationProvider.java:51)
    ... 5 more
Java Result: 1
BUILD SUCCESSFUL (total time: 17 seconds)

しかし、証明書はここにあります:

D:\NetBeansProjects_MYSIGN\XadesTest\src\test\cert\my\LG.pfx

D:\NetBeansProjects_MYSIGN\XadesTest\src\test\cert\csrc.nist\test4.p12

それで... わかりません。誰でも私を助けることができますか?

ありがとう、ウィリアム。

4

1 に答える 1

2

使用しているテストは、NIST からの証明書のみに依存しています。

CertificateValidationProviderテストが使用している ( )VerifierTestBase.validationProviderNistでは、証明書失効チェックが有効になっています。また、csrc.nistフォルダーCertStoreの内容を反映した で作成されることに注意してください。これは、csrc.nistフォルダーに CRL およびその他の中間証明書を含める必要があることを意味します。これにより、プロバイダーは証明書チェーンを構築し、失効ステータスを確認できます。

于 2012-09-01T16:35:23.777 に答える