Changed every memcpy to SCA equivalent mbedtls_platform_memcpy
This makes physical attacks more difficult.
diff --git a/library/xtea.c b/library/xtea.c
index 5cb45c9..c66bdd4 100644
--- a/library/xtea.c
+++ b/library/xtea.c
@@ -154,13 +154,13 @@
{
while( length > 0 )
{
- memcpy( temp, input, 8 );
+ mbedtls_platform_memcpy( temp, input, 8 );
mbedtls_xtea_crypt_ecb( ctx, mode, input, output );
for( i = 0; i < 8; i++ )
output[i] = (unsigned char)( output[i] ^ iv[i] );
- memcpy( iv, temp, 8 );
+ mbedtls_platform_memcpy( iv, temp, 8 );
input += 8;
output += 8;
@@ -175,7 +175,7 @@
output[i] = (unsigned char)( input[i] ^ iv[i] );
mbedtls_xtea_crypt_ecb( ctx, mode, output, output );
- memcpy( iv, output, 8 );
+ mbedtls_platform_memcpy( iv, output, 8 );
input += 8;
output += 8;
@@ -245,7 +245,7 @@
if( verbose != 0 )
mbedtls_printf( " XTEA test #%d: ", i + 1 );
- memcpy( buf, xtea_test_pt[i], 8 );
+ mbedtls_platform_memcpy( buf, xtea_test_pt[i], 8 );
mbedtls_xtea_setup( &ctx, xtea_test_key[i] );
mbedtls_xtea_crypt_ecb( &ctx, MBEDTLS_XTEA_ENCRYPT, buf, buf );