All pages
Powered by GitBook
1 of 14

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Mobile SDK

В этом разделе содержится документация по вышедшим из общего употребления версиям Android и iOS SDK.

Прежняя версия документации

Наши продукты постоянно обновляются, и вместе с ними обновляется документация. В этом разделе содержится документация по предыдущим версиям продуктов.

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

Если вы начали внедрять наши продукты до февраля 2021 года и с тех пор ничего не меняли, прежняя версия документации доступна для вас по этой ссылке.

Гайды по продуктам, вышедшим позднее февраля 2021, но уже не актуальным в настоящее время, размещены на подстраницах этого раздела.

Android

iOS

Мониторинг

В этом разделе перечислены метрики, по которым можно сделать вывод, корректно ли работает система.

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

Системные метрики

  1. С помощью команды ping убедитесь, что ко всем серверам имеется доступ.

  2. Проверьте наличие свободного пространства на всех дисках – его должно быть 10% или более.

  3. Проверьте, что сервера используют не более 90% оперативной памяти.

Внутренние метрики

  1. Проверьте доступ к сервисам oz-api с помощью GET `/api/version` (так называемый health check). В случае успеха вернется код 200.

  2. Проверьте доступ к сервисам oz-bio с помощью GET `/v1/models/inquisitor`. В случае успеха вернется код 200.

  3. Проверьте, не истекла ли лицензия наoz-bio. Запустите в консоли следующий код:

curl -s -d '{"inputs": {"images_bytes": [{"b64": ""}]}}'  -X POST  http://localhost:8501/v1/models/inquisitor:predict | grep -c assertion

В случае успеха в консоли отобразится 1.

4. Проверьте, нет ли слишком больших задержек в последней серии анализов. Запустите код, указанный ниже, чтобы получить 90-й перцентиль длительность задержек в секундах.

docker exec -i --user postgres oz-api-pg psql -X -A -t -d gateway -c "select percentile_disc(0.9) within group(order by date_part('epoch', time_updated-time_created)) from gw_analyse_abstract where time_updated > current_timestamp - interval '10 minutes'"

В консоли отобразится результат, он должен быть меньше 20.

5. Проверьте, не растет ли очередь неоконченных анализов. Запустите код, указанный ниже, чтобы получить количество незавершенных анализов в очереди.

docker exec -i oz-api-rabbitmq rabbitmqctl list_queues | egrep -i '^tfss\s' | awk '{ print $2 }'

В консоли отобразится результат, он должен быть меньше 20.

Если любой из результатов не соответствует заявленному успешному, пожалуйста, свяжитесь с нами по адресу [email protected].

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

Руководство пользователя

Установка модулей Oz

В этом разделе вы найдете инструкции по установке решений Oz Forensics: как полной версии, так и версии Lite.

Web UI

Продолжительность анализов

График показывает продолжительность выполнения анализов по их типам в зависимости от количества произведенных анализов. Вместе с общим количеством отображается количество по времени исполнения анализов: минимальное, среднее арифметическое и максимальное время выполнения анализа.

Опции графика

  • Все анализы

  • Любой анализ

  • Черный список

  • Биометрия

  • Живость

Отображается на вкладке Производительность. Доступные варианты отображения: линейный и круговой графики.

Oz System Lite

Описание порядка установки биометрического процессора Lite.

Порядок установки

  • Связаться с нами и скачать архив Docker-образа по ссылке, которую мы вам пришлем

  • Загрузить образ в Dockerdocker load -i <path to image tar file>

  • Запустить docker run -p {port}:80 ozforensics/oz-api-lite:{tag}

Старт контейнера может занять несколько минут.

Описание основных параметров

Параметры задаются переменными окружения при старте Docker-контейнера.

Допустимы следующие параметры:

  • NUM_WORKERS – максимальное количество одновременно выполняемых анализов, определяется индивидуально. По умолчанию: 16.

  • TF_ENABLE_ONEDNN_OPTS – ускорение. По умолчанию: 1, для процессоров AMD необходимо выставить 0.

Применение

Взаимодействие с биометрическим процессором реализовано на основе REST API по протоколу HTTPS.

Точка доступа к API

Базовый URL доступа к API: https://{hostname}/v1/face/pattern или https://{hostname}/v1/face/liveness в зависимости от используемого метода (см. примеры).

Где:

  • {hostname} – имя хоста и порт сервера развернутого биометрического процессора.

Пример: localhost/v1/face/pattern

API поддерживает следующие типы контента запроса (HTTP-заголовок «Content-Type»):

  • «multipart/form-data»;

  • «application/octet-stream»;

  • «image/jpeg» или «image/png»;

Используемые коды ответов HTTP

Коды ответов

Описание

200 OK

Вызов метода завершился успешно. Ответ биометрического процессора включен в HTTP BODY.

400 Bad Request

Вызов метода завершился с ошибкой на стороне Клиента. Код ошибки включен в HTTP BODY.

500 Internal Server Error

Вызов метода завершился с ошибкой на стороне биометрического процессора. Код ошибки включен в HTTP BODY.

Стационарный установщик

Инструкция по использованию стационарного установщика

Что это?

Стационарный установщик – это программа для установки модулей системы Oz Forensics на сервера заказчика с автоматическим внесением всех необходимых настроек с учётом индивидуальной топологии и требований заказчика.

Данный установщик предназначен для развёртывания ПО на сервера напрямую, под учетной записью администратора. Сервера, на которых будет работать ПО, могут иметь или не иметь (с некоторыми оговорками) прямого доступа к Интернету, на них должен быть установлен Linux и к ним должен иметься полный доступ по ssh.

Для установки в OpenShift и других оркестраторах, пожалуйста, обратитесь к нам.

Необходимые условия

Требования к серверам

Сервер для Oz Biometry / Liveness

  • CPU: 16 ядер

  • RAM: 32 Гбайт

  • На диске: 80 Гбайт

Сервер для Oz API / WebUI / Web SDK

  • CPU: 8 ядер

  • RAM: 16 Гбайт

  • На диске: 300 Гбайт

Пожалуйста, обсудите версию ОС с нашими инженерами.

Рекомендованные версии ОС с соответствующими им контейнерами
  • Redhat 7: Docker

  • Redhat 8: Podman*

  • Redhat 9: Podman*

  • Oracle Linux 9: Podman*

  • CentOS 9: Podman*

  • Debian 10: Docker

  • Debian 12: Podman*

  • Ubuntu 22.04 LTS: Podman*

  • Amazon Linux 2023: Podman*

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

sed -i 's/always/unless-stopped/g' /usr/lib/systemd/system/podman-restart.service
systemctl daemon-reload

Также вы можете обратиться к документации Linux.

Требования к Kubernetes (K8s)

Версия: 1.27.

Обязательные компоненты:

  • Prometheus (версия Helm-чартов (kube-prometheus-stack) – 45.7.1),

  • Nginx Ingress Controller (версия Helm-чартов – 4.7.1, репозиторий с чартами здесь),

  • ClusterIssuers.

Опциональные компоненты:

  • Любой Storage Class с поддержкой режима ReadWriteMany (RWX).

Требования к ресурсам узлов:

  • Архитектура CPU: Intel

  • CPU/RAM: аналогично требованиям к серверам.

Еси вы хотите настроить переменные чарта самостоятельно, обратитесь к нам.

Подготовка

  1. Запросите список клиентских URL с соответствующими им сертификатами SSL.

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

  3. Проверьте наличие доступа либо по SSH с авторизацией по паролю, либо с файлом-ключом и sudo без пароля.

  4. Для установки мы рекомендуем использовать Docker или Podman. Если есть доступ в интернет, можно скачать и установить Docker или Podman автоматически.

    • Docker версии 19.03 и выше и Docker Compose версии 1.27 и выше (необходимо установить в /usr/sbin);

    или

    • Podman версии 4.4 и выше (с модулями netavark и aardvark-dns) и podman-compose.

  5. Для установки балансировщика, если он есть в вашем инсталляционном пакете мы рекомендуем установить nginx версии 1.17.5 и выше. Для CentOS и Redhat вместо этого вы можете переключить SELinux в режим Permissive. Еще один вариант – доступ к интернету для скачивания и установки в автоматическом режиме.

  6. Проверьте, что сервера имеют доступ к сервису лицензий https://api.cryptlex.com. Брандмауэр клиента не должен блокировать этот адрес.

  7. Процессор сервера BIO должен поддерживать AVX флаги. Для проверки используйте команду lscpu | grep -E 'avx256|avx512' | wc -l. Ответ должен быть “1”.

  8. Брандмауэр клиента не должен блокировать:

    • любые запускаемые скрипты или бинарные образы;

    • любые локальные порты для взаимодействия процессов (сети docker: 192.168.0.1/24, 192.168.10.0/24, 192.168.11.0/24, 192.168.12.0/24, 192.168.13.0/24);

    • порты 80, 8000, 8080, 8090 на сервере API server и порт 8091 на сервере BIO;

    • порт 5432 для установки Postgres.

Перед отправкой трафика на сервер API может потребоваться завершить соединение HTTPS и дешифровать трафик. Обычно это делается с помощью брандмауэра или других инструментов безопасности.

Важно: предупредите нас о любых нетипичных и/или неофициальных программах или сервисах, установленных на серверах.

Как получить установщик?

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

Комплект для быстрого ознакомления

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

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

Как запустить установщик?

Для запуска вам потребуется компьютер с Windows или Linux. Системные требования:

  • 1 Гб ОЗУ, 1 CPU, 3 Гб на диске

  • Windows 10+ (рекомендовано)

  • Linux 64-bit (требуется Python 3.7)

Подробную информацию по запуску смотрите ниже (на английском языке):

Подготовка серверов

  1. Убедитесь, что системные характеристики серверов соответствуют рекомендуемым.

  2. Убедитесь, что сервера доступны по локальной сети.

  3. Убедитесь, что к серверам есть доступ по единой учетной записи по SSH c авторизацией по паролю или файлу-ключу и для данной записи доступен sudo без интерактивного ввода пароля.

  4. Для установки модулей системы на серверах должен быть установлен Docker (версии >=19.03) и, желательно, Docker Compose (версии >=1.27) либо доступен Интернет для автоматического скачивания и установки.

  5. Для установки балансировщиков сетевой нагрузки (только если это явно включено в вашу поставку) на серверах должен быть установлен nginx (версии >= 1.17.5), а также SELinux должен быть переведен в состояние permissive (относится только к CentOS и Redhat). Для автоматического скачивания и установки должен быть доступен Интернет.

Подготовка установщика

Скачайте и разархивируйте вашу копию установщика.

Внесите необходимые настройки в файл settings.yml. Ниже приведено описание некоторых важных настроек. В общем случае при установке требуется только заполнить блок авторизации и переменные.

Пожалуйста, обратите внимание: файл с настройками является вашей персональной копией и не подлежит передаче третьим лицам.

Настройки

settings.yml
# блок авторизации
auth:
  ssh_user: # логин пользователя
  use_sudo: yes # использовать ли sudo
  # полный путь к приватному ssh-ключу. опционально
  ssh_private_key: C:\\cygwin64\\home\\user\\.ssh\\id_rsa 

# блок переменных - может отличаться для вашей поставки
vars:
  # как правило, содержит IP адреса серверов по ролям
  api1: 130.193.58.196
  api2: 178.154.232.159
  bio1: 130.193.59.58
  bio2: 130.193.57.151
  text1: 178.154.232.69
  balancer: 84.201.145.209

  # а также логин и пароль пользователя API с ролью ADMIN
  common-login: [email protected]
  common-password: 123456

# список серверов, как правило, использует значения переменных
# из блока выше и в правке не нуждается
servers:
  oz-api:
    - $api1
    - $api2
  oz-api-balancer: $balancer
  oz-webui:
    - $api1
    - $api2
  oz-webui-balancer:
  oz-webadapter:
    - $api1
    - $api2
  oz-webadapter-balancer: $balancer
  oz-bio:
    - $bio1
    - $bio2
  oz-bio-balancer: $balancer
  oz-text: $text1
  # если в этой строке ничего не указано, при генерации конфигурации API
  # будет использоваться хост сервиса докера, где развернута база данных
  oz-db:

# блок настроек
settings:
  # персональный лицензионный ключ
  license-key: "123456-123456-123456-123456-123456-123456"
  # локальный путь для хранения настроек на каждом сервере
  working-directory: /opt/oz

  # настройки докера
  docker-daemon:
    # подсеть для запуска контейнеров через docker
    bip: 192.168.0.1/24
    # подсети для запуска контейнеров через docker-compose
    default-address-pools:
      - base: 192.168.1.0/24
        size: 24

  # блок настроек Oz API
  oz-api:
    install: yes  # устанавливать ли компоненту
    install-statistic: no # устанавливать ли модуль статистики
    balancer: yes # устанавливать ли балансировщик
    # доменное имя для внешнего доступа к компоненте 
    domain_name:
    # SSL сертификат и ключ для HTTPS-доступа (опционально)
    domain_cert:
    domain_key:
    # путь для сохранения персональных медиа файлов
    media_path:
    # логин/пароль админской учётки на Oz API
    admin:
      login: $common-login
      password: $common-password
    # описание конфигурации смотрите в разделе знаний Oz API
    config:
    # сетевой порт доступа к компоненте 
    # (используется, если не указан SSL-сертификат, иначе 443)
    port: 80

  # блок настроек Oz Liveness Web Adapter
  # описание настроек, подобных Oz API, см. выше
  oz-webadapter:
    install: yes
    balancer: yes
    domain_name:
    domain_cert:
    domain_key:
    # адрес http ресурса для автоматической пересылки
    # при попытке зайти по /
    redirect_url:
    config:
    port: 88

  # блок настроек Oz WebUI
  # описание настроек, подобных Oz API, см. выше
  oz-webui:
    install: yes
    balancer: yes
    domain_name:
    domain_cert:
    domain_key:
    # Логин/пароль технической учетной записи для настроек синхронизации
    admin:
      login: admin
      password: admin
    config:
    port: 80

  # Блок настроек базы данных для Oz API
  oz-db:
    # устанавливать ли Postgres вместе с установкой Oz API
    # если выбрано no, то используется внешняя служба Pоstgres
    # в обоих случаях адрес сервера берется из блока servers -> oz-db
    install: yes
    # master - пароль Postgres, если выбрана его установка
    psql_password: CHANGEME
    # имя создаваемой базы данных
    database: gateway
    # имя пользователя и пароль базы данных
    user_name: gateway_user
    user_password: CHANGEUSERPASS

  # Блок настроек компоненты Oz Bio (Liveness + Biometry)
  # описание настроек, подобных Oz API, см. выше
  oz-bio:
    install: yes
    balancer: yes
    # настройки и список моделей не предназначены для изменения
    # пользователем
    settings:
    models:

  # Блок настроек компоненты Oz Text
  oz-text:
    # устанавливать ли компоненту
    install: yes
    # прочие настройки менять не рекомендуется
    workers: 2
    group_check:
    auth:
      user_id:
      password:

Запуск

Вызовите командную строку с правами администратора. Перейдите в папку, куда вы до этого поместили разархивированный установщик (команда cd). Запустите процесс установки.

Для запуска на Windows:

oz-installer.cmd install [параметры]

Для запуска на Linux:

chmod +x oz-installer.sh
./oz-installer.sh install [параметры]

Список необязательных параметров:

  • filename – имя файла с настройками (по умолчанию 'settings.yml')

  • private_key – путь к приватному ssh-ключу (переопределяет соответствующую опцию настроек)

  • key_password – пароль к ssh-ключу, если не указан, система попросит ввести его в консоли

  • ssh_password – пароль ssh-пользователя

  • --debug – выводит и логирует подробную информацию выполнения

Пример использования:

install.cmd filename=settings.prod.yml key_password=psyco --debug

Для Linux необходимо поместить приватный ssh-ключ в папку с установщиком и указать в конфигурации путь к нему: /installer/priv_key

Устранение неисправностей

В процессе установки вся информация записывается в файл process.log. При возникновении нештатных ситуаций при установке прикрепляйте этот файл к обращению.

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

Как использовать putty ppk файл для подключения

Для этого необходимо сначала извлечь private-часть ключа, а затем указать путь к этому файлу в разделе auth -> ssh_private_key

Что делать при docker-compose: команда не найдена

Такая ошибка может происходить в том случае, когда программа docker-compose была установлена самостоятельно для запуска установщика и при этом был выбран путь по умолчанию: /usr/local/bin

Для корректной работы создайте символическую ссылку:

ln -s /usr/local/bin/docker-compose /usr/sbin/docker-compose
Convert a .ppk private key (Putty) to a base64/pem private key for OpenSSH or OpenSSLwww.tbs-certificates.co.uk
Logo

Выполнение проверок

Анализ на сервере

Данные для отправки на анализ находятся в объекте results (см. выше), полученном после съемки и записи видео. Загрузите их на сервер и инициируйте запуск необходимых анализы с помощью Oz API. См. также сценарии использования.

Для простого сценария взаимодействия с Oz API можно использовать метод OZSDK.analyse как описано ниже.

OZSDK.analyse(
  results: results,
  analyseStates: [.quality],
  fileUploadProgress: { (progress) in
  
  }
) { (resolution, error) in
  
}

В блоке completion | resolution будет содержаться результат назначенного анализа, включающий в себя status (статус анализа), type (тип анализа) и folderID (id папки Oz API).

Для проведения комплексного анализа с видео и фотографиями документов используется метод OZSDK.documentAnalyse:

OZSDK.documentAnalyse(
  documentPhoto: DocumentPhoto(front: frontDocumentURL, back: backDocumentURL),
  results: results,
  scenarioState: { (state) in
  
  }, fileUploadProgress: { (progress) in

  }
) { (folderResolutionStatus, resolutions, error)

}

В блоке resolutions будет содержаться результат назначенного анализа (аналогично OZSDK.analyse), а в folderResolutionStatus – общий статус анализов для папки.

И для документов, и для проверки лица вы также можете воспользоваться методом OZSDK.uploadAndAnalyse:

OZSDK.uploadAndAnalyse(results: results,
                    documentPhoto: DocumentPhoto(front: frontDocumentURL, back: backDocumentURL),
                    analysisTypes: [.quality],
                    metadata: nil,
                    scenarioState: { state in },
                    fileUploadProgress: { progress in }) { status, resolution, error in }) 

В блоке resolution будет содержаться результат назначенного анализа (аналогично OZSDK.analyse и OZSDK.documentAnalyse).

Анализ на устройстве

Для запуска анализа на устройстве используйте следующие методы.

Biometry

OZSDK.runOnDeviceBiometryAnalysis(firstResult: firstResult, secondResult: secondResult, completion: { status, error in
//show result
})

Liveness

OZSDK.runOnDeviceLivenessAnalysis(results: results, completion: {status, error in 
//show result
})

Работа с серверным Oz API

Retrofit API-интерфейс

SDK содержит интерфейс IOzForensicsAPI с описанием сетевых вызовов к API, который можно использовать для создания инстанса Retrofit.

Этот интерфейс использует gson-converter и оперирует классами из пакета com.ozforensics.liveness.sdk.api.model.

Кроме того в этом интерфейсе определен статический метод для создания инстанса Retrofit по умолчанию (без логирования, интерцепторов и прочего, таймауты 15 секунд), который будет обращаться к серверу по заданному адресу:

val apiService = OzForensicsAPI.create(BASE_URL)ko
OzForensicsAPI apiService = OzForensicsAPI.Factory.create(BASE_URL);

Класс OzForensicsService

SDK содержит класс «OzForensicsService», использующий Retrofit-инстанс из IOzForensicsAPI.create(). Этот класс обертывает сетевые вызовы из Retrofit-интерфейса и учитывает наличие токена. При выполнении запроса auth класс автоматически сохраняет для себя токен, кроме того, выполняет сетевые запросы, добавляя необходимую метаинформацию там, где это необходимо (создание папки, выгрузка медиа на анализ). Вызовы методов этого класса – асинхронные (используется интерфейс StatusListener<>) Получить экземпляр класса можно следующим образом:

val service = OzForensicsService(BASE_URL, ACCESS_TOKEN)
OzForensicsService service = OzForensicsService(BASE_URL, ACCESS_TOKEN);

Если параметр TOKEN установлен null, то для выполнения вызовов к API (кроме auth) сначала необходимо выполнить авторизацию:

service.auth(EMAIL, PASSWORD, listener)
service.auth(EMAIL, PASSWORD, listener)

После удачного запроса будет выполнен onSuccessCallback, в который будет передан AuthResponse c access-токеном.

Демо-версия приложения Oz Forensics

Как работать с демонстрационной версией приложения Oz Forensics для iOS и Android.

Это руководство поможет вам разобраться, как работать с приложением Oz Liveness. Вы сможете протестировать наши алгоритмы и оценить их точность на вашей собственной выборке медиафайлов. Свяжитесь с нами, чтобы получить логин и пароль для доступа к приложению, а затем скачайте Oz Liveness на телефон. Доступны версии для iOS и Android.

Установка

iOS

Чтобы протестировать приложение для iOS, вам понадобится приложение TestFlight. Скачайте его из App Store: . Затем установите наше приложение: . Коснитесь иконки приложения, чтобы запустить его. При первом входе вам нужно будет ввести полученные от нас логин и пароль. Проверьте, что в поле Адрес API указано следующее: “https://api.sandbox.ozforensics.com/”. Нажмите кнопку Войти. Загрузится экран Сценариев.

Android

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

Когда дистрибутив скачается, запустите его. После установки приложения коснитесь его иконки – загрузится экран Сценариев.

В правом верхнем углу нажмите кнопку Профиль (с изображением человека). На новом экране введите свой логин и пароль. Проверьте, что в поле Сервер указано следующее: “https://sandbox.ohio.ozforensics.com/”. После ввода вы опять окажетесь на экране Сценариев.

Для смены пользователя зайдите в Профиль и нажмите Выйти, затем введите нужную пару логин + пароль.

В профиле вы также можете:

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

  • выбрать, где проводить анализ – на сервере или на устройстве

  • проверить текущую версию приложения и SDK

Работа с приложением

Демо-приложение предусматривает три сценария работы:

  • Регистрация нового клиента (онбординг): клиент делает фото своих документов и селфи (фотографию / видео своего лица). Затем система сверяет извлеченные из медиафайлов биометрические шаблоны. Сценарий может использоваться, например, для регистрации где-либо.

  • Биометрическая проверка: клиент делает селфи, затем система сравнивает это селфи с изображениями из базы данных. Таким образом можно, например, подтверждать транзакции, получать доступ куда-либо, сообщать о начале рабочего дня.

  • Liveness – проверка “живости”, клиент делает селфи, и система подтверждает, что на этом селфи действительно реальный живой человек в сознании. Это сценарий защиты от спуфинга – цифрового мошенничества.

Регистрация нового клиента (онбординг)

Загрузите раздел Регистрация нового клиента (онбординг).

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

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

Когда обе фотографии будут сделаны, приложение отправит их на анализ, и вскоре вы получите результаты. Если лица на документе и селфи совпадают, вы получите сообщение “Регистрация прошла успешно”. Если в процессе возникли какие-либо проблемы (лица не совпадают, документы не распознаны, вместо лица маска или еще что-либо), вы получите сообщение “Мы с Вами свяжемся”.

Биометрическая проверка

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

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

Если лица совпадают, вы увидите сообщение “Аутентификация прошла успешно”. Если лица не совпадают, система выведет предупреждение.

Liveness

В разделе Liveness вам нужно выбрать один из жестов для подтверждения того, что вы – реальный живой человек. Это такие жесты как:

  • Однокадровый

  • Селфи

  • Сканирование

  • Моргание

  • Улыбка

  • Поднять голову

  • Опустить голову

  • Повернуть голову налево

  • Повернуть голову направо

  • Комбо (комбинация из нескольких жестов)

Если проверка прошла успешно, вы увидите сообщение “Аутентификация прошла успешно”. Если лица не совпадают, система выведет предупреждение.

Все фото и видео, которые вы снимаете, можно позже найти в веб-консоли*. Инструкция по тому, как ей пользоваться, находится здесь: .

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

TestFlight
демо-версия Oz Liveness для iOS
демо-версия Oz Liveness для Android
веб-консоль Oz Forensics

Выполнение проверок

Анализ на сервере

Данные для отправки на анализ находятся в объекте sdkMediaResult, полученном после съемки и записи видео. Загрузите их на сервер и инициируйте запуск необходимых анализов с помощью Oz API. См. сценарии использования. Для простого сценария взаимодействия с Oz API можно использовать метод uploadMediaAndAnalyze, как описано ниже.

val statusListener = object: StatusListener<List<OzAnalysisResult>> {
            override fun onStatusChanged(status: String?) { /*your code for showing status message*/ }
            override fun onSuccess(result:List <OzAnalysisResult>) { /*your code to handle analysis result*/ }
            override fun onError(error: OzException) { /*your code to handle analysis error*/ }
        }
        val analysisCancelable = OzLivenessSDK.uploadMediaAndAnalyze(
            mediaList,
            listOf(OzAnalysis.QUALITY, OzAnalysis.BIOMETRY),
            statusListener
        )
StatusListener<List<OzAnalysisResult>> statusListener = new StatusListener<List<OzAnalysisResult>>() {
            @Override public void onStatusChanged(@Nullable String s) { /*your code for showing status message*/ }
            @Override public void onSuccess(List<OzAnalysisResult> result) { /* your code to handle analysis result */ }
            @Override public void onError(@NonNull OzException e) { /* your code to handle analysis error */ }
        };
        Cancelable analysisCancelable = OzLivenessSDK.INSTANCE.uploadMediaAndAnalyze(
            mediaList,
            Arrays.asList(OzAnalysis.QUALITY, OzAnalysis.BIOMETRY),
            statusListener
        );

Анализ на устройстве

Для запуска анализа на устройстве используйте следующие методы:

OzLivenessSDK.runOnDeviceLivenessAnalysis(mediaList)
OzLivenessSDK.runOnDeviceBiometryAnalysis(mediaList)
OzLivenessSDK.INSTANCE.runOnDeviceLivenessAnalysis(mediaList);
OzLivenessSDK.INSTANCE.runOnDeviceBiometryAnalysis(mediaList);