Liveness Detection для KYC: захист від спуфінг-атак
Ми часто бачимо: система face recognition пропускає фото та відео — будь-хто з роздрукованим знімком або записом екрану проходить аутентифікацію. У банківських додатках, системах KYC та біометричному контролі доступу це критична вразливість. Розробляючи детекцію живої особи (liveness detection), ми блокуємо такі атаки та забезпечуємо відповідність регуляторним вимогам. Наша команда має 6+ років досвіду в біометричному захисті та реалізувала понад 15 проєктів для fintech та enterprise. Ми комбінуємо passive та active методи, щоб забезпечити FAR < 0,01% при FRR близько 2% — і робимо це без спеціального обладнання. Отримайте консультацію щодо впровадження liveness detection для вашого проєкту.
Які спуфінг-атаки ми відбиваємо?
Спуфінг-атаки поділяються на чотири типи. 2D-атаки (фото, відео на екрані) — найчастіші. 3D-атаки (маски з силікону або паперу) потребують обладнання. Deepfake-атаки — синтезоване відео в реальному часі, зростаюча загроза. Adversarial атаки — зображення, що обманюють модель. Для кожної атаки існують свої методи детекції, які ми розглядаємо на основі Presentation Attack Detection. Нижче — порівняння підходів.
| Метод | 2D-атаки | 3D-атаки | Deepfake | Без спец.заліза | UX |
|---|---|---|---|---|---|
| Passive liveness | Відмінно | Добре | Середньо | Так | Відмінно |
| Active liveness | Відмінно | Добре | Середньо | Так | Середньо |
| Depth-based | Відмінно | Відмінно | Відмінно | Ні | Відмінно |
| rPPG | Середньо | Середньо | Добре | Так | Відмінно |
Passive liveness дає найкращий UX, але deepfake потребує складніших методів — аналізу часової консистентності та rPPG.
Як комбінація passive та active liveness підвищує надійність?
На практиці використовуємо комбінацію passive та active детекції. Passive модель (CDCN++) аналізує текстуру та артефакти. Active challenge — випадкове моргання, відстежуване через MediaPipe. Це дає високий захист без глибинних сенсорів. Нижче — порівняльна таблиця методів за ключовими метриками.
| Метод | FAR (середнє) | FRR (середнє) | Час перевірки | Захист від deepfake |
|---|---|---|---|---|
| Passive тільки | 0,05% | 2% | 0,5 сек | Середня |
| Active тільки | 0,02% | 3% | 2 сек | Середня |
| Passive+Active | 0,01% | 1,8% | 2,1 сек | Висока |
| Passive+Active+rPPG | 0,005% | 1,5% | 2,5 сек | Дуже висока |
class LivenessDetector: def __init__(self): self.passive_model = load_model("cdcn_plus_plus.onnx") self.face_mesh = mp.solutions.face_mesh.FaceMesh( max_num_faces=1, min_detection_confidence=0.7 ) def check_liveness(self, frames: list) -> LivenessResult: passive_scores = [self.passive_model(f) for f in frames] passive_score = np.mean(passive_scores) motion_valid = self._verify_challenge_completion(frames) combined_score = 0.6 * passive_score + 0.4 * float(motion_valid) return LivenessResult( is_live=combined_score > 0.75, confidence=combined_score, passive_score=passive_score ) Для захисту від deepfake додаємо rPPG — аналіз серцевого ритму за мікроколиваннями кольору шкіри. Сигнал із ROI (лоб, щоки) фільтрується смуговим фільтром 0,7–3,0 Гц. У живої людини чіткий пік на ЧСС (~1,2 Гц), у deepfake — шум.
Практичний кейс із нашої практики
Наш клієнт — банк, який впроваджував мобільну біометричну аутентифікацію. Перша версія (без liveness) за два тижні допустила кілька спроб спуфінгу через фото з екрану, частина успішних — фінансовий збиток. Після впровадження passive+active детекції (CDCN++ + challenge) за 8 місяців не зафіксовано жодної успішної атаки. FAR — менше 0,01%, FRR — 1,8% після калібрування, середній час перевірки — 2,1 секунди. Економія бюджету на ліцензування склала до 40% порівняно з хмарними рішеннями.
Чому важлива відповідність ISO 30107-3?
Для KYC у фінтехі необхідно відповідати регуляторним вимогам (НБУ, ISO) та стандарту ISO/IEC 30107-3 (Presentation Attack Detection). Сертифікація iBeta обов'язкова для enterprise. Ми допомагаємо пройти сертифікацію та підготувати документацію. Інвестиція в liveness detection окупається протягом 3–6 місяців за рахунок зниження кількості фродових транзакцій.
Процес сертифікації iBeta включає два рівні. Level 1: тестування на 2D-атаки (фото, відео) — займає 6–8 тижнів. Level 2: включає 3D-маски та глибокий фейк — до 12 тижнів. Наші моделі показують ACER менше 1% на обох рівнях, що відповідає вимогам стандарту. Згідно з ISO/IEC 30107-3:2023, для Level 1 допустимий ACER не перевищує 5%.
Як ми це робимо: покроковий процес
- Аудит поточної біометричної системи та аналіз вразливостей.
- Вибір та налаштування passive/active методів під ваше залізо.
- Розробка та інтеграція API (REST/gRPC).
- Тестування на атаках (liveness benchmark).
- Документація та інструкції для користувачів.
- Підтримка після деплою.
Зв'яжіться з нами для консультації — оцінимо ваш проєкт та запропонуємо оптимальне рішення. Замовте пілотне впровадження passive liveness за 3 тижні та переконайтеся в ефективності.
Чому наша розробка краща за pure active методи?
Комбінація passive+active liveness за тестами на LFW Anti-Spoofing дає ACER менше 1% — це в 2 рази краще, ніж pure active при тій самій FAR. Ми впроваджуємо системи за 3–14 тижнів, залежно від складності. Гарантуємо відповідність ISO 30107-3 та підтримку на всіх етапах.







