c068345_ISO_IEC_8825-1_2015.pdf
Reference number ISO/IEC 8825-12015E ISO/IEC 2015 INTERNATIONAL STANDARD ISO/IEC 8825-1 Fifth edition 2015-11-15 Ination technology ASN.1 encoding rules Specification of Basic Encoding Rules BER, Canonical Encoding Rules CER and Distinguished Encoding Rules DER Technologies de lination Rgles de codage ASN.1 Spcification des rgles de codage de base BER, des rgles de codage canoniques CER et des rgles de codage distinctives DER ISO/IEC 8825-12015E COPYRIGHT PROTECTED DOCUMENT ISO/IEC 2015 All rights reserved. Unless otherwise specified, no part of this publication may be reproduced or utilized otherwise in any or by any means, electronic or mechanical, including photocopying, or posting on the internet or an intranet, without prior written permission. Permission can be requested from either ISO at the address below or ISO’s member body in the country of the requester. ISO copyright office Case postale 56 CH-1211 Geneva 20 Tel. 41 22 749 01 11 Fax 41 22 749 09 47 E-mail copyrightiso.org Web www.iso.org Published in Switzerland ii ISO/IEC 2015 – All rights reserved ISO/IEC 8825-12015E ISO/IEC 2015 – All rights reserved iii Foreword ISO the International Organization for Standardization and IEC the International Electrotechnical Commission the specialized system for worldwide standardization. National bodies that are members of ISO or IEC participate in the development of International Standards through technical committees established by the respective organization to deal with particular fields of technical activity. ISO and IEC technical committees collaborate in fields of mutual interest. Other international organizations, governmental and non-governmental, in liaison with ISO and IEC, also take part in the work. In the field of ination technology, ISO and IEC have established a joint technical committee, ISO/IEC JTC 1. International Standards are drafted in accordance with the rules given in the ISO/IEC Directives, Part 2. The main task of the joint technical committee is to prepare International Standards. Draft International Standards adopted by the joint technical committee are circulated to national bodies for voting. Publication as an International Standard requires approval by at least 75 of the national bodies casting a vote. Attention is drawn to the possibility that some of the elements of this document may be the subject of patent rights. ISO and IEC shall not be held responsible for identifying any or all such patent rights. This fifth edition cancels and replaces the fourth edition of ISO/IEC 8825-12008 which has been technically revised. It also incorporates ISO/IEC 8825-12008/Cor.12012 and ISO/IEC 8825-52008.Cor.22014. ISO/IEC 8825-1 was prepared by Joint Technical Committee ISO/IEC JTC 1, Ination technology, Subcommittee SC 6, Telecommunications and ination exchange between systems, in collaboration with ITU-T. The identical text is published as ITU-T X.690 08/2015. I n t e r n a t i o n a l T e l e c o m m u n i c a t i o n U n i o n ITU-T X.690 TELECOMMUNICATION STANDARDIZATION SECTOR OF ITU 08/2015 SERIES X DATA NETWORKS, OPEN SYSTEM COMMUNICATIONS AND SECURITY OSI networking and system aspects – Abstract Syntax Notation One ASN.1 Ination technology – ASN.1 encoding rules Specification of Basic Encoding Rules BER, Canonical Encoding Rules CER and Distinguished Encoding Rules DER Recommendation ITU-T X.690 ITU-T X-SERIES RECOMMENDATIONS DATA NETWORKS, OPEN SYSTEM COMMUNICATIONS AND SECURITY PUBLIC DATA NETWORKS Services and facilities X.1–X.19 Interfaces X.20–X.49 Transmission, signalling and switching X.50–X.89 Network aspects X.90–X.149 Maintenance X.150–X.179 Administrative arrangements X.180–X.199 OPEN SYSTEMS INTERCONNECTION Model and notation X.200–X.209 Service definitions X.210–X.219 Connection-mode protocol specifications X.220–X.229 Connectionless-mode protocol specifications X.230–X.239 PICS proas X.240–X.259 Protocol Identification X.260–X.269 Security Protocols X.270–X.279 Layer Managed Objects X.280–X.289 Conance testing X.290–X.299 INTERWORKING BETWEEN NETWORKS General X.300–X.349 Satellite data transmission systems X.350–X.369 IP-based networks X.370–X.379 MESSAGE HANDLING SYSTEMS X.400–X.499 DIRECTORY X.500–X.599 OSI NETWORKING AND SYSTEM ASPECTS Networking X.600–X.629 Efficiency X.630–X.639 Quality of service X.640–X.649 Naming, Addressing and Registration X.650–X.679 Abstract Syntax Notation One ASN.1 X.680–X.699 OSI MANAGEMENT Systems management framework and architecture X.700–X.709 Management communication service and protocol X.710–X.719 Structure of management ination X.720–X.729 Management functions and ODMA functions X.730–X.799 SECURITY X.800–X.849 OSI APPLICATIONS Commitment, concurrency and recovery X.850–X.859 Transaction processing X.860–X.879 Remote operations X.880–X.889 Generic applications of ASN.1 X.890–X.899 OPEN DISTRIBUTED PROCESSING X.900–X.999 INATION AND NETWORK SECURITY X.1000–X.1099 SECURE APPLICATIONS AND SERVICES X.1100–X.1199 CYBERSPACE SECURITY X.1200–X.1299 SECURE APPLICATIONS AND SERVICES X.1300–X.1399 CYBERSECURITY INATION EXCHANGE X.1500–X.1599 CLOUD COMPUTING SECURITY X.1600–X.1699 For further details, please refer to the list of ITU-T Recommendations. Rec. ITU-T X.690 08/2015 i INTERNATIONAL STANDARD ISO/IEC 8825-1 RECOMMENDATION ITU-T X.690 Ination technology – ASN.1 encoding rules Specification of Basic Encoding Rules BER, Canonical Encoding Rules CER and Distinguished Encoding Rules DER Summary Recommendation ITU-T X.690 | ISO/IEC 8825-1 defines a set of Basic Encoding Rules BER that may be applied to values of types defined using the ASN.1 notation. Application of these encoding rules produces a transfer syntax for such values. It is implicit in the specification of these encoding rules that they are also used for decoding. This Recommendation | International Standard defines also a set of Distinguished Encoding Rules DER and a set of Canonical Encoding Rules CER both of which provide constraints on the Basic Encoding Rules BER. The key difference between them is that DER uses the definite length of encoding while CER uses the indefinite length . DER is more suitable for the small encoded values, while CER is more suitable for the large ones. It is implicit in the specification of these encoding rules that they are also used for decoding. History Edition Recommendation Approval Study Group Unique ID* 1.0 ITU-T X.690 1994-07-01 7 11.1002/1000/3046 1.1 ITU-T X.690 1994 Technical Cor. 1 1995-11-21 7 11.1002/1000/3283 1.2 ITU-T X.690 1994 Technical Cor. 2 1997-12-12 7 11.1002/1000/4182 1.3 ITU-T X.690 1994 Technical Cor. 3 1997-12-12 7 11.1002/1000/4183 2.0 ITU-T X.690 1997-12-12 7 11.1002/1000/4447 2.1 ITU-T X.690 1997 Technical Cor. 1 1999-06-18 7 11.1002/1000/4705 2.2 ITU-T X.690 1997 Amd. 1 1999-06-18 7 11.1002/1000/4704 2.3 ITU-T X.690 1997 Technical Cor. 2 2001-02-02 7 11.1002/1000/5335 3.0 ITU-T X.690 2002-07-14 17 11.1002/1000/6089 3.1 ITU-T X.690 2002 Amd. 1 2003-10-29 17 11.1002/1000/7021 3.2 ITU-T X.690 2002 Amd. 2 2006-06-13 17 11.1002/1000/8838 3.3 ITU-T X.690 2002 Technical Cor. 1 2007-05-29 17 11.1002/1000/9108 4.0 ITU-T X.690 2008-11-13 17 11.1002/1000/9608 4.1 ITU-T X.690 2008 Cor. 1 2011-10-14 17 11.1002/1000/11378 4.2 ITU-T X.690 2008 Cor. 2 2014-03-01 17 11.1002/1000/12147 5.0 ITU-T X.690 2015-08-13 17 11.1002/1000/12483 * To access the Recommendation, type the URL http//handle.itu.int/ in the address field of your web browser, followed by the Recommendations unique ID. For example, http//handle.itu.int/11.1002/1000/11830-en. ii Rec. ITU-T X.690 11/2015 FOREWORD The International Telecommunication Union ITU is the United Nations specialized agency in the field of telecommunications, ination and communication technologies ICTs. The ITU Telecommunication Standardization Sector ITU-T is a permanent organ of ITU. ITU-T is responsible for studying technical, operating and tariff questions and issuing Recommendations on them with a view to standardizing telecommunications on a worldwide basis. The World Telecommunication Standardization Assembly WTSA, which meets every four years, establishes the topics for study by the ITU-T study groups which, in turn, produce Recommendations on these topics. The approval of ITU-T Recommendations is covered by the procedure laid down in WTSA Resolution 1. In some areas of ination technology which fall within ITU-Ts purview, the necessary standards are prepared on a collaborative basis with ISO and IEC. NOTE In this Recommendation, the expression “Administration“ is used for conciseness to indicate both a telecommunication administration and a recognized operating agency. Compliance with this Recommendation is voluntary. However, the Recommendation may contain certain mandatory provisions to ensure, e.g., interoperability or applicability and compliance with the Recommendation is achieved when all of these mandatory provisions are met. The words “shall“ or some other obligatory language such as “must“ and the negative equivalents are used to express requirements. The use of such words does not suggest that compliance with the Recommendation is required of any party. INTELLECTUAL PROPERTY RIGHTS ITU draws attention to the possibility that the practice or implementation of this Recommendation may involve the use of a claimed Intellectual Property Right. ITU takes no position concerning the evidence, validity or applicability of claimed Intellectual Property Rights, whether asserted by ITU members or others outside of the Recommendation development process. As of the date of approval of this Recommendation, ITU had not received notice of intellectual property, protected by patents, which may be required to implement this Recommendation. However, implementers are cautioned that this may not represent the latest ination and are therefore strongly urged to consult the TSB patent database at http//www.itu.int/ITU-T/ipr/. ITU 2015 All rights reserved. No part of this publication may be reproduced, by any means whatsoever, without the prior written permission of ITU. Rec. ITU-T X.690 08/2015 iii CONTENTS Page Introduction ............................................................................................................................................................... v 1 Scope .............................................................................................................................................................. 1 2 Normative references...................................................................................................................................... 1 2.1 Identical Recommendations | International Standards ........................................................................ 1 2.2 Additional references .......................................................................................................................... 1 3 Definitions ...................................................................................................................................................... 1 4 Abbreviations ................................................................................................................................................. 2 5 Notation .......................................................................................................................................................... 2 6 Convention ..................................................................................................................................................... 2 7 Conance .................................................................................................................................................. 3 8 Basic encoding rules ....................................................................................................................................... 3 8.1 General rules for encoding .................................................................................................................. 3 8.2 Encoding of a boolean value ............................................................................................................... 6 8.3 Encoding of an integer value ............................................................................................................... 6 8.4 Encoding of an enumerated value ....................................................................................................... 7 8.5 Encoding of a real value ...................................................................................................................... 7 8.6 Encoding of a bitstring value............................................................................................................... 8 8.7 Encoding of an octetstring value ......................................................................................................... 9 8.8 Encoding of a null value ...................................................................................................................... 10 8.9 Encoding of a sequence value ............................................................................................................. 10 8.10 Encoding of a sequence-of value......................................................................................................... 10 8.11 Encoding of a set value ....................................................................................................................... 10 8.12 Encoding of a set-of value ................................................................................................................... 11 8.13 Encoding of a choice value ................................................................................................................. 11 8.14 Encoding of a value of a prefixed type ................................................................................................ 11 8.15 Encoding of an open type .................................................................................................................... 12 8.16 Encoding of an instance-of value ........................................................................................................ 12 8.17 Encoding of a value of the embedded-pdv type .................................................................................. 12 8.18 Encoding of a value of the external type ............................................................................................. 12 8.19 Encoding of an object identifier value...................