Canlılık testi (liveness detection), dijital KYC akışının en sık atlanan ama en kritik bileşeni. NFC + biyometrik yüz eşleştirme, sadece kullanıcının kimlik kartında yazan kişi olup olmadığını doğrular — ancak ekrana bir başkasının fotoğrafını tutan saldırganı durdurmaz. Canlılık testi tam bu boşluğu kapatır: karşıdaki "yüz" gerçekten yaşayan bir insan mı, yoksa bir fotoğraf, ekran, video veya deepfake mi? Bu rehber canlılık testinin nasıl çalıştığını, hangi saldırılara karşı koruduğunu ve NIST PAD seviyelerini açıklıyor.
Canlılık Testi Neden Gerekli?
Bir saldırgan şu yollarla biyometrik eşleştirmeyi kandırabilir:
- Fotoğraf spoofing — hedef kişinin kimlik fotoğrafını veya sosyal medya fotoğrafını ekrana tutarak.
- Video replay — hedef kişinin daha önce çekilmiş bir videosunu oynatarak.
- 3D mask — yüksek kaliteli silikon veya 3D-baskılı yüz maskesi (gelişmiş saldırı).
- Deepfake — yapay zekâ ile üretilmiş, hedef kişinin yüzünü canlı taklit eden video.
Bu saldırı tiplerinin tamamına "presentation attack" deniyor. Canlılık testi (anti-spoofing veya PAD — Presentation Attack Detection olarak da bilinir), karşıdaki yüzün yaşayan bir insan olup olmadığını ML modelleriyle tespit ediyor.
Pratik açıdan: BDDK uzaktan müşteri edinimi yönetmeliği, SPK görüntülü kimlik tespiti ve MASAK 5549 sayılı Kanun bağlamında canlılık testi olmadan kurulan bir KYC akışı, denetimde "yetersiz güvenlik kontrolü" olarak değerlendirilebilir. Detay için dijital KYC rehberimize bakın.
İki Ana Yaklaşım: Pasif vs Aktif Canlılık
Pasif Canlılık (Passive Liveness)
Kullanıcıdan ek bir şey istemez — normal selfie çekme sırasında arka planda çalışır. ML modeli aşağıdaki sinyallere bakar:
- Derinlik bilgisi — gerçek yüzün 3 boyutlu yapısı vs ekranın 2 boyutlu düzlüğü.
- Doku analizi — gerçek cilt mikrostrüktür vs ekran piksel desenleri (moiré).
- Işıklandırma tutarlılığı — yüzün farklı bölgelerindeki ışık dağılımı doğal mı?
- Mikro hareketler — istemsiz göz kırpma, yüz kas hareketleri.
- Renk uzayı analizi — gerçek cilt rengi vs ekran emisyonu farklı spektrumlarda yansır.
Avantajı: kullanıcı sürtünmesi sıfır, hızlı. Dezavantajı: yüksek kaliteli saldırılarda (4K ekran, profesyonel deepfake) tek başına yetersiz kalabilir.
Aktif Canlılık (Active Liveness)
Kullanıcıdan rastgele bir aksiyon ister: "başınızı sağa çevirin", "gözünüzü kırpın", "5283 rakamlarını okuyun". ML modeli istenen aksiyonun gerçekleşip gerçekleşmediğini kontrol eder. Avantajı: replay saldırısına karşı çok güçlü (saldırgan önceden hazırladığı videoyu rastgele istenen aksiyona göre değiştiremez). Dezavantajı: kullanıcı sürtünmesi yüksek, başarı oranı %10-15 düşebilir.
Pratikte Hangisi Kullanılıyor?
Çoğu üretim sistemi hibrit: pasif canlılık standart çalışır, risk skoru orta-yüksek müşterilerde aktif canlılık tetiklenir. Hibrit yaklaşım sürtünmeyi minimize ederken güvenliği maksimize eder.
NIST PAD Seviyeleri
Amerikan Ulusal Standartlar Enstitüsü (NIST), canlılık testlerinin standartlaştırılmış değerlendirmesi için PAD (Presentation Attack Detection) seviyelerini tanımladı. ISO/IEC 30107-3 standardı bu seviyeleri formalize etti.
| Seviye | Hedef Saldırı Tipi | Sertifikalı Çözümler |
|---|---|---|
| PAD Level 1 | Basit fotoğraf saldırıları (basılı fotoğraf, telefon ekranı) | Düşük segment çözümler |
| PAD Level 2 | Yüksek kalite video replay, basit maskeler | Üretim seviyesi standart |
| PAD Level 3 | 3D silikon maskeler, profesyonel deepfake | Yüksek riskli kuruluşlar |
Türkiye pazarında bir dijital KYC akışı için minimum kabul edilebilir seviye PAD Level 2'dir. PAD Level 3 sertifikalı çözümler özellikle kripto borsalar ve yüksek bakiyeli bankacılık ürünleri için tercih ediliyor. Sertifika belgeleri (genelde iBeta veya BSI'dan alınır) denetim sırasında kanıt olarak sunulur.
Canlılık Testinin Teknik Bileşenleri
1. Yakalama Katmanı
Kullanıcının selfie'si çekilirken arka tarafta birden fazla kare alınır (genelde 30-60 fps, 2-3 saniye). Sadece tek bir fotoğraf değil, kısa bir video segmenti. Bu segment hem ön analiz için hem de aktif challenge için kullanılır.
2. Ön İşleme
Yüz tespit, hizalama, normalleştirme. Birden fazla yüz varsa ek doğrulama tetiklenir (saldırgan başkasının fotoğrafını arkasına tutabilir). Aydınlatma normalizasyonu da bu katmanda yapılır.
3. PAD Modeli
Pasif canlılık için CNN (Convolutional Neural Network) tabanlı modeller standart. Tipik özellikler:
- Derin sinir ağıyla doku analizi (örn. ResNet, EfficientNet türevleri).
- Spektral analiz (FFT tabanlı).
- Optical flow analizi (kareler arası mikro hareket tespiti).
Çıktı: 0-1 arası bir "canlılık skoru". Üretim eşiği genelde 0.8+; orta düzey skorlar (0.6-0.8) ek operatör incelemesine yönlendirilir.
4. Aktif Challenge Modülü
Kullanıcıdan istenen aksiyonun gerçekleşip gerçekleşmediğini doğrulayan modüller:
- Head pose estimation — başın gerçekten istenen yöne döndüğü.
- Blink detection — göz kırpmanın doğru zamanda yapıldığı.
- Lip sync analysis — söylenen rakamların ağız hareketleriyle eşleştiği.
Saldırı Tiplerine Karşı Etkinlik
Tipik üretim sistemlerinde tespit oranları (anonimize sahadan veri):
| Saldırı Tipi | Pasif Canlılık | Pasif + Aktif Canlılık |
|---|---|---|
| Basılı fotoğraf | %99+ | %99.9+ |
| Telefon ekranı fotoğrafı | %96-98 | %99+ |
| 4K ekran video replay | %88-93 | %97-99 |
| Düşük kalite deepfake | %85-92 | %95-98 |
| Yüksek kalite deepfake | %72-85 | %90-96 |
| 3D silikon maske | %65-80 | %85-92 |
Yüksek kalite deepfake, 2024'te ucuzlayan açık kaynak modellerle birlikte hızla yaygınlaşan bir tehdit. PAD Level 3 sertifikalı çözümler bu segmentte tek başına anlamlı koruma sağlıyor.
Yaygın Entegrasyon Hataları
Hata 1: Sadece pasif canlılık kullanmak. Düşük riskli akışlarda yeterli olabilir, ancak yüksek riskli (PEP, yüksek bakiye, kripto) müşterilerde aktif canlılık zorunlu olmalı.
Hata 2: Sertifika sorgulamamak. "Satıcı PAD Level 2 sertifikalı diyor" yeterli değil — sertifikanın güncel olduğunu, hangi modeli kapsadığını ve hangi laboratuvardan alındığını (iBeta, BSI, vd.) doğrulayın.
Hata 3: Eşik kalibrasyonunu yapmamak. Default eşiklerle gitmek yerine, kendi müşteri tabanınızdaki false acceptance ve false rejection oranlarını takip edip eşiği ayarlamak gerekli. Çok sıkı eşik dönüşümü kaybettirir, çok gevşek eşik sahteciliği geçirir.
Hata 4: Aktif canlılığı her seferde aynı sırayla istemek. Saldırgan akışı bir kez analiz ettikten sonra önceden hazırlanmış challenge yanıtlarını oynatabilir. Aktif challenge'lar mutlaka rastgele olmalı.
Hata 5: Canlılık skorunu loglamamak. Audit sırasında "bu müşterinin canlılık skoru neydi" sorusuna yanıt verememek MASAK ve BDDK denetiminde ciddi sorun yaratır. Skor + model versiyonu + eşik logu zorunlu.
Sıkça Sorulan Sorular
Canlılık testi mobil cihazda mı yoksa sunucuda mı çalışır?
İkisi de mümkün. Mobil tarafta çalışan modeller (TensorFlow Lite, Core ML) daha düşük gecikme sağlar ama model boyutu sınırlı, dolayısıyla daha az hassas. Sunucu tarafında çalışan modeller daha büyük ve daha hassas olabilir ama veriyi göndermek gizlilik kaygısı ve gecikme yaratır. Tipik mimari: mobil tarafta ön filtre (açıkça sahte olanları erken eler), sunucu tarafında ana model. Yüksek riskli kuruluşlarda sunucu tarafı modeli zorunlu.
Aktif canlılık kullanıcı sürtünmesini ne kadar artırır?
Tipik olarak %10-15 kullanıcı düşüşü. "Başınızı sağa çevirin" gibi basit aksiyonlarda düşüş daha az; "şu rakamları okuyun" gibi karmaşık challenge'larda daha yüksek. Pratik çözüm: aktif canlılığı sadece risk skoru yüksek müşterilerde tetiklemek, düşük riskli akışları pasif canlılıkla tamamlamak.
Canlılık testi engellilere uyumlu mu?
Pasif canlılık çoğu engellilik durumunda problemsiz çalışır. Aktif canlılıkta sorun çıkabilir: görme engelliler için "şu rakamı okuyun" challenge'ı mümkün değil; bazı yüz felci hastalarında "gözünüzü kırpın" doğru tetiklenmeyebilir. Erişilebilir tasarım için alternatif challenge tipleri (sesli, motor) sunulmalı veya operatör fallback'ı şart.
Canlılık testi başarısız olursa müşteri ne yapar?
Tipik akış: ilk başarısız denemede "tekrar deneyin" + ipucu (örn. "doğrudan ışığa karşı çekmeyin"). 2. denemede başarısızlıkta operatör görüntülü kuyruğuna düşer. Operatör görsel teyit yaparak müşteriyi kabul edebilir veya reddedebilir. Tam reddedilen müşteriler MASAK STR raporlama kriterleri açısından da değerlendirilir.
Canlılık testi sahibinin kontrol etmesi gereken metrikler neler?
- False Acceptance Rate (FAR): sahte kişi geçti — güvenlik açığı.
- False Rejection Rate (FRR): gerçek kişi reddedildi — dönüşüm kaybı.
- PAD model versiyonu ve son güncelleme tarihi.
- Saldırı tipi başına başarı oranı (deepfake, video replay, maske).
- Aylık spoof saldırı denemesi sayısı — trend izlemek için.
Legichain ile canlılık testi
Legichain Dijital KYC platformu NIST PAD Level 2 sertifikalı canlılık katmanını standart sunuyor; yüksek riskli akışlar için PAD Level 3 sertifikalı premium modüle yükseltme yapılabiliyor. Pasif canlılık + opsiyonel aktif challenge sistem default olarak hibrit çalışır; eşik kalibrasyonu müşteri tabanınızın FAR/FRR verileriyle dinamik. Saldırı tipi başına detaylı log (basılı fotoğraf, ekran replay, deepfake, maske) MASAK ve BDDK denetimi için hazır format. Canlılık skoru, model versiyonu, eşik ve karar audit zincirine yazılıyor; 10 yıl saklama ve hash zinciri bütünlüğü platforma gömülü. Yüksek riskli müşterilerde Legichain Görüntülü KYC modülü operatör görsel teyidi için doğrudan kuyruğa devreye sokuluyor.
