Skip to content
Ieee1609Dot2Dot1Protocol.asn 48 KiB
Newer Older
--***************************************************************************--
--                       IEEE Std 1609.2.1: Protocol                         --
--***************************************************************************--

/** 
 * @brief NOTE: 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.
 */

Ieee1609Dot2Dot1Protocol {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) protocol(17) 
  major-version-2(2) minor-version-2(2)}

DEFINITIONS AUTOMATIC TAGS ::= BEGIN

EXPORTS ALL;

IMPORTS
  CrlSeries,
  EccP256CurvePoint,
  EccP384CurvePoint,
  EcdsaP256Signature,
  EcdsaP384Signature,
  GeographicRegion, 
  HashAlgorithm,
  HashedId3,
  Psid,
  PublicEncryptionKey,
  PublicVerificationKey,
  SequenceOfPsid,
  SequenceOfPsidSsp,
  SubjectAssurance,
  Uint8,
  Uint16,
  ValidityPeriod
FROM Ieee1609Dot2BaseTypes {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)}
 
  Certificate,
  CertificateId,
  Ieee1609Dot2Data,
  SequenceOfCertificate,
  SequenceOfPsidGroupPermissions,
  SignerIdentifier,
  VerificationKeyIndicator,
  Signature,
  ToBeSignedCertificate
FROM Ieee1609Dot2 {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-4(4)}

  AcaEeInterfacePdu
FROM Ieee1609Dot2Dot1AcaEeInterface {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-2(2)}

  AcaLaInterfacePdu
FROM Ieee1609Dot2Dot1AcaLaInterface {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-la(2) major-version-2(2)}

  AcaMaInterfacePdu
FROM Ieee1609Dot2Dot1AcaMaInterface {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-ma(3) major-version-2(2)}

  AcaRaInterfacePdu
FROM Ieee1609Dot2Dot1AcaRaInterface {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-ra(4) major-version-2(2) minor-version-2(2)}

  AcpcTreeId
FROM Ieee1609Dot2Dot1Acpc {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) acpc(18) major-version-1(1) minor-version-2(2)}

  CertManagementPdu
FROM Ieee1609Dot2Dot1CertManagement{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) cert-management(7) 
  major-version-2(2) minor-version-2(2)}

  EcaEeInterfacePdu
FROM Ieee1609Dot2Dot1EcaEeInterface {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) 
  eca-ee(9) major-version-2(2) minor-version-2(2)}

  EeMaInterfacePdu
FROM Ieee1609Dot2Dot1EeMaInterface {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) ee-ma(10) major-version-2(2)}

  EeRaInterfacePdu
FROM Ieee1609Dot2Dot1EeRaInterface {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) ee-ra(11) major-version-2(2) minor-version-2(2)}

  LaMaInterfacePdu
FROM Ieee1609Dot2Dot1LaMaInterface {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) la-ma(12) major-version-2(2)}

  LaRaInterfacePdu
FROM Ieee1609Dot2Dot1LaRaInterface {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) la-ra(13) major-version-2(2)}

  MaRaInterfacePdu
FROM Ieee1609Dot2Dot1MaRaInterface {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) ma-ra(14) major-version-2(2)}
;

/**
 * @class SecurityMgmtPsid
 *
 * @brief This PSID, 0x23, identifies security management activities as
 * defined in this document. 
 */
  SecurityMgmtPsid ::= Psid (35)

/**
 * @class ScmsPdu
 *
 * @brief This is the parent structure that encompasses all parent structures
 * of interfaces defined in the SCMS. An overview of this structure is as
 * follows:
 *
 * @param version contains the current version of the structure.
 *
 * @param aca-ee contains the interface structures defined for interaction
 * between the ACA and the EE.
 *
 * @param aca-la contains the interface structures defined for interaction
 * between the ACA and the LA.
 *
 * @param aca-ma contains the interface structures defined for interaction
 * between the ACA and the MA.
 *
 * @param aca-ra contains the interface structures defined for interaction
 * between the ACA and the RA.
 *
 * @param cert contains the interface structures defined for certificate
 * management.
 *
 * @param eca-ee contains the interface structures defined for interaction
 * between the ECA and the EE.
 *
 * @param ee-ma contains the interface structures defined for interaction
 * between the EE and the MA.
 *
 * @param ee-ra contains the interface structures defined for interaction
 * between the EE and the RA.
 *
 * @param la-ma contains the interface structures defined for interaction
 * between the LA and the MA.
 *
 * @param la-ra contains the interface structures defined for interaction
 * between the LA and the RA.
 *
 * @param ma-ra contains the interface structures defined for interactions
 * between the MA and the RA.
 */
  ScmsPdu ::= SEQUENCE {
    version  Uint8 (2),
    content  CHOICE {
      aca-ee  AcaEeInterfacePdu,
      aca-la  AcaLaInterfacePdu,
      aca-ma  AcaMaInterfacePdu,
      aca-ra  AcaRaInterfacePdu,
      cert    CertManagementPdu,
      eca-ee  EcaEeInterfacePdu,
      ee-ma   EeMaInterfacePdu,
      ee-ra   EeRaInterfacePdu,
      la-ma   LaMaInterfacePdu,
      la-ra   LaRaInterfacePdu,
      ma-ra   MaRaInterfacePdu,
      ...
    }
  }

--***************************************************************************--
--                            Parameterized Types                            --
--***************************************************************************--

/**
 * @class ScmsPdu-Scoped
 *
 * @brief This structure defines a parameterized type for creating a scoped
 * data as a subtype of ScmsPdu.
 */
  ScmsPdu-Scoped {Pdu} ::= ScmsPdu (WITH COMPONENTS {
Loading full blame...