0

Windows キーストアに接続する必要がある xml 検証アプリケーション (Java) を開発しています。現時点では、次のメッセージで立ち往生しています: CannotBuildCertificationPathExecption: トラスト アンカー キーストアが初期化されていません。

これで、次の例を使用してストアからキーを取得できました:http://stackoverflow.com/questions/5476974/java-access-to-intermediate-cas-from-windows-keystores そして、XAdES4J を使用することに希望を与えてくれました。

私が使用しているコードは次のとおりです。

trustAnchors = KeyStore.getInstance("Windows-MY");  
certValidator = new PKIXCertificateValidationProvider(trustAnchors, false); 
p = new XadesVerificationProfile(certValidator); 
v = p.newVerifier();

Element sigElem = (Element) signature.item(0); //Which contains the complete signature segment from the xml

XAdESVerificationResult r;  
SignatureSpecificVerificationOptions options = new SignatureSpecificVerificationOptions().useBaseUri("http://www.ietf.org/rfc/");

r = v.verify(sigElem, options);

証明書は x509 です。暗号化方式 XAdES-t。

Windowsキーストアとの信頼できる接続を取得する方法を知っている人はいますか? SignatureSpecificVerificationOptions に関する情報はありますか。使用する必要がある実際の設定との関連でマニュアルを理解するのは本当に難しいと思います..

4

1 に答える 1

1

これは Windows キーストアですが、ロードする必要があります。

trustAnchors.load(null);

保護パラメーターが必要な場合があるため、PKIXCertificateValidationProviderはそれを実行できません。

さらに、信頼できる証明機関にアクセスするために、"Windows-MY" の代わりに "Windows-ROOT" を使用することもできます。

于 2012-10-26T20:35:22.917 に答える