Add Tinycrypt based SHA-512 for ED25519
Add option to build ed25519 with tinycrypt; enable tinycrypt based
sha-512 for ed25519 sim tests.
Signed-off-by: Fabio Utzig <utzig@apache.org>
diff --git a/sim/mcuboot-sys/build.rs b/sim/mcuboot-sys/build.rs
index 3bf4409..66bba79 100644
--- a/sim/mcuboot-sys/build.rs
+++ b/sim/mcuboot-sys/build.rs
@@ -97,16 +97,18 @@
conf.file("../../ext/mbedtls-asn1/src/asn1parse.c");
} else if sig_ed25519 {
conf.define("MCUBOOT_SIGN_ED25519", None);
- conf.define("MCUBOOT_USE_MBED_TLS", None);
+ conf.define("MCUBOOT_USE_TINYCRYPT", None);
- conf.include("../../ext/mbedtls/include");
- conf.file("../../ext/mbedtls/library/sha256.c");
- conf.file("../../ext/mbedtls/library/sha512.c");
+ conf.include("../../ext/tinycrypt/lib/include");
+ conf.include("../../ext/tinycrypt-sha512/lib/include");
+ conf.include("../../ext/mbedtls-asn1/include");
+ conf.file("../../ext/tinycrypt/lib/source/sha256.c");
+ conf.file("../../ext/tinycrypt-sha512/lib/source/sha512.c");
+ conf.file("../../ext/tinycrypt/lib/source/utils.c");
conf.file("csupport/keys.c");
conf.file("../../ext/fiat/src/curve25519.c");
- conf.file("../../ext/mbedtls/library/platform.c");
- conf.file("../../ext/mbedtls/library/platform_util.c");
- conf.file("../../ext/mbedtls/library/asn1parse.c");
+ conf.file("../../ext/mbedtls-asn1/src/platform_util.c");
+ conf.file("../../ext/mbedtls-asn1/src/asn1parse.c");
} else if !enc_ec256 {
// No signature type, only sha256 validation. The default
// configuration file bundled with mbedTLS is sufficient.
@@ -221,7 +223,7 @@
} else if (sig_ecdsa || enc_ec256) && !enc_kw {
conf.define("MBEDTLS_CONFIG_FILE", Some("<config-asn1.h>"));
} else if sig_ed25519 {
- conf.define("MBEDTLS_CONFIG_FILE", Some("<config-ed25519.h>"));
+ conf.define("MBEDTLS_CONFIG_FILE", Some("<config-asn1.h>"));
} else if enc_kw {
conf.define("MBEDTLS_CONFIG_FILE", Some("<config-kw.h>"));
}