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

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

Непрочитанное сообщение #1 Sia-Ori » 27.02.2013, 12:12

Болид хранит коды в виде TouchMemory, чтото вроде AB0000001F47CE01 , а на прокс-карте написано 31.18382
С основной частью битиков то всё ясно, а вот вычислить CRC8 сложнее.
Есть у кого калькулятор в экселе или что-то подобное, куда загрузить разом список карт - и получить по нему болидовские коды?

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

Непрочитанное сообщение #2 AlexRuden » 27.02.2013, 12:21

Sia-Ori писал(а):Болид хранит коды в виде TouchMemory, чтото вроде AB0000001F47CE01 , а на прокс-карте написано 31.18382
С основной частью битиков то всё ясно, а вот вычислить CRC8 сложнее.
Есть у кого калькулятор в экселе или что-то подобное, куда загрузить разом список карт - и получить по нему болидовские коды?

http://forum-bolid.ru/viewtopic.php?f=55&t=132

Код тач мемори нельзя посчитать из номера карты. Только Виганд.
На сайте болида в ЧаВо выложен алгоритм подсчета CRC8.
---
ЗЫ. И не болидовские, а Далласовские :ni_zia:
Вам просто пакетный преобразователь нужен?
Курите man'ы , господа.

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

Непрочитанное сообщение #3 Sia-Ori » 27.02.2013, 12:41

Код тач мемори из номера (считай вейгандовского кода, правда, могут мешать ещё биты контроля чётности) удаётся получить всегда, вручную вычислив СRC8. Но штучно.
А нужен именно пакетный преобразователь.
В систему привезли новые считыватели, собирать карты не хочется. всего 900 штук, но всё же.
А так мы их в базе задублируем - для старых считывателей один код, для новых - другой, и всё получится.

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

Непрочитанное сообщение #4 AlexRuden » 27.02.2013, 12:51

Sia-Ori писал(а):Код тач мемори из номера (считай вейгандовского кода, правда, могут мешать ещё биты контроля чётности) удаётся получить всегда, вручную вычислив СRC8. Но штучно.
Ахренеть! Научите меня это делать - вот вам карта:
№ 12,3456
Виганд для этой карты - 290000000C0D8001

Посчитайте мне код тач мемори для этой карты.
Курите man'ы , господа.

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

Непрочитанное сообщение #5 Sia-Ori » 27.02.2013, 19:35

AlexRuden писал(а):
Sia-Ori писал(а):Код тач мемори из номера (считай вейгандовского кода, правда, могут мешать ещё биты контроля чётности) удаётся получить всегда, вручную вычислив СRC8. Но штучно.
Ахренеть! Научите меня это делать - вот вам карта:
№ 12,3456
Виганд для этой карты - 290000000C0D8001

Посчитайте мне код тач мемори для этой карты.
Путаница.
Вейгандовский код - не такой. Вейганд, чаще всего Вейганд 26, - это:
- старший бит контроля чётности, even,
- 8 бит кода организации,
- 16 бит номера карты
- 1 бит контроля нечётности, odd.
Многие контроллеры позволяют крутить эти биты, как заблагорассудится. Чётность вычисляется для старших 13 бит, нечётность - для младших 13 бит.
Вы же и привели код ТМ для этой карты. Который выдаёт большинство считывателей с выходом TМ. Но не все.

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

Непрочитанное сообщение #6 AlexRuden » 27.02.2013, 20:22

Sia-Ori писал(а):Путаница.
Вейгандовский код - не такой. Вейганд, чаще всего Вейганд 26, - это:
- старший бит контроля чётности, even,
- 8 бит кода организации,
- 16 бит номера карты
- 1 бит контроля нечётности, odd.
Многие контроллеры позволяют крутить эти биты, как заблагорассудится. Чётность вычисляется для старших 13 бит, нечётность - для младших 13 бит.
Вы же и привели код ТМ для этой карты. Который выдаёт большинство считывателей с выходом TМ. Но не все.

Понятие фасилити

Исторически сложилось так что многие системы контроля доступа и изготовители карточек условно делят код карты на две неравные части которые называют фасилити и номер. Обычно к номеру относят младшие 16 бит кода, все остальное к фасилити. Причина такого деления — экономия памяти в очень старых контроллерах доступа. При монтаже объекта подбирались карты с одинаковым фасилити и в память контроллера записывались только младшие 16 бит кода метки (номер). С тех пор прошло много времени и подобная экономия давно в прошлом, но многие системы все еще оперируют этими понятиями, показывая код карты разделенным на части. В наше время никакой смысловой нагрузки такое разделение не имеет.

Контроль на четность

Если имеется контроль по четности, то к битам кода карты добавляются два бита — один перед кодом, другой после. Соответственно весь код карты делится ровно посередине на две части. Четность старшей половины кода контролируется первым битом, младшей — последним. Если количество бит в коде нечетное, то центральный бит кода входит в оба контроля четности.

Первый бит четности (старшей половины кода) ставится в 1 если количество единиц в его половине кода нечетное. Последний бит четности (младшей половины кода) ставится в 1 если количество единиц в его половине кода четное.

Надо заметить, что встречаются считыватели не подчиняющиеся этому правилу контроля четности. Поэтому реально большинство универсальных контроллеров СКУД просто игнорируют контроль на четность. Кроме того, некоторые форматы бесконтактных карт несут информацию о количестве бит кода и четности прямо на карте, соответственно считыватель не может никоим образом влиять на реальный выходной формат данных. Таков, например, формат HID ProxPass, Indala ASP и др.

Таким образом это все условно.
Код тач мемори состоит из 6 байтов и пятый байт, записанный в ключе, нельзя сформировать из номера карты (брелока).

Так что пакетный преобразователь можно сделать только для Виганд26 (я себе пожалуй сделаю, пригодитсо) :ps_ih:
Курите man'ы , господа.

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

Непрочитанное сообщение #7 Sia-Ori » 27.02.2013, 21:14

AlexRuden писал(а):Таким образом это все условно.
Код тач мемори состоит из 6 байтов и пятый байт, записанный в ключе, нельзя сформировать из номера карты (брелока).
Так что пакетный преобразователь можно сделать только для Виганд26 (я себе пожалуй сделаю, пригодитсо) :ps_ih:
Называть ТМ представление номера карты вейгандовским форматом - это неправильно, без всяких условий.
W26 - самый распространённый формат. Другие тоже попадались, и свои лепить приходилось. И при заказе партии карт можно на них напечатать нечто, слабо связанное с тем, что идёт от считывателя к контроллеру по интерфейсу Wiegand. Но, в силу доминирования W26 хотите вейгандовский номер - получите. Экзотический считыватель, необычные карты - указывайте какие.
Код ТМ состоит из 8 байт. Младший - код семейства, для DS1990 - это 01, DS1991 = 02, для прокс-считывателей это всегда 01. старший - CRC8.
Что особенного в пятом байте - мне неведомо. Там чаще всего ноль.

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

Непрочитанное сообщение #8 AlexRuden » 27.02.2013, 21:31

Sia-Ori писал(а):Там чаще всего ноль.
Реже всего там ноль, Практически никогда. (в 6-ом из 8-ми байтов по-вашему).
8 байт.... - считыватели выдают мне код карты без CRC8 и байта семейтства, значит их нет в памяти карты и их формирует контроллер.
Курите man'ы , господа.

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

Непрочитанное сообщение #9 Sia-Ori » 27.02.2013, 21:49

AlexRuden писал(а):
Sia-Ori писал(а):Там чаще всего ноль.
Реже всего там ноль, Практически никогда. (в 6-ом из 8-ми байтов по-вашему).
8 байт.... - считыватели выдают мне код карты без CRC8 и байта семейства, значит их нет в памяти карты и их формирует контроллер.
не ноль - что за считыватели у вас? Конкретные примеры, по возможности. Без общих фраз.
Без CRC выдают считыватели с интерфейсом Wiegand.
8 байт выдают считыватели с выходом ТМ. Обязаны. Т.к. эмулируют таблетку DS1990.
И уже болидовские контроллеры внутри себя, при работе в режиме Вейганд, обвешивают полученные 26 бит кодом семейства и контрольным байтом.

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

Непрочитанное сообщение #10 AlexRuden » 27.02.2013, 22:15

:ze_va_et: Короче толочь воду в ступе можно долго...
Возьмите Proxy-USB-МА, переведите его в режим 5 байт + Enter HEX , прибавьте справа код семейства...
Что вы видите?

Я давно уже понял, что нельзя сформировать полный 8-ми байтный код (интерфейс TouchMemory) карты из тех цифр, что напечатаны на ней . Надеюсь, наигравшись с Proxy-USB-МА , поймете и вы.
Можно только формировать 3х-байтный код.(интерфейс Wiegand).
Засим откланиваюсь.
Курите man'ы , господа.

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

Непрочитанное сообщение #11 Sia-Ori » 27.02.2013, 22:53

AlexRuden писал(а)::ze_va_et: Короче толочь воду в ступе можно долго...
Возьмите Proxy-USB-МА, переведите его в режим 5 байт + Enter HEX , прибавьте справа код семейства...
Что вы видите?

Я давно уже понял, что нельзя сформировать полный 8-ми байтный код (интерфейс TouchMemory) карты из тех цифр, что напечатаны на ней . Надеюсь, наигравшись с Proxy-USB-МА , поймете и вы.
Можно только формировать 3х-байтный код.(интерфейс Wiegand).
Засим откланиваюсь.
Этот считыватель выдаёт считанное ни в вейганде, ни в ТМ.
Считыватели, в большинстве своём пишут 0 на пустых местах. FF тоже случается. Но бывает и как в USB-MA.
Формировать полный ТМ-код... Ранее удавалось :)

Phoenix M
Phoenix M
Возраст: 35
Репутация: 16
Сообщения: 267
Зарегистрирован: 21.09.2012
С нами: 4 года 2 месяца
Профессия: Проектировщик
Откуда: Пятигорск

Непрочитанное сообщение #12 Phoenix » 28.02.2013, 16:28

На болидовском сайте есть такой вопрос: "Как преобразовать код карточек Виганд в формат кода Dallas TouchMemory?"
http://www.bolid.ru/support/tech/faq/object/orion/?curPos=90

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

Непрочитанное сообщение #13 AlexRuden » 28.02.2013, 17:55

Phoenix писал(а):На болидовском сайте есть такой вопрос: "Как преобразовать код карточек Виганд в формат кода Dallas TouchMemory?"
Я уже об этом писал во втором посте.

Ок, может я недопонял вопрос ТС, но объясню всё на пальцах.

Есть реальная карточка - 138,57430
Берем считыватель с интерфейсом TouchMemory, подсоединяем к c2000-4 , в Упроге указываем "Вид интерфейса" - TouchMemory.
Считываем код карты, получаем - AA0015008AE05601.
--
Берем считыватель с интерфейсом Wiegand, подсоединяем к c2000-4 , в Упроге указываем "Вид интерфейса" - Wiegand.
Считываем код карты, получаем - B90000008AE05601.
--
Итог:
Карта - № 138,57430
Интерфейс TouchMemory - AA0015008AE05601
Интерфейс Wiegand - B90000008AE05601

Так вот, меня интересовало, как сформировать эти жирные цифиры - AA0015008AE05601.
И если вы заметили различия -

AA0015008AE05601
B90000008AE05601

тоесть так -

(CRC8)0015008AE05601
(CRC8)0000008AE05601

Если у вас на объекте интерфейс и считыватели TouchMemory, то пакетное преобразование из номера карты не сделаешь.
:uch_tiv:
Курите man'ы , господа.

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

Непрочитанное сообщение #14 Sia-Ori » 28.02.2013, 19:35

Всё вейганд, но это не мешает выдавать номера в разных форматах :)

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

Непрочитанное сообщение #15 AlexRuden » 28.02.2013, 20:20

Sia-Ori писал(а):Всё вейганд, но это не мешает выдавать номера в разных форматах :)
Оххх, пусть так.
Уверен вот это вы читали -
Спойлер
1.12.4 Если в составе системы "Орион" к контроллерам "С2000-2" подключаются
считыватели с разными видами интерфейса (Touch Memory, Wiegand-26, Wiegand-44 и др.),
рассчитанные на работу с идентификаторами одного и того же типа, то код идентификатора,
предъявленного на одном считывателе, может не совпадать с кодом того же идентификатора,
предъявленного на другом считывателе.
Так, например, код Proximity-карты на считывателе с интерфейсом Wiegand-26 может
отличаться от кода той же карты на считывателе с интерфейсом Wiegand-44 или Touch Memory.
Или, например, PIN-код, введенный на считывателе с интерфейсом Wiegand-6 или
Wiegand-8 (каждая вводимая цифра кода посылается в контроллер отдельно от другой), будет
отличаться от того же кода, введенного на считывателе с интерфейсом Wiegand-26 или
Touch Memory (все цифры PIN-кода посылаются в контроллер в одной посылке).
Поэтому при проектировании и эксплуатации системы контроля доступа необходимо
пользоваться следующими рекомендациями.
1) По возможности использовать считыватели с одинаковым форматом выходных
данных.
2) Если считыватели имеют различный интерфейс, то по возможности использовать
совместимые форматы. Так, например, код Proximity-карты в формате Wiegand-44 для
контроллера "С2000-2" в большинстве случаев совместим с кодом этой карты в формате Touch
Memory, т.е. если при занесении кода карты в память контроллера использовался считыватель
с интерфейсом Wiegand-44, то эта карта будет правильно распознаваться контроллером через
считыватель с интерфейсом Touch Memory, и наоборот.
3) Если считыватели имеют несовместимые форматы, то необходимо ограничить длину
серийного номера ключа значением, наименьшим для всех используемых в системе
считывателей. Обычно наименьшее значение длины серийного номера имеют считыватели
с интерфейсом Wiegand-26 (6 шестнадцатеричных цифр).
4) При удаленном занесении кодов ключей в контроллер, когда считывание кода
осуществляется со считывателя, подключенного к другому контроллеру, формат данных
используемого
считывателя
должен
совпадать
с
форматом
данных
считывателей,
подключенных к программируемому контроллеру.
Однако меня интересовал вопрос как возникает цифирка 15 . Она записана в карте пожизненно, или её формирует считыватель из номера карты по определённому алгоритму?
Если вы этот алгоритм знаете, то поделитесь инфой, иначе мы тут говорим ниочем.
Курите man'ы , господа.

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

Непрочитанное сообщение #16 Sia-Ori » 28.02.2013, 20:36

Не нужно его знать. На объекте обычно есть карты одного-двух-трёх типов. У каждого типа своя цифирка, немножко свой алгоритм перевода.

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

Непрочитанное сообщение #17 AlexRuden » 28.02.2013, 22:15

Sia-Ori писал(а):Не нужно его знать. На объекте обычно есть карты одного-двух-трёх типов. У каждого типа своя цифирка, немножко свой алгоритм перевода.
Да вы оказывается ничего незнаете(, мне жаль что я тут распинался 2 страницы..
Курите man'ы , господа.

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

Непрочитанное сообщение #18 Sia-Ori » 28.02.2013, 22:25

Если цифирка идёт из номера карты - закономерность можно найти. Если тупо от считывателя - то и искать не надо.
Не знаю я этого. Думаю, считыватель сам генерит невесть что. Как в случае с USB-MA - с карты тянутся 5 байт, хотя в ней всего 24 бита+2 бита контрольной суммы.
Следующий пункт - писать битовые поля SQLem

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

Непрочитанное сообщение #19 AlexRuden » 01.03.2013, 09:21

Sia-Ori писал(а):Если цифирка идёт из номера карты - закономерность можно найти. Если тупо от считывателя - то и искать не надо.
Не знаю я этого. Думаю, считыватель сам генерит невесть что. Как в случае с USB-MA - с карты тянутся 5 байт, хотя в ней всего 24 бита+2 бита контрольной суммы.
Следующий пункт - писать битовые поля SQLem

Читайте стандарт EM-Marin RFID proximity-карта .
В карте 64 бита, 40 бит из них являются номером карты.

Та цифирка 15 - это номер группы карт (Customer ID, version number) и записан жестко в карту.
Закономерность для этой цифирки я еще не нашел.
Считыватель не генерит невесть что - он выдает нам данные из карты в нужном формате.
Преобразователь давно уже есть, но только для карт того вида, что написан в первом посте.
Курите man'ы , господа.

iorick
iorick
Репутация: 0
Сообщения: 1
Зарегистрирован: 25.03.2013
С нами: 3 года 8 месяцев
Профессия: ИТ

Непрочитанное сообщение #20 iorick » 25.03.2013, 07:16

зависит от номера карты. те которые 3 цифры до точки. только выяснить по какому алгоритму не удалось.только статистика, например для карты 235,ххххх это будет 17 для 236 тоже 17, а например для 153 будет уже 1С
найти закономерность не удается, если есть какая-нибудь информация поделитесь, пожалуйста


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

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

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

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

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