2

プログラムが使用している一部の情報は、xml 形式の入力ファイルを使用します。ファイルの構造は次のとおりです。

<?xml version="1.0" encoding="UTF-8"?>
<Envelope xmlns="urn:envelope">
 <MyData Id="MyDataId">
  <!-- some data -->
 </MyData>
 <Signature xmlns="http://www.w3.org/2000/09/xmldsig#">
  <SignedInfo>
   <CanonicalizationMethod Algorithm="http://www.w3.org/TR/2001/REC-xml-c14n-20010315" />
   <SignatureMethod Algorithm="http://www.w3.org/2000/09/xmldsig-more#rsa-sha256" />
   <Reference URI="#MyDataId">
    <Transforms>
     <Transform Algorithm="http://www.w3.org/2000/09/xmldsig#enveloped-signature" />
    </Transforms>
    <DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256" />
    <DigestValue>
     <!-- digest for MyData -->
    </DigestValue>
   </Reference>
   <Reference URI="#KeyInfoId">
    <DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256" />
    <DigestValue>
     <!-- digest for KeyInfo -->
    </DigestValue>
   </Reference>
  </SignedInfo>
  <SignatureValue>
   <!-- signature from SignedInfo data -->
  </SignatureValue>
  <KeyInfo id="KeyInfoId">
   <X509Data>
    <X509Certificate>
     <!-- some certificate -->
    </X509Certificate>
   </X509Data>
  </KeyInfo>
 </Signature>
</Envelope>

参照タグが1つしかない例をいくつか見つけましたが、xmlファイルの残りの部分に複数または参照のみが含まれていません。エンコーディングが XADES-BES であることはわかっています。この種の XML ファイルを検証できる .NET 1.1 コンポーネントを知っている人はいますか? 前もって感謝します。

よろしく、

レネ

4

5 に答える 5

4

表示されている XML は、実際には XAdES 署名ではなく、XMLDSIG です。QualifyingPropertiesノードがないため、これがわかります (XAdES は、 Objectタグ内にある必要があるこのノードをSignatureノードの子として追加します)。

Ricardo が前に言ったように、私が取り組んでいるプロジェクト ( XAdES .Net Project ) は、提供された xml を検証できるはずです。そうでない場合は、Issue Tracker に問題を追加してください (codeplex に登録する必要がある場合がありますが、無料です)。

この時点では、まだライブラリのスケルトンを構築しているため (実際に実装しようとしているのは .NET の XAdES です)、バグや機能の不足が見つかる可能性があります。その場合は、必要な問題を自由に追加してください。

また、ライブラリは .NET Framework 3.5 で開発しているので、本当に 1.1 しか使えない場合は動作しません :( Framework 1.1 以降のセキュリティ層が変更されたため、下位互換性はありません。2.0 を使用して動作すると思いますが、その上。

お役に立てば幸いです。

よろしく、

ルイス・M・ビジャ

于 2010-11-20T10:50:23.323 に答える
1

Microsoft の SignedXml クラスを参照してください

于 2013-11-20T13:00:34.060 に答える
0

このプロジェクトを試してください:

http://xadesnet.codeplex.com/

于 2010-11-18T14:21:03.930 に答える
-1

当社の SecureBlackbox 製品は、.NET (Mono、.NET CF、Silverlight を含む)のXMLDSig、XMLEnc、および XAdES 標準をサポートします。

于 2010-11-18T17:49:14.410 に答える
-1

XAdES 署名を生成する必要がある場合のために、XAdES .NET プロジェクトの 1.0 アルファ版をリリースしました。このバージョンでは、XAdES-BES 署名のサポートが追加され、一部のコード フラグメントが .NET 2.0 Framework と互換性を持つように書き直されました。

このリリースは、 XAdES .NET プロジェクトからダウンロードできます。

それが役に立てば幸い、

ルイス M. ビジャ

于 2010-12-09T22:47:48.940 に答える