Automatic vehicle and equipment identification — Electronic registration identification (ERI) for vehicles — Part 4: Secure communications using asymmetrical techniques — Amendment 1

Identification automatique des véhicules et des équipements — Identification d'enregistrement électronique (ERI) pour les véhicules — Partie 4: Communications sécurisées à l'aide de techniques asymétriques — Amendement 1

General Information

Status
Published
Publication Date
05-Feb-2019
Current Stage
6060 - International Standard published
Due Date
23-Apr-2019
Completion Date
06-Feb-2019
Ref Project

Relations

Buy Standard

Standard
ISO 24534-4:2010/Amd 1:2019
English language
12 pages
sale 15% off
Preview
sale 15% off
Preview
Standard
ISO 24534-4:2010/Amd 1:2019
French language
12 pages
sale 15% off
Preview
sale 15% off
Preview

Standards Content (Sample)

INTERNATIONAL ISO
STANDARD 24534-4
First edition
2010-07-15
AMENDMENT 1
2019-02
Automatic vehicle and equipment
identification — Electronic
registration identification (ERI) for
vehicles —
Part 4:
Secure communications using
asymmetrical techniques
AMENDMENT 1
Identification automatique des véhicules et des équipements —
Identification d'enregistrement électronique (ERI) pour les
véhicules —
Partie 4: Communications sécurisées à l'aide de techniques
asymétriques
AMENDEMENT 1
Reference number
ISO 24534-4:2010/Amd.1:2019(E)
©
ISO 2019

---------------------- Page: 1 ----------------------
ISO 24534-4:2010/Amd.1:2019(E)

COPYRIGHT PROTECTED DOCUMENT
© ISO 2019
All rights reserved. Unless otherwise specified, or required in the context of its implementation, no part of this publication may
be reproduced or utilized otherwise in any form or by any means, electronic or mechanical, including photocopying, or posting
on the internet or an intranet, without prior written permission. Permission can be requested from either ISO at the address
below or ISO’s member body in the country of the requester.
ISO copyright office
CP 401 • Ch. de Blandonnet 8
CH-1214 Vernier, Geneva
Phone: +41 22 749 01 11
Fax: +41 22 749 09 47
Email: copyright@iso.org
Website: www.iso.org
Published in Switzerland
ii © ISO 2019 – All rights reserved

---------------------- Page: 2 ----------------------
ISO 24534-4:2010/Amd.1:2019(E)

Foreword
ISO (the International Organization for Standardization) is a worldwide federation of national standards
bodies (ISO member bodies). The work of preparing International Standards is normally carried out
through ISO technical committees. Each member body interested in a subject for which a technical
committee has been established has the right to be represented on that committee. International
organizations, governmental and non-governmental, in liaison with ISO, also take part in the work.
ISO collaborates closely with the International Electrotechnical Commission (IEC) on all matters of
electrotechnical standardization.
The procedures used to develop this document and those intended for its further maintenance are
described in the ISO/IEC Directives, Part 1. In particular, the different approval criteria needed for the
different types of ISO documents should be noted. This document was drafted in accordance with the
editorial rules of the ISO/IEC Directives, Part 2 (see www .iso .org/directives).
Attention is drawn to the possibility that some of the elements of this document may be the subject of
patent rights. ISO shall not be held responsible for identifying any or all such patent rights. Details of
any patent rights identified during the development of the document will be in the Introduction and/or
on the ISO list of patent declarations received (see www .iso .org/patents).
Any trade name used in this document is information given for the convenience of users and does not
constitute an endorsement.
For an explanation of the voluntary nature of standards, the meaning of ISO specific terms and
expressions related to conformity assessment, as well as information about ISO's adherence to the
World Trade Organization (WTO) principles in the Technical Barriers to Trade (TBT) see www .iso
.org/iso/foreword .html.
This document was prepared by Technical Committee ISO/TC 204, Intelligent transport system.
Any feedback or questions on this document should be directed to the user’s national standards body. A
complete listing of these bodies can be found at www .iso .org/members .html.
© ISO 2019 – All rights reserved iii

---------------------- Page: 3 ----------------------
ISO 24534-4:2010/Amd.1:2019(E)
Automatic vehicle and equipment identification —
Electronic registration identification (ERI) for vehicles —
Part 4:
Secure communications using asymmetrical techniques
AMENDMENT 1

Page 42, 6.2.10.6
Replace definition of CommissionErtErrors by
CommissionErtErrors ErrorCode ::= {illegalArgument | illegalVehicleId |
illegalCertificate | illegalSignature | illegalEntity | illegalDate
| notCustomized | resourceLimitExceeded | noEnciphermentCapability |
secretKeyEncryptionAlgorithmNotSupported |
publicKeyEncryptionAlgorithmNotSupported | noSigningCapability |
hashingAlgorithmNotSupported | signingAlgorithmNotSupported | otherError, . }

Page 42, 6.2.11.1
Replace
withdrawCommissioningCode INTEGER ::= 9

by
withdrawCommissioningCode INTEGER ::= 14


Page 43, 6.2.11.3
Replace
WithdrawCommissioningResultData ::= [APPLICATION withdrawCommissioningCode ]
SEQUENCE {
withdrawn WithdrawCommissioningArgument,
historicComData HistoricComData
}
by
WithdrawCommissioningResultData ::= SEQUENCE {
withdrawn WithdrawCommissioningArgument,
historicComData HistoricComData
}
© ISO 2019 – All rights reserved 1

---------------------- Page: 4 ----------------------
ISO 24534-4:2010/Amd.1:2019(E)


Page 43, 6.2.11.4
Replace definition of WithdrawCommissioningError by
WithdrawCommissioningErrors ErrorCode ::= {illegalArgument | illegalVehicleId
| illegalCertificate | illegalSignature | illegalEntity | illegalDate |
notCustomized | notCommissioned | otherError, . }
Page 57, 6.2.18.3.5
Replace definition of EntityRole by
EntityRole::= INTEGER {
  topLevelCertificationAuthority    (0),
  intermediateCertificationAuthority  (1),
  manufacturer            (2),
  registrationAuthority        (3),
  authority              (4),
  serviceProvider           (5),
  eriHolder              (6)
  } (0.7)
Page 66, Annex A
Replace the annex by the following one.
2 © ISO 2019 – All rights reserved

---------------------- Page: 5 ----------------------
ISO 24534-4:2010/Amd.1:2019(E)

Annex A
(normative)

ASN.1 module
A.1 Overview
The following ASN.1 modules are specified in this normative annex:
— The normative module  ElectronicRegistrationIdentificationTransactionsModule  {iso(1)
standard(0) iso24534 (24534) transactions (2) version1 (1)} in A.2.
— The informative module AviEriDSRCData {iso(1) standard(0) iso24534 (24534) transactions (2)
example1(1) version1 (1)} in A.3.
In case the ASN.1 specifications given in this Annex are not compliant with illustrations or specifications
provided elsewhere in this International standard, the specifications given in this Annex shall prevail.
The ASN.1 modules contained in this Annex will be published on http: //standards .iso .org/iso/24534/ -4.
A.2 Module ElectronicRegistrationIdentificationTransactionsModule
ElectronicRegistrationIdentificationTransactionsModule {iso(1) standard(0) iso24534 (24534)
transactions (2) version1 (1)}
DEFINITIONS AUTOMATIC TAGS ::= BEGIN

IMPORTS
RegistrationAuthority, VehicleId, EriData, AdditionalEriData, EntityId FROM
ElectronicRegistrationIdentificationVehicleDataModule {iso(1) standard(0) iso24534 (24534)
vehicleData (1) version1 (1)} -- ISO 24534-3

EmbeddedERIType FROM AVIAEIDSRCInterfaceModule {iso (1) standard(0) iso17264(17264)
version1 (1)}
;

EriPdu ::= SEQUENCE{
  fill        BIT STRING (SIZE(6)),
  pdu        CHOICE {
    requestPdu   EriRequestPdu,
    reponsePdu   EriResponsePdu
    }
  }

EriRequestPdu ::= SEQUENCE {
  transactCode TRANSACTION.&transactionCode ( {EriTransactions}),
  argument TRANSACTION.&ArgumentType ( {EriTransactions} {@.transactCode}) OPTIONAL
  }

EriResponsePdu ::= CHOICE {
  resultPdu         EriResultPdu,
  errorPdu          EriErrorPdu
  }

EriResultPdu ::= SEQUENCE {
  transactCode TRANSACTION.&transactionCode ( {EriTransactions}),
  result TRANSACTION.&ResultType ( {EriTransactions} {@.transactCode})
  }

-- warning: Constraint checking for field 'error' would not be done at runtime as
constraints applied to FixedTypeValueSetFields or VariableTypeValueSetFields are not
currently supported.
© ISO 2019 – All rights reserved 3

---------------------- Page: 6 ----------------------
ISO 24534-4:2010/Amd.1:2019(E)


EriErrorPdu ::= SEQUENCE {
  transactCode TRANSACTION.&transactionCode ( {EriTransactions}),
  error TRANSACTION.&ErrorCodes ( {EriTransactions} {@.transactCode})
  }

-- TRANSACTIONS
TRANSACTION ::= CLASS {
  &ArgumentType ,
  &ResultType ,
  &ErrorCodes ErrorCode OPTIONAL,
  &transactionCode TransactionCode UNIQUE
  }
  WITH SYNTAX {
    ARGUMENT &ArgumentType
    RESULT &ResultType
    [ERRORS &ErrorCodes]
    CODE &transactionCode
  }

TransactionCode ::= INTEGER {
  tc-getEriData              (1),
  tc-getAuthenticatedEriData        (2),
  tc-setEriData              (3),
  tc-getCiphertextHistoricEriData     (4),
  tc-getCleartextHistoricEriData      (5),
  tc-getPublicCertificateVerificationKeyId  (6),
  tc-getPublicEnciphermentKeyErt      (7),
  tc-commissionErt             (8),
  tc-getCiphertextHistoricComData     (9),
  tc-getCleartextHistoricComData      (10),
  tc-updateAccessControlList        (11),
  tc-getCiphertextAccessControlListEntry  (12),
  tc-getCleartextAccessControlListEntry  (13),
  tc-withdrawCommissioning         (14),
  tc-getErtCapabilities          (15)
  } (0.255)

EriTransactions TRANSACTION ::= {getEriData | getAuthenticatedEriData | setEriData |
getCiphertextHistoricEriData | getCleartextHistoricEriData |
getPublicCertificateVerificationKeyId | getPublicEnciphermentKeyErt | commissionErt |
withdrawCommissioning | getCiphertextHistoricComData |
getCleartextHistoricComData | updateAccessControlList |
getCiphertextAccessControlListEntry | getCleartextAccessControlListEntry |
getErtCapabilities, . }

-- Get ERI data
getEriData TRANSACTION ::= {
  ARGUMENT GetEriDataArgument
  RESULT GetEriDataResult
  ERRORS {notCustomized}
  CODE tc-getEriData
  }

GetEriDataArgument ::= SEQUENCE {
  onBehalfOf        EntityId OPTIONAL,
  challenge        Challenge,
  includeAdditionalData  BOOLEAN
  }

GetEriDataResult ::= SEQUENCE {
  registrationAuthority  RegistrationAuthority OPTIONAL,
  eriResultData      SECURED {CleartextEriData}
  }

-- Authenticate ERI data
getAuthenticatedEriData TRANSACTION ::= {
  ARGUMENT GetAuthenticatedEriDataArgument
  RESULT GetAuthenticatedEriDataResult
  ERRORS {notCustomized}
  CODE tc-getAuthenticatedEriData
4 © ISO 2019 – All rights reserved

---------------------- Page: 7 ----------------------
ISO 24534-4:2010/Amd.1:2019(E)

  }

GetAuthenticatedEriDataArgument ::= SEQUENCE {
  ertHolderCredentials   ErtHolderCredentials,
  challenge        Challenge,
  includeAdditionalData  BOOLEAN
  }

GetAuthenticatedEriDataResult ::= SEQUENCE {
  registrationAuthority  EntityId OPTIONAL,
  authenticateResultData  CLEAR-SECURED {CleartextEriData}
  }

-- ERI data and ERT security flags
CleartextEriData ::= SEQUENCE {
  eriDataOrId       EriDataOrId,
  ertSecurityStatus    ErtSecurityFlags OPTIONAL
  }

EriDataOrId ::= CHOICE {
  vehicleId        VehicleId,
  unsignedDatedEriData   DATED { EmbeddedERIType{EriData} },
  datedAndSignedEriData  SIGNED {DATED { EmbeddedERIType{EriData} },
PrivateSignatureKey} -- BOE signed
  }

/*
EriData ::= SEQUENCE {
  id           VehicleId,
  additionalEriData    OCTET STRING (CONTAINING AdditionalEriData) OPTIONAL
  }
*/

ErtSecurityFlags ::= BIT STRING {
  flagsHaveBeenResetted       (0),
  notCommissioned         (1),
  lowSupplyVoltageIndication    (2),
  highSupplyVoltageIndication   (3),
  lowClockFrequencyIndication   (4),
  highClockFrequencyIndication   (5),
  lowTemperatureIndication     (6),
  highTemperatureIndication    (7)
  } (SIZE (0.16)) -- bit 8 . 15 reserved for future use

  -- Set ERI data
setEriData TRANSACTION ::= {
  ARGUMENT SetEriDataArgument
  RESULT NULL
  ERRORS {SetEriDataErrors}
  CODE tc-setEriData
  }

SetEriDataArgument ::= CHOICE {
  clearTextArgument     ClearTextSetEriDataArgument,
  encryptedArgument     ENCRYPTED {ClearTextSetEriDataArgument}
  }

ClearTextSetEriDataArgument ::= CHOICE {
  authenticatedEriData   BOE-AUTHENTICATED{DATED{EmbeddedERIType{EriData} }},
  notAuthenticatedEriData  DATED { EmbeddedERIType{EriData} }
  }

SetEriDataErrors ErrorCode ::= {illegalArgument | illegalVehicleId | illegalCertificate |
illegalSignature | illegalDate | notCommissioned | resourceLimitExceeded | otherError, .
}

-- Retrieve historic ERI data
getCiphertextHistoricEriData TRANSACTION ::= {
  ARGUMENT GetCiphertextHistoricEriDataArgument
  RESULT SECURED {HistoricEriData}
  ERRORS {notCustomized}
© ISO 2019 – All rights reserved 5

---------------------- Page: 8 ----------------------
ISO 24534-4:2010/Amd.1:2019(E)

  CODE tc-getCiphertextHistoricEriData
  }

GetCiphertextHistoricEriDataArgument ::= SEQUENCE {
  onBehalfOf        EntityId OPTIONAL,
  challenge        Challenge,
  number          INTEGER (1.int4)
  }

getCleartextHistoricEriData TRANSACTION ::= {
  ARGUMENT GetCleartextHistoricEriDataArgument
  RESULT CLEAR-SECURED {HistoricEriData}
  ERRORS {notCustomized}
  CODE tc-getCleartextHistoricEriData
  }

GetCleartextHistoricEriDataArgument ::= SEQUENCE {
  credentials       ErtHolderCredentials,
  challenge        Challenge,
  number          INTEGER (1.int4)
  }

HistoricEriData ::= SEQUENCE {
  number          INTEGER (1.int4),
  outOf          INTEGER (1.int4),
  historicRecord      ClearTextSetEriDataArgument
  }

-- Get public verification key
getPublicCertificateVerificationKeyId TRANSACTION ::= {
  ARGUMENT NULL
  RESULT KeyId
  CODE tc-getPublicCertificateVerificationKeyId
  }

getPublicEnciphermentKeyErt TRANSACTION ::= {
  ARGUMENT BOE-AUTHENTICATED {VehicleId}
  RESULT PublicEnciphermentKey
  ERRORS {GetPublicEnciphermentKeyErrors}
  CODE tc-getPublicEnciphermentKeyErt
  }

GetPublicEnciphermentKeyErrors ErrorCode ::= {illegalArgument | illegalVehicleId |
illegalCertificate | illegalSignature | illegalEntity | noDeciphermentCapability |
otherError, . }

-- Commissioning
commissionErt TRANSACTION ::= {
  ARGUMENT CommissionErtArgument
  RESULT NULL
  ERRORS {CommissionErtErrors}
  CODE tc-commissionErt
  }

CommissionErtArgument ::= CHOICE {
  authenticatedData     BOE-AUTHENTICATED {DATED {CommissioningData}},
  notAuthenticatedData   DATED {CommissioningData}
  }

CommissioningData ::= SEQUENCE {
  vehicleId             VehicleId,
  registrationAuthority       EntityId,
  resetSecurityFlags        BOOLEAN,
  enciphermentKeyId         KeyId OPTIONAL,
  publicEnciphermentKeyAuthority  PublicEnciphermentKey OPTIONAL,
  publicVerificationKeyCertificate ErtCertificate OPTIONAL,
  privateData ENCRYPTED {PrivateCommissioningData} OPTIONAL
  }

PrivateCommissioningData ::= SEQUENCE {
  privateSignatureKeyErt PrivateSignatureKey OPTIONAL,
6 © ISO 2019 – All rights reserved

---------------------- Page: 9 ----------------------
ISO 24534-4:2010/Amd.1:2019(E)

  pin           PIN OPTIONAL
  }

CommissionErtErrors ErrorCode ::=
...

NORME ISO
INTERNATIONALE 24534-4
Première édition
2010-07-15
AMENDEMENT 1
2019-02
Identification automatique des
véhicules et des équipements —
Identification d'enregistrement
électronique (ERI) pour les
véhicules —
Partie 4:
Communications sécurisées à l'aide de
techniques asymétriques
AMENDEMENT 1
Automatic vehicle and equipment identification — Electronic
registration identification (ERI) for vehicles —
Part 4: Secure communications using asymmetrical techniques
AMENDMENT 1
Numéro de référence
ISO 24534-4:2010/Amd.1:2019(F)
©
ISO 2019

---------------------- Page: 1 ----------------------
ISO 24534-4:2010/Amd.1:2019(F)

DOCUMENT PROTÉGÉ PAR COPYRIGHT
© ISO 2019
Tous droits réservés. Sauf prescription différente ou nécessité dans le contexte de sa mise en œuvre, aucune partie de cette
publication ne peut être reproduite ni utilisée sous quelque forme que ce soit et par aucun procédé, électronique ou mécanique,
y compris la photocopie, ou la diffusion sur l’internet ou sur un intranet, sans autorisation écrite préalable. Une autorisation peut
être demandée à l’ISO à l’adresse ci-après ou au comité membre de l’ISO dans le pays du demandeur.
ISO copyright office
Case postale 401 • Ch. de Blandonnet 8
CH-1214 Vernier, Genève
Tél.: +41 22 749 01 11
Fax: +41 22 749 09 47
E-mail: copyright@iso.org
Web: www.iso.org
Publié en Suisse
ii © ISO 2019 – Tous droits réservés

---------------------- Page: 2 ----------------------
ISO 24534-4:2010/Amd.1:2019(F)

Avant-propos
L'ISO (Organisation internationale de normalisation) est une fédération mondiale d'organismes
nationaux de normalisation (comités membres de l'ISO). L'élaboration des Normes internationales est
en général confiée aux comités techniques de l'ISO. Chaque comité membre intéressé par une étude
a le droit de faire partie du comité technique créé à cet effet. Les organisations internationales,
gouvernementales et non gouvernementales, en liaison avec l'ISO participent également aux travaux.
L'ISO collabore étroitement avec la Commission électrotechnique internationale (IEC) en ce qui
concerne la normalisation électrotechnique.
Les procédures utilisées pour élaborer le présent document et celles destinées à sa mise à jour sont
décrites dans les Directives ISO/IEC, Partie 1. Il convient, en particulier de prendre note des différents
critères d'approbation requis pour les différents types de documents ISO. Le présent document a été
rédigé conformément aux règles de rédaction données dans les Directives ISO/IEC, (voir www .iso
.org/directives).
L'attention est attirée sur le fait que certains des éléments du présent document peuvent faire l'objet de
droits de propriété intellectuelle ou de droits analogues. L'ISO ne saurait être tenue pour responsable
de ne pas avoir identifié de tels droits de propriété et averti de leur existence. Les détails concernant
les références aux droits de propriété intellectuelle ou autres droits analogues identifiés lors de
l'élaboration du document sont indiqués dans l'Introduction et/ou dans la liste des déclarations de
brevets reçues par l'ISO (voir www .iso .org/brevets).
Les appellations commerciales éventuellement mentionnées dans le présent document sont données
pour information, par souci de commodité, à l’intention des utilisateurs et ne sauraient constituer un
engagement.
Pour une explication de la nature volontaire des normes, la signification des termes et expressions
spécifiques de l'ISO liés à l'évaluation de la conformité, ou pour toute information au sujet de l'adhésion
de l'ISO aux principes de l’Organisation mondiale du commerce (OMC) concernant les obstacles
techniques au commerce (OTC), voir www .iso .org/avant -propos.
Le présent document a été élaboré par le comité technique ISO/TC 204, Systèmes de transport intelligents.
Il convient que l’utilisateur adresse tout retour d’information ou toute question concernant le présent
document à l’organisme national de normalisation de son pays. Une liste exhaustive desdits organismes
se trouve à l’adresse www .iso .org/fr/members .html.
© ISO 2019 – Tous droits réservés iii

---------------------- Page: 3 ----------------------
ISO 24534-4:2010/Amd.1:2019(F)
Identification automatique des véhicules et des
équipements — Identification d'enregistrement
électronique (ERI) pour les véhicules —
Partie 4:
Communications sécurisées à l'aide de techniques
asymétriques
AMENDEMENT 1

Page 42 Clause 6.2.10.6
Remplacez la définition de CommissionErtErrors par:
CommissionErtErrors ErrorCode ::= {illegalArgument | illegalVehicleId |
illegalCertificate | illegalSignature | illegalEntity | illegalDate
| notCustomized | resourceLimitExceeded | noEnciphermentCapability |
secretKeyEncryptionAlgorithmNotSupported |
publicKeyEncryptionAlgorithmNotSupported | noSigningCapability |
hashingAlgorithmNotSupported | signingAlgorithmNotSupported | otherError, . }

Page 42 Clause 6.2.11.1
Remplacez
withdrawCommissioningCode INTEGER ::= 9

par
withdrawCommissioningCode INTEGER ::= 14


Page 43 Clause 6.2.11.3
Remplacez
WithdrawCommissioningResultData ::= [APPLICATION withdrawCommissioningCode ]
SEQUENCE {
withdrawn WithdrawCommissioningArgument,
historicComData HistoricComData
}
© ISO 2019 – Tous droits réservés 1

---------------------- Page: 4 ----------------------
ISO 24534-4:2010/Amd.1:2019(F)

par
WithdrawCommissioningResultData ::= SEQUENCE {
withdrawn WithdrawCommissioningArgument,
historicComData HistoricComData
}

Page 43 Clause 6.2.11.4
Remplacez la définition de WithdrawCommissioningError par:
WithdrawCommissioningErrors ErrorCode ::= {illegalArgument | illegalVehicleId
| illegalCertificate | illegalSignature | illegalEntity | illegalDate |
notCustomized | notCommissioned | otherError, . }

Page 57 Clause 6.2.18.3.5
Remplacez la définition de EntityRole par:
EntityRole::= INTEGER {
  topLevelCertificationAuthority    (0),
  intermediateCertificationAuthority  (1),
  manufacturer            (2),
  registrationAuthority        (3),
  authority              (4),
  serviceProvider           (5),
  eriHolder              (6)
  } (0.7)

Page 66 Annexe A
Remplacez l'intégralité de l'annexe par l'annexe suivante:
2 © ISO 2019 – Tous droits réservés

---------------------- Page: 5 ----------------------
ISO 24534-4:2010/Amd.1:2019(F)

Annexe A
(normative)

Module ASN.1
A.1 Vue d'ensemble
Les modules ASN.1 suivants sont spécifiés dans la présente annexe normative:
— Le module normatif ElectronicRegistrationIdentificationTransactionsModule {iso(1)
standard(0) iso24534 (24534) transactions (2) version1 (1)} dans A.2.
— Le module informatif AviEriDSRCData {iso(1) standard(0) iso24534 (24534) transactions (2)
example1(1) version1 (1)} dans A.3.
Si les spécifications ASN.1 fournies dans cette Annexe ne sont pas conformes aux illustrations ou aux
spécifications fournies dans toute autre partie de la présente Norme internationale, les spécifications
fournies dans cette Annexe prévalent.
Les modules ASN.1 figurant dans cette Annexe seront publiés sur le site Internet http: //standards .iso
.org/iso/24534/ -4.
A.2 Module ElectronicRegistrationIdentificationTransactionsModule
ElectronicRegistrationIdentificationTransactionsModule {iso(1) standard(0) iso24534 (24534)
transactions (2) version1 (1)}
DEFINITIONS AUTOMATIC TAGS ::= BEGIN

IMPORTS
RegistrationAuthority, VehicleId, EriData, AdditionalEriData, EntityId FROM
ElectronicRegistrationIdentificationVehicleDataModule {iso(1) standard(0) iso24534 (24534)
vehicleData (1) version1 (1)} -- ISO 24534-3

EmbeddedERIType FROM AVIAEIDSRCInterfaceModule {iso (1) standard(0) iso17264(17264)
version1 (1)}
;

EriPdu ::= SEQUENCE{
  fill        BIT STRING (SIZE(6)),
  pdu        CHOICE {
    requestPdu   EriRequestPdu,
    reponsePdu   EriResponsePdu
    }
  }

EriRequestPdu ::= SEQUENCE {
  transactCode TRANSACTION.&transactionCode ( {EriTransactions}),
  argument TRANSACTION.&ArgumentType ( {EriTransactions} {@.transactCode}) OPTIONAL
  }

EriResponsePdu ::= CHOICE {
  resultPdu         EriResultPdu,
  errorPdu          EriErrorPdu
  }

EriResultPdu ::= SEQUENCE {
  transactCode TRANSACTION.&transactionCode ( {EriTransactions}),
  result TRANSACTION.&ResultType ( {EriTransactions} {@.transactCode})
  }

© ISO 2019 – Tous droits réservés 3

---------------------- Page: 6 ----------------------
ISO 24534-4:2010/Amd.1:2019(F)

-- warning: Constraint checking for field 'error' would not be done at runtime as
constraints applied to FixedTypeValueSetFields or VariableTypeValueSetFields are not
currently supported.

EriErrorPdu ::= SEQUENCE {
  transactCode TRANSACTION.&transactionCode ( {EriTransactions}),
  error TRANSACTION.&ErrorCodes ( {EriTransactions} {@.transactCode})
  }

-- TRANSACTIONS
TRANSACTION ::= CLASS {
  &ArgumentType ,
  &ResultType ,
  &ErrorCodes ErrorCode OPTIONAL,
  &transactionCode TransactionCode UNIQUE
  }
  WITH SYNTAX {
    ARGUMENT &ArgumentType
    RESULT &ResultType
    [ERRORS &ErrorCodes]
    CODE &transactionCode
  }

TransactionCode ::= INTEGER {
  tc-getEriData              (1),
  tc-getAuthenticatedEriData        (2),
  tc-setEriData              (3),
  tc-getCiphertextHistoricEriData     (4),
  tc-getCleartextHistoricEriData      (5),
  tc-getPublicCertificateVerificationKeyId  (6),
  tc-getPublicEnciphermentKeyErt      (7),
  tc-commissionErt             (8),
  tc-getCiphertextHistoricComData     (9),
  tc-getCleartextHistoricComData      (10),
  tc-updateAccessControlList        (11),
  tc-getCiphertextAccessControlListEntry  (12),
  tc-getCleartextAccessControlListEntry  (13),
  tc-withdrawCommissioning         (14),
  tc-getErtCapabilities          (15)
  } (0.255)

EriTransactions TRANSACTION ::= {getEriData | getAuthenticatedEriData | setEriData |
getCiphertextHistoricEriData | getCleartextHistoricEriData |
getPublicCertificateVerificationKeyId | getPublicEnciphermentKeyErt | commissionErt |
withdrawCommissioning | getCiphertextHistoricComData |
getCleartextHistoricComData | updateAccessControlList |
getCiphertextAccessControlListEntry | getCleartextAccessControlListEntry |
getErtCapabilities, . }

-- Get ERI data
getEriData TRANSACTION ::= {
  ARGUMENT GetEriDataArgument
  RESULT GetEriDataResult
  ERRORS {notCustomized}
  CODE tc-getEriData
  }

GetEriDataArgument ::= SEQUENCE {
  onBehalfOf        EntityId OPTIONAL,
  challenge        Challenge,
  includeAdditionalData  BOOLEAN
  }

GetEriDataResult ::= SEQUENCE {
  registrationAuthority  RegistrationAuthority OPTIONAL,
  eriResultData      SECURED {CleartextEriData}
  }

-- Authenticate ERI data
getAuthenticatedEriData TRANSACTION ::= {
  ARGUMENT GetAuthenticatedEriDataArgument
4 © ISO 2019 – Tous droits réservés

---------------------- Page: 7 ----------------------
ISO 24534-4:2010/Amd.1:2019(F)

  RESULT GetAuthenticatedEriDataResult
  ERRORS {notCustomized}
  CODE tc-getAuthenticatedEriData
  }

GetAuthenticatedEriDataArgument ::= SEQUENCE {
  ertHolderCredentials   ErtHolderCredentials,
  challenge        Challenge,
  includeAdditionalData  BOOLEAN
  }

GetAuthenticatedEriDataResult ::= SEQUENCE {
  registrationAuthority  EntityId OPTIONAL,
  authenticateResultData  CLEAR-SECURED {CleartextEriData}
  }

-- ERI data and ERT security flags
CleartextEriData ::= SEQUENCE {
  eriDataOrId       EriDataOrId,
  ertSecurityStatus    ErtSecurityFlags OPTIONAL
  }

EriDataOrId ::= CHOICE {
  vehicleId        VehicleId,
  unsignedDatedEriData   DATED { EmbeddedERIType{EriData} },
  datedAndSignedEriData  SIGNED {DATED { EmbeddedERIType{EriData} },
PrivateSignatureKey} -- BOE signed
  }

/*
EriData ::= SEQUENCE {
  id           VehicleId,
  additionalEriData    OCTET STRING (CONTAINING AdditionalEriData) OPTIONAL
  }
*/

ErtSecurityFlags ::= BIT STRING {
  flagsHaveBeenResetted       (0),
  notCommissioned         (1),
  lowSupplyVoltageIndication    (2),
  highSupplyVoltageIndication   (3),
  lowClockFrequencyIndication   (4),
  highClockFrequencyIndication   (5),
  lowTemperatureIndication     (6),
  highTemperatureIndication    (7)
  } (SIZE (0.16)) -- bit 8 . 15 reserved for future use

  -- Set ERI data
setEriData TRANSACTION ::= {
  ARGUMENT SetEriDataArgument
  RESULT NULL
  ERRORS {SetEriDataErrors}
  CODE tc-setEriData
  }

SetEriDataArgument ::= CHOICE {
  clearTextArgument     ClearTextSetEriDataArgument,
  encryptedArgument     ENCRYPTED {ClearTextSetEriDataArgument}
  }

ClearTextSetEriDataArgument ::= CHOICE {
  authenticatedEriData   BOE-AUTHENTICATED{DATED{EmbeddedERIType{EriData} }},
  notAuthenticatedEriData  DATED { EmbeddedERIType{EriData} }
  }

SetEriDataErrors ErrorCode ::= {illegalArgument | illegalVehicleId | illegalCertificate |
illegalSignature | illegalDate | notCommissioned | resourceLimitExceeded | otherError, .
}

-- Retrieve historic ERI data
getCiphertextHistoricEriData TRANSACTION ::= {
© ISO 2019 – Tous droits réservés 5

---------------------- Page: 8 ----------------------
ISO 24534-4:2010/Amd.1:2019(F)

  ARGUMENT GetCiphertextHistoricEriDataArgument
  RESULT SECURED {HistoricEriData}
  ERRORS {notCustomized}
  CODE tc-getCiphertextHistoricEriData
  }

GetCiphertextHistoricEriDataArgument ::= SEQUENCE {
  onBehalfOf        EntityId OPTIONAL,
  challenge        Challenge,
  number          INTEGER (1.int4)
  }

getCleartextHistoricEriData TRANSACTION ::= {
  ARGUMENT GetCleartextHistoricEriDataArgument
  RESULT CLEAR-SECURED {HistoricEriData}
  ERRORS {notCustomized}
  CODE tc-getCleartextHistoricEriData
  }

GetCleartextHistoricEriDataArgument ::= SEQUENCE {
  credentials       ErtHolderCredentials,
  challenge        Challenge,
  number          INTEGER (1.int4)
  }

HistoricEriData ::= SEQUENCE {
  number          INTEGER (1.int4),
  outOf          INTEGER (1.int4),
  historicRecord      ClearTextSetEriDataArgument
  }

-- Get public verification key
getPublicCertificateVerificationKeyId TRANSACTION ::= {
  ARGUMENT NULL
  RESULT KeyId
  CODE tc-getPublicCertificateVerificationKeyId
  }

getPublicEnciphermentKeyErt TRANSACTION ::= {
  ARGUMENT BOE-AUTHENTICATED {VehicleId}
  RESULT PublicEnciphermentKey
  ERRORS {GetPublicEnciphermentKeyErrors}
  CODE tc-getPublicEnciphermentKeyErt
  }

GetPublicEnciphermentKeyErrors ErrorCode ::= {illegalArgument | illegalVehicleId |
illegalCertificate | illegalSignature | illegalEntity | noDeciphermentCapability |
otherError, . }

-- Commissioning
commissionErt TRANSACTION ::= {
  ARGUMENT CommissionErtArgument
  RESULT NULL
  ERRORS {CommissionErtErrors}
  CODE tc-commissionErt
  }

CommissionErtArgument ::= CHOICE {
  authenticatedData     BOE-AUTHENTICATED {DATED {CommissioningData}},
  notAuthenticatedData   DATED {CommissioningData}
  }

CommissioningData ::= SEQUENCE {
  vehicleId             VehicleId,
  registrationAuthority       EntityId,
  resetSecurityFlags        BOOLEAN,
  enciphermentKeyId         KeyId OPTIONAL,
  publicEnciphermentKeyAuthority  PublicEnciphermentKey OPTIONAL,
  publicVerificationKeyCertificate ErtCertificate OPTIONAL,
  privateData ENCRYPTED {PrivateCom
...

Questions, Comments and Discussion

Ask us and Technical Secretary will try to provide an answer. You can facilitate discussion about the standard in here.