1
0
mirror of https://github.com/veracrypt/VeraCrypt.git synced 2025-11-12 03:18:26 -06:00

Integrate SHA-256 support into Linux/MacOSX code. Set PRF priority to SHA-512 -> Whirlpool -> SHA-256 -> RIPEMD-160 .

This commit is contained in:
Mounir IDRASSI
2014-10-14 21:19:53 +02:00
parent 905a3ff4a5
commit f05f6a00a6
5 changed files with 97 additions and 5 deletions

View File

@@ -64,6 +64,28 @@ namespace VeraCrypt
Ripemd160 (const Ripemd160 &);
Ripemd160 &operator= (const Ripemd160 &);
};
// SHA-256
class Sha256 : public Hash
{
public:
Sha256 ();
virtual ~Sha256 () { }
virtual void GetDigest (const BufferPtr &buffer);
virtual size_t GetBlockSize () const { return 64; }
virtual size_t GetDigestSize () const { return 256 / 8; }
virtual wstring GetName () const { return L"SHA-256"; }
virtual shared_ptr <Hash> GetNew () const { return shared_ptr <Hash> (new Sha256); }
virtual void Init ();
virtual void ProcessData (const ConstBufferPtr &data);
protected:
private:
Sha256 (const Sha256 &);
Sha256 &operator= (const Sha256 &);
};
// SHA-512
class Sha512 : public Hash