diff options
author | Constanza Heath <[email protected]> | 2016-04-18 17:57:02 -0700 |
---|---|---|
committer | Constanza Heath <[email protected]> | 2016-04-18 17:57:02 -0700 |
commit | 297706a14d4024d0e98bbbcae45ce0dcfbcc5c4c (patch) | |
tree | 7defde7edb902db1a828385f162fd848e58fbb00 /tests/include | |
parent | c450df3218ee4cb8078e9042ad41e513e7ff8bc2 (diff) |
Adding ECC_DH, ECC_DSA, ECC_UTILS, and CMAC test cases. Adjusting namespacing to clarify when TC_ is for TinyCrypt vs Test Case.
Signed-off-by: Constanza Heath <[email protected]>
Diffstat (limited to 'tests/include')
-rw-r--r-- | tests/include/test_ecc_utils.h | 82 | ||||
-rw-r--r-- | tests/include/test_utils.h | 28 |
2 files changed, 99 insertions, 11 deletions
diff --git a/tests/include/test_ecc_utils.h b/tests/include/test_ecc_utils.h new file mode 100644 index 0000000..97c183c --- /dev/null +++ b/tests/include/test_ecc_utils.h @@ -0,0 +1,82 @@ +/* test_ecc_utils.h - TinyCrypt interface to common functions for ECC tests */ + +/* + * Copyright (C) 2015 by Intel Corporation, All Rights Reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * + * - Redistributions of source code must retain the above copyright notice, + * this list of conditions and the following disclaimer. + * + * - Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * - Neither the name of Intel Corporation nor the names of its contributors + * may be used to endorse or promote products derived from this software + * without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" + * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE + * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR + * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF + * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS + * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN + * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE + * POSSIBILITY OF SUCH DAMAGE. + * + * test_ecc_utils.h -- Interface to common functions for ECC tests. + */ + +#ifndef __TEST_ECC_UTILS_H__ +#define __TEST_ECC_UTILS_H__ + +#include <stdlib.h> +#include <stdbool.h> +#include <tinycrypt/constants.h> + +EccPoint keygen_vectors(char **d_vec, + char **qx_vec, + char **qy_vec, + int tests, + bool verbose); + +void getRandomBytes(void *p_dest, unsigned p_size); + +void string2host(uint32_t *native, const uint8_t *bytes, size_t len); + +int hex2int (char hex); + +int hex2bin( + uint8_t *buf, + const size_t buflen, + const char *hex, + const size_t hexlen); + +void string2scalar(uint32_t * scalar, uint32_t num_word32, char *str); + +void vli_print(uint32_t *p_vli, unsigned int p_size); + +void print_ecc_scalar( + const char *label, + const uint32_t * p_vli, + uint32_t num_word32); + +void check_code(const int num, + const char *name, + const int expected, + const int computed, + const int verbose); + +void check_ecc_result(const int num, const char *name, + const uint32_t *expected, + const uint32_t *computed, + const uint32_t num_word32, + const bool verbose); + +#endif + diff --git a/tests/include/test_utils.h b/tests/include/test_utils.h index 0a572de..5f51511 100644 --- a/tests/include/test_utils.h +++ b/tests/include/test_utils.h @@ -19,22 +19,28 @@ * * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE - * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR - * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER - * CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, - * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE - * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE + * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR + * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF + * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS + * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN + * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE + * POSSIBILITY OF SUCH DAMAGE. + * + * test_utils.h -- Interface to common functions for tests. */ #ifndef __TEST_UTILS_H__ #define __TEST_UTILS_H__ -#include <string.h> -#include <stdio.h> +#include <tinycrypt/constants.h> + #include <stdint.h> +#include <stdlib.h> +#include <stdio.h> +#include <string.h> #define PRINT_DATA(fmt, ...) printf(fmt, ##__VA_ARGS__) @@ -48,6 +54,7 @@ #define PASS "PASS" #define FMT_ERROR "%s - %s@%d. " +/* TC_ here stands for 'Test Case' not 'TinyCrypt' */ #define TC_PASS 0 #define TC_FAIL 1 @@ -76,7 +83,6 @@ "PROJECT EXECUTION %s\n", \ result == TC_PASS ? "SUCCESSFUL" : "FAILED"); \ } while (0) - static inline void show_str(const char *label, const uint8_t *s, size_t len) { uint32_t i; |