Algoritmalar, biz çevrimiçi alışveriş yaparken ürünler önerir veya streaming apps’lerde müzik dinlerken beğenebileceğimiz şarkıları önerir. Bu algoritmalar; özel öneriler oluşturmak için geçmiş satın almalarımız ve tarama geçmişimiz gibi kişisel bilgileri kullanarak çalışır. Bu tür verilerin hassas doğası, gizliliği korumayı son derece önemli kılar, ancak bu sorunu çözmek için mevcut yöntemler, çok büyük miktarlarda hesaplama ve bant genişliği gerektiren ağır şifreleme araçlarına dayanır. MIT araştırmacıları buna daha iyi bir çözüm düşündüler; çok yavaş bir ağ üzerinden bir akıllı telefonda çalışabilecek kadar verimli, gizliliği koruyan bir protokol geliştirdiler. Teknikleri, tavsiye sonuçlarının doğru olmasını sağlarken kişisel verileri korur. Kullanıcı gizliliğine ek olarak, protokolleri; kötü niyetli bir ajan bir veritabanını gizli bilgileri açığa çıkarmak için kandırmaya çalışsa bile, sızıntı olarak bilinen veritabanından yetkisiz bilgi aktarımını en aza indirir. Yeni protokol, bir sağlık hizmeti sağlayıcısının, benzer semptomları olan diğer hastalar için bir veritabanı aramak için bir hastanın tıbbi geçmişini kullandığı veya bir şirketin, aşağıdaki koşullar altında kullanıcılara hedefli reklamlar sunduğu gibi, veri sızıntılarının kullanıcı gizliliği yasalarını ihlal edebileceği durumlarda özellikle yararlı olabilir.
Bilgisayar Bilimi ve Yapay Zeka Laboratuvarı(CSAIL) Araştırmacı Sacha Servan-Schreiber: “Bu gerçekten zor bir problem. Protokolümüze ulaşmak için bir dizi kriptografik ve algoritmik hileye güvendik.”
Algoritmik öneri motorlarının kalbindeki teknik; veri tabanında bir sorgu noktasına en yakın veri noktasını bulmayı içeren en yakın komşu araması olarak bilinir. Yakınlarda eşlenen veri noktaları benzer öznitelikleri paylaşır ve komşular olarak adlandırılır. Bu aramalar, veri noktası özniteliklerinin kısa temsillerini içeren çevrimiçi bir veritabanına bağlı bir sunucuyu içerir. Bir müzik akışı hizmeti söz konusu olduğunda; özellik vektörleri olarak bilinen bu nitelikler, farklı şarkıların türü veya popülerliği olabilir. Bir şarkı önerisi bulmak için istemci (kullanıcı), sunucuya, kullanıcının sevdiği bir müzik türü veya dinleme alışkanlıklarının sıkıştırılmış bir geçmişi gibi belirli bir özellik vektörü içeren bir sorgu gönderir. Sunucu daha sonra, gerçek vektörü açıklamadan, istemcinin sorgusuna en yakın olan veri tabanındaki bir özellik vektörünün kimliğini sağlar. Müzik akışı durumunda; bu kimlik muhtemelen bir şarkı adı olacaktır. İstemci, önerilen şarkı başlığını, onunla ilişkili özellik vektörünü öğrenmeden öğrenir.
Araştırmacı Langowski: “Sunucu, hesaplamayı yaptığı sayıları görmeden bu hesaplamayı yapabilmeli… Aslında özellikleri göremiyor, ancak yine de size veritabanındaki en yakın şeyi vermesi gerekiyor…” diyor. Bunu başarmak için araştırmacılar, aynı veri tabanına erişen iki ayrı sunucuya dayanan bir protokol oluşturdular. İki sunucu kullanmak, süreci daha verimli hale getirir ve özel bilgi alma olarak bilinen bir şifreleme tekniğinin kullanılmasını sağlar. Servan-Schreiber, bu tekniğin bir müşterinin ne aradığını açıklamadan bir veritabanını sorgulamasına izin verdiğini açıklıyor.
Güvenlik Zorlukları
Ancak özel bilgi alımı istemci tarafında güvenli olsa da, kendi başına veritabanı gizliliği sağlamaz. Veritabanı; istemci için, tipik olarak daha sonra istemci tarafından kaba kuvvet kullanılarak kazanılan bir dizi aday vektör (muhtemelen en yakın komşular) sunar. Ancak, bunu yapmak müşteriye veritabanı hakkında çok şey gösterebilir. Ek gizlilik zorluğu, müşterinin bu ekstra vektörleri öğrenmesini engellemektir. Araştırmacılar, ilk etapta fazladan vektörlerin çoğunu ortadan kaldıran bir ayarlama tekniği kullandılar ve daha sonra, gerçek en yakın komşu dışındaki herhangi bir ek veri noktasını gizlemek için, habersiz maskeleme olarak adlandırdıkları farklı bir numara kullandılar. Bu, veritabanı gizliliğini verimli bir şekilde korur, böylece istemci, veritabanındaki özellik vektörleri hakkında hiçbir şey öğrenmez. Bu protokolü tasarladıktan sonra, doğruluğu en üst düzeye çıkarmak için algoritmanın nasıl ayarlanacağını belirlemek için dört gerçek dünya veri kümesi üzerinde özel olmayan bir uygulamayla test ettiler. Ardından, bu veri kümeleri üzerinde özel en yakın komşu arama sorguları yapmak için protokollerini kullandılar. Teknikleri, 10 milyondan fazla öğe içeren veritabanlarında bile, sorgu başına birkaç saniye sunucu işleme süresi ve istemci ile sunucular arasında 10 megabayttan daha az iletişim gerektirir. Buna karşılık, diğer güvenli yöntemler gigabaytlarca iletişim veya saatlerce hesaplama süresi gerektirebilir. Her sorguda, yöntemleri yüzde 95’ten daha fazla doğruluk elde etti. (Bu, neredeyse her sorgu noktasına en yakın gerçek yaklaşık komşuyu bulduğu anlamına gelir.) Veritabanı gizliliğini etkinleştirmek için kullandıkları teknikler; sunucuyu bilgi sızdırması için kandırmak için yanlış sorgular gönderse bile kötü niyetli bir istemciyi engeller.
Arştırmacı Langowski: “Kötü niyetli bir istemci, protokolü izleyen dürüst bir istemciden çok daha fazla bilgi öğrenemez. Ayrıca kötü niyetli sunuculara karşı da koruma sağlar. Biri protokolden saparsa, doğru sonucu alamayabilirsiniz, ancak müşterinin sorgusunun ne olduğunu asla öğrenemezler.”
Gelecekte, araştırmacılar protokolü, yalnızca bir sunucu kullanarak gizliliği koruyabilecek şekilde ayarlamayı planlıyorlar. Bu, veritabanını yönetmek için (birbirleriyle bilgi paylaşmayan) ortak olmayan iki varlığın kullanılmasını gerektirmeyeceğinden, daha gerçek dünya durumlarında uygulanmasını sağlayabilir.
Araştırmacı Bruss: “En yakın komşu araması, kullanıcılara içerik önerileri sağlamaktan tıbbi durumları sınıflandırmaya kadar birçok kritik makine öğrenimi odaklı uygulamayı destekler. Ancak, aramayı toplamak ve etkinleştirmek için genellikle merkezi bir sistemle çok fazla verinin paylaşılmasını gerektirir.
Bu araştırma, kullanıcının merkezi sistemin verilerini başka amaçlar için kullanmayacağından emin olurken, kullanıcının en yakın komşu aramasından faydalanmasını sağlamaya yönelik önemli bir adım sağlıyor.”