Реализация AI-проверки подлинности документов (Anti-Fraud) в мобильном приложении

TRUETECH занимается разработкой, поддержкой и обслуживанием мобильных приложений iOS, Android, PWA. Имеем большой опыт и экспертизу для публикации мобильных приложений в популярные маркеты Google Play, App Store, Amazon, AppGallery и другие.

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

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

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

Услуги, которые мы предлагаем
Показано 1 из 1Все 1735 услуг
Реализация AI-проверки подлинности документов (Anti-Fraud) в мобильном приложении
Сложный
от 2 недель до 3 месяцев
Часто задаваемые вопросы

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

Этапы разработки

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

  • image_mobile-applications_feedme_467_0.webp
    Разработка мобильного приложения для компании FEEDME
    792
  • image_mobile-applications_xoomer_471_0.webp
    Разработка мобильного приложения для компании XOOMER
    671
  • image_mobile-applications_rhl_428_0.webp
    Разработка мобильного приложения для компании RHL
    1097
  • image_mobile-applications_zippy_411_0.webp
    Разработка мобильного приложения для компании ZIPPY
    969
  • image_mobile-applications_affhome_429_0.webp
    Разработка мобильного приложения для компании Affhome
    914
  • image_mobile-applications_flavors_409_0.webp
    Разработка мобильного приложения для компании FLAVORS
    495

Реализация AI-проверки подлинности документов (Anti-Fraud) в мобильном приложении

Поддельные паспорта, распечатанные на лазерном принтере, с 2022 года проходят базовые OCR-проверки в 30–40% случаев по данным отраслевых отчётов. Это не теоретическая угроза — это реальные заявки на кредиты, регистрации аккаунтов и онбординг сотрудников с подложными документами. Классические правила (совпадение MRZ с визуальной зоной, формат дат) недостаточны. Нужен ML-слой, который видит то, что правила не описывают.

Что именно проверяет AI-модель

Проверка подлинности документа на мобильном устройстве складывается из нескольких независимых сигналов:

Анализ текстуры и артефактов печати. Настоящий паспорт напечатан на intaglio-прессе с тактильными элементами и специфической растровой структурой. Скан или фотография распечатки имеет паттерн JPEG-артефактов, характерный для бытовых принтеров: блочность на гильошировании, потеря микропечати, ровная яркость там, где должны быть рельефные тени. CNN-модель, обученная на таких примерах, выдаёт forgery_score как непрерывное значение — не бинарное «подделка/нет».

Геометрическая консистентность. Текстовые поля в реальном паспорте расположены в строгих пикселях относительно физических маркеров. Homography-трансформация выравнивает документ в стандартную плоскость, после чего поля MRZ, фото, дата рождения сравниваются с шаблоном по affine-матрице. Отклонение от шаблона >2px — тревожный сигнал, >5px — высокая вероятность редактирования.

Кросс-верификация полей. Имя в MRZ должно совпадать с визуальной зоной, дата рождения — с контрольной цифрой MRZ (алгоритм ISO 7501-1), номер документа — с базой утерянных/недействительных (если подключён внешний API, например Interpol I-24/7 или национальные реестры).

Архитектура on-device vs server-side

Выбор зависит от требований к приватности и latency:

On-device (CoreML / TFLite) Server-side
Латентность 300–800 мс 1–3 с
Приватность Данные не покидают устройство Требует передачи изображения
Размер модели 5–50 MB в приложении Без ограничений
Актуальность модели OTA-обновление через CoreML Model Deployment Деплой на сервер
Офлайн Да Нет

Для большинства KYC-сценариев применяем гибридный подход: on-device модель выполняет быструю первичную проверку (capture quality, базовые артефакты), тяжёлый anti-forgery inference — на сервере с GPU. Пользователь видит прогресс-индикатор, а не ждёт 3 секунды перед любым действием.

Внедрение CoreML-модели на iOS

Базовый pipeline для iOS:

// Загрузка модели
let config = MLModelConfiguration()
config.computeUnits = .cpuAndNeuralEngine
let model = try DocumentAuthenticityModel(configuration: config)

// Предобработка — нормализация и crop до Region of Interest
let input = try MLMultiArray(shape: [1, 3, 224, 224], dataType: .float32)
// ... заполнение пикселями из CVPixelBuffer

// Инференс
let prediction = try model.prediction(image: pixelBuffer)
let forgeryScore = prediction.forgery_score  // Float, 0.0 – 1.0

ANE (Apple Neural Engine) на A14+ обрабатывает 224×224 документ за ~40 мс. На iPhone SE 2nd gen без ANE — ~350 мс. Разница существенная, порог по computeUnits нужно адаптировать под минимально поддерживаемое устройство.

Модель обновляется через CoreML Model Deployment в CloudKit или через собственный endpoint с подписанным .mlmodel файлом. Не хардкодим модель в бандл если планируем её обновлять — размер IPA вырастет, и каждое обновление модели потребует релиза.

TensorFlow Lite на Android

Android-реализация через TFLite + GPU Delegate или NNAPI:

val options = Interpreter.Options().apply {
    addDelegate(GpuDelegate())
    setNumThreads(4)
}
val interpreter = Interpreter(loadModelFile(assets, "doc_auth_v2.tflite"), options)

val inputBuffer = TensorImage.fromBitmap(preprocessedBitmap)
val outputBuffer = TensorBuffer.createFixedSize(intArrayOf(1, 2), DataType.FLOAT32)
interpreter.run(inputBuffer.buffer, outputBuffer.buffer)
val forgeryScore = outputBuffer.floatArray[1]  // индекс 1 — класс "forgery"

GPU Delegate снижает латентность на Snapdragon 8 Gen 1 с ~600 мс до ~90 мс для модели EfficientNet-B2. На бюджетных устройствах без GPU Delegate разница менее заметна — там лучше NNAPI с автоматическим выбором ускорителя.

Обучение и дообучение модели

Готовые модели для anti-forgery в открытом доступе ограничены и быстро устаревают — мошенники адаптируются. Мы обучаем на синтетических данных: реальные документы + аугментированные подделки (JPEG-compress, Gaussian noise, PrintScan simulation через библиотеку albumentations). Архитектура — EfficientNet-B0 или MobileNetV3 для баланса точности и скорости.

После деплоя важен feedback loop: документы с пограничным forgery_score (0.4–0.6) уходят на ручную разметку операторами и дообучение. Без этого модель деградирует на новых паттернах подделок через 3–6 месяцев.

Этапы внедрения

Аудит типов документов и сценариев → сбор датасета → обучение/валидация → конвертация в CoreML / TFLite → интеграция в мобильный клиент → A/B тест с человеческим верификатором → настройка threshold → продакшен → мониторинг drift.

Сроки: интеграция готовой модели без дообучения — от 3 недель. Полный цикл (датасет, обучение, мобильная интеграция, feedback loop) — 2–4 месяца. Стоимость рассчитывается индивидуально.