Bir parolanın ne kadar güçlü olması gerekir

Bit cinsinden entropinin gerçekte neyi ölçtüğü, uzunluğun sembol çorbasını neden yendiği, aynı parolayı yeniden kullanmanın size neye mal olduğu ve parola cümleleri ile parola yöneticilerinin nereye oturduğu.

Kaybetmeye gönlünüzün razı olmayacağı bir hesap için, rastgele üretilmiş en az 16 karakterlik bir parola ya da rastgele seçilmiş en az 5 sözcükten oluşan bir parola cümlesi kullanın ve bunu tam olarak tek bir sitede kullanın. Bu, 65 ila 95 bit entropi eder, yani kaba kuvvetin rahatça ötesindedir; üstelik "tek bir site" kısmı güçten daha çok önem taşır. Aşağıda bu sayıların arkasındaki akıl yürütme var.

Bit cinsinden entropi

Entropi, parolanın eşit olasılıklı kaç olasılık arasından çekildiğini ikinin kuvveti olarak ölçer. 40 bit entropi, 2^40 olasılıktan biri, yani kabaca bir trilyonda bir demektir ve her fazladan bit tahmin işini ikiye katlar. Formül bit = uzunluk x log2(karakter kümesinin boyutu) şeklindedir; dolayısıyla küçük harfler tanesi 4,7 bit, harfler ve rakamlar 5,95 bit, yazdırılabilir bütün ASCII 6,57 bit ve 7.776 sözcüklük bir listeden gelen bir sözcük 12,9 bit değerindedir:

ParolaEntropi
8 küçük harf38 bit
12 harf ve rakam71 bit
12 karakter, tam ASCII79 bit
16 harf ve rakam95 bit
5 rastgele sözcük65 bit
6 rastgele sözcük78 bit

Bu matematik yalnızca parola gerçek bir rastgele süreçten geldiyse geçerlidir. Tr0ub4dor&3 parolası 95 karakterlik bir kümeden seçilmiş 11 karakterdir ve formül buna 72 bit verir, ama bu, öngörülebilir harf değişimleri yapılmış bir sözlük sözcüğüdür ve bir kırma aracı ona çok daha erken ulaşır. Entropi dizeyi değil üreteci tarif eder.

Bitler size ne kazandırır

Tahmin hızı, sitenin parolayı nasıl sakladığına bağlıdır. Hız sınırlaması olan canlı bir oturum açma formunda saldırgan saatte birkaç deneme yapabilir. Çalınmış bir veritabanında ise hash'e bağlıdır: MD5 ya da SHA-1 gibi hızlı bir hash, tüketici sınıfı grafik donanımında muazzam hızlarda denenebilir; oysa bcrypt ya da Argon2 gibi amaca özel bir parola hash'i bunun kat kat yavaşıdır.

Aşağıdaki en kötü durumdur: hızlı, tuzsuz bir hash ve saniyede on milyar tahmin varsayımı. Eğrinin ne kadar sert büküldüğünü gösterir, bir ölçüm değildir:

EntropiUzayın tamamını tüketme süresi
40 bitYaklaşık iki dakika
50 bitYaklaşık bir gün
60 bitBirkaç yıl
70 bitBirkaç bin yıl
80 bitMilyonlarca yıl

Bir saldırgan ortalama olarak bu sürenin yarısında başarılı olur. Pratik okuma şudur: 50 bitin altı çevrimdışı bir saldırıya karşı pek bir işe yaramaz, 60 ila 70 bit çoğu şey için yeterlidir, 80 bit ve üstü ise rahat kalmaya devam eder.

Uzunluk sembol çorbasını yener

Harf ve rakamlardan oluşan 12 karakterlik bir parolayı ele alın (71 bit). Noktalama ekleyip kümeyi 62 karakterden 95 karaktere genişletmek sizi 79 bite çıkarır. Bunun yerine iki harf ya da rakam daha eklemek 83'e çıkarır. Her fazladan karakter arama uzayını alfabenin tamamıyla çarparken, alfabeyi genişletmek zaten sahip olduğunuz her karaktere yalnızca 0,6 bit kadar ekler. Uzunluk kazanır ve kazanmaya devam eder.

Bileşim kuralları ("bir büyük harf, bir rakam ve bir sembol içermelidir") insanları dar bir örüntüler kümesine iter: başta büyük harf, sonda rakam ve ünlem işareti. Kırma araçları önce bu dönüşümleri dener. NIST'in dijital kimlik kılavuzlarının bileşim kurallarından ve zorunlu düzenli parola değişiminden uzaklaşıp uzunluğa ve bilinen sızıntı listelerine karşı denetime yönelmesinin bir nedeni de budur.

Asıl risk yeniden kullanımdır

Neredeyse hiç kimsenin hesabı kaba kuvvetle ele geçirilmez. Olan şey kimlik bilgisi doldurmadır: zayıf bir site ihlal edilir, e-posta ve parola çiftleri yayımlanır ve otomatik araçlar her çifti yüzlerce başka hizmette dener. İhlal edilen forumda kullandığınız parolanın aynısını e-postanızda da kullandıysanız gücünün hiçbir önemi kalmaz. O parola tahmin edilmedi, teslim edildi.

Kimlik avı da aynı şekilde işler: ikna edici bir sahte oturum açma sayfasına yazılan 30 karakterlik bir parola tam olarak password1 kadar değerlidir. Bu yüzden, önem sırasıyla:

  1. Her sitede farklı bir parola.
  2. Önemli olan her şeyde iki aşamalı doğrulama, en başta da e-postanızda, çünkü diğer her şeyin sıfırlama yolu oradan geçer.
  3. Çevrimdışı kırmayı umutsuz kılacak kadar uzunluk.

Parola cümleleri

Parola cümlesi, bir listeden rastgele seçilmiş birkaç sözcüktür, örneğin harvest-cobalt-mural-drift-plinth. Sözcük başına 12,9 bit ile beş sözcük 65 bit, altı sözcük 78 bit eder.

Bunu işe yarar kılan iki koşul vardır. Sözcükler sizin tarafınızdan seçilmemeli, zarla ya da yazılımla rastgele belirlenmelidir. Bir de güç, ayırıcıdan ya da bir harfi büyütmekten değil sözcük sayısından gelir: bir şarkı sözünün ya da bir alıntının neredeyse hiç entropisi yoktur, çünkü insanların söylediği şeylerden oluşan küçük bir havuzdan çekilmiştir.

Parola cümleleri, ezberden yazdığınız birkaç parola için hakkını verir: cihaz girişiniz, yöneticinizin ana parolası, disk şifrelemeniz.

Bir yönetici nereye oturur

Bir parola yöneticisi, "200 benzersiz parola uydur ve ezberle" işini "tek bir uzun parola cümlesini hatırla" işine çevirir. Yüksek entropili dizeler üretir ve onları doğru alan adında doldurur; bu da kimlik avının etkisini körelten bir şeydir, çünkü benzer görünen bir adreste otomatik doldurma yapmaz.

Riski tek noktada toplar; bu gerçek bir itirazdır ama yine de daha iyi bir takastır: uzun bir parola cümlesi ve ikinci bir faktörün arkasındaki tek bir kasa, kalitesi bilinmeyen onlarca site arasında paylaşılan tek bir paroladan iyidir.

Hash'leme üzerine bir not

Hash'leme oturum açmanın diğer yüzüdür. İyi kurulmuş bir hizmet, parolanın kendisini değil, bilerek yavaşlatılmış bir algoritmadan çıkan tuzlanmış bir hash'i saklar; böylece bir sızıntı hemen düz metin vermez. SHA-256 gibi genel amaçlı hash'ler hızlı olmak üzere kurulmuştur; bu da onları dosya sağlama toplamları için mükemmel, parola saklamak içinse kötü bir seçim yapar. Kendi parolanızı "daha güçlü yapmak" için hash'lemek hiçbir şey kazandırmaz: sonuç, ancak girdisi kadar tahmin edilemezdir.