Upload
idalee
View
21
Download
0
Embed Size (px)
DESCRIPTION
ASN.1. Abstract Syntax Notation One. ASN.1 is a standard way to describe a message(a unit application data) that can be sent or received in a network. ASN.1 is divided into two parts: - PowerPoint PPT Presentation
Citation preview
Jump to first page
PKI2001 (TIFR, Mumbai)
ASN.1 Abstract Syntax Notation OneAbstract Syntax Notation One
ASN.1 is a standard way to describea message(a unit application data) that can be sent or received in a network.
ASN.1 is divided into two parts:1. The rules of syntax for describing the contents of a message in terms of data type and content sequence or structure.2. How you actually encode each data item in a message.
Jump to first page
PKI2001 (TIFR, Mumbai)
Why Care about Technical Architecture & Standards?
If you want You must standardize
Application APIs
Portability
Implementation Interoperability Protocols
Implementation Replaceability All
Jump to first page
PKI2001 (TIFR, Mumbai)
ASN.1 Encoding
Given any ASN.1 description of a message, a representation can be derived mechanically by applying a set of encoding rules.
Initially only a single set, the Basic Encoding Rules(BER), were standardized.
Later Canonical and Distinguished Encoding Rules were standardized
Jump to first page
PKI2001 (TIFR, Mumbai)
Encoding Abstract Values When any (correct) set of encoding
rules are applied to the abstract values in any given ASN.1 type, they will produce bit-patterns (actually octet strings) for each value such that any given octet string corresponds to precisely one abstract value.
The reverse is not necessarily true.
Jump to first page
PKI2001 (TIFR, Mumbai)
ASN.1 data types
ASN.1 notation is recognizable as a high level definition language.
It is constructed in modules with unique identifiers.
There are over 20 built-in identifiers e.g. BOOLEAN, INTEGER, ENUMERATED, REAL, BIT STRING, UTCTime, EXTERNAL, OCTET STRING, NULL etc.
Jump to first page
PKI2001 (TIFR, Mumbai)
Arbitrarily complex structures can be built up from these data types using constructors such as : SET{ } - order not significant SEQUENCE { } -fixed order
one example,WeatherReport ::=SEQUENCE
{
stationNumber INTEGER(1..99999)
timeOfReport UTCTime
pressure INTEGER(850..1100)
temperature INTEGER(-100..60)
humidity INTEGER(0..100)
windVelocity INTEGER(0..500)
windDirection INTEGER(0..48)
}
Jump to first page
PKI2001 (TIFR, Mumbai)
TLV(type-length-value), ILC(identifier - length - contents)
BER generate encodings which are of a class known as type - length - value.
Now in ASN.1 they are called as identifier - length - contents.
The structure is therefore recursive such that the contents can be a series of ILCs
This bottoms out with genuine contents such as a text string or an integer.
Jump to first page
PKI2001 (TIFR, Mumbai)
Basic Encoding RulesA Schematic RepresentationA Schematic Representation
Jump to first page
PKI2001 (TIFR, Mumbai)
The use of ASN.1 Compilers