[Metalab] [intern] Secure password hashing in c++ using cryptopp
reox
metalab at reox.at
Wed Sep 12 13:31:05 CEST 2018
Soweit ich weiß sollte man für Passwörter hash Funktionen verwenden, welche für Passwörter gemacht wurden und nicht die "üblichen verdächtigen" wie SHA.
Hier gibts dazu ne ganze Menge infos: https://crackstation.net/hashing-security.htm
LG Sebastian
Am 12. September 2018 13:09:39 MESZ schrieb Amir <amir at viel-zu.org>:
>ich hab mir eine passwort hashing funktion gezimmert und hab aber
>zweifel ob sie sicher ist. was denkt ihr?
>
>#include <cryptopp/hex.h>
>#include <cryptopp/sha.h>
>#include <cryptopp/base64.h>
>#include <random>
>
>using std::string;
>
>std::<string,string> hash_password(const string password)
>{
> std::mt19937 rng;
> rng.seed(std::random_device()());
> std::uniform_real_distribution<std::mt19937::result_type> dist(0,1);
>
> string salt = std::to_string(dist(rng));
> CryptoPP::SHA256 hash;
> byte digest[CryptoPP::SHA256::DIGESTSIZE];
> std::string output;
>
> hash.CalculateDigest(digest,(const byte *)salt.c_str(),salt.size());
>
> CryptoPP::HexEncoder encoder;
> CryptoPP::StringSink *SS = new CryptoPP::StringSink(output);
> encoder.Attach(SS);
> encoder.Put(digest,sizeof(digest));
> encoder.MessageEnd();
>
> return {output, salt};
>}
>
>_______________________________________________
>intern mailing list
>intern at lists.metalab.at
>https://metalab.at/wiki/Intern_Abonnement_Verwalten
>https://lists.metalab.at/mailman/listinfo/intern
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.metalab.at/pipermail/metalab/attachments/20180912/3133ee04/attachment.html>
More information about the Metalab
mailing list