wetzoeker

Artikel 2.8.1 — Integriteit exportbericht Regeling specificaties en typegoedkeuring boordcomputer taxi

Integriteit exportbericht

De boordcomputer kent zes gegevensleveringen, te weten ‘Ritadministratie’, ‘Arbeids-, rij- en rusttijden’, ‘Coördinaten’, ‘Gebeurtenis’, ‘Onderzoek’ en ‘Chauffeurskaartdata’. Deze gegevensleveringen worden elk in een exportbericht vanuit de boordcomputer overgebracht. Dit exportbericht is een XML bericht dat bestaat uit een gegevenslevering-element zoals gespecificeerd in één van de artikelen 3 t/m 8, gevolgd door een element met een elektronische handtekening berekend over het gegevenslevering-element en de identificatie van de sleutel gebruikt voor het berekenen van de elektronische handtekening.

Voor het genereren en de opmaak van de elektronische handtekening wordt gebruik gemaakt van de W3C Recommendation ‘XML Signature Syntax and Processing Version 1.1’ (XMLDSIG11) van 11 april 2013. De XMLDSIG11 specificatie (http://www.w3.org/TR/xmldsig-core1/) is een door het World Wide Web Consortium (W3C) ontworpen standaard voor de XML syntax en het genereren van elektronische handtekeningen.

Het XML exportbericht bestaat uit een <Envelope>-element met daarin een van de gegevenslevering-elementen <Ritadministratie>, <Arbeidstijden>, <Coordinaten>, <Gebeurtenis>, <Onderzoek> of <Chauffeurskaartdata>, gevolgd door een <Signature>-element. Het gegevenslevering-element bevat een resultaatbericht van een gegevenslevering zoals gespecificeerd in één van de artikelen 3 t/m 8. Het <Signature>-element is opgebouwd conform de XMLDSIG11 specificatie en bevat achtereenvolgens de elementen

a. <SignedInfo> met daarin o.a. verwijzingen naar en de ‘message digests’ van het gegevenslevering-element respectievelijk het <KeyInfo> element,

b. <SignatureValue> met daarin de elektronische handtekening over het <SignedInfo> element en

c. <KeyInfo> met daarin een representatie van het certificaat behorende bij de sleutel die voor de handtekening werd gebruikt.

Het XML exportbericht kent, afhankelijk van de omsloten gegevenslevering, een van de volgende structuren:

Het <Signature> element in eender welke van de zes bovenstaande XML exportberichten heeft altijd de volgende, aan de XMLDSIG11 conformerende, opbouw:

Toelichting:

a. de waarden op een gele achtergrond betreffen voorbeelden; deze waarden moeten door de boordcomputer berekend en/of bepaald worden;

b. het gegevenslevering-element uit de omvattende <Envelop> bevat het resultaat bericht van een gegevenslevering en heeft een Id gelijk aan ‘idGegevenslevering’;

c. het <KeyInfo> heeft een Id gelijk aan ‘idKeyInfo’;

d. het <SignedInfo> element verwijst met twee <Reference> elementen naar twee te ondertekenen elementen op basisvan hun Id (zie de tekst op een blauwe achtergrond);

e. zowel het gegevenlevering-element als het <KeyInfo>-element worden als volgt getransformeerd: eerst gecanonicaliseerd en daarna van alle overbodige witruimte ontdaan:

1. de witruimte van alle text() nodes worden genormaliseerd met normalize-space(.);

2. de (enige) text() node van elk element met Base64 gecodeerde inhoud wordt bovendien van alle (resterende) spaties ontdaan met translate(..., ‘ ’, ‘’) (zie de tekst op een groene achtergrond).

f. het <DigestValue> element van het eerste <Reference> element moet worden gevuld met de Base64 codering van de SHA-256 hash van het (volgens e. getransformeerde) gegevenslevering-element;

g. het <DigestValue> element van het tweede <Reference> element moet worden gevuld met de Base64 codering van de SHA-256 hash van het (volgens e. getransformeerde) <KeyInfo>-element;

h. het <SignedInfo> element moet, zoals hierboven weergegeven, ontdaan van alle overbodige witruimte in de envelop worden opgenomen, omdat de XMLDSIG11 standaard niet voorziet in het toepassen van enige andere transformatie dan canonicaliseren van dit element;

i. het <SignatureValue> element moet worden gevuld met de Base64 codering van de RSA-SHA256 (PKCS#1 v1.5) handtekening die berekend is over het (volgens h. opgemaakte en daarna gecanocaliseerde) <SignedInfo> element. Voor het opbouwen van deze handtekening wordt verwezen naar sectie 6.4.2 van XMLDSIG11;

j. het <X509Certificate> element moet worden gevuld met de Base64 codering van het DER-gecodeerde certificaat behorende bij de RSA-sleutel waarmee de <SignatureValue> is berekend (in dit geval het boordcomputercertificaat);

k. Alle canonicalisatie moet plaatsvinden conform ‘Exclusive XML Canonicalization Version 1.0, 18 July 2002’ (XML-EXC-C14N) met identifier http://www.w3.org/2001/10/xml-exc-c14n#;

l. Alle XSL transformaties moeten plaatsvinden conform ‘XSL Transformations (XSLT) Version 1.0, 16 November 1999’ (XSLT) met identifier http://www.w3.org/TR/1999/REC-xslt-19991116 en de daaraan gerelateerde standaard ‘XML Path Language (XPath) Version 1.0, 16 November 1999’ met identifier http://www.w3.org/TR/1999/REC-xpath-19991116;

m. Alle Base64 codering vindt in eerste instantie plaats op basis van de specificatie in XMLDSIG11;

n. Voorafgaand aan hashing en/of ondertekening van een XML node moet die node worden gecanonicaliseerd volgens XML-EXC-C14N en moet:

1. elke text-node worden genormaliseerd volgens de XPath normalize-space functie;

2. elke text-node die Base64 gecodeerd is bovendien worden ontdaan van alle resterende spaties conform de XPath functie translate(string, ‘ ’, ‘’).

De keuze van het algoritme voor de Digest en de Signature is afhankelijk van het certificaat op de kaart waarmee de handtekening wordt gezet. Als dit in de toekomst anders wordt dan SHA-256 respectievelijk RSA-SHA256’ zullen de algoritmes voor Digest en Signature meeveranderen.

Regeling
Regeling specificaties en typegoedkeuring boordcomputer taxi
Soort
Ministeriële regeling
Geldend vanaf
19-12-2020
BWB-id
BWBR0027945
Versie
2020-12-19_0

In de hele regeling · Officiële tekst op wetten.overheid.nl