SORU
13 NİSAN 2012, Cuma


Has_secure_password kullanın tuzlama herhangi bir form mu?

has_secure_password veritabanındaki şifrelenmiş parolaları depolamak için kullanmak istiyorum. has_secure_password tuzlama herhangi bir şekilde kullanan, internet üzerinde edemem. Eğer tuzlama kullanıyorsa, nasıl çalışır? Kimse benim için bu açıklık miyim?

Thijs

CEVAP
13 NİSAN 2012, Cuma


has_secure_password bcrypt-ruby kullanır. bcrypt-ruby sizin için otomatik olarak tuz depolama ve nesil işler. Böyle bcrypt-ruby bakılırsa tipik bir hash: $2a$10$4wXszTTd7ass8j5ZLpK/7.ywXXgDh7XPNmzfIWeZC1dMGpFghd92e. Bu karma içten aşağıdaki işlevi kullanarak ayrılır:

def split_hash(h)
  _, v, c, mash = h.split('$')
  return v, c.to_i, h[0, 29].to_str, mash[-31, 31].to_str
end

Bu örnek için karma bu işlev verir:

  • sürüm: 2a
  • 10 . maliyet:
  • tuz: $2a$10$4wXszTTd7ass8j5ZLpK/7.
  • karma: ywXXgDh7XPNmzfİWeZC1dMGpFghd92e

BCrypt::Password ==-işlev tuz özleri ve geçirilen dize için geçerlidir:

BCrypt::Password.create('bla') == 'bla' # => true

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

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Canal de arkyoru

    Canal de ark

    18 Ocak 2007
  • Baby Big Mouth

    Baby Big Mou

    5 Mart 2013
  • Canceriansoul

    Canceriansou

    15 Ocak 2011