Hollanda – Teknoloji Bloğu Yazısı- Hash Kırpmada Pratik Sorunlar – 30.04.2021
Teknoloji Bloğu Yazısı– Hash Kırpmada Pratik Sorunlar
30 Nisan 2021
Hollanda Veri Koruma Kurumu (AP) düzenli olarak, “hashlendiği ve kırpıldığı” için anonim (ve bu nedenle kişisel veri olmayan) veri işlediklerini belirten kuruluşlarla ilgilenmek zorunda kalmaktadır. Uygulamada AP, bu kuruluşların sıklıkla anonimleştirme şekillerinde hata yaptıklarını, bu nedenle de verinin anonim hale gelmediğini ifade etmektedir. Bu blog yazısında, AP teknoloji uzmanları Victor Klos ve Jonathan Ellen, bu konuyu teknoloji meraklılarına açıklamaktadır.
Lütfen not edin: Bu tekniklerin yukarıda bahsedilen doğru uygulaması zordur ve sıklıkla somut duruma göre değişir. Bu teknik ya da hukuki bir tavsiye değildir.
k- anonimliği
Verinin anonimleştirilmesinde yaygın bir metod k-anonimliktir. Bu yöntemde bir veri kümesini her özellik kombinasyonunun her zaman için en az bir kere oluşacağı şekilde değiştirirsiniz.
Doğru koşullar altında ve k yeterince geniş ise, (verinin ilgili olduğu) insanlara ulaşmak imkansızdır. Böylece her kişi bir eşitler grubunun parçasıdır. Sonuçta diğer tüm kişiler (k-1) aynı özelliklere sahiptir.
Kesme (Kırpma)
Grup yaratmanın bir yolu özellikleri yuvarlamaktır. Örneğin, şayet bir veri setindeki tüm yaşları onluklara yuvarlarsanız, gruplarınız otomatik olarak oluşacaktır. Böylece 29 yaşındaki bir kişi, 21 yaşındaki biriyle veya 27 yaşındaki biriyle 20 yaş adı altında aynı gruba düşecektir.
Ufak bir hayal gücüyle, bu yuvarlama keserek (kırparak) de yapacağınız bir işlemdir. Örneğin 26 yaşı alın. Sağ taraftan 1 sembolü yok ederseniz sonuçta elinizde 2 kalacaktır.
Bu kesmeyi yaptıktan sonra, 20-29 yaş aralığındaki herkes aynı gruba düşecektir. (Uygulamaya bağlı olarak, kestikten sonra “o” gibi sonucu değiştirmeyen farklı bir sembol de ekleyebilirsiniz).
İlk hash
Bir kişiyi ya da IP adresi, MAC adresi, IMSI numarası ya da benzeri gibi bir kişiyle ilgili cihazı tanımlayıcıya geldiğinde durum değişir.
Örneğin, kırpılmış bir IP adresinden hala bir kimsenin INTERNET servis sağlayıcısını ve bazen de bu kişinin yaşadığı bölgeyi görebilirsiniz. Bu tür çıkarımlardan kaçınmak için, bu tür veriler sıklıkla hashlenmektedir.
Hashlanmiş telefon numarası görseli
Dahası, tanımlayıcının kendi içinde (IP adresleri, IMSI numaraları, MAC adresleri vb.) bir anlamı olup olmaması ya da anlamsız olması (hash değerleri, rastgele sayılar veya sembol dizileri vb.) bireylerin takip (tespit) edilebilirliğinde çoğu zaman herhangi bir fark yaratmaz.
Hashleri Kırpmak
Öyleymiş gibi görünsele dahi hash değerleri rastgele sayılar değildirler. Ayrıca çarpıcı olan bir diğer husus da çok sayıda sembol içermekte olmalıdır. Diğer bir değişle, sonuç olarak çok sayıda olası hash değeri vardır.
Ve bu aynı zamanda bir tuzaktır: çok sayıda olası çıktı olmasına rağmen, genellikle sınırlı bir sayıda “girdi” vardır veya bazen daha şeklidir: Uygulamada hash fonksiyonu aralığı, çoğu zaman (ilgili) alandan (domain) kat kat daha büyüktür.
Örneğin, Hollanda’da toplamda yaklaşık 54 milyon cep telefonu numarası yayınlanmıştır. Bu kulağa çok gibi gelebilir, ancak bu sha254- hash olasılığı sayısının yalnızca ufak bir bölümüdür. Ve işte sezgimizin bizi hayal kırıklığına uğrattığı yer de burasıdır.
Hashlenmemiş bir telefon numarası ile 2 adet rakamın kırpılması 100 taneye kadar telefon numarasından oluşan gruplara neden olur. Veri kümesinde kaç tane numara olduğuna bağlı olarak bu k > 1 ile sonuçlanır.
Numara dizilerine bağlı olarak sonrasında yapılacak daha detaylı incelemeler, 2 rakamın kırpılmasının yeterli olup olmadığını veya 3,4 veya daha fazla rakam kırpılması gerekip gerekmediğini gösterecektir.
Hashlemeden sonraki durum ise çok farklıdır. Sonrasında bazı semboller kırpılsa dahi her bir hash değeri eşsizdir.
Bazı sembollerin kırpıldığı hashlenmiş telefon numaralanın görseli
Peki ama hashlenmiş özellikleri gruplara ayırmak için ne kadar kırpmanız gerekiyor? Cevap veri kümesine bağlıdır, ancak çoğu durumda neredeyse her şeyi kırpmanız gerekir.
Örneğin, yukarıdaki görselde yer alan ilk telefon numarasını alın. Bu numara, ikinci telefon numarasından yalnızca 1 rakam farklı olmasına rağmen, hash değerleri tamamen farklıdır.
Ve tüm veri kümesi, yukarıdaki 4 adet örnekten oluşsa dahi, hashlenmiş telefon numaralarından bazı sembolleri keserek dahi gruplar yaratmak imkansızdır.
Dolayısıyla doğru soru ne kadar kırpabileceğiniz değil, ne kadarını tutabileceğinizdir.
Sonuç olarak, hashlenmiş özelliklerin yeterli sayıda sembolünün kırpılmamasının sonucu nedir? Ortada hala kişisel veri içeren bir veri seti bulunur.
Zira hash değerinin çok az kırpılması arkasında eşsiz tanımlayıcılar bırakır. Ve bu durumda da anonimleştirilmiş veri değildir.