Native KYC SDK
Kimlik doğrulamayı mobil uygulamanın içinde, native olarak yürütür. Web KYC SDK'sının iki modu çekirdek düzeyde korunur; native ek olarak NFC, cihaz bütünlüğü ve canlılık modülleri getirir.
| Platform | Paket |
|---|---|
| Android | com.lunixi.kyc — Gradle modülleri |
| iOS | LunixiKyc — Swift Package |
İki mod
val kyc = LunixiKyc(
environment = env,
config = LunixiKycConfig(theme = MERCHANT, locale = "tr"),
)
kyc.start(activity = this, handoffToken = token, listener = this)Tüm rehberli akışı SDK çizer. iOS'ta aynı isimle (LunixiKyc) birebir eşdeğeri vardır.
Hazır UI çekirdeğin üstünde ince bir katmandır. Adım türetme, imzalama, tekrar-koruması ve verdict'in tamamı çekirdekte yaşar — Mode 1'den Mode 2'ye geçtiğinizde davranış değişmez, yalnız ekranı siz çizersiniz.
Handoff token — merchant token'ı cihaza inmez
Merchant bearer token'ı SDK'ya verilmez. SDK'ya geçirdiğiniz tek şey kısa ömürlü bir handoff token'dır; SDK onu imzalı bootstrap ile takas eder.
Yani uygulamanız ele geçirilse bile saldırganın elinde merchant kimlik bilginiz olmaz — yalnız o oturuma ait, süresi dolacak bir devir jetonu bulunur.
Verdict'i istemci yazmaz
onVerified diye bir geri çağırım yoktur — bilinçli olarak. Terminal geri çağırım onFinished'dir ve sunucudan gelen durumu taşır (watchStatus üzerinden). İstemci bir doğrulama sonucunu üretemez, yalnız taşır.
Tamamen ele geçirilmiş bir cihaz bile doğrulamayı taklit edemez; çünkü sonucu yazan taraf o değildir.
Headless istemci yüzeyi
| Metot | Ne yapar |
|---|---|
start() | Oturumu başlatır, KycSessionSnapshot döner |
steps() | Sunucunun türettiği adım listesi |
getCapturePolicy() | Yakalama politikası (hangi belge, hangi kalite) |
setJurisdiction(...) · setPrimaryDocumentType(...) | Yargı bölgesi ve belge tipi |
submitProfileData(fields) | Profil alanları |
submitConsent(consent) | Rıza kaydı |
uploadDocument(upload) | Belge yükleme |
uploadLiveness(upload) | Canlılık kanıtı |
submitNfcEvidence(evidence) | NFC çipinden okunan kanıt |
submitVerification() | Doğrulamayı gönderir |
requestManualReview() | İnsan incelemesi ister |
watchStatus() | Terminal durumu akışı (Flow<KycTerminalStatus>) |
refreshSession() · getSession() | Oturumu tazeler / anlık görüntü |
Modüller ayrı paketlenir
Her yetenek kendi kütüphanesindedir; yalnız kullandığınızı bağlarsınız.
| Modül | Ne yapar |
|---|---|
KycCore | Headless çekirdek — oturum, imzalama, adım türetme |
KycUI | Hazır ekranlar |
DocumentCapture | Belge yakalama |
Nfc | Çipli kimlik okuma |
Liveness | Canlılık |
FaceQuality | Yüz kalitesi ölçümü |
DeviceIntegrity | Cihaz bütünlüğü / attestation |
KycLiveVideo | Görüntülü doğrulama (yalnız bunu bağlarsanız gelir) |
Görüntülü doğrulama ayrı tutulur. Headless çekirdek, yakalama ve UI hedefleri onu hiç çekmez — canlı video bağımlılığını yalnız o modülü açıkça bağlarsanız alırsınız. Bu, video kullanmayan bir uygulamanın paket boyutunu ve izin yüzeyini gereksiz büyütmez.
Web KYC SDK'sıyla ilişkisi
Aynı akış, aynı adımlar, aynı sunucu sözleşmesi. Native'in getirdiği fark:
| Web | Native | |
|---|---|---|
| NFC çip okuma | ✗ | ✓ |
| Cihaz attestation'ı | ✗ | ✓ |
| Donanım-bağlı imza | ✗ | ✓ |
| Yakalama kalitesi kontrolü | sınırlı | FaceQuality + DocumentCapture |
Web tarafı için: Web KYC SDK
İlgili
- Mobil SDK Genel Bakış — köprü/native ayrımı ve paketler
- Mobile Threat SDK — işlem anı tehdit telemetrisi
- Web KYC SDK — tarayıcı eşdeğeri