Ce que je suis en train de faire estcomment crypter/décrypter le mot de passe avec le sel en utilisant libsodium php
- Crypter un mot de passe + sel avec libsodium
- magasin à une base de données
- lire et déchiffrer (obtention du mot de passe simple pour l'authentification)
J'ai reçu une liste de sels que je veux utiliser pour crypter/décrypter mon mot de passe. Lorsque je crypte le mot de passe, je reçois un hachage de sorte que l'un semble fonctionner, mais au décryptage je reçois toujours faux comme valeur de retour. Est-ce que j'utilise les mauvaises méthodes pour crypter/décrypter avec libsodium ou suis-je complètement conduire dans la mauvaise direction?
Ma source pour Crypter/Décrypter:
function encrypt_libsodium($to_encrypt, $salt_to_use){
if(!$data || !$salt_to_use){
return null;
}
//get stored salt
$this->key_ = substr(md5($this->pw_key[$salt_to_use].'_'), 0, $this->ks);
//some libsodium specific stuff
$out_len = \Sodium\CRYPTO_SIGN_SEEDBYTES;
$ops_limit = \Sodium\CRYPTO_PWHASH_SCRYPTSALSA208SHA256_OPSLIMIT_INTERACTIVE;
$mem_limit =\Sodium\CRYPTO_PWHASH_SCRYPTSALSA208SHA256_MEMLIMIT_INTERACTIVE;
//create hash using libsodium
$hash = \Sodium\crypto_pwhash($out_len, $to_encrypt, $this->key_,$ops_limit, $mem_limit);
return $hash;
}
function decrypt_libsodium($hash, $salt_to_use){
if(!$hash || !$what){
return null;
}
//get stored salt
$this->key_ = substr(md5($this->pw_key[$salt_to_use].'_'), 0, $this->ks);
//get verification hash
$decrypted = \Sodium\crypto_pwhash_scryptsalsa208sha256_str_verify($this->key_, $hash);
return $decrypted;
}
Je vous remercie de toute aide!
Dom concerne
HASHTABLE n'est pas (censé) être reversible, tout ce que vous pouvez faire est de hachage du mot de passe de texte brut de la même manière et comparez les – RiggsFolly
de HASH Alors, expliquez pourquoi vous devez être capable de convertir en texte clair pour l'authentification? –
J'ai un mot de passe pour m'authentifier et je veux le stocker dans ma base de données cryptée, mais j'en ai besoin pour l'authentification elle-même. – Mayrhofer