Some updates to payload_aes_busy structure, call AES_HW_CRYPTO_CMD with correct arg data types
This commit is contained in:
@@ -11,9 +11,12 @@ endif()
|
||||
|
||||
set(CMAKE_C_FLAGS "-nostdlib -O")
|
||||
|
||||
set(PAYLOADS payload_sync payload_aes payload_sysreg)
|
||||
set(PAYLOADS payload_sync payload_aes payload_sysreg payload_aes_busy)
|
||||
add_executable(payload_sync src/sync.c)
|
||||
|
||||
add_executable(payload_aes src/aes.c)
|
||||
add_executable(payload_aes_busy src/aes_busy.c)
|
||||
|
||||
add_executable(payload_sysreg src/sysreg.c)
|
||||
|
||||
file(MAKE_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}/bin/)
|
||||
|
||||
@@ -3,7 +3,14 @@
|
||||
|
||||
#include "brfunc_common.h"
|
||||
|
||||
#define AES_HW_CRYPTO_CMD ((BOOTROM_FUNC) ADDR_AES_HW_CRYPTO_CMD)
|
||||
PAYLOAD_SECTION
|
||||
int aes_hw_crypto_cmd(unsigned long long cmd,
|
||||
unsigned char *src, unsigned char *dst,
|
||||
int len, unsigned long long opts,
|
||||
unsigned char *key, unsigned char *iv)
|
||||
{
|
||||
return ((BOOTROM_FUNC) ADDR_AES_HW_CRYPTO_CMD)(cmd, src, dst, len, opts, key, iv);
|
||||
}
|
||||
|
||||
#define CREATE_KEY_COMMAND ((BOOTROM_FUNC) ADDR_CREATE_KEY_COMMAND)
|
||||
#define PUSH_COMMAND_KEY ((BOOTROM_FUNC) ADDR_PUSH_COMMAND_KEY)
|
||||
|
||||
22
c8_payloads/src/aes_busy.c
Normal file
22
c8_payloads/src/aes_busy.c
Normal file
@@ -0,0 +1,22 @@
|
||||
#include "util.h"
|
||||
#include "brfunc_aes.h"
|
||||
|
||||
|
||||
TEXT_SECTION
|
||||
int _start(void *src, void *dst, void *key, int rep)
|
||||
{
|
||||
int i, j;
|
||||
unsigned char src_data[16];
|
||||
for(j = 0; j < 16; j++)
|
||||
{
|
||||
src_data[j] = ((unsigned char *) src)[j];
|
||||
}
|
||||
|
||||
for(i = 0; i < rep; i++)
|
||||
{
|
||||
if(i % 2 == 0) aes_hw_crypto_cmd(16, src_data, dst, 16, 0, key, 0);
|
||||
else aes_hw_crypto_cmd(16, dst, src_data, 16, 0, key, 0);
|
||||
}
|
||||
|
||||
return 0;
|
||||
}
|
||||
Reference in New Issue
Block a user