The C++ framework for developing highly scalable, high performance servers on Windows platforms.

SHA1.cpp File Reference


Namespaces

namespace  JetByteTools
namespace  JetByteTools::Core

Defines

#define UL_SHA1LENGTH   20
#define UL_SHA1HANDSOFF
#define rol(value, bits)   (((value) << (bits)) | ((value) >> (32 - (bits))))
#define blk0(i)
#define blk(i)
#define R0(v, w, x, y, z, i)   z+=((w&(x^y))^y)+blk0(i)+0x5A827999+rol(v,5);w=rol(w,30);
#define R1(v, w, x, y, z, i)   z+=((w&(x^y))^y)+blk(i)+0x5A827999+rol(v,5);w=rol(w,30);
#define R2(v, w, x, y, z, i)   z+=(w^x^y)+blk(i)+0x6ED9EBA1+rol(v,5);w=rol(w,30);
#define R3(v, w, x, y, z, i)   z+=(((w|x)&y)|(w&x))+blk(i)+0x8F1BBCDC+rol(v,5);w=rol(w,30);
#define R4(v, w, x, y, z, i)   z+=(w^x^y)+blk(i)+0xCA62C1D6+rol(v,5);w=rol(w,30);

Functions

static void ul_SHA1Transform (uint32_t state[5], const unsigned char buffer[64])
static void ul_SHA1Init (UL_SHA1_CTX *context)
static void ul_SHA1Update (UL_SHA1_CTX *context, const unsigned char *data, uint32_t len)
static void ul_SHA1Final (unsigned char digest[UL_SHA1LENGTH], UL_SHA1_CTX *context)
static void ul_SHA1 (char *hash_out, const char *str, unsigned len)
void ul_SHA1Final (unsigned char digest[20], UL_SHA1_CTX *context)


Define Documentation

#define blk (  ) 

Value:

(block->l[i&15] = rol(block->l[(i+13)&15]^block->l[(i+8)&15] \
    ^block->l[(i+2)&15]^block->l[i&15],1))

#define blk0 (  ) 

Value:

(block->l[i] = (rol(block->l[i],24)&0xFF00FF00) \
    |(rol(block->l[i],8)&0x00FF00FF))

#define R0 ( v,
w,
x,
y,
z,
 )     z+=((w&(x^y))^y)+blk0(i)+0x5A827999+rol(v,5);w=rol(w,30);

#define R1 ( v,
w,
x,
y,
z,
 )     z+=((w&(x^y))^y)+blk(i)+0x5A827999+rol(v,5);w=rol(w,30);

#define R2 ( v,
w,
x,
y,
z,
 )     z+=(w^x^y)+blk(i)+0x6ED9EBA1+rol(v,5);w=rol(w,30);

#define R3 ( v,
w,
x,
y,
z,
 )     z+=(((w|x)&y)|(w&x))+blk(i)+0x8F1BBCDC+rol(v,5);w=rol(w,30);

#define R4 ( v,
w,
x,
y,
z,
 )     z+=(w^x^y)+blk(i)+0xCA62C1D6+rol(v,5);w=rol(w,30);

#define rol ( value,
bits   )     (((value) << (bits)) | ((value) >> (32 - (bits))))

#define UL_SHA1HANDSOFF

#define UL_SHA1LENGTH   20


Generated on Sun Sep 12 19:06:44 2021 for The Server Framework - v7.4 by doxygen 1.5.3