HMAC + seferlik ile PHP Şifre depolama - Nonce rastlantısallığı önemli mi?

0 Cevap php

A few years I asked here on stackoverflow about how to make PHP password storage safe. The main answer suggests using the following hashing algorithm:

function hash_password($password, $nonce) {
  global $site_key;
  return hash_hmac('sha512', $password . $nonce, $site_key);
}

Bu sorunun cevabı bir random seferlik kullanarak önerir. Basit benzersiz Nonce'lar üzerinde rastgele bir seferlik olan herhangi bir avantajı var mı?

Örneğin, her bir kullanıcı değişmez kendi kimliği olabilir. Ancak, kullanıcı kimlikleri sıralı (MySQL'in otomatik artış özelliği ile inşa edilmiş) ve bu nedenle rasgele değildir varsayalım. Kullanıcı kimliği iyi Nonce olabilir ya da rasgelelik önemlidir misiniz?

Now, each user can pick an username. Each user has its own username which does not change, and two different users can't have the same username. Usernames are still not random, but they aren't sequential either. Would usernames be good enough as a nonce? Would it be better than using the user ID?

0 Cevap