没有合适的资源?快使用搜索试试~ 我知道了~
首页ASN.1(抽象语法表示) 规范之X.680
资源详情
资源推荐
![](https://csdnimg.cn/release/download_crawler_static/916651/bg1.jpg)
ITU-T Recommendation X.680
International Standard 8824-1
Information technology –
Abstract Syntax Notation One (ASN.1):
Specification of basic notation
![](https://csdnimg.cn/release/download_crawler_static/916651/bg2.jpg)
INTERNATIONAL STANDARD ISO/IEC 8824-1
ITU-T RECOMMENDATION X.680
Information technology –
Abstract Syntax Notation One (ASN.1):
Specification of basic notation
Summary
This Recommendation | International Standard provides a notation called Abstract Syntax Notation One (ASN.1) for
defining the syntax of information data. It defines a number of simple data types and specifies a notation for
referencing these types and for specifying values of these types.
The ASN.1 notations can be applied whenever it is necessary to define the abstract syntax of information without
constraining in any way how the information is encoded for transmission.
Source
ITU-T Recommendation X.680 was prepared by ITU-T Study Group 17 (2001-2004) and approved on 14 July 2002.
An identical text is also published as ISO/IEC 8824-1.
ITU-T Rec. X.680 (07/2002) i
![](https://csdnimg.cn/release/download_crawler_static/916651/bg3.jpg)
CONTENTS
Page
Introduction iv
1 Scope 1
2 Normative references 1
3 Definitions 2
4 Abbreviations 7
5 Notation 8
6 The ASN.1 model of type extension 10
7 Extensibility requirements on encoding rules 11
8 Tags12
9 Use of the ASN.1 notation 12
10 The ASN.1 character set 13
11 ASN.1 lexical items 14
12 Module definition 22
13 Referencing type and value definitions 26
14 Notation to support references to ASN.1 components 27
15 Assigning types and values 28
16 Definition of types and values 29
17 Notation for the boolean type 32
18 Notation for the integer type 33
19 Notation for the enumerated type 34
20 Notation for the real type 35
21 Notation for the bitstring type 36
22 Notation for the octetstring type37
23 Notation for the null type 38
24 Notation for sequence types 38
25 Notation for sequence-of types 42
26 Notation for set types 44
27 Notation for set-of types 44
28 Notation for choice types 45
29 Notation for selection types 47
30 Notation for tagged types 47
31 Notation for the object identifier type 48
32 Notation for the relative object identifier type 50
33 Notation for the embedded-pdv type 51
34 Notation for the external type 53
35 The character string types 54
36 Notation for character string types 55
37 Definition of restricted character string types 55
38 Naming characters and collections defined in ISO/IEC 10646-1 59
39 Canonical order of characters 62
40 Definition of unrestricted character string types 63
41 Notation for types defined in clauses 42 to 44 64
ii ITU-T Rec. X.680 (07/2002)
![](https://csdnimg.cn/release/download_crawler_static/916651/bg4.jpg)
42 Generalized time 64
43 Universal time 65
44 The object descriptor type 66
45 Constrained types 66
46 Element set specification 67
47 Subtype elements 69
48 The extension marker 73
49 The exception identifier 75
Annex A ASN.1 regular expressions 77
Annex B Rules for type and value Compatibility 81
Annex C Assigned object identifier values 90
Annex D Assignment of object identifier component values 92
Annex E Examples and hints 94
Annex F Tutorial annex on ASN.1 character strings 114
Annex G Tutorial annex on the ASN.1 model of type extension 117
Annex H Summary of the ASN.1 notation 122
ITU-T Rec. X.680 (07/2002) iii
![](https://csdnimg.cn/release/download_crawler_static/916651/bg5.jpg)
Introduction
This Recommendation | International Standard presents a standard notation for the definition of data types and values.
A data type (or type for short) is a category of information (for example, numeric, textual, still image or video
information). A data value (or value for short) is an instance of such a type. This Recommendation | International
Standard defines several basic types and their corresponding values, and rules for combining them into more complex
types and values.
In some protocol architectures, each message is specified as the binary value of a sequence of octets. However,
standards-writers need to define quite complex data types to carry their messages, without concern for their binary
representation. In order to specify these data types, they require a notation that does not necessarily determine the
representation of each value. ASN.1 is such a notation. This notation is supplemented by the specification of one or
more algorithms called encoding rules that determine the value of the octets that carry the application semantics
(called the transfer syntax). ITU-T Rec. X.690 | ISO/IEC 8825-1, ITU-T Rec. X.691 | ISO/IEC 8825-2 and ITU-T
Rec. X.693 | ISO/IEC 8825-4 specify three families of standardized encoding rules, called Basic Encoding Rules
(BER), Packed Encoding Rules (PER), and XML Encoding Rules (XER).
Some users wish to redefine their legacy protocols using ASN.1, but cannot use standardized encoding rules because
they need to retain their existing binary representations. Other users wish to have more complete control over the
exact layout of the bits on the wire (the transfer syntax). These requirements are addressed by ITU-T Rec. X.692 |
ISO/IEC@8825-3 which specifies an Encoding Control Notation (ECN) for ASN.1. ECN enables designers to formally
specify the abstract syntax of a protocol using ASN.1, but to then (if they so wish) take complete or partial control of
the bits on the wire by writing an accompanying ECN specification (which may reference standardized Encoding
Rules for some parts of the encoding).
A very general technique for defining a complicated type at the abstract level is to define a small number of simple
types by defining all possible values of the simple types, then combining these simple types in various ways. Some of
the ways of defining new types are as follows:
a) given an (ordered) list of existing types, a value can be formed as an (ordered) sequence of values, one
from each of the existing types; the collection of all possible values obtained in this way is a new type
(if the existing types in the list are all distinct, this mechanism can be extended to allow omission of
some values from the list);
b) given an unordered set of (distinct) existing types, a value can be formed as an (unordered) set of
values, one from each of the existing types; the collection of all possible unordered sets of values
obtained in this way is a new type (the mechanism can again be extended to allow omission of some
values);
c) given a single existing type, a value can be formed as an (ordered) list or (unordered) set of zero, one or
more values of the existing type; the collection of all possible lists or sets of values obtained in this way
is a new type;
d) given a list of (distinct) types, a value can be chosen from any one of them; the set of all possible values
obtained in this way is a new type;
e) given a type, a new type can be formed as a subset of it by using some structure or order relationship
among the values.
An important aspect of combining types in this way is that encoding rules should recognize the combining constructs,
providing unambiguous encodings of the collection of values of the basic types. Thus, every basic type defined using
the notation specified in this Recommendation | International Standard is assigned a tag to aid in the unambiguous
encoding of values.
Tags are mainly intended for machine use, and are not essential for the human notation defined in this
Recommendation | International Standard. Where, however, it is necessary to require that certain types be distinct, this
is expressed by requiring that they have distinct tags. The allocation of tags is therefore an important part of the use of
this notation, but (since 1994) it is possible to specify the automatic allocation of tags.
NOTE 1 – Within this Recommendation | International Standard, tag values are assigned to all simple types and construction
mechanisms. The restrictions placed on the use of the notation ensure that tags can be used in transfer for unambiguous
identification of values.
An ASN.1 specification will initially be produced with a set of fully defined ASN.1 types. At a later stage, however, it
may be necessary to change those types (usually by the addition of extra components in a sequence or set type). If this
is to be possible in such a way that implementations using the old type definitions can interwork with implementations
using the new type definitions in a defined way, encoding rules need to provide appropriate support. The ASN.1
notation supports the inclusion of an extension marker on a number of types. This signals to encoding rules the
iv ITU-T Rec. X.680 (07/2002)
剩余63页未读,继续阅读
![rar](https://img-home.csdnimg.cn/images/20210720083606.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://profile-avatar.csdnimg.cn/default.jpg!1)
kingywq
- 粉丝: 0
- 资源: 7
上传资源 快速赚钱
我的内容管理 收起
我的资源 快来上传第一个资源
我的收益
登录查看自己的收益我的积分 登录查看自己的积分
我的C币 登录后查看C币余额
我的收藏
我的下载
下载帮助
![](https://csdnimg.cn/release/wenkucmsfe/public/img/voice.245cc511.png)
会员权益专享
最新资源
- BSC关键绩效财务与客户指标详解
- 绘制企业战略地图:从财务到客户价值的六步法
- BSC关键绩效指标详解:财务与运营效率评估
- 手持移动数据终端:常见问题与WIFI设置指南
- 平衡计分卡(BSC):绩效管理与战略实施工具
- ESP8266智能家居控制系统设计与实现
- ESP8266在智能家居中的应用——网络家电控制系统
- BSC:平衡计分卡在绩效管理与信息技术中的应用
- 手持移动数据终端:常见问题与解决办法
- BSC模板:四大领域关键绩效指标详解(财务、客户、运营与成长)
- BSC:从绩效考核到计算机网络的关键概念
- BSC模板:四大维度关键绩效指标详解与预算达成分析
- 平衡计分卡(BSC):绩效考核与战略实施工具
- K-means聚类算法详解及其优缺点
- 平衡计分卡(BSC):从绩效考核到战略实施
- BSC:平衡计分卡与计算机网络中的应用
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
![](https://img-home.csdnimg.cn/images/20220527035711.png)
![](https://img-home.csdnimg.cn/images/20220527035711.png)
![](https://img-home.csdnimg.cn/images/20220527035111.png)
安全验证
文档复制为VIP权益,开通VIP直接复制
![](https://csdnimg.cn/release/wenkucmsfe/public/img/green-success.6a4acb44.png)