pycrate/pycrate_asn1dir/ITUT_X520_2016-10/PkiPmiExternalDataTypes.asn

554 lines
20 KiB
Groff

PkiPmiExternalDataTypes {joint-iso-itu-t ds(5) module(1) pkiPmiExternalDataTypes(40) 8}
DEFINITIONS ::=
BEGIN
-- EXPORTS All
IMPORTS
authenticationFramework, certificateExtensions, intSecurity, selectedAttributeTypes
FROM UsefulDefinitions {joint-iso-itu-t ds(5) module(1) usefulDefinitions(0) 8}
EXTENSION
FROM AuthenticationFramework authenticationFramework
GeneralName
FROM CertificateExtensions certificateExtensions
PresentationAddress
FROM SelectedAttributeTypes selectedAttributeTypes ;
--/* The UserNotice data type is referenced by the userNotice extension. It is copied from IETF RFC 5280 */
UserNotice ::= SEQUENCE {
noticeRef NoticeReference OPTIONAL,
explicitText DisplayText OPTIONAL }
NoticeReference ::= SEQUENCE {
organization DisplayText,
noticeNumbers SEQUENCE OF INTEGER }
DisplayText ::= CHOICE {
visibleString VisibleString(SIZE (1..200)),
bmpString BMPString(SIZE (1..200)),
utf8String UTF8String(SIZE (1..200)) }
--/* IETF RFC 5280 defines some extensions not copied from this Specification. The formal specification of these extensions are included here for easy reference, e.g., when using ASN.1 tools. For detailed description, see IETF 5280.*/
--/* Authority information access extension*/
authorityInfoAccess EXTENSION ::= {
SYNTAX AuthorityInfoAccessSyntax
IDENTIFIED BY id-pe-authorityInfoAccess }
AuthorityInfoAccessSyntax ::= SEQUENCE SIZE (1..MAX) OF AccessDescription
AccessDescription ::= SEQUENCE {
accessMethod OBJECT IDENTIFIER,
accessLocation GeneralName }
--/* Subject information access extension*/
subjectInfoAccess EXTENSION ::= {
SYNTAX SubjectInfoAccessSyntax
IDENTIFIED BY id-pe-subjectInfoAccess }
SubjectInfoAccessSyntax ::= SEQUENCE SIZE (1..MAX) OF AccessDescription
--/* IETF RFC 5280 (PKIX) object identifier allocation*/
id-pkix OBJECT IDENTIFIER ::= { intSecurity mechanisms(5) pkix(7) }
id-pe OBJECT IDENTIFIER ::= { id-pkix 1 }
id-ad OBJECT IDENTIFIER ::= { id-pkix 48 }
id-pe-authorityInfoAccess OBJECT IDENTIFIER ::= { id-pe 1 }
id-pe-subjectInfoAccess OBJECT IDENTIFIER ::= { id-pe 11 }
id-ad-caIssuers OBJECT IDENTIFIER ::= { id-ad 2 }
id-ad-ocsp OBJECT IDENTIFIER ::= { id-ad 1 }
--/* The following is an abstract of the MTSAbstractService module specified by
-- Rec. ITU-T Rec. X.411 | ISO/IEC 10021-4.*/
G3FacsimileNonBasicParameters ::= BIT STRING {
two-dimensional(8), -- As defined in ITU-T Recommendation T.30
fine-resolution(9),
unlimited-length(20), -- These bit values are chosen such that when
b4-length(21), -- encoded using ASN.1 Basic Encoding Rules
a3-width(22), -- the resulting octets have the same values
b4-width(23), -- as for T.30 encoding
t6-coding(25),
uncompressed(30), -- Trailing zero bits are not significant
width-middle-864-of-1728(37), -- It is recommended that implementations
width-middle-1216-of-1728(38), -- should not encode more than 32 bits unless
resolution-type(44), -- higher numbered bits are non-zero
resolution-400x400(45), resolution-300x300(46), resolution-8x15(47),
edi(49), dtm(50), bft(51), mixed-mode(58), character-mode(60),
twelve-bits(65), preferred-huffmann(66), full-colour(67), jpeg(68),
processable-mode-26(71)}
ORAddress ::= SEQUENCE {
built-in-standard-attributes BuiltInStandardAttributes,
built-in-domain-defined-attributes BuiltInDomainDefinedAttributes OPTIONAL,
-- see also teletex-domain-defined-attributes
extension-attributes ExtensionAttributes OPTIONAL }
-- The OR-address is semantically absent from the OR-name if the built-in-standard-attribute
-- sequence is empty and the built-in-domain-defined-attributes and extension-attributes are both omitted.
-- Built-in Standard Attributes
BuiltInStandardAttributes ::= SEQUENCE {
country-name CountryName OPTIONAL,
administration-domain-name AdministrationDomainName OPTIONAL,
network-address [0] NetworkAddress OPTIONAL,
-- see also extended-network-address
terminal-identifier [1] TerminalIdentifier OPTIONAL,
private-domain-name [2] PrivateDomainName OPTIONAL,
organization-name [3] OrganizationName OPTIONAL,
-- see also teletex-organization-name
numeric-user-identifier [4] NumericUserIdentifier OPTIONAL,
personal-name [5] PersonalName OPTIONAL,
-- see also teletex-personal-name
organizational-unit-names [6] OrganizationalUnitNames OPTIONAL
-- see also teletex-organizational-unit-names --}
CountryName ::= [APPLICATION 1] CHOICE {
x121-dcc-code NumericString(SIZE (ub-country-name-numeric-length)),
iso-3166-alpha2-code PrintableString(SIZE (ub-country-name-alpha-length)) }
AdministrationDomainName ::= [APPLICATION 2] CHOICE {
numeric NumericString(SIZE (0..ub-domain-name-length)),
printable PrintableString(SIZE (0..ub-domain-name-length)) }
NetworkAddress ::= X121Address
-- see also extended-network-address
X121Address ::= NumericString(SIZE (1..ub-x121-address-length))
TerminalIdentifier ::= PrintableString(SIZE (1..ub-terminal-id-length))
PrivateDomainName ::= CHOICE {
numeric NumericString(SIZE (1..ub-domain-name-length)),
printable PrintableString(SIZE (1..ub-domain-name-length)) }
OrganizationName ::= PrintableString(SIZE (1..ub-organization-name-length))
-- see also teletex-organization-name
NumericUserIdentifier ::= NumericString(SIZE (1..ub-numeric-user-id-length))
PersonalName ::= SET {
surname [0] PrintableString(SIZE (1..ub-surname-length)),
given-name
[1] PrintableString(SIZE (1..ub-given-name-length)) OPTIONAL,
initials
[2] PrintableString(SIZE (1..ub-initials-length)) OPTIONAL,
generation-qualifier
[3] PrintableString(SIZE (1..ub-generation-qualifier-length)) OPTIONAL }
-- see also teletex-personal-name
OrganizationalUnitNames ::=
SEQUENCE SIZE (1..ub-organizational-units) OF OrganizationalUnitName
-- see also teletex-organizational-unit-names
OrganizationalUnitName ::=
PrintableString(SIZE (1..ub-organizational-unit-name-length))
-- Built-in Domain-defined Attributes
BuiltInDomainDefinedAttributes ::=
SEQUENCE SIZE (1..ub-domain-defined-attributes) OF
BuiltInDomainDefinedAttribute
BuiltInDomainDefinedAttribute ::= SEQUENCE {
type PrintableString(SIZE (1..ub-domain-defined-attribute-type-length)),
value PrintableString(SIZE (1..ub-domain-defined-attribute-value-length)) }
-- Extension Attributes
ExtensionAttributes ::=
SET SIZE (1..ub-extension-attributes) OF ExtensionAttribute
ExtensionAttribute ::= SEQUENCE {
extension-attribute-type
[0] EXTENSION-ATTRIBUTE.&id({ExtensionAttributeTable}),
extension-attribute-value
[1] EXTENSION-ATTRIBUTE.&Type
({ExtensionAttributeTable}{@extension-attribute-type}) }
EXTENSION-ATTRIBUTE ::= CLASS {
&id INTEGER(0..ub-extension-attributes) UNIQUE,
&Type }
WITH SYNTAX {
&Type
IDENTIFIED BY &id }
ExtensionAttributeTable EXTENSION-ATTRIBUTE ::=
{common-name | teletex-common-name | universal-common-name |
teletex-organization-name | universal-organization-name |
teletex-personal-name | universal-personal-name |
teletex-organizational-unit-names | universal-organizational-unit-names |
teletex-domain-defined-attributes | universal-domain-defined-attributes |
pds-name | physical-delivery-country-name | postal-code |
physical-delivery-office-name | universal-physical-delivery-office-name |
physical-delivery-office-number | universal-physical-delivery-office-number
| extension-OR-address-components |
universal-extension-OR-address-components | physical-delivery-personal-name
| universal-physical-delivery-personal-name |
physical-delivery-organization-name |
universal-physical-delivery-organization-name |
extension-physical-delivery-address-components |
universal-extension-physical-delivery-address-components |
unformatted-postal-address | universal-unformatted-postal-address |
street-address | universal-street-address | post-office-box-address |
universal-post-office-box-address | poste-restante-address |
universal-poste-restante-address | unique-postal-name |
universal-unique-postal-name | local-postal-attributes |
universal-local-postal-attributes | extended-network-address | terminal-type }
-- Extension Standard Attributes
common-name EXTENSION-ATTRIBUTE ::= {
CommonName
IDENTIFIED BY 1 }
CommonName ::= PrintableString(SIZE (1..ub-common-name-length))
teletex-common-name EXTENSION-ATTRIBUTE ::= {
TeletexCommonName
IDENTIFIED BY 2 }
TeletexCommonName ::= TeletexString(SIZE (1..ub-common-name-length))
universal-common-name EXTENSION-ATTRIBUTE ::= {
UniversalCommonName
IDENTIFIED BY 24 }
UniversalCommonName ::= UniversalOrBMPString{ub-common-name-length}
teletex-organization-name EXTENSION-ATTRIBUTE ::= {
TeletexOrganizationName
IDENTIFIED BY 3 }
TeletexOrganizationName ::=
TeletexString(SIZE (1..ub-organization-name-length))
universal-organization-name EXTENSION-ATTRIBUTE ::= {
UniversalOrganizationName
IDENTIFIED BY 25 }
UniversalOrganizationName ::= UniversalOrBMPString{ub-organization-name-length}
teletex-personal-name EXTENSION-ATTRIBUTE ::= {
TeletexPersonalName
IDENTIFIED BY 4 }
TeletexPersonalName ::= SET {
surname [0] TeletexString(SIZE (1..ub-surname-length)),
given-name
[1] TeletexString(SIZE (1..ub-given-name-length)) OPTIONAL,
initials
[2] TeletexString(SIZE (1..ub-initials-length)) OPTIONAL,
generation-qualifier
[3] TeletexString(SIZE (1..ub-generation-qualifier-length)) OPTIONAL }
universal-personal-name EXTENSION-ATTRIBUTE ::= {
UniversalPersonalName
IDENTIFIED BY 26 }
UniversalPersonalName ::= SET {
surname
[0] UniversalOrBMPString{ub-universal-surname-length},
-- If a language is specified within surname, then that language applies to each of the
-- following optional components unless the component specifies another language.
given-name
[1] UniversalOrBMPString{ub-universal-given-name-length} OPTIONAL,
initials
[2] UniversalOrBMPString{ub-universal-initials-length} OPTIONAL,
generation-qualifier
[3] UniversalOrBMPString{ub-universal-generation-qualifier-length} OPTIONAL }
teletex-organizational-unit-names EXTENSION-ATTRIBUTE ::= {
TeletexOrganizationalUnitNames
IDENTIFIED BY 5 }
TeletexOrganizationalUnitNames ::=
SEQUENCE SIZE (1..ub-organizational-units) OF TeletexOrganizationalUnitName
TeletexOrganizationalUnitName ::=
TeletexString(SIZE (1..ub-organizational-unit-name-length))
universal-organizational-unit-names EXTENSION-ATTRIBUTE ::= {
UniversalOrganizationalUnitNames
IDENTIFIED BY 27 }
UniversalOrganizationalUnitNames ::=
SEQUENCE SIZE (1..ub-organizational-units) OF UniversalOrganizationalUnitName
-- If a unit name specifies a language, then that language applies to subordinate unit
-- names unless the subordinate specifies another language.
UniversalOrganizationalUnitName ::=
UniversalOrBMPString{ub-organizational-unit-name-length}
UniversalOrBMPString{INTEGER:ub-string-length} ::= SET {
character-encoding CHOICE {
two-octets BMPString(SIZE (1..ub-string-length)),
four-octets UniversalString(SIZE (1..ub-string-length))},
iso-639-language-code PrintableString(SIZE (2 | 5)) OPTIONAL }
pds-name EXTENSION-ATTRIBUTE ::= {
PDSName
IDENTIFIED BY 7 }
PDSName ::= PrintableString(SIZE (1..ub-pds-name-length))
physical-delivery-country-name EXTENSION-ATTRIBUTE ::= {
PhysicalDeliveryCountryName
IDENTIFIED BY 8 }
PhysicalDeliveryCountryName ::= CHOICE {
x121-dcc-code NumericString(SIZE (ub-country-name-numeric-length)),
iso-3166-alpha2-code PrintableString(SIZE (ub-country-name-alpha-length)) }
postal-code EXTENSION-ATTRIBUTE ::= {
PostalCode
IDENTIFIED BY 9 }
PostalCode ::= CHOICE {
numeric-code NumericString(SIZE (1..ub-postal-code-length)),
printable-code PrintableString(SIZE (1..ub-postal-code-length))
}
physical-delivery-office-name EXTENSION-ATTRIBUTE ::= {
PhysicalDeliveryOfficeName
IDENTIFIED BY 10 }
PhysicalDeliveryOfficeName ::= PDSParameter
universal-physical-delivery-office-name EXTENSION-ATTRIBUTE ::= {
UniversalPhysicalDeliveryOfficeName
IDENTIFIED BY 29 }
UniversalPhysicalDeliveryOfficeName ::= UniversalPDSParameter
physical-delivery-office-number EXTENSION-ATTRIBUTE ::= {
PhysicalDeliveryOfficeNumber
IDENTIFIED BY 11 }
PhysicalDeliveryOfficeNumber ::= PDSParameter
universal-physical-delivery-office-number EXTENSION-ATTRIBUTE ::= {
UniversalPhysicalDeliveryOfficeNumber
IDENTIFIED BY 30 }
UniversalPhysicalDeliveryOfficeNumber ::= UniversalPDSParameter
extension-OR-address-components EXTENSION-ATTRIBUTE ::= {
ExtensionORAddressComponents
IDENTIFIED BY 12 }
ExtensionORAddressComponents ::= PDSParameter
universal-extension-OR-address-components EXTENSION-ATTRIBUTE ::= {
UniversalExtensionORAddressComponents
IDENTIFIED BY 31 }
UniversalExtensionORAddressComponents ::= UniversalPDSParameter
physical-delivery-personal-name EXTENSION-ATTRIBUTE ::= {
PhysicalDeliveryPersonalName
IDENTIFIED BY 13 }
PhysicalDeliveryPersonalName ::= PDSParameter
universal-physical-delivery-personal-name EXTENSION-ATTRIBUTE ::= {
UniversalPhysicalDeliveryPersonalName
IDENTIFIED BY 32 }
UniversalPhysicalDeliveryPersonalName ::= UniversalPDSParameter
physical-delivery-organization-name EXTENSION-ATTRIBUTE ::= {
PhysicalDeliveryOrganizationName
IDENTIFIED BY 14 }
PhysicalDeliveryOrganizationName ::= PDSParameter
universal-physical-delivery-organization-name EXTENSION-ATTRIBUTE ::= {
UniversalPhysicalDeliveryOrganizationName
IDENTIFIED BY 33 }
UniversalPhysicalDeliveryOrganizationName ::= UniversalPDSParameter
extension-physical-delivery-address-components EXTENSION-ATTRIBUTE ::= {
ExtensionPhysicalDeliveryAddressComponents
IDENTIFIED BY 15 }
ExtensionPhysicalDeliveryAddressComponents ::= PDSParameter
universal-extension-physical-delivery-address-components EXTENSION-ATTRIBUTE ::= {
UniversalExtensionPhysicalDeliveryAddressComponents
IDENTIFIED BY 34 }
UniversalExtensionPhysicalDeliveryAddressComponents ::= UniversalPDSParameter
unformatted-postal-address EXTENSION-ATTRIBUTE ::= {
UnformattedPostalAddress
IDENTIFIED BY 16 }
UnformattedPostalAddress ::= SET {
printable-address SEQUENCE SIZE (1..ub-pds-physical-address-lines) OF
PrintableString (SIZE (1..ub-pds-parameter-length)) OPTIONAL,
teletex-string TeletexString(SIZE (1..ub-unformatted-address-length)) OPTIONAL }
universal-unformatted-postal-address EXTENSION-ATTRIBUTE ::= {
UniversalUnformattedPostalAddress
IDENTIFIED BY 35 }
UniversalUnformattedPostalAddress ::=
UniversalOrBMPString{ub-unformatted-address-length}
street-address EXTENSION-ATTRIBUTE ::= {
StreetAddress
IDENTIFIED BY 17 }
StreetAddress ::= PDSParameter
universal-street-address EXTENSION-ATTRIBUTE ::= {
UniversalStreetAddress
IDENTIFIED BY 36 }
UniversalStreetAddress ::= UniversalPDSParameter
post-office-box-address EXTENSION-ATTRIBUTE ::= {
PostOfficeBoxAddress
IDENTIFIED BY 18 }
PostOfficeBoxAddress ::= PDSParameter
universal-post-office-box-address EXTENSION-ATTRIBUTE ::= {
UniversalPostOfficeBoxAddress
IDENTIFIED BY 37 }
UniversalPostOfficeBoxAddress ::= UniversalPDSParameter
poste-restante-address EXTENSION-ATTRIBUTE ::= {
PosteRestanteAddress
IDENTIFIED BY 19 }
PosteRestanteAddress ::= PDSParameter
universal-poste-restante-address EXTENSION-ATTRIBUTE ::= {
UniversalPosteRestanteAddress
IDENTIFIED BY 38 }
UniversalPosteRestanteAddress ::= UniversalPDSParameter
unique-postal-name EXTENSION-ATTRIBUTE ::= {
UniquePostalName
IDENTIFIED BY 20 }
UniquePostalName ::= PDSParameter
universal-unique-postal-name EXTENSION-ATTRIBUTE ::= {
UniversalUniquePostalName
IDENTIFIED BY 39 }
UniversalUniquePostalName ::= UniversalPDSParameter
local-postal-attributes EXTENSION-ATTRIBUTE ::= {
LocalPostalAttributes
IDENTIFIED BY 21 }
LocalPostalAttributes ::= PDSParameter
universal-local-postal-attributes EXTENSION-ATTRIBUTE ::= {
UniversalLocalPostalAttributes
IDENTIFIED BY 40 }
UniversalLocalPostalAttributes ::= UniversalPDSParameter
PDSParameter ::= SET {
printable-string PrintableString(SIZE (1..ub-pds-parameter-length)) OPTIONAL,
teletex-string TeletexString(SIZE (1..ub-pds-parameter-length)) OPTIONAL }
UniversalPDSParameter ::= UniversalOrBMPString{ub-pds-parameter-length}
extended-network-address EXTENSION-ATTRIBUTE ::= {
ExtendedNetworkAddress
IDENTIFIED BY 22 }
ExtendedNetworkAddress ::= CHOICE {
e163-4-address SEQUENCE {
number [0] NumericString(SIZE (1..ub-e163-4-number-length)),
sub-address [1] NumericString(SIZE (1..ub-e163-4-sub-address-length))
OPTIONAL},
psap-address [0] PresentationAddress }
terminal-type EXTENSION-ATTRIBUTE ::= {
TerminalType
IDENTIFIED BY 23 }
TerminalType ::= INTEGER {
telex(3), teletex(4), g3-facsimile(5), g4-facsimile(6), ia5-terminal(7),
videotex(8)}(0..ub-integer-options)
-- Extension Domain-defined Attributes
teletex-domain-defined-attributes EXTENSION-ATTRIBUTE ::= {
TeletexDomainDefinedAttributes
IDENTIFIED BY 6 }
TeletexDomainDefinedAttributes ::=
SEQUENCE SIZE (1..ub-domain-defined-attributes) OF
TeletexDomainDefinedAttribute
TeletexDomainDefinedAttribute ::= SEQUENCE {
type TeletexString(SIZE (1..ub-domain-defined-attribute-type-length)),
value TeletexString(SIZE (1..ub-domain-defined-attribute-value-length)) }
universal-domain-defined-attributes EXTENSION-ATTRIBUTE ::= {
UniversalDomainDefinedAttributes
IDENTIFIED BY 28 }
UniversalDomainDefinedAttributes ::=
SEQUENCE SIZE (1..ub-domain-defined-attributes) OF
UniversalDomainDefinedAttribute
UniversalDomainDefinedAttribute ::= SEQUENCE {
type UniversalOrBMPString{ub-domain-defined-attribute-type-length},
value UniversalOrBMPString{ub-domain-defined-attribute-value-length} }
ub-integer-options INTEGER ::= 256
ub-e163-4-number-length INTEGER ::= 15
ub-e163-4-sub-address-length INTEGER ::= 40
ub-unformatted-address-length INTEGER ::= 180
ub-pds-parameter-length INTEGER ::= 30
ub-pds-physical-address-lines INTEGER ::= 6
ub-postal-code-length INTEGER ::= 16
ub-pds-name-length INTEGER ::= 16
ub-universal-surname-length INTEGER ::= 64
ub-universal-given-name-length INTEGER ::= 40
ub-universal-initials-length INTEGER ::= 16
ub-universal-generation-qualifier-length INTEGER ::= 16
ub-common-name-length INTEGER ::= 64
ub-extension-attributes INTEGER ::= 256
ub-domain-defined-attribute-type-length INTEGER ::= 8
ub-domain-defined-attribute-value-length INTEGER ::= 128
ub-domain-defined-attributes INTEGER ::= 4
ub-organizational-unit-name-length INTEGER ::= 32
ub-organizational-units INTEGER ::= 4
ub-generation-qualifier-length INTEGER ::= 3
ub-initials-length INTEGER ::= 5
ub-given-name-length INTEGER ::= 16
ub-surname-length INTEGER ::= 40
ub-numeric-user-id-length INTEGER ::= 32
ub-organization-name-length INTEGER ::= 64
ub-terminal-id-length INTEGER ::= 24
ub-x121-address-length INTEGER ::= 16
ub-domain-name-length INTEGER ::= 16
ub-country-name-alpha-length INTEGER ::= 2
ub-country-name-numeric-length INTEGER ::= 3
END -- MTSAbstractService