ASN.1 CNS 4650 Fall 2004 Rev. 2.

Slides:



Advertisements
Similar presentations
International Telecommunication Union ASN.1 Today and Tomorrow © 2002 OSS Nokalva.
Advertisements

INSTRUCTION SET ARCHITECTURES
BNF. What is BNF? BNF stands for “Backus-Naur Form,” after the people who invented it BNF is a metalanguage--a language used to describe another language.
Character and String definitions, algorithms, library functions Characters and Strings.
1 Pertemuan 05 Model Informasi - SMI Matakuliah: H0372/Manajemen Jaringan Tahun: 2005 Versi: 1/0.
UNIVERSITY OF SOUTH CAROLINA Department of Computer Science and Engineering CSCE 330 Programming Language Structures Ch.2: Syntax and Semantics Fall 2005.
TCP/IP Protocol Suite 1 Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display. Chapter 24 Network Management: SNMP.
C. Varela; Adapted w/permission from S. Haridi and P. Van Roy1 Declarative Computation Model Defining practical programming languages Carlos Varela RPI.
TCP/IP Protocol Suite 1 Chapter 21 Upon completion you will be able to: Network Management: SNMP Understand the SNMP manager and the SNMP agent Understand.
Fall 2004COMP 3351 A Universal Turing Machine. Fall 2004COMP 3352 Turing Machines are “hardwired” they execute only one program A limitation of Turing.
Characters and Strings. Characters In Java, a char is a primitive type that can hold one single character A character can be: –A letter or digit –A punctuation.
IHA præsentation1 Outline for today Standard Formal Notations for data structures and messages Motivation Abstract Syntax Notation One (ASN.1)
CSTA is a kind of standard communication protocol used between PBX and computer that is famous in Europe. What is CSTA ? Control Requests Event Notifications.
Implementation of a Stored Program Computer
Jump to first page PKI2001 (TIFR, Mumbai) ASN.1 Abstract Syntax Notation One ASN.1 is a standard way to describe a message(a unit application data) that.
SNMP Management Information
Questions for Chapter 6,9 Ying Zhang.
Lecture 18 Last Lecture Today’s Topic Instruction formats
These materials are prepared only for the students enrolled in the course Distributed Software Development (DSD) at the Department of Computer.
SNMP: Simple Network Management Protocol
S/MIME and CMS Presentation for CSE712 By Yi Wen Instructor: Dr. Aidong Zhang.
Abstract Syntax Notation One ASN.1
LDAP: Information Model Part 2 CNS 4650 Fall 2004 Rev. 2.
Abstract Syntax Notation Computer Networks courses Villanova University.
Network Management Computer Networks Natawut Nupairoj, Ph.D.
Presentation Services  need for a presentation services  ASN.1  declaring data type  encoding data types  implementation issues  reading: text, section.
Abstract Syntax Notation ASN.1 Week-5 Ref: “SNMP…” by Stallings (Appendix B)
Implementation of a Stored Program Computer ITCS 3181 Logic and Computer Systems 2014 B. Wilkinson Slides2.ppt Modification date: Oct 16,
Languages, Grammars, and Regular Expressions Chuck Cusack Based partly on Chapter 11 of “Discrete Mathematics and its Applications,” 5 th edition, by Kenneth.
Grammars CPSC 5135.
Prof. Younghee Lee 1 1 Computer Networks u Lecture 14: Network Management Prof. Younghee Lee * Some part of this teaching materials are prepared referencing.
Study Group 7/17 ASN.1 ASN.1: Past uses, new developments, and future prospects in security and e-commerce applications John Larmouth
Abstract Syntax Notation One ASN.1. Abstract Syntax Notation One  Both the information and communications models need to be specified syntactically and.
An Introduction to Abstract Syntax Notation 1 (ASN.1)
Chapter 5 A Closer Look at Instruction Set Architectures.
Object-Oriented Program Development Using Java: A Class-Centered Approach, Enhanced Edition.
Tutorial 13 Validating Documents with Schemas
Byte Order Mohammad Kamal. Byte order Problem with byte order Numbers vs Data Practical example for reading data Exchanging Data between different systems.
Chapter 6 Introduction to Defining Classes. Objectives: Design and implement a simple class from user requirements. Organize a program in terms of a view.
1 Language translation Programming Language Design and Implementation (4th Edition) by T. Pratt and M. Zelkowitz Prentice Hall, 2001 Sections
Modul 4 Struktur Informasi Mata Kuliah Preservasi Informasi Digital.
Ch 9. Network Management Myungchul Kim
1 Compiler Construction (CS-636) Muhammad Bilal Bashir UIIT, Rawalpindi.
Application support functions Chapter Introduction ASN.1 Security Data encryption Nonrepudiation Authentication Public key certification authorities.
1 Introduction to Turing Machines
17-Mar-16 Characters and Strings. 2 Characters In Java, a char is a primitive type that can hold one single character A character can be: A letter or.
BER ENCODING Basic Encoding Rules. Basic Encoding Rules What is it?  BER is the original rules laid out by the ASN.1 standard for encoding information.
Chapter 27 Network Management Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display.
LDAP: Creating Object Classes and Attributes CNS 4650 Fall 2004 Rev. 2.
9/21/2016 Presentation layer Abstract Syntax Notation #1 Basic Encoding Rules.
Manajemen Jaringan, Sukiswo ST, MT 1 SNMP Management Information Sukiswo
Jaringan Telekomunikasi, Sukiswo ST, MT Sukiswo
Presentation Services
The ITU-T X.500 series and X.509 in a changing world
ASN.1: Introduction Zdeněk Říha.
Presented By: Prof. D.W.Chadwick Other Author: D.Mundy
Network Management Information model
Dept. of Computer Science and Engineering
ASN.1 소개 건아정보기술 SW개발팀 김강민 주임연구원.
Basic Foundations: Standards, Models, and Language
System and Network Management
Backus Naur form.
Chapter 3 Basic Foundations: Standards, Models, and Language
Chapter 5 SDL - Data 2007, rev. 08 SEG2101 Chapter 5.
Lecture 4: RPC Remote Procedure Call Coulouris et al: Chapter 5
7. End-to-end data Rocky K. C. Chang Department of Computing
Lecture 4: Lexical Analysis & Chomsky Hierarchy
The University of Adelaide, School of Computer Science
Simple Network Management Protocol
Standards, Models and Language
Presentation transcript:

ASN.1 CNS 4650 Fall 2004 Rev. 2

What is ASN.1 Abstract Syntax Notation One Overcome how different computer systems transmit data Model parameters exchanged between application entities

Why ASN.1? What was available at the time Different hardware Different development languages

“Endian” Problem Taken from Gulliver’s Travels Whether eggs should be broken on top or bottom “Little Endian” refers to machines that read bytes right to left (Intel) “Big Endian” refers to machines that read bytes left to right (Motorola, IBM, SUN) Data cannot be transferred directly between the two Tanenbaum’s Stegosaurus” Tanenbaum’s stegosaurus when transferred directly between endian machine ended up with a very wild name and was 167,772 meters!

How to Solve the “Endian” Problem Marshalling of data Single “Syntax” Solutions today CORBA ASN.1 Java and .Net (kind of…)

Development Languages Languages do not all contain the same data types For instance C does not really have a boolean it is usually simulated C requires ‘\0’ to terminate a string, this is not always the case in other languages Without “standard” types who has to manipulate the data? The sender or receiver? Note that C and other languages share many of the same data types today. But that was not the case in former times. For instance the C string is somewhat of a de facto standard for most languages or at least the ability to produce a C style string. This was not always the case.

Backus-Naur Format (BNF) Formal way to describe formal languages Most often used to describe computer languages Designed to be unambiguous

Built-in Language Types Boolean Integer Octet string Null Sequence Set Many more

Built-in Syntax Definitions IA5 String Numeric String UTC Time Printable String IA5 String is International Alphabet No.5 String Printable string is a string that is printable from a Telex (old…very old) UTC is Universal Time Coordinate

BNF Examples Begin with general then to specifics Uses := { } [ ] | := is the left must be replaced by the right { } [ ] is for formating and grouping | is for “or”

BNF ASN.1 Example File := SEQUENCE { Owner Owner, fileName PrintableString, createDate UTCTime, contents Any } Owner := SEQUENCE { personalName IA5String, organizationalName IA5String } Owner is described by the Owner structure below the the file structure

Encoding Rules Basic Encoding Rules (BER) Distinguished Encoding Rules (DER) Canonical Encoding Rules (CER) Packet Encoding Rules (PER) Discuss first two. The others are for information.

Basic Encoding Rules (BER) Represent ASN.1 values as an octect string Three encoding methods\ Primitive, definite length Constructed, definite length Constructed, indefinite length Simple non-string types employ the primitive, definite-length method; structured types employ either of the constructed methods; and simple string types employ any of the methods, depending on whether the length of the value is known.

BER Parts TLV Tag octet Length octet Value octet

Distinguished Encoding Rules (DER) Subset of BER Exactly one way to represent the octet string Restricts certain types (BIT STRING) beyond BER Used for digital certificates

ASN.1 and OIDs Used by LDAP, Kerberos, and SNMP Value used to uniquely identify every objectclass and attribute Object Indentifer (OID) is same as ASN.1

OIDs Sub-arc No standard on how to delegate number after arc Example: 1.3.6.1.4.1.17946.1 No standard on how to delegate number after arc De-facto standard is to place all objectclasses under a sub-arc and all attributes under a separate sub-arc

How to read ASN.1 Numbers