Nasıl çalışır?
VeritaDLP\'nin teknik kalbinde 3-katmanlı içerik tarama pipeline\'ı vardır. Ham metin RAM\'de işlenir, diske yalnızca mask\'lı özet yazılır. KVKK uyumu mimarinin yan etkisi değil, ana tasarım hedefidir.
Olay akışı — uçtan uca
Çalışan transfer ister → bulut motor tarar → politika karar verir. Ham içerik diske inmez, sadece mask'lı özet saklanır.
12 saniyede bir tekrarlanır
3 katman + güvenlik ağı
- 1
Regex pass
Yapısal PII'ler (TC kimlik, VKN, IBAN, kredi kartı, telefon, e-posta, plaka) deterministik regex'lerle yakalanır. Yüksek doğruluk, hızlı (mikrosaniye).
Custom Türkiye recognizer'ları + Presidio Analyzer
- 2
NER (Named Entity Recognition) pass
Türkçe BERT modeli (savasy/bert-base-turkish-ner-cased) ile ad, soyad, adres yakalanır. PERSON F1 skoru ~%90+.
HuggingFace transformers + Presidio NER recognizer
- 3
Sözlük pass
NER'in kaçırdıklarını yakalar: TÜİK 1.000 en yaygın ad + 1.000 soyad listesi, 81 il + ~970 ilçe, cadde/sokak/mahalle pattern'leri.
In-memory aho-corasick + Türkçe normalize
- 4
Safety net (güvenlik ağı)
Tanımsız büyük harfli kelime oranı %10'u geçerse — yabancı dil veya egzotik format şüphesi — tüm özet "[icerik_analiz_edilemedi]" ile değiştirilir. False positive yerine veri sızdırmamak ilk öncelik.
Karakter dağılımı + N-gram analiz
Maskeleme — partial visibility
Tasarım prensibi: kişi tanımlanamasın ama veri tipi/bağlamı anlaşılsın. Forensic analist için bağlam, kişisel veri için mahremiyet.
| PII Tipi | Ham (asla saklanmaz) | Mask\'lı (saklanan) |
|---|---|---|
| TC Kimlik | 12345678901 | 123******01 |
| VKN | 1234567890 | 12*****890 |
| IBAN | TR33 0006 1005 1978 6457 8413 26 | TR33 0006 **** **** **** **** 26 |
| Kredi kartı | 4111 2222 3333 4444 | 4111 22** **** 4444 |
| Telefon | 0532 555 33 22 | 0532 *** ** 22 |
| E-posta | mehmet@firma.com | m*****@firma.com |
| Soyad | Özbakır | Ö*****r |
| Adres | Konak/İzmir, Atatürk Cad. No:5 | *****/İzmir, *** Cad. No:* |
Ad alanı tam bırakılır — Türkçede ad popülasyonu yüksek, tek başına tanımlayıcı değil. Plaka için sadece il kodu, adres için sadece şehir açık.
Tam bir cümle örneği
Ham (sadece RAM\'de, asla diske yazılmaz)
Mehmet Özbakır 0532 555 33 22 numarasından aradı. TC: 12345678901, Konak/İzmir adresinden 15.000 TL fatura talep ediyor. Kart: 4111 2222 3333 4444
Mask\'lı (diske yazılan)
Mehmet Ö*****r 0532 *** ** 22 numarasından aradı. TC: 123******01, *****/İzmir adresinden 15.000 TL fatura talep ediyor. Kart: 4111 22** **** 4444
Deterministic masking
Aynı TC kimlik (örn. 12345678901) her zaman aynı maskeyle (örn. 123******01) çıkar. Forensic analist iki ayrı olayda aynı kişiyi (aynı TC) kimliğini bilmeden fark edebilir. Bu, forensic değer için kabul edilen bir tradeoff\'tur; KVKK aydınlatma metninde açıkça belirtilir.
Arşiv mimari diyagramı
Ham içeriğin agent'ta nasıl üretildiği, masked özetin nereye yazıldığı, audit log'un ne kadar saklandığı ve KVKK Madde 7 kapsamında tenant silinince verinin nasıl tamamen yok olduğu — uçtan uca veri yaşam döngüsü.
Detay için: docs.veritadlp.com → Mimari Referansı
Bağlantı katmanı
Agent ↔ Bulut — mTLS + Tenant CA
VeritaDLP\'de her tenant kendi intermediate sertifika otoritesine (CA) sahiptir. Root CA offline tutulur, sadece yeni tenant onboarding\'inde kullanılır. Bir tenant\'ın intermediate\'ı sızsa diğer tenant\'lar etkilenmez — izolasyon mimarinin temelinde.
Agent her saatte CRL (Certificate Revocation List) çeker. Eğer kendi cert\'i revoke edilmişse otomatik olarak durur. Tenant abonelik iptal edilirse 1 saat içinde tüm o tenant\'ın agent\'ları durur — manuel müdahaleye gerek yok.
Agent cert\'i 90 gün geçerlidir. 60. gün otomatik yenileme talebi gönderir. Eski cert\'ler revoke edilmez ama yeni cert üretildikten sonra kullanılmaz — saldırı yüzeyi minimize.
Sunucu ↔ Agent kanalı sadece port 8443 üzerinden mTLS ile konuşur. Dashboard (port 443) bambaşka bir kanal — TLS sertifikası Let\'s Encrypt, browser dostu. Agent bu kanalla muhatap değil.
Performans
Çalışan PC\'sinde fark edilmez
Rust ile yazılmış native agent — Python ve .NET tabanlı rakiplerin kullandığı kaynağın bir kısmında çalışır.
| Metrik | VeritaDLP | Tipik kurumsal DLP |
|---|---|---|
| Sürekli RAM | 30-60 MB | 200-500 MB |
| Boştayken CPU | <%1 | %3-8 |
| Olay başı CPU | ~%2-5 (50ms) | %15-30 |
| Disk yazma | ~1 KB/olay (sadece masked) | 10-100 KB/olay |
| İlk kurulum boyut | 25 MB MSI | 120-300 MB |
| Boot etkisi | <2 saniye gecikme | 10-30 saniye |
| Günlük outbound trafik | ~250 KB (telemetri+events) | 2-5 MB |
| 200 PC için sunucu | 2 VPS (€11/ay) | Dedicated server ($500+/ay) |
KVKK Mimari
KVKK uyumu sonradan yamalama değil
KVKK Madde 4(2) — "amaçla bağlantılı, sınırlı ve ölçülü" — VeritaDLP mimarisinin ilk kuralıdır. Dosya içeriği RAM\'de işlenir, diske hiçbir koşulda orijinal hâliyle inmez. Bu kararlı bir tasarım kuralıdır, opsiyonel ayar değil.
Mask işlemi deterministictir. Aynı TC kimlik (örnek 12345678901) iki ayrı olayda aynı şekilde maskelenir (123******01). Bu sayede forensic analist iki ayrı olayda aynı kişiyi (anonim olarak) eşleştirebilir. Tradeoff: kimlik takibi riski var ama açıkça aydınlatma metninde belirtilir. Detay: Deterministic Masking.
Pipeline herhangi bir aşamada exception fırlatırsa özet [icerik_analiz_edilemedi] yazılır. Fail-closed: şüpheli durumda saklama yerine boş bırakma. Ham metin hiçbir senaryoda persist edilmez — tek bir kod yolu (save_event()) bunu garanti eder.
Memory hijyeni: işlem bittiğinde ham metin Python del + bytearray overwrite + GC hint ile silinir. RAM dump alınırsa bile kalıntı düşük. Detaylı KVKK eşlemesi için KVKK Uyumu sayfası.
Teknik derin dalış
- DLP Pipeline'ı Nasıl Çalışır? — uçtan uca akış
- Regex + NER ile Türkçe PII Tespiti — algoritmik detay
- Hassas Veri Tespiti — 3 Katmanlı Pipeline
- DLP Veri Maskeleme — Partial Visibility
- Deterministic Masking — Forensic Değer
- Metadata-First Mimari — Ham Veri Saklamama
- DLP False Positive Azaltma
- Endpoint / Network / Cloud DLP Farkı
- Maskeleme Demo — İnteraktif
Bugün başlayın, 5 dakikada kurun
Kredi kartı gerekmez. 15 gün ücretsiz deneme — istemediğin sürece ücret alınmaz.