ASN.1中的选择类型(CHOICE)是一种数据类型,用于表示一个值可以从多个可选项中选择的情况。选择类型可以包含多个成员,每个成员都有一个唯一的标签和对应的值。在实际使用中,只能选择其中一个成员作为有效值。 选择类型的优势在于它提供了一种灵活的数据结构,可以根据实际需求选择不同的成员。这样可以节省存储空间,并且...
新版的 ASN.1 语言还支持详细规定BIT STRING 的内容,OCTET STRING 亦然。 CHOICE 和 ANY CHOICE 表示可以使用其定义中列出的任意一种类型。例如,下方的 Time 要么是 UTCTime,要么是 GeneralizedTime: Time ::= CHOICE { utcTime UTCTime, generalTime GeneralizedTime } ANY 表示允许使用任意类型。 但实际中通常还...
在ASN.1(Abstract Syntax Notation One)中,"枚举"(Enumerated)类型和"选择"(Choice)类型是ASN.1编码规范中定义的两种不同的数据类型。 枚举类型: 枚举类型用于表示一组事先定义好的命名值,类似于枚举类型在其他编程语言中的概念。它由一组固定的命名值组成,每个命名值都对应一个整数或其他基本类型的值。
telephone-id[PRIVATE127] IMPLICIT Telephone-ID,binding-method[PRIVATE128] EXPLICIT Binding-Method}CmAct-ID::= IA5StringTelephone-ID::=INTEGERBinding-Method ::= CHOICE{smartbind[PRIVATE129] IMPLICIT SmartBind-Parameters,custom-binding[PRIVATE131] IMPLICIT CustomBinding-P...
除CHOICE和ANY外,每种ASN.1类型都有一个标签,该标签由一个类型号(class)和一个非负标签号(tag)组成。当且仅当它们的标签号相同时,ASN.1类型才抽象地相同。换句话说,ASN.1类型的名称不会影响其抽象含义,只有标签会影响它的抽象含义。 上述是asn1的描述,其中最关键的是每种asn1类型都有一个标签值这句话,...
除了CHOICE类型、ANY类型以外,所有ANS.1类型都有一个标记,标记由一个类和一个非负的标记码组成,当且仅当标记码相同时,ANS.1类型是相同的。也就是说,影响其抽象意义的不是ANS.1类型的名字,而是其标记。 13.2 DER编码 DER给出了一种将ASN.1值为8位串的方法。DER编码包含三个部分: ...
除CHOICE和ANY外,每种ASN.1类型都有一个标签,该标签由一个类和一个非负标签号组成。当且仅当它们的标签号相同时,ASN.1类型才抽象地相同。换句话说,ASN.1类型的名称不会影响其抽象含义,只有标签会影响它的抽象含义。标签分为四类: Universal,用于在所有应用程序中含义相同的类型;这些类型仅在X.208中定义。
CHOICE CHOICE表示从众多的item中选择一个: Identity ::= CHOICE { name VisibleString, phone VisibleString, idCard VisibleString } jack Identity ::= name:"jack" IA5String IA5String表示的是ASCII字符,并且包含有控制字符。 SampleString ::= IA5String ...
ASN.1 中的其它类型包括 CHOICE 和 ANY 类型。 CHOICE 类型表示一个联合体, 它具有一个或多个备选项(alternative); ANY 类型表示任意类型的任意值,其中任意类型可能在使用对象识别符或整数值注册中定义。 2、基本编码规则 BER ASN.1 的基本编码规则定义了一种或多种把任意 ASN.1 值表示成字节字符串的方法,缩...
```asn1 EmployeeSet::=SET OF Employee ```EmployeeSet表示一个雇员对象的集合,其中每个雇员是一个Employee类型的数据元素。3.CHOICE:CHOICE数据类型表示在列表中选择一个特定类型的数据元素。```asn1 PaymentMethod::=CHOICE{ creditCard[0]CreditCard,bankTransfer[1]BankTransfer,cash[2]NULL } ```