mirror of
https://github.com/mangosfour/server.git
synced 2025-12-15 19:37:02 +00:00
Renamed HMACSHA1 to something that will not conflict with feature HMACSHA256 and HMACSHA512.
This commit is contained in:
parent
9a0545cd05
commit
4e2c42799c
8 changed files with 36 additions and 24 deletions
12
src/.gitignore
vendored
Normal file
12
src/.gitignore
vendored
Normal file
|
|
@ -0,0 +1,12 @@
|
||||||
|
#
|
||||||
|
# NOTE! Don't add files that are generated in specific
|
||||||
|
# subdirectories here. Add them in the ".gitignore" file
|
||||||
|
# in that subdirectory instead.
|
||||||
|
#
|
||||||
|
# NOTE! Please use 'git-ls-files -i --exclude-standard'
|
||||||
|
# command after changing this file, to see if there are
|
||||||
|
# any tracked files which get ignored after the change.
|
||||||
|
#
|
||||||
|
# Doxygen generic files
|
||||||
|
#
|
||||||
|
bnetd
|
||||||
|
|
@ -17,7 +17,7 @@
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#include "AuthCrypt.h"
|
#include "AuthCrypt.h"
|
||||||
#include "Hmac.h"
|
#include "HMACSHA1.h"
|
||||||
#include "Log.h"
|
#include "Log.h"
|
||||||
#include "BigNumber.h"
|
#include "BigNumber.h"
|
||||||
|
|
||||||
|
|
@ -35,12 +35,12 @@ void AuthCrypt::Init(BigNumber *K)
|
||||||
{
|
{
|
||||||
uint8 ServerEncryptionKey[SEED_KEY_SIZE] = { 0xCC, 0x98, 0xAE, 0x04, 0xE8, 0x97, 0xEA, 0xCA, 0x12, 0xDD, 0xC0, 0x93, 0x42, 0x91, 0x53, 0x57 };
|
uint8 ServerEncryptionKey[SEED_KEY_SIZE] = { 0xCC, 0x98, 0xAE, 0x04, 0xE8, 0x97, 0xEA, 0xCA, 0x12, 0xDD, 0xC0, 0x93, 0x42, 0x91, 0x53, 0x57 };
|
||||||
|
|
||||||
HmacHash serverEncryptHmac(SEED_KEY_SIZE, (uint8*)ServerEncryptionKey);
|
HMACSHA1 serverEncryptHmac(SEED_KEY_SIZE, (uint8*)ServerEncryptionKey);
|
||||||
uint8 *encryptHash = serverEncryptHmac.ComputeHash(K);
|
uint8 *encryptHash = serverEncryptHmac.ComputeHash(K);
|
||||||
|
|
||||||
uint8 ServerDecryptionKey[SEED_KEY_SIZE] = { 0xC2, 0xB3, 0x72, 0x3C, 0xC6, 0xAE, 0xD9, 0xB5, 0x34, 0x3C, 0x53, 0xEE, 0x2F, 0x43, 0x67, 0xCE };
|
uint8 ServerDecryptionKey[SEED_KEY_SIZE] = { 0xC2, 0xB3, 0x72, 0x3C, 0xC6, 0xAE, 0xD9, 0xB5, 0x34, 0x3C, 0x53, 0xEE, 0x2F, 0x43, 0x67, 0xCE };
|
||||||
|
|
||||||
HmacHash clientDecryptHmac(SEED_KEY_SIZE, (uint8*)ServerDecryptionKey);
|
HMACSHA1 clientDecryptHmac(SEED_KEY_SIZE, (uint8*)ServerDecryptionKey);
|
||||||
uint8 *decryptHash = clientDecryptHmac.ComputeHash(K);
|
uint8 *decryptHash = clientDecryptHmac.ComputeHash(K);
|
||||||
|
|
||||||
//SARC4 _serverDecrypt(encryptHash);
|
//SARC4 _serverDecrypt(encryptHash);
|
||||||
|
|
|
||||||
|
|
@ -16,43 +16,43 @@
|
||||||
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#include "Auth/Hmac.h"
|
#include "Auth/HMACSHA1.h"
|
||||||
#include "BigNumber.h"
|
#include "BigNumber.h"
|
||||||
|
|
||||||
HmacHash::HmacHash(uint32 len, uint8 *seed)
|
HMACSHA1::HMACSHA1(uint32 len, uint8 *seed)
|
||||||
{
|
{
|
||||||
HMAC_CTX_init(&m_ctx);
|
HMAC_CTX_init(&m_ctx);
|
||||||
HMAC_Init_ex(&m_ctx, seed, len, EVP_sha1(), NULL);
|
HMAC_Init_ex(&m_ctx, seed, len, EVP_sha1(), NULL);
|
||||||
}
|
}
|
||||||
|
|
||||||
HmacHash::~HmacHash()
|
HMACSHA1::~HMACSHA1()
|
||||||
{
|
{
|
||||||
HMAC_CTX_cleanup(&m_ctx);
|
HMAC_CTX_cleanup(&m_ctx);
|
||||||
}
|
}
|
||||||
|
|
||||||
void HmacHash::UpdateBigNumber(BigNumber *bn)
|
void HMACSHA1::UpdateBigNumber(BigNumber *bn)
|
||||||
{
|
{
|
||||||
UpdateData(bn->AsByteArray(), bn->GetNumBytes());
|
UpdateData(bn->AsByteArray(), bn->GetNumBytes());
|
||||||
}
|
}
|
||||||
|
|
||||||
void HmacHash::UpdateData(const uint8 *data, int length)
|
void HMACSHA1::UpdateData(const uint8 *data, int length)
|
||||||
{
|
{
|
||||||
HMAC_Update(&m_ctx, data, length);
|
HMAC_Update(&m_ctx, data, length);
|
||||||
}
|
}
|
||||||
|
|
||||||
void HmacHash::UpdateData(const std::string &str)
|
void HMACSHA1::UpdateData(const std::string &str)
|
||||||
{
|
{
|
||||||
UpdateData((uint8 const*)str.c_str(), str.length());
|
UpdateData((uint8 const*)str.c_str(), str.length());
|
||||||
}
|
}
|
||||||
|
|
||||||
void HmacHash::Finalize()
|
void HMACSHA1::Finalize()
|
||||||
{
|
{
|
||||||
uint32 length = 0;
|
uint32 length = 0;
|
||||||
HMAC_Final(&m_ctx, (uint8*)m_digest, &length);
|
HMAC_Final(&m_ctx, (uint8*)m_digest, &length);
|
||||||
ASSERT(length == SHA_DIGEST_LENGTH);
|
ASSERT(length == SHA_DIGEST_LENGTH);
|
||||||
}
|
}
|
||||||
|
|
||||||
uint8 *HmacHash::ComputeHash(BigNumber *bn)
|
uint8 *HMACSHA1::ComputeHash(BigNumber *bn)
|
||||||
{
|
{
|
||||||
HMAC_Update(&m_ctx, bn->AsByteArray(), bn->GetNumBytes());
|
HMAC_Update(&m_ctx, bn->AsByteArray(), bn->GetNumBytes());
|
||||||
Finalize();
|
Finalize();
|
||||||
|
|
@ -16,8 +16,8 @@
|
||||||
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#ifndef _AUTH_HMAC_H
|
#ifndef _AUTH_HMACSHA1_H
|
||||||
#define _AUTH_HMAC_H
|
#define _AUTH_HMACSHA1_H
|
||||||
|
|
||||||
#include "Common.h"
|
#include "Common.h"
|
||||||
#include <openssl/hmac.h>
|
#include <openssl/hmac.h>
|
||||||
|
|
@ -27,11 +27,11 @@ class BigNumber;
|
||||||
|
|
||||||
#define SEED_KEY_SIZE 16
|
#define SEED_KEY_SIZE 16
|
||||||
|
|
||||||
class HmacHash
|
class HMACSHA1
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
HmacHash(uint32 len, uint8 *seed);
|
HMACSHA1(uint32 len, uint8 *seed);
|
||||||
~HmacHash();
|
~HMACSHA1();
|
||||||
void UpdateBigNumber(BigNumber *bn);
|
void UpdateBigNumber(BigNumber *bn);
|
||||||
void UpdateData(const uint8 *data, int length);
|
void UpdateData(const uint8 *data, int length);
|
||||||
void UpdateData(const std::string &str);
|
void UpdateData(const std::string &str);
|
||||||
|
|
@ -31,8 +31,8 @@ libmangosauth_a_SOURCES = \
|
||||||
AuthCrypt.h \
|
AuthCrypt.h \
|
||||||
BigNumber.cpp \
|
BigNumber.cpp \
|
||||||
BigNumber.h \
|
BigNumber.h \
|
||||||
Hmac.cpp \
|
HMACSHA1.cpp \
|
||||||
Hmac.h \
|
HMACSHA1.h \
|
||||||
SARC4.cpp \
|
SARC4.cpp \
|
||||||
SARC4.h \
|
SARC4.h \
|
||||||
Sha1.cpp \
|
Sha1.cpp \
|
||||||
|
|
|
||||||
|
|
@ -432,7 +432,7 @@
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
<ClCompile Include="..\..\src\shared\Auth\AuthCrypt.cpp" />
|
<ClCompile Include="..\..\src\shared\Auth\AuthCrypt.cpp" />
|
||||||
<ClCompile Include="..\..\src\shared\Auth\BigNumber.cpp" />
|
<ClCompile Include="..\..\src\shared\Auth\BigNumber.cpp" />
|
||||||
<ClCompile Include="..\..\src\shared\Auth\Hmac.cpp" />
|
<ClCompile Include="..\..\src\shared\Auth\HMACSHA1.cpp" />
|
||||||
<ClCompile Include="..\..\src\shared\Auth\SARC4.cpp" />
|
<ClCompile Include="..\..\src\shared\Auth\SARC4.cpp" />
|
||||||
<ClCompile Include="..\..\src\shared\Auth\Sha1.cpp" />
|
<ClCompile Include="..\..\src\shared\Auth\Sha1.cpp" />
|
||||||
<ClCompile Include="..\..\src\shared\Common.cpp" />
|
<ClCompile Include="..\..\src\shared\Common.cpp" />
|
||||||
|
|
@ -468,7 +468,7 @@
|
||||||
<ClInclude Include="..\..\dep\include\mersennetwister\MersenneTwister.h" />
|
<ClInclude Include="..\..\dep\include\mersennetwister\MersenneTwister.h" />
|
||||||
<ClInclude Include="..\..\src\shared\Auth\AuthCrypt.h" />
|
<ClInclude Include="..\..\src\shared\Auth\AuthCrypt.h" />
|
||||||
<ClInclude Include="..\..\src\shared\Auth\BigNumber.h" />
|
<ClInclude Include="..\..\src\shared\Auth\BigNumber.h" />
|
||||||
<ClInclude Include="..\..\src\shared\Auth\Hmac.h" />
|
<ClInclude Include="..\..\src\shared\Auth\HMACSHA1.h" />
|
||||||
<ClInclude Include="..\..\src\shared\Auth\SARC4.h" />
|
<ClInclude Include="..\..\src\shared\Auth\SARC4.h" />
|
||||||
<ClInclude Include="..\..\src\shared\Auth\Sha1.h" />
|
<ClInclude Include="..\..\src\shared\Auth\Sha1.h" />
|
||||||
<ClInclude Include="..\..\src\shared\ByteBuffer.h" />
|
<ClInclude Include="..\..\src\shared\ByteBuffer.h" />
|
||||||
|
|
|
||||||
|
|
@ -717,11 +717,11 @@
|
||||||
>
|
>
|
||||||
</File>
|
</File>
|
||||||
<File
|
<File
|
||||||
RelativePath="..\..\src\shared\Auth\Hmac.cpp"
|
RelativePath="..\..\src\shared\Auth\HMACSHA1.cpp"
|
||||||
>
|
>
|
||||||
</File>
|
</File>
|
||||||
<File
|
<File
|
||||||
RelativePath="..\..\src\shared\Auth\Hmac.h"
|
RelativePath="..\..\src\shared\Auth\HMACSHA1.h"
|
||||||
>
|
>
|
||||||
</File>
|
</File>
|
||||||
<File
|
<File
|
||||||
|
|
|
||||||
|
|
@ -723,11 +723,11 @@
|
||||||
>
|
>
|
||||||
</File>
|
</File>
|
||||||
<File
|
<File
|
||||||
RelativePath="..\..\src\shared\Auth\Hmac.cpp"
|
RelativePath="..\..\src\shared\Auth\HMACSHA1.cpp"
|
||||||
>
|
>
|
||||||
</File>
|
</File>
|
||||||
<File
|
<File
|
||||||
RelativePath="..\..\src\shared\Auth\Hmac.h"
|
RelativePath="..\..\src\shared\Auth\HMACSHA1.h"
|
||||||
>
|
>
|
||||||
</File>
|
</File>
|
||||||
<File
|
<File
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue