SORU
4 Mayıs 2011, ÇARŞAMBA


Ne sütun tipi/uzunluğu Veritabanında Bcrypt karma şifre saklamak için kullanılır?

Bir veritabanında şifrelenmiş halde parola (BCrypt kullanarak) saklamak istiyorum. Doğru uzunlukta olurdu bu, ve iyi bir türü ne olurdu? Şifreleri BCrypt karma ile aynı uzunlukta her zaman.

EDİT

Örnek karma:

$2a$10$KssILxWNR6k62B7yiX0GAe2Q7wwHlrzhF3LqtVvpyvHZf0MwvNfVu

Bazı şifreleri karma sonra, BCrypt her zaman 60 karakter karma oluşturur gibi görünüyor.

2 DÜZENLEYİN

Uygulanması söz değil Sry. jBCrypt kullanıyorum.

CEVAP
4 Mayıs 2011, ÇARŞAMBA


Bcrypt için modüler crypt biçimi oluşur

  • $2$, $2a$ $2y$ karma algoritma ve biçimini belirleyerek
  • iki basamaklı bir değer maliyet parametre gösteren, $ izledi
  • 53 karakter uzunluğunda base-64 ile kodlanmış değeri (kullandıkları alfabe ., /, 09, AZ, az Bu farklı için standard Base 64 Encoding alfabe) oluşan:
    • Tuz (etkin 132 deşifre bitlerin sadece 128 bit) 22 karakter
    • Şifreli çıktı (etkin 186 deşifre bitlerin sadece 184 bit) 31 karakter

Böylece toplam uzunluğu 59 ya da 60 bayt sırasıyla.

2a biçimi olarak, 60 bayt gerekir. Ve böylece MySQL için CHAR(60) BINARYor BINARY(60) (fark hakkında daha fazla bilgi için The _bin and binary Collations) kullanmanızı tavsiye ederim.

CHAR ikili güvende ve eşitlik sadece byte değerlerine bağlı değildir, ama gerçek harmanlama değil; en kötü durumda A a eşit olarak kabul edilir. Daha fazla bilgi için The _bin and binary Collations bkz.

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • My name is Festis and I'm free

    My name is F

    2 EKİM 2011
  • jesiel santos

    jesiel santo

    15 Ocak 2009
  • LinusTechTips

    LinusTechTip

    25 Kasım 2008