From e8d4c55dfa41eee31056ac418c18bfffd948c70b Mon Sep 17 00:00:00 2001 From: Joey Adams Date: Sun, 30 Jan 2011 18:40:08 -0500 Subject: [PATCH] first commit --- README | 0 main.c | 1 + sha256.c | 1 + sha256.h | 1 + sha256.make | 1 + sha256.sit | Bin 0 -> 59439 bytes 6 files changed, 4 insertions(+) create mode 100644 README create mode 100644 main.c create mode 100644 sha256.c create mode 100644 sha256.h create mode 100644 sha256.make create mode 100755 sha256.sit diff --git a/README b/README new file mode 100644 index 0000000..e69de29 diff --git a/main.c b/main.c new file mode 100644 index 0000000..b27e578 --- /dev/null +++ b/main.c @@ -0,0 +1 @@ +#include "sha256.h" #include #include #include static int hash_file(const char *path); static const char *prompt_file(void); static char *showDigest(unsigned char *digest, int len, char *out); static void chomp(char *str); int main(int argc, char *argv[]) { int status = EXIT_SUCCESS; if (argc > 1) { int i; fprintf(stderr, "Hashing...\n"); for (i = 1; i < argc; i++) { if (hash_file(argv[i]) != 0) status = EXIT_FAILURE; } } else { const char *path = prompt_file(); fprintf(stderr, "Hashing %s\n", path); if (hash_file(path) != 0) status = EXIT_FAILURE; } return status; } static int hash_file(const char *path) { unsigned char digest[SHA256_HASH_SIZE]; char buffer[sizeof(digest) * 2 + 1]; if (SHA256File(path, digest) != 0) { perror(path); return -1; } printf("%s\n %s\n", showDigest(digest, sizeof(digest), buffer), path); return 0; } static const char *prompt_file(void) { static char buffer[1024]; printf("File: "); if (fgets(buffer, sizeof(buffer), stdin) == NULL) { fprintf(stderr, "No file path given\n"); exit(EXIT_FAILURE); } chomp(buffer); return buffer; } static char *showDigest(unsigned char *digest, int len, char *out) { static const char hex[16] = "0123456789abcdef"; char *ret = out; while (len--) { unsigned char b = *digest++; *out++ = hex[b >> 4]; *out++ = hex[b & 0xF]; } *out = 0; return ret; } static void chomp(char *str) { char *end = strchr(str, '\0'); if (end > str && end[-1] == '\n') end[-1] = '\0'; } \ No newline at end of file diff --git a/sha256.c b/sha256.c new file mode 100644 index 0000000..0116d0e --- /dev/null +++ b/sha256.c @@ -0,0 +1 @@ +/* * sha256.c - Implementation of the Secure Hash Algorithm-256 (SHA-256). * * Implemented from the description on the NIST Web site: * http://csrc.nist.gov/cryptval/shs.html * * Copyright (C) 2002 Southern Storm Software, Pty Ltd. * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation; either version 2 of the License, or * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA */ #include "sha256.h" #include #include #include /* * Some helper macros for processing 32-bit values, while * being careful about 32-bit vs 64-bit system differences. */ #if SIZEOF_LONG > 4 #define TRUNCLONG(x) ((x) & IL_MAX_UINT32) #define ROTATE(x,n) (TRUNCLONG(((x) >> (n))) | ((x) << (32 - (n)))) #define SHIFT(x,n) (TRUNCLONG(((x) >> (n)))) #else #define TRUNCLONG(x) (x) #define ROTATE(x,n) (((x) >> (n)) | ((x) << (32 - (n)))) #define SHIFT(x,n) ((x) >> (n)) #endif /* * Helper macros used by the SHA-256 computation. */ #define CH(x,y,z) (((x) & (y)) ^ (TRUNCLONG(~(x)) & (z))) #define MAJ(x,y,z) (((x) & (y)) ^ ((x) & (z)) ^ ((y) & (z))) #define SUM0(x) (ROTATE((x), 2) ^ ROTATE((x), 13) ^ ROTATE((x), 22)) #define SUM1(x) (ROTATE((x), 6) ^ ROTATE((x), 11) ^ ROTATE((x), 25)) #define RHO0(x) (ROTATE((x), 7) ^ ROTATE((x), 18) ^ SHIFT((x), 3)) #define RHO1(x) (ROTATE((x), 17) ^ ROTATE((x), 19) ^ SHIFT((x), 10)) /* * Constants used in each of the SHA-256 rounds. */ static unsigned int const K[64] = { 0x428a2f98, 0x71374491, 0xb5c0fbcf, 0xe9b5dba5, 0x3956c25b, 0x59f111f1, 0x923f82a4, 0xab1c5ed5, 0xd807aa98, 0x12835b01, 0x243185be, 0x550c7dc3, 0x72be5d74, 0x80deb1fe, 0x9bdc06a7, 0xc19bf174, 0xe49b69c1, 0xefbe4786, 0x0fc19dc6, 0x240ca1cc, 0x2de92c6f, 0x4a7484aa, 0x5cb0a9dc, 0x76f988da, 0x983e5152, 0xa831c66d, 0xb00327c8, 0xbf597fc7, 0xc6e00bf3, 0xd5a79147, 0x06ca6351, 0x14292967, 0x27b70a85, 0x2e1b2138, 0x4d2c6dfc, 0x53380d13, 0x650a7354, 0x766a0abb, 0x81c2c92e, 0x92722c85, 0xa2bfe8a1, 0xa81a664b, 0xc24b8b70, 0xc76c51a3, 0xd192e819, 0xd6990624, 0xf40e3585, 0x106aa070, 0x19a4c116, 0x1e376c08, 0x2748774c, 0x34b0bcb5, 0x391c0cb3, 0x4ed8aa4a, 0x5b9cca4f, 0x682e6ff3, 0x748f82ee, 0x78a5636f, 0x84c87814, 0x8cc70208, 0x90befffa, 0xa4506ceb, 0xbef9a3f7, 0xc67178f2 }; void SHA256Init(SHA256Context *sha) { sha->inputLen = 0; sha->A = 0x6a09e667; sha->B = 0xbb67ae85; sha->C = 0x3c6ef372; sha->D = 0xa54ff53a; sha->E = 0x510e527f; sha->F = 0x9b05688c; sha->G = 0x1f83d9ab; sha->H = 0x5be0cd19; sha->totalLen[0] = 0; sha->totalLen[1] = 0; } /* * Process a single block of input using the hash algorithm. */ static void ProcessBlock(SHA256Context *sha, const unsigned char *block) { unsigned int W[64]; unsigned int a, b, c, d, e, f, g, h; unsigned int temp, temp2; int t; /* Unpack the block into 64 32-bit words */ for(t = 0; t < 16; ++t) { W[t] = (((unsigned int)(block[t * 4 + 0])) << 24) | (((unsigned int)(block[t * 4 + 1])) << 16) | (((unsigned int)(block[t * 4 + 2])) << 8) | ((unsigned int)(block[t * 4 + 3])); } for(t = 16; t < 64; ++t) { W[t] = TRUNCLONG(RHO1(W[t - 2]) + W[t - 7] + RHO0(W[t - 15]) + W[t - 16]); } /* Load the SHA-256 state into local variables */ a = sha->A; b = sha->B; c = sha->C; d = sha->D; e = sha->E; f = sha->F; g = sha->G; h = sha->H; /* Perform 64 rounds of hash computations */ for(t = 0; t < 64; ++t) { temp = TRUNCLONG(h + SUM1(e) + CH(e, f, g) + K[t] + W[t]); temp2 = TRUNCLONG(SUM0(a) + MAJ(a, b, c)); h = g; g = f; f = e; e = TRUNCLONG(d + temp); d = c; c = b; b = a; a = TRUNCLONG(temp + temp2); } /* Combine the previous SHA-256 state with the new state */ sha->A = TRUNCLONG(sha->A + a); sha->B = TRUNCLONG(sha->B + b); sha->C = TRUNCLONG(sha->C + c); sha->D = TRUNCLONG(sha->D + d); sha->E = TRUNCLONG(sha->E + e); sha->F = TRUNCLONG(sha->F + f); sha->G = TRUNCLONG(sha->G + g); sha->H = TRUNCLONG(sha->H + h); /* Clear the temporary state */ //ILMemZero(W, sizeof(unsigned int) * 64); memset(W, 0, sizeof(unsigned int) * 64); a = b = c = d = e = f = g = h = temp = temp2 = 0; } void SHA256Data(SHA256Context *sha, const void *buffer, unsigned long len) { unsigned long templen; /* Add to the total length of the input stream */ //sha->totalLen += (unsigned long long)len; sha->totalLen[1] += len; if ((sha->totalLen[1] & 0xFFFFFFFF) < len) sha->totalLen[0]++; /* Copy the blocks into the input buffer and process them */ while(len > 0) { if(!(sha->inputLen) && len >= 64) { /* Short cut: no point copying the data twice */ ProcessBlock(sha, (const unsigned char *)buffer); buffer = (const void *)(((const unsigned char *)buffer) + 64); len -= 64; } else { templen = len; if(templen > (64 - sha->inputLen)) { templen = 64 - sha->inputLen; } memcpy(sha->input + sha->inputLen, buffer, templen); if((sha->inputLen += templen) >= 64) { ProcessBlock(sha, sha->input); sha->inputLen = 0; } buffer = (const void *)(((const unsigned char *)buffer) + templen); len -= templen; } } } /* * Write a 32-bit big-endian long value to a buffer. */ static void WriteLong(unsigned char *buf, unsigned int value) { buf[0] = (unsigned char)(value >> 24); buf[1] = (unsigned char)(value >> 16); buf[2] = (unsigned char)(value >> 8); buf[3] = (unsigned char)value; } void SHA256Finalize(SHA256Context *sha, unsigned char hash[SHA256_HASH_SIZE]) { //unsigned long long totalBits; unsigned long totalBits[2]; /* Compute the final hash if necessary */ if(hash) { /* Pad the input data to a multiple of 512 bits */ if(sha->inputLen >= 56) { /* Need two blocks worth of padding */ sha->input[(sha->inputLen)++] = (unsigned char)0x80; while(sha->inputLen < 64) { sha->input[(sha->inputLen)++] = (unsigned char)0x00; } ProcessBlock(sha, sha->input); sha->inputLen = 0; } else { /* Need one block worth of padding */ sha->input[(sha->inputLen)++] = (unsigned char)0x80; } while(sha->inputLen < 56) { sha->input[(sha->inputLen)++] = (unsigned char)0x00; } //totalBits = (sha->totalLen << 3); //WriteLong(sha->input + 56, (unsigned int)(totalBits >> 32)); //WriteLong(sha->input + 60, (unsigned int)totalBits); totalBits[0] = (sha->totalLen[0]<<3) | ( (sha->totalLen[1]>>29)&7 ); totalBits[1] = sha->totalLen[1]<<3; WriteLong(sha->input+56, totalBits[0]); WriteLong(sha->input+60, totalBits[1]); ProcessBlock(sha, sha->input); /* Write the final hash value to the supplied buffer */ WriteLong(hash, sha->A); WriteLong(hash + 4, sha->B); WriteLong(hash + 8, sha->C); WriteLong(hash + 12, sha->D); WriteLong(hash + 16, sha->E); WriteLong(hash + 20, sha->F); WriteLong(hash + 24, sha->G); WriteLong(hash + 28, sha->H); } /* Fill the entire context structure with zeros to blank it */ memset(sha, 0, sizeof(SHA256Context)); } int SHA256File(const char *path, unsigned char hash[SHA256_HASH_SIZE]) { FILE *f; unsigned char buffer[16384]; size_t readlen; SHA256Context ctx; f = fopen(path, "rb"); if (f == NULL) return -1; SHA256Init(&ctx); for (;;) { readlen = fread(buffer, 1, sizeof(buffer), f); if (readlen == 0) break; SHA256Data(&ctx, buffer, readlen); } if (ferror(f) != 0) { int e = errno; fclose(f); errno = e; return -1; } if (fclose(f) != 0) return -1; SHA256Finalize(&ctx, hash); return 0; } \ No newline at end of file diff --git a/sha256.h b/sha256.h new file mode 100644 index 0000000..c7e1d61 --- /dev/null +++ b/sha256.h @@ -0,0 +1 @@ +/* * il_crypt.h - Implementation of useful cryptographic algorithms. * * Copyright (C) 2001 Southern Storm Software, Pty Ltd. * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation; either version 2 of the License, or * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA */ #ifndef SHA256_H #define SHA256_H #include #ifdef __cplusplus extern "C" { #endif //The size of SHA-256 hash values. #define SHA256_HASH_SIZE 32 //Context block for SHA-256. typedef struct SHA256Context { unsigned char input[64]; unsigned int inputLen; unsigned int A, B, C, D, E, F, G, H; unsigned long totalLen[2]; //simulated long long in which [0] is most significant } SHA256Context; //Initialize a SHA-256 context block. void SHA256Init(SHA256Context *sha); //Input more data into a SHA-256 context block. void SHA256Data(SHA256Context *sha, const void *buffer, unsigned long len); //Finalize a SHA-256 context block and output the hash. void SHA256Finalize(SHA256Context *sha, unsigned char hash[SHA256_HASH_SIZE]); //computes the SHA256 of the remainder of the stream f (but does not close it) //Returns 0 on success, 1 on read error int SHA256Stream(FILE *f, unsigned char hash[SHA256_HASH_SIZE]); //computes the SHA256 of the file named filename //Returns 0 if successful, -1 if file not found, or 1 if read error. int SHA256File(const char *filename, unsigned char hash[SHA256_HASH_SIZE]); #ifdef __cplusplus }; #endif #endif /* _IL_CRYPT_H */ \ No newline at end of file diff --git a/sha256.make b/sha256.make new file mode 100644 index 0000000..6e59144 --- /dev/null +++ b/sha256.make @@ -0,0 +1 @@ +# File: sha256.make # Target: sha256 # Created: Monday, August 27, 1956 09:30:59 PM MAKEFILE = sha256.make ¥MondoBuild¥ = {MAKEFILE} # Make blank to avoid rebuilds when makefile is modified ObjDir = : Includes = Sym-PPC = -sym off Sym-68K = -sym off PPCCOptions = {Includes} {Sym-PPC} -opt speed COptions = {Includes} {Sym-68K} -model near -opt speed ### Source Files ### SrcFiles = ¶ main.c ¶ sha256.c ### Object Files ### ObjFiles-PPC = ¶ "{ObjDir}main.c.x" ¶ "{ObjDir}sha256.c.x" ObjFiles-68K = ¶ "{ObjDir}main.c.o" ¶ "{ObjDir}sha256.c.o" ### Libraries ### LibFiles-PPC = ¶ "{PPCLibraries}PPCSIOW.o" ¶ "{SharedLibraries}InterfaceLib" ¶ "{SharedLibraries}StdCLib" ¶ "{SharedLibraries}MathLib" ¶ "{PPCLibraries}StdCRuntime.o" ¶ "{PPCLibraries}PPCCRuntime.o" ¶ "{PPCLibraries}PPCToolLibs.o" LibFiles-68K = ¶ "{Libraries}MathLib.o" ¶ "{CLibraries}StdCLib.o" ¶ "{Libraries}SIOW.o" ¶ "{Libraries}MacRuntime.o" ¶ "{Libraries}IntEnv.o" ¶ "{Libraries}ToolLibs.o" ¶ "{Libraries}Interface.o" ### Default Rules ### .c.x Ä .c {¥MondoBuild¥} {PPCC} {depDir}{default}.c -o {targDir}{default}.c.x {PPCCOptions} .c.o Ä .c {¥MondoBuild¥} {C} {depDir}{default}.c -o {targDir}{default}.c.o {COptions} ### Build Rules ### sha256 ÄÄ {ObjFiles-PPC} {LibFiles-PPC} {¥MondoBuild¥} PPCLink ¶ -o {Targ} ¶ {ObjFiles-PPC} ¶ {LibFiles-PPC} ¶ {Sym-PPC} ¶ -mf -d ¶ -t 'APPL' ¶ -c 'siow' sha256 ÄÄ {ObjFiles-68K} {LibFiles-68K} {¥MondoBuild¥} ILink ¶ -o {Targ} ¶ {ObjFiles-68K} ¶ {LibFiles-68K} ¶ {Sym-68K} ¶ -mf -d ¶ -t 'APPL' ¶ -c 'siow' ¶ -model near ¶ -state rewrite ¶ -compact -pad 0 If "{Sym-68K}" =~ /-sym Å[nNuU]Å/ ILinkToSYM {Targ}.NJ -mf -sym 3.2 -c 'sade' End sha256 ÄÄ "{RIncludes}"SIOW.r {¥MondoBuild¥} Rez "{RIncludes}"SIOW.r -o {Targ} -append ### Required Dependencies ### "{ObjDir}main.c.x" "{ObjDir}main.c.o" Ä main.c "{ObjDir}sha256.c.x" "{ObjDir}sha256.c.o" Ä sha256.c ### Optional Dependencies ### ### Build this target to generate "include file" dependencies. ### Dependencies Ä $OutOfDate MakeDepend ¶ -append {MAKEFILE} ¶ -ignore "{CIncludes}" ¶ -objdir "{ObjDir}" ¶ -objext .x ¶ -objext .o ¶ {Includes} ¶ {SrcFiles} \ No newline at end of file diff --git a/sha256.sit b/sha256.sit new file mode 100755 index 0000000000000000000000000000000000000000..8d353726e4a2ed3b3a51d24c23cac8f6ad920a65 GIT binary patch literal 59439 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