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

  • Andrey Menshikov

    Andrey Mensh

    28 Ocak 2012
  • gadgetgal38

    gadgetgal38

    9 HAZİRAN 2009
  • thegeniuses.tv

    thegeniuses.

    11 Aralık 2006