Делают ли дубликат ключа от домофона. Универсальные ключи для домофонов своими руками

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

Какие принципы работы оборудования?

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

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

На фото- пример копировальщика

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

Известно, что копирование ключей для определенных домофонных устройств выглядит примерно таким образом:

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

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

Зная порядок регистрации кодов в домофонном устройстве, нужно разобраться, как скопировать сам код. Прежде всего, нужно к этому подготовиться: необходимо взять несколько чистых болванок и ноутбук или ПК.

Хотя, чтобы изготовить дубликат ключа от домофона, можно воспользоваться другим методом и использовать специализированный дубликатор. Подобное устройство может дублировать коды и работает от обычной сети или же специальной батарейки «крона».


На фото показано использование копировальщика

В чем предназначение дубликаторов?

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

Последние модели копировальщиков предоставляют возможность сделать магнитные ключи для домофона таких форматов:

  • Двухконтактные (использующие протокол ТМ);
  • Бесконтактные карточки или брелоки;
  • Малораспространенные трехконтактные чипы.

Они поддерживают довольно обширный спектр заготовок:

  • Двухконтактные заготовки;
  • Универсальные;
  • Трехконтактные квадратные;
  • Бесконтактные RFID.

Запись считанного кода может производиться только на специализированные заготовки, ведь заводские идентификаторы не предназначены для записи новых кодов.

Основные возможности копировальщика

Можно выделить следующие возможности устройства:

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

На видео показана работа дубликатора ключей:

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

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

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

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

Ты не силен в программировании микроконтроллеров? Ты не смог сделать дубликат ключа, как учил тебя «Хакер»? Твоя подруга смеется над тобой, когда железный болван-домофон не пропускает тебя? Не унывай — «Хакер» в очередной раз найдет для тебя решение, позволив проникнуть сквозь неприступные двери под звуки музыки.

А как же ключ от всех дверей?

В сентябрьском номере за прошлый год «Хакер» уже рассказывал о том, как самому изготовить универсальный ключ от домофонов. В качестве основной части нашего девайса мы тогда использовали хитрый микронтроллер. Но всякому ли крутому перцу охота ковыряться в ассемблере и отладчике, а также корпеть над столом с паяльником, когда за окном лето/пиво/друзья/девушка (нужное подчеркнуть)? Тем более что все чаще на просторах нашей родной страны встречаются странного вида ключи, у которых не в пример обычным вовсе нет заветного номера (как ты понимаешь, нужного для того, чтобы снять с него копию по нашему методу), зато есть загадочная надпись «Cyfral». Не будем темнить и скажем сразу, что Cyfral — это отечественный продукт, так сказать, наш ответ Чемберлену. Уделим же внимание этому девайсу и попробуем на прочность этот орешек…

Экскурс в теорию, или практика потом

За последние несколько лет идентификаторы Touch Memory DS1990 от фирмы Dallas Semiconductor заняли лидирующее место на рынке систем контроля доступа. Малогабаритные, выполненные в прочном металлическом корпусе, они смогли удовлетворить практически все запросы российских потребителей. В общем, чего рассказывать: каждый видел эти «таблетки» сотню раз. Впрочем, подделать такой ключ оказалось очень просто: достаточно было лишь считать код, зашитый в ключ-идентификатор. В 2000 году компания «Цифрал» разработала и запатентовала собственный цифровой электронный идентификатор Touch Memory Cyfral DC-2000 . Отечественная разработка была призвана устранить ряд недостатков. Она была проста в производстве, и ее быстро освоили отечественные предприятия.

В документации к контактному цифровому ключу DC-2000 (Touch Memory Cyfral) приведено следующее описание его работы: «Корпус DC-2000 аналогичен по конструкции и размерам корпусу Dallas DS1990. Он сделан из нержавеющего металла. Диаметр диска около 17 мм, толщина 5,89 мм. Полый внутри диск состоит из двух электрически разъединенных частей. В герметичную полость помещена электронная схема на кремниевом кристалле. Выход схемы соединен с половинками диска двумя проводниками. Ободок и донышко представляют собой земляной контакт, а крышечка выполняет функцию сигнального контакта.

Корпус DC-2000 — это та же самая таблетка.

Усложняем схему.

Микросхема DС-2000 работает по собственному уникальному протоколу. При контакте со считывающим устройством DС-2000 начинает выдавать циклические кодовые комбинации, состоящие из стартового и восьми информационных слов. Стартовое слово отличается от информационного количеством единиц: три единицы подряд и один ноль. Информационное слово - одна единица и три нуля.

Длительность импульса для состояния «лог.0» и «лог.1» различна.

Положение единицы в каждом информационном слове программируется индивидуально на этапе изготовления микросхемы ключа DС-2000. Примененная технология позволяет получить аж 65536 кодовых комбинаций! Выдача кодовой комбинации происходит посредством изменения тока потребления микросхемы ключа с фиксированным периодом. Причем длительность импульса для состоянии «лог.0» и «лог.1» различна, как показано на временной диаграмме.

«Страшно-сложная» схема для прослушивания нашего ключика.

Так как при чтении данных из ПЗУ в любой момент возможно нарушение электрического контакта считывающего устройства с корпусом прибора, то необходимо контролировать целостность считываемых данных. Для этой цели кодовая комбинация считывается из ПЗУ три раза подряд и сравнивается считывающим устройством (персональная ЭВМ, микропроцессорный контроллер). В том случае, если коды совпали, серийный номер считан верно. В противном случае выполняется повторное чтение данных».

Проще говоря

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

Поскольку домофон «Цифрал» только слушает ключ-идентификатор и вообще не использует какой-либо протокол обмена, путь для обхода весьма и весьма прост. Следует лишь записать тарахтение ключика, а потом воспроизвести эту запись домофону.

К несчастью, лобовое решение - магнитофон - тут не подойдет. Коэффициент детонации популярных китайских проигрывателей таков, что даже не обладающий музыкальным слухом домофон тут же заметит лажу. Что там у тебя еще есть из звукозаписывающей техники? Ну компьютер со звуковухой есть наверняка! Значит, можно записать тарахтение ключика и потом просто зажечь ее на CD. Воспроизвести запись не проблема, например, через портативный CD-плеер, который точно имеется в наличии у каждого второго твоего знакомого. Впрочем, даже если вдруг CD-плеер ты не разыщешь, сойдет и цифровой диктофон или сотовый телефон. Правда, мобила подойдет не всякая, но об этом мы расскажем далее.

Перейдем к делу: слушаем ключик

Для записи «музыки» ключей «Цифрал» нам понадобится источник питания 2,4-5 В. Можно использовать блок питания компьютера, но высока вероятность того, что он добавит в нашу запись ненужные шумы и тем самым испортит «произведение». Поэтому лучше запастись двумя любыми батарейками, которые в сумме обеспечат нам 2,4-3 В. Для тех, кто в танке, напомним, что питание +5 В можно получить как от разъема USB-порта, так и от некоторых GAME-портов, подавив шумы компьютера простейшим фильтром из дросселя и конденсатора. Далее, нам будет нужно сопротивление номиналом 1,5-2,2 кОм любого вида и исполнения. Из этих комплектующих собираем очень сложную схему из трех элементов для прослушивания нашего ключика.

Такая штука точно не помешает в кармане.

В зависимости от номинала сопротивления и напряжения питания схемы, амплитуда «цифровой музыки» составит 0,3-0,5 В на уровне постоянной составляющей 1,0-1,5 В, что позволит подать этот сигнал непосредственно на линейный вход звуковой карты.

Вот так красиво и опрятно выглядит собранный девайс.

Если в наличии имеется только микрофонный вход, как это бывает у некоторых моделей ноутбуков и у сотовых телефонов, схему придется усложнить, добавив делитель напряжения из двух резисторов, один из которых переменный. Манипулируя ручкой переменного резистора R3, следует обеспечить на микрофонном входе амплитуду сигнала порядка 0,5-1,2 мВ.

Далее включаем свой любимый звукозаписывающий софт. Лучше, конечно, что-нибудь типа Cool Edit (www.syntrillium.com), Sound Forge (www.sonycreativesoftware.com) или хотя бы Total Recorder (www.highcriteria.com). Подойдет все, что имеет виртуальные индикаторы уровня записи и позволяет на глаз выставить уровень записываемого сигнала без перегрузок звукового тракта карты. …Ну, на нет и суда нет! Можно использовать и обычную «Звукозапись» из стандартного набора Windows, хотя в этом случае, возможно, придется сделать несколько записей, чтобы подобрать приемлемый уровень.

В используемой программе выбираем источник сигнала (тот, куда мы подключились: «Микрофон» или «Линейный вход»), после чего записываем обыкновенный звуковой файл с расширением WAV с параметрами: PCM 44100 Гц, 16 бит, моно длительностью 1-2 минуты без применения какой-либо компрессии сигнала. В принципе для домофона хватило бы и 5 секунд, но такой запас просто позволит в нужный момент действовать без излишней суеты. В случае если ты хочешь сделать запись при помощи мобильника, нужно позаботиться, чтобы тот умел захватывать звук через гарнитуру. Тут, конечно, придется отрезать сам микрофон от гарнитуры, а если жалко — спаять отдельный провод с разъемом и прицепить его к выходу делителя. Но это реально!

Двигаемся далее

Итак, искомый файл или несколько WAV-файлов от разных ключей получены! Самое время прожечь их на компакт-диск в виде музыкальных файлов cda, в чем нам поможет всем известная Nero (www.nero.com) или любая другая аналогичная программа. Можно записать и просто как WAV-файлы, если CD-плеер поддерживает такой формат. При записи в формате mp3 кодовая информация может быть утеряна в процессе сжатия, в этом случае надо выставить опции максимального битрейта и максимального качества формируемого mp3-файла. В окне Cool Edit форма сигнала при этом остается неискаженной, но, как это воспримет домофон, я не в курсе. Если при записи в мобильник применяется алгоритм сжатия с потерями, затеянный фокус, скорее всего, не удастся, но попробовать все равно стоит. В крайнем случае WAV-файл можно сформировать на компьютере, а в мобилу затаскивать как качественный mp3 через Data-кабель, IRDA или Bluetooth. Количество вариантов здесь довольно велико, все зависит от используемой мобилы. Возможно, даже придется сваять простенький мидлет на Java. К счастью, даже в стандартной поставке J2ME Wireless Toolkit 2.2 beta 2 есть пример закачки и воспроизведения музыки в формате WAV. Если тебе это кажется нереальным, два готовых мидлета прилагаю. Тебе останется только раззиповать jar-файл, положить в архив свой WAV-файл ключа под именем my_key.wav (или my_key_X.wav, в папку audio), зазиповать все это обратно и должным образом втащить в мобилу. Сам файл ключа не должен быть очень большим - могут возникнуть траблы при закачке. Секунд 5-10 вполне достаточно, тем более что мобила будет проигрывать его непрерывно по кругу.

Пора действовать

Ну что, откроем пару дверок? Вместо наушников, припаиваем к шнурку с разъемом сопротивление номиналом 680-820 Ом для согласования со схемой считывающего устройства домофона «Цифрал». Оба канала стереофонического кабеля включаются параллельно, согласно приведенной схеме. Нагрузка величиной 680-820 Ом значительно превышает сопротивление распространенных наушников и выход плеера перегрузить не должна, если, конечно, кривые руки не спаяли что-нибудь накоротко, но производители чаще всего заботятся о дураках, и есть надежда, что в плеере или мобиле применена защита выхода от короткого замыкания.

Чтобы иметь некоторую уверенность в успехе, выход CD-плеера или мобильника должен развивать на нашей нагрузке переменный сигнал амплитудой не менее 0,5 В. Если есть возможность воспользоваться осциллографом, посмотри амплитуду сигнала на нагрузке. В противном случае придется покрутить регулятор выходного сигнала CD-плеера в полевых условиях у вожделенной двери. Впрочем, вероятность успеха весьма велика — у меня, например, безо всяких настроек дверь открылась сразу при максимальной громкости.

Программы типа Cool Edit и Sound Forge позволяют увидеть форму сигнала и без осциллографа. Можно также заюзать различные софтварные осциллографы, использующие железо звуковой карты. Количество таких программ, разбросанных на просторах Сети, весьма велико. В любом случае правильная форма записанного сигнала должна ориентировочно соответствовать приведенной на рисунке.

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

Упрощаем отладку

Чтобы не торчать уйму времени у домофона, напоминая озабоченного террориста, для отладки можно использовать простенькую софтину CYF_KEY.COM, которая позволяет считывать коды ключей через LPT-порт компьютера.

Для аппаратного обеспечения программы необходима схема компаратора или триггера Шмитта, запитываемая от напряжения +5 В разъема USB-порта или GAME-порта. Подобные устройства в недавнем прошлом широко применялись в схемах популярных 8-битных компьютеров типа «Синклер», РК-86, «Орион», «Микроша» для ввода программ и данных, записанных на магнитофонные кассеты. Простая схема такого устройства приведена на рисунке. Если со сбором подобной схемы у тебя возникают траблы, можно попробовать обойтись более простой конструкцией, но в этом случае придется подобрать резистором R2 постоянное смещение на входе Busy порта принтера.

Программа CYF_KEY.COM использует прямое обращение к таймеру и портам ввода-вывода, поэтому запускать ее следует из-под голого DOS’а, благо небольшой размер программы позволяет ей поместиться на системной дискете. При правильном определении кодов ключей программа выводит их список, при сбоях или ошибках в сигнатуре ключей возможно отображение символа «E» (Error). Для того чтобы убедиться в работоспособности аппаратной части, программу необходимо запустить на двух разных компьютерах, соединив между собой их выходы Strobe с входами Busy и запустив одну из программ в режиме чтения ключа, а другую - в режиме эмуляции ключа из файла.

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

Наводим марафет

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

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

К записи готов!

Включаем CD-плеер или мобильный телефон на воспроизведение файла ключа, уровень громкости максимальный. С уверенным (злым, глупым, коварным и т.д. - на выбор) выражением лица говорим волшебное слово: «Цифрал, откройся!», подключаем девайс к лузе домофона, и железный монстр с печальным звуком «Длиньк!» должен пасть! Можно, конечно, и без театральных эффектов, да и фраза - на твое усмотрение, но если уж решил поразить девушку, потренироваться следует заранее, особенно с уровнем громкости… CD-плеера (мобильника).

Напоследок

Разумеется, предложенный способ эмуляции ключей-идентификаторов «Цифрал» - самый простой. Заметим, что крутые перцы, владеющие языком программирования Java для мобильных устройств (J2ME) и обладающие навороченными смартфонами, могут сбацать универсальный ключ для любых систем, как Touch Memory Cyfral DC-2000, так и Touch Memory DS1990, без существенных аппаратных затрат исключительно программным путем, манипулируя сигналами COM-порта мобильника. Основное препятствие заключено в версии установленной в телефоне Java-машины, в том, имеет ли она развитые средства управления последовательным портом. В положительном случае аппаратно придется выполнить лишь несложные цепи согласования электрических уровней COM-порта мобильника и схемы считывания/эмуляции ключей Touch Memory.

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

DVD

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

WARNING

Материал представлен исключительно в ознакомительных целях. Автор и редакция ответственности за использование материала не несут.

Андрей «dr. Sam» Семенов

Хакер, номер #104, стр. 026

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

Пара слов о принципе работы…
Бытует мнение, что в таблетках от домофона находится магнит, и он открывает дверь. Нет, это не так. Таблетка представляет собой ПЗУ, с жёстко зашитым в ней ключом. Называется это ПЗУ — Touch Memory, марки DS1990A. DS1990A — это и есть марка домофонных ключей. Общается с домофоном по шине one-wire (однопроводной интерфейс). Эта шина разработана фирмой Dallas и позволяет общаться двум устройствам всего по одному проводу. Если устройство пассивное (как в нашем случае), то оно ещё и передаёт ему питание по этому проводу. Надо ещё заметить, что необходим ещё общий провод (чтобы цепь замыкалась), но, как правило, все земли устройств подключённых к этой шине соединены воедино. В ключе находится конденсатор на 60 пикофарад, который обеспечивает кратковременное питание ключа на момент ответа. Но ведущее устройство должно постоянно (не реже чем в раз 120 микросекунд) генерировать сигнал единицы, для зарядки этого конденсатора, чтобы ПЗУ в таблетке продолжало питаться.

Внутреннее устройство таблетки

Организация шины One-wire
Шина One-wire работает следующим образом. Есть ведущее устройство Мастер, и ведомое устройство, в нашем случае пассивный ключик. Основные сигналы генерирует мастер, сигналы логической единицы и нуля. Ведомое устройство может только принудительно генерировать сигналы нуля (т.е. просто просаживать шину на землю через транзистор). Упрощённая схема ведущего и ведомого устройства показана на картинках.

Схема мастера

Если взглянуть на схему, нетрудно заметить, что по умолчанию у мастера стоит всегда +5 вольт, а ля логическая единица. Для передачи логического нуля мастер через транзистор замыкает шину на землю, а для передачи единицы — просто размыкает. Это сделано для того, чтобы обеспечить питание ведомого устройства. Ведомое устройство сделано аналогично, только оно не генерирует +5 вольт. Оно может только просаживать шину на землю, тем самым, передавая логический ноль. Логическая единица передаётся просто «молчанием» устройства.

Протокол работы
Сразу можно однозначно заметить, что парадом правит только Мастер, сам ключик DS1990A либо удерживает землю (мастер её сам выставляет шину в ноль), либо просто отмалчивается, в случае, если он хочет передать единицу, то он просто молчит. Смотрим рисунок.

Пример чтения домофоном ключа.

После генерации ключом импульса PREFERENCE, мастер девайс выжидает некоторое время и выдаёт команду на чтение ПЗУ, обычно это код семейства, в нашем случае 33H. Обрати внимание, как сделана передача нуля и единицы. В любом случае импульс «роняется» на землю, но если передаётся единица, то он быстро восстанавливается (около 1 микросекунды), если же должен быть ноль, то импульс некоторое время «висит» на земле, затем возвращается опять в единицу. Возвращение в единицу нужно для того, чтобы пассивное устройство постоянно пополняло энергию конденсатора, и на ней было питание. Далее домофон выдерживает некоторое время и начинает генерировать импульсы приёма информации, всего 64 импульса (т.е. принимает 64 бита инфы). Ключ лишь должен правильно сопоставить длительности. Если он хочет вывести ноль, то он удерживает шину некоторое время в нуле, если же нет, то просто молчит. Всё остальное за него делает домофон.

Содержимое ключа DS1990A.
В домофонах, и просто устройствах, где для открытия дверей используется подобные устройства, применяется ключ стандарта DS1990A. Это устройство представляет собой 8-ми байтовое ПЗУ, с информацией записанной лазером.


Схема дампа ключа.

В младшем байте содержится код семейства. Для DS1990A он всегда будет равен 01h. В шести последующих байтах содержится серийный номер ключа. То самое сокровенное, что идентифицирует ключик. Последний байт называется CRC, это контроль чётности, обеспечивающий подлинность переданных данных. Он вычисляется из семи предыдущих байт. К слову заметить, что это не единственный стандарт. Существуют перезаписываемые ПЗУ, на которых можно носить информацию, также есть ключи шифрования. Но всё многообразие таблеток Dallas просто нереально рассмотреть в рамках одной статьи, о них можно почитать на диске.

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

Морда ключа

Нас интересует из всей этой информации следующее:

CC = CRC — это байт контроля чётности 7-й байт в прошивке
SSSSSSSSSSSS = двенадцать ниблов //нибл = 1/2 байта// серийного номера, т.е. самого ключа в хекс кодах.
FF = код семейства, в нашем случае равен 01h — нулевой байт нашего ключа.

Получается, что мы можем просто написать программу, забить в неё ключ весь, переписав ручками визуально с настоящего ключа дамп, и получим готовый эмулятор. Достаточно просто взять у недруга ключик в руки и переписать то, что на нём написано. Что я в общем-то с успехом и сделал. :)

Эмулятор.
Вот и дошли мы до самого вкусного — эмулятора ключей от домофона. Сначала я нашёл на каком-то сайте готовый эмулятор, зашил его в свой АТ89С51 и он не заработал (что не удивительно). Но это не спортивно юзать чужие прошивки и отлавливать чужие, специально оставленные, баги в коде. По сему я начал делать свои эмуляторы и писать под них свои программы. В общем, я попробовал сделать эмулятор на 6 различных микроконтроллерах, разных архитектур, принадлежащих двум семействам AVR и i8051, все производства Atmel. Заработал не на всех, и программ было написано уйма. По началу ставились вообще наполеоновские задачи сделать универсальный эмулятор с возможностью подборки ключа, но потом я оставил эту затею в силу её геморойности и бессмысленности, пусть ей займутся другие люди, кого заинтересует данная статья. Но себестоимость эмулятора, не считая затраченных трудов меньше 70-80 ре, можно даже уложиться в 30 ре, если делать, например на ATtiny12.

Принцип действия эмулятора.
Мы достаточно подробно рассмотрели принцип работы домофона, и соответственно не составит большой проблемы описать алгоритм программы эмулятора DS1990A. Смотрим внимательно диаграмму, и думаем, что надо сделать. А делать надо следующее. Висящая в воздухе нога микроконтроллера (пока не присоединена к земле, импульс ресета) будет считаться контроллером логической единицей. Значится так, мы после подачи питания на котроллер должны ждать того пока наша ножка не уйдёт на землю, а ля в ноль. Как мы услышали ноль, радуемся, ждём некоторое время и переводим порт из режима чтения в режим записи. Затем роняем шину в ноль, и держим её некоторое время — генерим импульс PRESENCE (длительности импульсов смотри в даташите). Дальше снова переводим шину в режим чтения, и ждём что же нам скажет мастер — домофон. Он нам скажет команду чтения, состоящую из 8-ми бит. Декодировать её не будем, т.к. в 99,999% случаев он нам скажет команду дать свой дамп, а ля 33H, просто отсчитываем 8-мь импульсов и не паримся. Дальше ждём. И начинается самое сложное и интересное — надо быстро смотреть, что нам говорит домофон и отвечать ему тоже быстро. Нам нужно побитно выдать серийный номер, состоящий из 8-ми байт, о которых я говорил выше. Я это делал следующим образом (не важно, какой микроконтроллер, принцип везде один будет), загружал байт в какой-нибудь свободный регистр, и сдвигал его вправо, и смотрел бит переноса. Как только домофон роняет шину в ноль, то если у меня флаг переноса установлен в еденицу, то я просто отмалчиваюсь на этот импульс, и жду генерации следующего импульса чтения бита от мастера. Если же у меня во флаге переноса находиться ноль, то после того как домофон уронит шину на ноль, я перевожу порт микроконтроллера в режим вывода и принудительно удерживаю шину в нуле некоторое время, потом отпускаю и обратно перевожу порт контроллера в режим чтения. По длительности импульса в земле устройство мастер понимает, передана была ли ему единица или нуль. В принципе всё, дальше домофон должен радостно запипикать и открыть дверь.

Практика.

Плата тестер. Видня надпись dallas.

После небольшого гемороя и войны с отладчиком получился код. Вот пример кода вывода данных домофону на AT89C2051. (Вообще AT89C2051 это хоть и популярный, но устаревший контроллер. Один из первых которые я программировал. Периферии минимум, памяти тоже всего ничего. Шьется только высоковольтным программатором. Хотя есть его новая замена AT89S2051 его уже можно прошить внутрисхемно через какой нибудь AVR ISP, а может и через AVRDUDE — не проверял. Самое любопытное в том, что он совместим по ногам с ATTiny2313 так что код можно портировать и на Тиньку. прим. DI HALT)

DI HALT:
Этот адов код мы писали в с Длиным в далеком 2006 у него в квартире. Уржались до икоты над своими тупняками. Я тогда еще впервые пощупал AVR. Сидел фигачил на совершенно незнакомом мне ассемблере процедуры чтения из EEPROM, Длиный же ковырял демоплатку для своего будущего эмулятора. Особо запомнился мой прикол с вачдогом, когда у меня МК сбрасывался во время записи в ЕЕПРОМ и выпиливание микросхемы i2c памяти из платы с помощью отрезного круга. Эх… ничо, сгоняю в Москву мы снова отожгем!

;======================================== ; Выдача в линию серийника; in: R0- адресс где лежит серийник с типом таблетки и CRC8 ; USES: A,B,R0,R1,R2 ;======================================================== DEMUL_SendSer: mov R2,#8 SS3: mov ACC,@R0 mov R1,#8 SS2: JB TouchFuck,$ ;ожидаем, когда шину уронят в ноль 1->0 RRC A ;C:=A.0; shift A; mov TouchFuck,C ;TouchFuck:=C; MOV B,#9 DJNZ B,$ ;Delay 20 us setb TouchFuck JNB TouchFuck,$ ;цикл пока 0 DJNZ R1,SS2 inc R0 DJNZ R2,SS3 ret ;=======================================================

Результаты.
В результате я получил множество эмуляторов. Правда, некоторые ещё из них надо доводить до ума. Хотя несколько 100% рабочие. Примеры эмуляторов ты можешь поглядеть на фотках.



Фотографии эмуляторов

Наиболее интересна проверка CRC, которая осуществляется домофоном. Тебе понадобится это, если ты захочешь поставить Dallas замок например на свой комп. Пример рассчёта CRC на A89C2051 (хотя данный код будет работать на всех микроконтрерах семейства i8051.

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 DO_CRC: PUSH ACC ;save accumulator PUSH B ;save the B register PUSH ACC ;save bits to be shifted MOV B,#8 ;set shift = 8 bits ; CRC_LOOP: XRL A,CRC ;calculate CRC RRC A ;move it to the carry MOV A,CRC ;get the last CRC value JNC ZERO ;skip if data = 0 XRL A,#18H ;update the CRC value ; ZERO: RRC A ;position the new CRC MOV CRC,A ;store the new CRC POP ACC ;get the remaining bits RR A ;position the next bit PUSH ACC ;save the remaining bits DJNZ B,CRC_LOOP ;repeat for eight bits POP ACC ;clean up the stack POP B ;restore the B register POP ACC ;restore the accumulator RET

DO_CRC: PUSH ACC ;save accumulator PUSH B ;save the B register PUSH ACC ;save bits to be shifted MOV B,#8 ;set shift = 8 bits ; CRC_LOOP: XRL A,CRC ;calculate CRC RRC A ;move it to the carry MOV A,CRC ;get the last CRC value JNC ZERO ;skip if data = 0 XRL A,#18H ;update the CRC value ; ZERO: RRC A ;position the new CRC MOV CRC,A ;store the new CRC POP ACC ;get the remaining bits RR A ;position the next bit PUSH ACC ;save the remaining bits DJNZ B,CRC_LOOP ;repeat for eight bits POP ACC ;clean up the stack POP B ;restore the B register POP ACC ;restore the accumulator RET

Заключение.
Как видишь домофоные ключи устроенны не так просто, как кажется. Однако, съэмулировать их доступно каждому кто владеет программированием и паяльником.

DI HALT:
Дела давно минувших дней, преданья старины глубокой… Длиный — WDR! (понятно будет только посвященным;)))))

Доредакционная версия статьи из журнала Хакер

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

Вот такая таблетка представляет из себя микросхему DS1990A фирмы MAXIM. Устройство позволяет считывать в память и эмулировать до 10 таких ключей.


Ключ общается с домофоном по двухпроводной шине 1-wire, по ней же получает питание.


Схема устройства для эмуляции ключей очень проста. Основа - микроконтроллер ATTiny2313, для индикации я использовал одноразрядный семисегментный индикатор, который отображает режим работы номер ячейки. С3 - переключает режимы, С2 - номер ячейки. Для индикации режима записи использовал , на фото для настройки пока стоит обычный диод. Всё устройство замены ключей для домофонов потребляет ток всего 10 мА.

Тактируется от встроенного генератора с частотой 8 МГц, при прошивке необходимо включить BOD (запрограммировать фьюзы BODLEVEL0, BODLEVEL1 стереть BODLEVEL2), иначе при выключении питания попортится EEPROM данных.


Работа с ключом для домофона:

Программирование ключа. При нажатии С3, загорается дополнительный светодиод. Выбираем номер ячейки С2, и подносим к контактам ключ таблетку. Данные с ключа копируются в EEPROM контроллера и светодиод автоматически гаснет.

Эмуляция ключа. Для эмуляции ключа выбираем на индикаторе номер ячейки, а затем тыкаем контакты в дмомфон

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

Виды ключей для домофонов

Существует несколько семейств домофонных ключей.

1. «Таблетки». Официально стандарт называется Touch memory (ТМ) или iButton, это контактные ключи в корпусе MicroCAN. В «таблетках» используется протокол 1-Wire, но форматы бывают разные.

В РФ это в основном ключи модели Dallas, с которыми работают домофоны Vizit, Eltis, Z-5R, С2000-2 и т.д., Cyfral (ключи DC2000А и Цифрал-КП1 и др.), «Метаком».

Довольно редко встречаются резистивные «таблетки» – у них считывается сопротивление.

2. «Капельки» . RFID-метки в пластиковом корпусе круглой, овальной или каплеобразной формы. Иногда их выпускают в виде браслетов или карт.

Внутри – RFID-метка, как и в картах метро, «пищалках» на товарах в супермаркетах и других подобных штуках. В основном «капельки» могут быть ближнего действия (Proximity, считываться на расстоянии до 10-15 см), так как более «дальнобойные» метки Vicinity, которые работают на расстоянии до 1 м, небезопасны в данном случае.

В РФ чаще всего используют Proximity-ключи EM-Marin, но встречаются также и более старые HID-метки или более новые MiFare, как в картах метро.

3. Оптические . Настоящие динозавры. Где-то в провинциях ещё сохранились. Такой ключ – это металлическая пластина, в которой в определенном порядке насверлены отверстия.

Внутри домофона есть фотоэлемент, который распознает, в том ли порядке насверлены дыры.

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

Как домофон определяет, подходит ли ключ?

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

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

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

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

Вот так переустановят домофон у вас в подъезде, а ключи менять не придётся. Хотя, конечно, установщик домофона вполне может попытаться заработать на этом.

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

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

Как делают копию ключа?

Обычно для этого берут болванку – пустую заготовку без кода . Затем мастер считывает код с вашего ключа и записывает его же на болванку.

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

Болванки бывают перезаписываемые и неперезаписываемые. Если вы помните слово «финализация» при прожиге дисков, возьмите с полки пирожок , то здесь оно тоже применяется.

Технически вы сами можете собрать дубликатор (программатор) ключей на основе Arduino или Raspberry Pi, а затем наделать копий ключа на все случаи жизни. Инструкций в интернете полно, как и предложений купить дубликатор за тысячу-другую рублей.

Главное – не промахнуться с типом домофона и ключа.

Так, одни ключи рассчитаны на частоту 125 КГц , другие на 13,56 МГц и так далее. К тому же они могут быть разного типа. Помните о защите от клонов, которая может поддерживаться вашим домофоном.

Могут ли ключи размагнититься?

Бывает, носишь «таблетку» или «капельку» в кармане, а она через какое-то время бац! – и перестала работать. И такая ерунда каждый месяц. Что-то здесь не так. «Наверное, размагнитилось», – самое популярное объяснение.

На самом деле такие ключи не размагничиваются . В них даже магнита нет, да и обычные магниты ключам не страшны.

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

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

Теоретически, ключи можно «убить» электромагнитным излучением или сильным электрическим импульсом.

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

Статическое электричество также ключам не на пользу. Если вы носите «таблетку» в заднем кармане и часто приседаете, отчего синтетическая ткань трется о ключ, он также прослужит недолго.

Наконец, от частого использования «таблетка» может банально продавиться в противоположную сторону и перестанет контактировать с домофоном. Просто вдавите её обратно, и всё пройдёт.

Что такое мастер-ключ и где его взять?

После установки домофона у специалиста остается особый ключ. На нем даже может быть написано что-то вроде: «Мастер-ключ. Никому не давать».

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

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

Но возможна ситуация, когда мастер-ключ подходит к нескольким домофонам. Или когда для одних домофонов «таблетка» – это мастер-ключ, а для других – обычный ключ, который открывает двери.

Здесь всё зависит не от ключа, а от того, какие записи есть в памяти домофона.

А что будет, если мастер-ключ потеряется ?

Обычно в домофонах остается возможность прописать новый мастер-ключ. Это, конечно, потенциальная возможность для взлома. Но, говоря объективно, проще попасть в подъезд, представившись сантехником, чем что-то взламывать.

Интереснее иметь универсальный ключ, или «вездеход». Его код прописан во всех домофонах подъездов одного дома или двора.

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

Также некоторые RFID-ключи нового формата, к примеру, RF3.1, позволяют записать коды до 8 домофонов.

Часто домофоны также поддерживают блокирующие ключи . Это средство безопасности: после того, как дверь открывают блокирующим ключом, другие ключи не работают, а дверь блокируется. Снять блокировку может либо мастер-ключ, либо блокирующий ключ (всё зависит от настроек домофона).

Кстати, бывает, что ключ устанавливают блокирующим по ошибке . Так что если после вас соседи часто не могут попасть в подъезд, проверьте, не блокирует ли ваш ключ доступ.

Можно ли обмануть домофон?

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

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

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

Часто можно услышать, что домофон можно вывести из строя электрошокером. Да, тонкая электроника серьёзный заряд действительно не перенесет. У механического удара на 10-15 см ниже панели домофона те же последствия. Но это порча имущества и статья УК РФ.

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

Некоторые домофоны под ключ-«таблетку» могут открываться с помощью батарейки «крона». Способ гуманный и безопасный для домофона, но срабатывает редко.

Можно ли открыть домофон смартфоном?

Да, сейчас на рынок постепенно заходят модели NFC-домофонов . Чаще их устанавливают в крупных офисах, реже – в жилых домах.

Если у вас такой вариант, ваш смартфон поддерживает NFC, а домофон работает на частоте 13,56 МГц , возможно, получится отказаться от ключей.

Но для MiFare, к примеру, в смартфоне должен также быть чип Secure Element, а их наличие даже в рамках одной модели смартфона часто отличается от рынка к рынку. Если чип всё же есть и остальные условия соблюдены, всё может получиться.

Есть также NFC-адаптеры , которые сделают из старого домофона новый и перспективный. Открывать дверь можно будет и «таблеткой», и смартфоном.

Помните, что вы можете оказаться под дверью на морозе, а зарядка – дома. И да, с айфоном номер не пройдёт . Apple жестко ограничила возможности NFC в своих устройствах.