Kuverteringsprofil XHE

Anslutning för leverantörer av meddelandesystem

Beskrivning av teknisk kuverteringsprofil för XHE.

Inledning

Denna kuverteringsprofil beskriver teknologiskt hur ett meddelande paketeras och kuverteras på ett sätt som gör det möjligt att ha en rationell hantering i verksamheters system, applikationer och accesspunkter, vilka inte är beroende av ett meddelandes interna format och struktur. Kuverteringsprofilen ger dessutom möjligheter att signera kuvertet och att kryptera nyttolasten (verksamhetsmeddelandet).

Kuvertet baseras på en standard från OASIS BDXR-kommittén, vilken är samma organisation som står bakom standarderna SMP, BDXL/SML och AS4. XHE kuvertering är baserad på XML teknologin.

Detta dokument beskriver enbart avvikelser från, restriktioner av och tillägg till de underliggande eDelivery specifikationer som ska användas för kommunikation inom transportinfrastrukturen. För detaljerad information hänvisas till underliggande specifikationer.

Figur 1 Illustration av kuverteringsprofilens fokus. Se bilden i ett större format.

Kuverteringsprofilen använder följande tekniska specifikationer:

Målgrupper

Detta dokument syftar till att stödja följande intressenter i deras arbete, dess informationsbehov samt ge svar på vanligt förekommande frågeställningar.

Intressenter:

  • IT-arkitekter och utvecklare
    • Som utvärderar, analyserar, designar, bygger, och testar programvaror.

Referenser

Referens till

Länk

 

Exchange Envelope Header (XHE) Version 1.0, OASIS

https://docs.oasis-open.org/bdxr/xhe/v1.0/xhe-v1.0-oasis.html

 

XML Encryption [XMLENC]

https://www.w3.org/TR/xmlenc-core1/

 

XML Signature [XMLDIGSIG]

https://www.w3.org/TR/xmldsig-core1/ Länk till annan webbplats.

 

XML Signature Best Practices [SIGPRC]

https://www.w3.org/TR/xmldsig-bestpractices Länk till annan webbplats.

 

XML Path Language (XPath) 3.0 [XPATH]

https://www.w3.org/TR/xpath-30 Länk till annan webbplats.

 

IANA Media Types [IANA]

https://www.iana.org/assignments/media-types/media-types.xhtml

 

Federationsspecifika anpassningar

Denna sida innehåller ett par regler, krav eller principer som en federation kan anpassa i federationens anpassningar mot eDelivery plattformen (federationsdeklarationen). Dessa anpassningspunkter är numrerade enligt formen [A1], [A2], [A3] osv.

Meddelandemodell enligt XHE

Ett meddelande med dess metadata och nyttolast kuverteras enligt det XML-baserade regelverket XHE utgiven av OASIS.

I det fall meddelandet signeras och krypteras i deltagarens verksamhetssystem/meddelandetjänst så måste meddelandekuvertering utföras där. I fall då signering och kryptering inte nyttjas kan meddelandekuvertering alternativt utföras i accesspunktsfunktionen.

Informationsmodell

Tabellen nedan beskriver de uppgifter som ett kuvert innehåller samt deras placering (XPATH) i syntaxen XHE. Mer detaljer kring strukturen på XHE beskrivs i kapitlet Syntaxmappning.

Informationsentitet

Beskrivning (placering i parentes)

Meddelandets identitet

Unik identifiering av meddelandet.

(/x:XHE/xha:Header/xhb:ID)

Tid för utfärdande

Datum och klockslag då meddelandet skapades.

(/x:XHE/xha:Header/xhb:CreationDateTime)

Ursprunglig avsändare

Den ursprungliga avsändarens identifierare. Se kodlista ”Identifieringsschema för deltagare, schema typ”.

(/x:XHE/xha:Header/xha:FromParty/xha:PartyIdentification/xhb:ID)

Ex: <ID schemeID="iso6523-actorid-upis">{avsändarens identifierare}</ID>

Avsedd mottagare

Den avsedda mottagarens identifierare.

Se kodlista ”Identifieringsschema för deltagare, schema typ”.

(/x:XHE/xha:Header/xha:ToParty/xha:PartyIdentification/xhb:ID )

Ex: <ID schemeID="iso6523-actorid-upis">{mottagarens identifierare}</ID>

Uppgift om SMP DocumentIdentifier (Meddelandets typ)

En identifierare som används av avsändande accesspunkt för att hämta korrekt tjänstemetadata (teknisk mottagningsadress) från SMP. Identifiering av meddelandets typ och identifieringssystem (scheme). Se kodlista ”Typer av meddelanden”

(/x:XHE/xha:Header/xha:BusinessScope/xha:BusinessScopeCriterion[xhb:BusinessScopeCriterionTypeCode="DOCUMENTID"]/xhb:BusinessScopeCriterionValue)

Uppgift om SMP ProcessIdentifier

En identifierare som används av avsändande accesspunkt för att hämta korrekt tjänstemetadata (teknisk mottagningsadress) från SMP och identifieringssystem (scheme). Se kodlista ”Typer av processer”

(/x:XHE/xha:Header/xha:BusinessScope/xha:BusinessScopeCriterion[xhb:BusinessScopeCriterionTypeCode="PROCESSID"]/xhb:BusinessScopeCriterionValue)

Uppgift om Federation

En identifierare som informerar avsändande accesspunkt vilken federation som meddelandet ska förmedlas inom. Accesspunkten kan använda uppgiften för att validera att den företräder Deltagaren i aktuell federationen. Se Kodlistor – Tekniska specifikationer..

(/x:XHE/xha:Header/xha:BusinessScope/xha:BusinessScopeCriterion[xhb:BusinessScopeCriterionTypeCode="FEDERATIONID"]/xhb:BusinessScopeCriterionValue)

Nyttolast

Det verksamhetsmeddelande som kuverteras. Om kryptering end-to-end används är nyttolasten krypterad och strukturerad enligt XML Encryption.

(/x:XHE/xha:Payloads/xha:Payload/xha:PayloadContent)

Nyttolastens tekniska format

Uppgift om den syntax/format som nyttolasten har (såsom EDIFACT, SDK XML-format, OASIS UBL XML-format osv)

(/x:XHE/xha:Payloads/xha:Payload/xhb:DocumentTypeCode)

(/x:XHE/xha:Payloads/xha:Payload/xhb:ContentTypeCode)

Signatur av meddelandet

Signatur av kuvertet.

(/x:XHE/Signature)

Syntaxmappning

Kuvertet baseras på en XHE teknisk specifikation från OASIS BDXR-kommittén. Detaljer om elementens datatyper och namnrymder framgår i standarden och dess scheman [XHE].

[a] Ett kuvert måste följa de kardinalitetsbegränsningar, instruktioner och regler som beskrivs i syntaxbindningen.

 

Kard

Elementnamn

Instruktion/regel

XHE

Rotelement för kuvertet

1..1

• xhb:XHEVersionID

Versionen på XHE-schemat. Ska sättas till 1.0

1..1

• xhb:CustomizationID

Identifiering av denna profil av XHE-formatet. Ska sättas till ”urn:fdc:digg.se:edelivery:xhe:1”

1..1

• xha:Header

 

1..1

• • xhb:ID

Meddelandets identitet ska vara globalt unikt och i UUID-format.

1..1

• • xhb:CreationDateTime

Datum och klockslag då meddelandet skapats. Datumformatet ska inkludera tidzon (där Z anges för UTC och övriga tidzoner indikeras med avvikelse från UTC enligt formatet ”+/- timmar”. Exempel: ”2021-03-24T17:22:10+01:00”

1..1

• • xha:BusinessScope

Business scope används för att identifiera den tjänstmetadata som är nödvändig för att skicka meddelandet.

5..5

• • • xha:BusinessScopeCriterion

Uppgifter om nycklar för identifiering av mottagningstjänst i SMP. Elementet består av två underliggande element som bildar värdepar (typkod+värde). Värdepar anges 5 gånger, en gång för respektive typ (DOCUMENTID, DOCUMENTID_SCHEME, PROCESSID, PROCESSID_SCHEME och FEDERATIONID.

1..1

• • • • xhb:BusinessScopeCriterionTypeCode

DOCUMENTID (motsvarnade DocumentIdentifier i SMP)

DOCUMENT_SCHEME (motsvarar DocumentIdentifier/@scheme i SMP)

PROCESSID (motsvarande ProcessIdentifier i SMP)

PROCESSID_SCHEME (motsvarar ProcessIdentifier/@scheme i SMP)

FEDERATIONID (indikerar vilken federation/SMP som ska användas för att identifiera mottagningstjänst)

1..1

• • • • xhb:BusinessScopeCriterionValue

Värdet som svarar mot typkoden.

1..1

• • xha:FromParty

Avsändande Deltagares identifiering

1..1

• • • xha:PartyIdentification

 

1..1

• • • • xhb:ID

Identifierare för deltagaren

@schemeID ska vara ”iso6523-actorid-upis”

1..1

• • xha:ToParty

Mottagande Deltagares identifiering

1..1

• • • xha:PartyIdentification

 

1..1

• • • • xhb:ID

Identifierare för deltagaren

@schemeID ska vara ”iso6523-actorid-upis”

1..1

• xha:Payloads

 

1..1

• • xha:Payload

Struktur som beskriver nyttolast.

1..1

• • • xhb:DocumentTypeCode

Information om nyttolastens syntax/format. Om den kuverterade nyttolasten är i XML-format ska

namnrymd och lokalt namn på rotelementet anges i formatet expanded qualified name, EQName [1][XPATH].

Exempel:

Q{urn:oasis:names:specification:ubl:schema:xsd:ApplicationResponse-2}ApplicationResponse

 

Om annat format än XML används ska kodvärdet överenskommas inom tillämpningsområdet.

1..1

• • • xhb:ContentTypeCode

Formatets innehållstyp (content type) enligt IANA Media Types koder [IANA]. För nyttolast som är XML-baserade ska koden application/xml anges.

0..1

• • • xhb:HandlingServiceID

En identifiering av mottagande Deltagares interna funktion/modul/tjänst som detta kuvert ska behandlas i. Värdet för detta element behöver överenskommas bilateralt mellan Deltagarna. Mottagande Deltagare måste ha en rutin för att omhänderta meddelanden även i det fall uppgiften saknas (men förväntats).

1..1

• • • xhb:InstanceEncryptionIndicator

Om nyttolasten är krypterad ska detta element sättas till ”true”, i annat fall ”false”. Kryptering är aktuellt då utökade säkerhetsmekanismer för end-to-end används.

1..1

• • • xha:PayloadContent

Nyttolasten i klartext eller i krypterad form genom användning av XML-Encryption.

Nyttolast som inte är XML-baserad ska anges i Base64-kodad form.

0..n

• ds:Signature

Avsändande Deltagares signatur på meddelandekuvertet och dess innehåll (då utökade säkerhetsmekanismer för signering används).

Namnrymder som används i kuvertet

Följande XML namnrymder används i kuvertet. Prefix som används i syntaxbindningen (xha,xhb,ds) visar vilken namnrymd som respektive element hör hemma i.

Namnrymd

Kommentar

http://docs.oasis-open.org/bdxr/ns/XHE/1/ExchangeHeaderEnvelope

Rotelements namnrymd. Default i syntaxbeskrivningen

http://docs.oasis-open.org/bdxr/ns/XHE/1/AggregateComponents

Prefix ”xha” i syntaxbeskrivningen i kapitel 4.

http://docs.oasis-open.org/bdxr/ns/XHE/1/BasicComponents

Prefix ”xhb” i syntaxbeskrivningen

http://www.w3.org/2000/09/xmldsig#

Prefix ”ds” i syntaxbeskrivningen

Tomma XML-element och attribut

Ett element/attribut anses vara tomt om det inte innehåller något textinnehåll och inte några underliggande XML-element. Element och attribut som uteslutande innehåller ”whitespace” (mellanslag, tab-tecken eller radbrytning) är också att betrakta som tomt.

Ett element/attribut anses vara tomt om det inte innehåller något textinnehåll och inte några underliggande XML-element. Element och attribut som uteslutande innehåller ”whitespace” (mellanslag, tab-tecken eller radbrytning) är också att betrakta som tomt.

[a] 	Tomma element och attribut ska inte anges. 

Exempel på tomma element:

<xhb:HandlingServiceID>     </xhb:HandlingServiceID><xhb:HandlingServiceID></xhb:HandlingServiceID><xhb:HandlingServiceID />

Exempel på tomt attribut:

< xhb:ID schemeID=””>

Valideringsregler för syntax

Denna kuverteringsprofil använder XML-standarden XHE inklusive dess XSD-scheman.

[a] 	Ett kuvert som inte validerar korrekt gentemot XHE XSD-scheman är inte att betrakta som följsamt gentemot denna specifikation.

En uppsättning valideringsregler finns definierade för att kontrollera att ett kuvert är följsamt gentemot denna specifikation. Reglerna finns även representerade som schematron-regler för maskinell och automatisk validering.

[b] 	Ett kuvert som bryter mot någon av valideringsreglerna är inte att betrakta som följsamt gentemot denna specifikation.

Regel-ID

Regel

Allvarlighet

R1-XHE

Endast XML-element och attribut som angivits i denna specifikation får användas

Fatal

R2-XHE

Tomma element eller attribut får inte anges

Fatal

R3-XHE

CustomizationID måste ha korrekt värde enligt kodlista

Fatal

R4-XHE

Ett BusinessScopeCriterionTypeCode ska anges med koden DOCUMENTID

Fatal

R5-XHE

Ett BusinessScopeCriterionTypeCode ska anges med koden DOCUMENTID_SCHEME

Fatal

R6-XHE

Ett BusinessScopeCriterionTypeCode ska anges med koden PROCESSID

Fatal

R7-XHE

Ett BusinessScopeCriterionTypeCode ska anges med koden PROCESSID_SCHEME

Fatal

R8-XHE

Ett BusinessScopeCriterionTypeCode ska anges med koden FEDERATIONID

Fatal

R9-XHE

XHEVersionID ska ha värde 1.0

Fatal

R10-XHE

ID för FromParty ska ha attributet 'iso6523-actorid-upis'

Fatal

R11-XHE

ID för ToParty ska ha attributet 'iso6523-actorid-upis'

Fatal

R12-XHE

PayloadContent ska innehålla elementet 'EncryptedData' om InstanceEncryptionIndicator är 'true'

Fatal

R13-XHE

PayloadContent ska inte innehålla elementet 'EncryptedData' om InstanceEncryptionIndicator är 'false'

Fatal

R14-XHE

Element och attribut ska anges i enlighet med den tillåtna kardinalitet som framgår i syntaxmappningen[1].

Fatal

Kryptering och signering av meddelande

Denna kuverteringsprofil har stöd för försändelser (nyttolast) som krypterats och signerats mellan Deltagarna. Användning av kryptering och signering mellan Deltagare kräver att båda parter är förberedda och att det finns överenskommelse (mellan parterna eller inom federationen som helhet) om att dessa utökade säkerhetsmekanismer ska användas.

Certifikatspubliceringstjänsten

Certifikat för signering och kryptering finns tillgängliga genom slagning i Certifikatspubliceringstjänsten eller genom bilaterala överenskommelser mellan avsändande och mottagande Deltagare.

Ordningsföljd avseende signering och kryptering

Då signering och kryptering används ska kryptering av nyttolasten göras först och därefter signeras meddelandekuvertet i sin helh

På motsvarande sätt ska mottagaren kontrollera meddelandekuvertets signatur först och därefter dekryptera den kuverterade nyttolasten.

Om signaturen inte validerar korrekt ska dekryptering inte utföras.

Specifika krav på utgivare av signerings- och krypteringscertifikat

Denna specifikation ställer inte några formkrav (nyckellängd, utgivare osv) på certifikaten som används.

En federationsoperatör kan i sin federationens anpassningar mot eDelivery plattformen ställa följande specifika krav avseende certifikat:

  • Anpassning [A1]: Formkrav på certifikat (nyckellängd, användning av attribut osv)
  • Anpassning [A2]: Certifikatsutgivare som kan användas
  • Anpassning [A3]: Om det ska vara separata certifikat för signering och kryptering eller om samma certifikat ska användas i båda syftena.

Kryptering av nyttolast - konfidentialitet

När kryptering av meddelande används ska det göras i enlighet med W3C-standarden ”XML Encryption” [XMLENC].

Standarden beskriver både processen för att kryptera XML-element och hur krypterade data representeras i XML-format. Schemat för XML Encryption är inte inkluderat i XHE utan kan laddas ner separat.

Kryptering och dekryptering görs med den avsedda mottagarens publika respektive privata nyckel. Mottagarens publika nyckel måste vara tillgänglig för den som utför krypteringen.

Krypteringen genomförs genom att en tillfällig meddelandenyckel skapas och används för att kryptera meddelandet. Denna meddelandenyckel krypteras sedan med mottagarens publika nyckel. Det innebär att det finns två block av krypterat data i XML-strukturen, den krypterade meddelandenyckeln och det krypterade meddelandet. När mottagaren ska läsa meddelandet används mottagarens privata nyckel för att dekryptera meddelandenyckeln som i sin tur används för att dekryptera det krypterade meddelandet.

I klartextform placeras nyttolasten i XHE-elementet PayloadContent. Detta element är av typen xsd:any vilket innebär att det inte är bundet till ett specifikt typ av XML-meddelandeformat. När nyttolasten i klartext krypteras enligt XML Encryption så blir resultatet en ny XML-struktur som innehåller information om nycklar, krypteringsalgoritmer mm. Denna XML-struktur, som har rotelement EncryptedData, ersätter klartextnyttolasten i PayloadContent.

Sårbarhet i XML Encryption vid användning av blockchiffer utan integritetsskydd

En sårbarhet är identifierad då icke integritetsskyddade blockchiffer-algoritmer används tillsammans med XML Encryption. Sårbarheten kan utnyttjas genom en så kallad ”oracle attack” där en anropande applikation upprepande gånger och på ett systematiskt sätt skickar ett krypterat meddelande för dekryptering där det krypterade meddelandet modifieras med mycket små förändringar varje gång. Genom att utvärdera svarsmeddelanden som returneras från den dekrypterande applikationen kan anropande applikation till slut dra slutsatser om utseendet av den klartext som krypterades. Det finns ett antal motåtgärder för denna typ av sårbarhet varav några används i denna specifikation.

  1. Innan dekryptering görs så kontrolleras meddelandets signatur. Om signaturvalidering misslyckas så förkastas meddelandet och inget försök att utföra dekryptering på meddelandet görs.
  2. Då meddelandet inte dekrypteras vid felaktig signatur så returneras heller ingen felkod som informerar om resultat av dekryptering som kan användas vid en ”oracle attack”.

Problemet med blockchiffer-algoritmer och XML Encryption kan lösas genom att använda krypto med integritetsskydd, så som AES GCM, som introducerades i XML Encryption version 1.1. När AES GCM används utökas krypteringsskyddet med ett integritetsskydd som kontrollerar att krypterade data inte förändrats innan dessa dekrypteras. På så sätt uppnås samma skydd vid kryptering som uppnås genom att som ovan signera krypterade data och att kontrollera denna signatur innan dekryptering.

Då Microsofts ”.Net Framework” inte har stöd för att hantera XML Encryption 1.1-standarden gör DIGG idag bedömningen att AES GCM introducerar stor komplexitet för implementationer som baseras på Microsofts ramverk. Vidare bedömer DIGG att de motåtgärder som finns inbyggda i eDelivery plattformen gör att blockchiffer-algoritmer kan användas i detta sammanhang.

Struktur för XML Encryption – EncryptedData

För information om XML namnrymder, se [XMLENC].

Kard

Elementnamn

Kommentar

xenc:EncryptedData

Rotelement för den krypterade nyttolasten

1..1

• xenc:EncryptionMethod/@Algorithm

Krypteringsmetod

1..1

• ds:KeyInfo

Information om sessionsnyckel

1..1

• • xenc:EncryptedKey

 

1..1

• • • xenc:EncryptionMethod/@Algorithm

Krypteringsalgoritm av sessionsnyckel

1..1

• • • ds:KeyInfo

 

1..1

• • • • ds:X509Data

 

1..1

• • • • • ds:X509Certificate

Certifikat som använts vid kryptering av sessionsnyckel

1..1

• • • xenc:CipherData

 

1..1

• • • • xenc:CipherValue

Krypterad sessionsnyckel

1..1

• xenc:CipherData

 

1..1

• • xenc:CipherValue

Krypterad nyttolast

Parametersättning XHE

Elementet Payload innehåller vissa metadata om det meddelande som skickas.

[a]	När kryptering används ska det indikeras genom att elementet InstanceEncryptionIndicator sätt till ”true”

Exempel:

<InstanceEncryptionIndicator>true</InstanceEncryptionIndicator>

Parametersättning av XML Encryption

Parameter/algoritm

Värde

Typ av objekt som krypteras

http://www.w3.org/2001/04/xmlenc#Element Länk till annan webbplats.

eller

http://www.w3.org/2001/04/xmlenc#Content Länk till annan webbplats.

Krypteringsalgoritm för sessionsnyckel

http://www.w3.org/2001/04/xmlenc#rsa-oaep-mgf1p Länk till annan webbplats.

Krypteringsalgoritm för nyttolasten

http://www.w3.org/2001/04/xmlenc#aes256-cbc

Typ av krypterat innehåll

[a] När nyttolasten som krypteras är XML-baseras ska innehållstypen anges till ”Element”.

[a] När nyttolasten som krypteras är XML-baseras ska innehållstypen anges till ”Element”.

Exempel:

<xenc:EncryptedData Type="http://www.w3.org/2001/04/xmlenc#Element">
[b]	När nyttolasten som krypteras inte är XML-baserad ska innehållstypen anges till ”Content”.

Exempel

<xenc:EncryptedData Type="http://www.w3.org/2001/04/xmlenc#Element">
Kryptering av sessionsnyckel

Sessionsnyckeln krypteras med hjälp av mottagarens publika nyckel.

Algoritmen ”rsa-oaep-mgf1p” ska användas för kryptering av den tillfälliga symmetriska sessionsnyckeln. 

Exempel:

<xenc:EncryptionMethod Algorithm="http://www.w3.org/2001/04/xmlenc#rsa-oaep-mgf1p">
Kryptering av meddelandet

Meddelandet krypteras med hjälp av sessionsnyckeln.

[a]	Algoritmen ”AES256” ska användas för kryptering av meddelandet. 

Exempel:

<xenc:EncryptionMethod Algorithm=" http://www.w3.org/2001/04/xmlenc#aes256-cbc">
Inkludering av X509 Certifikat

Syftet med att inkludera certifikatet är att förenkla hantering vid certifikatsbyten samt hantering av arkiverade meddelanden.

[a]	Den publika delen av det certifikat som använts vid kryptering ska inkluderas i PEM-format (BASE64-kodat). 

Exempel:

<KeyInfo>  <X509Data>    <X509Certificate>MIIEY ... nk=</X509Certificate> (Exemplet är nedkortat)  </X509Data></KeyInfo></Signature>

Signering av kuvert – undertecknande

När signering av meddelande används ska det göras i enlighet med W3C-standarden ”XML Signature” [XMLDIGSIG].

Standarden beskriver både processen för att skapa elektronisk signatur och hur den representeras i XML-format.

W3C har även publicerat ”Best Practices” [SIGPRC] som ger goda råd för behandlingen av digitala signaturer.

I XML Signature beskrivs flera olika sätt knyta signaturen till den nyttolast som signeras. Denna kuverteringsprofil nyttjar metoden ”Enveloped Signature” vilket innebär att signaturen läggs in som en del i XML-strukturen.

Vid validering måste hela XML-strukturen överensstämma med den XML som signerades. För att försäkra sig om att XML-strukturen återges på samma sätt både vid signering och vid validering används en kanoniseringstransformering och vid validering exkluderas signaturen från XML-strukturen.

[a] Mottagaren ska kontrollera signeringscertifikatets giltighet och att det inte är spärrat.

[b] Om Certifikatspubliceringstjänsten används så ska signeringscertifikatet också jämföras med det certifikat som publicerats för ändamålet.

Jämförelsen görs för att försäkra sig om att signeringscertifikatet som använts är det som är registrerat för Deltagaren i Certifikatspubliceringstjänsten.

Struktur för XML Digital signature

Kard

Elementnamn

Kommentar

ds:Signature

Rotelement för signaturen

1..1

• ds:SignedInfo

 

1..1

• • ds:CanonicalizationMethod/@Algorithm

Kanoniseringsmetod

1..1

• • ds:SignatureMethod/@Algorithm

Signeringsalgoritm

1..1

• • ds:Reference/@URI

 

1..1

• • • ds:Transforms

 

1..1

• • • • ds:Transform/@Algorithm

Transformeringsmetod

1..1

• • • ds:DigestMethod/@Algorithm

Hashningsmetod

1..1

• • • ds:DigestValue

 

1..1

• ds:SignatureValue

Signaturen

1..1

• ds:KeyInfo

 

1..1

• • ds:X509Data

 

1..1

• • • ds:X509Certificate

Certifikat som använts för signatur

Parametersättning av XML Digital Signature

Följande parametrar ska användas vid användning av [XMLDIGSIG]

Parameter/algoritm

Värde

Kanoniseringsmetod

Obligatoriska metoder att stödja enligt [XMLDIGSIG]

· Canonical XML (om kanonisering utan kommentarer):

o URI: http://www.w3.org/TR/2001/REC-xml-c14n-20010315 Länk till annan webbplats.

· Canonical XML with Comments (om kanonisering med kommentarer):

o URI: http://www.w3.org/TR/2001/REC-xml-c14n-20010315#WithComments

Signeringsalgoritm

http://www.w3.org/2001/04/xmldsig-more#rsa-sha256

Transformeringsmetod

http://www.w3.org/2000/09/xmldsig#enveloped-signature

Hashningsmetod

http://www.w3.org/2001/04/xmlenc#sha256

Kanoniseringsalgoritm
[a]	Kanoniseringsmetod ska nyttja någon av de algoritmer som anges som obligatoriska att stödja i [XMLDIGSIG]

Exempel:

<CanonicalizationMethod Algorithm="http://www.w3.org/TR/2001/REC-xml-c14n-20010315"/>
Signeringsalgoritm
[a]	Signeringsalgoritm ska vara ”RSAwithSHA256”.

Exempel:

<SignatureMethod Algorithm="http://www.w3.org/2001/04/xmldsig-more#rsa-sha256"/>
Transformeringsmetod
[a]	Signaturen ska inkluderas i kuvertets XML-struktur genom att följa ”Enveloped”-metoden.

Exempel:

<Transform Algorithm="http://www.w3.org/2000/09/xmldsig#enveloped-signature"/>
Hashningsmetod
[a]	Hashvärdet ska beräknas utifrån XML-strukturen enligt algoritmen ”SHA256”.

Exempel:

<DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256"/>
Inkludering av X509 Certifikat
[a]	Den publika delen av det certifikat som använts vid signering ska inkluderas i PEM-format (BASE64-kodat).

Exempel:

<KeyInfo>  <X509Data>    <X509Certificate>MIIEY ... nk=</X509Certificate> (Exemplet är nedkortat)  </X509Data></KeyInfo></Signature>
Hjälpte denna information dig?

Ditt svar hjälper oss att förbättra sidan

Senast uppdaterad: