]> cvs.zerfleddert.de Git - proxmark3-svn/commitdiff
Removed dependency on openssl, added AES implementation from polarssl instead
authorMartin Holst Swende <martin@swende.se>
Mon, 12 Jan 2015 20:47:36 +0000 (21:47 +0100)
committerMartin Holst Swende <martin@swende.se>
Mon, 12 Jan 2015 20:47:36 +0000 (21:47 +0100)
client/Makefile
client/scripting.c

index 37616e4855180fd7b41e35c8109bafc8769ffd84..523a1ad117c8fbf977ac0ee6c5ff9015600dc268 100644 (file)
@@ -13,9 +13,9 @@ CXX=g++
 VPATH = ../common
 OBJDIR = obj
 
-LDLIBS = -L/opt/local/lib -L/usr/local/lib ../liblua/liblua.a -lreadline -lpthread -lm -lcrypto
+LDLIBS = -L/opt/local/lib -L/usr/local/lib ../liblua/liblua.a -lreadline -lpthread -lm
 LDFLAGS = $(COMMON_FLAGS)
-CFLAGS = -std=c99 -lcrypto -I. -I../include -I../common -I/opt/local/include -I../liblua -Wall $(COMMON_FLAGS) -g -O4 
+CFLAGS = -std=c99 -I. -I../include -I../common -I/opt/local/include -I../liblua -Wall $(COMMON_FLAGS) -g -O4 
 LUAPLATFORM = generic
 
 ifneq (,$(findstring MINGW,$(platform)))
@@ -94,6 +94,7 @@ CMDSRCS =     nonce2key/crapto1.c\
                        scripting.c\
                        cmdscript.c\
                        pm3_bitlib.c\
+                       aes.c\
 
 
 COREOBJS = $(CORESRCS:%.c=$(OBJDIR)/%.o)
index eed5544b929b3bcce248419d7f9ab72a8827b8d6..0ccdeeec7a8d497d5a288fef2fcc0e8998a0e865 100644 (file)
@@ -18,8 +18,8 @@
 #include "util.h"
 #include "nonce2key/nonce2key.h"
 #include "../common/iso15693tools.h"
-#include <openssl/aes.h>   
 #include "../common/crc16.h"
+#include "aes.h"
 /**
  * The following params expected:
  *  UsbCommand c
@@ -240,10 +240,10 @@ static int l_aes(lua_State *L)
 
     const char *p_encTxt = luaL_checklstring(L, 2, &size);
     
-       unsigned char indata[AES_BLOCK_SIZE] = {0x00};
-       unsigned char outdata[AES_BLOCK_SIZE] = {0x00};
-    unsigned char aes_key[AES_BLOCK_SIZE] = {0x00};
-       unsigned char iv[AES_BLOCK_SIZE] = {0x00};
+       unsigned char indata[16] = {0x00};
+       unsigned char outdata[16] = {0x00};
+    unsigned char aes_key[16] = {0x00};
+       unsigned char iv[16] = {0x00};
        
        // convert key to bytearray
        for (i = 0; i < 32; i += 2) {
@@ -255,10 +255,14 @@ static int l_aes(lua_State *L)
                sscanf(&p_key[i], "%02x", (unsigned int *)&aes_key[i / 2]);
        }
        
-       AES_KEY key;
-       AES_set_decrypt_key(aes_key, 128, &key);
-    AES_cbc_encrypt(indata, outdata, sizeof(indata), &key, iv, AES_DECRYPT);
-
+       //AES_KEY key;
+    //AES_set_decrypt_key(aes_key, 128, &key);
+    //AES_cbc_encrypt(indata, outdata, sizeof(indata), &key, iv, AES_DECRYPT);
+
+    aes_context ctx;
+    aes_init(&ctx);
+    aes_setkey_enc(&ctx,(const unsigned char *)p_key,128);
+       aes_crypt_cbc(&ctx,AES_DECRYPT,sizeof(indata), iv, indata,outdata );
     //Push decrypted array as a string
        lua_pushlstring(L,(const char *)&outdata, sizeof(outdata));
        return 1;// return 1 to signal one return value
Impressum, Datenschutz