Разработка СКУД-мобильного приложения с RFID-контролем доступа

Реализация контроля доступа через RFID в мобильном приложении Представьте: охранник на проходной видит в приложении, что карта сотрудника заблокирована, а на удалённом складе происходит попытка прохода вне расписания. RFID-контроль доступа через мобильное приложение — это аудит-лог каждого событи

Разработка и поддержка любых видов мобильных приложений:

Информационные и развлекательные мобильные приложения
Новостные приложения, игры, справочники, онлайн-каталоги, погодные, фитнес и здоровье, туристические, образовательные, социальные сети и мессенджеры, квиз, блоги и подкасты, форумы, агрегаторы
Мобильные приложения электронной коммерции
Интернет-магазины, B2B-приложения, маркетплейсы, онлайн-обменники, кэшбэк-сервисы, биржи, дропшиппинг-платформы, программы лояльности, доставка еды и товаров, платежные системы
Мобильные приложения для управления бизнес-процессами
CRM-системы, ERP-системы, управление проектами, инструменты для команды продаж, учет финансов, управление производством, логистика и доставка, управление персоналом, системы мониторинга данных
Мобильные приложения электронных услуг
Доски объявлений, онлайн-школы, онлайн-кинотеатры, платформы предоставления электронных услуг, платформы кешбека, видеохостинги, тематические порталы, платформы онлайн-бронирования и записи, платформы онлайн-торговли

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

Услуги, которые мы предлагаем
Показано 1 из 1Все 1734 услуг
Разработка СКУД-мобильного приложения с RFID-контролем доступа
Средний
~5 дней

Наши компетенции:

Часто задаваемые вопросы

Последние работы

  • image_mobile-applications_feedme_467_0.webp
    Разработка мобильного приложения для компании FEEDME
    895
  • image_mobile-applications_xoomer_471_0.webp
    Разработка мобильного приложения для компании XOOMER
    782
  • image_mobile-applications_rhl_428_0.webp
    Разработка мобильного приложения для компании RHL
    1216
  • image_mobile-applications_zippy_411_0.webp
    Разработка мобильного приложения для компании ZIPPY
    1079
  • image_mobile-applications_affhome_429_0.webp
    Разработка мобильного приложения для компании Affhome
    1002
  • image_mobile-applications_flavors_409_0.webp
    Разработка мобильного приложения для компании FLAVORS
    597

Реализация контроля доступа через RFID в мобильном приложении

Представьте: охранник на проходной видит в приложении, что карта сотрудника заблокирована, а на удалённом складе происходит попытка прохода вне расписания. RFID-контроль доступа через мобильное приложение — это аудит-лог каждого события, управление правами доступа для каждого пользователя и зоны, обработка оффлайн-сценариев когда контроллер двери недоступен, и интеграция с HID/Wiegand RFID-считывателями. Наш опыт в этой области — более 5 лет и 15 проектов для промышленных объектов и бизнес-центров. Мы реализуем СКУД-мобильные приложения под ключ, включая настройку контроллеров и обучение персонала.

Как мобильное приложение взаимодействует с контроллером двери?

Мобильное приложение — это инструмент администратора СКУД и просмотра аудит-лога. Логика «открывать или нет» никогда не должна быть только на телефоне — контроллер двери (например HID VertX, Honeywell Pro-Watch) принимает решение сам по своей базе. Типичный поток:

Мобильное приложение → REST API СКУД → Контроллер двери → Считыватель → Электромагнитный замок 

Мобильное приложение управляет:

  • Базой держателей карт (добавление, блокировка, удаление)
  • Расписанием доступа (когда кому можно в какую зону)
  • Мониторингом событий в реальном времени до 10 000 событий/мин
  • Ручным открытием двери (Remote Unlock)

Считывание RFID-карт мобильным телефоном

Сам телефон может выступать как RFID-ридер через NFC (для карт MIFARE Classic/DESFire) или через внешний BLE-ридер (для HF 13.56 MHz или LF 125 kHz карт).

NFC на iOS (CoreNFC) для MIFARE:

import CoreNFC class AccessCardReader: NSObject, NFCTagReaderSessionDelegate { var session: NFCTagReaderSession? func startReading() { session = NFCTagReaderSession(pollingOption: [.iso14443], delegate: self) session?.alertMessage = "Приложите карту доступа" session?.begin() } func tagReaderSession(_ session: NFCTagReaderSession, didDetect tags: [NFCTag]) { guard let tag = tags.first, case .miFare(let mifareTag) = tag else { return } session.connect(to: tag) { error in if error != nil { session.invalidate(errorMessage: "Ошибка подключения"); return } let uid = mifareTag.identifier.map { String(format: "%02X", $0) }.joined() self.onCardDetected(uid: uid) session.invalidate() } } } 

UID MIFARE-карты — это просто уникальный номер. Для HID ProxCard 125 кГц мобильный телефон не умеет читать физически. Нужен внешний BLE-ридер.

MIFARE DESFire EV2 — безопасное чтение: DESFire карты используют в серьёзных СКУД. Чтение секторов требует аутентификации с AES-128:

let selectCmd = Data([0x90, 0x5A, 0x00, 0x00, 0x03]) + applicationId + Data([0x00]) mifareTag.sendMiFareCommand(commandPacket: selectCmd) { response, error in // Далее Authenticate с AES ключом приложения } 
Где хранятся ключи? Ключи хранятся в Secure Enclave — не в коде приложения. `SecKeyCreateRandomKey` с `.secureEnclaveBound` атрибутом.

Аудит-лог и мониторинг

Мониторинг событий в реальном времени через WebSocket или SSE (Server-Sent Events):

class AccessEventMonitor(private val accessApi: AccessControlApi) { private val _events = MutableSharedFlow<AccessEvent>(replay = 50) val events: SharedFlow<AccessEvent> = _events.asSharedFlow() fun startMonitoring(zoneIds: List<String>) { scope.launch { accessApi.streamEvents(zoneIds).collect { event -> _events.emit(event) if (event.accessResult == AccessResult.DENIED) { sendDeniedAlert(event) } } } } } data class AccessEvent( val cardholderName: String, val cardUid: String, val doorName: String, val timestamp: Long, val accessResult: AccessResult, val deniedReason: String? ) 

deniedReason — детализация отказа. Охраннику нужно знать: карта заблокирована или просто человек пришёл вне расписания. Разные действия — разная реакция.

Что делать при потере сети?

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

Удалённое управление дверьми

Remote Unlock — открытие двери без физического присутствия:

suspend fun remoteUnlock(doorId: String, durationSeconds: Int = 5) { val result = accessApi.unlockDoor( doorId = doorId, unlockDuration = durationSeconds, operatorId = currentUser.id, reason = "remote_unlock_mobile" ) if (result.isSuccess) { logAuditEvent(AuditAction.REMOTE_UNLOCK, doorId) } } 

Каждое удалённое открытие — в аудит-лог с operatorId. Без этого невозможно расследование инцидентов.

Сравнение технологий: NFC vs BLE-ридер

Параметр NFC (встроенный) BLE-ридер (внешний)
Частота 13.56 МГц LF 125 кГц / HF 13.56 МГц
Поддерживаемые карты MIFARE Classic, DESFire HID Prox, iClass, LEGIC
Безопасность Высокая (AES в Secure Enclave) Средняя (ключи на ридере)
Скорость чтения < 0.3 с 0.1–0.5 с
Необходимость носить ридер Нет Да

Для объектов с существующей инфраструктурой HID ProxCard — BLE-ридер единственный вариант. Для новых систем выбираем MIFARE DESFire — надёжнее и быстрее.

Таблица сроков этапов разработки

Этап Срок Состав работ
Аналитика 1–2 дня Изучение СКУД, схемы зон, протоколы Wiegand/OSDP
Проектирование 2–3 дня REST API, модель аудит-лога, схема авторизации
Реализация 5–10 дней Мобильное приложение, backend, интеграция с контроллером
Тестирование 2–3 дня Функциональное, нагрузочное (до 10 000 событий/мин), оффлайн
Деплой 1–2 дня Публикация в магазины, настройка push, обучение

Процесс работы

  1. Аналитика — изучение существующей СКУД, протоколов (Wiegand, OSDP), схемы зон.
  2. Проектирование — архитектура REST API, модель данных аудит-лога, схемы авторизации.
  3. Реализация — мобильное приложение (iOS/Android/Flutter), backend-сервис, интеграция с контроллерами.
  4. Тестирование — функциональное, нагрузочное (до 10 000 событий/мин), оффлайн-сценарии.
  5. Деплой — публикация в App Store/Google Play, настройка push (APNs/FCM), обучение администраторов.

Что входит в работу

  • Исходный код мобильного приложения и backend
  • Документация: API-спецификация (OpenAPI), руководство администратора
  • Интеграция с существующей СКУД (HID, Honeywell, ZKTeco)
  • Настройка push-уведомлений (APNs/FCM) и тестовой среды (TestFlight, Firebase Distribution)
  • Гарантия 1 год на ошибки приложения
  • Поддержка 3 месяца после запуска (консультации, доработки)

Сроки и как заказать

Оценим проект за 1 день после заполнения брифа. Сроки:

  • База держателей, аудит-лог, Remote Unlock: от 5 дней
  • Добавление NFC-чтения MIFARE: +3 дня
  • Полная интеграция с HID/Honeywell: 2–4 недели

Если вам нужна надёжная СКУД-система с мобильным управлением — получите консультацию или закажите разработку. Мы проектируем и внедряем под ключ, с сертификатами совместимости и реальным опытом на десятках объектов.