1. Giriş
Parolalar, çoğu web uygulaması için birincil kimlik doğrulama faktörü olmaya devam etmektedir, ancak kimlik bilgisi doldurma ve veri ihlalleri kullanıcıları rahatsız etmeye devam etmektedir. LastPass ve Dashlane gibi bulut tabanlı parola yöneticileri kolaylık sağlar ancak merkezi hata noktaları oluşturur. Belirleyici Parola Oluşturucuları (DPG'ler), sırları saklamadan alan başına benzersiz parolalar oluşturan bir alternatif olarak önerilmiştir. Ancak, benimsenme güvenlik, gizlilik ve kullanılabilirlik kusurları nedeniyle engellenmiştir. Bu makale, 45 mevcut DPG'yi analiz etmekte ve bu eksiklikleri gideren çok faktörlü bir belirleyici parola oluşturucu olan MFDPG'yi sunmaktadır.
2. İçindekiler
3. Mevcut DPG'lerin Analizi
Yazarlar, 45 mevcut DPG'yi inceleyerek bunları temel kriptografik ilkellerine ve çalışma modellerine göre kategorize etmiştir. Analiz, üç ana sorun kategorisini ortaya çıkarmaktadır.
3.1 Güvenlik Sorunları
Çoğu DPG, oluşturulan herhangi bir parolanın ele geçirilmesi durumunda kullanıcının ana parolasına doğrudan saldırılmasına izin verir. Bunun nedeni, ana parolanın genellikle karma işlevine giren tek girdi olmasıdır. Ek olarak, birçok şema ileri gizlilikten yoksundur; bu, ana parolanın ihlal edilmesinin tüm geçmiş ve gelecekteki parolaları açığa çıkaracağı anlamına gelir.
3.2 Gizlilik Sorunları
Sunucu tarafı bileşeni veya senkronizasyon hizmeti gerektiren DPG'ler, kullanıcının ziyaret ettiği alan adlarının listesini sızdırabilir. İstemci tarafı DPG'ler bile yan kanallar veya oluşturulan parolaların yapısı aracılığıyla bilgi sızdırabilir.
3.3 Kullanılabilirlik Sorunları
Çoğu DPG'de parola döndürme zahmetlidir çünkü bir parolayı değiştirmek bir sürüm numarasını hatırlamayı veya farklı bir ana parola kullanmayı gerektirir. Karmaşık parola politikaları (örneğin, özel karakter gerektirme, minimum uzunluk) genellikle desteklenmez ve bu da sık sık oturum açma hatalarına yol açar.
4. MFDPG Tasarımı
MFDPG, yukarıdaki sorunları üç temel yenilikle ele alır: çok faktörlü anahtar türetme, iptal için Guguk Kuşu filtreleri ve DFA tabanlı parola oluşturma.
4.1 Çok Faktörlü Anahtar Türetme
MFDPG, yalnızca bir ana parolaya güvenmek yerine, bir donanım belirteci (örneğin, YubiKey) veya zamana dayalı tek kullanımlık parola (TOTP) gibi ek faktörleri dahil eder. Ana sır, tüm faktörleri birleştiren bir anahtar türetme işlevi (KDF) kullanılarak türetilir:
$K = \text{KDF}(P, T, H)$
burada $P$ ana parola, $T$ TOTP değeri ve $H$ donanım belirteci sırrıdır. Bu, yalnızca ana parolanın ele geçirilmesinin parola oluşturmak için yetersiz olmasını sağlar.
4.2 İptal için Guguk Kuşu Filtresi
Hizmet kullanımını sızdırmadan parola döndürmeyi desteklemek için MFDPG, iptal edilen parola sürümlerini depolamak üzere kompakt bir olasılıksal veri yapısı olan bir Guguk Kuşu filtresi kullanır. Filtre yerel olarak depolanır ve belirli bir sürümün iptal edilip edilmediğini kontrol etmek için sorgulanabilir. Bu, sunucu tarafı bir veritabanı ihtiyacını ortadan kaldırır ve gizliliği korur.
4.3 DFA ile Parola Politikası Uyumluluğu
MFDPG, her web sitesinin parola politikasını modellemek için bir Belirleyici Sonlu Otomat (DFA) kullanır. DFA, oluşturulan parolaların tüm politika gereksinimlerini (örneğin, en az bir büyük harf, bir rakam, bir özel karakter) karşılamasını sağlar. Oluşturma algoritması, belirleyici bir şekilde geçerli bir parola üretmek için DFA'yı dolaşır.
5. Değerlendirme ve Sonuçlar
MFDPG, en popüler 100 web uygulamasına karşı değerlendirilmiştir. Sonuçlar, mevcut parola politikalarıyla %100 uyumluluk göstermektedir. Performans karşılaştırmaları, parola oluşturmanın ortalama 10 ms'den az sürdüğünü ve Guguk Kuşu filtresinin 1000 iptal edilen sürüm için yalnızca 1,5 KB depolama gerektirdiğini göstermektedir. Çok faktörlü anahtar türetme, ihmal edilebilir düzeyde 2 ms'lik bir ek yük ekler.
Anahtar İstatistikler
- En iyi 100 web sitesiyle %100 uyumluluk
- Ortalama oluşturma süresi: <10ms
- Guguk Kuşu filtresi depolaması: 1000 giriş için 1,5 KB
- Çok faktörlü ek yük: 2ms
6. Temel İçgörü, Mantıksal Akış, Güçlü ve Zayıf Yönler, Uygulanabilir İçgörüler
Temel İçgörü
MFDPG, ne istemcide ne de sunucuda herhangi bir saklanan sır gereksinimini ortadan kaldırarak parola yönetimini temelden yeniden düşünür. Bu, mevcut merkezi kasa modelinden bir paradigma değişimidir. Temel içgörü, parola oluşturma noktasında birden çok kimlik doğrulama faktörünü birleştirerek, sunucu tarafı desteği gerektirmeden bir donanım belirtecinin güvenliğini elde edebileceğinizdir.
Mantıksal Akış
Makale net bir mantıksal ilerleme izler: ilk olarak, kapsamlı bir inceleme yoluyla mevcut DPG'lerin başarısızlıklarını belirler; ikinci olarak, her başarısızlığı doğrudan ele alan bir tasarım önerir; üçüncü olarak, titiz bir değerlendirme yoluyla tasarımı doğrular. Akış, genel sorunlardan özel çözümlere doğru giden tümdengelimlidir.
Güçlü ve Zayıf Yönler
Güçlü Yönler: Çok faktörlü yaklaşım, saldırganlar için çıtayı önemli ölçüde yükselten gerçek bir yeniliktir. İptal için Guguk Kuşu filtrelerinin kullanımı zarif ve gizlilik koruyucudur. DFA tabanlı politika uyumluluğu, uzun süredir devam eden bir kullanılabilirlik sorununa pratik bir çözümdür.
Zayıf Yönler: Makale, birden çok donanım belirtecini yönetmenin kullanıcı deneyimini ele almamaktadır. Yerel bir Guguk Kuşu filtresine güvenmek, iptal verilerinin cihazlar arasında senkronize edilmediği anlamına gelir; bu, birden çok cihazı olan kullanıcılar için bir sorun olabilir. Değerlendirme kapsamlı olmakla birlikte, yalnızca en iyi 100 web sitesiyle sınırlıdır ve tüm web uygulamalarına genellenemeyebilir.
Uygulanabilir İçgörüler
Uygulayıcılar için MFDPG, parola kasalarını ortadan kaldırmak için uygulanabilir bir yol sunar. Araştırmacılar için makale, iptal verilerinin senkronizasyonunu iyileştirme, iptal için alternatif veri yapılarını keşfetme ve çok faktörlü yaklaşımı diğer kimlik doğrulama bağlamlarına genişletme gibi çeşitli yollar açar. En acil uygulanabilir içgörü, halihazırda bulut tabanlı bir parola yöneticisi kullanan herhangi bir kuruluşun, daha güvenli bir alternatif olarak MFDPG'yi değerlendirmesidir.
7. Özgün Analiz
MFDPG, kullanılabilir ve güvenli parola yönetimi arayışında önemli bir adımı temsil etmektedir. Makalenin temel katkısı—çok faktörlü anahtar türetme yoluyla saklanan sırları ortadan kaldırmak—bulut tabanlı parola yöneticilerini rahatsız eden merkezi hata noktasını doğrudan ele almaktadır. Bu, istemci-sunucudan eşler arası mimarilere (örneğin, BitTorrent) geçiş gibi diğer alanlarda görülen merkezi sistemlerden merkezi olmayan sistemlere geçişi anımsatmaktadır. İptal için Guguk Kuşu filtrelerinin kullanımı özellikle akıllıcadır çünkü sunucu tarafı bir veritabanı ihtiyacını ortadan kaldıran gizlilik koruyucu bir mekanizma sağlar. Bu, Avrupa Birliği Genel Veri Koruma Yönetmeliği (GDPR) tarafından vurgulandığı gibi, gizlilik koruyucu teknolojilere artan vurguyla uyumludur.
Bununla birlikte, makalenin değerlendirmesi bir ölçüde sınırlıdır. En popüler 100 web sitesi, kullanıcı etkinliğinin önemli bir bölümünü temsil etse de, kullanıcıların gerçekte ziyaret ettiği uzun kuyruktaki web sitelerini temsil etmeyebilir. Ek olarak, makale, benimseme için bir engel olabilecek birden çok donanım belirtecini yönetmenin kullanılabilirliğini ele almamaktadır. Ulusal Standartlar ve Teknoloji Enstitüsü (NIST) tarafından yapılan çalışmalarda belirtildiği gibi, bir donanım belirtecini kurma ve kullanma kullanıcı deneyimi ortalama bir kullanıcı için hala zahmetlidir.
Teknik bir perspektiften bakıldığında, DFA tabanlı parola oluşturma, parola politikası sorununa sağlam bir çözümdür. Bununla birlikte, makale her web sitesi için DFA oluşturmanın karmaşıklığını tartışmamaktadır. Pratikte bu, topluluk veya MFDPG geliştiricileri tarafından sürdürülebilecek bir parola politikaları veritabanı gerektirecektir. Bu, önemsiz olmayan bir mühendislik zorluğudur.
Sonuç olarak, MFDPG, mevcut DPG'lerin birçok eksikliğini gideren iyi tasarlanmış bir sistemdir. Çok faktörlü yaklaşımı ve Guguk Kuşu filtrelerinin kullanımı gerçek yeniliklerdir. Bununla birlikte, makale daha kapsamlı bir değerlendirme ve dağıtımın pratik zorluklarının tartışılmasından fayda sağlayacaktır. Parola yönetiminin geleceği, saklanan sırları ortadan kaldıran MFDPG gibi sistemlerde yatabilir, ancak bu tür sistemleri ortalama bir kişi için kullanılabilir kılmak için önemli çalışmalar yapılması gerekmektedir.
8. Teknik Detaylar ve Matematiksel Formülasyon
MFDPG'nin özü, çok faktörlü anahtar türetme işlevidir. $P$ ana parola, $T$ $t$ zamanındaki TOTP değeri ve $H$ donanım belirteci sırrı olsun. Ana anahtar $K$ şu şekilde türetilir:
$K = \text{PBKDF2}(P \oplus T \oplus H, \text{salt}, \text{iterations})$
burada $\oplus$ XOR'u belirtir. $v$ sürümüne sahip $d$ alanı için parola daha sonra:
$\text{Password} = \text{DFA-Generate}(\text{HMAC-SHA256}(K, d || v), \text{policy})$
DFA-Generate işlevi, sözde rastgele bir tohum ve parola politikasını temsil eden bir DFA alır ve geçerli bir parola çıktısı verir. Guguk Kuşu filtresi, iptal edilen her parola sürümü için $(d, v)$ demetini saklar. Filtre, $O(1)$ süresinde ekleme ve aramayı destekler.
9. Vaka Çalışması: MFDPG'nin Çalışma Örneği
Parolalarını MFDPG kullanarak yönetmek isteyen bir kullanıcı Alice'i düşünün. "MySecureP@ss1" ana parolasına ve "YubiSecret123" sırrına sahip bir YubiKey'e sahiptir. En az 8 karakter, bir büyük harf, bir rakam ve bir özel karakter gerektiren example.com web sitesini ziyaret eder.
- Alice ana parolasını girer ve YubiKey'ini takar.
- MFDPG, TOTP değerini (örneğin, "847291") hesaplar ve ana anahtarı türetir: $K = \text{PBKDF2}(\text{MySecureP@ss1} \oplus 847291 \oplus \text{YubiSecret123}, \text{salt}, 10000)$.
- MFDPG, politika için DFA'yı kullanarak example.com için parolayı oluşturur: $\text{Password} = \text{DFA-Generate}(\text{HMAC-SHA256}(K, \text{example.com} || 1), \text{policy})$.
- Oluşturulan parola, örneğin, "A8b!cD2e" olur.
- Alice daha sonra parolasını değiştirirse, sürüm numarasını 2'ye yükseltir ve eski sürümü (example.com, 1) Guguk Kuşu filtresine ekler.
10. Gelecekteki Uygulamalar ve Yönelimler
MFDPG, gelecekteki araştırma ve geliştirme için birkaç heyecan verici yol açar. İlk olarak, çok faktörlü anahtar türetme, güvenliği daha da artırmak için parmak izi veya yüz tanıma gibi biyometrik faktörleri içerecek şekilde genişletilebilir. İkinci olarak, Guguk Kuşu filtresi, verimliliği artırmak için silme desteğine sahip bir Bloom filtresi gibi daha gelişmiş bir veri yapısıyla değiştirilebilir. Üçüncü olarak, DFA tabanlı parola oluşturma, belirli kalıplar gerektirenler (örneğin, ardışık karakter yok) dahil olmak üzere rastgele parola politikalarını destekleyecek şekilde genelleştirilebilir.
Pratik bir açıdan bakıldığında, MFDPG, ayrı bir uygulama ihtiyacı olmadan sorunsuz parola yönetimi sağlayarak web tarayıcılarına bir eklenti olarak entegre edilebilir. Ayrıca, tüm uygulamalarda güçlü parola politikalarını uygulamak için kurumsal ortamlarda da kullanılabilir. Sıfır saklanan sır modeli, HIPAA veya PCI-DSS gibi katı veri koruma düzenlemelerine tabi kuruluşlar için özellikle çekicidir.
Son olarak, MFDPG'nin altında yatan ilkeler, SSH anahtar yönetimi veya API belirteci oluşturma gibi diğer kimlik doğrulama bağlamlarına uygulanabilir. Sırları saklamadan birden çok faktörden türetme fikri, kimlik doğrulama hakkındaki düşünme şeklimizi dönüştürebilecek güçlü bir fikirdir.
11. Referanslar
- V. Nair ve D. Song, "MFDPG: Sıfır Saklanan Sır ile Çok Faktörlü Kimlik Doğrulamalı Parola Yönetimi," UC Berkeley, 2023.
- B. Ross ve diğerleri, "PwdHash: Tarayıcı Tabanlı Bir Parola Yöneticisi," USENIX Güvenlik Sempozyumu, 2005.
- J. Bonneau ve diğerleri, "Parolaları Değiştirme Arayışı: Web Kimlik Doğrulama Şemalarının Karşılaştırmalı Değerlendirmesi için Bir Çerçeve," IEEE Güvenlik ve Gizlilik Sempozyumu, 2012.
- D. Florencio ve C. Herley, "Web Parola Alışkanlıkları Üzerine Geniş Ölçekli Bir Çalışma," WWW, 2007.
- NIST, "Dijital Kimlik Yönergeleri," NIST Özel Yayını 800-63B, 2017.
- Avrupa Birliği, "Genel Veri Koruma Yönetmeliği (GDPR)," 2016.
- B. Fan ve diğerleri, "Guguk Kuşu Filtresi: Bloom'dan Pratik Olarak Daha İyi," CoNEXT, 2014.
- M. Bellare ve diğerleri, "Anahtar Türetme İşlevleri ve Kullanımları," CRYPTO, 1999.
- J. Kelsey ve diğerleri, "PBKDF2: Parola Tabanlı Anahtar Türetme İşlevi 2," RFC 2898, 2000.
- D. M'Raihi ve diğerleri, "TOTP: Zamana Dayalı Tek Kullanımlık Parola Algoritması," RFC 6238, 2011.