Прокс считыватели, формат карт

FORUM_NAME: Прочие приборы
Модератор: Модераторы
AlexRuden
AlexRuden
Возраст: 39
Репутация: 0
Сообщения: 1096
Зарегистрирован: 13.01.2012
С нами: 4 года 10 месяцев
Профессия: Наёмник.
Откуда: Россия.

Непрочитанное сообщение #21 AlexRuden » 25.03.2013, 14:42

iorick писал(а):найти закономерность не удается, если есть какая-нибудь информация поделитесь, пожалуйста
Насколько я понял из даташитов это customer id и записывается на заказ.
Если вы используете протокол Wiegand-26 , то пофиг на эти биты.
Если Wiegand-44, то заводу изготовителю вы можете заказать определенное число (шаблон, например для группы гостевых карт). Это удобно использовать в контроллерах для создания шаблонов групп карт.
Для бросовых карт производитель ставит число от балды, закономерности нет.
Вот когда вы заказываете изготовление карт под свои прихоти (а не покупаете готовые), то вы можете указать , какие биты вам поставить.
Всего 40 бит данных - 8 бит (customer, группа карт) например будет ваш филиал в Магадане или Чите, еще 8 бит указывает на группу менеджеров или гостей, 24 бита - номер карты (можно разделить на 8+16, где 8 бит тоже можно разделить на несколько групп - гости склада №1 и гости склада №2).
На основе такой организации 40 бит памяти в карте можно легко оперировать уровнями доступа (шаблоны).
Это всё удобно, если организация заказывает изготовление карт, а не покупает в интернет-магазине готовые.
В покупных картах (бросовых) это число отбалды.
Курите man'ы , господа.

Sia-Ori
Автор темы, Активный участник
Активный участник
Sia-Ori
Автор темы, Активный участник
Активный участник
Возраст: 46
Репутация: 2
Сообщения: 763
Зарегистрирован: 04.02.2012
С нами: 4 года 9 месяцев
Профессия: инженер СКУД
Откуда: Ростов на Дону

Непрочитанное сообщение #22 Sia-Ori » 25.03.2013, 16:47

Вейганд-44? Есть моторолловские считыватели и карты, можно поиграться.
Вопрос же о Ем-Марине, что там, в битиках.
Кстати, экселевский файл, вычисляющий CRC-8 сделан.

AlexRuden
AlexRuden
Возраст: 39
Репутация: 0
Сообщения: 1096
Зарегистрирован: 13.01.2012
С нами: 4 года 10 месяцев
Профессия: Наёмник.
Откуда: Россия.

Непрочитанное сообщение #23 AlexRuden » 25.03.2013, 19:07

Sia-Ori писал(а):Вопрос же о Ем-Марине, что там, в битиках.
И в чем же вопрос?
Если вам лень читать даташиты на английском, то читайте описание русского полного аналога Ем-марин - http://www.angstrem.ru/netcat_files/221/260/karta.pdf стр.7 и надеюсь поймете, что там в битиках. По-русски то вы умеете читать?
Курите man'ы , господа.

Sia-Ori
Автор темы, Активный участник
Активный участник
Sia-Ori
Автор темы, Активный участник
Активный участник
Возраст: 46
Репутация: 2
Сообщения: 763
Зарегистрирован: 04.02.2012
С нами: 4 года 9 месяцев
Профессия: инженер СКУД
Откуда: Ростов на Дону

Непрочитанное сообщение #24 Sia-Ori » 26.03.2013, 19:07

А без... тыканья лицом в грязь?

AlexRuden
AlexRuden
Возраст: 39
Репутация: 0
Сообщения: 1096
Зарегистрирован: 13.01.2012
С нами: 4 года 10 месяцев
Профессия: Наёмник.
Откуда: Россия.

Непрочитанное сообщение #25 AlexRuden » 27.03.2013, 16:35

Sia-Ori писал(а):А без... тыканья лицом в грязь?
Ну уж простите, но вы привязались к Вейганду, который к картам Ем-Марин никакого отношения не имеет. И я вам пытался это объяснить.
Вейганд это тип интерфейса. Он простой и устаревший, но к нему привыкли производители.
В отличие от Dallas1990A в карте не хранится CRC8 и проверка правильности считанного кода происходит битами четности. В самой карте Ем-Марине (40-ка битной) присутствует 14 битов четности, но простые и дешевые считыватели их врядли проверяют, вот и прикрутили к Вейганду провеку CRC8. В нормальных считывателях и контроллерах проверка на CRC8 необязательна.

Фактически вот что мы имеем -
Код вида XX0000001F47CE01 это ничто иное, как "эмуляция ТМ" , составленная из 24 битов принятых данных (просто контроллер знает, что для Вейганд-26 надо "приписать" нули).
Код вида YY0022001F47CE01 это ничто иное, как "эмуляция ТМ" , составленная из 40 битов принятых данных.

PS. Возьмите считыватель с интерфейсом Вейганд-42 и считыватель с интерфейсом "ТачМемори" - считаные коды с карты Ем-Марин будут одинаковыми.

Просто исторически все прилипли к CRC8, хотя в карте заложены биты четности. Но это же нужно делать считыватель, чтоб проверял их, а это накладно. Проще первый раз прочитать код, сгенерировать CRC8 и сохранить его в программе для будущих проверок на правильность считывания.

PPS У меня был подобный "глюк" с картой и считывателем Матрикс - завели карту, все чин по чину, уровни доступа и т.д. .А карта не пропускает никуда. Начал выяснять, сгенерировал вручную код карты - несовпадает со считанным....
Оказывается, при первом считывании в АБД код карты неверно считался (виноват считыватель Матрикс ). Вот вам и дешевые считыватели.
Курите man'ы , господа.

Sia-Ori
Автор темы, Активный участник
Активный участник
Sia-Ori
Автор темы, Активный участник
Активный участник
Возраст: 46
Репутация: 2
Сообщения: 763
Зарегистрирован: 04.02.2012
С нами: 4 года 9 месяцев
Профессия: инженер СКУД
Откуда: Ростов на Дону

Непрочитанное сообщение #26 Sia-Ori » 28.03.2013, 08:02

AlexRuden писал(а):1. В отличие от Dallas1990A в карте не хранится CRC8 и проверка правильности считанного кода происходит битами четности.
2. В самой карте Ем-Марине (40-ка битной) присутствует 14 битов четности, но простые и дешевые считыватели их врядли проверяют,
3. вот и прикрутили к Вейганду провеку CRC8.
4. В нормальных считывателях и контроллерах проверка на CRC8 необязательна.
5. Возьмите считыватель с интерфейсом Вейганд-42 и считыватель с интерфейсом "ТачМемори" - считаные коды с карты Ем-Марин будут одинаковыми.
Раздал вашим утверждениям номера, для порядку.
1. Понятно
2. Интересно
3. А вот это не так. Это ТМовские считыватели генерят CRC8, для эмуляции ds199х. Вейгандовские считыватели о CRC ничего не знают. И Болидовсвкие контроллеры для вейгандовских считывателей сами генерируют CRC8, чтобы в софте код TM и код Wiegand были одинаковыми. Кстати, Болид, похоже, когда-то разделял тач-мемори от вейганда, в орионе можно выбрать разные виды кодов.
4. Я затрудняюсь отнести Вейгандовские считыватели к нормальным и ТМовские к ненормальным :)
5. Не слышал о считывателях EM-Marine с длинным кодом.

AlexRuden
AlexRuden
Возраст: 39
Репутация: 0
Сообщения: 1096
Зарегистрирован: 13.01.2012
С нами: 4 года 10 месяцев
Профессия: Наёмник.
Откуда: Россия.

Непрочитанное сообщение #27 AlexRuden » 28.03.2013, 08:57

Sia-Ori писал(а):3. А вот это не так. Это ТМовские считыватели генерят CRC8, для эмуляции ds199х. Вейгандовские считыватели о CRC ничего не знают.
Откуда такая уверенность у вас, что одни считыватели "генерят CRC8", а другие - "о CRC ничего не знают" ???
Sia-Ori писал(а):И Болидовсвкие контроллеры для вейгандовских считывателей сами генерируют CRC8, чтобы в софте код TM и код Wiegand были одинаковыми.
Одинаковой размерности вы хотели сказать.
Курите man'ы , господа.

Sia-Ori
Автор темы, Активный участник
Активный участник
Sia-Ori
Автор темы, Активный участник
Активный участник
Возраст: 46
Репутация: 2
Сообщения: 763
Зарегистрирован: 04.02.2012
С нами: 4 года 9 месяцев
Профессия: инженер СКУД
Откуда: Ростов на Дону

Непрочитанное сообщение #28 Sia-Ori » 28.03.2013, 09:06

AlexRuden писал(а):
Sia-Ori писал(а):А вот это не так. Это ТМовские считыватели генерят CRC8, для эмуляции ds199х. Вейгандовские считыватели о CRC ничего не знают.
Откуда такая уверенность у вас, что одни считыватели "генерят CRC8", а другие - "о CRC ничего не знают" ???
Sia-Ori писал(а):И Болидовсвкие контроллеры для вейгандовских считывателей сами генерируют CRC8, чтобы в софте код TM и код Wiegand были одинаковыми.
Одинаковой размерности вы хотели сказать.
уверенность - из возни и с реальными ТМ199х, и из самодельного конвертера TM-Wiegand-232
Коды карты от ТМ-считывателя и от Вейганд часто совпадают до битика. Т.е. С2000-2 генерирует СRC точно так же, как и ТМ-считыватель. Ну, и размер, понятное дело, одинаков.

AlexRuden
AlexRuden
Возраст: 39
Репутация: 0
Сообщения: 1096
Зарегистрирован: 13.01.2012
С нами: 4 года 10 месяцев
Профессия: Наёмник.
Откуда: Россия.

Непрочитанное сообщение #29 AlexRuden » 28.03.2013, 09:31

Sia-Ori писал(а):уверенность - из возни и с реальными ТМ199х, и из самодельного конвертера TM-Wiegand-232
Коды карты от ТМ-считывателя и от Вейганд часто совпадают до битика. Т.е. С2000-2 генерирует СRC точно так же, как и ТМ-считыватель. Ну, и размер, понятное дело, одинаков.
Я вам в сотый раз повторяю .
В "таблетке" DS1990A байт CRC8 записан на заводе изготовителе и служит для проверки правильности считывания :
1. в начале передаются 7 байт кода
2. потом CRC8
3. контроллер считает CRC8 для 7-ми байт
4. сравнивает с принятым CRC8 из таблетки.

Для карт по-другому - там нету CRC8 .
В 40-ка битной ЕМ-Марин только 14 битов четности матрицы.

Так вот, CRC8 кто бы там не генерировал, при наличии бракованной карты подсчет CRC8 будет ошибочным.
Правильность считывания кода с карты пожно проверить только проверяя 14 бит четности. А никто их не проверяет.
Поэтому лепят к считанному коду CRC8 - это и есть "эмуляция ТМ" (однопроводной интерфейс).

Вейганд же напротив - двупроводной интерфейс и размерность кода зависит от выбранного типа (от Вейганд-24 до Вейганд-42).
Практически тоже самое что и для "ТМ", только полное совпадение будет при "Вейганд-42".
Контроллер же просто генерирует код до размерности "ТМ", согласно указанным настройкам в программе.
Ведь все читыватели Вейгад считывают 40 бит с карты, а контроллер обрезает до указанного значения (например Вейганд-24) и потом составляет код вида "XX00000012345601".
Курите man'ы , господа.

livello
livello
Репутация: 0
Сообщения: 3
Зарегистрирован: 25.08.2013
С нами: 3 года 3 месяца
Профессия: инженер

Непрочитанное сообщение #30 livello » 25.08.2013, 23:17

Вводная.
Как и автор темы, столкнулся с практической задачей.
Было выдано 70 карточек, которые были предварительно запрограммированы с помощью мастер карты. Теперь же все контроллеры СКУД объединены в сеть и требуется создать базу пользователей.
К сожалению, не думал, что у болида могут быть сложности с ручным вводов кодов карты.
Переписал в таблицу цифры, написанные на карточках. Фасилити, номер, полный номер. ПРоверил, совпадают в двоичном виде.

Задача. Получить эмуляцию кода TM из кода Wiegand26.
Целых 3 страницы писанины, а решения так и нет.
http://bolid.ru/support/faq/?tagsID=0&q=%D0%BA%D0%BE%D0%B4+%D0%BA%D0%B0%D1%80%D1%82%D0%BE%D1%87%D0%B5%D0%BA
вот веселый фаг. Кусок программы на неизвестном языке. Да еще незаконченный. Как данные в эту программу передать, как получить?
И самое веселое с crc8. Сколько программ и калькуляторо переепробовал - никто не хочет выдавать эталонное значение и каждый инструмент считает по-своему.
Пытался на яве написать - но результат тоже не сходится с эталоном(пример из фага и код в этой теме).

Посему вопрос. Есть ли у кого инструмент? Вводишь фасилити+код или полный код, получаешь формат болида?
Есть ли какой-то онлайн калькулятор или программа, на которой проходят эталонные коды ТМ?
0000000BDAAE01 сумма 05

livello
livello
Репутация: 0
Сообщения: 3
Зарегистрирован: 25.08.2013
С нами: 3 года 3 месяца
Профессия: инженер

Непрочитанное сообщение #31 livello » 26.08.2013, 12:52

Написал программу на с.
рассчет crc по алгоритму из ФАГа болида.
Входные данные - полный номер карты в десятичном формате. файл in.txt в каталоге программы
Выходные файл out.txt с номерами карт в формате TM
В линуксе компилится с полпинка командой
gcc dallas.c -o dallas.o
Выполняем
./dallas.o

В винде наверное нужно будет ставить какую-то иде или хотя бы борланд с 3.1

Спойлер

Код: Выделить всё

/*
 * dallas.c
 *
 *  Created on: 26 авг. 2013 г.
 *      Author: livello
 */
#include "dallas.h"
#include <stdio.h>

void crc8bolid(unsigned char *decString, unsigned char *decBytes) {
   int i;
   unsigned int decValue = atoi(decString);
   printf("%d\n", decValue);
   unsigned char *myBytes = (unsigned char*) &decValue;
   decBytes[3] = myBytes[2];
   decBytes[2] = myBytes[1];
   decBytes[1] = myBytes[0];
   decBytes[0] = 1;
   decBytes[4] = 0;
   decBytes[5] = 0;
   decBytes[6] = 0;
   decBytes[7] = 0;

   unsigned char CRCTABLE[] = { 0, 94, 188, 226, 97, 63, 221, 131, 194, 156,
         126, 32, 163, 253, 31, 65, 157, 195, 33, 127, 252, 162, 64, 30, 95,
         1, 227, 189, 62, 96, 130, 220, 35, 125, 159, 193, 66, 28, 254, 160,
         225, 191, 93, 3, 128, 222, 60, 98, 190, 224, 2, 92, 223, 129, 99,
         61, 124, 34, 192, 158, 29, 67, 161, 255, 70, 24, 250, 164, 39, 121,
         155, 197, 132, 218, 56, 102, 229, 187, 89, 7, 219, 133, 103, 57,
         186, 228, 6, 88, 25, 71, 165, 251, 120, 38, 196, 154, 101, 59, 217,
         135, 4, 90, 184, 230, 167, 249, 27, 69, 198, 152, 122, 36, 248, 166,
         68, 26, 153, 199, 37, 123, 58, 100, 134, 216, 91, 5, 231, 185, 140,
         210, 48, 110, 237, 179, 81, 15, 78, 16, 242, 172, 47, 113, 147, 205,
         17, 79, 173, 243, 112, 46, 204, 146, 211, 141, 111, 49, 178, 236,
         14, 80, 175, 241, 19, 77, 206, 144, 114, 44, 109, 51, 209, 143, 12,
         82, 176, 238, 50, 108, 142, 208, 83, 13, 239, 177, 240, 174, 76, 18,
         145, 207, 45, 115, 202, 148, 118, 40, 171, 245, 23, 73, 8, 86, 180,
         234, 105, 55, 213, 139, 87, 9, 235, 181, 54, 104, 138, 212, 149,
         203, 41, 119, 244, 170, 72, 22, 233, 183, 85, 11, 136, 214, 52, 106,
         43, 117, 151, 201, 74, 20, 246, 168, 116, 42, 200, 150, 21, 75, 169,
         247, 182, 232, 10, 84, 215, 137, 107, 53 };

   for (i = 0; i < 7; i++) {
      decBytes[7] = CRCTABLE[decBytes[7] ^ decBytes[i]];
   }

}
int main() {

   printf(" We need in.txt to read");
    printf( "Result is in out.txt");

   char decString[] = "0001497239"; //1000000064F31001
   unsigned char decBytes[8];
   int i;
   crc8bolid(decString, decBytes);
   FILE *f;
   f = fopen("out.txt", "w");
   FILE * fp;
   char * line = NULL;
   size_t len = 0;
   ssize_t read;

   fp = fopen("in.txt", "r");
   if (fp == NULL)
      return 1;

   while ((read = getline(&line, &len, fp)) != -1) {
      printf("%s", line);
      crc8bolid(line, decBytes);
      for (i = 7; i >= 0; i--) {
         fprintf(f, "%02x", decBytes[i]);
         printf("%02x", decBytes[i]);
      }
      fprintf(f, "\n");
      printf("\n");
   }

   if (line)
      free(line);
   fclose(f);
   return 0;
}


AlexRuden
AlexRuden
Возраст: 39
Репутация: 0
Сообщения: 1096
Зарегистрирован: 13.01.2012
С нами: 4 года 10 месяцев
Профессия: Наёмник.
Откуда: Россия.

Непрочитанное сообщение #32 AlexRuden » 26.08.2013, 18:06

Похвально, но суть проблеммы вы видно тоже не видите . Что мы тут жевали в топике.
У вас карта - 149,7239. Для нее Вейгант26 будет - 951C47, а Даллас-представление Болида - F0000000951C4701.

Из номера карты мы получим только 3 байта (Вейганд26) и можем сгенерировать ТМ-подобие кода , но только для работы в режиме считывания короткого кода.
А нам нужен полный код в карте (5 байт). Именно 5-й байт и нельзя сгенерировать из номера карты. Или мы незнаем алгоритма.
Курите man'ы , господа.

livello
livello
Репутация: 0
Сообщения: 3
Зарегистрирован: 25.08.2013
С нами: 3 года 3 месяца
Профессия: инженер

Непрочитанное сообщение #33 livello » 29.08.2013, 10:29

Про 3 и 5 байт было понятно с самого начала. Я бы не ставил себе задачу на поиск преобразования, если бы увидел, что в болид приходит 5 байт с карты.

piroxilin
piroxilin
Репутация: 0
Сообщения: 10
Зарегистрирован: 03.10.2013
С нами: 3 года 2 месяца
Профессия: монтажник, инженер

Непрочитанное сообщение #34 piroxilin » 03.10.2013, 12:20

AlexRuden, а вот такой вопрос по теме :
У меня скуд на основе орион-про, в системе контроллеры с2000-2 с считывателями proxy-h (режим TM).
Подключил к серваку ЮСБ считыватель proxy-usb-ma в режиме 5байт + enter hex и получился такой фак :

HEX ________________ "фасилити" ?

770067005693FF01 086,37887 c2000-2 + считыватель TM (proxy-H) - это читается с контроллера
430000005693FF01 086,37887 proxy-usb-ma + orion_pro - это читается прокси-юсб локально на сервере
____67005693FF 086,37887 proxy-usb-ma + notepad - это выдаёт прокси-юсб в блокнот

Проблема в чём - ЮСБ выдаёт полный код , а орион-про его "неправильно конвертит". Почемуто орион-про отрезает "67" из кода (видимо думает , что надо хранить в вайганде26) , но с считывателя код-то полный идёт.... Есть какие-нибудь идеи/предложения - что с этим можно сделать ? ... (((

П.С. ещё пробывал получить "контрольную сумму" для этих 7 байт (вместе с кодом устройства) - ни один калькулфтор мне не выдал правильное число...Считал CRC8 по основанию 0x31h, считал по FAQ болида - всё не так.
Что-я-делаю-не-так ?

Заранее спасибо за ответы.

----------------------------
С уважением, Дмирий.

AlexRuden
AlexRuden
Возраст: 39
Репутация: 0
Сообщения: 1096
Зарегистрирован: 13.01.2012
С нами: 4 года 10 месяцев
Профессия: Наёмник.
Откуда: Россия.

Непрочитанное сообщение #35 AlexRuden » 03.10.2013, 14:45

piroxilin писал(а):орион-про его "неправильно конвертит". Почемуто орион-про отрезает "67" из кода (видимо думает , что надо хранить в вайганде26) , но с считывателя код-то полный идёт.... Есть какие-нибудь идеи/предложения - что с этим можно сделать ? ... (((
Проверил в ОрионПро 1.11 сп5 - правильно всё конвертит. Длина серийного номера 12 стоит ? . Почему у вас "отрезает" - не понятно, скрины выкладывайте последовательности действий ввода кода ключа.
piroxilin писал(а):Считал CRC8 по основанию 0x31h, считал по FAQ болида - всё не так.
Что-я-делаю-не-так ?
Основание должно быть 0х18h, считать нужно начинать с младшего байта (фасилити).
Курите man'ы , господа.

piroxilin
piroxilin
Репутация: 0
Сообщения: 10
Зарегистрирован: 03.10.2013
С нами: 3 года 2 месяца
Профессия: монтажник, инженер

Непрочитанное сообщение #36 piroxilin » 04.10.2013, 12:44

1. забиваю сотрудника.
2. перехожу в пароли
3. добавить
4. http://piroxilin.narod.ru/skud/pass-1.jpg поле ввода (пустое пока)
4.1 считываю через c2000-2 + proxy-h (TM) : http://piroxilin.narod.ru/skud/pass-c2000-2-tm-1.jpg
4.2 подношу и читаю : http://piroxilin.narod.ru/skud/pass-c2000-2-tm-2.jpg (то, что пишет "ключ есть в базе - забейте)
4.4 если считываю через proxy-usb, то нажимаю правую кнопку (с пиктограммой настольного считывателя) : http://piroxilin.narod.ru/skud/pass-proxy-usb-ma-1.jpg
4.5 считываю код : http://piroxilin.narod.ru/skud/pass-proxy-usb-ma-2.jpg
коды разные.

piroxilin
piroxilin
Репутация: 0
Сообщения: 10
Зарегистрирован: 03.10.2013
С нами: 3 года 2 месяца
Профессия: монтажник, инженер

Непрочитанное сообщение #37 piroxilin » 04.10.2013, 12:44

5. открываю простой блокнот и подношу карту к proxy-usb : http://piroxilin.narod.ru/skud/pass-pro ... otepad.jpg = считано 5 байт без 01 на конце.

карта № 0014809265 225,63665

считано:
0700E1F8B1 - proxy-usb-ma + блокнот
3D000700E1F8B101 - c2000-2 + proxy-H (TM)
53000000E1F8B101 - proxy-usb-ma (orion-pro)

Версия ориона : http://piroxilin.narod.ru/skud/orion-pro-ver.jpg (1.12 билд 1098)

piroxilin
piroxilin
Репутация: 0
Сообщения: 10
Зарегистрирован: 03.10.2013
С нами: 3 года 2 месяца
Профессия: монтажник, инженер

Непрочитанное сообщение #38 piroxilin » 04.10.2013, 12:51

тоесть считыватель выдаёт все 5 полезных байт, а орион(про) 5-й забивает нулями, но 01 в конец дописывает...

AlexRuden
AlexRuden
Возраст: 39
Репутация: 0
Сообщения: 1096
Зарегистрирован: 13.01.2012
С нами: 4 года 10 месяцев
Профессия: Наёмник.
Откуда: Россия.

Непрочитанное сообщение #39 AlexRuden » 04.10.2013, 13:09

piroxilin писал(а):4.4 если считываю через proxy-usb, то нажимаю правую кнопку (с пиктограммой настольного считывателя) : http://piroxilin.narod.ru/skud/pass-proxy-usb-ma-1.jpg
4.5 считываю код : http://piroxilin.narod.ru/skud/pass-proxy-usb-ma-2.jpg
коды разные.
Окно с полем ввода кода на скрине в п.4.4 само закрывается? И получается как на скрине в п.4.5 ?
Курите man'ы , господа.

piroxilin
piroxilin
Репутация: 0
Сообщения: 10
Зарегистрирован: 03.10.2013
С нами: 3 года 2 месяца
Профессия: монтажник, инженер

Непрочитанное сообщение #40 piroxilin » 04.10.2013, 13:25

Да - подношу карту, там 5 байт кода сами набигают и окно закрывается и код полный уже в окне пароля (как в п. 4.5)


  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «Прочие приборы»

Кто сейчас на форуме (по активности за 5 минут)

Сейчас этот раздел просматривают: 4 гостя

forum-bolid.ru : Отказ от ответственности