Added SHA-1, SHA-224, SHA-256, SHA-384 and SHA-512 support
This commit is contained in:
33
include/Nazara/Core/Hash/SHA1.hpp
Normal file
33
include/Nazara/Core/Hash/SHA1.hpp
Normal file
@@ -0,0 +1,33 @@
|
||||
// Copyright (C) 2012 Jérôme Leclercq
|
||||
// This file is part of the "Nazara Engine".
|
||||
// For conditions of distribution and use, see copyright notice in Config.hpp
|
||||
|
||||
#pragma once
|
||||
|
||||
#ifndef NAZARA_HASH_SHA1_HPP
|
||||
#define NAZARA_HASH_SHA1_HPP
|
||||
|
||||
#include <Nazara/Prerequesites.hpp>
|
||||
#include <Nazara/Core/HashDigest.hpp>
|
||||
#include <Nazara/Core/HashImpl.hpp>
|
||||
|
||||
union SHA_CTX;
|
||||
|
||||
class NAZARA_API NzHashSHA1 : public NzHashImpl
|
||||
{
|
||||
public:
|
||||
NzHashSHA1();
|
||||
virtual ~NzHashSHA1();
|
||||
|
||||
void Append(const nzUInt8* data, unsigned int len);
|
||||
void Begin();
|
||||
NzHashDigest End();
|
||||
|
||||
static unsigned int GetDigestLength();
|
||||
static NzString GetHashName();
|
||||
|
||||
private:
|
||||
SHA_CTX* m_state;
|
||||
};
|
||||
|
||||
#endif // NAZARA_HASH_SHA1_HPP
|
||||
33
include/Nazara/Core/Hash/SHA224.hpp
Normal file
33
include/Nazara/Core/Hash/SHA224.hpp
Normal file
@@ -0,0 +1,33 @@
|
||||
// Copyright (C) 2012 Jérôme Leclercq
|
||||
// This file is part of the "Nazara Engine".
|
||||
// For conditions of distribution and use, see copyright notice in Config.hpp
|
||||
|
||||
#pragma once
|
||||
|
||||
#ifndef NAZARA_HASH_SHA224_HPP
|
||||
#define NAZARA_HASH_SHA224_HPP
|
||||
|
||||
#include <Nazara/Prerequesites.hpp>
|
||||
#include <Nazara/Core/HashDigest.hpp>
|
||||
#include <Nazara/Core/HashImpl.hpp>
|
||||
|
||||
union SHA_CTX;
|
||||
|
||||
class NAZARA_API NzHashSHA224 : public NzHashImpl
|
||||
{
|
||||
public:
|
||||
NzHashSHA224();
|
||||
virtual ~NzHashSHA224();
|
||||
|
||||
void Append(const nzUInt8* data, unsigned int len);
|
||||
void Begin();
|
||||
NzHashDigest End();
|
||||
|
||||
static unsigned int GetDigestLength();
|
||||
static NzString GetHashName();
|
||||
|
||||
private:
|
||||
SHA_CTX* m_state;
|
||||
};
|
||||
|
||||
#endif // NAZARA_HASH_SHA224_HPP
|
||||
33
include/Nazara/Core/Hash/SHA256.hpp
Normal file
33
include/Nazara/Core/Hash/SHA256.hpp
Normal file
@@ -0,0 +1,33 @@
|
||||
// Copyright (C) 2012 Jérôme Leclercq
|
||||
// This file is part of the "Nazara Engine".
|
||||
// For conditions of distribution and use, see copyright notice in Config.hpp
|
||||
|
||||
#pragma once
|
||||
|
||||
#ifndef NAZARA_HASH_SHA256_HPP
|
||||
#define NAZARA_HASH_SHA256_HPP
|
||||
|
||||
#include <Nazara/Prerequesites.hpp>
|
||||
#include <Nazara/Core/HashDigest.hpp>
|
||||
#include <Nazara/Core/HashImpl.hpp>
|
||||
|
||||
union SHA_CTX;
|
||||
|
||||
class NAZARA_API NzHashSHA256 : public NzHashImpl
|
||||
{
|
||||
public:
|
||||
NzHashSHA256();
|
||||
virtual ~NzHashSHA256();
|
||||
|
||||
void Append(const nzUInt8* data, unsigned int len);
|
||||
void Begin();
|
||||
NzHashDigest End();
|
||||
|
||||
static unsigned int GetDigestLength();
|
||||
static NzString GetHashName();
|
||||
|
||||
private:
|
||||
SHA_CTX* m_state;
|
||||
};
|
||||
|
||||
#endif // NAZARA_HASH_SHA256_HPP
|
||||
33
include/Nazara/Core/Hash/SHA384.hpp
Normal file
33
include/Nazara/Core/Hash/SHA384.hpp
Normal file
@@ -0,0 +1,33 @@
|
||||
// Copyright (C) 2012 Jérôme Leclercq
|
||||
// This file is part of the "Nazara Engine".
|
||||
// For conditions of distribution and use, see copyright notice in Config.hpp
|
||||
|
||||
#pragma once
|
||||
|
||||
#ifndef NAZARA_HASH_SHA384_HPP
|
||||
#define NAZARA_HASH_SHA384_HPP
|
||||
|
||||
#include <Nazara/Prerequesites.hpp>
|
||||
#include <Nazara/Core/HashDigest.hpp>
|
||||
#include <Nazara/Core/HashImpl.hpp>
|
||||
|
||||
union SHA_CTX;
|
||||
|
||||
class NAZARA_API NzHashSHA384 : public NzHashImpl
|
||||
{
|
||||
public:
|
||||
NzHashSHA384();
|
||||
virtual ~NzHashSHA384();
|
||||
|
||||
void Append(const nzUInt8* data, unsigned int len);
|
||||
void Begin();
|
||||
NzHashDigest End();
|
||||
|
||||
static unsigned int GetDigestLength();
|
||||
static NzString GetHashName();
|
||||
|
||||
private:
|
||||
SHA_CTX* m_state;
|
||||
};
|
||||
|
||||
#endif // NAZARA_HASH_SHA384_HPP
|
||||
33
include/Nazara/Core/Hash/SHA512.hpp
Normal file
33
include/Nazara/Core/Hash/SHA512.hpp
Normal file
@@ -0,0 +1,33 @@
|
||||
// Copyright (C) 2012 Jérôme Leclercq
|
||||
// This file is part of the "Nazara Engine".
|
||||
// For conditions of distribution and use, see copyright notice in Config.hpp
|
||||
|
||||
#pragma once
|
||||
|
||||
#ifndef NAZARA_HASH_SHA512_HPP
|
||||
#define NAZARA_HASH_SHA512_HPP
|
||||
|
||||
#include <Nazara/Prerequesites.hpp>
|
||||
#include <Nazara/Core/HashDigest.hpp>
|
||||
#include <Nazara/Core/HashImpl.hpp>
|
||||
|
||||
union SHA_CTX;
|
||||
|
||||
class NAZARA_API NzHashSHA512 : public NzHashImpl
|
||||
{
|
||||
public:
|
||||
NzHashSHA512();
|
||||
virtual ~NzHashSHA512();
|
||||
|
||||
void Append(const nzUInt8* data, unsigned int len);
|
||||
void Begin();
|
||||
NzHashDigest End();
|
||||
|
||||
static unsigned int GetDigestLength();
|
||||
static NzString GetHashName();
|
||||
|
||||
private:
|
||||
SHA_CTX* m_state;
|
||||
};
|
||||
|
||||
#endif // NAZARA_HASH_SHA512_HPP
|
||||
Reference in New Issue
Block a user