XGEN: Краткое введение в ASN.1 и BER

Переводы статьи Переводы статьи
Код статьи: 252648 - Vizualiza?i produsele pentru care se aplic? acest articol.
Развернуть все | Свернуть все

В этой статье

Аннотация

В данной статье описываются нотации ASN.1 (Abstract Syntax Notation One) и BER (Basic Encoding Rules) и разъясняются различия между ними.

Многие информационные работники, связанные с технологиями, включая опытных профессионалов, часто путают ASN.1 и BER, не знают точно различий между ними или даже почему разница важна. Их ошибка понятна, ведь даже те, кто знает ASN.1 и BER, часто используют эти термины неверно.

Поскольку ASN.1 является языком стандарттов, то очень часто можно найти рекомендации стандартов на языке ASN.1. Поддержка специалистов, консультантов и сведения о технологии специалистов так преимущества знание ASN.1, поскольку он позволяет их подробное изучение стандартов и для декодирования и понять содержимое данных, их устранение. Наиболее распространенные стандарты языке ASN.1 — это международная телеграфной связи и Международный консультативный комитет телефона (CCITT) и международный телекоммуникации союз (ITU). Тем не менее члены из Task Force IETF (Internet Engineering) все чаще используют ASN.1 чтобы четко указать свои рекомендации. На одной странице ASN.1 говорит что в противном случае принимает пять или шесть страниц написать в другом формате.

Ниже приведен список часто используемых стандартов, написанные в ASN.1:
  • X.400 (обмена электронными сообщениями)
  • X.500 (служб каталогов)
  • X.200 (сети)
  • Запрос на комментарии (RFC) 2251 2256 (протокол доступа к LightweightDirectory или LDAP)
  • Многие документы RFC
Любой компьютер или специалистов по связи данных, кто хочет действительно установить самостоятельно друг от друга должны иметь по крайней мере базовое понимание ASN.1 и BER. Поскольку Microsoft Windows 2000 и Microsoft Exchange 2000 Server реализации вышеупомянутых стандартов в той или иной форме, степень в чтение и понимание ASN.1 и BER делает Устранение этих двух продуктов, гораздо проще.

Дополнительная информация

ASN.1

Абстрактный синтаксис нотации один (обычно именуемой ASN.1) — это язык для определения стандартов, независимо от реализации. Это язык стандартов записи. Если для обращения к другому компоненту Ивановым в CalTech хочет написать рекомендацию для стандартизации процедуры один компонент, он производит запись рекомендаций в нотации ASN.1 и выдает рекомендации по стандартам тела как ITU. ASN.1, предлагая общий язык для описания стандартных облегчает взаимодействие между специалистами и члены комиссии. ASN.1 определяется в X.209 рекомендации ITU-T и X.690.


Например ASN.1 определяет:
  • «Тип»:
  • Какие «модуль», и как он должен выглядеть.
  • Что представляет собой целое число.
  • Что является ЛОГИЧЕСКОЕ значение.
  • — Какие «структурированного типа».
  • Определенные ключевые слова смысле (для пример, BEGIN, END, ИМПОРТА, экспорта, ВНЕШНИЕ и т. д.).
  • Как «тег» типа, так что он может быть properlyencoded.
ASN.1 имеет безотносительно к любой определенный стандарт, метод шифрования, программирования языка или аппаратной платформы. Это просто язык для определения стандартов. Или, другими словами, стандарты записываются в ASN.1.

BER

BER (произносится «колючка») является общее имя для обычной кодировки правила из ASN.1. BER определяется в X.209 рекомендации ITU-T и X.690. BER — один набор правил для кодирования ASN.1 данных в поток октетов, может быть передан по каналу связи. Другие методы кодирования ASN.1 данных включают различающихся правилами кодирования (DER), канонические правила кодирования (CER) и правила кодирования упаковки (в). Каждый метод кодирования имеет его приложения, но обычно BER метод кодирования наиболее часто используемые и наиболее часто говорили о.

BER определяет:
  • Методы для кодирования значения ASN.1.
  • Правила для решения, когда для использования данного метода.
  • Формат октетов конкретных данных.

Контрастные ASN.1 и BER

ASN.1 аналогично языка программирования (например C), тогда как BER как компилятор для этого языка. Компиляторы платформы, в то время как многие высокоуровневыми языками программирования не являются. C определяет правила и язык для написания программы. Программа не C; она записывается в C. Программа не является полезным, пока она компилируется для конкретных платформ (например, Intel x 86). Поэтому ASN.1 и BER. ASN.1 — это язык для написания стандартного. Стандарт не ASN.1; она написана ASN.1. Данных, который создается из программы, которая соответствует стандарту слабо называется «ASN.1 данных». Не полезно ASN.1 данных (то есть, его не удается передать через локальную сеть) до ASN.1 данные кодируются в поток октетов, которые могут быть легко декодированные в месте назначения. Чтобы проиллюстрировать это, ниже приведен пример этих понятий, производный от X.209 рекомендации ITU-T, приложение I. Это описание на Неформальные записи данных персонала:
   Name:             John P Smith
   Date of Birth:    17 July 1959
   (other data)
					
Описание ASN.1 записи персонала (стандартная комплектация) может быть:
   PersonnelRecord ::= [APPLICATION 0] IMPLICIT SET {
       Name,
       title [0]       VisibleString,
       dateOfBirth [1]          Date,
       (other types defined)          }

   Name ::= [APPLICATION 1] IMPLICIT SEQUENCE {
       givenName       VisibleString,
       initial         VisibleString, 
       familyName      VisibleString  }
					
Это описание ASN.1 описывает, как выглядит PersonnelRecord. Но что еще более важно, описывает как следует форматировать данные приложения таким образом, чтобы он становится ASN.1 данных перед кодировкой.

Затем приложение отображает данные персонала в структуру записи персонала (формат данных ASN.1) и затем применяется к данным ASN.1 базовые правила кодирования (BER). Это, как она может выглядеть (с исключением, что имена будут преобразованы в ASCII):
  Personnel
  Record     Length   Contents
  60         8185
                      Name     Length  Contents
                      61       10
                                       VisibleString  Length  Contents
                                       1A             04      "John"
                                       VisibleString  Length  Contents
                                       1A             01      "P"
                                       VisibleString  Length  Contents
                                       1A             05      "Smith"

                       DateofBirth     Length  Contents
                       A0              0A
                                               Date    Length  Contents
                                               43      08      "19590717"
					
Когда все сказано и сделано, что фактически получает передачи (или точнее, вниз что становится данных часть пакета на следующем уровне) является:
60 81 85 61 10 1A 04 ....
....  0A 43 08 19 59 07 17
					

Ссылки

Дополнительные сведения о ASN.1 обратитесь к X.680 рекомендации ITU-T через 683.
Дополнительные сведения о BER обратитесь к рекомендации самого себя (ITU-T Рекомендация X.690 или X.691).

Дополнительные сведения прочтите «Изменение от ASN.1:1988 к ASN.1:2002» на странице веб-17 группы изучения ITU-T:
http://www.ITU.int/ITU-T/studygroups/com17/Changing-ASN/

Свойства

Код статьи: 252648 - Последний отзыв: 1 ноября 2013 г. - Revision: 7.0
Информация в данной статье относится к следующим продуктам.
  • Microsoft Exchange Server 5.5 Standard Edition
  • Microsoft Exchange 2000 Server Standard Edition
  • операционная система Microsoft Windows 2000 Server
  • Microsoft Windows 2000 Advanced Server
  • Microsoft Windows 2000 Professional Edition
Ключевые слова: 
kbinfo kbmt KB252648 KbMtru
Переведено с помощью машинного перевода
ВНИМАНИЕ! Данная статья переведена с использованием программного обеспечения Майкрософт для машинного перевода и, возможно, отредактирована посредством технологии Community Translation Framework (CTF). Корпорация Майкрософт предлагает вам статьи, обработанные средствами машинного перевода, отредактированные членами сообщества Майкрософт и переведенные профессиональными переводчиками, чтобы вы могли ознакомиться со всеми статьями нашей базы знаний на нескольких языках. Статьи, переведенные с использованием средств машинного перевода и отредактированные сообществом, могут содержать смысловое, синтаксические и (или) грамматические ошибки. Корпорация Майкрософт не несет ответственности за любые неточности, ошибки или ущерб, вызванные неправильным переводом контента или его использованием нашими клиентами. Подробнее об CTF можно узнать по адресу http://support.microsoft.com/gp/machine-translation-corrections/ru.
Эта статья на английском языке: 252648

Отправить отзыв

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com