diff options
| author | jhurst <jhurst@cinecert.com> | 2020-07-19 11:35:27 -0700 |
|---|---|---|
| committer | jhurst <jhurst@cinecert.com> | 2020-07-19 11:35:27 -0700 |
| commit | 046039d6cefb99790d52959d7a640fecbce4ab5c (patch) | |
| tree | fc772376285b072962391a90bd55ec6d8235c0b9 /src | |
| parent | f675e78b9c59dad48807285375ee2e885667a12b (diff) | |
editorial changes
Diffstat (limited to 'src')
| -rw-r--r-- | src/KM_sha1.cpp | 34 | ||||
| -rw-r--r-- | src/KM_sha1.h | 9 |
2 files changed, 22 insertions, 21 deletions
diff --git a/src/KM_sha1.cpp b/src/KM_sha1.cpp index 33d61ea..ae62b55 100644 --- a/src/KM_sha1.cpp +++ b/src/KM_sha1.cpp @@ -1,6 +1,6 @@ /* SHA-1 in C -By Steve Reid <steve@edmweb.com> +By Steve Reid <email redacted> 100% Public Domain Test Vectors (from FIPS PUB 180-1) @@ -13,6 +13,7 @@ A million repetitions of "a" */ #include <KM_sha1.h> +#include <string.h> using namespace Kumu; @@ -41,17 +42,17 @@ using namespace Kumu; static void SHA1Transform( - uint32_t state[5], - const unsigned char buffer[64]) + ui32_t state[5], + const byte_t buffer[64]) { typedef union { - unsigned char c[64]; - uint32_t l[16]; - uint64_t q[8]; + byte_t c[64]; + ui32_t l[16]; + ui64_t q[8]; } CHAR64LONG16; - uint32_t a, b, c, d, e; + ui32_t a, b, c, d, e; size_t i; CHAR64LONG16 block[1]; /* use array to appear as a pointer */ @@ -185,11 +186,11 @@ Kumu::SHA1_Init( void Kumu::SHA1_Update( SHA1_CTX * context, - const unsigned char *data, - uint32_t len + const byte_t *data, + ui32_t len ) { - uint32_t i, j; + ui32_t i, j; j = context->count[0]; if ((context->count[0] += len << 3) < j) @@ -219,16 +220,16 @@ Kumu::SHA1_Update( void Kumu::SHA1_Final( - unsigned char digest[20], + byte_t digest[20], SHA1_CTX * context) { - unsigned i; - unsigned char finalcount[8]; - unsigned char c; + size_t i; + byte_t finalcount[8]; + byte_t c; for (i = 0; i < 8; i++) { - finalcount[i] = (unsigned char) ((context->count[(i >= 4 ? 0 : 1)] >> ((3 - (i & 3)) * 8)) & 255); /* Endian independent */ + finalcount[i] = (byte_t) ((context->count[(i >= 4 ? 0 : 1)] >> ((3 - (i & 3)) * 8)) & 255); /* Endian independent */ } c = 0200; @@ -241,8 +242,7 @@ Kumu::SHA1_Final( SHA1_Update(context, finalcount, 8); /* Should cause a SHA1Transform() */ for (i = 0; i < 20; i++) { - digest[i] = (unsigned char) - ((context->state[i >> 2] >> ((3 - (i & 3)) * 8)) & 255); + digest[i] = (byte_t)((context->state[i >> 2] >> ((3 - (i & 3)) * 8)) & 255); } } diff --git a/src/KM_sha1.h b/src/KM_sha1.h index b68341c..ea232e2 100644 --- a/src/KM_sha1.h +++ b/src/KM_sha1.h @@ -1,5 +1,5 @@ /* -Copyright (c) 2006-2020, John Hurst +Copyright (c) 2020, John Hurst All rights reserved. Redistribution and use in source and binary forms, with or without @@ -32,13 +32,14 @@ THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. #ifndef _KM_SHA1_H_ #define _KM_SHA1_H_ -#include <KM_util.h> +#include <KM_platform.h> namespace Kumu { + int const SHA1_DIGEST_LENGTH = 20; typedef struct { - uint32_t state[5]; - uint32_t count[2]; + ui32_t state[5]; + ui32_t count[2]; byte_t buffer[64]; } SHA1_CTX; |
