2
0
mirror of https://github.com/Laupetin/OpenAssetTools.git synced 2026-06-09 18:22:33 +00:00

refactor: cryptography component

This commit is contained in:
Jan
2025-04-25 21:26:44 +01:00
committed by Jan Laupetin
parent 60f5c1a18f
commit 5635470b6e
63 changed files with 550 additions and 723 deletions
+22
View File
@@ -0,0 +1,22 @@
#pragma once
#include <cstdlib>
namespace cryptography
{
class IHashFunction
{
public:
IHashFunction() = default;
virtual ~IHashFunction() = default;
IHashFunction(const IHashFunction& other) = default;
IHashFunction(IHashFunction&& other) noexcept = default;
IHashFunction& operator=(const IHashFunction& other) = default;
IHashFunction& operator=(IHashFunction&& other) noexcept = default;
virtual size_t GetHashSize() = 0;
virtual void Init() = 0;
virtual void Process(const void* input, size_t inputSize) = 0;
virtual void Finish(void* hashBuffer) = 0;
};
} // namespace cryptography