Как перепрошить карту ем марин на hide
Перейти к содержимому

Как перепрошить карту ем марин на hide

  • автор:

Эмулятор RFID

RFID (англ. Radio Frequency IDentification, радиочастотная идентификация) — имеет достаточно широкий частотный диапазон и достаточно большое количество различных стандартов, которые так или иначе применимы к данной технологии. Для справки: используются частоты: 125-135кГц, 400 кГц, 6.78МГц, 13.56МГц (карты метро и банковские карты), 27.125МГц, 40.68 МГц, 433.29 МГц, 869 МГц, 915 МГц, 2.45 ГГц, 5.8 ГГц и 24.125ГГц. Как видно частотный диапазон очень широкий.

Мы же будем говорить о самых распространённых и наименее защищённых картах частотного диапазона 125 кГц. Я разберу стандарт EM Marine 4102, так как именно с ним лучше всего знаком. Однако код эмулятора позволяет работать и с другими стандартами, работающими на частоте 125 кГц.

Чтобы мы могли дальше углубиться в теорию, следует рассказать пару слов о принципе работы RFID. Далее в тексте будет приводиться информация, относящаяся к стандарту 125 кГц EM Marine, прочие RFID решения устроены подобным образом.

Считыватель, кроме информационного обмена осуществляет подачу питания. Метка из себя представляет ПЗУ, которое питается от электромагнитного поля, и после подачи питания просто отдаёт записанную информацию.

Из этой схемы хорошо видно, как устроен передатчик и приёмник. Оба колебательных контура настроены в резонанс и используются для передачи данных и передачи энергии, для питания пассивной метки, в роли которой выступает наша карта.

Более детально о принципе работы можно прочитать в [1]

Внутренности разобранной карты

Если разобрать карту, то можно увидеть антенну в виде катушки и чип залитый компаундом, в котором находится ПЗУ и конденсатор ёмкостью 75 пФ.

Описание протокола EM4102

Прежде, чем мы пойдём дальше, давайте разберёмся со стандартом EM4102, который мы будем эмулировать. EM4102 совместимая RFID-метка содержит 64 бита памяти только для чтения. По сути — это и есть ПЗУ, то есть информация может быть считана из неё, но не может быть изменена либо записана, проще говоря этот чип единожды прошивается на заводе. Структуру памяти метки можно посмотреть на рисунке ниже.

Когда метка попадает в электромагнитное поле, излучаемое считывателем RFID, она получает энергию от поля (питание) и начинает передачу данных. Первые 9 битов – это логическая единица. Эти биты используются как последовательность маркеров для обозначения начала передачи. Поскольку во всех остальных данных используется контроль чётности, эта девятибитная последовательность единиц больше не встретится ни в каком другом месте. Далее идут 10 групп по 4 бита данных и 1 бит чётности на каждую группу. Наконец, есть 4 бита контрольной суммы и последний стоповый бит, который всегда равен нулю.

Метка повторяет цикл передачи данных, пока на неё приходит питание. Поэтому мы на ридере наблюдаем постоянное считывание метки.

Приведу пример данных, которые передаёт метка с номером: 0x06 — номер версии, и 0x001259E3 — данные.

Кстати, номер, напечатанный на карте можно перевести в hex-номер, который получит считыватель. Например, на карте записан номер: 116,23152

  • 116 в десятичной системе счисления – это 0x74 в шестадцатиричной;
  • 23152 в десятичной – это 0x5A70 в шестнадцатиричной;

Модуляция сигнала

Передача данных от метки до считывателя осуществляется с помощью модуляции несущего сигнала считывателя (в нашем случае несущей частоты 125 кГц). Обратите внимание, что от этой несущей частоты идёт и питание и ей же осуществляется модуляция сигнала. Для начала рассмотрим упрощённую схему взаимодействия считывателя и метки. Запомните эту картинку, мы ещё будем к ней обращаться.

Как видно у метки есть колебательный контур LC, диод, служащий для выпрямления переменного тока, конденсатор для сглаживания пульсаций (это часть питания метки), и транзистор, управляя которым мы можем модулировать сигнал. На считывателе это будет отражаться в изменении тока протекающего в катушке. Проще говоря, при попадании в поле считывателя, метка потребляет электрический ток (примерно постоянно), при передаче информации она транзистором изменяет значение потребляемого тока и таким образом считыватель может получить сигнал, измеряя потребляемую мощность.

Считыватель генерирует магнитное поле, с помощью модулятора и катушки и снимает промодулированный сигнал, затем декодирует его.

Пример модуляции несущего сигнала

Если я вас окончательно не запутал, то едем дальше. Для того чтобы передать данные, нам необходимо модулировать сигнал. То есть на несущую частоту наложит биты передаваемой информации.

По стандарту RFID есть три популярных схемы модуляции:

  • Манчестер код
  • Двухфазный манчестер код
  • Кодирование фазовым сдвигом

При таком кодировании метка изменяет уровень передачи сигнала строго в середине периода передачи одного бита. Переход от низкого к высокому уровню в эти моменты означает состояние логической «1», а переход от высокого уровня к низкому, представляет состояние логического «0».

Реальный промодулированный сигнал, снятый на катушке считывателя.

Делаем RFID-эмулятор

Ну что же, если вы ещё здесь и голова не опухла, от таких выкладок, то пришла пора делать RFID-эмулятор, всего из двух деталей. В этой простоте кроется гениальность. Устройство я собрал, позаимствовав идею и код у Micah Dowty, фотографии мои.

Вот такой миниатюрный таракан, вполне может эмулировать метку

Сайт проекта . Код очень интересен, можно сказать гениален и лаконичен (используется ассемблер). Остановимся на нём подробно. Его мы и разберём. Ознакомиться с кодом можно вот тут.

Для начала разберёмся, как же эта штука вообще функционирует, хотя по определению работать не должна, так как противоречит привычной схеме подключения микроконтроллера. Схема устройства взята из исходного кода.

Катушка индуктивности около 1 мкГн и микроконтроллер ATtiny85

Вот это дамы и господа и есть настоящее Хакерство, когда уровень понимания особенностей работы оборудования позволяет создавать технические решения, выходящие за рамки, обозначенные производителем! И это работает, проверено лично. Вот истинное значение слова «хакер», это не про взлом и воровство.

Забегая вперёд скажу, что данной катушки для нормальной работы недостаточно, и всё же пришлось cделать нормальную антенну, повесить конденсаторы по питанию, резонансный конденсатор. Но вот для демонстрации принципов работы вполне подойдёт.
Как же это работает:

  • Катушка фактически питает микроконтроллер AVR через контакты ввода/вывода. Каждый такой контроллер имеет диоды на портах ввода/вывода, которые предотвращает повышение напряжения на этом выводе выше напряжения питания микросхемы или опускание уровня сигнала ниже уровня земли. Они используются также для предотвращения статического пробоя, который приводит к выходу из строя микросхемы. При поднесении катушки к считывателю, в ней наводится ЭДС равная нескольким вольтам. Когда напряжение на катушке превышает напряжение питания контроллера, то часть этой энергии через эти ограничивающие диоды передаются к шине питания микросхемы. В результате получается, что микроконтроллер получает питание. А верх и низ синусоидальной волны усекается, и сигнал становится более похож на прямоугольный меандр.
  • Фильтрация питания с использованием ёмкости кристалла AVR. Обычно, когда ставят микросхему, то ставят конденсаторы по питанию, для фильтрации помех (обычно 0,1 мкФ керамику и электролит параллельно). В данном решении фильтрация осуществляется только внутренней ёмкостью шин питания в кремниевом кристалле микроконтроллера AVR. Она небольшая, но даже её достаточно для стабильного питания и работы, при питании от импульсов с частотой 125кГц!
  • Работа осуществляется при очень низком напряжении. Микроконтроллер ATtiny85 предназначен для работы при напряжении всего 2,5 В. Существует версия с расширенным диапазоном напряжений до 1,8 В. При этих напряжениях обычные тактовые генераторы AVR не работают, но этого можно избежать применив следующий хак.
  • Катушка индуктивности применяется не только для питания микросхемы, но ещё и для тактирования микроконтроллера! Выше мы говорили, что получаем прямоугольную волну, которая остаётся после того как ограничивающие диоды забрали немного энергии. Эта форма волны является входом Clock нашего микроконтроллера! И весь код работает на частоте 125 кГц, синхронно с несущей частотой считывателя RFID. Это гениально, ребята!
  • Прошивка? На таких низких скоростях микропрограммное обеспечение микросхемы больше похоже на последовательность операций ввода-вывода, выполняемых синхронно с каждым тактовым циклом несущей. Но остается много лишних циклов. В протоколе EM4102 вы потенциально можете выполнить некоторую полезную работу с 32 тактовыми циклами между каждым битом. Однако с протоколом HID вам необходимо выводить фронт FSK каждые 4 тактовых цикла. В результате прошивка на RFID-метке крайне тупая. «Исходный код» на самом деле представляет собой просто набор причудливых макросов ассемблера, которые преобразуют код метки RFID в длинную последовательность инструкций ввода-вывода.

Прежде чем мы пойдём разбирать код данного эмулятора давайте сделаем ему нормальную антенну. Мои эксперименты с текущей схемотехникой выявили крайнюю нестабильность её работы. Она работает только совсем рядом со считывателем и то не всегда. Поэтому сначала я припаял конденсатор 0,1 мкФ на ножки питания контроллера, а потом решил сделать настоящий большой колебательный контур, как в настоящей метке.

Первая модификация — конденсатор 0,1 мкФ по питанию

Создание антенны

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

Собрать и настроить антенну очень просто, прямо как в картинке из [1].

Параллельный колебательный контур

Если оставить всю математику и перейти к сути, у колебательного контура есть такой параметр, как резонансная частота, которая определяется по формуле.

Где f — частота колебаний, L — индуктивность катушки, C — ёмкость конденсатора.

В данном случае у нас есть фиксированный параметр — частота, а с ёмкостью и индуктивностью мы можем играться. Для того чтобы рассчитать катушку, воспользуемся документом [2]. Все кто хоть как-то собираются делать антенны для RFID меток (любых частот), обязаны с ним ознакомиться!
Многие умельцы, как для ридеров, так и для эмуляторов (суть не важна) делают круглые катушки. Их проще считать и изготавливать, но они имеют существенный недостаток — их линейные размеры больше карточки. Я хочу изготовить катушку индуктивности в форме прямоугольника, с линейными размерами меньше размеров стандартной карты и, чтобы результирующее устройство было размером со стандартную карту RFID. В результате выбираю размер будущей катушки индуктивности практически такой же, как стоит в настоящей метке, то есть примерно 70х40 мм. Если конденсатор выбрать 10 нФ, то индуктивность катушки (из формулы выше), должна составлять у нас 162 мкГн. Теперь смотрим в документацию по расчёту прямоугольной катушки. Для намотки катушки выбрал провод сечением 0,2 мм. В результате открываем соответствующий раздел документации, и нашему взору представляется следующая славная формула.

Как видим параметры толщины и ширины катушки у нас неизвестные и изменяемые (упираются в толщину провода 0,2 мм), но общие прикидки мне дали цифру в 42 витка. Можно было бы сделать несколько итераций, и сделать прям точный-точный расчёт, но в нашем штучном случае, и так сойдёт.

После чего, необходимо изготовить каркас 70х40 мм для намотки катушки. Его я изготовил из текстолита и на него намотал катушку.

Каркас из текстолита

Намотка и готовая катушка

К сожалению, измерителя индуктивности у меня нет, поэтому пришлось действовать далее методом научного тыка. Поскольку я наверняка ошибся в расчётах, и в количестве витков, когда наматывал катушку, так как делал их приблизительно и на глаз, то я решил подобрать резонансную ёмкость вручную. Для этого закрепил катушку на картридере, воткнул её концы в макетную плату (“матрац с дырками”), затем начал поочерёдно подключать ёмкости, при этом регистрируя сигнал на осциллографе.

Начнём подбор резонансного конденсатора

Сначала я проверил конденсатор емкостью 10 нФ, который должен быть резонансным. Но амплитуда сигнала сразу просела, по сравнению с пустой катушкой. Тогда я взял конденсатор меньшего номинала. И так перебирал конденсаторы, пока не поймал резонанс. Таким образом резонансная ёмкость конденсатора составила 3,2 нФ.

Сигнал без конденсатора, пустая катушка

Сигнал 10 нФ

3 нФ, 4 нФ, 2,2 нФ

Видно, что пробовал разные варианты, и было ясно что максимум лежит где-то между 3 и 4 нФ и результатом стал конденсатор 3,2 нФ (состоящий из двух конденсаторов в параллели). Всё, наша катушка готова к дальнейшим опытам.

Вообще, хочу заметить, что катушку можно сделать вообще в виде дорожек на печатной плате, и при небольшой серии изделий так и стоит делать. Вот, пример такой платы, именно на 125 кГц от Alexander Guthmann. К сожалению, сайт практически умер, а автор давно не выходит на связь, так что довольствуемся только моими фото. Если кто поможет его найти, буду признателен! Не знаю что с ним случилось.

Таким образом, делать эмулятор сразу в виде печатной платы — нет никаких проблем. Думаю имея руководство [2], сможете рассчитать такое самостоятельно, раз это смог сделать четырнадцатилетний немецкий школьник.

Пробежимся по коду

Давайте кратенько пробежимся по коду, который можно посмотреть вот тут. Там пример эмуляции двух типов карт, я разберу только EM4102.

Перво-наперво, как гласит код, нам при прошивке микроконтроллера надо прошить fuse-биты в значение lfuse to 0xC0: таким образом, чтобы контроллер тактировался от внешнего генератора. Обращаю внимание, что любая перепрошивка контроллера будет сопряжена с тем, что его надо будет тактировать от внешнего источника, так как мы устанавливаем fuse биты с генерацией от внешнего генератора!

Весь код основан на макросах. Напомню, что такое макросы — это программа, которая подготавливает код к компиляции. Наша программа состоит всего из нескольких ассемблеровских инструкций: rjmp, call (2 такта), nop, ldi, out и ret (все по 1 такту)! Всё, весь остальной код формируется макросами в зависимости от макроса серийного номера (дефайна). Особенность работы в том, что у нас достаточно мало тактов для нормальной работы. Попробуй успей за 32 такта сделать что-то, учитывая что инструкции перехода в контроллере AVR занимают 2 такта. Поэтому весь код генерируют макросы в зависимости от ID-карты.

Дефайнами задаём какой тип карты мы эмулируем и задаём ID-карты. Это главный макрос, на основании которого и формируется остальной код. И, тадам, его величество макросы.

Макрос задержки, принимает на вход количество тактов задержки. Достаточно очевидный рекурсивный макрос, осуществляет задержку с помощью команды nop (нет операции, 1 такт) и команды rjmp .+0 (перейти на следующую строку, 2 такта). Комбинируя эти команды между собой, можно сделать задержку нужной длинны в тактах. По сути код ничего не делает, только тратит машинное время.

Если вы ещё соображаете, то дальше я вам совсем изнасилую мозг, но код так гениален что вам придётся потерпеть.

Рекурсивный макрос кодирования манчестер-кодом.

Собственно тут и осуществляется вся логика. Принимает на вход битовую маску и счётчик битов. Если счётчик не нуль, то вызываем ещё раз сами себя, декрементируя счётчик (рекурсивный макрос, ага). Далее в самом теле идут вызовы макросов baseband_0, baseband_1 и baseband_1_last. В зависимости от того, какой бит у нас “1” или “0”, мы модулируем сигнал манчестер кода с нуля на единицу или с единицы на нуль.

Помните выше я приводил таблицу в статье, как идёт кодирование содержимого карты, где идут биты чётности, и стоп биты в конце. Так вот, наша задача теперь ID-метки закодировать этим методом, для этого у нас существуют два макроса.

ROW_PARITY — расчёт бита чётности в строке из четырёх бит, COLUMN_PARITY — расчёт контрольной суммы всей посылки.

Вся логика работы у нас описывается в макросе в .main

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

Осталось разобраться, что же такое baseband. Для этого у нас служат ещё одни макросы обёртки (да сколько можно-то, а?).

Макросы baseband* — выполняют ассемблеровский код: вызывают соответствующие функции, и потом делают переход на другую команду. Макрос baseband_1_last — аналогична макросу baseband_1, кроме того что делает безусловный переход не на команду ниже, а в начало функции main. Макрос header — служит для вывода заголовка из девяти однотипных бит равных единице, и вызывает макрос манчестера с передачей числа и количества передаваемых бит.

Последнее, что осталось разобрать — это функции baseband30_0 и baseband30_1. Они описываются следующим кодом.

В зависимости от того, какая функция вызывается baseband30_0 или baseband30_1 в регистр r16 записывается значение того что должно быть на пине ввода/вывода: 1 или 0. После этого идёт безусловный переход на baseband30 осуществляется вывод и задержка на 19 тактов, после чего идёт возврат.

Самая большая магия этого кода, что он просчитан точно до каждого такта, каждый такт передачи манчестерского кода занимает ровно столько периодов, сколько допустимо стандартом, а именно 32 такта процессора! Это фантастически гениально, надо помнить сколько тактов занимает каждая команда.

Давайте его скорее скомпилируем и посмотрим как он выглядит, как развернутся все эти макросы. Компилируем командой make (предварительно установив avr-gcc) и дизассемблируем получившийся elf-файл

Вначале у нас вектора прерываний, но нас интересует только первый jump. Так как остальные вектора никуда не ведут.

Здесь мы настраиваем порты ввода/вывода, и вызываем функцию main. A main состоит из безумного количества вызовов функций baseband30* и jump (так развернулся наша адский цирк макросов).

И так далее… пока не джампнемся снова на main

Ну и глянем как же выглядит наш baseband модуль.

В конце видно как delay развернулся в список jump и nop для задержки. Вот такая красивая магия.

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

Испытания

Применим все полученные знания и проведём испытания. Компилируем прошивку, прошиваем контроллер, не забывая правильно выставить Fuse-биты.

Платка для прошивки

Подключаем наш колебательный контур и тестируем на настоящем промышленном считывателе, никаких полумер, честные боевые условия.

Испытательный стенд

И, о чудо! Оно работает, корректно считывается и в цикле даёт корректный ID! Без внешнего питания, с работой только от поля. Осталось всё это привести в порядок и сделать настоящую RFID-метку.

Окончательный “заламинированный” вариант метки

Итого

Могу честно признаться, что до конца не верил, что это заработает. Питание от поля, нестандартные режимы работы контроллера, работа строго по тактам, самодельная катушка индуктивности. Плюс ещё работа самого RFID. И вот, вроде плёвая поделка растекается на пару месяцев чтения документации и разбора полётов. Но это работает, и эта штука по-настоящему гениальна. Так что ребята, вот такие штуки и есть настоящее хакерство. Дерзайте!

Домашнее задание

Раз вы всё-таки прочитали эту крутую статью, я её писал, старался, делал, теперь пора и вам что-то попробовать сделать. В коде эмулятора есть раздел, который эмулирует карты стандарта HID Proximity, с кодированием фазовым сдвигом. Вам в качестве развлечения и лучшего усвоения материала следует разобраться со стандартом HID и этим кодированием. Решение присылайте в комментарии. Удачи.

Как перепрошить карту em marine на hid

Перевод скуд c карт em marin на карты mifare® полезные сведения для владельца объекта скд.

Подавляющее большинство современных систем контроля доступа (СКД) использует в качестве средств доступа идентификаторы, работающие на частоте 125 кГц. Это проксимити карты доступа (только чтение), самыми распространенными являются карты EM Marin, а также HID, Indala®.

Карты этого стандарта являются удобным средством открывания дверей и турникетов. Но, не более. Эти карты не обладают никакой защищенностью, легко копируются и подделываются и, соответственно, ничего не дают для защиты объекта от несанкционированного проникновения.

А именно это зачастую и требуется от современных систем контроля доступа -предотвращение несанкционированного доступа на территорию объекта или в помещение.

Настоящую защиту от копирования и подделки обеспечивают такие идентификаторы, в чипах которых реализована криптографическая защита. Это бесконтактные смарт-карты, работающие на частоте 13,56 МГц, наиболее распространенными из них являются карты Mifare®, HID iClass®.

В картах этих стандартов криптозащита организована на высоком уровне, и подделка таких карт практически невозможна.

В данной статье рассматривается простой и легкий путь замены карт доступа EM Marin на действующем объекте СКД на карты стандарта Mifare®.

Планируя замену карт EM Marin на карты Mifare® в действующей СКД (или выбирая стандарт Mifare® в качестве карт доступа для новой СКД), следует уделять особое внимание процессу выпуска карт доступа. В отличие от обычной EM Marin, бесконтактные смарт-карты имеют память для записи-чтения и механизм криптографической защиты от несанкционированного чтения или записи данных в чип карты. И для того, чтобы в полной мере использовать имеющиеся возможности, заказчик СКД должен организовать у себя на объекте определенную процедуру выпуска карт доступа.

Основные отличия карт Mifare® и EM Marin приведены в таблице.

Одно их главных отличий Mifare®от EM Marin — это наличие памяти для многократного чтения-записи. Причем, операции как чтения, так и записи в каждый сектор могут быть защищены крипто-ключами.

Табл. 1

Mifare® 1K

Mifare® Plus

EM Marin

Серийный номер, всегда открытый для считывания

да, длиной 4 байта

да, длиной 7 байт

да, длиной 3 байта

Защита операций чтения и записи

ключ к чтению каждого сектора

ключ к чтению каждого сектора

ключ к записи в каждый сектор

ключ к записи в каждый сектор

I. ТИПИЧНЫЕ ОШИБКИ ПРИ ИСПОЛЬЗОВАНИИ КАРТ ДОСТУПА MIFARE®

Ошибка 1. Считывание серийного номера карты.

Если считыватель, установленный у турникета, шлагбаума или двери в помещение будет считывать серийный номер чипа карты Mifare®, то никакого преимущества по сравнению с картами EM Marin достигнуто не будет. Затраты на более дорогие карты доступа будут напрасными. Серийный номер чипа Mifare® (UID) можно скопировать, хоть и несколько сложнее, чем UID карты EM Marin. При считывании серийного номера Mifare® никак не задействуются криптографические функции, а это означает работу на уровне EM Marin, без защиты карты от копирования.

Чтобы правильно использовать функциональные возможности карт Mifare® надо считывать не серийный номер чипа, а данные из некоторого блока памяти карты (secure sector), доступ к которому защищен крипто-ключами.

Ошибка 2. Подключения считывателя по Wiegand-26.

Ситуацию, когда с карты Mifare® считывается серийный номер, а сам считыватель подключается к контроллеру через интерфейс Wiegand-26, можно назвать типичной. Но неправильной.

Обусловлено это тем, что в подавляющем большинстве современных СКД считыватели карт подключаются по интерфейсу Wiegand, и чаще всего по его конкретной реализации -Wiegand-26. И монтажник думает, что подключив вместо считки EM Marin считку Mifare®, он переведет действующую СКД на более высокий уровень защищенности. Не переведет.

Ошибка в подключении считок Mifare® по интерфейсу Wiegand-26 (для чтения серийного номера) заключается в том, что номер UID Mifare® будет передаваться не полностью. Длина серийного номера Mifare® 1K — 4 байта. А по Wiegand-26 передается только 3 байта. Эта ошибка приводит к появлению в системе дубликатов номеров карт.

Для того, чтобы полностью считывать UID Mifare®,надо подключать считыватели по интерфейсу Wiegand-42 (который позволяет передать в контроллер все 4 байта серийного номера Mifare®).

II. КАК ЗАМЕНИТЬ КАРТЫ EM MARIN НА КАРТЫ MIFARE®

Для того, чтобы в действующей СКД заменить карты EM Marin на карты Mifare®, необходимо выполнить простые действия:

1) Идентификатор карты EM Marin записать в память карты Mifare®(рис. 1).

2) Настроить считыватели Mifare® на чтение того блока памяти, в который записан идентификатор EM Marin.

3) Заменить считыватели EM Marin на считыватели Mifare® (рис. 2).

Все остальное сохраняется: программное обеспечение, база данных, отчеты и т.п. Проходы по новым картам Mifare® будут обрабатываться точно так же, как и по старым картам EM Marin.

Рис. 1

Рис. 2

Рис. 3

Но выполнение этих трех, перечисленных выше этапов характеризуется определенными тонкостями. Рассмотрим эти этапы подробнее.

1. ЭМИССИЯ КАРТ

Эмиссия — это такой этап, обратить внимание на который должен сам владелец объекта с установленной СКД.

Когда владелец объекта может быть уверен в том, что карты, открывающие доступ в важные помещения, не будут подделываться? Только тогда, когда защиту от подделки он продумает и реализует самостоятельно (или через свое доверенное лицо). Нельзя передавать эти функции разработчику или установщику СКД.

Если сразу после закупки карты доступа Mifare® будут выдаваться работникам — это ошибка. Для того, чтобы использовать все преимущества карт Mifare®, их нужно подвергнуть двум процедурам, которые отсутствуют при использовании карт EM Marin, а именно — пред-эмиссии и эмиссии.

1.1. Пред-эмиссия. Запись ключей (прошивка карт Mifare®)

Первое, что владелец объекта должен сделать, — это выбрать один сектор или несколько секторов памяти Mifare®, в которых будут храниться данные. Второе — придумать значения ключа А для доступа к выбранным секторам памяти Mifare®. В дальнейшем значение ключа А должно надежно храниться в сейфе.
Во все закупленные карты Mifare® записывается ключ А.

В результате проведенной пред-эмиссии карты Mifare® оказались переведенными из открытого заводского состояния в закрытое и защищенное состояние для данного объекта СКД (рис. 3).

1.2.Запись идентификаторов Em Marin в память карты Mifare®

Рис. 4
Действующая карта доступа EM Marin изымается у работника.

Идентификатор (серийный номер чипа) карты EM Marin записывается в сектор карты Mifare® ( в тот сектор, который выбран на этапе пред-эмиссии).

Карта доступа Mifare® выдается работнику.

Эти действия производятся со всеми картами EM Marin, находящимися на руках у работников, до тех пор, пока не будут заменены все имеющиеся карты EM Marine (рис. 4).

2. НАСТРОЙКА СЧИТЫВАТЕЛЕЙ

Для того, чтобы считыватели могли работать с картами Mifare®, прошитыми на предыдущем этапе, в них должны быть загружены соответствующие ключи. Не все считыватели подходят для работы в таком защищенном режиме, на что также следует обратить внимание владельцу объекта. Для использования в защищенном режиме подходят только такие считыватели Mifare®, которые могут хранить в своей энергонезависимой памяти ключи для доступа ко всем 16 секторам Mifare®. Многие дешевые считыватели не обладают такой характеристикой и, соответственно, бесполезны для защищенной СКД.

Рис. 5
Запись ключей в считыватели Mifare® переводятся с помощью специальной мастер-карты или карты-конфигуратора.

Карта конфигурации подносится к каждому считывателю. В результате все считыватели переводятся из открытого заводского состояния в защищенное состояние, в котором они смогут работать с «прошитыми» картами данного объекта доступа (рис. 5).

3. ЗАМЕНА СЧИТЫВАТЕЛЕЙ

Считыватели EM Marin, установленные у турникетов, дверей и т.п., демонтируются. Вместо них устанавливаются уже «прошитые» считыватели Mifare® и подключаются к контроллерам по интерфейсу Wiegand-26 (рис. 2).

4. ФУНКЦИОНИРОВАНИЕ СКД ПО КАРТАМ MIFARE®

Все карты EM Marin заменены на «прошитые» карты Mifare®. Вместо старых считок EM Marin к контроллерам (по Wiegand-26) подключены считки Mifare®. Эти считки читают данные из защищенного блока памяти Mifare® (secure sector), и в контроллер передается такой же идентификационный номер, который был у старой карты EM Marin.

Никаких других изменений, кроме отмеченных выше, не требуется. Проход по новой карте Mifare® фиксируется точно также, как и по старой карте EM Marin. С карты Mifare® считывается такой же идентификационный номер, который был на карте EM Marin. По этому номеру работник однозначно идентифицируется в базе данных.

5. ВЫДАЧА НОВЫХ КАРТ ДОСТУПА MIFARE®

После того, как были заменены все старые действующие карты доступа EM Marin, новым работникам должны выдаваться новые карты Mifare®.

В карты, прошедшие пред-эмиссию на первом этапе, а именно — в выбранный закрытый сектор, производится запись новых идентификационных номеров. Диапазон этих идентификаторов выбирается системным администратором с учетом уже имеющихся номеров, чтобы избежать появления одинаковых номеров в системе.

После этого карты доступа Mifare® можно выдавать работникам.

Выдача новых карт доступа Mifare® производится точно так же, как выдавались карты EM Marin (в бюро пропусков или в другом аналогичном месте).

Вместо контрольного считывателя EM Marin к компьютеру подключается контрольный считыватель Mifare® (по интерфейсу USB), который считывает данные из защищенного блока памяти Mifare®. Все остальное происходит точно так же, как и при выдаче карт EM Marin. Идентификатор, записанный в защищенный блок памяти Mifare®, считывается с карты и сохраняется в базе данных вместе с персональными данными работника.

III. КАК ПРАВИЛЬНО ВЫБИРАТЬ КАРТЫ MIFARE®

В отличие от карт EM Marin карты Mifare® представляют собой более сложный продукт, и к закупке таких карт надо подходить более ответственно.

На что же следует обращать внимание при заказе карт данного стандарта? На качество, которое складывается из следующих составляющих:

— соединение чипа и антенны.

1. ЧИП КАРТЫ

Чипы Mifare® 1K бывают оригинальные и нет. От этого зависят такие параметры, как надежность и корректность работы с памятью чипа.

Карты Mifare® 1K были изначально разработаны фирмой Philips и предназначались для локальной оплаты на транспорте. В настоящее время все проекты Mifare® ведет дочерняя фирма Philips — компания NXP Semiconductors.

Чип от NXP называется MF1 IC S50 и является самым правильным «оригинальным» чипом.

Кроме NXP, оригинальные чипы выпускает фирма Infineon на основании лицензии от NXP. Чип от Infineon называется SLE66R35. По надежности и другим параметрам данный чип ничем не отличается от чипа NXP.

Название MIFARE — торговая марка семейства бесконтактных смарт-карт, принадлежащая NXP Semiconductors.

Все продукты MIFARE® базируются на международном стандарте ISO 14443 Type A — стандарте бесконтактных смарт-карт. Чипы, совместимые с Mifare® 1K, также разработаны на основе данного стандарта ISO.

На рынке существуют чипы, кроме MF1 IC S50 и SLE66R35, которые называют «совместимые» или «неоригинальные» чипы Mifare® 1K. Но, так как эти чипы выпускаются без лицензии NXP, носить название Mifare® на законных основаниях они не могут. Фирмы-разработчики таких чипов этого и не делают, они дают своим чипам другие названия. А словосочетание «совместимый Mifare» или «неоригинальный Mifare» придумали менеджеры по продажам.

Из таких совместимых чипов наиболее известными являются:

— SHC1102/ HuaHong и др.

Заводы-изготовители таких чипов в своей технической документации, естественно, не упоминают Mifare®, а ссылаются на стандарт ISO 14443 Type A.

Следует иметь в виду, что стоимость совместимых чипов значительно ниже, чем стоимость оригинальных.

Есть еще такое понятие, как корректная или полная реализация стандарта ISO 14443 Type A. Не все совместимые чипы обладают такой реализацией. Это означает, что при выполнении сложных функций по операциям с памятью «Mifare-совместимого» чипа, такие чипы могут работать неправильно. Что и происходит на практике. Заказчик, польстившись на низкую стоимость, с удивлением обнаруживает, что карты через некоторое время перестают работать.

2. АНТЕННА

Бесконтактные смарт-карты стандарта ISO 14443 Type A работают на частоте 13,56 МГц. Т.е. и считыватель, и карта должны обеспечить работу на частоте 13,56 МГц. Для этого внутри карты имеется антенна. Чаще всего антенна делается из нескольких витков медной проволоки. Медная проволока может наматываться китайским рабочим вручную, а может наматываться на автоматическом станке. При намотке на станке антенна получается идеально ровной, чего нельзя сказать о ручной намотке. От этого может зависеть реальная частота, на которой данная антенна будет работать, и, соответственно, дальность считывания и правильность передачи данных между картой и считывателем.

3. СОЕДИНЕНИЕ ЧИПА И АНТЕННЫ

Чип и антенна должны быть надежно соединены. Иначе не будет передачи данных между картой и считывателем. От качества этого соединения зависит надежность и долговечность работы карты. Если площадь контакта антенной проволоки и чипа достаточно велика и качество пайки (сварки) высокое, карта будет долго и безупречно работать. Высокотехнологичные производства это обеспечивают.

Но если все делается вручную, обычным паяльником, со слабым технологическим контролем, то соединение чипа с антенной может оказаться слабым и разрушиться при использовании карты (от небольших вибраций и других внешних воздействий).

Вот три наиболее важных момента, которые следует иметь в виду при заказе бесконтактных смарт-карт Mifare®.

Примечание: Об оригинальности чипов EM Marin и Mifare®.

То, что в народе называется EM Marin, представляет собой самую популярную карту доступа EM4102 от швейцарской фирмы EM Microelectronic-Mann SA. Но оригинальные чипы EM4102 практически отсутствуют на рынке. Подавляющее большинство карт доступа (браслетов, брелоков) поставляется с китайским аналогом TK4100 (и, строго говоря, называться EM Marin не может).

Mifare® — это торговая марка фирмы NXP Semiconductors. Никто, кроме NXP, не может использовать для своих чипов (на законных основаниях) наименование Mifare®.

В Китае производятся «совместимые» чипы. Но заводы-изготовители их и не называют Mifare®, а дают свои наименования (например, ISSI, F08, TKs, HuaHong).

К сожалению, на отечественно рынке многие поставщики не делают такой дифференциации и поставляют «совместимые» чипы, как настоящие Mifare® .

IV. КАК ДОБАВИТЬ В СКД ДОСТУП ПО ОТПЕЧАТКАМ ПАЛЬЦЕВ

Дополнительно повысить защищенность и безопасность СКД можно, добавив предоставление доступа по карте + по отпечатку пальца.

Если такое повышение статуса СКД необходимо для системы, где уже есть карты EM Marin, то, вместе с заменой карт EM Marin на карты Mifare® можно легко и просто добавить верификацию по отпечатку пальца. Выполняется это с помощью комбинированного считывателя Mifare® и отпечатка пальца, который подключается к контроллеру по интерфейсу Wiegand-26.

Считыватель работает следующим образом. Вначале считывается карта Mifare®, в памяти которой хранится отпечаток пальца владельца карты. Затем сканируется палец. Считыватель сравнивает оба отпечатка и при совпадении посылает в контроллер идентификационный номер, записанный в защищенном секторе Mifare®.

V. ЗАКЛЮЧИТЕЛЬНЫЕ ЗАМЕЧАНИЯ

В заключение перечислим основные моменты, на которые следует обращат внимание владельцу объекта СКД.

1) Вместо считывания серийного номера чипа, надо считывать данные из защищенного блока памяти карты Mifare®. Длина данных, записанных в блок памяти, должна быть не более 3 байт, чтобы полностью передать по Wiegand-26.

2) Не рекомендуется использовать карты Mifare® сразу после покупки. Пользователю следует поменять открытые заводские ключи на свои собственные,секретные ключи. Если не использовать ключи при работе с продуктами Mifare®, то нет смысла и в самих картах Mifare®. В этом случае дешевле и проще применять Em Marin. Все преимущества продуктов Mifare® будут реализованы только тогда, когда пользователь будет закрывать доступ к чтению-записи данных из чипа Mifare® по своим секретным ключам. И будет делать это самостоятельно, а не получать от поставщика карту с уже записанными (и неизвестными пользователю) ключами.

3) Правильно использовать такие считыватели, которые хранят в своей энерго-независимой памяти ключи доступа к секторам памяти Mifare®. Если ключи доступа хранятся не в считывателе, а в компьютере, -то они легко могут быть скопированы.

4) Владелец системы (доступа, оплаты, и т.п.) должен предусмотреть два этапа выпуска карт:

Предэмиссия нужна для того, чтобы перевести карты Mifare® с открытого заводского уровня на защищенный уровень, принятый в данной системе. С завода-изготовителя карты Mifare® поступают открытыми и незащищенными.

Очень важно для владельца объекта СКД знать, что закупаемые им карты Mifare® находятся на открытом заводском уровне и никакая информация в память карты не записана. Иногда поставщики карт Mifare® самостоятельно (и без ведома заказчика) прописывают свои ключи в карты Mifare®, защищая их якобы от подделки. Это неправильно. Поставщик привязывает таким образом владельца СКД к своим картам. А, зная значение ключей, он имеет все возможности для взлома и подделки карт.

Генерировать ключи и записывать их в карты должен сам владелец объекта, на котором установлена СКД, или его доверенное лицо.

Em-Marine — обзор стандарта, как правильно выбрать карты, брелки, браслеты и считыватели?

EM-Marine — это самый популярный тип идентификаторов в России. Формат был разработан швейцарской компанией EM Microelectronic .
Процесс производства карт, разделен на две большие итерации, сперва крупные высокотехнологичные компании выпускают чипы, таких компаний совсем немного. Далее неисчислимое множество производителей непосредственно карт, которые покупают чипы и изготавливают готовые идентификаторы. EM-Marine всего лишь маленький лепесток на большом древе целого семейства смарт-карт, для всех желающих познакомится с семейством, в нашем блоге заботливо припасено подробное руководство по выбору.

Производители чипов
В России можно встретить идентификаторы EM Marine с чипами трех видов
TK4100 — самый распространенный чип используется большим китайских компаний.
EM4100 — оригинальный чип , практически не поставляется из за высокой цены.
КБ5004ХК2 — чип Российского производства от компании Ангстрем

Любой из этих чипов содержат сорок бит данных, обычно из них читаются только двадцать четыре. Этот 24 — битный номер написан на толстых картах снаружи в текстовом и десятичном виде .

em.jpg

Код карты в десятичном виде 007369663, далее тот же самый код представленный в текстовом виде — 112,29631.
Конвертировать код карты из десятичного вида в текстовый, можно с помощью специальных конвертеров . Если вы вводите номер карты вручную, использование конвертора может понадобится для добавления карты программное обеспечение СКУД или других систем.

Для автоматизации ввода карты в программное обеспечение можно использовать считыватели подключаемые к компьютеру — цена от 1535 рублей.
Перед покупкой считывателя для ввода карт проверьте совместимость выбранной вами модели считывателя, и вашего программного обеспечения. Например с программным обеспечением для СКУД Sigur , совместим единственный считыватель Sphinx-Reader-EH .

Уникальность номера
Уникальность идентификатора — важнейший фактор стабильности и безопасности любой системы (системы контроля доступа, платежно-пропускные системы, системы платных парковок и т.д.), в статье о Mifare мы писали о том что например NXP строго контролирует уникальность номеров.

В случае с EM Marine никто не контролирует ничего, а большое количество производителей чипов делают вероятность случайно столкнутся с не уникальными номерами достаточно высокой.

Производители карт
Огромное количество производителей карт, браслетов, брелоков не поддается никакому обзору, крупнейший российский производитель это кампания Ангстрем крупнейший китайский Tatwah Smartech .

Точных данных нет, но эксперты сходятся в том что на российском рынке продается 80% карт китайского производства.
Китайские идентификаторы имеют минимальную цену среди всех бесконтактных карт. Чаще всего идентификаторы бывают исполнены в виде карточек, но и другие формы находят свое применение, например брелоки, браслеты и другие варианты.

Качество производства карт EM Marine сильно разнится в зависимости от производителя, и выходит на первый план если речь идет о больших проектах. Отличить качественную карту от не качественной можно лишь вскрыв ее.
img-2016-08-14-13-25-21.pngimg-2016-08-14-13-25-43.png

Типы идентификаторов

Толстые карты EM-Marine — цена от 11 рублей
Выполнены из АБС пластика , со специальной прорезью под клипсу любого держателя карт.

Тонкие карты EM-Marine — цена от 12 рублей
Выполнены и PVC пластика (Поливинилхлорид), предназначены для прямого нанесения изображений с помощью сублимационного принтера или офсетной печати.

Брелки EM-Marine — цена от 11 рублей
Огромное разнообразие материалов от кожи до стекла и такое же разнообразие форм.
Следует помнить что дальность считывания у брелка будет меньше чем у карты.

Браслеты EM Marine — цена от 81 рублей
Можно выделить два типа браслетов
1. Многоразовые
2. Одноразовые — после надевания на руку браслет нельзя снять не нарушив его целостность, тем самым можно защитится от передачи идентификатора другому лицу.

Метки EM-Marine — цена от 53 рублей
Можно найти метки любого размера и формы, от стандартных до микроскопических.

Персонализация

Печать на сублимационном принтере — цена от 61 572 рублей
Идеальный вариант для печати пропусков сотрудников, качество печати будет сильно зависеть от модели принтера и соответственно его стоимости.

Трафаретная печать
Второе распространенное название этого способа печати шелкография. Недорогой способ нанесения большого количества простых, одинаковых изображений, то есть фотографию этим методом нанести не получится, так же не эффективным будет наносить много разных изображений.
Большим преимуществом шелкографии является возможность печатать практически на любых материалах. Например только шелкографией можно печатать на браслетах и брелоках.

Офсетная печать
Высококачественная печать, можно печатать любые типы изображений, при определенных видах стоимость может быть очень высокой, например когда на каждую карту наносится фотография сотрудника.

Ламинированные наклейки — цена от 11 рублей
Самый недорогой вариант персонализации бесконтактных карт, в этом случае сама информация распечатывается на обычной бумаге с помощью любого принтера, вкладывается в специальную наклейку для ламинирования, затем пропускается через ламинатор и после этого приклеивается на карту.

Пластиковые наклейки — цена от 25 рублей
Тонкая наклейка из PVC пластика (Поливинилхлорид) подойдет как для печати сублимационным принтером так и для печати офсетом. После печати наклейка надклеивается на карту, некоторым преимуществом этого способа персонализации можно считать возможно переклеивания наклеек.

Считыватели EM Marine — цена от 921 рублей
Технология EM Marine очень простая: реализация считывателей под EM Marine не составляет абсолютно никакой сложности. Есть огромный выбор недорогих считывателей на самый разный вкус.

Есть считыватели, имеющие интересный дизайн, есть считыватели, имеющие достаточно хорошую вандалостойкость, есть считыватели, допускающие установку на улице, миниатюрные считыватели и считыватели, совмещенные с поддержкой какого-то другого стандарта, например Mifare, или клавиатуры для набора PIN-кода.

Дальность считывания
Считыватели, обеспечивают разную дальность чтения. Самые простые считыватели обычно обеспечивают дальность чтения, от пяти до пятнадцать сантиметров, но есть варианты вплоть до полутора метров.

Дальность существенно зависит от исполнения идентификатора. Брелоки и браслеты — маленькие компактные идентификаторы — читаются хуже всего. Лучше читаются тонкие карты стандартного размера, еще лучше читаются толстые карты, и так же есть особые исполнения толстых карт, которые стоят где-то в полтора раза дороже, но и читаются где-то в полтора раза дальше .

img-2016-08-29-17-28-38.png

Другие особенности дальнего чтения карт EM Marine — это то, что дальность существенно падает, если рядом с картой или считывателем есть металл.

Ориентация карты играет роль: лучше всего читается, если карта находится в плоскости, параллельной плоскости считывателя. Ну, к слову, эти нюансы, они свойственны не только технологии EM Marine.

Специфичные же для технологии EM Marine — это то, что технология не поддерживает антиколлизию, то есть если рядом со считывателем находится одновременно несколько карточек, то результат никакой определенный не гарантируется. Поэтому нужно* отметить, что практическая дальность, практически достижимая, существенно ниже тех цифр, которые можно видеть в параметрах считывателя.

Плюсы EM Marine
Очень дешево, огромный ассортимент исполнения считывателей, огромный ассортимент исполнения идентификаторов.

Минусы EM Marine
1. Отсутствие какой-либо защиты от подделки карты .
Наверное самый значительный недостаток. Для создания дубликатов вам потребуется программатор и карта с возможностью перезаписи, например такая. Эти приборы доступны, в любом крупном городе, например, у организаций, которые занимаются созданием дубликатов домофонных ключей.
Также немаловажно что на толстых картах, идентификатор написан на ней просто снаружи, зачастую его можно просто прочитать, и это уже достаточная информация для того, чтобы сделать такую же карту, которую считыватель не сможет отличить от оригинальной.

Ну, и вспомним, что карта может считаться с большой дальности, поэтому, в принципе, можно себе представить даже такую историю, что владелец карты ее и не доставал и не в курсе был, что ее с большого расстояния прочитали и сделали дубликат.
2. Не уникальные номера
3. Отсутствие реализации механизма антиколлизии

Инсталляция, монтаж » Преобразование кода карты из HEX

Доброго времени суток.
На объекте была одна точка прохода на парсеке, экспортировал через csv сотрудников и коды карт в Орион-про, все бы хорошо, но коды карт в парсеке хранятся в другом формате. Сотрудников под тысячу и собрать карты нет возможности.
пример:
карта emmarine с номером 022,13133
в парсеке хранится 0016334D преобразуя из HEX в DEC 16=022 и 334D=13133
Вопрос — как преобразовать в понятный болиду формат?

5 лет 7 месяцев назад

avatar

Добрый день!
Недавно столкнулся с такой же проблемой. Нужно было добавлять карты EM-Marin зная только код или номер на карте. Вариант со считывателем не подходил, т.к. пришлось делать все удаленно. Прочитал все на форуме, в результате написалась программа — конвертер. Поддерживается также пакетная конвертация. Не требует установки. Выкладываю по ссылке, может кому пригодится.

В обновленной версии поддерживается пакетная конвертация всех форматов.

Конвертер кодов карт EM-Marin в формат контроллеров Болид:
https://disk.yandex.ru/d/UeApAz66pc6R0g
– Довгаль Илья 1 год 10 месяцев назад

47 ответов

5 лет 7 месяцев назад

avatar

Тремасов Константин Александрович

– Тремасов Константин Александрович 5 лет 7 месяцев назад

– Плаксин А.И. 3 года 8 месяцев назад

А на вопрос этот вопрос нет готового решения?:

"Есть база(более 2000тыс чел) от старого скуда где храняться коды карт в виде код объекта-код карты 128-50173
У нас на объекте считки физически подключены в режиме TouchMemory.
Соответсвеенно все коды карт мне надо перевести в формат понятный болиду.
В представленных выше конвертерах код карты например 128-50713 переводиться в 9700000080c61901
А в болид со считывателя та же карта прилетает как 0D00180080C61901
Вот пытаюсь понять по какому принципу нужно перекодировать эту карту?"

У меня та же ситуация.

– Плаксин А.И. 3 года 8 месяцев назад

– Тремасов Константин Александрович 3 года 8 месяцев назад

– Тремасов Константин Александрович 3 года 8 месяцев назад

– Плаксин А.И. 3 года 8 месяцев назад

– Плаксин А.И. 3 года 8 месяцев назад

– Тремасов Константин Александрович 3 года 8 месяцев назад

Имейте в виду, что wconvert имеет ошибку. Если пятизначный код начинается с 00, то байт серийного номера смещается, соответственно и контрольная сумма неверная и весь полученный код в формате TM. Такие номера приходится вторым конвертером считать. Хотя в wconvert можно сразу HEX вводить без лишней конвертации.

5 лет 7 месяцев назад

avatar

Скрипко Алексей Николаевич

5 лет 7 месяцев назад

avatar

Как вспомогательный инструмент к wconvert файл exel с формулами — в первый столб вводим HEX карты, в последнем получаем код для вставки в w_2_tm c сохранением нулей первого байта пятизначного кода. Может кому пригодится)

5 лет 7 месяцев назад

avatar

Подскажите пож-та, есть ли пакетный аналог wconvert ? Программа work.exe не помогла (
Или подскажите логику как из HEX сделать код , который понимает Болид (Орион 1.12).
Например, нужно из "8271B6" сформировать "F6000000 8271Bb6 01"

5 лет 2 месяца назад

avatar

Бавский Андрей Сергеевич

Логика такая:
Для преобразования кода карточек Виганд в формат кода Dallas TouchMemory необходимо дополнить код Виганд нулевыми битами до 7-ми байт и посчитать для них циклическую контрольную сумму:
8-й байт — CRC
5-7 байт — дополнение до 7-ми байт (00 00 00)
2-4 байт — код Вигант
1-й байт — 01

Т.е. на примере кода 011 55982 получается следующий код:
1-й байт – 01 (всегда 01 просто дополнение)
2-й байт – AE
3-й байт – DA (55982 — в шестнадцатеричной системе DAAE)
4-й байт — 0B (011 — в шестнадцатеричной системе 0B)
5-й байт = 6-й байт = 7-й байт = 00 (просто дополнение до 7-ми байт)
8-й байт = CRC = 0E Циклическая контрольная сумма

5 лет 2 месяца назад

avatar

Тремасов Константин Александрович

– Батанов Александр Владимирович 5 лет 2 месяца назад

Спасибо большое, разобрался ) . Осталось расчет CRC допилисть, что бы для каждой строки рассчитывал.

5 лет 2 месяца назад

avatar

Бавский Андрей Сергеевич

– Тремасов Константин Александрович 5 лет 2 месяца назад

Вот в либрофисе расчёт CRC8 сделал.

5 лет 2 месяца назад

avatar

Андрей, Ростов на Дону

Андрей, Ростов на Дону, немного сложновато или просто много инфы.
Я взял на основу скрипт отсюда

5 лет 2 месяца назад

avatar

Бавский Андрей Сергеевич

– Андрей, Ростов на Дону 5 лет 2 месяца назад

Андрей, Ростов на Дону — тезка, ни в коем случае не упрек, наоборот респектище.
Я просто поделился своим решением , достаточно простым и возможно кому то полезным.

5 лет 2 месяца назад

avatar

Бавский Андрей Сергеевич

Таких бы людей побольше на форуме, ответсвенных, которые хотя бы о результате отписывают, еще к тому же и делятся.

5 лет 2 месяца назад

avatar

Тремасов Константин Александрович

Коллеги, доброго времени суток.
Может кто подскажет.
Есть база(более 2000тыс чел) от старого скуда где храняться коды карт в виде код объекта-код карты 128-50173
У нас на объекте считки физически подключены в режиме TouchMemory.
Соответсвеенно все коды карт мне надо перевести в формат понятный болиду.
В представленных выше конвертерах код карты например 128-50713 переводиться в 9700000080c61901
А в болид со считывателя та же карта прилетает как 0D00180080C61901
Вот пытаюсь понять по какому принципу нужно перекодировать эту карту?

4 года 9 месяцев назад

avatar

Байченко Дмитрий Петрович

– Тремасов Константин Александрович 4 года 9 месяцев назад

– Байченко Дмитрий Петрович 4 года 9 месяцев назад

– Тремасов Константин Александрович 4 года 9 месяцев назад

– Тремасов Константин Александрович 4 года 9 месяцев назад

– Байченко Дмитрий Петрович 4 года 9 месяцев назад

видимо тоже стану читателем этого топика))
все офисные карты в вейганде, а скоро надо будет в работу включать БКИ.

и вот что за прикол у производителя? с2000-2/4 и кдл есть выбор, а БКИ — только ТМ. Конечно бывало и хуже, когда у одного производителя уличные считки принимали только один тип карт, а внутренние — другой. Две карты таскать с собой или менять считыватели))

– Волков Андрей 4 года 8 месяцев назад

Может БКИ поменять? Судя по фото у 2.40 версии оба протокола поддерживаются:

– Тремасов Константин Александрович 4 года 8 месяцев назад

– Волков Андрей 4 года 8 месяцев назад

– Тремасов Константин Александрович 4 года 8 месяцев назад

– Волков Андрей 4 года 8 месяцев назад

Обновите пожалуйста ссылки !!

2 года 7 месяцев назад

avatar

2 года 7 месяцев назад

avatar

ДОброго. расскажите, пожалуйста, как пользоваться вышеуказанными программами для конвертации ключей?
мне Орион 1.20 дает выгрузку ключей (сотрудников) вот в таком виде

8800000007A65601
CB0000007EAB4C01
9E000000A5793B01
B300000081C56501

как мне их конвертировать в 10-ричный формат. ключей порядка 700 хотелось бы максимально автоматизировать этот процесс.
Спасибо.

2 года 6 месяцев назад

avatar

– Шехин Александр 2 года 5 месяцев назад

Добрый день, в БД Орион Про 1.20 как можно перекодировать коды из TM в WG для С2000-2 V2.20. Раньше использовались считыватели по ТМ, теперь надо считывать по WG-24, а собирать ключи и по новой прописывать в WG очень большая проблемма.
Привожу код брелка из базы Орионы по ТМ — BE000000898AE901 (он же в С2000-2 с длиной серийного номера =12 )
Вот так этот же Брелок прописывается в приборе с кодом WG — 04000000000FFF01.
В техподдержке помочь бессильны. Прошу помощи у Вас.

2 года 3 месяца назад

avatar

Вот этот код — BE000000898AE901, сильно похож на wiegand 26, посмотрите конфиг С2000-2, какая там длина ключа стоит.
Вот это — 04000000000FFF01 на что похоже, не могу сказать, откуда считывали? С настольного или с подклюенного к одному из С2000-2?

– Тремасов Константин Александрович 2 года 3 месяца назад

BE000000898AE901 Считывал с С2000-2 c подключенного к нему считывателя Proxy-3A-1 с настройкой по TM (как и все ранее записанные коды в БД Орион), а потом также, но с настройкой С2000-2 в виганде и получил 04000000000FFF01. Длина номера стоит 12

2 года 3 месяца назад

avatar

– Тремасов Константин Александрович 2 года 3 месяца назад

Считыватели одни и теже Proxy-3A, что в случае с ТМ, что в случае с вигандом. Микрик №6 в положении ON, остальные OFF. Настройка считывателя либо тач либо виганд. Длина номера 12.

2 года 3 месяца назад

avatar

– Тремасов Константин Александрович 2 года 3 месяца назад

А сохраненные коды в БД ОРион про как-то из тачмемори в виганд перекодировать надо или так допуск по ним в виганде предоставлятся будет? Там где комп с орионом интернета нет, спрашивать от туда не смогу.

2 года 3 месяца назад

avatar

– Тремасов Константин Александрович 2 года 3 месяца назад

Спасибо. Поеду пробовать. Отпишусь

2 года 3 месяца назад

avatar

Доброй ночи. Подскажите как преобразовать десятичный ключ 6957002 в болидовский 4F0000006A27CA01 либо hex 6A27CA в 4F0000006A27CA01 максимально автоматизировано. База на 1500 человек уж очень не хочется чере замечательный конвертер преобразовать это все в ручную!

2 года 3 месяца назад

avatar

Кузнецов Максим Александрович

– Тремасов Константин Александрович 2 года 3 месяца назад

Здравствуйте.С переводом Proxy-3А с ТМ на WG разобрался. Как говорил Константин Александрович, тот код действительно оказался WG, но к сожалению выяснилось, что болид шифровал коды в зависимости от брелков — 80% оказалось в ТМ. Эти коды я перекодировал утилиткой в начале этой темы TM to WG — прекрасная пакетная штука. Коды WG на выходе не меняются, коды ТМ преобразуются в WG, т.е. в стартовый тхт можно сунуть все ключи и забрать их из выходного тхт. Но столкнулся с экспортом-импортом. Экспортируются без проблем, а вот обратно с перекодированными ключамиСотрудники практически не импортируются из-за ошибок в заполнении формы. Просьба, образцом правильного заполнения csv файлов сотрудников и ключей не поделитесь.

2 года 3 месяца назад

avatar

Первые два столбца это серия и номер карты, если их нет, ставить 0, далее столбец с табельным номером сотрудника (обязательно), далее название уровня доступа (если пустое то будет назначен УД Запрет), дата начала действия ключа в формате ДД.ММ.ГГ, конец действия ключа ДД.ММ.ГГ, код в формате ТМ, далее дополнительный код в формате ТМ может быть пустым, но я ставлю 0.
Итого имеем запись строки в виде:
0, 0, Таб.№, УД, ДД.ММ.ГГ, ДД.ММ.ГГ, код ТМ, 0
0, 0, 1, Администрация ТК, 27.03.13, 27.03.50, 670000003A743901, 0.

Если есть серия и номер карты, то выглядит это так:
89, 28955, 1, СКД Служащие, 01.01.14, 01.12.25. (дальше ничего не надо)

– Тремасов Константин Александрович 2 года 3 месяца назад

Спасибо, с ключами то все нормально, я с сотрудниками мучаюсь. Те кто выдавал ключи создавали сотрудников от болды еще с версии 1.12. Табельные номера идут с буквам, пробелами, дробями и тире. Фамилии с цифрами тире, дробями и пробелами между цифрами и буквами. Что из символов импорт проглотит и какие поля обязательны?

2 года 3 месяца назад

avatar

– Тремасов Константин Александрович 2 года 3 месяца назад

Спасибо,все получилось. Успел 380 человек в ручную забить в базу пока ждал помощи.

2 года 3 месяца назад

avatar

Кузнецов Максим Александрович

Константин Александрович, спасибо. Заполнил поля по Вашему образцу, отчество вписал тоже, и залил. Ошибки возникли только при повторении табельных номеров, как они в базе жили так и не понял. Все символы, что описывал раньше, тоже перенеслись, вот только загадка — сотрудников стало на 60 штук больше, ключей на 40, в отличии от данных АБД до экспорта и обратного импорта с перекодированными ключами. С этим заморачиваться не стал, ключники лишних поубивают, а вот беда с удалением сотрудников напрягает сильно. В версии 1.20.2 они удалялись по одному, запара немеренная, в версии 1.20.3 удаляются те, что видны в окне выбора, тоже хреново, когда эти товарищи в количестве, а еще сперва ключи удалить надо, иначе сперва вопросы АБД задает, а потом оказывается что на все подтверждения зря кликаешь, сотрудники возвращаются, если сперва ключ не удалил. Как их всех разом можно кильнуть в 1.20.3, волшебной кнопки "выбрать все" я что-то не углядел.?

2 года 3 месяца назад

avatar

– Волков Андрей 2 года 3 месяца назад

Да, по ссылке можно всех удалить пакетно.

2 года 3 месяца назад

avatar

Только что обнаружил проблему на версии 1.20.3 . Экспортировал ключи со сроком действия 10 лет, а после обратного импорта ключи получили срок действия 1 год, Куда ноль делся? и как пакетно сделать срок действия ключей 10 лет?

2 года 3 месяца назад

avatar

– Волков Андрей 2 года 3 месяца назад

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

2 года 3 месяца назад

avatar

– Волков Андрей 2 года 3 месяца назад

2 года 3 месяца назад

avatar

Рыбкин Евгений Сергеевич

Здравствуйте,
перечитал все сообщения и много нового дня себя узнал.
Хочу сделать добавление карточек (кодов proximity карт) не из АБД, а из Access'а напрямую в MS SQL в pMark -> CodeP корректно.
Коды карт буду считывать через Proxy-USB-MA в режиме hex 5 bytes + Enter
1. Так например я считал код (в блокноте, в поле в MS Access):
"00DE1F50B6"
2. Что бы получить болидовский, я так понял, что нужно брать только первые 5 символов (считать с права на лево):
"F50B6"
3. К нему прибавляю в конец "01"
"F50B601"
4. В начало дописываю 7 (семь) нулей "0000000" (что бы получилось 14 символов)
"0000000F50B601"
. И тут у меня начались вопросы:
Считаный в АБД код преобразовывается в "1D0000000050B601", читая ответы понял, что это какая-то crc8 контрольная сумма.
Вопрос , контрольная сумма чего? каких символов? как её считать?

Пускай дальше я высчитаю этот crc8 код, получу 1D0000000F50B601, по какому алгоритму дальше это число (текст) дальше форматировать, что бы потом в верном формате записать в поле CodeP?

2 года 3 месяца назад

avatar

Иванов Константин Петрович

Коды карт буду считывать через Proxy-USB-MA в режиме hex 5 bytes + Enter
1. Так например я считал код (в блокноте, в поле в MS Access):
"00DE1F50B6"

Прекрасно ��

2. Что бы получить болидовский, я так понял, что нужно брать только первые 5 символов (считать с права на лево):
"F50B6"

Лучше 6 символов, и вообще, взять три байта или 5 — зависит от применяемых на объекте считыавтелей и контроллеров.

3. К нему прибавляю в конец "01"
"F50B601"
4. В начало дописываю 7 (семь) нулей "0000000" (что бы получилось 14 символов)
"0000000F50B601"

01 — код устройства DS1990A, Болидом взят произвольно. Ну, просто добавили 01 и всё тут.

. И тут у меня начались вопросы:
Считаный в АБД код преобразовывается в "1D0000000050B601", читая ответы понял, что это какая-то crc8 контрольная сумма.
Вопрос, контрольная сумма чего? каких символов? как её считать?

Контрольная сумма от остальных 7 байтов, как считается — можно искать поиском, можно подсмотреть в эесельчике, там всё открыто и довольно просто.

Пускай дальше я высчитаю этот crc8 код, получу 1D0000000F50B601, по какому алгоритму дальше это число (текст) дальше форматировать, что бы потом в верном формате записать в поле CodeP?
В БД Ориона-про это не текст, а байт, можно сформатировать из текста через преобразование типов в МS-SQL, пример на работе завтра постараюсь найти.

– Андрей, Ростов на Дону 2 года 3 месяца назад

а если пихать в базу и 3, и 5 байт, то можно и со считывателями потом на париться, и темы на форуме "хелп. как мне из BF0000001F50B601 получить 520000DE1F50B601. стотыщщмиллионов карт я же до конца жизни буду собирать у людей, а там шефы, которые на простых работяг как на г. о смотрят" и ответ "с помощью машины времени, слетать в прошлое и долбануть себя, чтобы легких путей не искал))".

Вот только карты в контроллеры так записываться не будут автоматически, надо же будет манипуляции с АБД производить.

Ну и главное, делайте бэкапы почаще)) работа с базой напрямую, запросто приводит к тому, что и простые действия приходится делать уже не через АБД, т.к. проверку на целостность база перестаёт проходить. Зато напрямую в базу можно записать одинаковые карты с разным сроком действия))

– Волков Андрей 2 года 3 месяца назад

Добрый день!
Прошу оказать помощь.
Помогите разобраться. У нас на объекте установлены биометрические считыватели Hikvision

2 года 2 месяца назад

avatar

– Волков Андрей 2 года 2 месяца назад

– Тремасов Константин Александрович 2 года 2 месяца назад

– Владимир Иванович 2 года 2 месяца назад

– Владимир Иванович 2 года 2 месяца назад

Владимир Иванович,
Болидовский ТМ получен из Вейганда 26го, в дело идут только три байта номера карты
Хиквижновский терминал хранит больше байтов, чем три. Это не Вейганд 26! а на выход даёт обрезанное количество бит до 26. Покрутите настройки терминала, может там можно как-то ограничить формат входных или увеличить формат выходных данных.
Вы ен сказалиЮ откуда терминал получает номер 254615135. Он считывает его встроенным считывателем с карточки (ем-марин или иной) или просто пользователь регистрируется в терминале с этим кодом и всё?
Вам в любом случае надо будет регистрировать сотрудников на биометрическом считывателе, и в этот самый момент можно будет записать в Болид и новые карты.
Описание биосчитывателя куцее, указано, что интерфейс Вейганд и всё. Один вейганд или два, вход, выход, что за интерфейс то? От этого зависит использование считывателя.

– Андрей, Ростов на Дону 2 года 2 месяца назад

Этот код я руками сам заношу в поле где указываеться код карты.
т.е. у меня есть Вася Пупкин в Болиде и карта у него к примеру 04 000000 2D1E5F 01, в терминал тот же Вася Пупкин сфотографирован и записан.
Для того чтоб мне поженить Болид и Хиквижен я подумал что смогу их поженить по Виганду. Соответственно я беру код карты Васи Пупкина из базы Болида ( в терминале Хиквижена пока нет никакой карты), конвертирую в код понятный для Терминала (8 цифр, не больше 25565535) и записываю в терминал (поле где храниться код карты) в формате (8 цифр, не больше 25565535).

В том и беда есть код 04 000000 2D1E5F 01 а нет кода ХХХ ХХХ ХХХ Х

Сейчас по факту две системы работаю отдельно друг от друга.
В СКУД Болида прописаны коды карт в формате ТМ. Когда формировалась база Болид я потихоньку наполнял базу руками (прикладывал карты к считывателю). Сейчас собрать все карты нет возможности. Да они и не нужны так как терминал понимает E-Marin, а у меня все карты Indala.

Сейчас при регистрации нового пользователя, в СКУД Болида я заношу карту путем прикладывания ее к считывателю и получю код карты. Далее в ПО Хиквижен я завожу нового сотрудника, делаю фото чтоб его система узнавала и тут мне нужно внести код который должен выдавать терминал. Код должен прийти на С2000-2 и он должен быть таким же как и при считывании в первый раз с карты. Я не могу приложить карту к терминалу так как терминал не понимает данных карт. а код не такого формата какой в Болиде.

Вот и болит у меня голова о том как имея код карты только в болиде, конвертировать этот код и получить код в формате (8 цифр, не больше 25565535) и тогда у меня будет счастье.

– Владимир Иванович 2 года 2 месяца назад

Всё проще.
Вы указываете максимальный код для Хиквижна как 25565535
Это на самом деле три байта — 255.65535
Сайт код от 0 до 255 + номер карты от 0 до 65536
——
Берём болидовский код 04 000000 2D1E5F 01
Выделяем в нём главное 04 000000 2D 1E5F 01
Расчехляем инженерный калькулятор в виндовсе или эксель с функциями преобразования из шестнадцатиричного представленяи в десятичное
Сайт код:
2D(hex) = 45(dec)
Номер карты
1E5F(hex) = 7775(dec)
И в Хик вводим номер карты 45. 7775
Или 045. 07775 , уж не знаю, что там ему нужно.
А Болид, действительно, будет принимать этот номер с вейгвндовского выхода биосчитывателя.

Прошивка ридера Z-2 USB (EM-Marine)

Прошивка через USB
Я новичок в микроконтроллерах. Подскажите пожалуйста. Я пытаюсь запрограммировать.

Прошивка USB Flash
Добрый День! Задался вопросом как работает флешка, в плане обмена данными между пк и флешкой.

STM32F105: прошивка по USB
Доброго времени суток! Кто сможет подсказать как прошивать сей камень (F105) через USB с.

Карты 125 кГц Em-marine
Привет, Подскажите, если взять чип который внутри такой карты а антенну делать не из проволоки а.

Прошивка Altera-USB Blaster
Здравствуйте. У меня завалялось пару программаторов Ottira USB Btoster (rev. C) Вот таких вот .

Как перепрошить карту ем марин на hide

Mifare- это торговая марка? И что с того? На билеты же срабатывает nfc в телефоне, телефон читает эти метки, значит можно скопировать? Растолкуйте по-подробней.

Добавлено 12.10.2012, 18:27:

Показывает, прекрасно показывает. Более того есть такая прога из маркета "nfc info" или как-то так называется, она всякую техническую информацию показывает.

Не хочу перевирать чужие слова 🙂
И не уверен, не обгоняй.

Не знаю как в Киеве, а у нас, в Новосибирске, на сколько я знаю, на каждой станции есть кэш-сервер для турникетов, котоырй периодически обновляется. Турникеты на станциях «онлайн» только с ним.
Так же есть защита от пополнения карт, так как сервер знает, сколько поездок и когда было приобетено, и если по данным базы поездок было куплено вчера 10, использовано вчера 5 и сегодня осталось еще 60 — карта блокируется, а у тетеньки на КПП срабатывает сигнализация.
Студенты из НГТУ пару лет назад получили доступ к единой транспортной карте и накинули на нее немного денег. На скольок мне известно, воспользоваться они не смогли.

Вопроса в инфраструктуре и скоростях связи нет, так как Новосибирский метрополитен является одним из двух игроков «рынка городской магистральной канализации», именно по метрополитену проложена бОльшая часть магистральных линий связи Новосибирска, один метро-мост через Обь чего стоит, в качестве «кабельканала». Второй игрок — РЖД, но ему «внутригород» мало интересен.

Сообщение отредактировал StasMan — 12.10.12, 19:20

StasMan,
Я не хочу "обмановать" метрополитен, я всего лишь хочу проходить не по билету, по телефону с nfc. То есть у меня есть проездной на год, я бы его "скопировал" в телефон и ходил спокойно)

Добавлено 12.10.2012, 20:07:

Значит скопировать возможно? Теперь вопрос возможно ли загнать все в телефон?

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *