]> git.stg.codes - stg.git/commitdiff
Cryptography with void* in the interfaces.
authorMaksym Mamontov <madf@madf.info>
Fri, 22 Jul 2022 19:38:27 +0000 (22:38 +0300)
committerMaksym Mamontov <madf@madf.info>
Fri, 22 Jul 2022 19:38:27 +0000 (22:38 +0300)
libs/crypto/blowfish.c
libs/crypto/include/stg/blowfish.h

index 384d3a10e0d45cbb667bcdc5144c641939625121..42b9158ab9efd9789cccf372d02a1a605460b626 100644 (file)
@@ -384,10 +384,11 @@ Xl = Xl ^ ctx->P[0];
 *xr = Xr;
 }
 //-----------------------------------------------------------------------------
-void Blowfish_Init(BLOWFISH_CTX *ctx, unsigned char *key, int keyLen)
+void Blowfish_Init(BLOWFISH_CTX *ctx, void* key, int keyLen)
 {
 int i, j, k;
 uint32_t data, datal, datar;
+unsigned char* keyPtr = key;
 
 memset(ctx->S, 0, sizeof(ctx->S));
 
@@ -406,7 +407,7 @@ for (i = 0; i < N + 2; ++i)
 
     for (k = 0; k < 4; ++k)
         {
-        data = (data << 8) | key[j];
+        data = (data << 8) | keyPtr[j];
         j = j + 1;
         if (j >= keyLen)
             j = 0;
index 6a4e6f317531a186f8a8e4b7e868fc3cd451e080..101b2f6fcd0b22754e0ed311508aef9a50bb0d7f 100644 (file)
@@ -24,7 +24,7 @@ typedef struct {
   uint32_t S[4][256];
 } BLOWFISH_CTX;
 
-void Blowfish_Init(BLOWFISH_CTX * ctx, unsigned char * key, int keyLen);
+void Blowfish_Init(BLOWFISH_CTX * ctx, void* key, int keyLen);
 void Blowfish_Encrypt(const BLOWFISH_CTX * ctx, uint32_t * xl, uint32_t * xr);
 void Blowfish_Decrypt(const BLOWFISH_CTX * ctx, uint32_t * xl, uint32_t * xr);