1oid.h(3) Library Functions Manual oid.h(3)
2
3
4
6 oid.h - Идентификаторы объектов
7
8
10 #include 'bee2/defs.h'
11
12
13 Функции
14 bool_t oidIsValid (const char *oid)
15 Корректный OID?
16 size_t oidToDER (octet der[], const char *oid)
17 DER-кодирование
18 size_t oidFromDER (char *oid, const octet buf[], size_t count)
19 DER-декодирование
20
22 Идентификатор объекта (object identifier) представляет собой
23 последовательность неотрицательных целых чисел d1, d2,.., dn.
24
25 OID представляется строкой, составленной из последовательных чисел d1,
26 d2,..., dn, разделенных точками. Числа di записываются десятичными
27 цифрами, без лидирующих нулей. При этом строковое представление
28 оказывается однозначным.
29
30 Корректный идентификатор 'd1.d2....dn' удовлетворяет следующим
31 ограничениям ASN.1:
32
33 • n >= 2;
34
35 • d1 <= 2;
36
37 • если d1 < 2, то d2 < 40.
38
39 Дополнительные ограничения реализации:
40
41 • число 40 * d1 + d2 укладывается в u32;
42
43 • числа di укладываются в u32.
44
45 Примеры идентификаторов (см. СТБ 34.101.50):
46
47 •
48
49 •
50
51 •
52
53 Регулярность
54 Функции модуля нерегулярны: обрабатываемые идентификаторы не
55 считаются секретными.
56
57 Предусловие
58 Входные буферы не пересекаются.
59
61 size_t oidFromDER (char * oid, const octet buf[], size_t count)
62 Определяется число символов (исключая завершающий нулевой) для
63 размещения идентификатора, представленного DER-кодом [count]der. Если
64 oid != 0, то идентификатор размещается по этому адресу.
65
66 Предусловие
67 Если oid != 0, то по адресу oid зарезервировано oidFromDER(0, buf,
68 count) октетов.
69
70 Возвращает
71 Число символов или SIZE_MAX в случае ошибки формата.
72
73 Аргументы
74 oid идентификатор объекта
75 buf DER-код
76 count длина DER-код
77
78 bool_t oidIsValid (const char * oid)
79 Проверяется корректность идентификатора oid.
80
81 Возвращает
82 Признак корректности.
83
84 Аргументы
85 oid идентификатор объекта
86
87 size_t oidToDER (octet der[], const char * oid)
88 Определяется число октетов в DER-коде идентификатора oid. Если der !=
89 0, то DER-код размещается по этому адресу.
90
91 Предусловие
92 Если der != 0, то по адресу der зарезервировано oidToDER(0, oid)
93 октетов.
94
95 Возвращает
96 Число октетов в DER-коде или SIZE_MAX в случае неверного формата
97 oid.
98
99 Прим.
100 Формируется октет тега.
101
102 Аргументы
103 der DER-код
104 oid идентификатор объекта
105
107 Автоматически создано Doxygen для Библиотека Bee2 из исходного текста.
108
109
110
111Библиотека Bee2 Ср 19 Июл 2023 00:00:00 oid.h(3)