Adli Bilişimci Yaklaşımıyla Kimlik Numaraları

Adli Bilişimci Yaklaşımıyla Kimlik Numaraları

T.C. kimlik numaralarında biçim, sağlama, kayıt ve kişi doğrulamasını birbirinden ayırır. Sayısal örüntülerin akrabalık kanıtı olmadığı, veri sızıntısı ve adli kullanım sınırlarıyla birlikte açıklanır.

Bir sayının T.C. kimlik numarası biçimine uyması, kontrol basamaklarından geçmesi ve matematiksel olarak geçerli görünmesi, o sayının gerçek bir vatandaşa tahsis edildiğini göstermez. Daha da önemlisi, sayısal örüntüler arasındaki benzerlik tek başına akrabalık, soy bağı veya aynı nüfus kaydında bulunma kanıtı değildir.

Konuyla ilgili Github'ta paylaşılan algoritmaları inceledim. Bu çalışmaların çoğunlukla ilk bölümü, metin içinde T.C. kimlik numarasına benzeyen dizileri bulmak ve kontrol basamaklarını sınamak için kullanılabilecek deterministik bir doğrulama katmanı gibiydi. İkinci bölümü ise numaraların ilk tahsis biçiminden kaynaklanabilecek sayısal örüntüler üzerine kurulmuş deneysel bir hipotezi incelemekteydi. Kendi aileme ait bazı numaralarda beklenen benzerlikleri gözlemledim. Bununla birlikte ailedeki kayıtların çoğu aynı örüntüye uymadı. Bu gözlem, yöntemin akrabalık belirleyen bir algoritma değil, belirli tarihsel tahsis koşullarında bazen korelasyon üretebilen sınırlı bir deney olduğunu gösterdi.

Bu nedenle çalışma, üçüncü kişilerin akrabalarını bulmaya yarayan bir araç olarak değerlendirilmemelidir. Böyle bir kullanım hem teknik olarak güvenilmezdir hem de kişisel verilerin amaç dışı işlenmesi bakımından ciddi hukuki ve etik sorunlar doğurur.

MERNİS'in tarihsel gelişimi

Merkezi Nüfus İdaresi Sistemi'nin temeli 1972 tarihli Nüfus Kanunu dönemine kadar uzanır. Proje 1976'da planlanmış, 1980'de akademik ve teknik çalışma aşamasına geçirilmiş, 1982 sonrasında uygulama faaliyetleri başlamış ve 1990'ların ikinci yarısında hız kazanmıştır. T.C. kimlik numaralarının nüfus kayıtlarına verilmesi 28 Ekim 2000 tarihinde tamamlanmış, ilçe nüfus müdürlüklerinin çevrimiçi çalışmasına yönelik altyapı ise 2002 yılında devreye alınmıştır.

MERNİS ile kağıt ortamındaki nüfus kayıtları merkezi bir veri tabanına aktarılmış, vatandaşlara tekil bir numara verilmiş ve farklı kamu işlemlerinin ortak bir tanımlayıcı üzerinden yürütülmesi amaçlanmıştır. Sistem yalnız numara üretme mekanizması değildir. Nüfus olaylarının merkezi olarak tutulduğu idari kayıt altyapısıdır.

Nüfus ve Vatandaşlık İşleri Genel Müdürlüğünün açıklamasına göre T.C. kimlik numarası bilgi taşımayan 11 haneli bir sayıdır. Son iki basamak sağlama alanıdır. Aynı resmi açıklamada, 2000 yılında oluşturulan numara havuzundaki değerlerin ilçe, cilt, aile sıra numarası ve birey sıra numarasına göre sıralanmış vatandaş kayıtlarına tahsis edildiği belirtilir. Bununla birlikte Genel Müdürlük, bir kişinin numarasından başka bir akrabasının kimlik bilgilerinin elde edilemeyeceğini ve numaranın cinsiyet, yaş, din veya doğum yeri gibi anlamlı bilgiler içermediğini açıkça ifade eder.

Bu iki bilgi çelişkili değildir. Tahsis sırasında kullanılan kayıt sırası, bazı kayıt gruplarında sayısal yakınlık veya benzer dönüşüm örüntüleri oluşturabilir. Fakat bu durum, numaranın içinde akrabalık bilgisinin kodlandığı anlamına gelmez. İdari sıralamadan doğan korelasyon ile tanımlayıcının semantik olarak soy bağı taşıması farklı kavramlardır.

Dört doğrulama katmanı

T.C. kimlik numarasıyla çalışan yazılımlarda doğrulama sözcüğü çoğu zaman birbirinden farklı dört işlem için kullanılır.

İlk katman biçimsel süzmedir. Düzenli ifade, metin içinde uygun uzunlukta, yalnız rakamlardan oluşan ve temel biçim koşullarına uyan dizileri bulur. İncelediğim gerçeklenimde düzenli ifadenin rolü yalnızca budur. Bir numaranın geçerli olduğunu kanıtlamaz. Uzun bir metindeki açıkça ilgisiz sayıların sonraki aşamaya gönderilmesini önleyen ilk filtredir.

İkinci katman aritmetik doğrulamadır. İlk basamaklar üzerinden sağlama basamakları yeniden hesaplanır ve bulunan değerlerle karşılaştırılır. Sabit uzunluktaki bir numara için bu işlem sabit zamanda ve sabit bellekle tamamlanır:

Zaman karmaşıklığı: Theta(1)
Alan karmaşıklığı: Theta(1)

Bu kontrol yazım hatalarının bir bölümünü yakalar. Ancak sağlama kuralına uyan bir sayının mutlaka tahsis edilmiş olması gerekmez. Aynı matematiksel koşulları sağlayan, fakat hiçbir vatandaş kaydında bulunmayan değerler üretilebilir. Yerel yazılımın MERNİS veri tabanına erişimi olmadığı için tahsis durumunu bilmesi mümkün değildir.

Üçüncü katman kayıt doğrulamasıdır. Burada numara; ad, soyad ve doğum bilgileri gibi başka alanlarla birlikte yetkili nüfus kayıtları üzerinde sınanır. Nüfus ve Vatandaşlık İşleri Genel Müdürlüğünün resmi doğrulama ekranının yalnız numara istememesi, numaranın tek başına kişi doğrulamak için yeterli olmadığını gösterir.

Dördüncü katman gerçek kişi ve kimlik belgesi doğrulamasıdır. Elektronik Kimlik Doğrulama Sistemi, kartın yetkili makam tarafından verilmiş olduğunu, kartı kullanan kişinin kart sahibi olduğunu ve doğrulama sırasında ilgili yerde bulunduğunu sınamaya yönelik daha güçlü mekanizmalar içerir. Bu seviye, sağlama basamağı kontrolünden tamamen farklı bir güvence üretir.

Bu katmanlar birbirinin yerine kullanılmamalıdır:

Biçime uygunluk -> aritmetik tutarlılık -> nüfus kaydıyla eşleşme -> kişi ve belge doğrulaması

Birinci ve ikinci katman çevrimdışı çalışabilir. Üçüncü ve dördüncü katman yetkili kayıt veya kimlik doğrulama altyapısı gerektirir.

Akrabalık örüntüsü hipotezi

İncelediğim kodun deneysel bölümü, bir T.C. kimlik numarasından hareketle belirli aritmetik dönüşümler uygulayarak başka kontrol basamağı geçerli değerler üretir. Fonksiyonlara verilen adlar üst soy, alt soy veya akraba adaylarını çağrıştırsa da bu adlandırma, üretilen değerlerin gerçekten bu kişilere ait olduğunu kanıtlamaz. Kaynak kodun kendisi herhangi bir nüfus kaydına, soy bağı verisine veya yetkili servise başvurmaz.

Algoritma iki varsayımı birleştirir:

  1. İlk toplu tahsiste nüfus kayıt sırasının numara dağılımına etkisi bulunmuştur.
  1. Bu sıralamanın bazı aile kayıtlarında tekrarlanabilir sayısal ilişkiler oluşturabileceği düşünülmüştür.

Birinci varsayım resmi tarihçeyle kısmen desteklenir. İkinci varsayım ise ancak kontrollü deneylerle sınanabilecek bir araştırma hipotezidir. Resmi kaynak, numaraların aile sıra numarası dahil kayıt sırasına göre tahsis edildiğini belirtmekle birlikte bir numaradan akraba numarası çıkarılamayacağını açıkça vurgular.

Kendi aile verilerim üzerinde yaptığım sınırlı incelemede bazı değerlerin öngörülen sınıfa düştüğünü, önemli bölümünün ise düşmediğini gözlemledim. Bu sonuç beklenmedik değildir. Örüntü ilk tahsis anındaki kayıt sırasına bağlıysa, daha sonraki nüfus olaylarının, farklı kayıt gruplarının ve yeni tahsislerin aynı sayısal ilişkiyi koruması beklenemez. Bu değerlendirme, resmi tahsis açıklamasından hareketle yapılan bir çıkarımdır; yayımlanmış bir akrabalık kuralı değildir.

Ayrıca kontrol basamakları yalnız aritmetik tutarlılık üretir. Belirli bir adayın sağlama kontrolünden geçmesi, onun gerçek bir kişiye ait olduğunu veya incelenen kişiyle akraba olduğunu göstermez. Aday uzayı büyüdükçe tesadüfen geçerli görünen değerlerin bulunması doğaldır.

Bu nedenle yöntemin iki temel hata türü vardır:

Yanlış pozitif: Akraba olmayan veya hiç tahsis edilmemiş bir değerin aday olarak gösterilmesi.

Yanlış negatif: Gerçek bir akrabanın beklenen sayısal örüntüyü taşımaması.

Akrabalık çıkarımında her iki hata da kritiktir. Özellikle yanlış pozitif sonuçlar, ilgisiz üçüncü kişilerin kişisel verilerinin araştırılmasına ve hatalı isnatlara yol açabilir. Bu nedenle algoritma üçüncü kişiler üzerinde kullanılmamalı, sonuçları soy bağı kanıtı gibi sunulmamalıdır.

Hukuken ve teknik olarak geçerli soy bağı bilgisi, yetkili nüfus kayıtlarından veya kişinin kendi kimliği doğrulandıktan sonra erişebildiği resmi soyağacı hizmetlerinden elde edilir. e-Devlet üzerindeki soyağacı hizmetinin kimlik doğrulaması gerektirmesi de bu bilginin kamusal bir sayı örüntüsü olarak değerlendirilmediğini gösterir.

Algoritmik değerlendirme

Kaynak kod üç ayrı algoritmik görev içerir.

Metin içinden numara çıkarma işlemi, düzenli ifadeyle aday bölgeleri bulur ve her adayı aritmetik kontrolden geçirir. Metin uzunluğu n, bulunan aday sayısı m olduğunda genel maliyet yaklaşık olarak şöyledir:

Metin tarama: O(n)
Aday kontrolleri: O(m)
Toplam: O(n + m)

Her aday sabit uzunlukta olduğundan sağlama hesabı sabit maliyetlidir. Sonuçların gecikmeli üretilmesi, bütün adayların önceden bir listeye alınmasını gerektirmez.

Tek bir numaranın biçim ve sağlama kontrolü sabit zamanlıdır. Buradaki düzenli ifade doğrulayıcı değil, yalnız ön süzgeçtir. Asıl aritmetik kontrol sonraki aşamada yapılır. Bu ayrım, belge ve disk incelemelerinde yanlış pozitif oranını azaltmak için uygundur.

Deneysel aday üretme bölümü ise istenen aday sayısı k için doğrusal zamanda çalışır:

Zaman karmaşıklığı: O(k)
Yardımcı alan: O(1)

Algoritma her adımda sabit sayıda aritmetik işlem yapar ve sonuçları gecikmeli üretir. Hesaplama bakımından verimlidir. Buna karşılık semantik güvencesi zayıftır. Bir algoritmanın hızlı çalışması, yaptığı çıkarımın doğru olduğunu göstermez. Bu çalışma bunun açık bir örneğidir.

Kaynakta ayrıca aritmetik olarak geçerli görünen test değerleri üretmeye yönelik bir bölüm bulunur. Bu tür değerlerin gerçek sistemlerde test verisi olarak kullanılması sakıncalıdır. Üretilen bir değer tesadüfen gerçek bir kişiye tahsis edilmiş olabilir. Güvenli test ortamlarında açıkça ayrılmış sentetik veri kümeleri, maskeleme veya kurum tarafından belirlenmiş test kimlikleri kullanılmalıdır.

Veri sızıntıları ve panel riski

T.C. kimlik numarasının güvenlik riski, kontrol basamağı algoritmasının bilinmesinden kaynaklanmaz. Kontrol algoritması uzun zamandır kamu kurumları ve yazılım sistemleri tarafından biçimsel doğrulama amacıyla kullanılmaktadır. Asıl risk, sabit ve yaşam boyu değişmeyen bu tanımlayıcının ad, soyad, doğum tarihi, adres, telefon, finansal bilgi ve aile kayıtları gibi başka veri kümeleriyle birleştirilmesidir.

KVKK, T.C. kimlik numarasını genel nitelikli kişisel veri olarak değerlendirmekle birlikte, bu numaranın başka kişisel verilere erişim sağlayabilmesi nedeniyle telefon numarası gibi tanımlayıcılardan daha yüksek zarara yol açabileceğini belirtir. Kurumun rehberi, daha az müdahaleci yöntemlerin tercih edilmesini, veri minimizasyonunu ve gerekli teknik ve idari önlemlerin alınmasını önerir.

Kamuoyunda panel olarak adlandırılan sistemler genellikle farklı kaynaklardan elde edilmiş kişisel verileri tek arama arayüzünde birleştirir. Böyle bir arayüzde bir numaranın kontrol basamağından geçirilmesi yalnız veri temizleme adımıdır. Esas tehlike, aynı tanımlayıcının farklı veri kümeleri arasında birleştirme anahtarı olarak kullanılmasıdır.

2016 yılında yayımlanan bir akademik çalışma, sızdırıldığı bildirilen geniş bir vatandaş veri kümesinin başka kaynaklarla otomatik olarak birleştirilmesi halinde görünürde bulunmayan bazı kişisel bilgilerin de çıkarılabildiğini göstermiştir. Çalışmanın temel sonucu, sızan ham alanlardan çok veri kümeleri arasındaki bağlanabilirliğin mahremiyet riskini büyüttüğüdür.

Bununla birlikte her panel iddiası doğrudan MERNİS veya e-Devlet sisteminden yeni bir sızıntı gerçekleştiğini kanıtlamaz. Nüfus ve Vatandaşlık İşleri Genel Müdürlüğü ile dönemin Cumhurbaşkanlığı Dijital Dönüşüm Ofisi, 2022'de gündeme gelen belirli iddialar için kendi altyapılarında veri sızıntısı tespit edilmediğini ve dolaşıma sokulan bazı görsellerin oltalama veya sahtecilik amacıyla üretildiğini açıklamıştır.

Diğer taraftan KVKK kararları, banka, sigorta, ulaşım, sağlık ve teknoloji sistemlerinde T.C. kimlik numaralarının etkilendiği gerçek veri ihlallerini belgelemektedir. Bir sigorta şirketine ilişkin kararda test sunucusunun yeterince korunmaması, güçlü kimlik doğrulama bulunmaması ve kişisel verilerin şifrelenmemesi açık güvenlik eksikleri arasında sayılmıştır.

Bu tablo, panel verilerinin tek ve kesin bir kaynağa atfedilmesini zorlaştırır. Veriler farklı dönemlerdeki ihlallerden, yetkisiz çalışan sorgularından, kamuya açık belgelerden, oltalama olaylarından veya eski veri kümelerinin birleştirilmesinden oluşabilir. Kaynağı doğrulanmamış bir arayüzde güncel görünen bir kaydın bulunması, merkezi nüfus sisteminin ihlal edildiğini tek başına kanıtlamaz.

Siber güvenlik açısından korunması gereken yalnız veri tabanı değildir. Sorgu yetkileri, çalışan davranışları, test ortamları, loglar, dışa aktarımlar, dokümanlar ve API istemcileri aynı tehdit modeline dahil edilmelidir. KVKK kararlarında bir banka çalışanının üçüncü kişilerden aldığı T.C. kimlik numaraları üzerinden yetkisiz sorgulamalar yapması, içeriden gelen tehdidin de en az dış saldırılar kadar önemli olduğunu göstermektedir.

Adli bilişimde çevrimdışı kullanım

T.C. kimlik numarası doğrulama algoritması, yetkili bir adli bilişim incelemesinde merkezi veri tabanına bağlanmadan yararlı olabilir. Kullanım amacı kişiyi kesin olarak tanımak değil, büyük veri hacmi içinde incelemeye değer artefaktları ayırmaktır.

Disk imajları, bellek dökümleri, e-posta kutuları, uygulama logları, yapılandırma dosyaları ve doküman koleksiyonlarında çok sayıda 11 haneli sayı bulunabilir. Düzenli ifade ilk adayları seçer. Sağlama kontrolü ise telefon, sipariş, barkod veya rastgele sayaç gibi ilgisiz sayıların önemli bir bölümünü eler.

Bu işlem şu sonucu üretir:

Bu dizi T.C. kimlik numarası yapısıyla uyumlu olabilir.

Şu sonucu üretmez:

Bu dizi kesin olarak belirli bir vatandaşa aittir.

Adli atıf için artefaktın bağlamı gerekir. Dosya yolu, kayıt zamanı, uygulama türü, çevresindeki ad ve iletişim alanları, veri tabanı şeması, log kaynağı ve olay zinciri birlikte değerlendirilmelidir. Aritmetik doğrulama yalnız yardımcı bulgudur.

Bu yöntem özellikle veri sınıflandırma ve ihlal kapsamı belirleme çalışmalarında kullanılabilir. Örneğin bir olay müdahale ekibi, dışarı aktarılan dosyalarda kaç adet T.C. kimlik numarası benzeri kayıt bulunduğunu yaklaşık olarak belirleyebilir. Ancak ham numaralar raporlara gereksiz yere yazılmamalı, maskeleme uygulanmalı ve yalnız yetkili personelin erişebileceği delil deposunda tutulmalıdır.

Kimlik Paylaşımı Sistemi'nde kurumların hangi sorguları yapabileceği ve hangi bilgilere ulaşabileceği yetkilendirmeyle belirlenir; işlemlerin geri izleme kayıtları tutulur. Çevrimdışı adli analiz araçları da aynı ilkelere yaklaşmalıdır: amaç sınırlaması, erişim kontrolü, sorgu günlüğü ve denetlenebilirlik.

Araştırmanın doğru sınırı

İncelediğim gerçeklenimin doğrulama ve metin tarama bölümü, belirli bir teknik problemi açık ve verimli biçimde çözer. Sabit zamanlı sağlama kontrolü, doğrusal metin taraması ve gecikmeli sonuç üretimi algoritmik olarak güçlü tercihlerdir.

Akrabalık örüntüsü bölümü ise aynı kesinlik düzeyine sahip değildir. Bu bölüm, tarihsel tahsis düzeninden hareketle oluşturulmuş deneysel bir hipotezdir. Kendi aile verilerimde bazı eşleşmeler görmem, yöntemi genelleştirmek için yeterli değildir. Örneklem küçük, seçilmiş ve aynı aile çevresine bağlıdır. Kontrol grubuyla, farklı dönemlerde tahsis edilmiş kayıtlarla ve resmi soy bağı verisiyle karşılaştırılmadan doğruluk oranı ileri sürülemez.

Böyle bir araştırma akademik olarak yürütülecekse en az şu ölçütler gerekir:

Verisi kullanılan herkesin açık bilgisi ve uygun hukuki dayanak

Ham numaraların yayımlanmaması

Aile ve aile dışı kontrol gruplarının ayrılması

Yanlış pozitif ve yanlış negatif oranlarının birlikte raporlanması

Tahsis dönemi ve kayıt yapısının karıştırıcı değişken olarak incelenmesi

Sonuçların akrabalık kanıtı olarak kullanılmaması

Veri minimizasyonu ve güvenli imha planı

Çalışmanın savunulabilir kullanım alanı, kimlik numarası yapısının tarihsel ve algoritmik özelliklerini incelemek, yerel doğrulama katmanı geliştirmek ve yetkili adli bilişim çalışmalarında olası kişisel veri artefaktlarını sınıflandırmaktır. Üçüncü kişilerin aile bağlarını araştırmak veya aday numaralar üretip sorgulamak bu kapsamın dışındadır.

T.C. kimlik numarasının son iki basamağı veri bütünlüğüne yardımcı olur. İlk tahsis sırası bazı kayıtlarda sayısal korelasyon bırakmış olabilir. Fakat bu iki özellik bir araya geldiğinde soy bağı sistemi ortaya çıkmaz. Kontrol basamağı kimlik doğrulama değildir, sayısal yakınlık akrabalık değildir ve bir panelde kayıt bulunması verinin kaynağını kanıtlamaz.

Algoritmik olarak en önemli sonuç da budur: Bir veri yapısında örüntü bulunması, o örüntünün aradığımız olguyu temsil ettiğini göstermez. Hesaplama, aday üretebilir. Akrabalık ve kimlik ise yalnız yetkili kayıt, hukuka uygun erişim ve bağımsız doğrulama ile belirlenebilir.

Bu sayfanın QR kodu