Commit be1b6648 authored by ASN.1 Checker's avatar ASN.1 Checker
Browse files

Documentation update

parent d1b77206
Loading
Loading
Loading
Loading
+221 −457

File changed.

Preview size limit exceeded, changes collapsed.

+234 −459

File changed.

Preview size limit exceeded, changes collapsed.

+10 −16
Original line number Diff line number Diff line
# ASN.1 module Ieee1609Dot2Crl
# <a name="Ieee1609Dot2Crl"></a>ASN.1 module Ieee1609Dot2Crl
OID: _{iso(1) identified-organization(3) ieee(111) standards-association-numbered-series-standards(2) wave-stds(1609) dot2(2) crl(3) major-version-3(3) minor-version-2(2)}_
 @note Section references in this file are to clauses in IEEE Std
 Section references in this file are to clauses in IEEE Std
 1609.2 unless indicated otherwise. Full forms of acronyms and
 abbreviations used in this file are specified in 3.2.
 

## Imports:
 * **[Ieee1609Dot2](Ieee1609Dot2.md)** *{iso(1) identified-organization(3) ieee(111) standards-association-numbered-series-standards(2) wave-stds(1609) dot2(2) base(1) schema(1) major-version-2(2) minor-version-6(6)} WITH SUCCESSORS*<br/>
  
 * **[Ieee1609Dot2BaseTypes](Ieee1609Dot2BaseTypes.md)** *{iso(1) identified-organization(3) ieee(111) standards-association-numbered-series-standards(2) wave-stds(1609) dot2(2) base(1) base-types(2) major-version-2(2) minor-version-4(4)} WITH SUCCESSORS*<br/>
  
 * **[Ieee1609Dot2CrlBaseTypes](Ieee1609Dot2CrlBaseTypes.md)** *{iso(1) identified-organization(3) ieee(111) standards-association-numbered-series-standards(2) wave-stds(1609) dot2(2) crl(3) base-types(2) major-version-3(3) minor-version-2(2)} WITH SUCCESSORS*<br/>
  
* **[Ieee1609Dot2](Ieee1609Dot2.md)** *{iso(1) identified-organization(3) ieee(111) standards-association-numbered-series-standards(2) wave-stds(1609) dot2(2) base(1) schema(1) major-version-2(2) minor-version-6(6)}*<br/>
* **[Ieee1609Dot2BaseTypes](Ieee1609Dot2BaseTypes.md)** *{iso(1) identified-organization(3) ieee(111) standards-association-numbered-series-standards(2) wave-stds(1609) dot2(2) base(1) base-types(2) major-version-2(2) minor-version-4(4)}*<br/>
* **[Ieee1609Dot2CrlBaseTypes](Ieee1609Dot2CrlBaseTypes.md)** *{iso(1) identified-organization(3) ieee(111) standards-association-numbered-series-standards(2) wave-stds(1609) dot2(2) crl(3) base-types(2) major-version-3(3) minor-version-2(2)}*<br/>
## Data Elements:
### <a name="CrlPsid"></a>This is the PSID for the CRL application.
 
### <a name="CrlPsid"></a>CrlPsid
This is the PSID for the CRL application.
```asn1
CrlPsid ::= Psid(256)
```


### <a name="SecuredCrl"></a>SecuredCrl
This structure is the SPDU used to contain a signed CRL. A valid 
### <a name="SecuredCrl"></a>This structure is the SPDU used to contain a signed CRL. A valid 
 signed CRL meets the validity criteria of 7.4.
 
```asn1
SecuredCrl ::= Ieee1609Dot2Data (WITH COMPONENTS {..., 
  content (WITH COMPONENTS {
+89 −202
Original line number Diff line number Diff line
# ASN.1 module Ieee1609Dot2CrlBaseTypes
# <a name="Ieee1609Dot2CrlBaseTypes"></a>ASN.1 module Ieee1609Dot2CrlBaseTypes
OID: _{iso(1) identified-organization(3) ieee(111) standards-association-numbered-series-standards(2) wave-stds(1609) dot2(2) crl(3) base-types(2) major-version-3(3) minor-version-2(2)}_
 @note Section references in this file are to clauses in IEEE Std
 Section references in this file are to clauses in IEEE Std
 1609.2 unless indicated otherwise. Full forms of acronyms and
 abbreviations used in this file are specified in 3.2.
 

## Imports:
 * **[Ieee1609Dot2BaseTypes](Ieee1609Dot2BaseTypes.md)** *{iso(1) identified-organization(3) ieee(111) standards-association-numbered-series-standards(2) wave-stds(1609) dot2(2) base(1) base-types(2) major-version-2(2) minor-version-4(4)} WITH SUCCESSORS*<br/>
  
* **[Ieee1609Dot2BaseTypes](Ieee1609Dot2BaseTypes.md)** *{iso(1) identified-organization(3) ieee(111) standards-association-numbered-series-standards(2) wave-stds(1609) dot2(2) base(1) base-types(2) major-version-2(2) minor-version-4(4)}*<br/>
## Data Elements:
### <a name="CrlContents"></a>CrlContents
The fields in this structure have the following meaning:
### <a name="CrlContents"></a>The fields in this structure have the following meaning:

Fields:
* version of type [**Uint8**](Ieee1609Dot2BaseTypes.md#Uint8)  (1)<br>
* _version_ of type [**Uint8**](Ieee1609Dot2BaseTypes.md#Uint8)  (1)<br>
  is the version number of the CRL. For this version of this
   standard it is 1.


* crlSeries of type [**CrlSeries**](Ieee1609Dot2BaseTypes.md#CrlSeries) <br>
* _crlSeries_ of type [**CrlSeries**](Ieee1609Dot2BaseTypes.md#CrlSeries) <br>
  represents the CRL series to which this CRL belongs. This
   is used to determine whether the revocation information in a CRL is relevant
   to a particular certificate as specified in 5.1.3.2.


   
* crlCraca of type [**HashedId8**](Ieee1609Dot2BaseTypes.md#HashedId8) <br>
* _crlCraca_ of type [**HashedId8**](Ieee1609Dot2BaseTypes.md#HashedId8) <br>
  contains the low-order eight octets of the hash of the
   certificate of the Certificate Revocation Authorization CA (CRACA) that
   ultimately authorized the issuance of this CRL. This is used to determine
@@ -37,35 +30,25 @@ Fields:
   described in 6.4.3, applied to the COER-encoded certificate, canonicalized 
   as defined in the definition of Certificate.


   
* issueDate of type [**Time32**](Ieee1609Dot2BaseTypes.md#Time32) <br>
* _issueDate_ of type [**Time32**](Ieee1609Dot2BaseTypes.md#Time32) <br>
  specifies the time when the CRL was issued.


   
* nextCrl of type [**Time32**](Ieee1609Dot2BaseTypes.md#Time32) <br>
* _nextCrl_ of type [**Time32**](Ieee1609Dot2BaseTypes.md#Time32) <br>
  contains the time when the next CRL with the same crlSeries
   and cracaId is expected to be issued. The CRL is invalid unless nextCrl is
   strictly after issueDate. This field is used to set the expected update time
   for revocation information associated with the (crlCraca, crlSeries) pair as
   specified in 5.1.3.6.


      
* priorityInfo of type [**CrlPriorityInfo**](#CrlPriorityInfo) <br>
* _priorityInfo_ of type [**CrlPriorityInfo**](#CrlPriorityInfo) <br>
  contains information that assists devices with limited
   storage space in determining which revocation information to retain and
   which to discard.


     
* typeSpecific of type [**TypeSpecificCrlContents**](#TypeSpecificCrlContents) <br>
* _typeSpecific_ of type [**TypeSpecificCrlContents**](#TypeSpecificCrlContents) <br>
  contains the CRL body.
   


   
```asn1
CrlContents ::= SEQUENCE {
  version      Uint8 (1),
@@ -78,20 +61,17 @@ CrlContents ::= SEQUENCE {
}
```

### <a name="CrlPriorityInfo"></a>CrlPriorityInfo
This data structure contains information that assists devices with
### <a name="CrlPriorityInfo"></a>This data structure contains information that assists devices with
 limited storage space in determining which revocation information to retain
 and which to discard.

Fields:
* priority of type [**Uint8**](Ieee1609Dot2BaseTypes.md#Uint8)  OPTIONAL<br>
* _priority_ of type [**Uint8**](Ieee1609Dot2BaseTypes.md#Uint8)  OPTIONAL<br>
  indicates the priority of the revocation information
   relative to other CRLs issued for certificates with the same cracaId and
   crlSeries values. A higher value for this field indicates higher importance
   of this revocation information.



>>>
NOTE:&emsp;This mechanism is for future use; details are not specified in this
 version of the standard.
@@ -103,11 +83,9 @@ CrlPriorityInfo ::= SEQUENCE {
}
```

### <a name="TypeSpecificCrlContents"></a>TypeSpecificCrlContents
This structure contains type-specific CRL contents.
### <a name="TypeSpecificCrlContents"></a>This structure contains type-specific CRL contents.

Fields:
* fullHashCrl of type [**ToBeSignedHashIdCrl**](#ToBeSignedHashIdCrl) <br>
* _fullHashCrl_ of type [**ToBeSignedHashIdCrl**](#ToBeSignedHashIdCrl) <br>
  contains a full hash-based CRL, i.e., a listing of the
   hashes of all certificates that:
    - contain the indicated cracaId and crlSeries values, and
@@ -115,8 +93,7 @@ Fields:
    - have been revoked, and
    - have not expired.


* deltaHashCrl of type [**ToBeSignedHashIdCrl**](#ToBeSignedHashIdCrl) <br>
* _deltaHashCrl_ of type [**ToBeSignedHashIdCrl**](#ToBeSignedHashIdCrl) <br>
  contains a delta hash-based CRL, i.e., a listing of
   the hashes of all certificates that:
    - contain the indicated cracaId and crlSeries values, and
@@ -124,9 +101,7 @@ Fields:
    - have been revoked since the previous CRL that contained the indicated
   cracaId and crlSeries values.


               
* fullLinkedCrl of type [**ToBeSignedLinkageValueCrl**](#ToBeSignedLinkageValueCrl) <br>
* _fullLinkedCrl_ of type [**ToBeSignedLinkageValueCrl**](#ToBeSignedLinkageValueCrl) <br>
  and fullLinkedCrlWithAlg: contain a full linkage
   ID-based CRL, i.e., a listing of the individual and/or group linkage data
   for all certificates that:
@@ -139,9 +114,7 @@ Fields:
   linkage value generation function of 5.1.3.4 are communicated to the
   receiver of the CRL. See below in this subclause for details.


               
* deltaLinkedCrl of type [**ToBeSignedLinkageValueCrl**](#ToBeSignedLinkageValueCrl) <br>
* _deltaLinkedCrl_ of type [**ToBeSignedLinkageValueCrl**](#ToBeSignedLinkageValueCrl) <br>
  and deltaLinkedCrlWithAlg: contain a delta linkage
   ID-based CRL, i.e., a listing of the individual and/or group linkage data
   for all certificates that:
@@ -154,13 +127,10 @@ Fields:
   and linkage value generation function of 5.1.3.4 are communicated to the
   receiver of the CRL. See below in this subclause for details.


   
* fullLinkedCrlWithAlg of type [**ToBeSignedLinkageValueCrlWithAlgIdentifier**](#ToBeSignedLinkageValueCrlWithAlgIdentifier) <br>
* _fullLinkedCrlWithAlg_ of type [**ToBeSignedLinkageValueCrlWithAlgIdentifier**](#ToBeSignedLinkageValueCrlWithAlgIdentifier) <br>
   
     ...,
* deltaLinkedCrlWithAlg of type [**ToBeSignedLinkageValueCrlWithAlgIdentifier**](#ToBeSignedLinkageValueCrlWithAlgIdentifier) <br>
   
* _deltaLinkedCrlWithAlg_ of type [**ToBeSignedLinkageValueCrlWithAlgIdentifier**](#ToBeSignedLinkageValueCrlWithAlgIdentifier) <br>
If the contents of this structure is a
 ToBeSignedLinkageValueCrlWithAlgIdentifier, then the seed evolution function
 and linkage value generation function are given explicitly as specified in
@@ -194,22 +164,17 @@ TypeSpecificCrlContents ::= CHOICE {
}
```

### <a name="ToBeSignedHashIdCrl"></a>ToBeSignedHashIdCrl
This data structure represents information about a revoked
### <a name="ToBeSignedHashIdCrl"></a>This data structure represents information about a revoked
 certificate.

Fields:
* crlSerial of type [**Uint32**](Ieee1609Dot2BaseTypes.md#Uint32) <br>
* _crlSerial_ of type [**Uint32**](Ieee1609Dot2BaseTypes.md#Uint32) <br>
  is a counter that increments by 1 every time a new full
   or delta CRL is issued for the indicated crlCraca and crlSeries values.


* entries of type [**SequenceOfHashBasedRevocationInfo**](#SequenceOfHashBasedRevocationInfo) <br>
* _entries_ of type [**SequenceOfHashBasedRevocationInfo**](#SequenceOfHashBasedRevocationInfo) <br>
  contains the individual revocation information items.


   

>>>
NOTE:&emsp;To indicate that a hash-based CRL contains no individual revocation 
 information items, the recommended approach is for the SEQUENCE OF in the 
@@ -223,32 +188,26 @@ ToBeSignedHashIdCrl ::= SEQUENCE {
}
```

### <a name="SequenceOfHashBasedRevocationInfo"></a>This type is used for clarity of definitions.
 
### <a name="SequenceOfHashBasedRevocationInfo"></a>SequenceOfHashBasedRevocationInfo
This type is used for clarity of definitions.
```asn1
SequenceOfHashBasedRevocationInfo ::= 
  SEQUENCE OF HashBasedRevocationInfo
```

### <a name="HashBasedRevocationInfo"></a>HashBasedRevocationInfo
In this structure:
### <a name="HashBasedRevocationInfo"></a>In this structure:

Fields:
* id of type [**HashedId10**](Ieee1609Dot2BaseTypes.md#HashedId10) <br>
* _id_ of type [**HashedId10**](Ieee1609Dot2BaseTypes.md#HashedId10) <br>
  is the HashedId10 identifying the revoked certificate. The 
   HashedId10 is calculated with the whole-certificate hash algorithm, 
   determined as described in 6.4.3, applied to the COER-encoded certificate,
   canonicalized as defined in the definition of Certificate.


* expiry of type [**Time32**](Ieee1609Dot2BaseTypes.md#Time32) <br>
* _expiry_ of type [**Time32**](Ieee1609Dot2BaseTypes.md#Time32) <br>
  is the value computed from the validity period's start and
   duration values in that certificate.
   


   
```asn1
HashBasedRevocationInfo ::= SEQUENCE {
  id     HashedId10,
@@ -257,41 +216,31 @@ HashBasedRevocationInfo ::= SEQUENCE {
}
```

### <a name="ToBeSignedLinkageValueCrl"></a>ToBeSignedLinkageValueCrl
In this structure:
### <a name="ToBeSignedLinkageValueCrl"></a>In this structure:

Fields:
* iRev of type [**IValue**](Ieee1609Dot2BaseTypes.md#IValue) <br>
* _iRev_ of type [**IValue**](Ieee1609Dot2BaseTypes.md#IValue) <br>
  is the value iRev used in the algorithm given in 5.1.3.4. This
   value applies to all linkage-based revocation information included within
   either indvidual or groups.


* indexWithinI of type [**Uint8**](Ieee1609Dot2BaseTypes.md#Uint8) <br>
* _indexWithinI_ of type [**Uint8**](Ieee1609Dot2BaseTypes.md#Uint8) <br>
  is a counter that is set to 0 for the first CRL issued
   for the indicated combination of crlCraca, crlSeries, and iRev, and
   increments by 1 every time a new full or delta CRL is issued for the
   indicated crlCraca and crlSeries values without changing iRev.


   
* individual of type [**SequenceOfJMaxGroup**](#SequenceOfJMaxGroup)  OPTIONAL<br>
* _individual_ of type [**SequenceOfJMaxGroup**](#SequenceOfJMaxGroup)  OPTIONAL<br>
  contains individual linkage data.


   
* groups of type [**SequenceOfGroupCrlEntry**](#SequenceOfGroupCrlEntry)  OPTIONAL<br>
* _groups_ of type [**SequenceOfGroupCrlEntry**](#SequenceOfGroupCrlEntry)  OPTIONAL<br>
  contains group linkage data.


   
* groupsSingleSeed of type [**SequenceOfGroupSingleSeedCrlEntry**](#SequenceOfGroupSingleSeedCrlEntry)  OPTIONAL<br>
* _groupsSingleSeed_ of type [**SequenceOfGroupSingleSeedCrlEntry**](#SequenceOfGroupSingleSeedCrlEntry)  OPTIONAL<br>
  contains group linkage data generated with a single 
   seed.
   

   
   
     ...,

>>>
@@ -312,23 +261,23 @@ ToBeSignedLinkageValueCrl ::= SEQUENCE {
   WITH COMPONENTS {..., groupsSingleSeed PRESENT})
```

### <a name="SequenceOfJMaxGroup"></a>This type is used for clarity of definitions.
 
### <a name="SequenceOfJMaxGroup"></a>SequenceOfJMaxGroup
This type is used for clarity of definitions.
```asn1
SequenceOfJMaxGroup ::= SEQUENCE OF JMaxGroup
```

### <a name="JMaxGroup"></a>JMaxGroup
In this structure:
### <a name="JMaxGroup"></a>In this structure:

Fields:
* jmax of type [**Uint8**](Ieee1609Dot2BaseTypes.md#Uint8) <br>
* contents of type [**SequenceOfLAGroup**](#SequenceOfLAGroup) <br>
* _jmax_ of type [**Uint8**](Ieee1609Dot2BaseTypes.md#Uint8) <br>
* _contents_ of type [**SequenceOfLAGroup**](#SequenceOfLAGroup) <br>
  contains individual linkage data.
   


* jMax<br>
  is the value jMax used in the algorithm given in 5.1.3.4. This
   value applies to all linkage-based revocation information included within
   contents.

```asn1
JMaxGroup ::= SEQUENCE {
@@ -338,36 +287,28 @@ JMaxGroup ::= SEQUENCE {
}
```

### <a name="SequenceOfLAGroup"></a>This type is used for clarity of definitions.
 
### <a name="SequenceOfLAGroup"></a>SequenceOfLAGroup
This type is used for clarity of definitions.
```asn1
SequenceOfLAGroup ::= SEQUENCE OF LAGroup
```

### <a name="LAGroup"></a>LAGroup
In this structure:
### <a name="LAGroup"></a>In this structure:

Fields:
* la1Id of type [**LaId**](Ieee1609Dot2BaseTypes.md#LaId) <br>
* _la1Id_ of type [**LaId**](Ieee1609Dot2BaseTypes.md#LaId) <br>
  is the value LinkageAuthorityIdentifier1 used in the
   algorithm given in 5.1.3.4. This value applies to all linkage-based
   revocation information included within contents.


* la2Id of type [**LaId**](Ieee1609Dot2BaseTypes.md#LaId) <br>
* _la2Id_ of type [**LaId**](Ieee1609Dot2BaseTypes.md#LaId) <br>
  is the value LinkageAuthorityIdentifier2 used in the
   algorithm given in 5.1.3.4. This value applies to all linkage-based
   revocation information included within contents.


   
* contents of type [**SequenceOfIMaxGroup**](#SequenceOfIMaxGroup) <br>
* _contents_ of type [**SequenceOfIMaxGroup**](#SequenceOfIMaxGroup) <br>
  contains individual linkage data.
   


   
```asn1
LAGroup ::= SEQUENCE {
  la1Id    LaId,
@@ -377,34 +318,28 @@ LAGroup ::= SEQUENCE {
}
```

### <a name="SequenceOfIMaxGroup"></a>This type is used for clarity of definitions.
 
### <a name="SequenceOfIMaxGroup"></a>SequenceOfIMaxGroup
This type is used for clarity of definitions.
```asn1
SequenceOfIMaxGroup ::= SEQUENCE OF IMaxGroup
```

### <a name="IMaxGroup"></a>IMaxGroup
In this structure:
### <a name="IMaxGroup"></a>In this structure:

Fields:
* iMax of type [**Uint16**](Ieee1609Dot2BaseTypes.md#Uint16) <br>
* _iMax_ of type [**Uint16**](Ieee1609Dot2BaseTypes.md#Uint16) <br>
  indicates that for the entries in contents, revocation 
   information need no longer be calculated once iCert > iMax as the holder 
   is known to have no more valid certs at that point. iMax is not directly 
   used in the calculation of the linkage values, it is used to determine 
   when revocation information can safely be deleted.


* contents of type [**SequenceOfIndividualRevocation**](#SequenceOfIndividualRevocation) <br>
* _contents_ of type [**SequenceOfIndividualRevocation**](#SequenceOfIndividualRevocation) <br>
  contains individual linkage data for certificates that are 
   revoked using two seeds, per the algorithm given in per the mechanisms 
   given in 5.1.3.4 and with seedEvolutionFunctionIdentifier and 
   linkageValueGenerationFunctionIdentifier obtained as specified in 7.3.3.


   
* singleSeed of type [**SequenceOfLinkageSeed**](Ieee1609Dot2BaseTypes.md#SequenceOfLinkageSeed)  OPTIONAL<br>
* _singleSeed_ of type [**SequenceOfLinkageSeed**](Ieee1609Dot2BaseTypes.md#SequenceOfLinkageSeed)  OPTIONAL<br>
  contains individual linkage data for certificates that 
   are revoked using a single seed, per the algorithm given in per the 
   mechanisms given in 5.1.3.4 and with seedEvolutionFunctionIdentifier and 
@@ -412,7 +347,6 @@ Fields:
   

   
   
     ...,
```asn1
IMaxGroup ::= SEQUENCE {
@@ -423,30 +357,24 @@ IMaxGroup ::= SEQUENCE {
}
```

### <a name="SequenceOfIndividualRevocation"></a>This type is used for clarity of definitions.
 
### <a name="SequenceOfIndividualRevocation"></a>SequenceOfIndividualRevocation
This type is used for clarity of definitions.
```asn1
SequenceOfIndividualRevocation ::= 
  SEQUENCE (SIZE(0..MAX)) OF IndividualRevocation
```

### <a name="IndividualRevocation"></a>IndividualRevocation
In this structure:
### <a name="IndividualRevocation"></a>In this structure:

Fields:
* linkageSeed1 of type [**LinkageSeed**](Ieee1609Dot2BaseTypes.md#LinkageSeed) <br>
* _linkageSeed1_ of type [**LinkageSeed**](Ieee1609Dot2BaseTypes.md#LinkageSeed) <br>
  is the value LinkageSeed1 used in the algorithm given 
   in 5.1.3.4.


* linkageSeed2 of type [**LinkageSeed**](Ieee1609Dot2BaseTypes.md#LinkageSeed) <br>
* _linkageSeed2_ of type [**LinkageSeed**](Ieee1609Dot2BaseTypes.md#LinkageSeed) <br>
  is the value LinkageSeed2 used in the algorithm given 
   in 5.1.3.4.
   


   
```asn1
IndividualRevocation ::= SEQUENCE { 
  linkageSeed1 LinkageSeed,
@@ -455,50 +383,38 @@ IndividualRevocation ::= SEQUENCE {
}
```

### <a name="SequenceOfGroupCrlEntry"></a>This type is used for clarity of definitions.
 
### <a name="SequenceOfGroupCrlEntry"></a>SequenceOfGroupCrlEntry
This type is used for clarity of definitions.
```asn1
SequenceOfGroupCrlEntry ::= SEQUENCE OF GroupCrlEntry
```

### <a name="GroupCrlEntry"></a>GroupCrlEntry
In this structure:
### <a name="GroupCrlEntry"></a>In this structure:

Fields:
* iMax of type [**Uint16**](Ieee1609Dot2BaseTypes.md#Uint16) <br>
* _iMax_ of type [**Uint16**](Ieee1609Dot2BaseTypes.md#Uint16) <br>
  indicates that for these certificates, revocation information 
   need no longer be calculated once iCert > iMax as the holders are known 
   to have no more valid certs for that (crlCraca, crlSeries) at that point.


* la1Id of type [**LaId**](Ieee1609Dot2BaseTypes.md#LaId) <br>
* _la1Id_ of type [**LaId**](Ieee1609Dot2BaseTypes.md#LaId) <br>
  is the value LinkageAuthorityIdentifier1 used in the 
   algorithm given in 5.1.3.4. This value applies to all linkage-based 
   revocation information included within contents.


   
* linkageSeed1 of type [**LinkageSeed**](Ieee1609Dot2BaseTypes.md#LinkageSeed) <br>
* _linkageSeed1_ of type [**LinkageSeed**](Ieee1609Dot2BaseTypes.md#LinkageSeed) <br>
  is the value LinkageSeed1 used in the algorithm given 
   in 5.1.3.4.


   
* la2Id of type [**LaId**](Ieee1609Dot2BaseTypes.md#LaId) <br>
* _la2Id_ of type [**LaId**](Ieee1609Dot2BaseTypes.md#LaId) <br>
  is the value LinkageAuthorityIdentifier2 used in the 
   algorithm given in 5.1.3.4. This value applies to all linkage-based 
   revocation information included within contents.


   
* linkageSeed2 of type [**LinkageSeed**](Ieee1609Dot2BaseTypes.md#LinkageSeed) <br>
* _linkageSeed2_ of type [**LinkageSeed**](Ieee1609Dot2BaseTypes.md#LinkageSeed) <br>
  is the value LinkageSeed2 used in the algorithm given 
   in 5.1.3.4.
   


   
```asn1
GroupCrlEntry ::= SEQUENCE {
  iMax         Uint16,
@@ -510,52 +426,37 @@ GroupCrlEntry ::= SEQUENCE {
}
```

### <a name="ToBeSignedLinkageValueCrlWithAlgIdentifier"></a>ToBeSignedLinkageValueCrlWithAlgIdentifier
In this structure:
### <a name="ToBeSignedLinkageValueCrlWithAlgIdentifier"></a>In this structure:

Fields:
* iRev of type [**IValue**](Ieee1609Dot2BaseTypes.md#IValue) <br>
* _iRev_ of type [**IValue**](Ieee1609Dot2BaseTypes.md#IValue) <br>
  is the value iRev used in the algorithm given in 5.1.3.4. This 
   value applies to all linkage-based revocation information included within 
   either indvidual or groups.


* indexWithinI of type [**Uint8**](Ieee1609Dot2BaseTypes.md#Uint8) <br>
* _indexWithinI_ of type [**Uint8**](Ieee1609Dot2BaseTypes.md#Uint8) <br>
  is a counter that is set to 0 for the first CRL issued 
   for the indicated combination of crlCraca, crlSeries, and iRev, and increments by 1 every time a new full or delta CRL is issued for the indicated crlCraca and crlSeries values without changing iRev.


   
* seedEvolution of type [**SeedEvolutionFunctionIdentifier**](#SeedEvolutionFunctionIdentifier) <br>
* _seedEvolution_ of type [**SeedEvolutionFunctionIdentifier**](#SeedEvolutionFunctionIdentifier) <br>
  contains an identifier for the seed evolution 
   function, used as specified in  5.1.3.4.


   
* lvGeneration of type [**LvGenerationFunctionIdentifier**](#LvGenerationFunctionIdentifier) <br>
* _lvGeneration_ of type [**LvGenerationFunctionIdentifier**](#LvGenerationFunctionIdentifier) <br>
  contains an identifier for the linkage value 
   generation function, used as specified in  5.1.3.4.


   
* individual of type [**SequenceOfJMaxGroup**](#SequenceOfJMaxGroup)  OPTIONAL<br>
* _individual_ of type [**SequenceOfJMaxGroup**](#SequenceOfJMaxGroup)  OPTIONAL<br>
  contains individual linkage data.


   
* groups of type [**SequenceOfGroupCrlEntry**](#SequenceOfGroupCrlEntry)  OPTIONAL<br>
* _groups_ of type [**SequenceOfGroupCrlEntry**](#SequenceOfGroupCrlEntry)  OPTIONAL<br>
  contains group linkage data for linkage value generation 
   with two seeds.


   
* groupsSingleSeed of type [**SequenceOfGroupSingleSeedCrlEntry**](#SequenceOfGroupSingleSeedCrlEntry)  OPTIONAL<br>
* _groupsSingleSeed_ of type [**SequenceOfGroupSingleSeedCrlEntry**](#SequenceOfGroupSingleSeedCrlEntry)  OPTIONAL<br>
  contains group linkage data for linkage value 
   generation with one seed.
   


   
```asn1
ToBeSignedLinkageValueCrlWithAlgIdentifier ::= SEQUENCE {  
  iRev             IValue,
@@ -571,24 +472,19 @@ ToBeSignedLinkageValueCrlWithAlgIdentifier ::= SEQUENCE {
   WITH COMPONENTS {..., groupsSingleSeed PRESENT})
```

### <a name="SequenceOfGroupSingleSeedCrlEntry"></a>This type is used for clarity of definitions.
 
### <a name="SequenceOfGroupSingleSeedCrlEntry"></a>SequenceOfGroupSingleSeedCrlEntry
This type is used for clarity of definitions.
```asn1
SequenceOfGroupSingleSeedCrlEntry ::= 
  SEQUENCE OF GroupSingleSeedCrlEntry
```

### <a name="GroupSingleSeedCrlEntry"></a>GroupSingleSeedCrlEntry
This structure contains the linkage seed for group revocation with 
### <a name="GroupSingleSeedCrlEntry"></a>This structure contains the linkage seed for group revocation with 
 a single seed. The seed is used as specified in the algorithms in 5.1.3.4.

Fields:
* iMax of type [**Uint16**](Ieee1609Dot2BaseTypes.md#Uint16) <br>
* laId of type [**LaId**](Ieee1609Dot2BaseTypes.md#LaId) <br>
   
* linkageSeed of type [**LinkageSeed**](Ieee1609Dot2BaseTypes.md#LinkageSeed) <br>
   
* _iMax_ of type [**Uint16**](Ieee1609Dot2BaseTypes.md#Uint16) <br>
* _laId_ of type [**LaId**](Ieee1609Dot2BaseTypes.md#LaId) <br>
* _linkageSeed_ of type [**LinkageSeed**](Ieee1609Dot2BaseTypes.md#LinkageSeed) <br>
```asn1
GroupSingleSeedCrlEntry ::= SEQUENCE {
  iMax        Uint16,
@@ -597,10 +493,9 @@ GroupSingleSeedCrlEntry ::= SEQUENCE {
}
```


### <a name="ExpansionAlgorithmIdentifier"></a>ExpansionAlgorithmIdentifier
This structure contains an identifier for the algorithms specified 
### <a name="ExpansionAlgorithmIdentifier"></a>This structure contains an identifier for the algorithms specified 
 in 5.1.3.4.
 
```asn1
ExpansionAlgorithmIdentifier ::= ENUMERATED {
  sha256ForI-aesForJ,
@@ -609,27 +504,19 @@ ExpansionAlgorithmIdentifier ::= ENUMERATED {
}
```


### <a name="SeedEvolutionFunctionIdentifier"></a>SeedEvolutionFunctionIdentifier
This is the identifier for the seed evolution function. See 5.1.3 
### <a name="SeedEvolutionFunctionIdentifier"></a>This is the identifier for the seed evolution function. See 5.1.3 
 for details of use.
 
```asn1
SeedEvolutionFunctionIdentifier ::= NULL
```


### <a name="LvGenerationFunctionIdentifier"></a>LvGenerationFunctionIdentifier
This is the identifier for the linkage value generation function. 
### <a name="LvGenerationFunctionIdentifier"></a>This is the identifier for the linkage value generation function. 
 See 5.1.3 for details of use.
 
```asn1
LvGenerationFunctionIdentifier ::= NULL
```


This is the identifier for the seed evolution function. See 5.1.3 
 for details of use.
  This is the identifier for the linkage value generation function. 
 See 5.1.3 for details of use.

+12 −27
Original line number Diff line number Diff line
# ASN.1 module Ieee1609Dot2Dot1AcaEeInterface
# <a name="Ieee1609Dot2Dot1AcaEeInterface"></a>ASN.1 module Ieee1609Dot2Dot1AcaEeInterface
OID: _{iso(1) identified-organization(3) ieee(111) standards-association-numbered-series-standards(2) wave-stds(1609) dot2(2) extension-standards(255) dot1(1) interfaces(1) aca-ee(1) major-version-2(2) minor-version-3(3)}_
 @note Section references in this file are to clauses in IEEE Std
 Section references in this file are to clauses in IEEE Std
 1609.2.1 unless indicated otherwise. Full forms of acronyms and
 abbreviations used in this file are specified in 3.2.
 

## Imports:
 * **[Ieee1609Dot2](Ieee1609Dot2.md)** *{iso(1) identified-organization(3) ieee(111) standards-association-numbered-series-standards(2) wave-stds(1609) dot2(2) base(1) schema(1) major-version-2(2) minor-version-5(5)} WITH SUCCESSORS*<br/>
  
 * **[Ieee1609Dot2BaseTypes](Ieee1609Dot2BaseTypes.md)** *{iso(1) identified-organization(3) ieee(111) standards-association-numbered-series-standards(2) wave-stds(1609) dot2(2) base(1) base-types(2) major-version-2(2) minor-version-3(3)} WITH SUCCESSORS*<br/>
  
* **[Ieee1609Dot2](Ieee1609Dot2.md)** *{iso(1) identified-organization(3) ieee(111) standards-association-numbered-series-standards(2) wave-stds(1609) dot2(2) base(1) schema(1) major-version-2(2) minor-version-6(6)}*<br/>
* **[Ieee1609Dot2BaseTypes](Ieee1609Dot2BaseTypes.md)** *{iso(1) identified-organization(3) ieee(111) standards-association-numbered-series-standards(2) wave-stds(1609) dot2(2) base(1) base-types(2) major-version-2(2) minor-version-4(4)}*<br/>
## Data Elements:
### <a name="AcaEeInterfacePdu"></a>AcaEeInterfacePdu
This is the parent structure for all structures exchanged between
### <a name="AcaEeInterfacePdu"></a>This is the parent structure for all structures exchanged between
 the ACA and the EE. The ACA - EE interface is a logical interface rather
 than a direct communications interface in that there is no direct message
 flow between the ACA and the EE: Messages from the ACA are stored
@@ -21,13 +17,11 @@ This is the parent structure for all structures exchanged between
 PDUs are created by the ACA and encrypted for the EE, and not modified and
 frequently not read by the RA. An overview of this structure is as follows:

Fields:
* acaEeCertResponse of type [**AcaEeCertResponse**](#AcaEeCertResponse) <br>
* _acaEeCertResponse_ of type [**AcaEeCertResponse**](#AcaEeCertResponse) <br>
  contains the ACA's response to
   RaAcaCertRequestSPDU, which is meant for the EE and sent via the RA.
   


```asn1
AcaEeInterfacePdu ::= CHOICE {
  acaEeCertResponse  AcaEeCertResponse,
@@ -35,30 +29,23 @@ AcaEeInterfacePdu ::= CHOICE {
}
```

### <a name="AcaEeCertResponse"></a>AcaEeCertResponse
This structure contains a certificate and associated data as
### <a name="AcaEeCertResponse"></a>This structure contains a certificate and associated data as
 generated by the ACA for the EE that will be the holder of that
 certificate. An overview of this structure is as follows:

Fields:
* version of type [**Uint8**](Ieee1609Dot2BaseTypes.md#Uint8)  (2)<br>
* _version_ of type [**Uint8**](Ieee1609Dot2BaseTypes.md#Uint8)  (2)<br>
  contains the current version of the structure.


* generationTime of type [**Time32**](Ieee1609Dot2BaseTypes.md#Time32) <br>
* _generationTime_ of type [**Time32**](Ieee1609Dot2BaseTypes.md#Time32) <br>
  contains the generation time of AcaEeCertResponse.


   
* certificate of type [**Certificate**](Ieee1609Dot2.md#Certificate) <br>
* _certificate_ of type [**Certificate**](Ieee1609Dot2.md#Certificate) <br>
  contains an authorization certificate generated by the
   ACA. It is of the type indicated by the type field in the corresponding
   request (if the requester requested an incorrect type, the response would
   be an error not an instance of this structure).


   
* privateKeyInfo of type **OCTET STRING**  (SIZE (32)) OPTIONAL<br>
* _privateKeyInfo_ of type **OCTET STRING**  (SIZE (32)) OPTIONAL<br>
  shall be:
     - Present and contain the private key randomization value, if the field
   certificate.type is explicit and the butterfly key mechanism was used to
@@ -71,8 +58,6 @@ Fields:
   


   

>>>
NOTE:&emsp;In the case where the butterfly expansion function is used
 to set certEncKey in RaAcaCertRequest, the value j is not communicated to
Loading