Xmldsig - - - xml, honlap directum közösség

Megjegyzem számos funkciót XMLDSig méret:

2. A különböző részein az XML-dokumentum által aláírt több előadó.

3. XML-aláírás lehet a különböző szintek vonatkozásában a aláírta a projektben:







  • a szerkezet az aláírás lehet URI (egységes erőforrás-azonosító);
  • XML-aláírás lehet ugyanazon a szinten, mint amelyet az anyavállalat;
  • XML-aláírás által aláírt belső egység;
  • Jegyzett csomópont lehet az XML-aláírás szerkezetét.

4. érvényességének ellenőrzésére EP hozzáférést igényel aláírását a tárgy.

A szerkezet a SOAP-Covert

Általában az üzenet tartalmaz egy fejlécet és egy test: Fejes és Body. Fejléc tartalmazza a metaadatok és adatok Body. XML-aláírás kerül a fejléc csomópontot.

Xmldsig - - - xml, honlap directum közösség

Kriptográfiai algoritmusok és a gyűjtésről.

Azáltal rugalmasságának XML szabályok kidolgozásába, ugyanazt a szerkezetet a dokumentumot, és az ugyanazon információ lehet bemutatni különféle XML-dokumentumokat. Vegyünk két dokumentumot:

Egy logikai szempontból ezek egyenlőek, vagyis azonos XML-sémát. De XML-fájlok ilyen adatok nem tartalmazzák az azonos karaktersorozat, ami eltérő eredményekre vezethetnek, mint például a megszerzése egy hash értéket.

SIRCrypt könyvtár

Megvalósítása XML aláírás directum írták COM-könyvtár belső kotorory leírja 3. osztály: Hasher. Aláíró és XMLCanonicalizer megszerezni a hash értékét EF és a gyűjtéssel XML-dokumentumok, ill.

A működés a könyvtár szükséges Crypto PRO CSP (tesztelt változatok Crypto PRO CSP 3.6.6497 KC2) és .NET (legalább 2,0).

Könyvtár regisztrációt végzünk a következő paranccsal:

> Regasm.exe "út a dll" / codebase / tlb







Hasher objektum számítástechnikai hash GOST

Mező tartalma (típus „karakterlánc”) és HashValueAsBase64 (típus „karakterlánc”), valamint a számítási módjára Hash () hash függvény. Kiszámításához szükséges jelenti tartalom. okozhat Hash () módszer. ami HashValueAsBase64 területen van írva a hash Base64.

Aláíró kifogást megszerezni az értéke VC GOST

Mező tartalma (típus 'karakterlánc'), ContainerName (típus 'karakterlánc'), CertificateAsPEM (típus 'karakterlánc'), BESignatureValueAsBase64 (típus 'karakterlánc') jel () metódust. Miután inicializálása objektumot, akkor kell jelentenie tartalom (adat aláírás), ContainerName (privát kulcs tanúsítvány tároló nevét), hívójel () metódust. Ezt követően, a doboz kap CertificateAsPEM megfelelő privát kulcsot a tanúsítvány Base64, és a helyszínen BESignatureValueAsBase64 aláírás értéket Base64-line.

XMLCanonicalizer az XML kanonizálásról

Ez tartalmazza mezők XMLContent (típus 'karakterlánc'), CanonicalXML (típus 'karakterlánc'), C14NExc () metódust. A kanonikus XML kell jelenti XMLContent. okozhat C14NExc (). kap egy eredményt a területen CanonicalXML.

XML-Signature Structure

Xmldsig - - - xml, honlap directum közösség

Aláírás létrehozására a következő: először is, az alapja szappan-Pack, Fejes és Body csomópontokat. Body tele van adatokkal és attribútum WSU egészül ki: ID = „Body” - által aláírt azonosító adatokat.

Ezután meg kell készíteni a szerkezet a biztonsági és tartalmazza azt a fejléc.

Kitöltése biztonsági szerkezet a következő sorrendben:

  1. Kezdődik hash értéket Body csomópont a kanonikus formában, és helyezzük DigestValue csomópont.
  2. SignedInfo csomóponttól a kanonikus formában, által aláírt az EP. Eredmény Base64-line formában éri el a SignatureValue csomópontot.
  3. A nyilvános kulcsú tanúsítványt, amely az aláíró végeztük helyezzük a készüléket BinarySecurityToken Base64 húr.

Annak érdekében, hogy ellenőrizze a így kialakított EP szükséges, hogy minden a lépéseket fordított sorrendben, nevezetesen:

  1. kap a kanonikus formája SignedInfo elem.
  2. Használata rezltate előző lépésben ellenőrzi, hogy az érték a SignatureValue EP csomóponton a nyilvános kulcs tanúsítványt. Ebben a szakaszban csak helyességét EP, amely nem garantálja, hogy az adatok.
  3. Ha a teszt sikeres valóság FL, míg hash a csomópont és a hash DigestValue a csomópont az adatokat. Ha nem egyenlők, akkor az aláírt adatok megváltoztak, és az egész EP érvénytelen.

Alkalmazási példa

Csomagolás tervezése, könyvtár

Minta XML aláírásra ISBL (forgatókönyv): dev.zip (5,95 KB)

Tartós használatra kód, amely végrehajtja a tipikus aláírását a kész SOAP boríték, hozott SignSOAP () függvényt.

Aláírására használt tanúsítvány az aktuális felhasználó személyes tanúsítványtárolójába.