初始提交:terminalX 可运行态(M0/M1/M1.5 已真机验证)
- M0: libghostty SSH 终端(渲染/输入/连接)+ 白屏修复(OutputGate) + 会话状态机/自动重连 - M1: tsnet 用户态组网 + SSH-over-tsnet(fd 桥),shell 级真机验证;R5(Go+gvisor+C+++Swift 同进程) retire - M1.5: tmux -CC 原生 tab(MVP) - 结构: packages/(TXCore·TXTransport), apps/TerminalX, vendor/(libghostty-spm/libssh2/mbedtls/tsnet-bridge), artifacts/ - 文档: CLAUDE.md + docs/HANDOFF.md(新会话入口) - 环境: 认证代理→依赖 vendor 本地化;Go 在 ~/.local/go;仅模拟器/未签名 - 待续: M2 mosh, tmux 多 pane, M4 安全(host key/SE) Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
112
vendor/mbedtls/tests/suites/helpers.function
vendored
Normal file
112
vendor/mbedtls/tests/suites/helpers.function
vendored
Normal file
@@ -0,0 +1,112 @@
|
||||
#line 2 "suites/helpers.function"
|
||||
/*----------------------------------------------------------------------------*/
|
||||
/* Headers */
|
||||
|
||||
#include <test/arguments.h>
|
||||
#include <test/helpers.h>
|
||||
#include <test/macros.h>
|
||||
#include <test/random.h>
|
||||
#include <test/bignum_helpers.h>
|
||||
#include <test/psa_crypto_helpers.h>
|
||||
#include <test/threading_helpers.h>
|
||||
|
||||
#include <errno.h>
|
||||
#include <limits.h>
|
||||
#include <stdint.h>
|
||||
#include <stdlib.h>
|
||||
#include <string.h>
|
||||
|
||||
#if defined(MBEDTLS_ERROR_C)
|
||||
#include "mbedtls/error.h"
|
||||
#endif
|
||||
#include "mbedtls/platform.h"
|
||||
|
||||
#if defined(MBEDTLS_MEMORY_BUFFER_ALLOC_C)
|
||||
#include "mbedtls/memory_buffer_alloc.h"
|
||||
#endif
|
||||
|
||||
#if defined(__unix__) || (defined(__APPLE__) && defined(__MACH__))
|
||||
#include <unistd.h>
|
||||
#endif
|
||||
|
||||
/*----------------------------------------------------------------------------*/
|
||||
/* Status and error constants */
|
||||
|
||||
#define DEPENDENCY_SUPPORTED 0 /* Dependency supported by build */
|
||||
#define KEY_VALUE_MAPPING_FOUND 0 /* Integer expression found */
|
||||
#define DISPATCH_TEST_SUCCESS 0 /* Test dispatch successful */
|
||||
|
||||
#define KEY_VALUE_MAPPING_NOT_FOUND -1 /* Integer expression not found */
|
||||
#define DEPENDENCY_NOT_SUPPORTED -2 /* Dependency not supported */
|
||||
#define DISPATCH_TEST_FN_NOT_FOUND -3 /* Test function not found */
|
||||
#define DISPATCH_INVALID_TEST_DATA -4 /* Invalid test parameter type.
|
||||
Only int, string, binary data
|
||||
and integer expressions are
|
||||
allowed */
|
||||
#define DISPATCH_UNSUPPORTED_SUITE -5 /* Test suite not supported by the
|
||||
build */
|
||||
|
||||
/*----------------------------------------------------------------------------*/
|
||||
/* Global variables */
|
||||
|
||||
/*----------------------------------------------------------------------------*/
|
||||
/* Helper flags for complex dependencies */
|
||||
|
||||
/* Indicates whether we expect mbedtls_entropy_init
|
||||
* to initialize some strong entropy source. */
|
||||
#if !defined(MBEDTLS_NO_DEFAULT_ENTROPY_SOURCES) && \
|
||||
(!defined(MBEDTLS_NO_PLATFORM_ENTROPY) || \
|
||||
defined(MBEDTLS_ENTROPY_HARDWARE_ALT) || \
|
||||
defined(ENTROPY_NV_SEED))
|
||||
#define ENTROPY_HAVE_STRONG
|
||||
#endif
|
||||
|
||||
|
||||
/*----------------------------------------------------------------------------*/
|
||||
/* Helper Functions */
|
||||
|
||||
#if defined(__unix__) || (defined(__APPLE__) && defined(__MACH__))
|
||||
static int redirect_output(FILE *out_stream, const char *path)
|
||||
{
|
||||
int out_fd, dup_fd;
|
||||
FILE *path_stream;
|
||||
|
||||
out_fd = fileno(out_stream);
|
||||
dup_fd = dup(out_fd);
|
||||
|
||||
if (dup_fd == -1) {
|
||||
return -1;
|
||||
}
|
||||
|
||||
path_stream = fopen(path, "w");
|
||||
if (path_stream == NULL) {
|
||||
close(dup_fd);
|
||||
return -1;
|
||||
}
|
||||
|
||||
fflush(out_stream);
|
||||
if (dup2(fileno(path_stream), out_fd) == -1) {
|
||||
close(dup_fd);
|
||||
fclose(path_stream);
|
||||
return -1;
|
||||
}
|
||||
|
||||
fclose(path_stream);
|
||||
return dup_fd;
|
||||
}
|
||||
|
||||
static int restore_output(FILE *out_stream, int dup_fd)
|
||||
{
|
||||
int out_fd = fileno(out_stream);
|
||||
|
||||
fflush(out_stream);
|
||||
if (dup2(dup_fd, out_fd) == -1) {
|
||||
close(out_fd);
|
||||
close(dup_fd);
|
||||
return -1;
|
||||
}
|
||||
|
||||
close(dup_fd);
|
||||
return 0;
|
||||
}
|
||||
#endif /* __unix__ || __APPLE__ __MACH__ */
|
||||
795
vendor/mbedtls/tests/suites/host_test.function
vendored
Normal file
795
vendor/mbedtls/tests/suites/host_test.function
vendored
Normal file
@@ -0,0 +1,795 @@
|
||||
#line 2 "suites/host_test.function"
|
||||
|
||||
/**
|
||||
* \brief Verifies that string is in string parameter format i.e. "<str>"
|
||||
* It also strips enclosing '"' from the input string.
|
||||
*
|
||||
* \param str String parameter.
|
||||
*
|
||||
* \return 0 if success else 1
|
||||
*/
|
||||
static int verify_string(char **str)
|
||||
{
|
||||
if ((*str)[0] != '"' ||
|
||||
(*str)[strlen(*str) - 1] != '"') {
|
||||
mbedtls_fprintf(stderr,
|
||||
"Expected string (with \"\") for parameter and got: %s\n", *str);
|
||||
return -1;
|
||||
}
|
||||
|
||||
(*str)++;
|
||||
(*str)[strlen(*str) - 1] = '\0';
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
/**
|
||||
* \brief Verifies that string is an integer. Also gives the converted
|
||||
* integer value.
|
||||
*
|
||||
* \param str Input string.
|
||||
* \param p_value Pointer to output value.
|
||||
*
|
||||
* \return 0 if success else 1
|
||||
*/
|
||||
static int verify_int(char *str, intmax_t *p_value)
|
||||
{
|
||||
char *end = NULL;
|
||||
errno = 0;
|
||||
/* Limit the range to long: for large integers, the test framework will
|
||||
* use expressions anyway. */
|
||||
long value = strtol(str, &end, 0);
|
||||
if (errno == EINVAL || *end != '\0') {
|
||||
mbedtls_fprintf(stderr,
|
||||
"Expected integer for parameter and got: %s\n", str);
|
||||
return KEY_VALUE_MAPPING_NOT_FOUND;
|
||||
}
|
||||
if (errno == ERANGE) {
|
||||
mbedtls_fprintf(stderr, "Integer out of range: %s\n", str);
|
||||
return KEY_VALUE_MAPPING_NOT_FOUND;
|
||||
}
|
||||
*p_value = value;
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* \brief Usage string.
|
||||
*
|
||||
*/
|
||||
#define USAGE \
|
||||
"Usage: %s [OPTIONS] files...\n\n" \
|
||||
" Command line arguments:\n" \
|
||||
" files... One or more test data files. If no file is\n" \
|
||||
" specified the following default test case\n" \
|
||||
" file is used:\n" \
|
||||
" %s\n\n" \
|
||||
" Options:\n" \
|
||||
" -v | --verbose Display full information about each test\n" \
|
||||
" -h | --help Display this information\n\n", \
|
||||
argv[0], \
|
||||
"TESTCASE_FILENAME"
|
||||
|
||||
|
||||
/**
|
||||
* \brief Read a line from the passed file pointer.
|
||||
*
|
||||
* \param f FILE pointer
|
||||
* \param buf Pointer to memory to hold read line.
|
||||
* \param len Length of the buf.
|
||||
*
|
||||
* \return 0 if success else -1
|
||||
*/
|
||||
static int get_line(FILE *f, char *buf, size_t len)
|
||||
{
|
||||
char *ret;
|
||||
int i = 0, str_len = 0, has_string = 0;
|
||||
|
||||
/* Read until we get a valid line */
|
||||
do {
|
||||
ret = fgets(buf, len, f);
|
||||
if (ret == NULL) {
|
||||
return -1;
|
||||
}
|
||||
|
||||
str_len = strlen(buf);
|
||||
|
||||
/* Skip empty line and comment */
|
||||
if (str_len == 0 || buf[0] == '#') {
|
||||
continue;
|
||||
}
|
||||
has_string = 0;
|
||||
for (i = 0; i < str_len; i++) {
|
||||
char c = buf[i];
|
||||
if (c != ' ' && c != '\t' && c != '\n' &&
|
||||
c != '\v' && c != '\f' && c != '\r') {
|
||||
has_string = 1;
|
||||
break;
|
||||
}
|
||||
}
|
||||
} while (!has_string);
|
||||
|
||||
/* Strip new line and carriage return */
|
||||
ret = buf + strlen(buf);
|
||||
if (ret-- > buf && *ret == '\n') {
|
||||
*ret = '\0';
|
||||
}
|
||||
if (ret-- > buf && *ret == '\r') {
|
||||
*ret = '\0';
|
||||
}
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
/**
|
||||
* \brief Splits string delimited by ':'. Ignores '\:'.
|
||||
*
|
||||
* \param buf Input string
|
||||
* \param len Input string length
|
||||
* \param params Out params found
|
||||
* \param params_len Out params array len
|
||||
*
|
||||
* \return Count of strings found.
|
||||
*/
|
||||
static int parse_arguments(char *buf, size_t len, char **params,
|
||||
size_t params_len)
|
||||
{
|
||||
size_t cnt = 0, i;
|
||||
char *cur = buf;
|
||||
char *p = buf, *q;
|
||||
|
||||
params[cnt++] = cur;
|
||||
|
||||
while (*p != '\0' && p < (buf + len)) {
|
||||
if (*p == '\\') {
|
||||
p++;
|
||||
p++;
|
||||
continue;
|
||||
}
|
||||
if (*p == ':') {
|
||||
if (p + 1 < buf + len) {
|
||||
cur = p + 1;
|
||||
TEST_HELPER_ASSERT(cnt < params_len);
|
||||
params[cnt++] = cur;
|
||||
}
|
||||
*p = '\0';
|
||||
}
|
||||
|
||||
p++;
|
||||
}
|
||||
|
||||
/* Replace backslash escapes in strings */
|
||||
for (i = 0; i < cnt; i++) {
|
||||
p = params[i];
|
||||
q = params[i];
|
||||
|
||||
while (*p != '\0') {
|
||||
if (*p == '\\') {
|
||||
++p;
|
||||
switch (*p) {
|
||||
case 'n':
|
||||
*p = '\n';
|
||||
break;
|
||||
default:
|
||||
// Fall through to copying *p
|
||||
break;
|
||||
}
|
||||
}
|
||||
*(q++) = *(p++);
|
||||
}
|
||||
*q = '\0';
|
||||
}
|
||||
|
||||
return cnt;
|
||||
}
|
||||
|
||||
/**
|
||||
* \brief Converts parameters into test function consumable parameters.
|
||||
* Example: Input: {"int", "0", "char*", "Hello",
|
||||
* "hex", "abef", "exp", "1"}
|
||||
* Output: {
|
||||
* 0, // Verified int
|
||||
* "Hello", // Verified string
|
||||
* 2, { 0xab, 0xef },// Converted len,hex pair
|
||||
* 9600 // Evaluated expression
|
||||
* }
|
||||
*
|
||||
*
|
||||
* \param cnt Parameter array count.
|
||||
* \param params Out array of found parameters.
|
||||
* \param int_params_store Memory for storing processed integer parameters.
|
||||
*
|
||||
* \return 0 for success else 1
|
||||
*/
|
||||
static int convert_params(size_t cnt, char **params,
|
||||
mbedtls_test_argument_t *int_params_store)
|
||||
{
|
||||
char **cur = params;
|
||||
char **out = params;
|
||||
int ret = DISPATCH_TEST_SUCCESS;
|
||||
|
||||
while (cur < params + cnt) {
|
||||
char *type = *cur++;
|
||||
char *val = *cur++;
|
||||
|
||||
if (strcmp(type, "char*") == 0) {
|
||||
if (verify_string(&val) == 0) {
|
||||
*out++ = val;
|
||||
} else {
|
||||
ret = (DISPATCH_INVALID_TEST_DATA);
|
||||
break;
|
||||
}
|
||||
} else if (strcmp(type, "int") == 0) {
|
||||
if (verify_int(val, &int_params_store->sint) == 0) {
|
||||
*out++ = (char *) int_params_store++;
|
||||
} else {
|
||||
ret = (DISPATCH_INVALID_TEST_DATA);
|
||||
break;
|
||||
}
|
||||
} else if (strcmp(type, "hex") == 0) {
|
||||
if (verify_string(&val) == 0) {
|
||||
size_t len;
|
||||
|
||||
TEST_HELPER_ASSERT(
|
||||
mbedtls_test_unhexify((unsigned char *) val, strlen(val),
|
||||
val, &len) == 0);
|
||||
|
||||
int_params_store->len = len;
|
||||
*out++ = val;
|
||||
*out++ = (char *) (int_params_store++);
|
||||
} else {
|
||||
ret = (DISPATCH_INVALID_TEST_DATA);
|
||||
break;
|
||||
}
|
||||
} else if (strcmp(type, "exp") == 0) {
|
||||
int exp_id = strtol(val, NULL, 10);
|
||||
if (get_expression(exp_id, &int_params_store->sint) == 0) {
|
||||
*out++ = (char *) int_params_store++;
|
||||
} else {
|
||||
ret = (DISPATCH_INVALID_TEST_DATA);
|
||||
break;
|
||||
}
|
||||
} else {
|
||||
ret = (DISPATCH_INVALID_TEST_DATA);
|
||||
break;
|
||||
}
|
||||
}
|
||||
return ret;
|
||||
}
|
||||
|
||||
/**
|
||||
* \brief Tests snprintf implementation with test input.
|
||||
*
|
||||
* \note
|
||||
* At high optimization levels (e.g. gcc -O3), this function may be
|
||||
* inlined in run_test_snprintf. This can trigger a spurious warning about
|
||||
* potential misuse of snprintf from gcc -Wformat-truncation (observed with
|
||||
* gcc 7.2). This warning makes tests in run_test_snprintf redundant on gcc
|
||||
* only. They are still valid for other compilers. Avoid this warning by
|
||||
* forbidding inlining of this function by gcc.
|
||||
*
|
||||
* \param n Buffer test length.
|
||||
* \param ref_buf Expected buffer.
|
||||
* \param ref_ret Expected snprintf return value.
|
||||
*
|
||||
* \return 0 for success else 1
|
||||
*/
|
||||
#if defined(__GNUC__)
|
||||
# if defined(__dietlibc__)
|
||||
/* __noinline__ is a macro in dietlibc... */
|
||||
__attribute__((noinline))
|
||||
# else
|
||||
__attribute__((__noinline__))
|
||||
# endif
|
||||
#endif
|
||||
static int test_snprintf(size_t n, const char *ref_buf, int ref_ret)
|
||||
{
|
||||
int ret;
|
||||
char buf[10] = "xxxxxxxxx";
|
||||
const char ref[10] = "xxxxxxxxx";
|
||||
|
||||
if (n >= sizeof(buf)) {
|
||||
return -1;
|
||||
}
|
||||
ret = mbedtls_snprintf(buf, n, "%s", "123");
|
||||
if (ret < 0 || (size_t) ret >= n) {
|
||||
ret = -1;
|
||||
}
|
||||
|
||||
if (strncmp(ref_buf, buf, sizeof(buf)) != 0 ||
|
||||
ref_ret != ret ||
|
||||
memcmp(buf + n, ref + n, sizeof(buf) - n) != 0) {
|
||||
return 1;
|
||||
}
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
/**
|
||||
* \brief Tests snprintf implementation.
|
||||
*
|
||||
* \return 0 for success else 1
|
||||
*/
|
||||
static int run_test_snprintf(void)
|
||||
{
|
||||
return test_snprintf(0, "xxxxxxxxx", -1) != 0 ||
|
||||
test_snprintf(1, "", -1) != 0 ||
|
||||
test_snprintf(2, "1", -1) != 0 ||
|
||||
test_snprintf(3, "12", -1) != 0 ||
|
||||
test_snprintf(4, "123", 3) != 0 ||
|
||||
test_snprintf(5, "123", 3) != 0;
|
||||
}
|
||||
|
||||
/** \brief Write the description of the test case to the outcome CSV file.
|
||||
*
|
||||
* \param outcome_file The file to write to.
|
||||
* If this is \c NULL, this function does nothing.
|
||||
* \param argv0 The test suite name.
|
||||
* \param test_case The test case description.
|
||||
*/
|
||||
static void write_outcome_entry(FILE *outcome_file,
|
||||
const char *argv0,
|
||||
const char *test_case)
|
||||
{
|
||||
/* The non-varying fields are initialized on first use. */
|
||||
static const char *platform = NULL;
|
||||
static const char *configuration = NULL;
|
||||
static const char *test_suite = NULL;
|
||||
|
||||
if (outcome_file == NULL) {
|
||||
return;
|
||||
}
|
||||
|
||||
if (platform == NULL) {
|
||||
platform = getenv("MBEDTLS_TEST_PLATFORM");
|
||||
if (platform == NULL) {
|
||||
platform = "unknown";
|
||||
}
|
||||
}
|
||||
if (configuration == NULL) {
|
||||
configuration = getenv("MBEDTLS_TEST_CONFIGURATION");
|
||||
if (configuration == NULL) {
|
||||
configuration = "unknown";
|
||||
}
|
||||
}
|
||||
if (test_suite == NULL) {
|
||||
test_suite = strrchr(argv0, '/');
|
||||
if (test_suite != NULL) {
|
||||
test_suite += 1; // skip the '/'
|
||||
} else {
|
||||
test_suite = argv0;
|
||||
}
|
||||
}
|
||||
|
||||
/* Write the beginning of the outcome line.
|
||||
* Ignore errors: writing the outcome file is on a best-effort basis. */
|
||||
mbedtls_fprintf(outcome_file, "%s;%s;%s;%s;",
|
||||
platform, configuration, test_suite, test_case);
|
||||
}
|
||||
|
||||
/** \brief Write the result of the test case to the outcome CSV file.
|
||||
*
|
||||
* \param outcome_file The file to write to.
|
||||
* If this is \c NULL, this function does nothing.
|
||||
* \param unmet_dep_count The number of unmet dependencies.
|
||||
* \param unmet_dependencies The array of unmet dependencies.
|
||||
* \param missing_unmet_dependencies Non-zero if there was a problem tracking
|
||||
* all unmet dependencies, 0 otherwise.
|
||||
* \param ret The test dispatch status (DISPATCH_xxx).
|
||||
*/
|
||||
static void write_outcome_result(FILE *outcome_file,
|
||||
size_t unmet_dep_count,
|
||||
int unmet_dependencies[],
|
||||
int missing_unmet_dependencies,
|
||||
int ret)
|
||||
{
|
||||
if (outcome_file == NULL) {
|
||||
return;
|
||||
}
|
||||
|
||||
/* Write the end of the outcome line.
|
||||
* Ignore errors: writing the outcome file is on a best-effort basis. */
|
||||
switch (ret) {
|
||||
case DISPATCH_TEST_SUCCESS:
|
||||
if (unmet_dep_count > 0) {
|
||||
size_t i;
|
||||
mbedtls_fprintf(outcome_file, "SKIP");
|
||||
for (i = 0; i < unmet_dep_count; i++) {
|
||||
mbedtls_fprintf(outcome_file, "%c%d",
|
||||
i == 0 ? ';' : ':',
|
||||
unmet_dependencies[i]);
|
||||
}
|
||||
if (missing_unmet_dependencies) {
|
||||
mbedtls_fprintf(outcome_file, ":...");
|
||||
}
|
||||
break;
|
||||
}
|
||||
switch (mbedtls_test_get_result()) {
|
||||
case MBEDTLS_TEST_RESULT_SUCCESS:
|
||||
mbedtls_fprintf(outcome_file, "PASS;");
|
||||
break;
|
||||
case MBEDTLS_TEST_RESULT_SKIPPED:
|
||||
mbedtls_fprintf(outcome_file, "SKIP;Runtime skip");
|
||||
break;
|
||||
default:
|
||||
mbedtls_fprintf(outcome_file, "FAIL;%s:%d:%s",
|
||||
mbedtls_get_test_filename(),
|
||||
mbedtls_test_get_line_no(),
|
||||
mbedtls_test_get_test());
|
||||
break;
|
||||
}
|
||||
break;
|
||||
case DISPATCH_TEST_FN_NOT_FOUND:
|
||||
mbedtls_fprintf(outcome_file, "FAIL;Test function not found");
|
||||
break;
|
||||
case DISPATCH_INVALID_TEST_DATA:
|
||||
mbedtls_fprintf(outcome_file, "FAIL;Invalid test data");
|
||||
break;
|
||||
case DISPATCH_UNSUPPORTED_SUITE:
|
||||
mbedtls_fprintf(outcome_file, "SKIP;Unsupported suite");
|
||||
break;
|
||||
default:
|
||||
mbedtls_fprintf(outcome_file, "FAIL;Unknown cause");
|
||||
break;
|
||||
}
|
||||
mbedtls_fprintf(outcome_file, "\n");
|
||||
fflush(outcome_file);
|
||||
}
|
||||
|
||||
#if defined(__unix__) || \
|
||||
(defined(__APPLE__) && defined(__MACH__))
|
||||
#define MBEDTLS_HAVE_CHDIR
|
||||
#endif
|
||||
|
||||
#if defined(MBEDTLS_HAVE_CHDIR)
|
||||
/** Try chdir to the directory containing argv0.
|
||||
*
|
||||
* Failures are silent.
|
||||
*/
|
||||
static void try_chdir_if_supported(const char *argv0)
|
||||
{
|
||||
/* We might want to allow backslash as well, for Windows. But then we also
|
||||
* need to consider chdir() vs _chdir(), and different conventions
|
||||
* regarding paths in argv[0] (naively enabling this code with
|
||||
* backslash support on Windows leads to chdir into the wrong directory
|
||||
* on the CI). */
|
||||
const char *slash = strrchr(argv0, '/');
|
||||
if (slash == NULL) {
|
||||
return;
|
||||
}
|
||||
size_t path_size = slash - argv0 + 1;
|
||||
char *path = mbedtls_calloc(1, path_size);
|
||||
if (path == NULL) {
|
||||
return;
|
||||
}
|
||||
memcpy(path, argv0, path_size - 1);
|
||||
path[path_size - 1] = 0;
|
||||
int ret = chdir(path);
|
||||
if (ret != 0) {
|
||||
mbedtls_fprintf(stderr, "%s: note: chdir(\"%s\") failed.\n",
|
||||
__func__, path);
|
||||
}
|
||||
mbedtls_free(path);
|
||||
}
|
||||
#else /* MBEDTLS_HAVE_CHDIR */
|
||||
/* No chdir() or no support for parsing argv[0] on this platform. */
|
||||
static void try_chdir_if_supported(const char *argv0)
|
||||
{
|
||||
(void) argv0;
|
||||
return;
|
||||
}
|
||||
#endif /* MBEDTLS_HAVE_CHDIR */
|
||||
|
||||
/**
|
||||
* \brief Desktop implementation of execute_tests().
|
||||
* Parses command line and executes tests from
|
||||
* supplied or default data file.
|
||||
*
|
||||
* \param argc Command line argument count.
|
||||
* \param argv Argument array.
|
||||
*
|
||||
* \return Program exit status.
|
||||
*/
|
||||
static int execute_tests(int argc, const char **argv)
|
||||
{
|
||||
/* Local Configurations and options */
|
||||
const char *default_filename = "DATA_FILE";
|
||||
const char *test_filename = NULL;
|
||||
const char **test_files = NULL;
|
||||
size_t testfile_count = 0;
|
||||
int option_verbose = 0;
|
||||
size_t function_id = 0;
|
||||
|
||||
/* Other Local variables */
|
||||
int arg_index = 1;
|
||||
const char *next_arg;
|
||||
size_t testfile_index, i, cnt;
|
||||
int ret;
|
||||
unsigned total_errors = 0, total_tests = 0, total_skipped = 0;
|
||||
FILE *file;
|
||||
char buf[5000];
|
||||
char *params[50];
|
||||
/* Store for processed integer params. */
|
||||
mbedtls_test_argument_t int_params[50];
|
||||
void *pointer;
|
||||
#if defined(__unix__) || (defined(__APPLE__) && defined(__MACH__))
|
||||
int stdout_fd = -1;
|
||||
#endif /* __unix__ || __APPLE__ __MACH__ */
|
||||
const char *outcome_file_name = getenv("MBEDTLS_TEST_OUTCOME_FILE");
|
||||
FILE *outcome_file = NULL;
|
||||
|
||||
#if defined(MBEDTLS_MEMORY_BUFFER_ALLOC_C) && \
|
||||
!defined(TEST_SUITE_MEMORY_BUFFER_ALLOC)
|
||||
unsigned char alloc_buf[1000000];
|
||||
mbedtls_memory_buffer_alloc_init(alloc_buf, sizeof(alloc_buf));
|
||||
#endif
|
||||
|
||||
#if defined(MBEDTLS_TEST_MUTEX_USAGE)
|
||||
mbedtls_test_mutex_usage_init();
|
||||
#endif
|
||||
|
||||
/*
|
||||
* The C standard doesn't guarantee that all-bits-0 is the representation
|
||||
* of a NULL pointer. We do however use that in our code for initializing
|
||||
* structures, which should work on every modern platform. Let's be sure.
|
||||
*/
|
||||
memset(&pointer, 0, sizeof(void *));
|
||||
if (pointer != NULL) {
|
||||
mbedtls_fprintf(stderr, "all-bits-zero is not a NULL pointer\n");
|
||||
return 1;
|
||||
}
|
||||
|
||||
/*
|
||||
* Make sure we have a snprintf that correctly zero-terminates
|
||||
*/
|
||||
if (run_test_snprintf() != 0) {
|
||||
mbedtls_fprintf(stderr, "the snprintf implementation is broken\n");
|
||||
return 1;
|
||||
}
|
||||
|
||||
if (outcome_file_name != NULL && *outcome_file_name != '\0') {
|
||||
outcome_file = fopen(outcome_file_name, "a");
|
||||
if (outcome_file == NULL) {
|
||||
mbedtls_fprintf(stderr, "Unable to open outcome file. Continuing anyway.\n");
|
||||
}
|
||||
}
|
||||
|
||||
while (arg_index < argc) {
|
||||
next_arg = argv[arg_index];
|
||||
|
||||
if (strcmp(next_arg, "--verbose") == 0 ||
|
||||
strcmp(next_arg, "-v") == 0) {
|
||||
option_verbose = 1;
|
||||
} else if (strcmp(next_arg, "--help") == 0 ||
|
||||
strcmp(next_arg, "-h") == 0) {
|
||||
mbedtls_fprintf(stdout, USAGE);
|
||||
mbedtls_exit(EXIT_SUCCESS);
|
||||
} else {
|
||||
/* Not an option, therefore treat all further arguments as the file
|
||||
* list.
|
||||
*/
|
||||
test_files = &argv[arg_index];
|
||||
testfile_count = argc - arg_index;
|
||||
break;
|
||||
}
|
||||
|
||||
arg_index++;
|
||||
}
|
||||
|
||||
/* If no files were specified, assume a default */
|
||||
if (test_files == NULL || testfile_count == 0) {
|
||||
test_files = &default_filename;
|
||||
testfile_count = 1;
|
||||
}
|
||||
|
||||
/* Initialize the struct that holds information about the last test */
|
||||
mbedtls_test_info_reset();
|
||||
|
||||
/* Now begin to execute the tests in the testfiles */
|
||||
for (testfile_index = 0;
|
||||
testfile_index < testfile_count;
|
||||
testfile_index++) {
|
||||
size_t unmet_dep_count = 0;
|
||||
int unmet_dependencies[20];
|
||||
int missing_unmet_dependencies = 0;
|
||||
|
||||
test_filename = test_files[testfile_index];
|
||||
|
||||
file = fopen(test_filename, "r");
|
||||
if (file == NULL) {
|
||||
mbedtls_fprintf(stderr, "Failed to open test file: %s\n",
|
||||
test_filename);
|
||||
if (outcome_file != NULL) {
|
||||
fclose(outcome_file);
|
||||
}
|
||||
return 1;
|
||||
}
|
||||
|
||||
while (!feof(file)) {
|
||||
if (unmet_dep_count > 0) {
|
||||
mbedtls_fprintf(stderr,
|
||||
"FATAL: Dep count larger than zero at start of loop\n");
|
||||
mbedtls_exit(MBEDTLS_EXIT_FAILURE);
|
||||
}
|
||||
unmet_dep_count = 0;
|
||||
missing_unmet_dependencies = 0;
|
||||
|
||||
if ((ret = get_line(file, buf, sizeof(buf))) != 0) {
|
||||
break;
|
||||
}
|
||||
mbedtls_fprintf(stdout, "%s%.66s",
|
||||
mbedtls_test_get_result() == MBEDTLS_TEST_RESULT_FAILED ?
|
||||
"\n" : "", buf);
|
||||
mbedtls_fprintf(stdout, " ");
|
||||
for (i = strlen(buf) + 1; i < 67; i++) {
|
||||
mbedtls_fprintf(stdout, ".");
|
||||
}
|
||||
mbedtls_fprintf(stdout, " ");
|
||||
fflush(stdout);
|
||||
write_outcome_entry(outcome_file, argv[0], buf);
|
||||
|
||||
total_tests++;
|
||||
|
||||
if ((ret = get_line(file, buf, sizeof(buf))) != 0) {
|
||||
break;
|
||||
}
|
||||
cnt = parse_arguments(buf, strlen(buf), params,
|
||||
sizeof(params) / sizeof(params[0]));
|
||||
|
||||
if (strcmp(params[0], "depends_on") == 0) {
|
||||
for (i = 1; i < cnt; i++) {
|
||||
int dep_id = strtol(params[i], NULL, 10);
|
||||
if (dep_check(dep_id) != DEPENDENCY_SUPPORTED) {
|
||||
if (unmet_dep_count <
|
||||
ARRAY_LENGTH(unmet_dependencies)) {
|
||||
unmet_dependencies[unmet_dep_count] = dep_id;
|
||||
unmet_dep_count++;
|
||||
} else {
|
||||
missing_unmet_dependencies = 1;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if ((ret = get_line(file, buf, sizeof(buf))) != 0) {
|
||||
break;
|
||||
}
|
||||
cnt = parse_arguments(buf, strlen(buf), params,
|
||||
sizeof(params) / sizeof(params[0]));
|
||||
}
|
||||
|
||||
// If there are no unmet dependencies execute the test
|
||||
if (unmet_dep_count == 0) {
|
||||
mbedtls_test_info_reset();
|
||||
|
||||
#if defined(__unix__) || (defined(__APPLE__) && defined(__MACH__))
|
||||
/* Suppress all output from the library unless we're verbose
|
||||
* mode
|
||||
*/
|
||||
if (!option_verbose) {
|
||||
stdout_fd = redirect_output(stdout, "/dev/null");
|
||||
if (stdout_fd == -1) {
|
||||
/* Redirection has failed with no stdout so exit */
|
||||
exit(1);
|
||||
}
|
||||
}
|
||||
#endif /* __unix__ || __APPLE__ __MACH__ */
|
||||
|
||||
function_id = strtoul(params[0], NULL, 10);
|
||||
if ((ret = check_test(function_id)) == DISPATCH_TEST_SUCCESS) {
|
||||
ret = convert_params(cnt - 1, params + 1, int_params);
|
||||
if (DISPATCH_TEST_SUCCESS == ret) {
|
||||
ret = dispatch_test(function_id, (void **) (params + 1));
|
||||
}
|
||||
}
|
||||
|
||||
#if defined(__unix__) || (defined(__APPLE__) && defined(__MACH__))
|
||||
if (!option_verbose && restore_output(stdout, stdout_fd)) {
|
||||
/* Redirection has failed with no stdout so exit */
|
||||
exit(1);
|
||||
}
|
||||
#endif /* __unix__ || __APPLE__ __MACH__ */
|
||||
|
||||
}
|
||||
|
||||
write_outcome_result(outcome_file,
|
||||
unmet_dep_count, unmet_dependencies,
|
||||
missing_unmet_dependencies,
|
||||
ret);
|
||||
if (unmet_dep_count > 0 || ret == DISPATCH_UNSUPPORTED_SUITE) {
|
||||
total_skipped++;
|
||||
mbedtls_fprintf(stdout, "----");
|
||||
|
||||
if (1 == option_verbose && ret == DISPATCH_UNSUPPORTED_SUITE) {
|
||||
mbedtls_fprintf(stdout, "\n Test Suite not enabled");
|
||||
}
|
||||
|
||||
if (1 == option_verbose && unmet_dep_count > 0) {
|
||||
mbedtls_fprintf(stdout, "\n Unmet dependencies: ");
|
||||
for (i = 0; i < unmet_dep_count; i++) {
|
||||
mbedtls_fprintf(stdout, "%d ",
|
||||
unmet_dependencies[i]);
|
||||
}
|
||||
if (missing_unmet_dependencies) {
|
||||
mbedtls_fprintf(stdout, "...");
|
||||
}
|
||||
}
|
||||
mbedtls_fprintf(stdout, "\n");
|
||||
fflush(stdout);
|
||||
|
||||
unmet_dep_count = 0;
|
||||
missing_unmet_dependencies = 0;
|
||||
} else if (ret == DISPATCH_TEST_SUCCESS) {
|
||||
if (mbedtls_test_get_result() == MBEDTLS_TEST_RESULT_SUCCESS) {
|
||||
mbedtls_fprintf(stdout, "PASS\n");
|
||||
} else if (mbedtls_test_get_result() == MBEDTLS_TEST_RESULT_SKIPPED) {
|
||||
mbedtls_fprintf(stdout, "----\n");
|
||||
total_skipped++;
|
||||
} else {
|
||||
char line_buffer[MBEDTLS_TEST_LINE_LENGTH];
|
||||
|
||||
total_errors++;
|
||||
mbedtls_fprintf(stdout, "FAILED\n");
|
||||
mbedtls_fprintf(stdout, " %s\n at ",
|
||||
mbedtls_test_get_test());
|
||||
if (mbedtls_test_get_step() != (unsigned long) (-1)) {
|
||||
mbedtls_fprintf(stdout, "step %lu, ",
|
||||
mbedtls_test_get_step());
|
||||
}
|
||||
mbedtls_fprintf(stdout, "line %d, %s",
|
||||
mbedtls_test_get_line_no(),
|
||||
mbedtls_get_test_filename());
|
||||
|
||||
mbedtls_test_get_line1(line_buffer);
|
||||
if (line_buffer[0] != 0) {
|
||||
mbedtls_fprintf(stdout, "\n %s", line_buffer);
|
||||
}
|
||||
mbedtls_test_get_line2(line_buffer);
|
||||
if (line_buffer[0] != 0) {
|
||||
mbedtls_fprintf(stdout, "\n %s", line_buffer);
|
||||
}
|
||||
}
|
||||
fflush(stdout);
|
||||
} else if (ret == DISPATCH_INVALID_TEST_DATA) {
|
||||
mbedtls_fprintf(stderr, "FAILED: FATAL PARSE ERROR\n");
|
||||
fclose(file);
|
||||
mbedtls_exit(2);
|
||||
} else if (ret == DISPATCH_TEST_FN_NOT_FOUND) {
|
||||
mbedtls_fprintf(stderr, "FAILED: FATAL TEST FUNCTION NOT FOUND\n");
|
||||
fclose(file);
|
||||
mbedtls_exit(2);
|
||||
} else {
|
||||
total_errors++;
|
||||
}
|
||||
}
|
||||
fclose(file);
|
||||
}
|
||||
|
||||
if (outcome_file != NULL) {
|
||||
fclose(outcome_file);
|
||||
}
|
||||
|
||||
mbedtls_fprintf(stdout,
|
||||
"\n----------------------------------------------------------------------------\n\n");
|
||||
if (total_errors == 0) {
|
||||
mbedtls_fprintf(stdout, "PASSED");
|
||||
} else {
|
||||
mbedtls_fprintf(stdout, "FAILED");
|
||||
}
|
||||
|
||||
mbedtls_fprintf(stdout, " (%u / %u tests (%u skipped))\n",
|
||||
total_tests - total_errors, total_tests, total_skipped);
|
||||
|
||||
#if defined(MBEDTLS_TEST_MUTEX_USAGE)
|
||||
mbedtls_test_mutex_usage_end();
|
||||
#endif
|
||||
|
||||
#if defined(MBEDTLS_MEMORY_BUFFER_ALLOC_C) && \
|
||||
!defined(TEST_SUITE_MEMORY_BUFFER_ALLOC)
|
||||
#if defined(MBEDTLS_MEMORY_DEBUG)
|
||||
mbedtls_memory_buffer_alloc_status();
|
||||
#endif
|
||||
mbedtls_memory_buffer_alloc_free();
|
||||
#endif
|
||||
|
||||
return total_errors != 0;
|
||||
}
|
||||
277
vendor/mbedtls/tests/suites/main_test.function
vendored
Normal file
277
vendor/mbedtls/tests/suites/main_test.function
vendored
Normal file
@@ -0,0 +1,277 @@
|
||||
#line 2 "suites/main_test.function"
|
||||
/*
|
||||
* *** THIS FILE HAS BEEN MACHINE GENERATED ***
|
||||
*
|
||||
* This file has been machine generated using the script:
|
||||
* __MBEDTLS_TEST_TEMPLATE__GENERATOR_SCRIPT
|
||||
*
|
||||
* Test file : __MBEDTLS_TEST_TEMPLATE__TEST_FILE
|
||||
*
|
||||
* The following files were used to create this file.
|
||||
*
|
||||
* Main code file : __MBEDTLS_TEST_TEMPLATE__TEST_MAIN_FILE
|
||||
* Platform code file : __MBEDTLS_TEST_TEMPLATE__TEST_PLATFORM_FILE
|
||||
* Helper file : __MBEDTLS_TEST_TEMPLATE__TEST_COMMON_HELPER_FILE
|
||||
* Test suite file : __MBEDTLS_TEST_TEMPLATE__TEST_CASE_FILE
|
||||
* Test suite data : __MBEDTLS_TEST_TEMPLATE__TEST_CASE_DATA_FILE
|
||||
*
|
||||
*/
|
||||
|
||||
#if defined(__unix__) || (defined(__APPLE__) && defined(__MACH__))
|
||||
#if !defined(_POSIX_C_SOURCE)
|
||||
#define _POSIX_C_SOURCE 200112L // for fileno() from <stdio.h>
|
||||
#endif
|
||||
#endif
|
||||
|
||||
#if defined(__FreeBSD__)
|
||||
/* On FreeBSD as of 14.3, no value of _POSIX_C_SOURCE is enough for
|
||||
* gettimeofday(), you need _XOPEN_SOURCE (any value).
|
||||
* Furthermore, setting _XOPEN_SOURCE to 500 removes support for long long
|
||||
* in libc, so you need at least 600 for e.g. strtoull().
|
||||
*/
|
||||
#if !defined(_XOPEN_SOURCE)
|
||||
#define _XOPEN_SOURCE 600
|
||||
#endif
|
||||
#endif
|
||||
|
||||
#include "mbedtls/build_info.h"
|
||||
|
||||
/* Test code may use deprecated identifiers only if the preprocessor symbol
|
||||
* MBEDTLS_TEST_DEPRECATED is defined. When building tests, set
|
||||
* MBEDTLS_TEST_DEPRECATED explicitly if MBEDTLS_DEPRECATED_WARNING is
|
||||
* enabled but the corresponding warnings are not treated as errors.
|
||||
*/
|
||||
#if !defined(MBEDTLS_DEPRECATED_REMOVED) && !defined(MBEDTLS_DEPRECATED_WARNING)
|
||||
#define MBEDTLS_TEST_DEPRECATED
|
||||
#endif
|
||||
|
||||
/*----------------------------------------------------------------------------*/
|
||||
/* Common helper code */
|
||||
|
||||
__MBEDTLS_TEST_TEMPLATE__TEST_COMMON_HELPERS
|
||||
|
||||
#line __MBEDTLS_TEST_TEMPLATE__LINE_NO "suites/main_test.function"
|
||||
|
||||
|
||||
/*----------------------------------------------------------------------------*/
|
||||
/* Test Suite Code */
|
||||
|
||||
|
||||
#define TEST_SUITE_ACTIVE
|
||||
|
||||
__MBEDTLS_TEST_TEMPLATE__FUNCTIONS_CODE
|
||||
|
||||
#line __MBEDTLS_TEST_TEMPLATE__LINE_NO "suites/main_test.function"
|
||||
|
||||
|
||||
/*----------------------------------------------------------------------------*/
|
||||
/* Test dispatch code */
|
||||
|
||||
|
||||
/**
|
||||
* \brief Evaluates an expression/macro into its literal integer value.
|
||||
* For optimizing space for embedded targets each expression/macro
|
||||
* is identified by a unique identifier instead of string literals.
|
||||
* Identifiers and evaluation code is generated by script:
|
||||
* __MBEDTLS_TEST_TEMPLATE__GENERATOR_SCRIPT
|
||||
*
|
||||
* \param exp_id Expression identifier.
|
||||
* \param out_value Pointer to int to hold the integer.
|
||||
*
|
||||
* \return 0 if exp_id is found. 1 otherwise.
|
||||
*/
|
||||
static int get_expression(int32_t exp_id, intmax_t *out_value)
|
||||
{
|
||||
int ret = KEY_VALUE_MAPPING_FOUND;
|
||||
|
||||
(void) exp_id;
|
||||
(void) out_value;
|
||||
|
||||
switch (exp_id) {
|
||||
__MBEDTLS_TEST_TEMPLATE__EXPRESSION_CODE
|
||||
#line __MBEDTLS_TEST_TEMPLATE__LINE_NO "suites/main_test.function"
|
||||
default:
|
||||
{
|
||||
ret = KEY_VALUE_MAPPING_NOT_FOUND;
|
||||
}
|
||||
break;
|
||||
}
|
||||
return ret;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* \brief Checks if the dependency i.e. the compile flag is set.
|
||||
* For optimizing space for embedded targets each dependency
|
||||
* is identified by a unique identifier instead of string literals.
|
||||
* Identifiers and check code is generated by script:
|
||||
* __MBEDTLS_TEST_TEMPLATE__GENERATOR_SCRIPT
|
||||
*
|
||||
* \param dep_id Dependency identifier.
|
||||
*
|
||||
* \return DEPENDENCY_SUPPORTED if set else DEPENDENCY_NOT_SUPPORTED
|
||||
*/
|
||||
static int dep_check(int dep_id)
|
||||
{
|
||||
int ret = DEPENDENCY_NOT_SUPPORTED;
|
||||
|
||||
(void) dep_id;
|
||||
|
||||
switch (dep_id) {
|
||||
__MBEDTLS_TEST_TEMPLATE__DEP_CHECK_CODE
|
||||
#line __MBEDTLS_TEST_TEMPLATE__LINE_NO "suites/main_test.function"
|
||||
default:
|
||||
break;
|
||||
}
|
||||
return ret;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* \brief Function pointer type for test function wrappers.
|
||||
*
|
||||
* A test function wrapper decodes the parameters and passes them to the
|
||||
* underlying test function. Both the wrapper and the underlying function
|
||||
* return void. Test wrappers assume that they are passed a suitable
|
||||
* parameter array and do not perform any error detection.
|
||||
*
|
||||
* \param param_array The array of parameters. Each element is a `void *`
|
||||
* which the wrapper casts to the correct type and
|
||||
* dereferences. Each wrapper function hard-codes the
|
||||
* number and types of the parameters.
|
||||
*/
|
||||
typedef void (*TestWrapper_t)(void **param_array);
|
||||
|
||||
|
||||
/**
|
||||
* \brief Table of test function wrappers. Used by dispatch_test().
|
||||
* This table is populated by script:
|
||||
* __MBEDTLS_TEST_TEMPLATE__GENERATOR_SCRIPT
|
||||
*
|
||||
*/
|
||||
TestWrapper_t test_funcs[] =
|
||||
{
|
||||
__MBEDTLS_TEST_TEMPLATE__DISPATCH_CODE
|
||||
#line __MBEDTLS_TEST_TEMPLATE__LINE_NO "suites/main_test.function"
|
||||
};
|
||||
|
||||
/**
|
||||
* \brief Dispatches test functions based on function index.
|
||||
*
|
||||
* \param func_idx Test function index.
|
||||
* \param params The array of parameters to pass to the test function.
|
||||
* It will be decoded by the #TestWrapper_t wrapper function.
|
||||
*
|
||||
* \return DISPATCH_TEST_SUCCESS if found
|
||||
* DISPATCH_TEST_FN_NOT_FOUND if not found
|
||||
* DISPATCH_UNSUPPORTED_SUITE if not compile time enabled.
|
||||
*/
|
||||
static int dispatch_test(size_t func_idx, void **params)
|
||||
{
|
||||
int ret = DISPATCH_TEST_SUCCESS;
|
||||
TestWrapper_t fp = NULL;
|
||||
|
||||
if (func_idx < (int) (sizeof(test_funcs) / sizeof(TestWrapper_t))) {
|
||||
fp = test_funcs[func_idx];
|
||||
if (fp) {
|
||||
#if defined(MBEDTLS_PSA_CRYPTO_EXTERNAL_RNG)
|
||||
mbedtls_test_enable_insecure_external_rng();
|
||||
#endif
|
||||
|
||||
fp(params);
|
||||
|
||||
#if defined(MBEDTLS_TEST_MUTEX_USAGE)
|
||||
mbedtls_test_mutex_usage_check();
|
||||
#endif /* MBEDTLS_TEST_MUTEX_USAGE */
|
||||
} else {
|
||||
ret = DISPATCH_UNSUPPORTED_SUITE;
|
||||
}
|
||||
} else {
|
||||
ret = DISPATCH_TEST_FN_NOT_FOUND;
|
||||
}
|
||||
|
||||
return ret;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* \brief Checks if test function is supported in this build-time
|
||||
* configuration.
|
||||
*
|
||||
* \param func_idx Test function index.
|
||||
*
|
||||
* \return DISPATCH_TEST_SUCCESS if found
|
||||
* DISPATCH_TEST_FN_NOT_FOUND if not found
|
||||
* DISPATCH_UNSUPPORTED_SUITE if not compile time enabled.
|
||||
*/
|
||||
static int check_test(size_t func_idx)
|
||||
{
|
||||
int ret = DISPATCH_TEST_SUCCESS;
|
||||
TestWrapper_t fp = NULL;
|
||||
|
||||
if (func_idx < (int) (sizeof(test_funcs)/sizeof(TestWrapper_t))) {
|
||||
fp = test_funcs[func_idx];
|
||||
if (fp == NULL) {
|
||||
ret = DISPATCH_UNSUPPORTED_SUITE;
|
||||
}
|
||||
} else {
|
||||
ret = DISPATCH_TEST_FN_NOT_FOUND;
|
||||
}
|
||||
|
||||
return ret;
|
||||
}
|
||||
|
||||
|
||||
__MBEDTLS_TEST_TEMPLATE__PLATFORM_CODE
|
||||
|
||||
#line __MBEDTLS_TEST_TEMPLATE__LINE_NO "suites/main_test.function"
|
||||
|
||||
/*----------------------------------------------------------------------------*/
|
||||
/* Main Test code */
|
||||
|
||||
|
||||
/**
|
||||
* \brief Program main. Invokes platform specific execute_tests().
|
||||
*
|
||||
* \param argc Command line arguments count.
|
||||
* \param argv Array of command line arguments.
|
||||
*
|
||||
* \return Exit code.
|
||||
*/
|
||||
int main(int argc, const char *argv[])
|
||||
{
|
||||
#if defined(MBEDTLS_TEST_HOOKS)
|
||||
extern void (*mbedtls_test_hook_test_fail)(const char *test, int line, const char *file);
|
||||
mbedtls_test_hook_test_fail = &mbedtls_test_fail;
|
||||
#if defined(MBEDTLS_ERROR_C)
|
||||
mbedtls_test_hook_error_add = &mbedtls_test_err_add_check;
|
||||
#endif
|
||||
#endif
|
||||
|
||||
/* Try changing to the directory containing the executable, if
|
||||
* using the default data file. This allows running the executable
|
||||
* from another directory (e.g. the project root) and still access
|
||||
* the .datax file as well as data files used by test cases
|
||||
* (typically from framework/data_files).
|
||||
*
|
||||
* Note that we do this before the platform setup (which may access
|
||||
* files such as a random seed). We also do this before accessing
|
||||
* test-specific files such as the outcome file, which is arguably
|
||||
* not desirable and should be fixed later.
|
||||
*/
|
||||
if (argc == 1) {
|
||||
try_chdir_if_supported(argv[0]);
|
||||
}
|
||||
|
||||
int ret = mbedtls_test_platform_setup();
|
||||
if (ret != 0) {
|
||||
mbedtls_fprintf(stderr,
|
||||
"FATAL: Failed to initialize platform - error %d\n",
|
||||
ret);
|
||||
return -1;
|
||||
}
|
||||
|
||||
ret = execute_tests(argc, argv);
|
||||
mbedtls_test_platform_teardown();
|
||||
return ret;
|
||||
}
|
||||
263
vendor/mbedtls/tests/suites/test_suite_aes.cbc.data
vendored
Normal file
263
vendor/mbedtls/tests/suites/test_suite_aes.cbc.data
vendored
Normal file
@@ -0,0 +1,263 @@
|
||||
AES-128-CBC Encrypt NIST KAT #1
|
||||
aes_encrypt_cbc:"fffffffffffff8000000000000000000":"00000000000000000000000000000000":"00000000000000000000000000000000":"8b527a6aebdaec9eaef8eda2cb7783e5":0
|
||||
|
||||
AES-128-CBC Encrypt NIST KAT #2
|
||||
aes_encrypt_cbc:"fffffffffffffc000000000000000000":"00000000000000000000000000000000":"00000000000000000000000000000000":"43fdaf53ebbc9880c228617d6a9b548b":0
|
||||
|
||||
AES-128-CBC Encrypt NIST KAT #3
|
||||
aes_encrypt_cbc:"fffffffffffffe000000000000000000":"00000000000000000000000000000000":"00000000000000000000000000000000":"53786104b9744b98f052c46f1c850d0b":0
|
||||
|
||||
AES-128-CBC Encrypt NIST KAT #4
|
||||
aes_encrypt_cbc:"e37b1c6aa2846f6fdb413f238b089f23":"00000000000000000000000000000000":"00000000000000000000000000000000":"43c9f7e62f5d288bb27aa40ef8fe1ea8":0
|
||||
|
||||
AES-128-CBC Encrypt NIST KAT #5
|
||||
aes_encrypt_cbc:"6c002b682483e0cabcc731c253be5674":"00000000000000000000000000000000":"00000000000000000000000000000000":"3580d19cff44f1014a7c966a69059de5":0
|
||||
|
||||
AES-128-CBC Encrypt NIST KAT #6
|
||||
aes_encrypt_cbc:"143ae8ed6555aba96110ab58893a8ae1":"00000000000000000000000000000000":"00000000000000000000000000000000":"806da864dd29d48deafbe764f8202aef":0
|
||||
|
||||
AES-128-CBC Encrypt NIST KAT #7
|
||||
aes_encrypt_cbc:"00000000000000000000000000000000":"00000000000000000000000000000000":"6a118a874519e64e9963798a503f1d35":"dc43be40be0e53712f7e2bf5ca707209":0
|
||||
|
||||
AES-128-CBC Encrypt NIST KAT #8
|
||||
aes_encrypt_cbc:"00000000000000000000000000000000":"00000000000000000000000000000000":"cb9fceec81286ca3e989bd979b0cb284":"92beedab1895a94faa69b632e5cc47ce":0
|
||||
|
||||
AES-128-CBC Encrypt NIST KAT #9
|
||||
aes_encrypt_cbc:"00000000000000000000000000000000":"00000000000000000000000000000000":"b26aeb1874e47ca8358ff22378f09144":"459264f4798f6a78bacb89c15ed3d601":0
|
||||
|
||||
AES-128-CBC Encrypt NIST KAT #10
|
||||
aes_encrypt_cbc:"00000000000000000000000000000000":"00000000000000000000000000000000":"ffffffffffffffffffffffc000000000":"90684a2ac55fe1ec2b8ebd5622520b73":0
|
||||
|
||||
AES-128-CBC Encrypt NIST KAT #11
|
||||
aes_encrypt_cbc:"00000000000000000000000000000000":"00000000000000000000000000000000":"ffffffffffffffffffffffe000000000":"7472f9a7988607ca79707795991035e6":0
|
||||
|
||||
AES-128-CBC Encrypt NIST KAT #12
|
||||
aes_encrypt_cbc:"00000000000000000000000000000000":"00000000000000000000000000000000":"fffffffffffffffffffffff000000000":"56aff089878bf3352f8df172a3ae47d8":0
|
||||
|
||||
AES-128-CBC Decrypt NIST KAT #1
|
||||
aes_decrypt_cbc:"ffffffffe00000000000000000000000":"00000000000000000000000000000000":"23f710842b9bb9c32f26648c786807ca":"00000000000000000000000000000000":0
|
||||
|
||||
AES-128-CBC Decrypt NIST KAT #2
|
||||
aes_decrypt_cbc:"fffffffff00000000000000000000000":"00000000000000000000000000000000":"44a98bf11e163f632c47ec6a49683a89":"00000000000000000000000000000000":0
|
||||
|
||||
AES-128-CBC Decrypt NIST KAT #3
|
||||
aes_decrypt_cbc:"fffffffff80000000000000000000000":"00000000000000000000000000000000":"0f18aff94274696d9b61848bd50ac5e5":"00000000000000000000000000000000":0
|
||||
|
||||
AES-128-CBC Decrypt NIST KAT #4
|
||||
aes_decrypt_cbc:"e234cdca2606b81f29408d5f6da21206":"00000000000000000000000000000000":"fff60a4740086b3b9c56195b98d91a7b":"00000000000000000000000000000000":0
|
||||
|
||||
AES-128-CBC Decrypt NIST KAT #5
|
||||
aes_decrypt_cbc:"13237c49074a3da078dc1d828bb78c6f":"00000000000000000000000000000000":"8146a08e2357f0caa30ca8c94d1a0544":"00000000000000000000000000000000":0
|
||||
|
||||
AES-128-CBC Decrypt NIST KAT #6
|
||||
aes_decrypt_cbc:"3071a2a48fe6cbd04f1a129098e308f8":"00000000000000000000000000000000":"4b98e06d356deb07ebb824e5713f7be3":"00000000000000000000000000000000":0
|
||||
|
||||
AES-128-CBC Decrypt NIST KAT #7
|
||||
aes_decrypt_cbc:"00000000000000000000000000000000":"00000000000000000000000000000000":"0336763e966d92595a567cc9ce537f5e":"f34481ec3cc627bacd5dc3fb08f273e6":0
|
||||
|
||||
AES-128-CBC Decrypt NIST KAT #8
|
||||
aes_decrypt_cbc:"00000000000000000000000000000000":"00000000000000000000000000000000":"a9a1631bf4996954ebc093957b234589":"9798c4640bad75c7c3227db910174e72":0
|
||||
|
||||
AES-128-CBC Decrypt NIST KAT #9
|
||||
aes_decrypt_cbc:"00000000000000000000000000000000":"00000000000000000000000000000000":"ff4f8391a6a40ca5b25d23bedd44a597":"96ab5c2ff612d9dfaae8c31f30c42168":0
|
||||
|
||||
AES-128-CBC Decrypt NIST KAT #10
|
||||
aes_decrypt_cbc:"00000000000000000000000000000000":"00000000000000000000000000000000":"f9b0fda0c4a898f5b9e6f661c4ce4d07":"fffffffffffffffffffffffffffffff0":0
|
||||
|
||||
AES-128-CBC Decrypt NIST KAT #11
|
||||
aes_decrypt_cbc:"00000000000000000000000000000000":"00000000000000000000000000000000":"8ade895913685c67c5269f8aae42983e":"fffffffffffffffffffffffffffffff8":0
|
||||
|
||||
AES-128-CBC Decrypt NIST KAT #12
|
||||
aes_decrypt_cbc:"00000000000000000000000000000000":"00000000000000000000000000000000":"39bde67d5c8ed8a8b1c37eb8fa9f5ac0":"fffffffffffffffffffffffffffffffc":0
|
||||
|
||||
AES-192-CBC Encrypt NIST KAT #1
|
||||
depends_on:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
aes_encrypt_cbc:"fffffffffffffffffffffffffffffffffffffffffffffe00":"00000000000000000000000000000000":"00000000000000000000000000000000":"ddb505e6cc1384cbaec1df90b80beb20":0
|
||||
|
||||
AES-192-CBC Encrypt NIST KAT #2
|
||||
depends_on:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
aes_encrypt_cbc:"ffffffffffffffffffffffffffffffffffffffffffffff00":"00000000000000000000000000000000":"00000000000000000000000000000000":"5674a3bed27bf4bd3622f9f5fe208306":0
|
||||
|
||||
AES-192-CBC Encrypt NIST KAT #3
|
||||
depends_on:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
aes_encrypt_cbc:"ffffffffffffffffffffffffffffffffffffffffffffff80":"00000000000000000000000000000000":"00000000000000000000000000000000":"b687f26a89cfbfbb8e5eeac54055315e":0
|
||||
|
||||
AES-192-CBC Encrypt NIST KAT #4
|
||||
depends_on:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
aes_encrypt_cbc:"25a39dbfd8034f71a81f9ceb55026e4037f8f6aa30ab44ce":"00000000000000000000000000000000":"00000000000000000000000000000000":"3608c344868e94555d23a120f8a5502d":0
|
||||
|
||||
AES-192-CBC Encrypt NIST KAT #5
|
||||
depends_on:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
aes_encrypt_cbc:"e08c15411774ec4a908b64eadc6ac4199c7cd453f3aaef53":"00000000000000000000000000000000":"00000000000000000000000000000000":"77da2021935b840b7f5dcc39132da9e5":0
|
||||
|
||||
AES-192-CBC Encrypt NIST KAT #6
|
||||
depends_on:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
aes_encrypt_cbc:"3b375a1ff7e8d44409696e6326ec9dec86138e2ae010b980":"00000000000000000000000000000000":"00000000000000000000000000000000":"3b7c24f825e3bf9873c9f14d39a0e6f4":0
|
||||
|
||||
AES-192-CBC Encrypt NIST KAT #7
|
||||
depends_on:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
aes_encrypt_cbc:"000000000000000000000000000000000000000000000000":"00000000000000000000000000000000":"51719783d3185a535bd75adc65071ce1":"4f354592ff7c8847d2d0870ca9481b7c":0
|
||||
|
||||
AES-192-CBC Encrypt NIST KAT #8
|
||||
depends_on:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
aes_encrypt_cbc:"000000000000000000000000000000000000000000000000":"00000000000000000000000000000000":"26aa49dcfe7629a8901a69a9914e6dfd":"d5e08bf9a182e857cf40b3a36ee248cc":0
|
||||
|
||||
AES-192-CBC Encrypt NIST KAT #9
|
||||
depends_on:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
aes_encrypt_cbc:"000000000000000000000000000000000000000000000000":"00000000000000000000000000000000":"941a4773058224e1ef66d10e0a6ee782":"067cd9d3749207791841562507fa9626":0
|
||||
|
||||
AES-192-CBC Encrypt NIST KAT #10
|
||||
depends_on:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
aes_encrypt_cbc:"000000000000000000000000000000000000000000000000":"00000000000000000000000000000000":"ffc00000000000000000000000000000":"030d7e5b64f380a7e4ea5387b5cd7f49":0
|
||||
|
||||
AES-192-CBC Encrypt NIST KAT #11
|
||||
depends_on:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
aes_encrypt_cbc:"000000000000000000000000000000000000000000000000":"00000000000000000000000000000000":"ffe00000000000000000000000000000":"0dc9a2610037009b698f11bb7e86c83e":0
|
||||
|
||||
AES-192-CBC Encrypt NIST KAT #12
|
||||
depends_on:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
aes_encrypt_cbc:"000000000000000000000000000000000000000000000000":"00000000000000000000000000000000":"fff00000000000000000000000000000":"0046612c766d1840c226364f1fa7ed72":0
|
||||
|
||||
AES-192-CBC Decrypt NIST KAT #1
|
||||
depends_on:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
aes_decrypt_cbc:"000000000000000000000000000000000000000000000000":"00000000000000000000000000000000":"902d88d13eae52089abd6143cfe394e9":"ffffffffe00000000000000000000000":0
|
||||
|
||||
AES-192-CBC Decrypt NIST KAT #2
|
||||
depends_on:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
aes_decrypt_cbc:"000000000000000000000000000000000000000000000000":"00000000000000000000000000000000":"d49bceb3b823fedd602c305345734bd2":"fffffffff00000000000000000000000":0
|
||||
|
||||
AES-192-CBC Decrypt NIST KAT #3
|
||||
depends_on:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
aes_decrypt_cbc:"000000000000000000000000000000000000000000000000":"00000000000000000000000000000000":"707b1dbb0ffa40ef7d95def421233fae":"fffffffff80000000000000000000000":0
|
||||
|
||||
AES-192-CBC Decrypt NIST KAT #4
|
||||
depends_on:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
aes_decrypt_cbc:"fffffffffffffffffffc0000000000000000000000000000":"00000000000000000000000000000000":"8dfd999be5d0cfa35732c0ddc88ff5a5":"00000000000000000000000000000000":0
|
||||
|
||||
AES-192-CBC Decrypt NIST KAT #5
|
||||
depends_on:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
aes_decrypt_cbc:"fffffffffffffffffffe0000000000000000000000000000":"00000000000000000000000000000000":"02647c76a300c3173b841487eb2bae9f":"00000000000000000000000000000000":0
|
||||
|
||||
AES-192-CBC Decrypt NIST KAT #6
|
||||
depends_on:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
aes_decrypt_cbc:"ffffffffffffffffffff0000000000000000000000000000":"00000000000000000000000000000000":"172df8b02f04b53adab028b4e01acd87":"00000000000000000000000000000000":0
|
||||
|
||||
AES-192-CBC Decrypt NIST KAT #7
|
||||
depends_on:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
aes_decrypt_cbc:"b3ad5cea1dddc214ca969ac35f37dae1a9a9d1528f89bb35":"00000000000000000000000000000000":"3cf5e1d21a17956d1dffad6a7c41c659":"00000000000000000000000000000000":0
|
||||
|
||||
AES-192-CBC Decrypt NIST KAT #8
|
||||
depends_on:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
aes_decrypt_cbc:"45899367c3132849763073c435a9288a766c8b9ec2308516":"00000000000000000000000000000000":"69fd12e8505f8ded2fdcb197a121b362":"00000000000000000000000000000000":0
|
||||
|
||||
AES-192-CBC Decrypt NIST KAT #9
|
||||
depends_on:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
aes_decrypt_cbc:"ec250e04c3903f602647b85a401a1ae7ca2f02f67fa4253e":"00000000000000000000000000000000":"8aa584e2cc4d17417a97cb9a28ba29c8":"00000000000000000000000000000000":0
|
||||
|
||||
AES-192-CBC Decrypt NIST KAT #10
|
||||
depends_on:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
aes_decrypt_cbc:"000000000000000000000000000000000000000000000000":"00000000000000000000000000000000":"c9b8135ff1b5adc413dfd053b21bd96d":"9c2d8842e5f48f57648205d39a239af1":0
|
||||
|
||||
AES-192-CBC Decrypt NIST KAT #11
|
||||
depends_on:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
aes_decrypt_cbc:"000000000000000000000000000000000000000000000000":"00000000000000000000000000000000":"4a3650c3371ce2eb35e389a171427440":"bff52510095f518ecca60af4205444bb":0
|
||||
|
||||
AES-192-CBC Decrypt NIST KAT #12
|
||||
depends_on:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
aes_decrypt_cbc:"000000000000000000000000000000000000000000000000":"00000000000000000000000000000000":"4f354592ff7c8847d2d0870ca9481b7c":"51719783d3185a535bd75adc65071ce1":0
|
||||
|
||||
AES-256-CBC Encrypt NIST KAT #1
|
||||
depends_on:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
aes_encrypt_cbc:"8000000000000000000000000000000000000000000000000000000000000000":"00000000000000000000000000000000":"00000000000000000000000000000000":"e35a6dcb19b201a01ebcfa8aa22b5759":0
|
||||
|
||||
AES-256-CBC Encrypt NIST KAT #2
|
||||
depends_on:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
aes_encrypt_cbc:"c000000000000000000000000000000000000000000000000000000000000000":"00000000000000000000000000000000":"00000000000000000000000000000000":"b29169cdcf2d83e838125a12ee6aa400":0
|
||||
|
||||
AES-256-CBC Encrypt NIST KAT #3
|
||||
depends_on:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
aes_encrypt_cbc:"e000000000000000000000000000000000000000000000000000000000000000":"00000000000000000000000000000000":"00000000000000000000000000000000":"d8f3a72fc3cdf74dfaf6c3e6b97b2fa6":0
|
||||
|
||||
AES-256-CBC Encrypt NIST KAT #4
|
||||
depends_on:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
aes_encrypt_cbc:"dc0eba1f2232a7879ded34ed8428eeb8769b056bbaf8ad77cb65c3541430b4cf":"00000000000000000000000000000000":"00000000000000000000000000000000":"fc6aec906323480005c58e7e1ab004ad":0
|
||||
|
||||
AES-256-CBC Encrypt NIST KAT #5
|
||||
depends_on:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
aes_encrypt_cbc:"f8be9ba615c5a952cabbca24f68f8593039624d524c816acda2c9183bd917cb9":"00000000000000000000000000000000":"00000000000000000000000000000000":"a3944b95ca0b52043584ef02151926a8":0
|
||||
|
||||
AES-256-CBC Encrypt NIST KAT #6
|
||||
depends_on:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
aes_encrypt_cbc:"797f8b3d176dac5b7e34a2d539c4ef367a16f8635f6264737591c5c07bf57a3e":"00000000000000000000000000000000":"00000000000000000000000000000000":"a74289fe73a4c123ca189ea1e1b49ad5":0
|
||||
|
||||
AES-256-CBC Encrypt NIST KAT #7
|
||||
depends_on:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
aes_encrypt_cbc:"0000000000000000000000000000000000000000000000000000000000000000":"00000000000000000000000000000000":"761c1fe41a18acf20d241650611d90f1":"623a52fcea5d443e48d9181ab32c7421":0
|
||||
|
||||
AES-256-CBC Encrypt NIST KAT #8
|
||||
depends_on:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
aes_encrypt_cbc:"0000000000000000000000000000000000000000000000000000000000000000":"00000000000000000000000000000000":"8a560769d605868ad80d819bdba03771":"38f2c7ae10612415d27ca190d27da8b4":0
|
||||
|
||||
AES-256-CBC Encrypt NIST KAT #9
|
||||
depends_on:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
aes_encrypt_cbc:"0000000000000000000000000000000000000000000000000000000000000000":"00000000000000000000000000000000":"91fbef2d15a97816060bee1feaa49afe":"1bc704f1bce135ceb810341b216d7abe":0
|
||||
|
||||
AES-256-CBC Encrypt NIST KAT #10
|
||||
depends_on:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
aes_encrypt_cbc:"0000000000000000000000000000000000000000000000000000000000000000":"00000000000000000000000000000000":"ffffffffffffff800000000000000000":"0d9ac756eb297695eed4d382eb126d26":0
|
||||
|
||||
AES-256-CBC Encrypt NIST KAT #11
|
||||
depends_on:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
aes_encrypt_cbc:"0000000000000000000000000000000000000000000000000000000000000000":"00000000000000000000000000000000":"ffffffffffffffc00000000000000000":"56ede9dda3f6f141bff1757fa689c3e1":0
|
||||
|
||||
AES-256-CBC Encrypt NIST KAT #12
|
||||
depends_on:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
aes_encrypt_cbc:"0000000000000000000000000000000000000000000000000000000000000000":"00000000000000000000000000000000":"ffffffffffffffe00000000000000000":"768f520efe0f23e61d3ec8ad9ce91774":0
|
||||
|
||||
AES-256-CBC Decrypt NIST KAT #1
|
||||
depends_on:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
aes_decrypt_cbc:"0000000000000000000000000000000000000000000000000000000000000000":"00000000000000000000000000000000":"49af6b372135acef10132e548f217b17":"ff000000000000000000000000000000":0
|
||||
|
||||
AES-256-CBC Decrypt NIST KAT #2
|
||||
depends_on:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
aes_decrypt_cbc:"0000000000000000000000000000000000000000000000000000000000000000":"00000000000000000000000000000000":"8bcd40f94ebb63b9f7909676e667f1e7":"ff800000000000000000000000000000":0
|
||||
|
||||
AES-256-CBC Decrypt NIST KAT #3
|
||||
depends_on:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
aes_decrypt_cbc:"0000000000000000000000000000000000000000000000000000000000000000":"00000000000000000000000000000000":"fe1cffb83f45dcfb38b29be438dbd3ab":"ffc00000000000000000000000000000":0
|
||||
|
||||
AES-256-CBC Decrypt NIST KAT #4
|
||||
depends_on:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
aes_decrypt_cbc:"fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc00":"00000000000000000000000000000000":"cca7c3086f5f9511b31233da7cab9160":"00000000000000000000000000000000":0
|
||||
|
||||
AES-256-CBC Decrypt NIST KAT #5
|
||||
depends_on:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
aes_decrypt_cbc:"fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe00":"00000000000000000000000000000000":"5b40ff4ec9be536ba23035fa4f06064c":"00000000000000000000000000000000":0
|
||||
|
||||
AES-256-CBC Decrypt NIST KAT #6
|
||||
depends_on:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
aes_decrypt_cbc:"ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00":"00000000000000000000000000000000":"60eb5af8416b257149372194e8b88749":"00000000000000000000000000000000":0
|
||||
|
||||
AES-256-CBC Decrypt NIST KAT #7
|
||||
depends_on:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
aes_decrypt_cbc:"90143ae20cd78c5d8ebdd6cb9dc1762427a96c78c639bccc41a61424564eafe1":"00000000000000000000000000000000":"798c7c005dee432b2c8ea5dfa381ecc3":"00000000000000000000000000000000":0
|
||||
|
||||
AES-256-CBC Decrypt NIST KAT #8
|
||||
depends_on:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
aes_decrypt_cbc:"b7a5794d52737475d53d5a377200849be0260a67a2b22ced8bbef12882270d07":"00000000000000000000000000000000":"637c31dc2591a07636f646b72daabbe7":"00000000000000000000000000000000":0
|
||||
|
||||
AES-256-CBC Decrypt NIST KAT #9
|
||||
depends_on:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
aes_decrypt_cbc:"fca02f3d5011cfc5c1e23165d413a049d4526a991827424d896fe3435e0bf68e":"00000000000000000000000000000000":"179a49c712154bbffbe6e7a84a18e220":"00000000000000000000000000000000":0
|
||||
|
||||
AES-256-CBC Decrypt NIST KAT #10
|
||||
depends_on:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
aes_decrypt_cbc:"0000000000000000000000000000000000000000000000000000000000000000":"00000000000000000000000000000000":"5c9d844ed46f9885085e5d6a4f94c7d7":"014730f80ac625fe84f026c60bfd547d":0
|
||||
|
||||
AES-256-CBC Decrypt NIST KAT #11
|
||||
depends_on:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
aes_decrypt_cbc:"0000000000000000000000000000000000000000000000000000000000000000":"00000000000000000000000000000000":"a9ff75bd7cf6613d3731c77c3b6d0c04":"0b24af36193ce4665f2825d7b4749c98":0
|
||||
|
||||
AES-256-CBC Decrypt NIST KAT #12
|
||||
depends_on:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
aes_decrypt_cbc:"0000000000000000000000000000000000000000000000000000000000000000":"00000000000000000000000000000000":"623a52fcea5d443e48d9181ab32c7421":"761c1fe41a18acf20d241650611d90f1":0
|
||||
507
vendor/mbedtls/tests/suites/test_suite_aes.cfb.data
vendored
Normal file
507
vendor/mbedtls/tests/suites/test_suite_aes.cfb.data
vendored
Normal file
@@ -0,0 +1,507 @@
|
||||
AES-128-CFB128 Encrypt NIST KAT #1
|
||||
depends_on:MBEDTLS_CIPHER_MODE_CFB
|
||||
aes_encrypt_cfb128:"f0000000000000000000000000000000":"00000000000000000000000000000000":"00000000000000000000000000000000":"970014d634e2b7650777e8e84d03ccd8"
|
||||
|
||||
AES-128-CFB128 Encrypt NIST KAT #2
|
||||
depends_on:MBEDTLS_CIPHER_MODE_CFB
|
||||
aes_encrypt_cfb128:"f8000000000000000000000000000000":"00000000000000000000000000000000":"00000000000000000000000000000000":"f17e79aed0db7e279e955b5f493875a7"
|
||||
|
||||
AES-128-CFB128 Encrypt NIST KAT #3
|
||||
depends_on:MBEDTLS_CIPHER_MODE_CFB
|
||||
aes_encrypt_cfb128:"fc000000000000000000000000000000":"00000000000000000000000000000000":"00000000000000000000000000000000":"9ed5a75136a940d0963da379db4af26a"
|
||||
|
||||
AES-128-CFB128 Encrypt NIST KAT #4
|
||||
depends_on:MBEDTLS_CIPHER_MODE_CFB
|
||||
aes_encrypt_cfb128:"64cf9c7abc50b888af65f49d521944b2":"00000000000000000000000000000000":"00000000000000000000000000000000":"f7efc89d5dba578104016ce5ad659c05"
|
||||
|
||||
AES-128-CFB128 Encrypt NIST KAT #5
|
||||
depends_on:MBEDTLS_CIPHER_MODE_CFB
|
||||
aes_encrypt_cfb128:"47d6742eefcc0465dc96355e851b64d9":"00000000000000000000000000000000":"00000000000000000000000000000000":"0306194f666d183624aa230a8b264ae7"
|
||||
|
||||
AES-128-CFB128 Encrypt NIST KAT #6
|
||||
depends_on:MBEDTLS_CIPHER_MODE_CFB
|
||||
aes_encrypt_cfb128:"3eb39790678c56bee34bbcdeccf6cdb5":"00000000000000000000000000000000":"00000000000000000000000000000000":"858075d536d79ccee571f7d7204b1f67"
|
||||
|
||||
AES-128-CFB128 Encrypt NIST KAT #7
|
||||
depends_on:MBEDTLS_CIPHER_MODE_CFB
|
||||
aes_encrypt_cfb128:"00000000000000000000000000000000":"6a118a874519e64e9963798a503f1d35":"00000000000000000000000000000000":"dc43be40be0e53712f7e2bf5ca707209"
|
||||
|
||||
AES-128-CFB128 Encrypt NIST KAT #8
|
||||
depends_on:MBEDTLS_CIPHER_MODE_CFB
|
||||
aes_encrypt_cfb128:"00000000000000000000000000000000":"cb9fceec81286ca3e989bd979b0cb284":"00000000000000000000000000000000":"92beedab1895a94faa69b632e5cc47ce"
|
||||
|
||||
AES-128-CFB128 Encrypt NIST KAT #9
|
||||
depends_on:MBEDTLS_CIPHER_MODE_CFB
|
||||
aes_encrypt_cfb128:"00000000000000000000000000000000":"b26aeb1874e47ca8358ff22378f09144":"00000000000000000000000000000000":"459264f4798f6a78bacb89c15ed3d601"
|
||||
|
||||
AES-128-CFB128 Encrypt NIST KAT #10
|
||||
depends_on:MBEDTLS_CIPHER_MODE_CFB
|
||||
aes_encrypt_cfb128:"00000000000000000000000000000000":"fffffffffffffffffffffffffffffff0":"00000000000000000000000000000000":"f9b0fda0c4a898f5b9e6f661c4ce4d07"
|
||||
|
||||
AES-128-CFB128 Encrypt NIST KAT #11
|
||||
depends_on:MBEDTLS_CIPHER_MODE_CFB
|
||||
aes_encrypt_cfb128:"00000000000000000000000000000000":"fffffffffffffffffffffffffffffff8":"00000000000000000000000000000000":"8ade895913685c67c5269f8aae42983e"
|
||||
|
||||
AES-128-CFB128 Encrypt NIST KAT #12
|
||||
depends_on:MBEDTLS_CIPHER_MODE_CFB
|
||||
aes_encrypt_cfb128:"00000000000000000000000000000000":"fffffffffffffffffffffffffffffffc":"00000000000000000000000000000000":"39bde67d5c8ed8a8b1c37eb8fa9f5ac0"
|
||||
|
||||
AES-128-CFB128 Decrypt NIST KAT #1
|
||||
depends_on:MBEDTLS_CIPHER_MODE_CFB
|
||||
aes_decrypt_cfb128:"fffffffe000000000000000000000000":"00000000000000000000000000000000":"1114bc2028009b923f0b01915ce5e7c4":"00000000000000000000000000000000"
|
||||
|
||||
AES-128-CFB128 Decrypt NIST KAT #2
|
||||
depends_on:MBEDTLS_CIPHER_MODE_CFB
|
||||
aes_decrypt_cfb128:"ffffffff000000000000000000000000":"00000000000000000000000000000000":"9c28524a16a1e1c1452971caa8d13476":"00000000000000000000000000000000"
|
||||
|
||||
AES-128-CFB128 Decrypt NIST KAT #3
|
||||
depends_on:MBEDTLS_CIPHER_MODE_CFB
|
||||
aes_decrypt_cfb128:"ffffffff800000000000000000000000":"00000000000000000000000000000000":"ed62e16363638360fdd6ad62112794f0":"00000000000000000000000000000000"
|
||||
|
||||
AES-128-CFB128 Decrypt NIST KAT #4
|
||||
depends_on:MBEDTLS_CIPHER_MODE_CFB
|
||||
aes_decrypt_cfb128:"3071a2a48fe6cbd04f1a129098e308f8":"00000000000000000000000000000000":"4b98e06d356deb07ebb824e5713f7be3":"00000000000000000000000000000000"
|
||||
|
||||
AES-128-CFB128 Decrypt NIST KAT #5
|
||||
depends_on:MBEDTLS_CIPHER_MODE_CFB
|
||||
aes_decrypt_cfb128:"90f42ec0f68385f2ffc5dfc03a654dce":"00000000000000000000000000000000":"7a20a53d460fc9ce0423a7a0764c6cf2":"00000000000000000000000000000000"
|
||||
|
||||
AES-128-CFB128 Decrypt NIST KAT #6
|
||||
depends_on:MBEDTLS_CIPHER_MODE_CFB
|
||||
aes_decrypt_cfb128:"febd9a24d8b65c1c787d50a4ed3619a9":"00000000000000000000000000000000":"f4a70d8af877f9b02b4c40df57d45b17":"00000000000000000000000000000000"
|
||||
|
||||
AES-128-CFB128 Decrypt NIST KAT #7
|
||||
depends_on:MBEDTLS_CIPHER_MODE_CFB
|
||||
aes_decrypt_cfb128:"00000000000000000000000000000000":"f34481ec3cc627bacd5dc3fb08f273e6":"0336763e966d92595a567cc9ce537f5e":"00000000000000000000000000000000"
|
||||
|
||||
AES-128-CFB128 Decrypt NIST KAT #8
|
||||
depends_on:MBEDTLS_CIPHER_MODE_CFB
|
||||
aes_decrypt_cfb128:"00000000000000000000000000000000":"9798c4640bad75c7c3227db910174e72":"a9a1631bf4996954ebc093957b234589":"00000000000000000000000000000000"
|
||||
|
||||
AES-128-CFB128 Decrypt NIST KAT #9
|
||||
depends_on:MBEDTLS_CIPHER_MODE_CFB
|
||||
aes_decrypt_cfb128:"00000000000000000000000000000000":"96ab5c2ff612d9dfaae8c31f30c42168":"ff4f8391a6a40ca5b25d23bedd44a597":"00000000000000000000000000000000"
|
||||
|
||||
AES-128-CFB128 Decrypt NIST KAT #10
|
||||
depends_on:MBEDTLS_CIPHER_MODE_CFB
|
||||
aes_decrypt_cfb128:"00000000000000000000000000000000":"ffffffffffffffff0000000000000000":"f807c3e7985fe0f5a50e2cdb25c5109e":"00000000000000000000000000000000"
|
||||
|
||||
AES-128-CFB128 Decrypt NIST KAT #11
|
||||
depends_on:MBEDTLS_CIPHER_MODE_CFB
|
||||
aes_decrypt_cfb128:"00000000000000000000000000000000":"ffffffffffffffff8000000000000000":"41f992a856fb278b389a62f5d274d7e9":"00000000000000000000000000000000"
|
||||
|
||||
AES-128-CFB128 Decrypt NIST KAT #12
|
||||
depends_on:MBEDTLS_CIPHER_MODE_CFB
|
||||
aes_decrypt_cfb128:"00000000000000000000000000000000":"ffffffffffffffffc000000000000000":"10d3ed7a6fe15ab4d91acbc7d0767ab1":"00000000000000000000000000000000"
|
||||
|
||||
AES-192-CFB128 Encrypt NIST KAT #1
|
||||
depends_on:MBEDTLS_CIPHER_MODE_CFB:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
aes_encrypt_cfb128:"fffffffffffffffffffc0000000000000000000000000000":"00000000000000000000000000000000":"00000000000000000000000000000000":"8dfd999be5d0cfa35732c0ddc88ff5a5"
|
||||
|
||||
AES-192-CFB128 Encrypt NIST KAT #2
|
||||
depends_on:MBEDTLS_CIPHER_MODE_CFB:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
aes_encrypt_cfb128:"fffffffffffffffffffe0000000000000000000000000000":"00000000000000000000000000000000":"00000000000000000000000000000000":"02647c76a300c3173b841487eb2bae9f"
|
||||
|
||||
AES-192-CFB128 Encrypt NIST KAT #3
|
||||
depends_on:MBEDTLS_CIPHER_MODE_CFB:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
aes_encrypt_cfb128:"ffffffffffffffffffff0000000000000000000000000000":"00000000000000000000000000000000":"00000000000000000000000000000000":"172df8b02f04b53adab028b4e01acd87"
|
||||
|
||||
AES-192-CFB128 Encrypt NIST KAT #4
|
||||
depends_on:MBEDTLS_CIPHER_MODE_CFB:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
aes_encrypt_cfb128:"d184c36cf0dddfec39e654195006022237871a47c33d3198":"00000000000000000000000000000000":"00000000000000000000000000000000":"2e19fb60a3e1de0166f483c97824a978"
|
||||
|
||||
AES-192-CFB128 Encrypt NIST KAT #5
|
||||
depends_on:MBEDTLS_CIPHER_MODE_CFB:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
aes_encrypt_cfb128:"4c6994ffa9dcdc805b60c2c0095334c42d95a8fc0ca5b080":"00000000000000000000000000000000":"00000000000000000000000000000000":"7656709538dd5fec41e0ce6a0f8e207d"
|
||||
|
||||
AES-192-CFB128 Encrypt NIST KAT #6
|
||||
depends_on:MBEDTLS_CIPHER_MODE_CFB:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
aes_encrypt_cfb128:"c88f5b00a4ef9a6840e2acaf33f00a3bdc4e25895303fa72":"00000000000000000000000000000000":"00000000000000000000000000000000":"a67cf333b314d411d3c0ae6e1cfcd8f5"
|
||||
|
||||
AES-192-CFB128 Encrypt NIST KAT #7
|
||||
depends_on:MBEDTLS_CIPHER_MODE_CFB:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
aes_encrypt_cfb128:"000000000000000000000000000000000000000000000000":"9c2d8842e5f48f57648205d39a239af1":"00000000000000000000000000000000":"c9b8135ff1b5adc413dfd053b21bd96d"
|
||||
|
||||
AES-192-CFB128 Encrypt NIST KAT #8
|
||||
depends_on:MBEDTLS_CIPHER_MODE_CFB:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
aes_encrypt_cfb128:"000000000000000000000000000000000000000000000000":"bff52510095f518ecca60af4205444bb":"00000000000000000000000000000000":"4a3650c3371ce2eb35e389a171427440"
|
||||
|
||||
AES-192-CFB128 Encrypt NIST KAT #9
|
||||
depends_on:MBEDTLS_CIPHER_MODE_CFB:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
aes_encrypt_cfb128:"000000000000000000000000000000000000000000000000":"51719783d3185a535bd75adc65071ce1":"00000000000000000000000000000000":"4f354592ff7c8847d2d0870ca9481b7c"
|
||||
|
||||
AES-192-CFB128 Encrypt NIST KAT #10
|
||||
depends_on:MBEDTLS_CIPHER_MODE_CFB:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
aes_encrypt_cfb128:"000000000000000000000000000000000000000000000000":"ffffffffffffffe00000000000000000":"00000000000000000000000000000000":"f34e4a6324ea4a5c39a661c8fe5ada8f"
|
||||
|
||||
AES-192-CFB128 Encrypt NIST KAT #11
|
||||
depends_on:MBEDTLS_CIPHER_MODE_CFB:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
aes_encrypt_cfb128:"000000000000000000000000000000000000000000000000":"fffffffffffffff00000000000000000":"00000000000000000000000000000000":"0882a16f44088d42447a29ac090ec17e"
|
||||
|
||||
AES-192-CFB128 Encrypt NIST KAT #12
|
||||
depends_on:MBEDTLS_CIPHER_MODE_CFB:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
aes_encrypt_cfb128:"000000000000000000000000000000000000000000000000":"fffffffffffffff80000000000000000":"00000000000000000000000000000000":"3a3c15bfc11a9537c130687004e136ee"
|
||||
|
||||
AES-192-CFB128 Decrypt NIST KAT #1
|
||||
depends_on:MBEDTLS_CIPHER_MODE_CFB:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
aes_decrypt_cfb128:"ffffffffffffffffffffffffffffffffffffffffffe00000":"00000000000000000000000000000000":"60136703374f64e860b48ce31f930716":"00000000000000000000000000000000"
|
||||
|
||||
AES-192-CFB128 Decrypt NIST KAT #2
|
||||
depends_on:MBEDTLS_CIPHER_MODE_CFB:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
aes_decrypt_cfb128:"fffffffffffffffffffffffffffffffffffffffffff00000":"00000000000000000000000000000000":"8d63a269b14d506ccc401ab8a9f1b591":"00000000000000000000000000000000"
|
||||
|
||||
AES-192-CFB128 Decrypt NIST KAT #3
|
||||
depends_on:MBEDTLS_CIPHER_MODE_CFB:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
aes_decrypt_cfb128:"fffffffffffffffffffffffffffffffffffffffffff80000":"00000000000000000000000000000000":"d317f81dc6aa454aee4bd4a5a5cff4bd":"00000000000000000000000000000000"
|
||||
|
||||
AES-192-CFB128 Decrypt NIST KAT #4
|
||||
depends_on:MBEDTLS_CIPHER_MODE_CFB:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
aes_decrypt_cfb128:"98c6b8e01e379fbd14e61af6af891596583565f2a27d59e9":"00000000000000000000000000000000":"19c80ec4a6deb7e5ed1033dda933498f":"00000000000000000000000000000000"
|
||||
|
||||
AES-192-CFB128 Decrypt NIST KAT #5
|
||||
depends_on:MBEDTLS_CIPHER_MODE_CFB:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
aes_decrypt_cfb128:"b3ad5cea1dddc214ca969ac35f37dae1a9a9d1528f89bb35":"00000000000000000000000000000000":"3cf5e1d21a17956d1dffad6a7c41c659":"00000000000000000000000000000000"
|
||||
|
||||
AES-192-CFB128 Decrypt NIST KAT #6
|
||||
depends_on:MBEDTLS_CIPHER_MODE_CFB:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
aes_decrypt_cfb128:"45899367c3132849763073c435a9288a766c8b9ec2308516":"00000000000000000000000000000000":"69fd12e8505f8ded2fdcb197a121b362":"00000000000000000000000000000000"
|
||||
|
||||
AES-192-CFB128 Decrypt NIST KAT #7
|
||||
depends_on:MBEDTLS_CIPHER_MODE_CFB:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
aes_decrypt_cfb128:"000000000000000000000000000000000000000000000000":"1b077a6af4b7f98229de786d7516b639":"275cfc0413d8ccb70513c3859b1d0f72":"00000000000000000000000000000000"
|
||||
|
||||
AES-192-CFB128 Decrypt NIST KAT #8
|
||||
depends_on:MBEDTLS_CIPHER_MODE_CFB:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
aes_decrypt_cfb128:"000000000000000000000000000000000000000000000000":"9c2d8842e5f48f57648205d39a239af1":"c9b8135ff1b5adc413dfd053b21bd96d":"00000000000000000000000000000000"
|
||||
|
||||
AES-192-CFB128 Decrypt NIST KAT #9
|
||||
depends_on:MBEDTLS_CIPHER_MODE_CFB:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
aes_decrypt_cfb128:"000000000000000000000000000000000000000000000000":"bff52510095f518ecca60af4205444bb":"4a3650c3371ce2eb35e389a171427440":"00000000000000000000000000000000"
|
||||
|
||||
AES-192-CFB128 Decrypt NIST KAT #10
|
||||
depends_on:MBEDTLS_CIPHER_MODE_CFB:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
aes_decrypt_cfb128:"000000000000000000000000000000000000000000000000":"ffffffffffffffffffff000000000000":"54d632d03aba0bd0f91877ebdd4d09cb":"00000000000000000000000000000000"
|
||||
|
||||
AES-192-CFB128 Decrypt NIST KAT #11
|
||||
depends_on:MBEDTLS_CIPHER_MODE_CFB:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
aes_decrypt_cfb128:"000000000000000000000000000000000000000000000000":"ffffffffffffffffffff800000000000":"d3427be7e4d27cd54f5fe37b03cf0897":"00000000000000000000000000000000"
|
||||
|
||||
AES-192-CFB128 Decrypt NIST KAT #12
|
||||
depends_on:MBEDTLS_CIPHER_MODE_CFB:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
aes_decrypt_cfb128:"000000000000000000000000000000000000000000000000":"ffffffffffffffffffffc00000000000":"b2099795e88cc158fd75ea133d7e7fbe":"00000000000000000000000000000000"
|
||||
|
||||
AES-256-CFB128 Encrypt NIST KAT #1
|
||||
depends_on:MBEDTLS_CIPHER_MODE_CFB:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
aes_encrypt_cfb128:"ffffffe000000000000000000000000000000000000000000000000000000000":"00000000000000000000000000000000":"00000000000000000000000000000000":"bbd1097a62433f79449fa97d4ee80dbf"
|
||||
|
||||
AES-256-CFB128 Encrypt NIST KAT #2
|
||||
depends_on:MBEDTLS_CIPHER_MODE_CFB:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
aes_encrypt_cfb128:"fffffff000000000000000000000000000000000000000000000000000000000":"00000000000000000000000000000000":"00000000000000000000000000000000":"07058e408f5b99b0e0f061a1761b5b3b"
|
||||
|
||||
AES-256-CFB128 Encrypt NIST KAT #3
|
||||
depends_on:MBEDTLS_CIPHER_MODE_CFB:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
aes_encrypt_cfb128:"fffffff800000000000000000000000000000000000000000000000000000000":"00000000000000000000000000000000":"00000000000000000000000000000000":"5fd1f13fa0f31e37fabde328f894eac2"
|
||||
|
||||
AES-256-CFB128 Encrypt NIST KAT #4
|
||||
depends_on:MBEDTLS_CIPHER_MODE_CFB:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
aes_encrypt_cfb128:"13428b5e4c005e0636dd338405d173ab135dec2a25c22c5df0722d69dcc43887":"00000000000000000000000000000000":"00000000000000000000000000000000":"649a71545378c783e368c9ade7114f6c"
|
||||
|
||||
AES-256-CFB128 Encrypt NIST KAT #5
|
||||
depends_on:MBEDTLS_CIPHER_MODE_CFB:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
aes_encrypt_cfb128:"07eb03a08d291d1b07408bf3512ab40c91097ac77461aad4bb859647f74f00ee":"00000000000000000000000000000000":"00000000000000000000000000000000":"47cb030da2ab051dfc6c4bf6910d12bb"
|
||||
|
||||
AES-256-CFB128 Encrypt NIST KAT #6
|
||||
depends_on:MBEDTLS_CIPHER_MODE_CFB:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
aes_encrypt_cfb128:"90143ae20cd78c5d8ebdd6cb9dc1762427a96c78c639bccc41a61424564eafe1":"00000000000000000000000000000000":"00000000000000000000000000000000":"798c7c005dee432b2c8ea5dfa381ecc3"
|
||||
|
||||
AES-256-CFB128 Encrypt NIST KAT #7
|
||||
depends_on:MBEDTLS_CIPHER_MODE_CFB:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
aes_encrypt_cfb128:"0000000000000000000000000000000000000000000000000000000000000000":"0b24af36193ce4665f2825d7b4749c98":"00000000000000000000000000000000":"a9ff75bd7cf6613d3731c77c3b6d0c04"
|
||||
|
||||
AES-256-CFB128 Encrypt NIST KAT #8
|
||||
depends_on:MBEDTLS_CIPHER_MODE_CFB:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
aes_encrypt_cfb128:"0000000000000000000000000000000000000000000000000000000000000000":"761c1fe41a18acf20d241650611d90f1":"00000000000000000000000000000000":"623a52fcea5d443e48d9181ab32c7421"
|
||||
|
||||
AES-256-CFB128 Encrypt NIST KAT #9
|
||||
depends_on:MBEDTLS_CIPHER_MODE_CFB:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
aes_encrypt_cfb128:"0000000000000000000000000000000000000000000000000000000000000000":"8a560769d605868ad80d819bdba03771":"00000000000000000000000000000000":"38f2c7ae10612415d27ca190d27da8b4"
|
||||
|
||||
AES-256-CFB128 Encrypt NIST KAT #10
|
||||
depends_on:MBEDTLS_CIPHER_MODE_CFB:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
aes_encrypt_cfb128:"0000000000000000000000000000000000000000000000000000000000000000":"ffffffffffffffffffffffffe0000000":"00000000000000000000000000000000":"2be1fae5048a25582a679ca10905eb80"
|
||||
|
||||
AES-256-CFB128 Encrypt NIST KAT #11
|
||||
depends_on:MBEDTLS_CIPHER_MODE_CFB:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
aes_encrypt_cfb128:"0000000000000000000000000000000000000000000000000000000000000000":"fffffffffffffffffffffffff0000000":"00000000000000000000000000000000":"da86f292c6f41ea34fb2068df75ecc29"
|
||||
|
||||
AES-256-CFB128 Encrypt NIST KAT #12
|
||||
depends_on:MBEDTLS_CIPHER_MODE_CFB:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
aes_encrypt_cfb128:"0000000000000000000000000000000000000000000000000000000000000000":"fffffffffffffffffffffffff8000000":"00000000000000000000000000000000":"220df19f85d69b1b562fa69a3c5beca5"
|
||||
|
||||
AES-256-CFB128 Decrypt NIST KAT #1
|
||||
depends_on:MBEDTLS_CIPHER_MODE_CFB:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
aes_decrypt_cfb128:"ffffffffff800000000000000000000000000000000000000000000000000000":"00000000000000000000000000000000":"be66cfea2fecd6bf0ec7b4352c99bcaa":"00000000000000000000000000000000"
|
||||
|
||||
AES-256-CFB128 Decrypt NIST KAT #2
|
||||
depends_on:MBEDTLS_CIPHER_MODE_CFB:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
aes_decrypt_cfb128:"ffffffffffc00000000000000000000000000000000000000000000000000000":"00000000000000000000000000000000":"df31144f87a2ef523facdcf21a427804":"00000000000000000000000000000000"
|
||||
|
||||
AES-256-CFB128 Decrypt NIST KAT #3
|
||||
depends_on:MBEDTLS_CIPHER_MODE_CFB:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
aes_decrypt_cfb128:"ffffffffffe00000000000000000000000000000000000000000000000000000":"00000000000000000000000000000000":"b5bb0f5629fb6aae5e1839a3c3625d63":"00000000000000000000000000000000"
|
||||
|
||||
AES-256-CFB128 Decrypt NIST KAT #4
|
||||
depends_on:MBEDTLS_CIPHER_MODE_CFB:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
aes_decrypt_cfb128:"1d85a181b54cde51f0e098095b2962fdc93b51fe9b88602b3f54130bf76a5bd9":"00000000000000000000000000000000":"531c2c38344578b84d50b3c917bbb6e1":"00000000000000000000000000000000"
|
||||
|
||||
AES-256-CFB128 Decrypt NIST KAT #5
|
||||
depends_on:MBEDTLS_CIPHER_MODE_CFB:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
aes_decrypt_cfb128:"dc0eba1f2232a7879ded34ed8428eeb8769b056bbaf8ad77cb65c3541430b4cf":"00000000000000000000000000000000":"fc6aec906323480005c58e7e1ab004ad":"00000000000000000000000000000000"
|
||||
|
||||
AES-256-CFB128 Decrypt NIST KAT #6
|
||||
depends_on:MBEDTLS_CIPHER_MODE_CFB:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
aes_decrypt_cfb128:"f8be9ba615c5a952cabbca24f68f8593039624d524c816acda2c9183bd917cb9":"00000000000000000000000000000000":"a3944b95ca0b52043584ef02151926a8":"00000000000000000000000000000000"
|
||||
|
||||
AES-256-CFB128 Decrypt NIST KAT #7
|
||||
depends_on:MBEDTLS_CIPHER_MODE_CFB:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
aes_decrypt_cfb128:"0000000000000000000000000000000000000000000000000000000000000000":"761c1fe41a18acf20d241650611d90f1":"623a52fcea5d443e48d9181ab32c7421":"00000000000000000000000000000000"
|
||||
|
||||
AES-256-CFB128 Decrypt NIST KAT #8
|
||||
depends_on:MBEDTLS_CIPHER_MODE_CFB:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
aes_decrypt_cfb128:"0000000000000000000000000000000000000000000000000000000000000000":"8a560769d605868ad80d819bdba03771":"38f2c7ae10612415d27ca190d27da8b4":"00000000000000000000000000000000"
|
||||
|
||||
AES-256-CFB128 Decrypt NIST KAT #9
|
||||
depends_on:MBEDTLS_CIPHER_MODE_CFB:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
aes_decrypt_cfb128:"0000000000000000000000000000000000000000000000000000000000000000":"91fbef2d15a97816060bee1feaa49afe":"1bc704f1bce135ceb810341b216d7abe":"00000000000000000000000000000000"
|
||||
|
||||
AES-256-CFB128 Decrypt NIST KAT #10
|
||||
depends_on:MBEDTLS_CIPHER_MODE_CFB:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
aes_decrypt_cfb128:"0000000000000000000000000000000000000000000000000000000000000000":"e0000000000000000000000000000000":"9b80eefb7ebe2d2b16247aa0efc72f5d":"00000000000000000000000000000000"
|
||||
|
||||
AES-256-CFB128 Decrypt NIST KAT #11
|
||||
depends_on:MBEDTLS_CIPHER_MODE_CFB:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
aes_decrypt_cfb128:"0000000000000000000000000000000000000000000000000000000000000000":"f0000000000000000000000000000000":"7f2c5ece07a98d8bee13c51177395ff7":"00000000000000000000000000000000"
|
||||
|
||||
AES-256-CFB128 Decrypt NIST KAT #12
|
||||
depends_on:MBEDTLS_CIPHER_MODE_CFB:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
aes_decrypt_cfb128:"0000000000000000000000000000000000000000000000000000000000000000":"f8000000000000000000000000000000":"7818d800dcf6f4be1e0e94f403d1e4c2":"00000000000000000000000000000000"
|
||||
|
||||
AES-128-CFB8 Encrypt NIST MMT #0
|
||||
aes_encrypt_cfb8:"c57d699d89df7cfbef71c080a6b10ac3":"fcb2bc4c006b87483978796a2ae2c42e":"61":"24"
|
||||
|
||||
AES-128-CFB8 Encrypt NIST MMT #1
|
||||
aes_encrypt_cfb8:"0d8f3dc3edee60db658bb97faf46fba3":"e481fdc42e606b96a383c0a1a5520ebb":"aacd":"5066"
|
||||
|
||||
AES-128-CFB8 Encrypt NIST MMT #2
|
||||
aes_encrypt_cfb8:"c8fe9bf77b930f46d2078b8c0e657cd4":"f475c64991b20eaee183a22629e21e22":"c90635":"d27691"
|
||||
|
||||
AES-128-CFB8 Encrypt NIST MMT #3
|
||||
aes_encrypt_cfb8:"280cf81af5cc7e7363579c1da03390e6":"5d6cf4722d0e21f1d9ced53a0e36c342":"b2a22ced":"73f3aebf"
|
||||
|
||||
AES-128-CFB8 Encrypt NIST MMT #4
|
||||
aes_encrypt_cfb8:"5d5e7f20e0a66d3e09e0e5a9912f8a46":"052d7ea0ad1f2956a23b27afe1d87b6b":"b84a90fc6d":"1a9a61c307"
|
||||
|
||||
AES-128-CFB8 Encrypt NIST MMT #5
|
||||
aes_encrypt_cfb8:"ec89fb348787cf902ca973c47081438d":"528fe95c711bd13f37bc52cc9e96d45c":"14253472e99d":"cfc247e33a3b"
|
||||
|
||||
AES-128-CFB8 Encrypt NIST MMT #6
|
||||
aes_encrypt_cfb8:"6607987c354809cba818639dcd185147":"552c101a0b7c0ca143af258453937fa3":"9b1a5a1369166e":"b7ab2a4cc71904"
|
||||
|
||||
AES-128-CFB8 Encrypt NIST MMT #7
|
||||
aes_encrypt_cfb8:"c028e6bf2b749ffa86759f2f84e93cb0":"288c752d9faccf367e5d0cca1fa6ec3b":"324015878cdc82bf":"873250152fc6a5bb"
|
||||
|
||||
AES-128-CFB8 Encrypt NIST MMT #8
|
||||
aes_encrypt_cfb8:"d01da95d2c2a61da06ea78cfba59cc30":"f9a393ad90814faf262e3a5b1d97592e":"57c1a30e48166d9640":"e9a8c3b776edd39e3d"
|
||||
|
||||
AES-128-CFB8 Encrypt NIST MMT #9
|
||||
aes_encrypt_cfb8:"3a6f9159263fa6cef2a075caface5817":"0fc23662b7dbf73827f0c7de321ca36e":"87efeb8d559ed3367728":"8e9c50425614d540ce11"
|
||||
|
||||
AES-128-CFB8 Decrypt NIST MMT #0
|
||||
aes_decrypt_cfb8:"03edfe082550bd5ac8ddf64f42a0547f":"52acd8dab62c981da08e51939cc08dab":"21":"09"
|
||||
|
||||
AES-128-CFB8 Decrypt NIST MMT #1
|
||||
aes_decrypt_cfb8:"38cf776750162edc63c3b5dbe311ab9f":"98fbbd288872c40f1926b16ecaec1561":"4878":"eb24"
|
||||
|
||||
AES-128-CFB8 Decrypt NIST MMT #2
|
||||
aes_decrypt_cfb8:"c9053c87c3e56bc5e52bd31f6545f991":"b8f9640d0923da13fe6eb87b01f0cfa0":"aeb6d2":"910949"
|
||||
|
||||
AES-128-CFB8 Decrypt NIST MMT #3
|
||||
aes_decrypt_cfb8:"e96771f5f20a89ee871261d2d18e1e46":"6e86403e33396655907ae06ef192262f":"83cab2f3":"3b7f1f1c"
|
||||
|
||||
AES-128-CFB8 Decrypt NIST MMT #4
|
||||
aes_decrypt_cfb8:"92ad13ecb60bde1bb3b34ce07867672b":"f95a4060b8f80e3f839d4c3ca33dad94":"49f73e652b":"17b9b9e16d"
|
||||
|
||||
AES-128-CFB8 Decrypt NIST MMT #5
|
||||
aes_decrypt_cfb8:"eb57b8dd076e7bbb33d4bfc4d7ecb27e":"51135997a067dcd2e016c57134c5fa52":"b0eacbf2ca46":"ca989fa4e818"
|
||||
|
||||
AES-128-CFB8 Decrypt NIST MMT #6
|
||||
aes_decrypt_cfb8:"70abc48bb1be490183f0fe3df56195ff":"e251f179174b71ee1e488ab3dd200483":"08fbef9b2a369a":"5405da1186b7e0"
|
||||
|
||||
AES-128-CFB8 Decrypt NIST MMT #7
|
||||
aes_decrypt_cfb8:"1273b8e0eee1a1ca827059b4d0a3a55d":"622cab49092d026f554dd98a6441dc26":"b3cb9d8892423aeb":"d497df73afb9787c"
|
||||
|
||||
AES-128-CFB8 Decrypt NIST MMT #8
|
||||
aes_decrypt_cfb8:"49437e06b6faa5f20fd98bf71f8ff554":"63c818e0d3cb5b7054ef3e1e87df0e12":"01992a986279c3685e":"f203bcd402b65919da"
|
||||
|
||||
AES-128-CFB8 Decrypt NIST MMT #9
|
||||
aes_decrypt_cfb8:"6399c1dc068ba3509845628fa9ed1a96":"1157c2766c86b754df485be9dd5851df":"c9c284e9abbfe6fb11fe":"feff4e2e2458addf2a54"
|
||||
|
||||
AES-192-CFB8 Encrypt NIST MMT #0
|
||||
depends_on:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
aes_encrypt_cfb8:"32a1b0e3da368db563d7316b9779d3327e53d9a6d287ed97":"3dd0e7e21f09d5842f3a699da9b57346":"54":"6d"
|
||||
|
||||
AES-192-CFB8 Encrypt NIST MMT #1
|
||||
depends_on:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
aes_encrypt_cfb8:"a6381dcc18dd85d7729c1dce90743bbe1df580d857f5b9c4":"c0ac501fad7f4a1465daf32e18fc1a4f":"a456":"8fb6"
|
||||
|
||||
AES-192-CFB8 Encrypt NIST MMT #2
|
||||
depends_on:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
aes_encrypt_cfb8:"d08dbee4732c7ffc544c1695b201d30e795037325ef0aa18":"a1e39aeeb972a8d70aa0fc7d6fac6eac":"fd115d":"c4c016"
|
||||
|
||||
AES-192-CFB8 Encrypt NIST MMT #3
|
||||
depends_on:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
aes_encrypt_cfb8:"277185a4a440869920f523c4d578fc5bedd33aee8d2ebaf7":"67be00572f82aabc13d6e5a2e51d1f08":"88e07061":"8bb630ba"
|
||||
|
||||
AES-192-CFB8 Encrypt NIST MMT #4
|
||||
depends_on:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
aes_encrypt_cfb8:"83f70fdce47306fcbb8c21b6a8b3209f7ec185fef4deebd4":"ff73b310cf7e62ce6f501092fa6cc888":"36664e222d":"20855555d1"
|
||||
|
||||
AES-192-CFB8 Encrypt NIST MMT #5
|
||||
depends_on:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
aes_encrypt_cfb8:"c5be271a29f4a29e085e8e98196601dcb88ccc03e559a304":"9f51fa2eb8a084718f7240e47d135dce":"b57f12342a62":"73ff9bf3ec4b"
|
||||
|
||||
AES-192-CFB8 Encrypt NIST MMT #6
|
||||
depends_on:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
aes_encrypt_cfb8:"9c55322e6d495be01076d4b80371ad1479ae5636ff9861f5":"2b79cfc1ff37254dedf5924a6b61e3e0":"6dcede43c2ee65":"7c897658282220"
|
||||
|
||||
AES-192-CFB8 Encrypt NIST MMT #7
|
||||
depends_on:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
aes_encrypt_cfb8:"6e78ccece7d1b2a3c08cf0de738bee33cbbbf78d9bf4922c":"4bbe15b1e94a7b97250a2136d8804e46":"ceda42527871f802":"d92ff89045b1917f"
|
||||
|
||||
AES-192-CFB8 Encrypt NIST MMT #8
|
||||
depends_on:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
aes_encrypt_cfb8:"13c98665746f7825b37b404916240adbd1e4364be1d05c63":"0e479fbd5f3961f38b8a26be1f2d65c5":"1b0a63d73464ab3c8a":"5485847e5d3c2e2cc4"
|
||||
|
||||
AES-192-CFB8 Encrypt NIST MMT #9
|
||||
depends_on:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
aes_encrypt_cfb8:"537e7bf661fd4024a024613f15b13690f7d0c847c1e18965":"3a81f9d9d3c155b0caad5d73349476fc":"d3d8b9b984adc24237ee":"3879fea72ac99929e53a"
|
||||
|
||||
AES-192-CFB8 Decrypt NIST MMT #0
|
||||
depends_on:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
aes_decrypt_cfb8:"7dbdc15ad4034ed828dc862799b7adc9abd68eaf9d526d5d":"4359683af5a3a85c248fb7f5506f317b":"25":"2d"
|
||||
|
||||
AES-192-CFB8 Decrypt NIST MMT #1
|
||||
depends_on:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
aes_decrypt_cfb8:"3a2cdf9c9608c1dd6233d03dd855293b0885915114b25279":"e7a28ee34acc52128ddae658ec6398a2":"0678":"7b04"
|
||||
|
||||
AES-192-CFB8 Decrypt NIST MMT #2
|
||||
depends_on:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
aes_decrypt_cfb8:"c984b99a6cc5bc88003143cbe4b755e6e30ba94114f7ad1e":"41e3b8fd138f8c358dfeef420302f634":"037cf6":"658d0a"
|
||||
|
||||
AES-192-CFB8 Decrypt NIST MMT #3
|
||||
depends_on:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
aes_decrypt_cfb8:"39747da225bdc0c53c3463fd686dbe19d14157535171f91d":"77d3a5ad8bbdb169f8d29e5f21798651":"0fb0cee2":"2d191f2f"
|
||||
|
||||
AES-192-CFB8 Decrypt NIST MMT #4
|
||||
depends_on:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
aes_decrypt_cfb8:"4cd13179dfa16d01c6a8633dfc8783e723e72114c9b0d50a":"6657c46c99d642474c330d8016b71dbe":"09d914cf0b":"105a64c872"
|
||||
|
||||
AES-192-CFB8 Decrypt NIST MMT #5
|
||||
depends_on:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
aes_decrypt_cfb8:"5dcc9b8d8a456e9917cd8d54d7f7100b34964b4ed2d398a0":"4fa295a8987f1b010ce4e011fbf94156":"288c752d9fac":"98f332d37b78"
|
||||
|
||||
AES-192-CFB8 Decrypt NIST MMT #6
|
||||
depends_on:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
aes_decrypt_cfb8:"c8baf0204ef80b8e0125efe43a0bccdfd0f356b62e6c75fe":"e9144bf2cbc5720a1b4cb6f37d11edff":"c9981a34b7aa89":"56bb4c3cae53b3"
|
||||
|
||||
AES-192-CFB8 Decrypt NIST MMT #7
|
||||
depends_on:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
aes_decrypt_cfb8:"64e40763f38a63ae378c32052b0ae3aa538bb868a04ac985":"aacf65089e4b285438451ffdcd0f6389":"d8fcf83a88510a0d":"b567411bc61b0a76"
|
||||
|
||||
AES-192-CFB8 Decrypt NIST MMT #8
|
||||
depends_on:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
aes_decrypt_cfb8:"7bfdca9605f17253f203efffc92da96fde023007d22cdad0":"45c09e44036070f8a7737a5176b8cf26":"9c195b1944c4af5bfb":"89358df65c3ef14d26"
|
||||
|
||||
AES-192-CFB8 Decrypt NIST MMT #9
|
||||
depends_on:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
aes_decrypt_cfb8:"baf08b76317a65c5f07ae6f57eb0e65488659324d29709e3":"0a02846b62abb693ef31d754842eed29":"729c0b6deb75fa6eb5e8":"9895932402393dc33a60"
|
||||
|
||||
AES-256-CFB8 Encrypt NIST MMT #0
|
||||
depends_on:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
aes_encrypt_cfb8:"34e8091cee09f1bd3ebf1e8f05f51bfbd4899ef2ae006a3a0f7875052cdd46c8":"43eb4dcc4b04a80216a20e4a09a7abb5":"f9":"28"
|
||||
|
||||
AES-256-CFB8 Encrypt NIST MMT #1
|
||||
depends_on:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
aes_encrypt_cfb8:"e04e43173113109e1343393842fe6caef3f8a2e506d7f55f83dcb10444c6ad23":"a38b88a293b077fb5546636aad90d663":"2914":"69a6"
|
||||
|
||||
AES-256-CFB8 Encrypt NIST MMT #2
|
||||
depends_on:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
aes_encrypt_cfb8:"064874092f7a13cc4462247ad423d0e96edf42e8b67a5a23b7a0a6477b098e66":"338c552ff1eca14408e05d8cf9f3b31b":"b974fa":"1cff95"
|
||||
|
||||
AES-256-CFB8 Encrypt NIST MMT #3
|
||||
depends_on:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
aes_encrypt_cfb8:"56794adb0ef04aeddeabd650de736531d408837954b919002c33edfdff976cc2":"71b5526facea4236d33f1f4107e4b04f":"db774912":"f04d9d4f"
|
||||
|
||||
AES-256-CFB8 Encrypt NIST MMT #4
|
||||
depends_on:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
aes_encrypt_cfb8:"dddd7f234e7d0e6ec64560b96430986a856f2ee9805443a7946e31601ef6679d":"e20f39db0025eb24491bd06012887108":"ad1d5311ea":"19cc97a662"
|
||||
|
||||
AES-256-CFB8 Encrypt NIST MMT #5
|
||||
depends_on:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
aes_encrypt_cfb8:"ec73a760272c83f91771b3ab7b188715c6d6afb9c554feae83856e966a3863d0":"ae7bfa38fd25778fcf66ce8157f6e42e":"02fe724fbc5d":"b0eca63405f4"
|
||||
|
||||
AES-256-CFB8 Encrypt NIST MMT #6
|
||||
depends_on:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
aes_encrypt_cfb8:"a66874ca0b70fb98b37c033ec96413f339adae02acade015b9f016b459db3309":"6ed480d9e4ed031cf66bb1e07f8d5514":"b4777e6bcd9a05":"8c017397ad5bab"
|
||||
|
||||
AES-256-CFB8 Encrypt NIST MMT #7
|
||||
depends_on:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
aes_encrypt_cfb8:"a3dbbb775ada92b0b8ed1632444e21c1c86ff3eba8f628307306e766b8c15b5c":"4ec56a8e541f5cfe7b8ab947bfa4fd08":"1d70a5a82badf5ea":"1e22bebebeacd81d"
|
||||
|
||||
AES-256-CFB8 Encrypt NIST MMT #8
|
||||
depends_on:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
aes_encrypt_cfb8:"64135e67c0ca1acef3360d930afcd726c5b04861a69c1b6a48bde1daf20f3b1f":"5377a154d5f948189f9aa57b466c16b2":"a36ca5ea382a322eef":"3105016567d3174aed"
|
||||
|
||||
AES-256-CFB8 Encrypt NIST MMT #9
|
||||
depends_on:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
aes_encrypt_cfb8:"ebbb4566b5e182e0f072466b0b311df38f9175bc0213a5530bce2ec4d74f400d":"0956a48e01002c9e16376d6e308dbad1":"b0fe25ac8d3d28a2f471":"638c6823e7256fb5626e"
|
||||
|
||||
AES-256-CFB8 Decrypt NIST MMT #0
|
||||
depends_on:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
aes_decrypt_cfb8:"1687831580cb764321a9d674dbd0a9640f668b0f58ef01b87a710b3095d5f855":"6cd5bec6d6e1fd23afc543b8f80d3f89":"6f":"98"
|
||||
|
||||
AES-256-CFB8 Decrypt NIST MMT #1
|
||||
depends_on:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
aes_decrypt_cfb8:"b6b504e8b7065373ea31cd549e52eda7cb96fd1db14eddacbc420085ab48b747":"870ecd45b1241803ddaf8bad15a025d7":"17d4":"3572"
|
||||
|
||||
AES-256-CFB8 Decrypt NIST MMT #2
|
||||
depends_on:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
aes_decrypt_cfb8:"6ad3105e15fb5b742bf4fe1eb8e98c6c1ffea653107c84f6b42ed1232a0bbc21":"17534c89c4eae5dea6ea353dde7b1623":"a9841e":"f9411a"
|
||||
|
||||
AES-256-CFB8 Decrypt NIST MMT #3
|
||||
depends_on:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
aes_decrypt_cfb8:"758f3fa8b2b289f19fd59e7316be40b904eff7f565caac4570f972360e0da787":"b21335ae980898fa92c4b3069e532973":"84b35e25":"47887872"
|
||||
|
||||
AES-256-CFB8 Decrypt NIST MMT #4
|
||||
depends_on:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
aes_decrypt_cfb8:"802e854eb799500975d960a67885820d195e02ab23d51f15e5cdbcee86a1580c":"94478c4e44e2fa8d2e6bc43d384597e6":"d1e96bf1e8":"ed414b5689"
|
||||
|
||||
AES-256-CFB8 Decrypt NIST MMT #5
|
||||
depends_on:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
aes_decrypt_cfb8:"3a0c03ca9d1e5d49bb37f9041f88d159c3f1d5ce26c798f59ed54a93f0a0e600":"9aae38ba832e4b093b50444074517d20":"74410ccd12da":"8207eee2a7ab"
|
||||
|
||||
AES-256-CFB8 Decrypt NIST MMT #6
|
||||
depends_on:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
aes_decrypt_cfb8:"ee05462128fea75e919f6f436cb198f222847d698a283f5767df682d33d3ce77":"d2ad55e41887075184635112a22fc093":"ff039e89877b44":"aff3aa4c24e353"
|
||||
|
||||
AES-256-CFB8 Decrypt NIST MMT #7
|
||||
depends_on:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
aes_decrypt_cfb8:"08abbdcc3eb9c1717db1faa38dcd0893afd5e16e2596747af58f8d61ebedf9cd":"b925c8dc9a9b55a4372ea6d37d21c1eb":"e176ba99ea602fd9":"b7370050288bf600"
|
||||
|
||||
AES-256-CFB8 Decrypt NIST MMT #8
|
||||
depends_on:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
aes_decrypt_cfb8:"56d404a893fb3b3f594aab18939230b096646a37a781629fbd9270f3891a5cea":"e5906b36f2d97e6f2db19b6c7a3ce319":"c55a9a917a809a784b":"e44995bbb0fff40fee"
|
||||
|
||||
AES-256-CFB8 Decrypt NIST MMT #9
|
||||
depends_on:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
aes_decrypt_cfb8:"ec13062551e4d7291e320f565b749eea1809b663b26f2c4d53b52058b833e0ad":"fbfa5a528e20863012790c2abafb5a0c":"2bfc3f0209307140101a":"547bfd642cf6e12ed942"
|
||||
137
vendor/mbedtls/tests/suites/test_suite_aes.ctr.data
vendored
Normal file
137
vendor/mbedtls/tests/suites/test_suite_aes.ctr.data
vendored
Normal file
@@ -0,0 +1,137 @@
|
||||
# Test vectors from NIST Special Publication 800-38A 2001 Edition
|
||||
# Recommendation for Block Edition Cipher Modes of Operation
|
||||
|
||||
# as below, but corrupt the key to check the test catches it
|
||||
AES-CTR NIST 128 bad
|
||||
aes_ctr:"00000000000000000000000000000000":"f0f1f2f3f4f5f6f7f8f9fafbfcfdfeff":"6bc1bee22e409f96e93d7e117393172aae2d8a571e03ac9c9eb76fac45af8e5130c81c46a35ce411e5fbc1191a0a52eff69f2445df4f9b17ad2b417be66c3710":"874d6191b620e3261bef6864990db6ce9806f66b7970fdff8617187bb9fffdff5ae4df3edbd5d35e5b4f09020db03eab1e031dda2fbe03d1792170a0f3009cee":1
|
||||
|
||||
AES-CTR NIST 128
|
||||
aes_ctr:"2b7e151628aed2a6abf7158809cf4f3c":"f0f1f2f3f4f5f6f7f8f9fafbfcfdfeff":"6bc1bee22e409f96e93d7e117393172aae2d8a571e03ac9c9eb76fac45af8e5130c81c46a35ce411e5fbc1191a0a52eff69f2445df4f9b17ad2b417be66c3710":"874d6191b620e3261bef6864990db6ce9806f66b7970fdff8617187bb9fffdff5ae4df3edbd5d35e5b4f09020db03eab1e031dda2fbe03d1792170a0f3009cee":0
|
||||
|
||||
AES-CTR NIST 192
|
||||
depends_on:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
aes_ctr:"8e73b0f7da0e6452c810f32b809079e562f8ead2522c6b7b":"f0f1f2f3f4f5f6f7f8f9fafbfcfdfeff":"6bc1bee22e409f96e93d7e117393172aae2d8a571e03ac9c9eb76fac45af8e5130c81c46a35ce411e5fbc1191a0a52eff69f2445df4f9b17ad2b417be66c3710":"1abc932417521ca24f2b0459fe7e6e0b090339ec0aa6faefd5ccc2c6f4ce8e941e36b26bd1ebc670d1bd1d665620abf74f78a7f6d29809585a97daec58c6b050":0
|
||||
|
||||
AES-CTR NIST 256
|
||||
depends_on:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
aes_ctr:"603deb1015ca71be2b73aef0857d77811f352c073b6108d72d9810a30914dff4":"f0f1f2f3f4f5f6f7f8f9fafbfcfdfeff":"6bc1bee22e409f96e93d7e117393172aae2d8a571e03ac9c9eb76fac45af8e5130c81c46a35ce411e5fbc1191a0a52eff69f2445df4f9b17ad2b417be66c3710":"601ec313775789a5b7a7f504bbf3d228f443e3ca4d62b59aca84e990cacaf5c52b0930daa23de94ce87017ba2d84988ddfc9c58db67aada613c2dd08457941a6":0
|
||||
|
||||
AES-CTR aes_encrypt_ctr_multipart 1 1
|
||||
aes_encrypt_ctr_multipart:1:1
|
||||
|
||||
AES-CTR aes_encrypt_ctr_multipart 2 1
|
||||
aes_encrypt_ctr_multipart:2:1
|
||||
|
||||
AES-CTR aes_encrypt_ctr_multipart 2 2
|
||||
aes_encrypt_ctr_multipart:2:2
|
||||
|
||||
AES-CTR aes_encrypt_ctr_multipart 4 1
|
||||
aes_encrypt_ctr_multipart:4:1
|
||||
|
||||
AES-CTR aes_encrypt_ctr_multipart 4 2
|
||||
aes_encrypt_ctr_multipart:4:2
|
||||
|
||||
AES-CTR aes_encrypt_ctr_multipart 15 1
|
||||
aes_encrypt_ctr_multipart:15:1
|
||||
|
||||
AES-CTR aes_encrypt_ctr_multipart 15 2
|
||||
aes_encrypt_ctr_multipart:15:2
|
||||
|
||||
AES-CTR aes_encrypt_ctr_multipart 15 8
|
||||
aes_encrypt_ctr_multipart:15:8
|
||||
|
||||
AES-CTR aes_encrypt_ctr_multipart 15 15
|
||||
aes_encrypt_ctr_multipart:15:15
|
||||
|
||||
AES-CTR aes_encrypt_ctr_multipart 16 1
|
||||
aes_encrypt_ctr_multipart:16:1
|
||||
|
||||
AES-CTR aes_encrypt_ctr_multipart 16 2
|
||||
aes_encrypt_ctr_multipart:16:2
|
||||
|
||||
AES-CTR aes_encrypt_ctr_multipart 16 8
|
||||
aes_encrypt_ctr_multipart:16:8
|
||||
|
||||
AES-CTR aes_encrypt_ctr_multipart 16 15
|
||||
aes_encrypt_ctr_multipart:16:15
|
||||
|
||||
AES-CTR aes_encrypt_ctr_multipart 16 16
|
||||
aes_encrypt_ctr_multipart:16:16
|
||||
|
||||
AES-CTR aes_encrypt_ctr_multipart 17 1
|
||||
aes_encrypt_ctr_multipart:17:1
|
||||
|
||||
AES-CTR aes_encrypt_ctr_multipart 17 2
|
||||
aes_encrypt_ctr_multipart:17:2
|
||||
|
||||
AES-CTR aes_encrypt_ctr_multipart 17 8
|
||||
aes_encrypt_ctr_multipart:17:8
|
||||
|
||||
AES-CTR aes_encrypt_ctr_multipart 17 15
|
||||
aes_encrypt_ctr_multipart:17:15
|
||||
|
||||
AES-CTR aes_encrypt_ctr_multipart 17 16
|
||||
aes_encrypt_ctr_multipart:17:16
|
||||
|
||||
AES-CTR aes_encrypt_ctr_multipart 63 1
|
||||
aes_encrypt_ctr_multipart:63:1
|
||||
|
||||
AES-CTR aes_encrypt_ctr_multipart 63 2
|
||||
aes_encrypt_ctr_multipart:63:2
|
||||
|
||||
AES-CTR aes_encrypt_ctr_multipart 63 8
|
||||
aes_encrypt_ctr_multipart:63:8
|
||||
|
||||
AES-CTR aes_encrypt_ctr_multipart 63 15
|
||||
aes_encrypt_ctr_multipart:63:15
|
||||
|
||||
AES-CTR aes_encrypt_ctr_multipart 63 16
|
||||
aes_encrypt_ctr_multipart:63:16
|
||||
|
||||
AES-CTR aes_encrypt_ctr_multipart 63 17
|
||||
aes_encrypt_ctr_multipart:63:17
|
||||
|
||||
AES-CTR aes_encrypt_ctr_multipart 64 1
|
||||
aes_encrypt_ctr_multipart:64:1
|
||||
|
||||
AES-CTR aes_encrypt_ctr_multipart 64 2
|
||||
aes_encrypt_ctr_multipart:64:2
|
||||
|
||||
AES-CTR aes_encrypt_ctr_multipart 64 8
|
||||
aes_encrypt_ctr_multipart:64:8
|
||||
|
||||
AES-CTR aes_encrypt_ctr_multipart 64 15
|
||||
aes_encrypt_ctr_multipart:64:15
|
||||
|
||||
AES-CTR aes_encrypt_ctr_multipart 64 16
|
||||
aes_encrypt_ctr_multipart:64:16
|
||||
|
||||
AES-CTR aes_encrypt_ctr_multipart 64 17
|
||||
aes_encrypt_ctr_multipart:64:17
|
||||
|
||||
AES-CTR aes_encrypt_ctr_multipart 1024 1
|
||||
aes_encrypt_ctr_multipart:1024:1
|
||||
|
||||
AES-CTR aes_encrypt_ctr_multipart 1024 10
|
||||
aes_encrypt_ctr_multipart:1024:10
|
||||
|
||||
AES-CTR aes_encrypt_ctr_multipart 1024 15
|
||||
aes_encrypt_ctr_multipart:1024:15
|
||||
|
||||
AES-CTR aes_encrypt_ctr_multipart 1024 16
|
||||
aes_encrypt_ctr_multipart:1024:16
|
||||
|
||||
AES-CTR aes_encrypt_ctr_multipart 1024 63
|
||||
aes_encrypt_ctr_multipart:1024:63
|
||||
|
||||
AES-CTR aes_encrypt_ctr_multipart 1024 64
|
||||
aes_encrypt_ctr_multipart:1024:64
|
||||
|
||||
AES-CTR aes_encrypt_ctr_multipart 1024 65
|
||||
aes_encrypt_ctr_multipart:1024:65
|
||||
|
||||
AES-CTR aes_encrypt_ctr_multipart 1024 1023
|
||||
aes_encrypt_ctr_multipart:1024:1023
|
||||
|
||||
AES-CTR aes_encrypt_ctr_multipart 1024 1024
|
||||
aes_encrypt_ctr_multipart:1024:1024
|
||||
289
vendor/mbedtls/tests/suites/test_suite_aes.ecb.data
vendored
Normal file
289
vendor/mbedtls/tests/suites/test_suite_aes.ecb.data
vendored
Normal file
@@ -0,0 +1,289 @@
|
||||
AES-128-ECB Encrypt NIST KAT #1
|
||||
aes_encrypt_ecb:"00000000000000000000000000000000":"f34481ec3cc627bacd5dc3fb08f273e6":"0336763e966d92595a567cc9ce537f5e":0
|
||||
|
||||
AES-128-ECB Encrypt NIST KAT #2
|
||||
aes_encrypt_ecb:"00000000000000000000000000000000":"9798c4640bad75c7c3227db910174e72":"a9a1631bf4996954ebc093957b234589":0
|
||||
|
||||
AES-128-ECB Encrypt NIST KAT #3
|
||||
aes_encrypt_ecb:"00000000000000000000000000000000":"96ab5c2ff612d9dfaae8c31f30c42168":"ff4f8391a6a40ca5b25d23bedd44a597":0
|
||||
|
||||
AES-128-ECB Encrypt NIST KAT #4
|
||||
aes_encrypt_ecb:"e0000000000000000000000000000000":"00000000000000000000000000000000":"72a1da770f5d7ac4c9ef94d822affd97":0
|
||||
|
||||
AES-128-ECB Encrypt NIST KAT #5
|
||||
aes_encrypt_ecb:"f0000000000000000000000000000000":"00000000000000000000000000000000":"970014d634e2b7650777e8e84d03ccd8":0
|
||||
|
||||
AES-128-ECB Encrypt NIST KAT #6
|
||||
aes_encrypt_ecb:"f8000000000000000000000000000000":"00000000000000000000000000000000":"f17e79aed0db7e279e955b5f493875a7":0
|
||||
|
||||
AES-128-ECB Encrypt NIST KAT #7
|
||||
aes_encrypt_ecb:"fffffffffffff0000000000000000000":"00000000000000000000000000000000":"7b90785125505fad59b13c186dd66ce3":0
|
||||
|
||||
AES-128-ECB Encrypt NIST KAT #8
|
||||
aes_encrypt_ecb:"fffffffffffff8000000000000000000":"00000000000000000000000000000000":"8b527a6aebdaec9eaef8eda2cb7783e5":0
|
||||
|
||||
AES-128-ECB Encrypt NIST KAT #9
|
||||
aes_encrypt_ecb:"fffffffffffffc000000000000000000":"00000000000000000000000000000000":"43fdaf53ebbc9880c228617d6a9b548b":0
|
||||
|
||||
AES-128-ECB Encrypt NIST KAT #10
|
||||
aes_encrypt_ecb:"ffffffffffffffffffffffffffffc000":"00000000000000000000000000000000":"70c46bb30692be657f7eaa93ebad9897":0
|
||||
|
||||
AES-128-ECB Encrypt NIST KAT #11
|
||||
aes_encrypt_ecb:"ffffffffffffffffffffffffffffe000":"00000000000000000000000000000000":"323994cfb9da285a5d9642e1759b224a":0
|
||||
|
||||
AES-128-ECB Encrypt NIST KAT #12
|
||||
aes_encrypt_ecb:"fffffffffffffffffffffffffffff000":"00000000000000000000000000000000":"1dbf57877b7b17385c85d0b54851e371":0
|
||||
|
||||
AES-128-ECB Encrypt NIST KAT #13
|
||||
aes_encrypt_ecb:"00000000000000000000000000000000":"ffffffffffffffc00000000000000000":"3a4d354f02bb5a5e47d39666867f246a":0
|
||||
|
||||
AES-128-ECB Encrypt NIST KAT #14
|
||||
aes_encrypt_ecb:"00000000000000000000000000000000":"ffffffffffffffe00000000000000000":"d451b8d6e1e1a0ebb155fbbf6e7b7dc3":0
|
||||
|
||||
AES-128-ECB Encrypt NIST KAT #15
|
||||
aes_encrypt_ecb:"00000000000000000000000000000000":"fffffffffffffff00000000000000000":"6898d4f42fa7ba6a10ac05e87b9f2080":0
|
||||
|
||||
AES-128-ECB Encrypt NIST KAT #16
|
||||
aes_encrypt_ecb:"00000000000000000000000000000000":"ffffffffffffffffffffffffe0000000":"082eb8be35f442fb52668e16a591d1d6":0
|
||||
|
||||
AES-128-ECB Encrypt NIST KAT #17
|
||||
aes_encrypt_ecb:"00000000000000000000000000000000":"fffffffffffffffffffffffff0000000":"e656f9ecf5fe27ec3e4a73d00c282fb3":0
|
||||
|
||||
AES-128-ECB Encrypt NIST KAT #18
|
||||
aes_encrypt_ecb:"00000000000000000000000000000000":"fffffffffffffffffffffffff8000000":"2ca8209d63274cd9a29bb74bcd77683a":0
|
||||
|
||||
AES-128-ECB Decrypt NIST KAT #1
|
||||
aes_decrypt_ecb:"00000000000000000000000000000000":"db4f1aa530967d6732ce4715eb0ee24b":"ff000000000000000000000000000000":0
|
||||
|
||||
AES-128-ECB Decrypt NIST KAT #2
|
||||
aes_decrypt_ecb:"00000000000000000000000000000000":"a81738252621dd180a34f3455b4baa2f":"ff800000000000000000000000000000":0
|
||||
|
||||
AES-128-ECB Decrypt NIST KAT #3
|
||||
aes_decrypt_ecb:"00000000000000000000000000000000":"77e2b508db7fd89234caf7939ee5621a":"ffc00000000000000000000000000000":0
|
||||
|
||||
AES-128-ECB Decrypt NIST KAT #4
|
||||
aes_decrypt_ecb:"00000000000000000000000000000000":"dc43be40be0e53712f7e2bf5ca707209":"6a118a874519e64e9963798a503f1d35":0
|
||||
|
||||
AES-128-ECB Decrypt NIST KAT #5
|
||||
aes_decrypt_ecb:"00000000000000000000000000000000":"92beedab1895a94faa69b632e5cc47ce":"cb9fceec81286ca3e989bd979b0cb284":0
|
||||
|
||||
AES-128-ECB Decrypt NIST KAT #6
|
||||
aes_decrypt_ecb:"00000000000000000000000000000000":"459264f4798f6a78bacb89c15ed3d601":"b26aeb1874e47ca8358ff22378f09144":0
|
||||
|
||||
AES-128-ECB Decrypt NIST KAT #7
|
||||
aes_decrypt_ecb:"b69418a85332240dc82492353956ae0c":"a303d940ded8f0baff6f75414cac5243":"00000000000000000000000000000000":0
|
||||
|
||||
AES-128-ECB Decrypt NIST KAT #8
|
||||
aes_decrypt_ecb:"71b5c08a1993e1362e4d0ce9b22b78d5":"c2dabd117f8a3ecabfbb11d12194d9d0":"00000000000000000000000000000000":0
|
||||
|
||||
AES-128-ECB Decrypt NIST KAT #9
|
||||
aes_decrypt_ecb:"e234cdca2606b81f29408d5f6da21206":"fff60a4740086b3b9c56195b98d91a7b":"00000000000000000000000000000000":0
|
||||
|
||||
AES-128-ECB Decrypt NIST KAT #10
|
||||
aes_decrypt_ecb:"ffffffffffffffff0000000000000000":"84be19e053635f09f2665e7bae85b42d":"00000000000000000000000000000000":0
|
||||
|
||||
AES-128-ECB Decrypt NIST KAT #11
|
||||
aes_decrypt_ecb:"ffffffffffffffff8000000000000000":"32cd652842926aea4aa6137bb2be2b5e":"00000000000000000000000000000000":0
|
||||
|
||||
AES-192-ECB Encrypt NIST KAT #1
|
||||
depends_on:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
aes_encrypt_ecb:"000000000000000000000000000000000000000000000000":"fffffffffffffffffffff80000000000":"156f07767a85a4312321f63968338a01":0
|
||||
|
||||
AES-192-ECB Encrypt NIST KAT #2
|
||||
depends_on:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
aes_encrypt_ecb:"000000000000000000000000000000000000000000000000":"fffffffffffffffffffffc0000000000":"15eec9ebf42b9ca76897d2cd6c5a12e2":0
|
||||
|
||||
AES-192-ECB Encrypt NIST KAT #3
|
||||
depends_on:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
aes_encrypt_ecb:"000000000000000000000000000000000000000000000000":"fffffffffffffffffffffe0000000000":"db0d3a6fdcc13f915e2b302ceeb70fd8":0
|
||||
|
||||
AES-192-ECB Encrypt NIST KAT #4
|
||||
depends_on:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
aes_encrypt_ecb:"000000000000000000000000000000000000000000000000":"51719783d3185a535bd75adc65071ce1":"4f354592ff7c8847d2d0870ca9481b7c":0
|
||||
|
||||
AES-192-ECB Encrypt NIST KAT #5
|
||||
depends_on:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
aes_encrypt_ecb:"000000000000000000000000000000000000000000000000":"26aa49dcfe7629a8901a69a9914e6dfd":"d5e08bf9a182e857cf40b3a36ee248cc":0
|
||||
|
||||
AES-192-ECB Encrypt NIST KAT #6
|
||||
depends_on:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
aes_encrypt_ecb:"000000000000000000000000000000000000000000000000":"941a4773058224e1ef66d10e0a6ee782":"067cd9d3749207791841562507fa9626":0
|
||||
|
||||
AES-192-ECB Encrypt NIST KAT #7
|
||||
depends_on:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
aes_encrypt_ecb:"d2926527e0aa9f37b45e2ec2ade5853ef807576104c7ace3":"00000000000000000000000000000000":"dd619e1cf204446112e0af2b9afa8f8c":0
|
||||
|
||||
AES-192-ECB Encrypt NIST KAT #8
|
||||
depends_on:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
aes_encrypt_ecb:"982215f4e173dfa0fcffe5d3da41c4812c7bcc8ed3540f93":"00000000000000000000000000000000":"d4f0aae13c8fe9339fbf9e69ed0ad74d":0
|
||||
|
||||
AES-192-ECB Encrypt NIST KAT #9
|
||||
depends_on:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
aes_encrypt_ecb:"98c6b8e01e379fbd14e61af6af891596583565f2a27d59e9":"00000000000000000000000000000000":"19c80ec4a6deb7e5ed1033dda933498f":0
|
||||
|
||||
AES-192-ECB Encrypt NIST KAT #10
|
||||
depends_on:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
aes_encrypt_ecb:"fffffffffffffffffffffffffff800000000000000000000":"00000000000000000000000000000000":"8dd274bd0f1b58ae345d9e7233f9b8f3":0
|
||||
|
||||
AES-192-ECB Encrypt NIST KAT #11
|
||||
depends_on:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
aes_encrypt_ecb:"fffffffffffffffffffffffffffc00000000000000000000":"00000000000000000000000000000000":"9d6bdc8f4ce5feb0f3bed2e4b9a9bb0b":0
|
||||
|
||||
AES-192-ECB Encrypt NIST KAT #12
|
||||
depends_on:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
aes_encrypt_ecb:"fffffffffffffffffffffffffffe00000000000000000000":"00000000000000000000000000000000":"fd5548bcf3f42565f7efa94562528d46":0
|
||||
|
||||
AES-192-ECB Decrypt NIST KAT #1
|
||||
depends_on:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
aes_decrypt_ecb:"fffffffffffffffffffffffffffffffff000000000000000":"bb2852c891c5947d2ed44032c421b85f":"00000000000000000000000000000000":0
|
||||
|
||||
AES-192-ECB Decrypt NIST KAT #2
|
||||
depends_on:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
aes_decrypt_ecb:"fffffffffffffffffffffffffffffffff800000000000000":"1b9f5fbd5e8a4264c0a85b80409afa5e":"00000000000000000000000000000000":0
|
||||
|
||||
AES-192-ECB Decrypt NIST KAT #3
|
||||
depends_on:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
aes_decrypt_ecb:"fffffffffffffffffffffffffffffffffc00000000000000":"30dab809f85a917fe924733f424ac589":"00000000000000000000000000000000":0
|
||||
|
||||
AES-192-ECB Decrypt NIST KAT #4
|
||||
depends_on:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
aes_decrypt_ecb:"61257134a518a0d57d9d244d45f6498cbc32f2bafc522d79":"cfe4d74002696ccf7d87b14a2f9cafc9":"00000000000000000000000000000000":0
|
||||
|
||||
AES-192-ECB Decrypt NIST KAT #5
|
||||
depends_on:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
aes_decrypt_ecb:"b0ab0a6a818baef2d11fa33eac947284fb7d748cfb75e570":"d2eafd86f63b109b91f5dbb3a3fb7e13":"00000000000000000000000000000000":0
|
||||
|
||||
AES-192-ECB Decrypt NIST KAT #6
|
||||
depends_on:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
aes_decrypt_ecb:"ee053aa011c8b428cdcc3636313c54d6a03cac01c71579d6":"9b9fdd1c5975655f539998b306a324af":"00000000000000000000000000000000":0
|
||||
|
||||
AES-192-ECB Decrypt NIST KAT #7
|
||||
depends_on:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
aes_decrypt_ecb:"000000000000000000000000000000000000000000000000":"275cfc0413d8ccb70513c3859b1d0f72":"1b077a6af4b7f98229de786d7516b639":0
|
||||
|
||||
AES-192-ECB Decrypt NIST KAT #8
|
||||
depends_on:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
aes_decrypt_ecb:"000000000000000000000000000000000000000000000000":"c9b8135ff1b5adc413dfd053b21bd96d":"9c2d8842e5f48f57648205d39a239af1":0
|
||||
|
||||
AES-192-ECB Decrypt NIST KAT #9
|
||||
depends_on:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
aes_decrypt_ecb:"000000000000000000000000000000000000000000000000":"4a3650c3371ce2eb35e389a171427440":"bff52510095f518ecca60af4205444bb":0
|
||||
|
||||
AES-192-ECB Decrypt NIST KAT #10
|
||||
depends_on:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
aes_decrypt_ecb:"000000000000000000000000000000000000000000000000":"b2099795e88cc158fd75ea133d7e7fbe":"ffffffffffffffffffffc00000000000":0
|
||||
|
||||
AES-192-ECB Decrypt NIST KAT #11
|
||||
depends_on:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
aes_decrypt_ecb:"000000000000000000000000000000000000000000000000":"a6cae46fb6fadfe7a2c302a34242817b":"ffffffffffffffffffffe00000000000":0
|
||||
|
||||
AES-192-ECB Decrypt NIST KAT #12
|
||||
depends_on:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
aes_decrypt_ecb:"000000000000000000000000000000000000000000000000":"026a7024d6a902e0b3ffccbaa910cc3f":"fffffffffffffffffffff00000000000":0
|
||||
|
||||
AES-256-ECB Encrypt NIST KAT #1
|
||||
depends_on:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
aes_encrypt_ecb:"c1cc358b449909a19436cfbb3f852ef8bcb5ed12ac7058325f56e6099aab1a1c":"00000000000000000000000000000000":"352065272169abf9856843927d0674fd":0
|
||||
|
||||
AES-256-ECB Encrypt NIST KAT #2
|
||||
depends_on:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
aes_encrypt_ecb:"984ca75f4ee8d706f46c2d98c0bf4a45f5b00d791c2dfeb191b5ed8e420fd627":"00000000000000000000000000000000":"4307456a9e67813b452e15fa8fffe398":0
|
||||
|
||||
AES-256-ECB Encrypt NIST KAT #3
|
||||
depends_on:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
aes_encrypt_ecb:"b43d08a447ac8609baadae4ff12918b9f68fc1653f1269222f123981ded7a92f":"00000000000000000000000000000000":"4663446607354989477a5c6f0f007ef4":0
|
||||
|
||||
AES-256-ECB Encrypt NIST KAT #4
|
||||
depends_on:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
aes_encrypt_ecb:"0000000000000000000000000000000000000000000000000000000000000000":"0b24af36193ce4665f2825d7b4749c98":"a9ff75bd7cf6613d3731c77c3b6d0c04":0
|
||||
|
||||
AES-256-ECB Encrypt NIST KAT #5
|
||||
depends_on:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
aes_encrypt_ecb:"0000000000000000000000000000000000000000000000000000000000000000":"761c1fe41a18acf20d241650611d90f1":"623a52fcea5d443e48d9181ab32c7421":0
|
||||
|
||||
AES-256-ECB Encrypt NIST KAT #6
|
||||
depends_on:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
aes_encrypt_ecb:"0000000000000000000000000000000000000000000000000000000000000000":"8a560769d605868ad80d819bdba03771":"38f2c7ae10612415d27ca190d27da8b4":0
|
||||
|
||||
AES-256-ECB Encrypt NIST KAT #7
|
||||
depends_on:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
aes_encrypt_ecb:"0000000000000000000000000000000000000000000000000000000000000000":"ffffff80000000000000000000000000":"36aff0ef7bf3280772cf4cac80a0d2b2":0
|
||||
|
||||
AES-256-ECB Encrypt NIST KAT #8
|
||||
depends_on:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
aes_encrypt_ecb:"0000000000000000000000000000000000000000000000000000000000000000":"ffffffc0000000000000000000000000":"1f8eedea0f62a1406d58cfc3ecea72cf":0
|
||||
|
||||
AES-256-ECB Encrypt NIST KAT #9
|
||||
depends_on:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
aes_encrypt_ecb:"0000000000000000000000000000000000000000000000000000000000000000":"ffffffe0000000000000000000000000":"abf4154a3375a1d3e6b1d454438f95a6":0
|
||||
|
||||
AES-256-ECB Encrypt NIST KAT #10
|
||||
depends_on:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
aes_encrypt_ecb:"ffffffffffffffffffffffffffffffffffff8000000000000000000000000000":"00000000000000000000000000000000":"45d089c36d5c5a4efc689e3b0de10dd5":0
|
||||
|
||||
AES-256-ECB Encrypt NIST KAT #11
|
||||
depends_on:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
aes_encrypt_ecb:"ffffffffffffffffffffffffffffffffffffc000000000000000000000000000":"00000000000000000000000000000000":"b4da5df4becb5462e03a0ed00d295629":0
|
||||
|
||||
AES-256-ECB Encrypt NIST KAT #12
|
||||
depends_on:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
aes_encrypt_ecb:"ffffffffffffffffffffffffffffffffffffe000000000000000000000000000":"00000000000000000000000000000000":"dcf4e129136c1a4b7a0f38935cc34b2b":0
|
||||
|
||||
AES-256-ECB Decrypt NIST KAT #1
|
||||
depends_on:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
aes_decrypt_ecb:"fffffffffffffffffffffffffffffffffffffffffffffff00000000000000000":"edf61ae362e882ddc0167474a7a77f3a":"00000000000000000000000000000000":0
|
||||
|
||||
AES-256-ECB Decrypt NIST KAT #2
|
||||
depends_on:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
aes_decrypt_ecb:"fffffffffffffffffffffffffffffffffffffffffffffff80000000000000000":"6168b00ba7859e0970ecfd757efecf7c":"00000000000000000000000000000000":0
|
||||
|
||||
AES-256-ECB Decrypt NIST KAT #3
|
||||
depends_on:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
aes_decrypt_ecb:"fffffffffffffffffffffffffffffffffffffffffffffffc0000000000000000":"d1415447866230d28bb1ea18a4cdfd02":"00000000000000000000000000000000":0
|
||||
|
||||
AES-256-ECB Decrypt NIST KAT #4
|
||||
depends_on:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
aes_decrypt_ecb:"f8be9ba615c5a952cabbca24f68f8593039624d524c816acda2c9183bd917cb9":"a3944b95ca0b52043584ef02151926a8":"00000000000000000000000000000000":0
|
||||
|
||||
AES-256-ECB Decrypt NIST KAT #5
|
||||
depends_on:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
aes_decrypt_ecb:"797f8b3d176dac5b7e34a2d539c4ef367a16f8635f6264737591c5c07bf57a3e":"a74289fe73a4c123ca189ea1e1b49ad5":"00000000000000000000000000000000":0
|
||||
|
||||
AES-256-ECB Decrypt NIST KAT #6
|
||||
depends_on:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
aes_decrypt_ecb:"6838d40caf927749c13f0329d331f448e202c73ef52c5f73a37ca635d4c47707":"b91d4ea4488644b56cf0812fa7fcf5fc":"00000000000000000000000000000000":0
|
||||
|
||||
AES-256-ECB Decrypt NIST KAT #7
|
||||
depends_on:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
aes_decrypt_ecb:"0000000000000000000000000000000000000000000000000000000000000000":"623a52fcea5d443e48d9181ab32c7421":"761c1fe41a18acf20d241650611d90f1":0
|
||||
|
||||
AES-256-ECB Decrypt NIST KAT #8
|
||||
depends_on:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
aes_decrypt_ecb:"0000000000000000000000000000000000000000000000000000000000000000":"38f2c7ae10612415d27ca190d27da8b4":"8a560769d605868ad80d819bdba03771":0
|
||||
|
||||
AES-256-ECB Decrypt NIST KAT #9
|
||||
depends_on:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
aes_decrypt_ecb:"0000000000000000000000000000000000000000000000000000000000000000":"1bc704f1bce135ceb810341b216d7abe":"91fbef2d15a97816060bee1feaa49afe":0
|
||||
|
||||
AES-256-ECB Decrypt NIST KAT #10
|
||||
depends_on:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
aes_decrypt_ecb:"0000000000000000000000000000000000000000000000000000000000000000":"ddc6bf790c15760d8d9aeb6f9a75fd4e":"80000000000000000000000000000000":0
|
||||
|
||||
AES-256-ECB Decrypt NIST KAT #11
|
||||
depends_on:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
aes_decrypt_ecb:"0000000000000000000000000000000000000000000000000000000000000000":"0a6bdc6d4c1e6280301fd8e97ddbe601":"c0000000000000000000000000000000":0
|
||||
|
||||
AES-256-ECB Decrypt NIST KAT #12
|
||||
depends_on:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
aes_decrypt_ecb:"0000000000000000000000000000000000000000000000000000000000000000":"9b80eefb7ebe2d2b16247aa0efc72f5d":"e0000000000000000000000000000000":0
|
||||
|
||||
AES-128-ECB Copy context
|
||||
aes_ecb_copy_context:"000102030405060708090a0b0c0d0e0f"
|
||||
|
||||
AES-192-ECB Copy context
|
||||
depends_on:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
aes_ecb_copy_context:"000102030405060708090a0b0c0d0e0f1011121314151617"
|
||||
|
||||
AES-256-ECB Copy context
|
||||
depends_on:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
aes_ecb_copy_context:"000102030405060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e1f"
|
||||
738
vendor/mbedtls/tests/suites/test_suite_aes.function
vendored
Normal file
738
vendor/mbedtls/tests/suites/test_suite_aes.function
vendored
Normal file
@@ -0,0 +1,738 @@
|
||||
/* BEGIN_HEADER */
|
||||
#include "mbedtls/aes.h"
|
||||
|
||||
/* Test AES with a copied context.
|
||||
*
|
||||
* master, enc and dec must be AES context objects. They don't need to
|
||||
* be initialized, and are left freed.
|
||||
*/
|
||||
#if !defined(MBEDTLS_BLOCK_CIPHER_NO_DECRYPT)
|
||||
static int test_copy(const data_t *key,
|
||||
mbedtls_aes_context *master,
|
||||
mbedtls_aes_context *enc,
|
||||
mbedtls_aes_context *dec)
|
||||
{
|
||||
unsigned char plaintext[16] = {
|
||||
0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07,
|
||||
0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f,
|
||||
};
|
||||
unsigned char ciphertext[16];
|
||||
unsigned char output[16];
|
||||
|
||||
// Set key and encrypt with original context
|
||||
mbedtls_aes_init(master);
|
||||
TEST_ASSERT(mbedtls_aes_setkey_enc(master, key->x,
|
||||
key->len * 8) == 0);
|
||||
TEST_ASSERT(mbedtls_aes_crypt_ecb(master, MBEDTLS_AES_ENCRYPT,
|
||||
plaintext, ciphertext) == 0);
|
||||
*enc = *master;
|
||||
|
||||
// Set key for decryption with original context
|
||||
mbedtls_aes_init(master);
|
||||
TEST_ASSERT(mbedtls_aes_setkey_dec(master, key->x,
|
||||
key->len * 8) == 0);
|
||||
*dec = *master;
|
||||
|
||||
// Wipe the original context to make sure nothing from it is used
|
||||
memset(master, 0, sizeof(*master));
|
||||
|
||||
// Encrypt with copied context
|
||||
TEST_ASSERT(mbedtls_aes_crypt_ecb(enc, MBEDTLS_AES_ENCRYPT,
|
||||
plaintext, output) == 0);
|
||||
TEST_MEMORY_COMPARE(ciphertext, 16, output, 16);
|
||||
mbedtls_aes_free(enc);
|
||||
|
||||
// Decrypt with copied context
|
||||
TEST_ASSERT(mbedtls_aes_crypt_ecb(dec, MBEDTLS_AES_DECRYPT,
|
||||
ciphertext, output) == 0);
|
||||
TEST_MEMORY_COMPARE(plaintext, 16, output, 16);
|
||||
mbedtls_aes_free(dec);
|
||||
|
||||
return 1;
|
||||
|
||||
exit:
|
||||
/* Bug: we may be leaving something unfreed. This is harmless
|
||||
* in our built-in implementations, but might cause a memory leak
|
||||
* with alternative implementations. */
|
||||
return 0;
|
||||
}
|
||||
#endif
|
||||
|
||||
/* END_HEADER */
|
||||
|
||||
/* BEGIN_DEPENDENCIES
|
||||
* depends_on:MBEDTLS_AES_C
|
||||
* END_DEPENDENCIES
|
||||
*/
|
||||
|
||||
/* BEGIN_CASE */
|
||||
void aes_encrypt_ecb(data_t *key_str, data_t *src_str,
|
||||
data_t *dst, int setkey_result)
|
||||
{
|
||||
unsigned char output[100];
|
||||
mbedtls_aes_context ctx;
|
||||
|
||||
memset(output, 0x00, 100);
|
||||
|
||||
mbedtls_aes_init(&ctx);
|
||||
|
||||
TEST_ASSERT(mbedtls_aes_setkey_enc(&ctx, key_str->x, key_str->len * 8) == setkey_result);
|
||||
if (setkey_result == 0) {
|
||||
TEST_ASSERT(mbedtls_aes_crypt_ecb(&ctx, MBEDTLS_AES_ENCRYPT, src_str->x, output) == 0);
|
||||
|
||||
TEST_ASSERT(mbedtls_test_hexcmp(output, dst->x, 16, dst->len) == 0);
|
||||
}
|
||||
|
||||
exit:
|
||||
mbedtls_aes_free(&ctx);
|
||||
}
|
||||
/* END_CASE */
|
||||
|
||||
/* BEGIN_CASE depends_on:MBEDTLS_CIPHER_MODE_CTR */
|
||||
void aes_ctr(data_t *key, data_t *ictr, data_t *pt, data_t *ct, int expected)
|
||||
{
|
||||
unsigned char *output = NULL;
|
||||
unsigned char ctr[16];
|
||||
unsigned char stream_block[16];
|
||||
mbedtls_aes_context ctx;
|
||||
|
||||
// sanity checks on test input
|
||||
TEST_ASSERT(pt->len == ct->len);
|
||||
TEST_ASSERT(key->len == 16 || key->len == 24 || key->len == 32);
|
||||
|
||||
TEST_CALLOC(output, pt->len);
|
||||
|
||||
// expected result is always success on zero-length input, so skip len == 0 if expecting failure
|
||||
for (size_t len = (expected == 0 ? 0 : 1); len <= pt->len; len++) {
|
||||
for (int i = 0; i < 2; i++) {
|
||||
mbedtls_aes_init(&ctx);
|
||||
TEST_ASSERT(mbedtls_aes_setkey_enc(&ctx, key->x, key->len * 8) == 0);
|
||||
|
||||
memcpy(ctr, ictr->x, 16);
|
||||
memset(stream_block, 0, 16);
|
||||
memset(output, 0, pt->len);
|
||||
|
||||
size_t nc_off = 0;
|
||||
|
||||
if (i == 0) {
|
||||
// encrypt
|
||||
TEST_EQUAL(mbedtls_aes_crypt_ctr(&ctx, len, &nc_off, ctr,
|
||||
stream_block, pt->x, output), 0);
|
||||
TEST_ASSERT(!!memcmp(output, ct->x, len) == expected);
|
||||
} else {
|
||||
// decrypt
|
||||
TEST_EQUAL(mbedtls_aes_crypt_ctr(&ctx, len, &nc_off, ctr,
|
||||
stream_block, ct->x, output), 0);
|
||||
TEST_ASSERT(!!memcmp(output, pt->x, len) == expected);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
exit:
|
||||
mbedtls_free(output);
|
||||
mbedtls_aes_free(&ctx);
|
||||
}
|
||||
/* END_CASE */
|
||||
|
||||
/* BEGIN_CASE depends_on:MBEDTLS_CIPHER_MODE_CTR */
|
||||
void aes_encrypt_ctr_multipart(int length, int step_size)
|
||||
{
|
||||
unsigned char key[16];
|
||||
unsigned char ctr_a[16];
|
||||
unsigned char ctr_b[16];
|
||||
unsigned char stream_block_a[16];
|
||||
unsigned char stream_block_b[16];
|
||||
unsigned char *input = NULL;
|
||||
unsigned char *output_a = NULL;
|
||||
unsigned char *output_b = NULL;
|
||||
mbedtls_aes_context ctx;
|
||||
size_t nc_off_a, nc_off_b;
|
||||
|
||||
TEST_ASSERT(length >= 0);
|
||||
TEST_ASSERT(step_size > 0);
|
||||
|
||||
TEST_CALLOC(input, length);
|
||||
TEST_CALLOC(output_a, length);
|
||||
TEST_CALLOC(output_b, length);
|
||||
|
||||
// set up a random key
|
||||
mbedtls_test_rnd_std_rand(NULL, key, sizeof(key));
|
||||
|
||||
// random input
|
||||
mbedtls_test_rnd_std_rand(NULL, input, length);
|
||||
|
||||
|
||||
// complete encryption in one call
|
||||
mbedtls_aes_init(&ctx);
|
||||
TEST_ASSERT(mbedtls_aes_setkey_enc(&ctx, key, sizeof(key) * 8) == 0);
|
||||
memset(ctr_a, 0, sizeof(ctr_a));
|
||||
memset(stream_block_a, 0, sizeof(stream_block_a));
|
||||
nc_off_a = 0;
|
||||
TEST_EQUAL(mbedtls_aes_crypt_ctr(&ctx, length, &nc_off_a, ctr_a,
|
||||
stream_block_a, input, output_a), 0);
|
||||
mbedtls_aes_free(&ctx);
|
||||
|
||||
|
||||
// encrypt in multiple steps of varying size
|
||||
mbedtls_aes_init(&ctx);
|
||||
TEST_ASSERT(mbedtls_aes_setkey_enc(&ctx, key, sizeof(key) * 8) == 0);
|
||||
memset(ctr_b, 0, sizeof(ctr_b));
|
||||
memset(stream_block_b, 0, sizeof(stream_block_b));
|
||||
nc_off_b = 0;
|
||||
size_t remaining = length;
|
||||
unsigned char *ip = input, *op = output_b;
|
||||
while (remaining != 0) {
|
||||
size_t l = MIN(remaining, (size_t) step_size);
|
||||
step_size *= 2;
|
||||
remaining -= l;
|
||||
TEST_EQUAL(mbedtls_aes_crypt_ctr(&ctx, l, &nc_off_b, ctr_b, stream_block_b, ip, op), 0);
|
||||
ip += l;
|
||||
op += l;
|
||||
}
|
||||
|
||||
// finally, validate that multiple steps produced same result as single-pass
|
||||
TEST_MEMORY_COMPARE(output_a, length, output_b, length);
|
||||
TEST_MEMORY_COMPARE(ctr_a, sizeof(ctr_a), ctr_b, sizeof(ctr_b));
|
||||
TEST_MEMORY_COMPARE(stream_block_a, sizeof(stream_block_a),
|
||||
stream_block_b, sizeof(stream_block_b));
|
||||
TEST_EQUAL(nc_off_a, nc_off_b);
|
||||
|
||||
exit:
|
||||
mbedtls_free(input);
|
||||
mbedtls_free(output_a);
|
||||
mbedtls_free(output_b);
|
||||
|
||||
mbedtls_aes_free(&ctx);
|
||||
}
|
||||
/* END_CASE */
|
||||
|
||||
/* BEGIN_CASE depends_on:!MBEDTLS_BLOCK_CIPHER_NO_DECRYPT */
|
||||
void aes_decrypt_ecb(data_t *key_str, data_t *src_str,
|
||||
data_t *dst, int setkey_result)
|
||||
{
|
||||
unsigned char output[100];
|
||||
mbedtls_aes_context ctx;
|
||||
|
||||
memset(output, 0x00, 100);
|
||||
|
||||
mbedtls_aes_init(&ctx);
|
||||
|
||||
TEST_ASSERT(mbedtls_aes_setkey_dec(&ctx, key_str->x, key_str->len * 8) == setkey_result);
|
||||
if (setkey_result == 0) {
|
||||
TEST_ASSERT(mbedtls_aes_crypt_ecb(&ctx, MBEDTLS_AES_DECRYPT, src_str->x, output) == 0);
|
||||
|
||||
TEST_ASSERT(mbedtls_test_hexcmp(output, dst->x, 16, dst->len) == 0);
|
||||
}
|
||||
|
||||
exit:
|
||||
mbedtls_aes_free(&ctx);
|
||||
}
|
||||
/* END_CASE */
|
||||
|
||||
/* BEGIN_CASE depends_on:MBEDTLS_CIPHER_MODE_CBC */
|
||||
void aes_encrypt_cbc(data_t *key_str, data_t *iv_str,
|
||||
data_t *src_str, data_t *dst,
|
||||
int cbc_result)
|
||||
{
|
||||
unsigned char output[100];
|
||||
mbedtls_aes_context ctx;
|
||||
|
||||
memset(output, 0x00, 100);
|
||||
|
||||
mbedtls_aes_init(&ctx);
|
||||
|
||||
TEST_ASSERT(mbedtls_aes_setkey_enc(&ctx, key_str->x, key_str->len * 8) == 0);
|
||||
TEST_ASSERT(mbedtls_aes_crypt_cbc(&ctx, MBEDTLS_AES_ENCRYPT, src_str->len, iv_str->x,
|
||||
src_str->x, output) == cbc_result);
|
||||
if (cbc_result == 0) {
|
||||
|
||||
TEST_ASSERT(mbedtls_test_hexcmp(output, dst->x,
|
||||
src_str->len, dst->len) == 0);
|
||||
}
|
||||
|
||||
exit:
|
||||
mbedtls_aes_free(&ctx);
|
||||
}
|
||||
/* END_CASE */
|
||||
|
||||
/* BEGIN_CASE depends_on:MBEDTLS_CIPHER_MODE_CBC */
|
||||
void aes_decrypt_cbc(data_t *key_str, data_t *iv_str,
|
||||
data_t *src_str, data_t *dst,
|
||||
int cbc_result)
|
||||
{
|
||||
unsigned char output[100];
|
||||
mbedtls_aes_context ctx;
|
||||
|
||||
memset(output, 0x00, 100);
|
||||
mbedtls_aes_init(&ctx);
|
||||
|
||||
TEST_ASSERT(mbedtls_aes_setkey_dec(&ctx, key_str->x, key_str->len * 8) == 0);
|
||||
TEST_ASSERT(mbedtls_aes_crypt_cbc(&ctx, MBEDTLS_AES_DECRYPT, src_str->len, iv_str->x,
|
||||
src_str->x, output) == cbc_result);
|
||||
if (cbc_result == 0) {
|
||||
|
||||
TEST_ASSERT(mbedtls_test_hexcmp(output, dst->x,
|
||||
src_str->len, dst->len) == 0);
|
||||
}
|
||||
|
||||
exit:
|
||||
mbedtls_aes_free(&ctx);
|
||||
}
|
||||
/* END_CASE */
|
||||
|
||||
/* BEGIN_CASE depends_on:MBEDTLS_CIPHER_MODE_XTS */
|
||||
void aes_encrypt_xts(char *hex_key_string, char *hex_data_unit_string,
|
||||
char *hex_src_string, char *hex_dst_string)
|
||||
{
|
||||
enum { AES_BLOCK_SIZE = 16 };
|
||||
unsigned char *data_unit = NULL;
|
||||
unsigned char *key = NULL;
|
||||
unsigned char *src = NULL;
|
||||
unsigned char *dst = NULL;
|
||||
unsigned char *output = NULL;
|
||||
mbedtls_aes_xts_context ctx;
|
||||
size_t key_len, src_len, dst_len, data_unit_len;
|
||||
|
||||
mbedtls_aes_xts_init(&ctx);
|
||||
|
||||
data_unit = mbedtls_test_unhexify_alloc(hex_data_unit_string,
|
||||
&data_unit_len);
|
||||
TEST_ASSERT(data_unit_len == AES_BLOCK_SIZE);
|
||||
|
||||
key = mbedtls_test_unhexify_alloc(hex_key_string, &key_len);
|
||||
TEST_ASSERT(key_len % 2 == 0);
|
||||
|
||||
src = mbedtls_test_unhexify_alloc(hex_src_string, &src_len);
|
||||
dst = mbedtls_test_unhexify_alloc(hex_dst_string, &dst_len);
|
||||
TEST_ASSERT(src_len == dst_len);
|
||||
|
||||
output = mbedtls_test_zero_alloc(dst_len);
|
||||
|
||||
TEST_ASSERT(mbedtls_aes_xts_setkey_enc(&ctx, key, key_len * 8) == 0);
|
||||
TEST_ASSERT(mbedtls_aes_crypt_xts(&ctx, MBEDTLS_AES_ENCRYPT, src_len,
|
||||
data_unit, src, output) == 0);
|
||||
|
||||
TEST_ASSERT(memcmp(output, dst, dst_len) == 0);
|
||||
|
||||
exit:
|
||||
mbedtls_aes_xts_free(&ctx);
|
||||
mbedtls_free(data_unit);
|
||||
mbedtls_free(key);
|
||||
mbedtls_free(src);
|
||||
mbedtls_free(dst);
|
||||
mbedtls_free(output);
|
||||
}
|
||||
/* END_CASE */
|
||||
|
||||
/* BEGIN_CASE depends_on:MBEDTLS_CIPHER_MODE_XTS */
|
||||
void aes_decrypt_xts(char *hex_key_string, char *hex_data_unit_string,
|
||||
char *hex_dst_string, char *hex_src_string)
|
||||
{
|
||||
enum { AES_BLOCK_SIZE = 16 };
|
||||
unsigned char *data_unit = NULL;
|
||||
unsigned char *key = NULL;
|
||||
unsigned char *src = NULL;
|
||||
unsigned char *dst = NULL;
|
||||
unsigned char *output = NULL;
|
||||
mbedtls_aes_xts_context ctx;
|
||||
size_t key_len, src_len, dst_len, data_unit_len;
|
||||
|
||||
mbedtls_aes_xts_init(&ctx);
|
||||
|
||||
data_unit = mbedtls_test_unhexify_alloc(hex_data_unit_string,
|
||||
&data_unit_len);
|
||||
TEST_ASSERT(data_unit_len == AES_BLOCK_SIZE);
|
||||
|
||||
key = mbedtls_test_unhexify_alloc(hex_key_string, &key_len);
|
||||
TEST_ASSERT(key_len % 2 == 0);
|
||||
|
||||
src = mbedtls_test_unhexify_alloc(hex_src_string, &src_len);
|
||||
dst = mbedtls_test_unhexify_alloc(hex_dst_string, &dst_len);
|
||||
TEST_ASSERT(src_len == dst_len);
|
||||
|
||||
output = mbedtls_test_zero_alloc(dst_len);
|
||||
|
||||
TEST_ASSERT(mbedtls_aes_xts_setkey_dec(&ctx, key, key_len * 8) == 0);
|
||||
TEST_ASSERT(mbedtls_aes_crypt_xts(&ctx, MBEDTLS_AES_DECRYPT, src_len,
|
||||
data_unit, src, output) == 0);
|
||||
|
||||
TEST_ASSERT(memcmp(output, dst, dst_len) == 0);
|
||||
|
||||
exit:
|
||||
mbedtls_aes_xts_free(&ctx);
|
||||
mbedtls_free(data_unit);
|
||||
mbedtls_free(key);
|
||||
mbedtls_free(src);
|
||||
mbedtls_free(dst);
|
||||
mbedtls_free(output);
|
||||
}
|
||||
/* END_CASE */
|
||||
|
||||
/* BEGIN_CASE depends_on:MBEDTLS_CIPHER_MODE_XTS */
|
||||
void aes_crypt_xts_size(int size, int retval)
|
||||
{
|
||||
mbedtls_aes_xts_context ctx;
|
||||
const unsigned char src[16] = { 0 };
|
||||
unsigned char output[16];
|
||||
unsigned char data_unit[16];
|
||||
size_t length = size;
|
||||
|
||||
mbedtls_aes_xts_init(&ctx);
|
||||
memset(data_unit, 0x00, sizeof(data_unit));
|
||||
|
||||
TEST_ASSERT(mbedtls_aes_crypt_xts(&ctx, MBEDTLS_AES_ENCRYPT, length, data_unit, src,
|
||||
output) == retval);
|
||||
exit:
|
||||
mbedtls_aes_xts_free(&ctx);
|
||||
}
|
||||
/* END_CASE */
|
||||
|
||||
/* BEGIN_CASE depends_on:MBEDTLS_CIPHER_MODE_XTS */
|
||||
void aes_crypt_xts_keysize(int size, int retval)
|
||||
{
|
||||
mbedtls_aes_xts_context ctx;
|
||||
const unsigned char key[] = { 0x01, 0x02, 0x03, 0x04, 0x05, 0x06 };
|
||||
size_t key_len = size;
|
||||
|
||||
mbedtls_aes_xts_init(&ctx);
|
||||
|
||||
TEST_ASSERT(mbedtls_aes_xts_setkey_enc(&ctx, key, key_len * 8) == retval);
|
||||
TEST_ASSERT(mbedtls_aes_xts_setkey_dec(&ctx, key, key_len * 8) == retval);
|
||||
exit:
|
||||
mbedtls_aes_xts_free(&ctx);
|
||||
}
|
||||
/* END_CASE */
|
||||
|
||||
|
||||
/* BEGIN_CASE depends_on:MBEDTLS_CIPHER_MODE_CFB */
|
||||
void aes_encrypt_cfb128(data_t *key_str, data_t *iv_str,
|
||||
data_t *src_str, data_t *dst)
|
||||
{
|
||||
unsigned char output[100];
|
||||
mbedtls_aes_context ctx;
|
||||
size_t iv_offset = 0;
|
||||
|
||||
memset(output, 0x00, 100);
|
||||
mbedtls_aes_init(&ctx);
|
||||
|
||||
|
||||
TEST_ASSERT(mbedtls_aes_setkey_enc(&ctx, key_str->x, key_str->len * 8) == 0);
|
||||
TEST_ASSERT(mbedtls_aes_crypt_cfb128(&ctx, MBEDTLS_AES_ENCRYPT, 16, &iv_offset, iv_str->x,
|
||||
src_str->x, output) == 0);
|
||||
|
||||
TEST_ASSERT(mbedtls_test_hexcmp(output, dst->x, 16, dst->len) == 0);
|
||||
|
||||
exit:
|
||||
mbedtls_aes_free(&ctx);
|
||||
}
|
||||
/* END_CASE */
|
||||
|
||||
/* BEGIN_CASE depends_on:MBEDTLS_CIPHER_MODE_CFB */
|
||||
void aes_decrypt_cfb128(data_t *key_str, data_t *iv_str,
|
||||
data_t *src_str, data_t *dst)
|
||||
{
|
||||
unsigned char output[100];
|
||||
mbedtls_aes_context ctx;
|
||||
size_t iv_offset = 0;
|
||||
|
||||
memset(output, 0x00, 100);
|
||||
mbedtls_aes_init(&ctx);
|
||||
|
||||
|
||||
TEST_ASSERT(mbedtls_aes_setkey_enc(&ctx, key_str->x, key_str->len * 8) == 0);
|
||||
TEST_ASSERT(mbedtls_aes_crypt_cfb128(&ctx, MBEDTLS_AES_DECRYPT, 16, &iv_offset, iv_str->x,
|
||||
src_str->x, output) == 0);
|
||||
|
||||
TEST_ASSERT(mbedtls_test_hexcmp(output, dst->x, 16, dst->len) == 0);
|
||||
|
||||
exit:
|
||||
mbedtls_aes_free(&ctx);
|
||||
}
|
||||
/* END_CASE */
|
||||
|
||||
/* BEGIN_CASE depends_on:MBEDTLS_CIPHER_MODE_CFB */
|
||||
void aes_encrypt_cfb8(data_t *key_str, data_t *iv_str,
|
||||
data_t *src_str, data_t *dst)
|
||||
{
|
||||
unsigned char output[100];
|
||||
mbedtls_aes_context ctx;
|
||||
|
||||
memset(output, 0x00, 100);
|
||||
mbedtls_aes_init(&ctx);
|
||||
|
||||
|
||||
TEST_ASSERT(mbedtls_aes_setkey_enc(&ctx, key_str->x, key_str->len * 8) == 0);
|
||||
TEST_ASSERT(mbedtls_aes_crypt_cfb8(&ctx, MBEDTLS_AES_ENCRYPT, src_str->len, iv_str->x,
|
||||
src_str->x, output) == 0);
|
||||
|
||||
TEST_ASSERT(mbedtls_test_hexcmp(output, dst->x,
|
||||
src_str->len, dst->len) == 0);
|
||||
|
||||
exit:
|
||||
mbedtls_aes_free(&ctx);
|
||||
}
|
||||
/* END_CASE */
|
||||
|
||||
/* BEGIN_CASE depends_on:MBEDTLS_CIPHER_MODE_CFB */
|
||||
void aes_decrypt_cfb8(data_t *key_str, data_t *iv_str,
|
||||
data_t *src_str, data_t *dst)
|
||||
{
|
||||
unsigned char output[100];
|
||||
mbedtls_aes_context ctx;
|
||||
|
||||
memset(output, 0x00, 100);
|
||||
mbedtls_aes_init(&ctx);
|
||||
|
||||
|
||||
TEST_ASSERT(mbedtls_aes_setkey_enc(&ctx, key_str->x, key_str->len * 8) == 0);
|
||||
TEST_ASSERT(mbedtls_aes_crypt_cfb8(&ctx, MBEDTLS_AES_DECRYPT, src_str->len, iv_str->x,
|
||||
src_str->x, output) == 0);
|
||||
|
||||
TEST_ASSERT(mbedtls_test_hexcmp(output, dst->x,
|
||||
src_str->len, dst->len) == 0);
|
||||
|
||||
exit:
|
||||
mbedtls_aes_free(&ctx);
|
||||
}
|
||||
/* END_CASE */
|
||||
|
||||
/* BEGIN_CASE depends_on:MBEDTLS_CIPHER_MODE_OFB */
|
||||
void aes_encrypt_ofb(int fragment_size, data_t *key_str,
|
||||
data_t *iv_str, data_t *src_str,
|
||||
data_t *expected_output)
|
||||
{
|
||||
unsigned char output[32];
|
||||
mbedtls_aes_context ctx;
|
||||
size_t iv_offset = 0;
|
||||
int in_buffer_len;
|
||||
unsigned char *src_str_next;
|
||||
|
||||
memset(output, 0x00, sizeof(output));
|
||||
mbedtls_aes_init(&ctx);
|
||||
|
||||
TEST_ASSERT((size_t) fragment_size < sizeof(output));
|
||||
|
||||
TEST_ASSERT(mbedtls_aes_setkey_enc(&ctx, key_str->x,
|
||||
key_str->len * 8) == 0);
|
||||
in_buffer_len = src_str->len;
|
||||
src_str_next = src_str->x;
|
||||
|
||||
while (in_buffer_len > 0) {
|
||||
TEST_ASSERT(mbedtls_aes_crypt_ofb(&ctx, fragment_size, &iv_offset,
|
||||
iv_str->x, src_str_next, output) == 0);
|
||||
|
||||
TEST_ASSERT(memcmp(output, expected_output->x, fragment_size) == 0);
|
||||
|
||||
in_buffer_len -= fragment_size;
|
||||
expected_output->x += fragment_size;
|
||||
src_str_next += fragment_size;
|
||||
|
||||
if (in_buffer_len < fragment_size) {
|
||||
fragment_size = in_buffer_len;
|
||||
}
|
||||
}
|
||||
|
||||
exit:
|
||||
mbedtls_aes_free(&ctx);
|
||||
}
|
||||
/* END_CASE */
|
||||
|
||||
/* BEGIN_CASE */
|
||||
void aes_invalid_mode()
|
||||
{
|
||||
mbedtls_aes_context aes_ctx;
|
||||
const unsigned char in[16] = { 0 };
|
||||
unsigned char out[16];
|
||||
const int invalid_mode = 42;
|
||||
|
||||
TEST_EQUAL(MBEDTLS_ERR_AES_BAD_INPUT_DATA,
|
||||
mbedtls_aes_crypt_ecb(&aes_ctx, invalid_mode, in, out));
|
||||
|
||||
#if defined(MBEDTLS_CIPHER_MODE_CBC)
|
||||
TEST_EQUAL(MBEDTLS_ERR_AES_BAD_INPUT_DATA,
|
||||
mbedtls_aes_crypt_cbc(&aes_ctx, invalid_mode, 16,
|
||||
out, in, out));
|
||||
#endif /* MBEDTLS_CIPHER_MODE_CBC */
|
||||
|
||||
#if defined(MBEDTLS_CIPHER_MODE_XTS)
|
||||
mbedtls_aes_xts_context xts_ctx;
|
||||
|
||||
TEST_EQUAL(MBEDTLS_ERR_AES_BAD_INPUT_DATA,
|
||||
mbedtls_aes_crypt_xts(&xts_ctx, invalid_mode, 16,
|
||||
in, in, out));
|
||||
#endif /* MBEDTLS_CIPHER_MODE_XTS */
|
||||
|
||||
#if defined(MBEDTLS_CIPHER_MODE_CFB)
|
||||
size_t size;
|
||||
|
||||
TEST_EQUAL(MBEDTLS_ERR_AES_BAD_INPUT_DATA,
|
||||
mbedtls_aes_crypt_cfb128(&aes_ctx, invalid_mode, 16,
|
||||
&size, out, in, out));
|
||||
TEST_EQUAL(MBEDTLS_ERR_AES_BAD_INPUT_DATA,
|
||||
mbedtls_aes_crypt_cfb8(&aes_ctx, invalid_mode, 16,
|
||||
out, in, out));
|
||||
#endif /* MBEDTLS_CIPHER_MODE_CFB */
|
||||
}
|
||||
/* END_CASE */
|
||||
|
||||
/* BEGIN_CASE */
|
||||
void aes_misc_params()
|
||||
{
|
||||
#if defined(MBEDTLS_CIPHER_MODE_CBC) || \
|
||||
defined(MBEDTLS_CIPHER_MODE_XTS) || \
|
||||
defined(MBEDTLS_CIPHER_MODE_CFB) || \
|
||||
defined(MBEDTLS_CIPHER_MODE_OFB)
|
||||
const unsigned char in[16] = { 0 };
|
||||
unsigned char out[16];
|
||||
#endif
|
||||
#if defined(MBEDTLS_CIPHER_MODE_CBC) || \
|
||||
defined(MBEDTLS_CIPHER_MODE_CFB) || \
|
||||
defined(MBEDTLS_CIPHER_MODE_OFB)
|
||||
mbedtls_aes_context aes_ctx;
|
||||
#endif
|
||||
#if defined(MBEDTLS_CIPHER_MODE_XTS)
|
||||
mbedtls_aes_xts_context xts_ctx;
|
||||
#endif
|
||||
#if defined(MBEDTLS_CIPHER_MODE_CFB) || \
|
||||
defined(MBEDTLS_CIPHER_MODE_OFB)
|
||||
size_t size;
|
||||
#endif
|
||||
|
||||
#if defined(MBEDTLS_CIPHER_MODE_CBC)
|
||||
TEST_ASSERT(mbedtls_aes_crypt_cbc(&aes_ctx, MBEDTLS_AES_ENCRYPT,
|
||||
15,
|
||||
out, in, out)
|
||||
== MBEDTLS_ERR_AES_INVALID_INPUT_LENGTH);
|
||||
TEST_ASSERT(mbedtls_aes_crypt_cbc(&aes_ctx, MBEDTLS_AES_ENCRYPT,
|
||||
17,
|
||||
out, in, out)
|
||||
== MBEDTLS_ERR_AES_INVALID_INPUT_LENGTH);
|
||||
#endif
|
||||
|
||||
#if defined(MBEDTLS_CIPHER_MODE_XTS)
|
||||
TEST_ASSERT(mbedtls_aes_crypt_xts(&xts_ctx, MBEDTLS_AES_ENCRYPT,
|
||||
15,
|
||||
in, in, out)
|
||||
== MBEDTLS_ERR_AES_INVALID_INPUT_LENGTH);
|
||||
TEST_ASSERT(mbedtls_aes_crypt_xts(&xts_ctx, MBEDTLS_AES_ENCRYPT,
|
||||
(1 << 24) + 1,
|
||||
in, in, out)
|
||||
== MBEDTLS_ERR_AES_INVALID_INPUT_LENGTH);
|
||||
#endif
|
||||
|
||||
#if defined(MBEDTLS_CIPHER_MODE_CFB)
|
||||
size = 16;
|
||||
TEST_ASSERT(mbedtls_aes_crypt_cfb128(&aes_ctx, MBEDTLS_AES_ENCRYPT, 16,
|
||||
&size, out, in, out)
|
||||
== MBEDTLS_ERR_AES_BAD_INPUT_DATA);
|
||||
#endif
|
||||
|
||||
#if defined(MBEDTLS_CIPHER_MODE_OFB)
|
||||
size = 16;
|
||||
TEST_ASSERT(mbedtls_aes_crypt_ofb(&aes_ctx, 16, &size, out, in, out)
|
||||
== MBEDTLS_ERR_AES_BAD_INPUT_DATA);
|
||||
#endif
|
||||
|
||||
/*
|
||||
* The following line needs to be added to make the code compilable
|
||||
* when all the conditions above will be not define in a specific
|
||||
* choice of features.
|
||||
*/
|
||||
TEST_ASSERT(1);
|
||||
/* TODO: It will be removed when the whole test will be reworked */
|
||||
}
|
||||
/* END_CASE */
|
||||
|
||||
/* BEGIN_CASE depends_on:!MBEDTLS_BLOCK_CIPHER_NO_DECRYPT */
|
||||
void aes_ecb_copy_context(data_t *key)
|
||||
{
|
||||
/* We test context copying multiple times, with different alignments
|
||||
* of the original and of the copies. */
|
||||
|
||||
struct align0 {
|
||||
mbedtls_aes_context ctx;
|
||||
};
|
||||
struct align0 *src0 = NULL;
|
||||
struct align0 *enc0 = NULL;
|
||||
struct align0 *dec0 = NULL;
|
||||
|
||||
struct align1 {
|
||||
char bump;
|
||||
mbedtls_aes_context ctx;
|
||||
};
|
||||
struct align1 *src1 = NULL;
|
||||
struct align1 *enc1 = NULL;
|
||||
struct align1 *dec1 = NULL;
|
||||
|
||||
/* All peak alignment */
|
||||
TEST_CALLOC(src0, 1);
|
||||
TEST_CALLOC(enc0, 1);
|
||||
TEST_CALLOC(dec0, 1);
|
||||
if (!test_copy(key, &src0->ctx, &enc0->ctx, &dec0->ctx)) {
|
||||
goto exit;
|
||||
}
|
||||
mbedtls_free(src0);
|
||||
src0 = NULL;
|
||||
mbedtls_free(enc0);
|
||||
enc0 = NULL;
|
||||
mbedtls_free(dec0);
|
||||
dec0 = NULL;
|
||||
|
||||
/* Original shifted */
|
||||
TEST_CALLOC(src1, 1);
|
||||
TEST_CALLOC(enc0, 1);
|
||||
TEST_CALLOC(dec0, 1);
|
||||
if (!test_copy(key, &src1->ctx, &enc0->ctx, &dec0->ctx)) {
|
||||
goto exit;
|
||||
}
|
||||
mbedtls_free(src1);
|
||||
src1 = NULL;
|
||||
mbedtls_free(enc0);
|
||||
enc0 = NULL;
|
||||
mbedtls_free(dec0);
|
||||
dec0 = NULL;
|
||||
|
||||
/* Copies shifted */
|
||||
TEST_CALLOC(src0, 1);
|
||||
TEST_CALLOC(enc1, 1);
|
||||
TEST_CALLOC(dec1, 1);
|
||||
if (!test_copy(key, &src0->ctx, &enc1->ctx, &dec1->ctx)) {
|
||||
goto exit;
|
||||
}
|
||||
mbedtls_free(src0);
|
||||
src0 = NULL;
|
||||
mbedtls_free(enc1);
|
||||
enc1 = NULL;
|
||||
mbedtls_free(dec1);
|
||||
dec1 = NULL;
|
||||
|
||||
/* Source and copies shifted */
|
||||
TEST_CALLOC(src1, 1);
|
||||
TEST_CALLOC(enc1, 1);
|
||||
TEST_CALLOC(dec1, 1);
|
||||
if (!test_copy(key, &src1->ctx, &enc1->ctx, &dec1->ctx)) {
|
||||
goto exit;
|
||||
}
|
||||
mbedtls_free(src1);
|
||||
src1 = NULL;
|
||||
mbedtls_free(enc1);
|
||||
enc1 = NULL;
|
||||
mbedtls_free(dec1);
|
||||
dec1 = NULL;
|
||||
|
||||
exit:
|
||||
mbedtls_free(src0);
|
||||
mbedtls_free(enc0);
|
||||
mbedtls_free(dec0);
|
||||
mbedtls_free(src1);
|
||||
mbedtls_free(enc1);
|
||||
mbedtls_free(dec1);
|
||||
}
|
||||
/* END_CASE */
|
||||
|
||||
/* BEGIN_CASE depends_on:MBEDTLS_SELF_TEST */
|
||||
void aes_selftest()
|
||||
{
|
||||
TEST_ASSERT(mbedtls_aes_self_test(1) == 0);
|
||||
}
|
||||
/* END_CASE */
|
||||
35
vendor/mbedtls/tests/suites/test_suite_aes.ofb.data
vendored
Normal file
35
vendor/mbedtls/tests/suites/test_suite_aes.ofb.data
vendored
Normal file
@@ -0,0 +1,35 @@
|
||||
# NIST Special Publication 800-38A
|
||||
# Recommendation for Block Cipher Modes of Operation
|
||||
# Test Vectors - Appendix F, Section F.4
|
||||
OFB-AES128.Encrypt - Single block
|
||||
depends_on:MBEDTLS_CIPHER_MODE_OFB
|
||||
aes_encrypt_ofb:16:"2b7e151628aed2a6abf7158809cf4f3c":"000102030405060708090a0b0c0d0e0f":"6bc1bee22e409f96e93d7e117393172a":"3b3fd92eb72dad20333449f8e83cfb4a"
|
||||
|
||||
OFB-AES128.Encrypt - Partial blocks - 7 bytes
|
||||
depends_on:MBEDTLS_CIPHER_MODE_OFB
|
||||
aes_encrypt_ofb:5:"2b7e151628aed2a6abf7158809cf4f3c":"000102030405060708090a0b0c0d0e0f":"6bc1bee22e409f96e93d7e117393172aae2d8a571e03ac9c9eb76fac45af8e5130c81c46a35ce411e5fbc1191a0a52eff69f2445df4f9b17ad2b417be66c3710":"3b3fd92eb72dad20333449f8e83cfb4a7789508d16918f03f53c52dac54ed8259740051e9c5fecf64344f7a82260edcc304c6528f659c77866a510d9c1d6ae5e"
|
||||
|
||||
OFB-AES128.Encrypt - Test NIST SP800-38A - F.4.1
|
||||
depends_on:MBEDTLS_CIPHER_MODE_OFB
|
||||
aes_encrypt_ofb:16:"2b7e151628aed2a6abf7158809cf4f3c":"000102030405060708090a0b0c0d0e0f":"6bc1bee22e409f96e93d7e117393172aae2d8a571e03ac9c9eb76fac45af8e5130c81c46a35ce411e5fbc1191a0a52eff69f2445df4f9b17ad2b417be66c3710":"3b3fd92eb72dad20333449f8e83cfb4a7789508d16918f03f53c52dac54ed8259740051e9c5fecf64344f7a82260edcc304c6528f659c77866a510d9c1d6ae5e"
|
||||
|
||||
OFB-AES128.Decrypt - Test NIST SP800-38A - F.4.2
|
||||
depends_on:MBEDTLS_CIPHER_MODE_OFB
|
||||
aes_encrypt_ofb:16:"2b7e151628aed2a6abf7158809cf4f3c":"000102030405060708090a0b0c0d0e0f":"3b3fd92eb72dad20333449f8e83cfb4a7789508d16918f03f53c52dac54ed8259740051e9c5fecf64344f7a82260edcc304c6528f659c77866a510d9c1d6ae5e":"6bc1bee22e409f96e93d7e117393172aae2d8a571e03ac9c9eb76fac45af8e5130c81c46a35ce411e5fbc1191a0a52eff69f2445df4f9b17ad2b417be66c3710"
|
||||
|
||||
OFB-AES192.Encrypt - Test NIST SP800-38A - F.4.3
|
||||
depends_on:MBEDTLS_CIPHER_MODE_OFB:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
aes_encrypt_ofb:16:"8e73b0f7da0e6452c810f32b809079e562f8ead2522c6b7b":"000102030405060708090a0b0c0d0e0f":"6bc1bee22e409f96e93d7e117393172aae2d8a571e03ac9c9eb76fac45af8e5130c81c46a35ce411e5fbc1191a0a52eff69f2445df4f9b17ad2b417be66c3710":"cdc80d6fddf18cab34c25909c99a4174fcc28b8d4c63837c09e81700c11004018d9a9aeac0f6596f559c6d4daf59a5f26d9f200857ca6c3e9cac524bd9acc92a"
|
||||
|
||||
OFB-AES192.Decrypt - Test NIST SP800-38A - F.4.4
|
||||
depends_on:MBEDTLS_CIPHER_MODE_OFB:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
aes_encrypt_ofb:16:"8e73b0f7da0e6452c810f32b809079e562f8ead2522c6b7b":"000102030405060708090a0b0c0d0e0f":"cdc80d6fddf18cab34c25909c99a4174fcc28b8d4c63837c09e81700c11004018d9a9aeac0f6596f559c6d4daf59a5f26d9f200857ca6c3e9cac524bd9acc92a":"6bc1bee22e409f96e93d7e117393172aae2d8a571e03ac9c9eb76fac45af8e5130c81c46a35ce411e5fbc1191a0a52eff69f2445df4f9b17ad2b417be66c3710"
|
||||
|
||||
OFB-AES256.Encrypt - Test NIST SP800-38A - F.4.5
|
||||
depends_on:MBEDTLS_CIPHER_MODE_OFB:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
aes_encrypt_ofb:16:"603deb1015ca71be2b73aef0857d77811f352c073b6108d72d9810a30914dff4":"000102030405060708090a0b0c0d0e0f":"6bc1bee22e409f96e93d7e117393172aae2d8a571e03ac9c9eb76fac45af8e5130c81c46a35ce411e5fbc1191a0a52eff69f2445df4f9b17ad2b417be66c3710":"dc7e84bfda79164b7ecd8486985d38604febdc6740d20b3ac88f6ad82a4fb08d71ab47a086e86eedf39d1c5bba97c4080126141d67f37be8538f5a8be740e484"
|
||||
|
||||
OFB-AES256.Decrypt - Test NIST SP800-38A - F.4.6
|
||||
depends_on:MBEDTLS_CIPHER_MODE_OFB:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
aes_encrypt_ofb:16:"603deb1015ca71be2b73aef0857d77811f352c073b6108d72d9810a30914dff4":"000102030405060708090a0b0c0d0e0f":"dc7e84bfda79164b7ecd8486985d38604febdc6740d20b3ac88f6ad82a4fb08d71ab47a086e86eedf39d1c5bba97c4080126141d67f37be8538f5a8be740e484":"6bc1bee22e409f96e93d7e117393172aae2d8a571e03ac9c9eb76fac45af8e5130c81c46a35ce411e5fbc1191a0a52eff69f2445df4f9b17ad2b417be66c3710"
|
||||
|
||||
23
vendor/mbedtls/tests/suites/test_suite_aes.rest.data
vendored
Normal file
23
vendor/mbedtls/tests/suites/test_suite_aes.rest.data
vendored
Normal file
@@ -0,0 +1,23 @@
|
||||
AES-ECB Encrypt (Invalid keylength)
|
||||
aes_encrypt_ecb:"000000000000000000000000000000":"f34481ec3cc627bacd5dc3fb08f273e6":"0336763e966d92595a567cc9ce537f5e":MBEDTLS_ERR_AES_INVALID_KEY_LENGTH
|
||||
|
||||
AES-ECB Decrypt (Invalid keylength)
|
||||
aes_decrypt_ecb:"000000000000000000000000000000":"f34481ec3cc627bacd5dc3fb08f273e6":"0336763e966d92595a567cc9ce537f5e":MBEDTLS_ERR_AES_INVALID_KEY_LENGTH
|
||||
|
||||
AES-256-CBC Encrypt (Invalid input length)
|
||||
depends_on:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
aes_encrypt_cbc:"0000000000000000000000000000000000000000000000000000000000000000":"00000000000000000000000000000000":"ffffffffffffffe000000000000000":"":MBEDTLS_ERR_AES_INVALID_INPUT_LENGTH
|
||||
|
||||
AES-256-CBC Decrypt (Invalid input length)
|
||||
depends_on:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
aes_decrypt_cbc:"0000000000000000000000000000000000000000000000000000000000000000":"00000000000000000000000000000000":"623a52fcea5d443e48d9181ab32c74":"":MBEDTLS_ERR_AES_INVALID_INPUT_LENGTH
|
||||
|
||||
AES - Mode Parameter Validation
|
||||
aes_invalid_mode:
|
||||
|
||||
AES - Mandatory Parameter Validation and Valid Parameters
|
||||
aes_misc_params:
|
||||
|
||||
AES Selftest
|
||||
depends_on:MBEDTLS_SELF_TEST
|
||||
aes_selftest:
|
||||
169
vendor/mbedtls/tests/suites/test_suite_aes.xts.data
vendored
Normal file
169
vendor/mbedtls/tests/suites/test_suite_aes.xts.data
vendored
Normal file
@@ -0,0 +1,169 @@
|
||||
#
|
||||
# Tests for expected errors (negative tests)
|
||||
#
|
||||
AES-128-XTS Encrypt Fail Sector Too Small (by 16 bytes)
|
||||
aes_crypt_xts_size:0:MBEDTLS_ERR_AES_INVALID_INPUT_LENGTH
|
||||
|
||||
AES-128-XTS Encrypt Fail Sector Too Small (by 1 byte)
|
||||
aes_crypt_xts_size:15:MBEDTLS_ERR_AES_INVALID_INPUT_LENGTH
|
||||
|
||||
AES-128-XTS Encrypt Fail Sector Too Large (by 1 byte)
|
||||
aes_crypt_xts_size:16777217:MBEDTLS_ERR_AES_INVALID_INPUT_LENGTH
|
||||
|
||||
AES-128-XTS Encrypt Fail Sector Too Large (by 1 block)
|
||||
aes_crypt_xts_size:16777232:MBEDTLS_ERR_AES_INVALID_INPUT_LENGTH
|
||||
|
||||
AES-0-XTS Setkey Fail Invalid Key Length
|
||||
aes_crypt_xts_keysize:0:MBEDTLS_ERR_AES_INVALID_KEY_LENGTH
|
||||
|
||||
AES-4-XTS Setkey Fail Invalid Key Length
|
||||
aes_crypt_xts_keysize:1:MBEDTLS_ERR_AES_INVALID_KEY_LENGTH
|
||||
|
||||
AES-64-XTS Setkey Fail Invalid Key Length
|
||||
aes_crypt_xts_keysize:16:MBEDTLS_ERR_AES_INVALID_KEY_LENGTH
|
||||
|
||||
AES-192-XTS Setkey Fail Invalid Key Length
|
||||
depends_on:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
aes_crypt_xts_keysize:48:MBEDTLS_ERR_AES_INVALID_KEY_LENGTH
|
||||
|
||||
AES-384-XTS Setkey Fail Invalid Key Length
|
||||
aes_crypt_xts_keysize:96:MBEDTLS_ERR_AES_INVALID_KEY_LENGTH
|
||||
|
||||
#
|
||||
# IEEE P1619/D16 Annex B Test Vectors
|
||||
# http://grouper.ieee.org/groups/1619/email/pdf00086.pdf
|
||||
#
|
||||
# 128-bit keys with 32 byte sector
|
||||
#
|
||||
AES-128-XTS Encrypt IEEE P1619/D16 Vector 1
|
||||
aes_encrypt_xts:"0000000000000000000000000000000000000000000000000000000000000000":"00000000000000000000000000000000":"0000000000000000000000000000000000000000000000000000000000000000":"917cf69ebd68b2ec9b9fe9a3eadda692cd43d2f59598ed858c02c2652fbf922e"
|
||||
|
||||
AES-128-XTS Encrypt IEEE P1619/D16 Vector 2
|
||||
aes_encrypt_xts:"1111111111111111111111111111111122222222222222222222222222222222":"33333333330000000000000000000000":"4444444444444444444444444444444444444444444444444444444444444444":"c454185e6a16936e39334038acef838bfb186fff7480adc4289382ecd6d394f0"
|
||||
|
||||
AES-128-XTS Encrypt IEEE P1619/D16 Vector 3
|
||||
aes_encrypt_xts:"fffefdfcfbfaf9f8f7f6f5f4f3f2f1f022222222222222222222222222222222":"33333333330000000000000000000000":"4444444444444444444444444444444444444444444444444444444444444444":"af85336b597afc1a900b2eb21ec949d292df4c047e0b21532186a5971a227a89"
|
||||
|
||||
#
|
||||
# 128-bit keys with 512 byte sector
|
||||
#
|
||||
AES-128-XTS Encrypt IEEE P1619/D16 Vector 4
|
||||
aes_encrypt_xts:"2718281828459045235360287471352631415926535897932384626433832795":"00000000000000000000000000000000":"000102030405060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e1f202122232425262728292a2b2c2d2e2f303132333435363738393a3b3c3d3e3f404142434445464748494a4b4c4d4e4f505152535455565758595a5b5c5d5e5f606162636465666768696a6b6c6d6e6f707172737475767778797a7b7c7d7e7f808182838485868788898a8b8c8d8e8f909192939495969798999a9b9c9d9e9fa0a1a2a3a4a5a6a7a8a9aaabacadaeafb0b1b2b3b4b5b6b7b8b9babbbcbdbebfc0c1c2c3c4c5c6c7c8c9cacbcccdcecfd0d1d2d3d4d5d6d7d8d9dadbdcdddedfe0e1e2e3e4e5e6e7e8e9eaebecedeeeff0f1f2f3f4f5f6f7f8f9fafbfcfdfeff000102030405060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e1f202122232425262728292a2b2c2d2e2f303132333435363738393a3b3c3d3e3f404142434445464748494a4b4c4d4e4f505152535455565758595a5b5c5d5e5f606162636465666768696a6b6c6d6e6f707172737475767778797a7b7c7d7e7f808182838485868788898a8b8c8d8e8f909192939495969798999a9b9c9d9e9fa0a1a2a3a4a5a6a7a8a9aaabacadaeafb0b1b2b3b4b5b6b7b8b9babbbcbdbebfc0c1c2c3c4c5c6c7c8c9cacbcccdcecfd0d1d2d3d4d5d6d7d8d9dadbdcdddedfe0e1e2e3e4e5e6e7e8e9eaebecedeeeff0f1f2f3f4f5f6f7f8f9fafbfcfdfeff":"27a7479befa1d476489f308cd4cfa6e2a96e4bbe3208ff25287dd3819616e89cc78cf7f5e543445f8333d8fa7f56000005279fa5d8b5e4ad40e736ddb4d35412328063fd2aab53e5ea1e0a9f332500a5df9487d07a5c92cc512c8866c7e860ce93fdf166a24912b422976146ae20ce846bb7dc9ba94a767aaef20c0d61ad02655ea92dc4c4e41a8952c651d33174be51a10c421110e6d81588ede82103a252d8a750e8768defffed9122810aaeb99f9172af82b604dc4b8e51bcb08235a6f4341332e4ca60482a4ba1a03b3e65008fc5da76b70bf1690db4eae29c5f1badd03c5ccf2a55d705ddcd86d449511ceb7ec30bf12b1fa35b913f9f747a8afd1b130e94bff94effd01a91735ca1726acd0b197c4e5b03393697e126826fb6bbde8ecc1e08298516e2c9ed03ff3c1b7860f6de76d4cecd94c8119855ef5297ca67e9f3e7ff72b1e99785ca0a7e7720c5b36dc6d72cac9574c8cbbc2f801e23e56fd344b07f22154beba0f08ce8891e643ed995c94d9a69c9f1b5f499027a78572aeebd74d20cc39881c213ee770b1010e4bea718846977ae119f7a023ab58cca0ad752afe656bb3c17256a9f6e9bf19fdd5a38fc82bbe872c5539edb609ef4f79c203ebb140f2e583cb2ad15b4aa5b655016a8449277dbd477ef2c8d6c017db738b18deb4a427d1923ce3ff262735779a418f20a282df920147beabe421ee5319d0568"
|
||||
|
||||
AES-128-XTS Encrypt IEEE P1619/D16 Vector 5
|
||||
aes_encrypt_xts:"2718281828459045235360287471352631415926535897932384626433832795":"01000000000000000000000000000000":"27a7479befa1d476489f308cd4cfa6e2a96e4bbe3208ff25287dd3819616e89cc78cf7f5e543445f8333d8fa7f56000005279fa5d8b5e4ad40e736ddb4d35412328063fd2aab53e5ea1e0a9f332500a5df9487d07a5c92cc512c8866c7e860ce93fdf166a24912b422976146ae20ce846bb7dc9ba94a767aaef20c0d61ad02655ea92dc4c4e41a8952c651d33174be51a10c421110e6d81588ede82103a252d8a750e8768defffed9122810aaeb99f9172af82b604dc4b8e51bcb08235a6f4341332e4ca60482a4ba1a03b3e65008fc5da76b70bf1690db4eae29c5f1badd03c5ccf2a55d705ddcd86d449511ceb7ec30bf12b1fa35b913f9f747a8afd1b130e94bff94effd01a91735ca1726acd0b197c4e5b03393697e126826fb6bbde8ecc1e08298516e2c9ed03ff3c1b7860f6de76d4cecd94c8119855ef5297ca67e9f3e7ff72b1e99785ca0a7e7720c5b36dc6d72cac9574c8cbbc2f801e23e56fd344b07f22154beba0f08ce8891e643ed995c94d9a69c9f1b5f499027a78572aeebd74d20cc39881c213ee770b1010e4bea718846977ae119f7a023ab58cca0ad752afe656bb3c17256a9f6e9bf19fdd5a38fc82bbe872c5539edb609ef4f79c203ebb140f2e583cb2ad15b4aa5b655016a8449277dbd477ef2c8d6c017db738b18deb4a427d1923ce3ff262735779a418f20a282df920147beabe421ee5319d0568":"264d3ca8512194fec312c8c9891f279fefdd608d0c027b60483a3fa811d65ee59d52d9e40ec5672d81532b38b6b089ce951f0f9c35590b8b978d175213f329bb1c2fd30f2f7f30492a61a532a79f51d36f5e31a7c9a12c286082ff7d2394d18f783e1a8e72c722caaaa52d8f065657d2631fd25bfd8e5baad6e527d763517501c68c5edc3cdd55435c532d7125c8614deed9adaa3acade5888b87bef641c4c994c8091b5bcd387f3963fb5bc37aa922fbfe3df4e5b915e6eb514717bdd2a74079a5073f5c4bfd46adf7d282e7a393a52579d11a028da4d9cd9c77124f9648ee383b1ac763930e7162a8d37f350b2f74b8472cf09902063c6b32e8c2d9290cefbd7346d1c779a0df50edcde4531da07b099c638e83a755944df2aef1aa31752fd323dcb710fb4bfbb9d22b925bc3577e1b8949e729a90bbafeacf7f7879e7b1147e28ba0bae940db795a61b15ecf4df8db07b824bb062802cc98a9545bb2aaeed77cb3fc6db15dcd7d80d7d5bc406c4970a3478ada8899b329198eb61c193fb6275aa8ca340344a75a862aebe92eee1ce032fd950b47d7704a3876923b4ad62844bf4a09c4dbe8b4397184b7471360c9564880aedddb9baa4af2e75394b08cd32ff479c57a07d3eab5d54de5f9738b8d27f27a9f0ab11799d7b7ffefb2704c95c6ad12c39f1e867a4b7b1d7818a4b753dfd2a89ccb45e001a03a867b187f225dd"
|
||||
|
||||
AES-128-XTS Encrypt IEEE P1619/D16 Vector 6
|
||||
aes_encrypt_xts:"2718281828459045235360287471352631415926535897932384626433832795":"02000000000000000000000000000000":"264d3ca8512194fec312c8c9891f279fefdd608d0c027b60483a3fa811d65ee59d52d9e40ec5672d81532b38b6b089ce951f0f9c35590b8b978d175213f329bb1c2fd30f2f7f30492a61a532a79f51d36f5e31a7c9a12c286082ff7d2394d18f783e1a8e72c722caaaa52d8f065657d2631fd25bfd8e5baad6e527d763517501c68c5edc3cdd55435c532d7125c8614deed9adaa3acade5888b87bef641c4c994c8091b5bcd387f3963fb5bc37aa922fbfe3df4e5b915e6eb514717bdd2a74079a5073f5c4bfd46adf7d282e7a393a52579d11a028da4d9cd9c77124f9648ee383b1ac763930e7162a8d37f350b2f74b8472cf09902063c6b32e8c2d9290cefbd7346d1c779a0df50edcde4531da07b099c638e83a755944df2aef1aa31752fd323dcb710fb4bfbb9d22b925bc3577e1b8949e729a90bbafeacf7f7879e7b1147e28ba0bae940db795a61b15ecf4df8db07b824bb062802cc98a9545bb2aaeed77cb3fc6db15dcd7d80d7d5bc406c4970a3478ada8899b329198eb61c193fb6275aa8ca340344a75a862aebe92eee1ce032fd950b47d7704a3876923b4ad62844bf4a09c4dbe8b4397184b7471360c9564880aedddb9baa4af2e75394b08cd32ff479c57a07d3eab5d54de5f9738b8d27f27a9f0ab11799d7b7ffefb2704c95c6ad12c39f1e867a4b7b1d7818a4b753dfd2a89ccb45e001a03a867b187f225dd":"fa762a3680b76007928ed4a4f49a9456031b704782e65e16cecb54ed7d017b5e18abd67b338e81078f21edb7868d901ebe9c731a7c18b5e6dec1d6a72e078ac9a4262f860beefa14f4e821018272e411a951502b6e79066e84252c3346f3aa62344351a291d4bedc7a07618bdea2af63145cc7a4b8d4070691ae890cd65733e7946e9021a1dffc4c59f159425ee6d50ca9b135fa6162cea18a939838dc000fb386fad086acce5ac07cb2ece7fd580b00cfa5e98589631dc25e8e2a3daf2ffdec26531659912c9d8f7a15e5865ea8fb5816d6207052bd7128cd743c12c8118791a4736811935eb982a532349e31dd401e0b660a568cb1a4711f552f55ded59f1f15bf7196b3ca12a91e488ef59d64f3a02bf45239499ac6176ae321c4a211ec545365971c5d3f4f09d4eb139bfdf2073d33180b21002b65cc9865e76cb24cd92c874c24c18350399a936ab3637079295d76c417776b94efce3a0ef7206b15110519655c956cbd8b2489405ee2b09a6b6eebe0c53790a12a8998378b33a5b71159625f4ba49d2a2fdba59fbf0897bc7aabd8d707dc140a80f0f309f835d3da54ab584e501dfa0ee977fec543f74186a802b9a37adb3e8291eca04d66520d229e60401e7282bef486ae059aa70696e0e305d777140a7a883ecdcb69b9ff938e8a4231864c69ca2c2043bed007ff3e605e014bcf518138dc3a25c5e236171a2d01d6"
|
||||
|
||||
AES-128-XTS Encrypt IEEE P1619/D16 Vector 7
|
||||
aes_encrypt_xts:"2718281828459045235360287471352631415926535897932384626433832795":"fd000000000000000000000000000000":"8e41b78c390b5af9d758bb214a67e9f6bf7727b09ac6124084c37611398fa45daad94868600ed391fb1acd4857a95b466e62ef9f4b377244d1c152e7b30d731aad30c716d214b707aed99eb5b5e580b3e887cf7497465651d4b60e6042051da3693c3b78c14489543be8b6ad0ba629565bba202313ba7b0d0c94a3252b676f46cc02ce0f8a7d34c0ed229129673c1f61aed579d08a9203a25aac3a77e9db60267996db38df637356d9dcd1632e369939f2a29d89345c66e05066f1a3677aef18dea4113faeb629e46721a66d0a7e785d3e29af2594eb67dfa982affe0aac058f6e15864269b135418261fc3afb089472cf68c45dd7f231c6249ba0255e1e033833fc4d00a3fe02132d7bc3873614b8aee34273581ea0325c81f0270affa13641d052d36f0757d484014354d02d6883ca15c24d8c3956b1bd027bcf41f151fd8023c5340e5606f37e90fdb87c86fb4fa634b3718a30bace06a66eaf8f63c4aa3b637826a87fe8cfa44282e92cb1615af3a28e53bc74c7cba1a0977be9065d0c1a5dec6c54ae38d37f37aa35283e048e5530a85c4e7a29d7b92ec0c3169cdf2a805c7604bce60049b9fb7b8eaac10f51ae23794ceba68bb58112e293b9b692ca721b37c662f8574ed4dba6f88e170881c82cddc1034a0ca7e284bf0962b6b26292d836fa9f73c1ac770eef0f2d3a1eaf61d3e03555fd424eedd67e18a18094f888":"d55f684f81f4426e9fde92a5ff02df2ac896af63962888a97910c1379e20b0a3b1db613fb7fe2e07004329ea5c22bfd33e3dbe4cf58cc608c2c26c19a2e2fe22f98732c2b5cb844cc6c0702d91e1d50fc4382a7eba5635cd602432a2306ac4ce82f8d70c8d9bc15f918fe71e74c622d5cf71178bf6e0b9cc9f2b41dd8dbe441c41cd0c73a6dc47a348f6702f9d0e9b1b1431e948e299b9ec2272ab2c5f0c7be86affa5dec87a0bee81d3d50007edaa2bcfccb35605155ff36ed8edd4a40dcd4b243acd11b2b987bdbfaf91a7cac27e9c5aea525ee53de7b2d3332c8644402b823e94a7db26276d2d23aa07180f76b4fd29b9c0823099c9d62c519880aee7e9697617c1497d47bf3e571950311421b6b734d38b0db91eb85331b91ea9f61530f54512a5a52a4bad589eb69781d537f23297bb459bdad2948a29e1550bf4787e0be95bb173cf5fab17dab7a13a052a63453d97ccec1a321954886b7a1299faaeecae35c6eaaca753b041b5e5f093bf83397fd21dd6b3012066fcc058cc32c3b09d7562dee29509b5839392c9ff05f51f3166aaac4ac5f238038a3045e6f72e48ef0fe8bc675e82c318a268e43970271bf119b81bf6a982746554f84e72b9f00280a320a08142923c23c883423ff949827f29bbacdc1ccdb04938ce6098c95ba6b32528f4ef78eed778b2e122ddfd1cbdd11d1c0a6783e011fc536d63d053260637"
|
||||
|
||||
AES-128-XTS Encrypt IEEE P1619/D16 Vector 8
|
||||
aes_encrypt_xts:"2718281828459045235360287471352631415926535897932384626433832795":"fe000000000000000000000000000000":"d55f684f81f4426e9fde92a5ff02df2ac896af63962888a97910c1379e20b0a3b1db613fb7fe2e07004329ea5c22bfd33e3dbe4cf58cc608c2c26c19a2e2fe22f98732c2b5cb844cc6c0702d91e1d50fc4382a7eba5635cd602432a2306ac4ce82f8d70c8d9bc15f918fe71e74c622d5cf71178bf6e0b9cc9f2b41dd8dbe441c41cd0c73a6dc47a348f6702f9d0e9b1b1431e948e299b9ec2272ab2c5f0c7be86affa5dec87a0bee81d3d50007edaa2bcfccb35605155ff36ed8edd4a40dcd4b243acd11b2b987bdbfaf91a7cac27e9c5aea525ee53de7b2d3332c8644402b823e94a7db26276d2d23aa07180f76b4fd29b9c0823099c9d62c519880aee7e9697617c1497d47bf3e571950311421b6b734d38b0db91eb85331b91ea9f61530f54512a5a52a4bad589eb69781d537f23297bb459bdad2948a29e1550bf4787e0be95bb173cf5fab17dab7a13a052a63453d97ccec1a321954886b7a1299faaeecae35c6eaaca753b041b5e5f093bf83397fd21dd6b3012066fcc058cc32c3b09d7562dee29509b5839392c9ff05f51f3166aaac4ac5f238038a3045e6f72e48ef0fe8bc675e82c318a268e43970271bf119b81bf6a982746554f84e72b9f00280a320a08142923c23c883423ff949827f29bbacdc1ccdb04938ce6098c95ba6b32528f4ef78eed778b2e122ddfd1cbdd11d1c0a6783e011fc536d63d053260637":"72efc1ebfe1ee25975a6eb3aa8589dda2b261f1c85bdab442a9e5b2dd1d7c3957a16fc08e526d4b1223f1b1232a11af274c3d70dac57f83e0983c498f1a6f1aecb021c3e70085a1e527f1ce41ee5911a82020161529cd82773762daf5459de94a0a82adae7e1703c808543c29ed6fb32d9e004327c1355180c995a07741493a09c21ba01a387882da4f62534b87bb15d60d197201c0fd3bf30c1500a3ecfecdd66d8721f90bcc4c17ee925c61b0a03727a9c0d5f5ca462fbfa0af1c2513a9d9d4b5345bd27a5f6e653f751693e6b6a2b8ead57d511e00e58c45b7b8d005af79288f5c7c22fd4f1bf7a898b03a5634c6a1ae3f9fae5de4f296a2896b23e7ed43ed14fa5a2803f4d28f0d3ffcf24757677aebdb47bb388378708948a8d4126ed1839e0da29a537a8c198b3c66ab00712dd261674bf45a73d67f76914f830ca014b65596f27e4cf62de66125a5566df9975155628b400fbfb3a29040ed50faffdbb18aece7c5c44693260aab386c0a37b11b114f1c415aebb653be468179428d43a4d8bc3ec38813eca30a13cf1bb18d524f1992d44d8b1a42ea30b22e6c95b199d8d182f8840b09d059585c31ad691fa0619ff038aca2c39a943421157361717c49d322028a74648113bd8c9d7ec77cf3c89c1ec8718ceff8516d96b34c3c614f10699c9abc4ed0411506223bea16af35c883accdbe1104eef0cfdb54e12fb230a"
|
||||
|
||||
AES-128-XTS Encrypt IEEE P1619/D16 Vector 9
|
||||
aes_encrypt_xts:"2718281828459045235360287471352631415926535897932384626433832795":"ff000000000000000000000000000000":"72efc1ebfe1ee25975a6eb3aa8589dda2b261f1c85bdab442a9e5b2dd1d7c3957a16fc08e526d4b1223f1b1232a11af274c3d70dac57f83e0983c498f1a6f1aecb021c3e70085a1e527f1ce41ee5911a82020161529cd82773762daf5459de94a0a82adae7e1703c808543c29ed6fb32d9e004327c1355180c995a07741493a09c21ba01a387882da4f62534b87bb15d60d197201c0fd3bf30c1500a3ecfecdd66d8721f90bcc4c17ee925c61b0a03727a9c0d5f5ca462fbfa0af1c2513a9d9d4b5345bd27a5f6e653f751693e6b6a2b8ead57d511e00e58c45b7b8d005af79288f5c7c22fd4f1bf7a898b03a5634c6a1ae3f9fae5de4f296a2896b23e7ed43ed14fa5a2803f4d28f0d3ffcf24757677aebdb47bb388378708948a8d4126ed1839e0da29a537a8c198b3c66ab00712dd261674bf45a73d67f76914f830ca014b65596f27e4cf62de66125a5566df9975155628b400fbfb3a29040ed50faffdbb18aece7c5c44693260aab386c0a37b11b114f1c415aebb653be468179428d43a4d8bc3ec38813eca30a13cf1bb18d524f1992d44d8b1a42ea30b22e6c95b199d8d182f8840b09d059585c31ad691fa0619ff038aca2c39a943421157361717c49d322028a74648113bd8c9d7ec77cf3c89c1ec8718ceff8516d96b34c3c614f10699c9abc4ed0411506223bea16af35c883accdbe1104eef0cfdb54e12fb230a":"3260ae8dad1f4a32c5cafe3ab0eb95549d461a67ceb9e5aa2d3afb62dece0553193ba50c75be251e08d1d08f1088576c7efdfaaf3f459559571e12511753b07af073f35da06af0ce0bbf6b8f5ccc5cea500ec1b211bd51f63b606bf6528796ca12173ba39b8935ee44ccce646f90a45bf9ccc567f0ace13dc2d53ebeedc81f58b2e41179dddf0d5a5c42f5d8506c1a5d2f8f59f3ea873cbcd0eec19acbf325423bd3dcb8c2b1bf1d1eaed0eba7f0698e4314fbeb2f1566d1b9253008cbccf45a2b0d9c5c9c21474f4076e02be26050b99dee4fd68a4cf890e496e4fcae7b70f94ea5a9062da0daeba1993d2ccd1dd3c244b8428801495a58b216547e7e847c46d1d756377b6242d2e5fb83bf752b54e0df71e889f3a2bb0f4c10805bf3c590376e3c24e22ff57f7fa965577375325cea5d920db94b9c336b455f6e894c01866fe9fbb8c8d3f70a2957285f6dfb5dcd8cbf54782f8fe7766d4723819913ac773421e3a31095866bad22c86a6036b2518b2059b4229d18c8c2ccbdf906c6cc6e82464ee57bddb0bebcb1dc645325bfb3e665ef7251082c88ebb1cf203bd779fdd38675713c8daadd17e1cabee432b09787b6ddf3304e38b731b45df5df51b78fcfb3d32466028d0ba36555e7e11ab0ee0666061d1645d962444bc47a38188930a84b4d561395c73c087021927ca638b7afc8a8679ccb84c26555440ec7f10445cd"
|
||||
|
||||
#
|
||||
# 256-bit keys with 512 byte sector
|
||||
#
|
||||
AES-256-XTS Encrypt IEEE P1619/D16 Vector 10
|
||||
depends_on:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
aes_encrypt_xts:"27182818284590452353602874713526624977572470936999595749669676273141592653589793238462643383279502884197169399375105820974944592":"ff000000000000000000000000000000":"000102030405060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e1f202122232425262728292a2b2c2d2e2f303132333435363738393a3b3c3d3e3f404142434445464748494a4b4c4d4e4f505152535455565758595a5b5c5d5e5f606162636465666768696a6b6c6d6e6f707172737475767778797a7b7c7d7e7f808182838485868788898a8b8c8d8e8f909192939495969798999a9b9c9d9e9fa0a1a2a3a4a5a6a7a8a9aaabacadaeafb0b1b2b3b4b5b6b7b8b9babbbcbdbebfc0c1c2c3c4c5c6c7c8c9cacbcccdcecfd0d1d2d3d4d5d6d7d8d9dadbdcdddedfe0e1e2e3e4e5e6e7e8e9eaebecedeeeff0f1f2f3f4f5f6f7f8f9fafbfcfdfeff000102030405060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e1f202122232425262728292a2b2c2d2e2f303132333435363738393a3b3c3d3e3f404142434445464748494a4b4c4d4e4f505152535455565758595a5b5c5d5e5f606162636465666768696a6b6c6d6e6f707172737475767778797a7b7c7d7e7f808182838485868788898a8b8c8d8e8f909192939495969798999a9b9c9d9e9fa0a1a2a3a4a5a6a7a8a9aaabacadaeafb0b1b2b3b4b5b6b7b8b9babbbcbdbebfc0c1c2c3c4c5c6c7c8c9cacbcccdcecfd0d1d2d3d4d5d6d7d8d9dadbdcdddedfe0e1e2e3e4e5e6e7e8e9eaebecedeeeff0f1f2f3f4f5f6f7f8f9fafbfcfdfeff":"1c3b3a102f770386e4836c99e370cf9bea00803f5e482357a4ae12d414a3e63b5d31e276f8fe4a8d66b317f9ac683f44680a86ac35adfc3345befecb4bb188fd5776926c49a3095eb108fd1098baec70aaa66999a72a82f27d848b21d4a741b0c5cd4d5fff9dac89aeba122961d03a757123e9870f8acf1000020887891429ca2a3e7a7d7df7b10355165c8b9a6d0a7de8b062c4500dc4cd120c0f7418dae3d0b5781c34803fa75421c790dfe1de1834f280d7667b327f6c8cd7557e12ac3a0f93ec05c52e0493ef31a12d3d9260f79a289d6a379bc70c50841473d1a8cc81ec583e9645e07b8d9670655ba5bbcfecc6dc3966380ad8fecb17b6ba02469a020a84e18e8f84252070c13e9f1f289be54fbc481457778f616015e1327a02b140f1505eb309326d68378f8374595c849d84f4c333ec4423885143cb47bd71c5edae9be69a2ffeceb1bec9de244fbe15992b11b77c040f12bd8f6a975a44a0f90c29a9abc3d4d893927284c58754cce294529f8614dcd2aba991925fedc4ae74ffac6e333b93eb4aff0479da9a410e4450e0dd7ae4c6e2910900575da401fc07059f645e8b7e9bfdef33943054ff84011493c27b3429eaedb4ed5376441a77ed43851ad77f16f541dfd269d50d6a5f14fb0aab1cbb4c1550be97f7ab4066193c4caa773dad38014bd2092fa755c824bb5e54c4f36ffda9fcea70b9c6e693e148c151"
|
||||
|
||||
AES-256-XTS Encrypt IEEE P1619/D16 Vector 11
|
||||
depends_on:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
aes_encrypt_xts:"27182818284590452353602874713526624977572470936999595749669676273141592653589793238462643383279502884197169399375105820974944592":"ffff0000000000000000000000000000":"000102030405060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e1f202122232425262728292a2b2c2d2e2f303132333435363738393a3b3c3d3e3f404142434445464748494a4b4c4d4e4f505152535455565758595a5b5c5d5e5f606162636465666768696a6b6c6d6e6f707172737475767778797a7b7c7d7e7f808182838485868788898a8b8c8d8e8f909192939495969798999a9b9c9d9e9fa0a1a2a3a4a5a6a7a8a9aaabacadaeafb0b1b2b3b4b5b6b7b8b9babbbcbdbebfc0c1c2c3c4c5c6c7c8c9cacbcccdcecfd0d1d2d3d4d5d6d7d8d9dadbdcdddedfe0e1e2e3e4e5e6e7e8e9eaebecedeeeff0f1f2f3f4f5f6f7f8f9fafbfcfdfeff000102030405060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e1f202122232425262728292a2b2c2d2e2f303132333435363738393a3b3c3d3e3f404142434445464748494a4b4c4d4e4f505152535455565758595a5b5c5d5e5f606162636465666768696a6b6c6d6e6f707172737475767778797a7b7c7d7e7f808182838485868788898a8b8c8d8e8f909192939495969798999a9b9c9d9e9fa0a1a2a3a4a5a6a7a8a9aaabacadaeafb0b1b2b3b4b5b6b7b8b9babbbcbdbebfc0c1c2c3c4c5c6c7c8c9cacbcccdcecfd0d1d2d3d4d5d6d7d8d9dadbdcdddedfe0e1e2e3e4e5e6e7e8e9eaebecedeeeff0f1f2f3f4f5f6f7f8f9fafbfcfdfeff":"77a31251618a15e6b92d1d66dffe7b50b50bad552305ba0217a610688eff7e11e1d0225438e093242d6db274fde801d4cae06f2092c728b2478559df58e837c2469ee4a4fa794e4bbc7f39bc026e3cb72c33b0888f25b4acf56a2a9804f1ce6d3d6e1dc6ca181d4b546179d55544aa7760c40d06741539c7e3cd9d2f6650b2013fd0eeb8c2b8e3d8d240ccae2d4c98320a7442e1c8d75a42d6e6cfa4c2eca1798d158c7aecdf82490f24bb9b38e108bcda12c3faf9a21141c3613b58367f922aaa26cd22f23d708dae699ad7cb40a8ad0b6e2784973dcb605684c08b8d6998c69aac049921871ebb65301a4619ca80ecb485a31d744223ce8ddc2394828d6a80470c092f5ba413c3378fa6054255c6f9df4495862bbb3287681f931b687c888abf844dfc8fc28331e579928cd12bd2390ae123cf03818d14dedde5c0c24c8ab018bfca75ca096f2d531f3d1619e785f1ada437cab92e980558b3dce1474afb75bfedbf8ff54cb2618e0244c9ac0d3c66fb51598cd2db11f9be39791abe447c63094f7c453b7ff87cb5bb36b7c79efb0872d17058b83b15ab0866ad8a58656c5a7e20dbdf308b2461d97c0ec0024a2715055249cf3b478ddd4740de654f75ca686e0d7345c69ed50cdc2a8b332b1f8824108ac937eb050585608ee734097fc09054fbff89eeaeea791f4a7ab1f9868294a4f9e27b42af8100cb9d59cef9645803"
|
||||
|
||||
AES-256-XTS Encrypt IEEE P1619/D16 Vector 12
|
||||
depends_on:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
aes_encrypt_xts:"27182818284590452353602874713526624977572470936999595749669676273141592653589793238462643383279502884197169399375105820974944592":"ffffff00000000000000000000000000":"000102030405060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e1f202122232425262728292a2b2c2d2e2f303132333435363738393a3b3c3d3e3f404142434445464748494a4b4c4d4e4f505152535455565758595a5b5c5d5e5f606162636465666768696a6b6c6d6e6f707172737475767778797a7b7c7d7e7f808182838485868788898a8b8c8d8e8f909192939495969798999a9b9c9d9e9fa0a1a2a3a4a5a6a7a8a9aaabacadaeafb0b1b2b3b4b5b6b7b8b9babbbcbdbebfc0c1c2c3c4c5c6c7c8c9cacbcccdcecfd0d1d2d3d4d5d6d7d8d9dadbdcdddedfe0e1e2e3e4e5e6e7e8e9eaebecedeeeff0f1f2f3f4f5f6f7f8f9fafbfcfdfeff000102030405060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e1f202122232425262728292a2b2c2d2e2f303132333435363738393a3b3c3d3e3f404142434445464748494a4b4c4d4e4f505152535455565758595a5b5c5d5e5f606162636465666768696a6b6c6d6e6f707172737475767778797a7b7c7d7e7f808182838485868788898a8b8c8d8e8f909192939495969798999a9b9c9d9e9fa0a1a2a3a4a5a6a7a8a9aaabacadaeafb0b1b2b3b4b5b6b7b8b9babbbcbdbebfc0c1c2c3c4c5c6c7c8c9cacbcccdcecfd0d1d2d3d4d5d6d7d8d9dadbdcdddedfe0e1e2e3e4e5e6e7e8e9eaebecedeeeff0f1f2f3f4f5f6f7f8f9fafbfcfdfeff":"e387aaa58ba483afa7e8eb469778317ecf4cf573aa9d4eac23f2cdf914e4e200a8b490e42ee646802dc6ee2b471b278195d60918ececb44bf79966f83faba0499298ebc699c0c8634715a320bb4f075d622e74c8c932004f25b41e361025b5a87815391f6108fc4afa6a05d9303c6ba68a128a55705d415985832fdeaae6c8e19110e84d1b1f199a2692119edc96132658f09da7c623efcec712537a3d94c0bf5d7e352ec94ae5797fdb377dc1551150721adf15bd26a8efc2fcaad56881fa9e62462c28f30ae1ceaca93c345cf243b73f542e2074a705bd2643bb9f7cc79bb6e7091ea6e232df0f9ad0d6cf502327876d82207abf2115cdacf6d5a48f6c1879a65b115f0f8b3cb3c59d15dd8c769bc014795a1837f3901b5845eb491adfefe097b1fa30a12fc1f65ba22905031539971a10f2f36c321bb51331cdefb39e3964c7ef079994f5b69b2edd83a71ef549971ee93f44eac3938fcdd61d01fa71799da3a8091c4c48aa9ed263ff0749df95d44fef6a0bb578ec69456aa5408ae32c7af08ad7ba8921287e3bbee31b767be06a0e705c864a769137df28292283ea81a2480241b44d9921cdbec1bc28dc1fda114bd8e5217ac9d8ebafa720e9da4f9ace231cc949e5b96fe76ffc21063fddc83a6b8679c00d35e09576a875305bed5f36ed242c8900dd1fa965bc950dfce09b132263a1eef52dd6888c309f5a7d712826"
|
||||
|
||||
AES-256-XTS Encrypt IEEE P1619/D16 Vector 13
|
||||
depends_on:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
aes_encrypt_xts:"27182818284590452353602874713526624977572470936999595749669676273141592653589793238462643383279502884197169399375105820974944592":"ffffffff000000000000000000000000":"000102030405060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e1f202122232425262728292a2b2c2d2e2f303132333435363738393a3b3c3d3e3f404142434445464748494a4b4c4d4e4f505152535455565758595a5b5c5d5e5f606162636465666768696a6b6c6d6e6f707172737475767778797a7b7c7d7e7f808182838485868788898a8b8c8d8e8f909192939495969798999a9b9c9d9e9fa0a1a2a3a4a5a6a7a8a9aaabacadaeafb0b1b2b3b4b5b6b7b8b9babbbcbdbebfc0c1c2c3c4c5c6c7c8c9cacbcccdcecfd0d1d2d3d4d5d6d7d8d9dadbdcdddedfe0e1e2e3e4e5e6e7e8e9eaebecedeeeff0f1f2f3f4f5f6f7f8f9fafbfcfdfeff000102030405060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e1f202122232425262728292a2b2c2d2e2f303132333435363738393a3b3c3d3e3f404142434445464748494a4b4c4d4e4f505152535455565758595a5b5c5d5e5f606162636465666768696a6b6c6d6e6f707172737475767778797a7b7c7d7e7f808182838485868788898a8b8c8d8e8f909192939495969798999a9b9c9d9e9fa0a1a2a3a4a5a6a7a8a9aaabacadaeafb0b1b2b3b4b5b6b7b8b9babbbcbdbebfc0c1c2c3c4c5c6c7c8c9cacbcccdcecfd0d1d2d3d4d5d6d7d8d9dadbdcdddedfe0e1e2e3e4e5e6e7e8e9eaebecedeeeff0f1f2f3f4f5f6f7f8f9fafbfcfdfeff":"bf53d2dade78e822a4d949a9bc6766b01b06a8ef70d26748c6a7fc36d80ae4c5520f7c4ab0ac8544424fa405162fef5a6b7f229498063618d39f0003cb5fb8d1c86b643497da1ff945c8d3bedeca4f479702a7a735f043ddb1d6aaade3c4a0ac7ca7f3fa5279bef56f82cd7a2f38672e824814e10700300a055e1630b8f1cb0e919f5e942010a416e2bf48cb46993d3cb6a51c19bacf864785a00bc2ecff15d350875b246ed53e68be6f55bd7e05cfc2b2ed6432198a6444b6d8c247fab941f569768b5c429366f1d3f00f0345b96123d56204c01c63b22ce78baf116e525ed90fdea39fa469494d3866c31e05f295ff21fea8d4e6e13d67e47ce722e9698a1c1048d68ebcde76b86fcf976eab8aa9790268b7068e017a8b9b749409514f1053027fd16c3786ea1bac5f15cb79711ee2abe82f5cf8b13ae73030ef5b9e4457e75d1304f988d62dd6fc4b94ed38ba831da4b7634971b6cd8ec325d9c61c00f1df73627ed3745a5e8489f3a95c69639c32cd6e1d537a85f75cc844726e8a72fc0077ad22000f1d5078f6b866318c668f1ad03d5a5fced5219f2eabbd0aa5c0f460d183f04404a0d6f469558e81fab24a167905ab4c7878502ad3e38fdbe62a41556cec37325759533ce8f25f367c87bb5578d667ae93f9e2fd99bcbc5f2fbba88cf6516139420fcff3b7361d86322c4bd84c82f335abb152c4a93411373aaa8220"
|
||||
|
||||
AES-256-XTS Encrypt IEEE P1619/D16 Vector 14
|
||||
depends_on:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
aes_encrypt_xts:"27182818284590452353602874713526624977572470936999595749669676273141592653589793238462643383279502884197169399375105820974944592":"ffffffffff0000000000000000000000":"000102030405060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e1f202122232425262728292a2b2c2d2e2f303132333435363738393a3b3c3d3e3f404142434445464748494a4b4c4d4e4f505152535455565758595a5b5c5d5e5f606162636465666768696a6b6c6d6e6f707172737475767778797a7b7c7d7e7f808182838485868788898a8b8c8d8e8f909192939495969798999a9b9c9d9e9fa0a1a2a3a4a5a6a7a8a9aaabacadaeafb0b1b2b3b4b5b6b7b8b9babbbcbdbebfc0c1c2c3c4c5c6c7c8c9cacbcccdcecfd0d1d2d3d4d5d6d7d8d9dadbdcdddedfe0e1e2e3e4e5e6e7e8e9eaebecedeeeff0f1f2f3f4f5f6f7f8f9fafbfcfdfeff000102030405060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e1f202122232425262728292a2b2c2d2e2f303132333435363738393a3b3c3d3e3f404142434445464748494a4b4c4d4e4f505152535455565758595a5b5c5d5e5f606162636465666768696a6b6c6d6e6f707172737475767778797a7b7c7d7e7f808182838485868788898a8b8c8d8e8f909192939495969798999a9b9c9d9e9fa0a1a2a3a4a5a6a7a8a9aaabacadaeafb0b1b2b3b4b5b6b7b8b9babbbcbdbebfc0c1c2c3c4c5c6c7c8c9cacbcccdcecfd0d1d2d3d4d5d6d7d8d9dadbdcdddedfe0e1e2e3e4e5e6e7e8e9eaebecedeeeff0f1f2f3f4f5f6f7f8f9fafbfcfdfeff":"64497e5a831e4a932c09be3e5393376daa599548b816031d224bbf50a818ed2350eae7e96087c8a0db51ad290bd00c1ac1620857635bf246c176ab463be30b808da548081ac847b158e1264be25bb0910bbc92647108089415d45fab1b3d2604e8a8eff1ae4020cfa39936b66827b23f371b92200be90251e6d73c5f86de5fd4a950781933d79a28272b782a2ec313efdfcc0628f43d744c2dc2ff3dcb66999b50c7ca895b0c64791eeaa5f29499fb1c026f84ce5b5c72ba1083cddb5ce45434631665c333b60b11593fb253c5179a2c8db813782a004856a1653011e93fb6d876c18366dd8683f53412c0c180f9c848592d593f8609ca736317d356e13e2bff3a9f59cd9aeb19cd482593d8c46128bb32423b37a9adfb482b99453fbe25a41bf6feb4aa0bef5ed24bf73c762978025482c13115e4015aac992e5613a3b5c2f685b84795cb6e9b2656d8c88157e52c42f978d8634c43d06fea928f2822e465aa6576e9bf419384506cc3ce3c54ac1a6f67dc66f3b30191e698380bc999b05abce19dc0c6dcc2dd001ec535ba18deb2df1a101023108318c75dc98611a09dc48a0acdec676fabdf222f07e026f059b672b56e5cbc8e1d21bbd867dd927212054681d70ea737134cdfce93b6f82ae22423274e58a0821cc5502e2d0ab4585e94de6975be5e0b4efce51cd3e70c25a1fbbbd609d273ad5b0d59631c531f6a0a57b9"
|
||||
|
||||
#
|
||||
# 128-bit keys with sector size not evenly divisible by 16 bytes
|
||||
#
|
||||
AES-128-XTS Encrypt IEEE P1619/D16 Vector 15
|
||||
aes_encrypt_xts:"fffefdfcfbfaf9f8f7f6f5f4f3f2f1f0bfbebdbcbbbab9b8b7b6b5b4b3b2b1b0":"9a785634120000000000000000000000":"000102030405060708090a0b0c0d0e0f10":"6c1625db4671522d3d7599601de7ca09ed"
|
||||
|
||||
AES-128-XTS Encrypt IEEE P1619/D16 Vector 16
|
||||
aes_encrypt_xts:"fffefdfcfbfaf9f8f7f6f5f4f3f2f1f0bfbebdbcbbbab9b8b7b6b5b4b3b2b1b0":"9a785634120000000000000000000000":"000102030405060708090a0b0c0d0e0f1011":"d069444b7a7e0cab09e24447d24deb1fedbf"
|
||||
|
||||
AES-128-XTS Encrypt IEEE P1619/D16 Vector 17
|
||||
aes_encrypt_xts:"fffefdfcfbfaf9f8f7f6f5f4f3f2f1f0bfbebdbcbbbab9b8b7b6b5b4b3b2b1b0":"9a785634120000000000000000000000":"000102030405060708090a0b0c0d0e0f101112":"e5df1351c0544ba1350b3363cd8ef4beedbf9d"
|
||||
|
||||
AES-128-XTS Encrypt IEEE P1619/D16 Vector 18
|
||||
aes_encrypt_xts:"fffefdfcfbfaf9f8f7f6f5f4f3f2f1f0bfbebdbcbbbab9b8b7b6b5b4b3b2b1b0":"9a785634120000000000000000000000":"000102030405060708090a0b0c0d0e0f10111213":"9d84c813f719aa2c7be3f66171c7c5c2edbf9dac"
|
||||
|
||||
AES-128-XTS Encrypt IEEE P1619/D16 Vector 19
|
||||
aes_encrypt_xts:"e0e1e2e3e4e5e6e7e8e9eaebecedeeefc0c1c2c3c4c5c6c7c8c9cacbcccdcecf":"21436587a90000000000000000000000":"000102030405060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e1f202122232425262728292a2b2c2d2e2f303132333435363738393a3b3c3d3e3f404142434445464748494a4b4c4d4e4f505152535455565758595a5b5c5d5e5f606162636465666768696a6b6c6d6e6f707172737475767778797a7b7c7d7e7f808182838485868788898a8b8c8d8e8f909192939495969798999a9b9c9d9e9fa0a1a2a3a4a5a6a7a8a9aaabacadaeafb0b1b2b3b4b5b6b7b8b9babbbcbdbebfc0c1c2c3c4c5c6c7c8c9cacbcccdcecfd0d1d2d3d4d5d6d7d8d9dadbdcdddedfe0e1e2e3e4e5e6e7e8e9eaebecedeeeff0f1f2f3f4f5f6f7f8f9fafbfcfdfeff000102030405060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e1f202122232425262728292a2b2c2d2e2f303132333435363738393a3b3c3d3e3f404142434445464748494a4b4c4d4e4f505152535455565758595a5b5c5d5e5f606162636465666768696a6b6c6d6e6f707172737475767778797a7b7c7d7e7f808182838485868788898a8b8c8d8e8f909192939495969798999a9b9c9d9e9fa0a1a2a3a4a5a6a7a8a9aaabacadaeafb0b1b2b3b4b5b6b7b8b9babbbcbdbebfc0c1c2c3c4c5c6c7c8c9cacbcccdcecfd0d1d2d3d4d5d6d7d8d9dadbdcdddedfe0e1e2e3e4e5e6e7e8e9eaebecedeeeff0f1f2f3f4f5f6f7f8f9fafbfcfdfeff":"38b45812ef43a05bd957e545907e223b954ab4aaf088303ad910eadf14b42be68b2461149d8c8ba85f992be970bc621f1b06573f63e867bf5875acafa04e42ccbd7bd3c2a0fb1fff791ec5ec36c66ae4ac1e806d81fbf709dbe29e471fad38549c8e66f5345d7c1eb94f405d1ec785cc6f6a68f6254dd8339f9d84057e01a17741990482999516b5611a38f41bb6478e6f173f320805dd71b1932fc333cb9ee39936beea9ad96fa10fb4112b901734ddad40bc1878995f8e11aee7d141a2f5d48b7a4e1e7f0b2c04830e69a4fd1378411c2f287edf48c6c4e5c247a19680f7fe41cefbd49b582106e3616cbbe4dfb2344b2ae9519391f3e0fb4922254b1d6d2d19c6d4d537b3a26f3bcc51588b32f3eca0829b6a5ac72578fb814fb43cf80d64a233e3f997a3f02683342f2b33d25b492536b93becb2f5e1a8b82f5b883342729e8ae09d16938841a21a97fb543eea3bbff59f13c1a18449e398701c1ad51648346cbc04c27bb2da3b93a1372ccae548fb53bee476f9e9c91773b1bb19828394d55d3e1a20ed69113a860b6829ffa847224604435070221b257e8dff783615d2cae4803a93aa4334ab482a0afac9c0aeda70b45a481df5dec5df8cc0f423c77a5fd46cd312021d4b438862419a791be03bb4d97c0e59578542531ba466a83baf92cefc151b5cc1611a167893819b63fb8a6b18e86de60290fa72b797b0ce59f3"
|
||||
|
||||
AES-128-XTS Decrypt IEEE P1619/D16 Vector 1
|
||||
aes_decrypt_xts:"0000000000000000000000000000000000000000000000000000000000000000":"00000000000000000000000000000000":"0000000000000000000000000000000000000000000000000000000000000000":"917cf69ebd68b2ec9b9fe9a3eadda692cd43d2f59598ed858c02c2652fbf922e"
|
||||
|
||||
AES-128-XTS Decrypt IEEE P1619/D16 Vector 2
|
||||
aes_decrypt_xts:"1111111111111111111111111111111122222222222222222222222222222222":"33333333330000000000000000000000":"4444444444444444444444444444444444444444444444444444444444444444":"c454185e6a16936e39334038acef838bfb186fff7480adc4289382ecd6d394f0"
|
||||
|
||||
AES-128-XTS Decrypt IEEE P1619/D16 Vector 3
|
||||
aes_decrypt_xts:"2718281828459045235360287471352631415926535897932384626433832795":"00000000000000000000000000000000":"000102030405060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e1f202122232425262728292a2b2c2d2e2f303132333435363738393a3b3c3d3e3f404142434445464748494a4b4c4d4e4f505152535455565758595a5b5c5d5e5f606162636465666768696a6b6c6d6e6f707172737475767778797a7b7c7d7e7f808182838485868788898a8b8c8d8e8f909192939495969798999a9b9c9d9e9fa0a1a2a3a4a5a6a7a8a9aaabacadaeafb0b1b2b3b4b5b6b7b8b9babbbcbdbebfc0c1c2c3c4c5c6c7c8c9cacbcccdcecfd0d1d2d3d4d5d6d7d8d9dadbdcdddedfe0e1e2e3e4e5e6e7e8e9eaebecedeeeff0f1f2f3f4f5f6f7f8f9fafbfcfdfeff000102030405060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e1f202122232425262728292a2b2c2d2e2f303132333435363738393a3b3c3d3e3f404142434445464748494a4b4c4d4e4f505152535455565758595a5b5c5d5e5f606162636465666768696a6b6c6d6e6f707172737475767778797a7b7c7d7e7f808182838485868788898a8b8c8d8e8f909192939495969798999a9b9c9d9e9fa0a1a2a3a4a5a6a7a8a9aaabacadaeafb0b1b2b3b4b5b6b7b8b9babbbcbdbebfc0c1c2c3c4c5c6c7c8c9cacbcccdcecfd0d1d2d3d4d5d6d7d8d9dadbdcdddedfe0e1e2e3e4e5e6e7e8e9eaebecedeeeff0f1f2f3f4f5f6f7f8f9fafbfcfdfeff":"27a7479befa1d476489f308cd4cfa6e2a96e4bbe3208ff25287dd3819616e89cc78cf7f5e543445f8333d8fa7f56000005279fa5d8b5e4ad40e736ddb4d35412328063fd2aab53e5ea1e0a9f332500a5df9487d07a5c92cc512c8866c7e860ce93fdf166a24912b422976146ae20ce846bb7dc9ba94a767aaef20c0d61ad02655ea92dc4c4e41a8952c651d33174be51a10c421110e6d81588ede82103a252d8a750e8768defffed9122810aaeb99f9172af82b604dc4b8e51bcb08235a6f4341332e4ca60482a4ba1a03b3e65008fc5da76b70bf1690db4eae29c5f1badd03c5ccf2a55d705ddcd86d449511ceb7ec30bf12b1fa35b913f9f747a8afd1b130e94bff94effd01a91735ca1726acd0b197c4e5b03393697e126826fb6bbde8ecc1e08298516e2c9ed03ff3c1b7860f6de76d4cecd94c8119855ef5297ca67e9f3e7ff72b1e99785ca0a7e7720c5b36dc6d72cac9574c8cbbc2f801e23e56fd344b07f22154beba0f08ce8891e643ed995c94d9a69c9f1b5f499027a78572aeebd74d20cc39881c213ee770b1010e4bea718846977ae119f7a023ab58cca0ad752afe656bb3c17256a9f6e9bf19fdd5a38fc82bbe872c5539edb609ef4f79c203ebb140f2e583cb2ad15b4aa5b655016a8449277dbd477ef2c8d6c017db738b18deb4a427d1923ce3ff262735779a418f20a282df920147beabe421ee5319d0568"
|
||||
|
||||
AES-128-XTS Decrypt IEEE P1619/D16 Vector 4
|
||||
aes_decrypt_xts:"2718281828459045235360287471352631415926535897932384626433832795":"00000000000000000000000000000000":"000102030405060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e1f202122232425262728292a2b2c2d2e2f303132333435363738393a3b3c3d3e3f404142434445464748494a4b4c4d4e4f505152535455565758595a5b5c5d5e5f606162636465666768696a6b6c6d6e6f707172737475767778797a7b7c7d7e7f808182838485868788898a8b8c8d8e8f909192939495969798999a9b9c9d9e9fa0a1a2a3a4a5a6a7a8a9aaabacadaeafb0b1b2b3b4b5b6b7b8b9babbbcbdbebfc0c1c2c3c4c5c6c7c8c9cacbcccdcecfd0d1d2d3d4d5d6d7d8d9dadbdcdddedfe0e1e2e3e4e5e6e7e8e9eaebecedeeeff0f1f2f3f4f5f6f7f8f9fafbfcfdfeff000102030405060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e1f202122232425262728292a2b2c2d2e2f303132333435363738393a3b3c3d3e3f404142434445464748494a4b4c4d4e4f505152535455565758595a5b5c5d5e5f606162636465666768696a6b6c6d6e6f707172737475767778797a7b7c7d7e7f808182838485868788898a8b8c8d8e8f909192939495969798999a9b9c9d9e9fa0a1a2a3a4a5a6a7a8a9aaabacadaeafb0b1b2b3b4b5b6b7b8b9babbbcbdbebfc0c1c2c3c4c5c6c7c8c9cacbcccdcecfd0d1d2d3d4d5d6d7d8d9dadbdcdddedfe0e1e2e3e4e5e6e7e8e9eaebecedeeeff0f1f2f3f4f5f6f7f8f9fafbfcfdfeff":"27a7479befa1d476489f308cd4cfa6e2a96e4bbe3208ff25287dd3819616e89cc78cf7f5e543445f8333d8fa7f56000005279fa5d8b5e4ad40e736ddb4d35412328063fd2aab53e5ea1e0a9f332500a5df9487d07a5c92cc512c8866c7e860ce93fdf166a24912b422976146ae20ce846bb7dc9ba94a767aaef20c0d61ad02655ea92dc4c4e41a8952c651d33174be51a10c421110e6d81588ede82103a252d8a750e8768defffed9122810aaeb99f9172af82b604dc4b8e51bcb08235a6f4341332e4ca60482a4ba1a03b3e65008fc5da76b70bf1690db4eae29c5f1badd03c5ccf2a55d705ddcd86d449511ceb7ec30bf12b1fa35b913f9f747a8afd1b130e94bff94effd01a91735ca1726acd0b197c4e5b03393697e126826fb6bbde8ecc1e08298516e2c9ed03ff3c1b7860f6de76d4cecd94c8119855ef5297ca67e9f3e7ff72b1e99785ca0a7e7720c5b36dc6d72cac9574c8cbbc2f801e23e56fd344b07f22154beba0f08ce8891e643ed995c94d9a69c9f1b5f499027a78572aeebd74d20cc39881c213ee770b1010e4bea718846977ae119f7a023ab58cca0ad752afe656bb3c17256a9f6e9bf19fdd5a38fc82bbe872c5539edb609ef4f79c203ebb140f2e583cb2ad15b4aa5b655016a8449277dbd477ef2c8d6c017db738b18deb4a427d1923ce3ff262735779a418f20a282df920147beabe421ee5319d0568"
|
||||
|
||||
AES-128-XTS Decrypt IEEE P1619/D16 Vector 5
|
||||
aes_decrypt_xts:"2718281828459045235360287471352631415926535897932384626433832795":"01000000000000000000000000000000":"27a7479befa1d476489f308cd4cfa6e2a96e4bbe3208ff25287dd3819616e89cc78cf7f5e543445f8333d8fa7f56000005279fa5d8b5e4ad40e736ddb4d35412328063fd2aab53e5ea1e0a9f332500a5df9487d07a5c92cc512c8866c7e860ce93fdf166a24912b422976146ae20ce846bb7dc9ba94a767aaef20c0d61ad02655ea92dc4c4e41a8952c651d33174be51a10c421110e6d81588ede82103a252d8a750e8768defffed9122810aaeb99f9172af82b604dc4b8e51bcb08235a6f4341332e4ca60482a4ba1a03b3e65008fc5da76b70bf1690db4eae29c5f1badd03c5ccf2a55d705ddcd86d449511ceb7ec30bf12b1fa35b913f9f747a8afd1b130e94bff94effd01a91735ca1726acd0b197c4e5b03393697e126826fb6bbde8ecc1e08298516e2c9ed03ff3c1b7860f6de76d4cecd94c8119855ef5297ca67e9f3e7ff72b1e99785ca0a7e7720c5b36dc6d72cac9574c8cbbc2f801e23e56fd344b07f22154beba0f08ce8891e643ed995c94d9a69c9f1b5f499027a78572aeebd74d20cc39881c213ee770b1010e4bea718846977ae119f7a023ab58cca0ad752afe656bb3c17256a9f6e9bf19fdd5a38fc82bbe872c5539edb609ef4f79c203ebb140f2e583cb2ad15b4aa5b655016a8449277dbd477ef2c8d6c017db738b18deb4a427d1923ce3ff262735779a418f20a282df920147beabe421ee5319d0568":"264d3ca8512194fec312c8c9891f279fefdd608d0c027b60483a3fa811d65ee59d52d9e40ec5672d81532b38b6b089ce951f0f9c35590b8b978d175213f329bb1c2fd30f2f7f30492a61a532a79f51d36f5e31a7c9a12c286082ff7d2394d18f783e1a8e72c722caaaa52d8f065657d2631fd25bfd8e5baad6e527d763517501c68c5edc3cdd55435c532d7125c8614deed9adaa3acade5888b87bef641c4c994c8091b5bcd387f3963fb5bc37aa922fbfe3df4e5b915e6eb514717bdd2a74079a5073f5c4bfd46adf7d282e7a393a52579d11a028da4d9cd9c77124f9648ee383b1ac763930e7162a8d37f350b2f74b8472cf09902063c6b32e8c2d9290cefbd7346d1c779a0df50edcde4531da07b099c638e83a755944df2aef1aa31752fd323dcb710fb4bfbb9d22b925bc3577e1b8949e729a90bbafeacf7f7879e7b1147e28ba0bae940db795a61b15ecf4df8db07b824bb062802cc98a9545bb2aaeed77cb3fc6db15dcd7d80d7d5bc406c4970a3478ada8899b329198eb61c193fb6275aa8ca340344a75a862aebe92eee1ce032fd950b47d7704a3876923b4ad62844bf4a09c4dbe8b4397184b7471360c9564880aedddb9baa4af2e75394b08cd32ff479c57a07d3eab5d54de5f9738b8d27f27a9f0ab11799d7b7ffefb2704c95c6ad12c39f1e867a4b7b1d7818a4b753dfd2a89ccb45e001a03a867b187f225dd"
|
||||
|
||||
AES-128-XTS Decrypt IEEE P1619/D16 Vector 6
|
||||
aes_decrypt_xts:"2718281828459045235360287471352631415926535897932384626433832795":"02000000000000000000000000000000":"264d3ca8512194fec312c8c9891f279fefdd608d0c027b60483a3fa811d65ee59d52d9e40ec5672d81532b38b6b089ce951f0f9c35590b8b978d175213f329bb1c2fd30f2f7f30492a61a532a79f51d36f5e31a7c9a12c286082ff7d2394d18f783e1a8e72c722caaaa52d8f065657d2631fd25bfd8e5baad6e527d763517501c68c5edc3cdd55435c532d7125c8614deed9adaa3acade5888b87bef641c4c994c8091b5bcd387f3963fb5bc37aa922fbfe3df4e5b915e6eb514717bdd2a74079a5073f5c4bfd46adf7d282e7a393a52579d11a028da4d9cd9c77124f9648ee383b1ac763930e7162a8d37f350b2f74b8472cf09902063c6b32e8c2d9290cefbd7346d1c779a0df50edcde4531da07b099c638e83a755944df2aef1aa31752fd323dcb710fb4bfbb9d22b925bc3577e1b8949e729a90bbafeacf7f7879e7b1147e28ba0bae940db795a61b15ecf4df8db07b824bb062802cc98a9545bb2aaeed77cb3fc6db15dcd7d80d7d5bc406c4970a3478ada8899b329198eb61c193fb6275aa8ca340344a75a862aebe92eee1ce032fd950b47d7704a3876923b4ad62844bf4a09c4dbe8b4397184b7471360c9564880aedddb9baa4af2e75394b08cd32ff479c57a07d3eab5d54de5f9738b8d27f27a9f0ab11799d7b7ffefb2704c95c6ad12c39f1e867a4b7b1d7818a4b753dfd2a89ccb45e001a03a867b187f225dd":"fa762a3680b76007928ed4a4f49a9456031b704782e65e16cecb54ed7d017b5e18abd67b338e81078f21edb7868d901ebe9c731a7c18b5e6dec1d6a72e078ac9a4262f860beefa14f4e821018272e411a951502b6e79066e84252c3346f3aa62344351a291d4bedc7a07618bdea2af63145cc7a4b8d4070691ae890cd65733e7946e9021a1dffc4c59f159425ee6d50ca9b135fa6162cea18a939838dc000fb386fad086acce5ac07cb2ece7fd580b00cfa5e98589631dc25e8e2a3daf2ffdec26531659912c9d8f7a15e5865ea8fb5816d6207052bd7128cd743c12c8118791a4736811935eb982a532349e31dd401e0b660a568cb1a4711f552f55ded59f1f15bf7196b3ca12a91e488ef59d64f3a02bf45239499ac6176ae321c4a211ec545365971c5d3f4f09d4eb139bfdf2073d33180b21002b65cc9865e76cb24cd92c874c24c18350399a936ab3637079295d76c417776b94efce3a0ef7206b15110519655c956cbd8b2489405ee2b09a6b6eebe0c53790a12a8998378b33a5b71159625f4ba49d2a2fdba59fbf0897bc7aabd8d707dc140a80f0f309f835d3da54ab584e501dfa0ee977fec543f74186a802b9a37adb3e8291eca04d66520d229e60401e7282bef486ae059aa70696e0e305d777140a7a883ecdcb69b9ff938e8a4231864c69ca2c2043bed007ff3e605e014bcf518138dc3a25c5e236171a2d01d6"
|
||||
|
||||
AES-128-XTS Decrypt IEEE P1619/D16 Vector 7
|
||||
aes_decrypt_xts:"2718281828459045235360287471352631415926535897932384626433832795":"fd000000000000000000000000000000":"8e41b78c390b5af9d758bb214a67e9f6bf7727b09ac6124084c37611398fa45daad94868600ed391fb1acd4857a95b466e62ef9f4b377244d1c152e7b30d731aad30c716d214b707aed99eb5b5e580b3e887cf7497465651d4b60e6042051da3693c3b78c14489543be8b6ad0ba629565bba202313ba7b0d0c94a3252b676f46cc02ce0f8a7d34c0ed229129673c1f61aed579d08a9203a25aac3a77e9db60267996db38df637356d9dcd1632e369939f2a29d89345c66e05066f1a3677aef18dea4113faeb629e46721a66d0a7e785d3e29af2594eb67dfa982affe0aac058f6e15864269b135418261fc3afb089472cf68c45dd7f231c6249ba0255e1e033833fc4d00a3fe02132d7bc3873614b8aee34273581ea0325c81f0270affa13641d052d36f0757d484014354d02d6883ca15c24d8c3956b1bd027bcf41f151fd8023c5340e5606f37e90fdb87c86fb4fa634b3718a30bace06a66eaf8f63c4aa3b637826a87fe8cfa44282e92cb1615af3a28e53bc74c7cba1a0977be9065d0c1a5dec6c54ae38d37f37aa35283e048e5530a85c4e7a29d7b92ec0c3169cdf2a805c7604bce60049b9fb7b8eaac10f51ae23794ceba68bb58112e293b9b692ca721b37c662f8574ed4dba6f88e170881c82cddc1034a0ca7e284bf0962b6b26292d836fa9f73c1ac770eef0f2d3a1eaf61d3e03555fd424eedd67e18a18094f888":"d55f684f81f4426e9fde92a5ff02df2ac896af63962888a97910c1379e20b0a3b1db613fb7fe2e07004329ea5c22bfd33e3dbe4cf58cc608c2c26c19a2e2fe22f98732c2b5cb844cc6c0702d91e1d50fc4382a7eba5635cd602432a2306ac4ce82f8d70c8d9bc15f918fe71e74c622d5cf71178bf6e0b9cc9f2b41dd8dbe441c41cd0c73a6dc47a348f6702f9d0e9b1b1431e948e299b9ec2272ab2c5f0c7be86affa5dec87a0bee81d3d50007edaa2bcfccb35605155ff36ed8edd4a40dcd4b243acd11b2b987bdbfaf91a7cac27e9c5aea525ee53de7b2d3332c8644402b823e94a7db26276d2d23aa07180f76b4fd29b9c0823099c9d62c519880aee7e9697617c1497d47bf3e571950311421b6b734d38b0db91eb85331b91ea9f61530f54512a5a52a4bad589eb69781d537f23297bb459bdad2948a29e1550bf4787e0be95bb173cf5fab17dab7a13a052a63453d97ccec1a321954886b7a1299faaeecae35c6eaaca753b041b5e5f093bf83397fd21dd6b3012066fcc058cc32c3b09d7562dee29509b5839392c9ff05f51f3166aaac4ac5f238038a3045e6f72e48ef0fe8bc675e82c318a268e43970271bf119b81bf6a982746554f84e72b9f00280a320a08142923c23c883423ff949827f29bbacdc1ccdb04938ce6098c95ba6b32528f4ef78eed778b2e122ddfd1cbdd11d1c0a6783e011fc536d63d053260637"
|
||||
|
||||
AES-128-XTS Decrypt IEEE P1619/D16 Vector 8
|
||||
aes_decrypt_xts:"2718281828459045235360287471352631415926535897932384626433832795":"fe000000000000000000000000000000":"d55f684f81f4426e9fde92a5ff02df2ac896af63962888a97910c1379e20b0a3b1db613fb7fe2e07004329ea5c22bfd33e3dbe4cf58cc608c2c26c19a2e2fe22f98732c2b5cb844cc6c0702d91e1d50fc4382a7eba5635cd602432a2306ac4ce82f8d70c8d9bc15f918fe71e74c622d5cf71178bf6e0b9cc9f2b41dd8dbe441c41cd0c73a6dc47a348f6702f9d0e9b1b1431e948e299b9ec2272ab2c5f0c7be86affa5dec87a0bee81d3d50007edaa2bcfccb35605155ff36ed8edd4a40dcd4b243acd11b2b987bdbfaf91a7cac27e9c5aea525ee53de7b2d3332c8644402b823e94a7db26276d2d23aa07180f76b4fd29b9c0823099c9d62c519880aee7e9697617c1497d47bf3e571950311421b6b734d38b0db91eb85331b91ea9f61530f54512a5a52a4bad589eb69781d537f23297bb459bdad2948a29e1550bf4787e0be95bb173cf5fab17dab7a13a052a63453d97ccec1a321954886b7a1299faaeecae35c6eaaca753b041b5e5f093bf83397fd21dd6b3012066fcc058cc32c3b09d7562dee29509b5839392c9ff05f51f3166aaac4ac5f238038a3045e6f72e48ef0fe8bc675e82c318a268e43970271bf119b81bf6a982746554f84e72b9f00280a320a08142923c23c883423ff949827f29bbacdc1ccdb04938ce6098c95ba6b32528f4ef78eed778b2e122ddfd1cbdd11d1c0a6783e011fc536d63d053260637":"72efc1ebfe1ee25975a6eb3aa8589dda2b261f1c85bdab442a9e5b2dd1d7c3957a16fc08e526d4b1223f1b1232a11af274c3d70dac57f83e0983c498f1a6f1aecb021c3e70085a1e527f1ce41ee5911a82020161529cd82773762daf5459de94a0a82adae7e1703c808543c29ed6fb32d9e004327c1355180c995a07741493a09c21ba01a387882da4f62534b87bb15d60d197201c0fd3bf30c1500a3ecfecdd66d8721f90bcc4c17ee925c61b0a03727a9c0d5f5ca462fbfa0af1c2513a9d9d4b5345bd27a5f6e653f751693e6b6a2b8ead57d511e00e58c45b7b8d005af79288f5c7c22fd4f1bf7a898b03a5634c6a1ae3f9fae5de4f296a2896b23e7ed43ed14fa5a2803f4d28f0d3ffcf24757677aebdb47bb388378708948a8d4126ed1839e0da29a537a8c198b3c66ab00712dd261674bf45a73d67f76914f830ca014b65596f27e4cf62de66125a5566df9975155628b400fbfb3a29040ed50faffdbb18aece7c5c44693260aab386c0a37b11b114f1c415aebb653be468179428d43a4d8bc3ec38813eca30a13cf1bb18d524f1992d44d8b1a42ea30b22e6c95b199d8d182f8840b09d059585c31ad691fa0619ff038aca2c39a943421157361717c49d322028a74648113bd8c9d7ec77cf3c89c1ec8718ceff8516d96b34c3c614f10699c9abc4ed0411506223bea16af35c883accdbe1104eef0cfdb54e12fb230a"
|
||||
|
||||
AES-128-XTS Decrypt IEEE P1619/D16 Vector 9
|
||||
aes_decrypt_xts:"2718281828459045235360287471352631415926535897932384626433832795":"ff000000000000000000000000000000":"72efc1ebfe1ee25975a6eb3aa8589dda2b261f1c85bdab442a9e5b2dd1d7c3957a16fc08e526d4b1223f1b1232a11af274c3d70dac57f83e0983c498f1a6f1aecb021c3e70085a1e527f1ce41ee5911a82020161529cd82773762daf5459de94a0a82adae7e1703c808543c29ed6fb32d9e004327c1355180c995a07741493a09c21ba01a387882da4f62534b87bb15d60d197201c0fd3bf30c1500a3ecfecdd66d8721f90bcc4c17ee925c61b0a03727a9c0d5f5ca462fbfa0af1c2513a9d9d4b5345bd27a5f6e653f751693e6b6a2b8ead57d511e00e58c45b7b8d005af79288f5c7c22fd4f1bf7a898b03a5634c6a1ae3f9fae5de4f296a2896b23e7ed43ed14fa5a2803f4d28f0d3ffcf24757677aebdb47bb388378708948a8d4126ed1839e0da29a537a8c198b3c66ab00712dd261674bf45a73d67f76914f830ca014b65596f27e4cf62de66125a5566df9975155628b400fbfb3a29040ed50faffdbb18aece7c5c44693260aab386c0a37b11b114f1c415aebb653be468179428d43a4d8bc3ec38813eca30a13cf1bb18d524f1992d44d8b1a42ea30b22e6c95b199d8d182f8840b09d059585c31ad691fa0619ff038aca2c39a943421157361717c49d322028a74648113bd8c9d7ec77cf3c89c1ec8718ceff8516d96b34c3c614f10699c9abc4ed0411506223bea16af35c883accdbe1104eef0cfdb54e12fb230a":"3260ae8dad1f4a32c5cafe3ab0eb95549d461a67ceb9e5aa2d3afb62dece0553193ba50c75be251e08d1d08f1088576c7efdfaaf3f459559571e12511753b07af073f35da06af0ce0bbf6b8f5ccc5cea500ec1b211bd51f63b606bf6528796ca12173ba39b8935ee44ccce646f90a45bf9ccc567f0ace13dc2d53ebeedc81f58b2e41179dddf0d5a5c42f5d8506c1a5d2f8f59f3ea873cbcd0eec19acbf325423bd3dcb8c2b1bf1d1eaed0eba7f0698e4314fbeb2f1566d1b9253008cbccf45a2b0d9c5c9c21474f4076e02be26050b99dee4fd68a4cf890e496e4fcae7b70f94ea5a9062da0daeba1993d2ccd1dd3c244b8428801495a58b216547e7e847c46d1d756377b6242d2e5fb83bf752b54e0df71e889f3a2bb0f4c10805bf3c590376e3c24e22ff57f7fa965577375325cea5d920db94b9c336b455f6e894c01866fe9fbb8c8d3f70a2957285f6dfb5dcd8cbf54782f8fe7766d4723819913ac773421e3a31095866bad22c86a6036b2518b2059b4229d18c8c2ccbdf906c6cc6e82464ee57bddb0bebcb1dc645325bfb3e665ef7251082c88ebb1cf203bd779fdd38675713c8daadd17e1cabee432b09787b6ddf3304e38b731b45df5df51b78fcfb3d32466028d0ba36555e7e11ab0ee0666061d1645d962444bc47a38188930a84b4d561395c73c087021927ca638b7afc8a8679ccb84c26555440ec7f10445cd"
|
||||
|
||||
AES-256-XTS Decrypt IEEE P1619/D16 Vector 10
|
||||
depends_on:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
aes_decrypt_xts:"27182818284590452353602874713526624977572470936999595749669676273141592653589793238462643383279502884197169399375105820974944592":"ff000000000000000000000000000000":"000102030405060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e1f202122232425262728292a2b2c2d2e2f303132333435363738393a3b3c3d3e3f404142434445464748494a4b4c4d4e4f505152535455565758595a5b5c5d5e5f606162636465666768696a6b6c6d6e6f707172737475767778797a7b7c7d7e7f808182838485868788898a8b8c8d8e8f909192939495969798999a9b9c9d9e9fa0a1a2a3a4a5a6a7a8a9aaabacadaeafb0b1b2b3b4b5b6b7b8b9babbbcbdbebfc0c1c2c3c4c5c6c7c8c9cacbcccdcecfd0d1d2d3d4d5d6d7d8d9dadbdcdddedfe0e1e2e3e4e5e6e7e8e9eaebecedeeeff0f1f2f3f4f5f6f7f8f9fafbfcfdfeff000102030405060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e1f202122232425262728292a2b2c2d2e2f303132333435363738393a3b3c3d3e3f404142434445464748494a4b4c4d4e4f505152535455565758595a5b5c5d5e5f606162636465666768696a6b6c6d6e6f707172737475767778797a7b7c7d7e7f808182838485868788898a8b8c8d8e8f909192939495969798999a9b9c9d9e9fa0a1a2a3a4a5a6a7a8a9aaabacadaeafb0b1b2b3b4b5b6b7b8b9babbbcbdbebfc0c1c2c3c4c5c6c7c8c9cacbcccdcecfd0d1d2d3d4d5d6d7d8d9dadbdcdddedfe0e1e2e3e4e5e6e7e8e9eaebecedeeeff0f1f2f3f4f5f6f7f8f9fafbfcfdfeff":"1c3b3a102f770386e4836c99e370cf9bea00803f5e482357a4ae12d414a3e63b5d31e276f8fe4a8d66b317f9ac683f44680a86ac35adfc3345befecb4bb188fd5776926c49a3095eb108fd1098baec70aaa66999a72a82f27d848b21d4a741b0c5cd4d5fff9dac89aeba122961d03a757123e9870f8acf1000020887891429ca2a3e7a7d7df7b10355165c8b9a6d0a7de8b062c4500dc4cd120c0f7418dae3d0b5781c34803fa75421c790dfe1de1834f280d7667b327f6c8cd7557e12ac3a0f93ec05c52e0493ef31a12d3d9260f79a289d6a379bc70c50841473d1a8cc81ec583e9645e07b8d9670655ba5bbcfecc6dc3966380ad8fecb17b6ba02469a020a84e18e8f84252070c13e9f1f289be54fbc481457778f616015e1327a02b140f1505eb309326d68378f8374595c849d84f4c333ec4423885143cb47bd71c5edae9be69a2ffeceb1bec9de244fbe15992b11b77c040f12bd8f6a975a44a0f90c29a9abc3d4d893927284c58754cce294529f8614dcd2aba991925fedc4ae74ffac6e333b93eb4aff0479da9a410e4450e0dd7ae4c6e2910900575da401fc07059f645e8b7e9bfdef33943054ff84011493c27b3429eaedb4ed5376441a77ed43851ad77f16f541dfd269d50d6a5f14fb0aab1cbb4c1550be97f7ab4066193c4caa773dad38014bd2092fa755c824bb5e54c4f36ffda9fcea70b9c6e693e148c151"
|
||||
|
||||
AES-256-XTS Decrypt IEEE P1619/D16 Vector 11
|
||||
depends_on:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
aes_decrypt_xts:"27182818284590452353602874713526624977572470936999595749669676273141592653589793238462643383279502884197169399375105820974944592":"ffff0000000000000000000000000000":"000102030405060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e1f202122232425262728292a2b2c2d2e2f303132333435363738393a3b3c3d3e3f404142434445464748494a4b4c4d4e4f505152535455565758595a5b5c5d5e5f606162636465666768696a6b6c6d6e6f707172737475767778797a7b7c7d7e7f808182838485868788898a8b8c8d8e8f909192939495969798999a9b9c9d9e9fa0a1a2a3a4a5a6a7a8a9aaabacadaeafb0b1b2b3b4b5b6b7b8b9babbbcbdbebfc0c1c2c3c4c5c6c7c8c9cacbcccdcecfd0d1d2d3d4d5d6d7d8d9dadbdcdddedfe0e1e2e3e4e5e6e7e8e9eaebecedeeeff0f1f2f3f4f5f6f7f8f9fafbfcfdfeff000102030405060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e1f202122232425262728292a2b2c2d2e2f303132333435363738393a3b3c3d3e3f404142434445464748494a4b4c4d4e4f505152535455565758595a5b5c5d5e5f606162636465666768696a6b6c6d6e6f707172737475767778797a7b7c7d7e7f808182838485868788898a8b8c8d8e8f909192939495969798999a9b9c9d9e9fa0a1a2a3a4a5a6a7a8a9aaabacadaeafb0b1b2b3b4b5b6b7b8b9babbbcbdbebfc0c1c2c3c4c5c6c7c8c9cacbcccdcecfd0d1d2d3d4d5d6d7d8d9dadbdcdddedfe0e1e2e3e4e5e6e7e8e9eaebecedeeeff0f1f2f3f4f5f6f7f8f9fafbfcfdfeff":"77a31251618a15e6b92d1d66dffe7b50b50bad552305ba0217a610688eff7e11e1d0225438e093242d6db274fde801d4cae06f2092c728b2478559df58e837c2469ee4a4fa794e4bbc7f39bc026e3cb72c33b0888f25b4acf56a2a9804f1ce6d3d6e1dc6ca181d4b546179d55544aa7760c40d06741539c7e3cd9d2f6650b2013fd0eeb8c2b8e3d8d240ccae2d4c98320a7442e1c8d75a42d6e6cfa4c2eca1798d158c7aecdf82490f24bb9b38e108bcda12c3faf9a21141c3613b58367f922aaa26cd22f23d708dae699ad7cb40a8ad0b6e2784973dcb605684c08b8d6998c69aac049921871ebb65301a4619ca80ecb485a31d744223ce8ddc2394828d6a80470c092f5ba413c3378fa6054255c6f9df4495862bbb3287681f931b687c888abf844dfc8fc28331e579928cd12bd2390ae123cf03818d14dedde5c0c24c8ab018bfca75ca096f2d531f3d1619e785f1ada437cab92e980558b3dce1474afb75bfedbf8ff54cb2618e0244c9ac0d3c66fb51598cd2db11f9be39791abe447c63094f7c453b7ff87cb5bb36b7c79efb0872d17058b83b15ab0866ad8a58656c5a7e20dbdf308b2461d97c0ec0024a2715055249cf3b478ddd4740de654f75ca686e0d7345c69ed50cdc2a8b332b1f8824108ac937eb050585608ee734097fc09054fbff89eeaeea791f4a7ab1f9868294a4f9e27b42af8100cb9d59cef9645803"
|
||||
|
||||
AES-256-XTS Decrypt IEEE P1619/D16 Vector 12
|
||||
depends_on:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
aes_decrypt_xts:"27182818284590452353602874713526624977572470936999595749669676273141592653589793238462643383279502884197169399375105820974944592":"ffffff00000000000000000000000000":"000102030405060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e1f202122232425262728292a2b2c2d2e2f303132333435363738393a3b3c3d3e3f404142434445464748494a4b4c4d4e4f505152535455565758595a5b5c5d5e5f606162636465666768696a6b6c6d6e6f707172737475767778797a7b7c7d7e7f808182838485868788898a8b8c8d8e8f909192939495969798999a9b9c9d9e9fa0a1a2a3a4a5a6a7a8a9aaabacadaeafb0b1b2b3b4b5b6b7b8b9babbbcbdbebfc0c1c2c3c4c5c6c7c8c9cacbcccdcecfd0d1d2d3d4d5d6d7d8d9dadbdcdddedfe0e1e2e3e4e5e6e7e8e9eaebecedeeeff0f1f2f3f4f5f6f7f8f9fafbfcfdfeff000102030405060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e1f202122232425262728292a2b2c2d2e2f303132333435363738393a3b3c3d3e3f404142434445464748494a4b4c4d4e4f505152535455565758595a5b5c5d5e5f606162636465666768696a6b6c6d6e6f707172737475767778797a7b7c7d7e7f808182838485868788898a8b8c8d8e8f909192939495969798999a9b9c9d9e9fa0a1a2a3a4a5a6a7a8a9aaabacadaeafb0b1b2b3b4b5b6b7b8b9babbbcbdbebfc0c1c2c3c4c5c6c7c8c9cacbcccdcecfd0d1d2d3d4d5d6d7d8d9dadbdcdddedfe0e1e2e3e4e5e6e7e8e9eaebecedeeeff0f1f2f3f4f5f6f7f8f9fafbfcfdfeff":"e387aaa58ba483afa7e8eb469778317ecf4cf573aa9d4eac23f2cdf914e4e200a8b490e42ee646802dc6ee2b471b278195d60918ececb44bf79966f83faba0499298ebc699c0c8634715a320bb4f075d622e74c8c932004f25b41e361025b5a87815391f6108fc4afa6a05d9303c6ba68a128a55705d415985832fdeaae6c8e19110e84d1b1f199a2692119edc96132658f09da7c623efcec712537a3d94c0bf5d7e352ec94ae5797fdb377dc1551150721adf15bd26a8efc2fcaad56881fa9e62462c28f30ae1ceaca93c345cf243b73f542e2074a705bd2643bb9f7cc79bb6e7091ea6e232df0f9ad0d6cf502327876d82207abf2115cdacf6d5a48f6c1879a65b115f0f8b3cb3c59d15dd8c769bc014795a1837f3901b5845eb491adfefe097b1fa30a12fc1f65ba22905031539971a10f2f36c321bb51331cdefb39e3964c7ef079994f5b69b2edd83a71ef549971ee93f44eac3938fcdd61d01fa71799da3a8091c4c48aa9ed263ff0749df95d44fef6a0bb578ec69456aa5408ae32c7af08ad7ba8921287e3bbee31b767be06a0e705c864a769137df28292283ea81a2480241b44d9921cdbec1bc28dc1fda114bd8e5217ac9d8ebafa720e9da4f9ace231cc949e5b96fe76ffc21063fddc83a6b8679c00d35e09576a875305bed5f36ed242c8900dd1fa965bc950dfce09b132263a1eef52dd6888c309f5a7d712826"
|
||||
|
||||
AES-256-XTS Decrypt IEEE P1619/D16 Vector 13
|
||||
depends_on:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
aes_decrypt_xts:"27182818284590452353602874713526624977572470936999595749669676273141592653589793238462643383279502884197169399375105820974944592":"ffffffff000000000000000000000000":"000102030405060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e1f202122232425262728292a2b2c2d2e2f303132333435363738393a3b3c3d3e3f404142434445464748494a4b4c4d4e4f505152535455565758595a5b5c5d5e5f606162636465666768696a6b6c6d6e6f707172737475767778797a7b7c7d7e7f808182838485868788898a8b8c8d8e8f909192939495969798999a9b9c9d9e9fa0a1a2a3a4a5a6a7a8a9aaabacadaeafb0b1b2b3b4b5b6b7b8b9babbbcbdbebfc0c1c2c3c4c5c6c7c8c9cacbcccdcecfd0d1d2d3d4d5d6d7d8d9dadbdcdddedfe0e1e2e3e4e5e6e7e8e9eaebecedeeeff0f1f2f3f4f5f6f7f8f9fafbfcfdfeff000102030405060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e1f202122232425262728292a2b2c2d2e2f303132333435363738393a3b3c3d3e3f404142434445464748494a4b4c4d4e4f505152535455565758595a5b5c5d5e5f606162636465666768696a6b6c6d6e6f707172737475767778797a7b7c7d7e7f808182838485868788898a8b8c8d8e8f909192939495969798999a9b9c9d9e9fa0a1a2a3a4a5a6a7a8a9aaabacadaeafb0b1b2b3b4b5b6b7b8b9babbbcbdbebfc0c1c2c3c4c5c6c7c8c9cacbcccdcecfd0d1d2d3d4d5d6d7d8d9dadbdcdddedfe0e1e2e3e4e5e6e7e8e9eaebecedeeeff0f1f2f3f4f5f6f7f8f9fafbfcfdfeff":"bf53d2dade78e822a4d949a9bc6766b01b06a8ef70d26748c6a7fc36d80ae4c5520f7c4ab0ac8544424fa405162fef5a6b7f229498063618d39f0003cb5fb8d1c86b643497da1ff945c8d3bedeca4f479702a7a735f043ddb1d6aaade3c4a0ac7ca7f3fa5279bef56f82cd7a2f38672e824814e10700300a055e1630b8f1cb0e919f5e942010a416e2bf48cb46993d3cb6a51c19bacf864785a00bc2ecff15d350875b246ed53e68be6f55bd7e05cfc2b2ed6432198a6444b6d8c247fab941f569768b5c429366f1d3f00f0345b96123d56204c01c63b22ce78baf116e525ed90fdea39fa469494d3866c31e05f295ff21fea8d4e6e13d67e47ce722e9698a1c1048d68ebcde76b86fcf976eab8aa9790268b7068e017a8b9b749409514f1053027fd16c3786ea1bac5f15cb79711ee2abe82f5cf8b13ae73030ef5b9e4457e75d1304f988d62dd6fc4b94ed38ba831da4b7634971b6cd8ec325d9c61c00f1df73627ed3745a5e8489f3a95c69639c32cd6e1d537a85f75cc844726e8a72fc0077ad22000f1d5078f6b866318c668f1ad03d5a5fced5219f2eabbd0aa5c0f460d183f04404a0d6f469558e81fab24a167905ab4c7878502ad3e38fdbe62a41556cec37325759533ce8f25f367c87bb5578d667ae93f9e2fd99bcbc5f2fbba88cf6516139420fcff3b7361d86322c4bd84c82f335abb152c4a93411373aaa8220"
|
||||
|
||||
AES-256-XTS Decrypt IEEE P1619/D16 Vector 14
|
||||
depends_on:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
aes_decrypt_xts:"27182818284590452353602874713526624977572470936999595749669676273141592653589793238462643383279502884197169399375105820974944592":"ffffffffff0000000000000000000000":"000102030405060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e1f202122232425262728292a2b2c2d2e2f303132333435363738393a3b3c3d3e3f404142434445464748494a4b4c4d4e4f505152535455565758595a5b5c5d5e5f606162636465666768696a6b6c6d6e6f707172737475767778797a7b7c7d7e7f808182838485868788898a8b8c8d8e8f909192939495969798999a9b9c9d9e9fa0a1a2a3a4a5a6a7a8a9aaabacadaeafb0b1b2b3b4b5b6b7b8b9babbbcbdbebfc0c1c2c3c4c5c6c7c8c9cacbcccdcecfd0d1d2d3d4d5d6d7d8d9dadbdcdddedfe0e1e2e3e4e5e6e7e8e9eaebecedeeeff0f1f2f3f4f5f6f7f8f9fafbfcfdfeff000102030405060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e1f202122232425262728292a2b2c2d2e2f303132333435363738393a3b3c3d3e3f404142434445464748494a4b4c4d4e4f505152535455565758595a5b5c5d5e5f606162636465666768696a6b6c6d6e6f707172737475767778797a7b7c7d7e7f808182838485868788898a8b8c8d8e8f909192939495969798999a9b9c9d9e9fa0a1a2a3a4a5a6a7a8a9aaabacadaeafb0b1b2b3b4b5b6b7b8b9babbbcbdbebfc0c1c2c3c4c5c6c7c8c9cacbcccdcecfd0d1d2d3d4d5d6d7d8d9dadbdcdddedfe0e1e2e3e4e5e6e7e8e9eaebecedeeeff0f1f2f3f4f5f6f7f8f9fafbfcfdfeff":"64497e5a831e4a932c09be3e5393376daa599548b816031d224bbf50a818ed2350eae7e96087c8a0db51ad290bd00c1ac1620857635bf246c176ab463be30b808da548081ac847b158e1264be25bb0910bbc92647108089415d45fab1b3d2604e8a8eff1ae4020cfa39936b66827b23f371b92200be90251e6d73c5f86de5fd4a950781933d79a28272b782a2ec313efdfcc0628f43d744c2dc2ff3dcb66999b50c7ca895b0c64791eeaa5f29499fb1c026f84ce5b5c72ba1083cddb5ce45434631665c333b60b11593fb253c5179a2c8db813782a004856a1653011e93fb6d876c18366dd8683f53412c0c180f9c848592d593f8609ca736317d356e13e2bff3a9f59cd9aeb19cd482593d8c46128bb32423b37a9adfb482b99453fbe25a41bf6feb4aa0bef5ed24bf73c762978025482c13115e4015aac992e5613a3b5c2f685b84795cb6e9b2656d8c88157e52c42f978d8634c43d06fea928f2822e465aa6576e9bf419384506cc3ce3c54ac1a6f67dc66f3b30191e698380bc999b05abce19dc0c6dcc2dd001ec535ba18deb2df1a101023108318c75dc98611a09dc48a0acdec676fabdf222f07e026f059b672b56e5cbc8e1d21bbd867dd927212054681d70ea737134cdfce93b6f82ae22423274e58a0821cc5502e2d0ab4585e94de6975be5e0b4efce51cd3e70c25a1fbbbd609d273ad5b0d59631c531f6a0a57b9"
|
||||
|
||||
AES-128-XTS Decrypt IEEE P1619/D16 Vector 15
|
||||
aes_decrypt_xts:"fffefdfcfbfaf9f8f7f6f5f4f3f2f1f0bfbebdbcbbbab9b8b7b6b5b4b3b2b1b0":"9a785634120000000000000000000000":"000102030405060708090a0b0c0d0e0f10":"6c1625db4671522d3d7599601de7ca09ed"
|
||||
|
||||
AES-128-XTS Decrypt IEEE P1619/D16 Vector 16
|
||||
aes_decrypt_xts:"fffefdfcfbfaf9f8f7f6f5f4f3f2f1f0bfbebdbcbbbab9b8b7b6b5b4b3b2b1b0":"9a785634120000000000000000000000":"000102030405060708090a0b0c0d0e0f1011":"d069444b7a7e0cab09e24447d24deb1fedbf"
|
||||
|
||||
AES-128-XTS Decrypt IEEE P1619/D16 Vector 17
|
||||
aes_decrypt_xts:"fffefdfcfbfaf9f8f7f6f5f4f3f2f1f0bfbebdbcbbbab9b8b7b6b5b4b3b2b1b0":"9a785634120000000000000000000000":"000102030405060708090a0b0c0d0e0f101112":"e5df1351c0544ba1350b3363cd8ef4beedbf9d"
|
||||
|
||||
AES-128-XTS Decrypt IEEE P1619/D16 Vector 18
|
||||
aes_decrypt_xts:"fffefdfcfbfaf9f8f7f6f5f4f3f2f1f0bfbebdbcbbbab9b8b7b6b5b4b3b2b1b0":"9a785634120000000000000000000000":"000102030405060708090a0b0c0d0e0f10111213":"9d84c813f719aa2c7be3f66171c7c5c2edbf9dac"
|
||||
|
||||
AES-128-XTS Decrypt IEEE P1619/D16 Vector 19
|
||||
aes_decrypt_xts:"e0e1e2e3e4e5e6e7e8e9eaebecedeeefc0c1c2c3c4c5c6c7c8c9cacbcccdcecf":"21436587a90000000000000000000000":"000102030405060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e1f202122232425262728292a2b2c2d2e2f303132333435363738393a3b3c3d3e3f404142434445464748494a4b4c4d4e4f505152535455565758595a5b5c5d5e5f606162636465666768696a6b6c6d6e6f707172737475767778797a7b7c7d7e7f808182838485868788898a8b8c8d8e8f909192939495969798999a9b9c9d9e9fa0a1a2a3a4a5a6a7a8a9aaabacadaeafb0b1b2b3b4b5b6b7b8b9babbbcbdbebfc0c1c2c3c4c5c6c7c8c9cacbcccdcecfd0d1d2d3d4d5d6d7d8d9dadbdcdddedfe0e1e2e3e4e5e6e7e8e9eaebecedeeeff0f1f2f3f4f5f6f7f8f9fafbfcfdfeff000102030405060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e1f202122232425262728292a2b2c2d2e2f303132333435363738393a3b3c3d3e3f404142434445464748494a4b4c4d4e4f505152535455565758595a5b5c5d5e5f606162636465666768696a6b6c6d6e6f707172737475767778797a7b7c7d7e7f808182838485868788898a8b8c8d8e8f909192939495969798999a9b9c9d9e9fa0a1a2a3a4a5a6a7a8a9aaabacadaeafb0b1b2b3b4b5b6b7b8b9babbbcbdbebfc0c1c2c3c4c5c6c7c8c9cacbcccdcecfd0d1d2d3d4d5d6d7d8d9dadbdcdddedfe0e1e2e3e4e5e6e7e8e9eaebecedeeeff0f1f2f3f4f5f6f7f8f9fafbfcfdfeff":"38b45812ef43a05bd957e545907e223b954ab4aaf088303ad910eadf14b42be68b2461149d8c8ba85f992be970bc621f1b06573f63e867bf5875acafa04e42ccbd7bd3c2a0fb1fff791ec5ec36c66ae4ac1e806d81fbf709dbe29e471fad38549c8e66f5345d7c1eb94f405d1ec785cc6f6a68f6254dd8339f9d84057e01a17741990482999516b5611a38f41bb6478e6f173f320805dd71b1932fc333cb9ee39936beea9ad96fa10fb4112b901734ddad40bc1878995f8e11aee7d141a2f5d48b7a4e1e7f0b2c04830e69a4fd1378411c2f287edf48c6c4e5c247a19680f7fe41cefbd49b582106e3616cbbe4dfb2344b2ae9519391f3e0fb4922254b1d6d2d19c6d4d537b3a26f3bcc51588b32f3eca0829b6a5ac72578fb814fb43cf80d64a233e3f997a3f02683342f2b33d25b492536b93becb2f5e1a8b82f5b883342729e8ae09d16938841a21a97fb543eea3bbff59f13c1a18449e398701c1ad51648346cbc04c27bb2da3b93a1372ccae548fb53bee476f9e9c91773b1bb19828394d55d3e1a20ed69113a860b6829ffa847224604435070221b257e8dff783615d2cae4803a93aa4334ab482a0afac9c0aeda70b45a481df5dec5df8cc0f423c77a5fd46cd312021d4b438862419a791be03bb4d97c0e59578542531ba466a83baf92cefc151b5cc1611a167893819b63fb8a6b18e86de60290fa72b797b0ce59f3"
|
||||
119
vendor/mbedtls/tests/suites/test_suite_alignment.data
vendored
Normal file
119
vendor/mbedtls/tests/suites/test_suite_alignment.data
vendored
Normal file
@@ -0,0 +1,119 @@
|
||||
Aligned 16-bit access
|
||||
mbedtls_unaligned_access:16:0
|
||||
|
||||
Aligned 32-bit access
|
||||
mbedtls_unaligned_access:32:0
|
||||
|
||||
Aligned 64-bit access
|
||||
mbedtls_unaligned_access:64:0
|
||||
|
||||
Unaligned 16-bit access offset=1
|
||||
mbedtls_unaligned_access:16:1
|
||||
|
||||
Unaligned 32-bit access offset=1
|
||||
mbedtls_unaligned_access:32:1
|
||||
|
||||
Unaligned 64-bit access offset=1
|
||||
mbedtls_unaligned_access:64:1
|
||||
|
||||
Unaligned 16-bit access offset=4
|
||||
mbedtls_unaligned_access:16:4
|
||||
|
||||
Unaligned 32-bit access offset=4
|
||||
mbedtls_unaligned_access:32:4
|
||||
|
||||
Unaligned 64-bit access offset=4
|
||||
mbedtls_unaligned_access:64:4
|
||||
|
||||
Unaligned 16-bit access offset=7
|
||||
mbedtls_unaligned_access:16:7
|
||||
|
||||
Unaligned 32-bit access offset=7
|
||||
mbedtls_unaligned_access:32:7
|
||||
|
||||
Unaligned 64-bit access offset=7
|
||||
mbedtls_unaligned_access:64:7
|
||||
|
||||
Unaligned 16-bit access offset=8
|
||||
mbedtls_unaligned_access:16:8
|
||||
|
||||
Unaligned 32-bit access offset=8
|
||||
mbedtls_unaligned_access:32:8
|
||||
|
||||
Unaligned 64-bit access offset=8
|
||||
mbedtls_unaligned_access:64:8
|
||||
|
||||
Byteswap 16
|
||||
mbedtls_byteswap:"0100":16:"0001"
|
||||
|
||||
Byteswap 16 with truncation
|
||||
mbedtls_byteswap:"0706050403020100":16:"0001"
|
||||
|
||||
Byteswap 16 all-zero
|
||||
mbedtls_byteswap:"0000":16:"0000"
|
||||
|
||||
Byteswap 16 all-ones
|
||||
mbedtls_byteswap:"ffffffffffffffff":16:"ffff"
|
||||
|
||||
Byteswap 32
|
||||
mbedtls_byteswap:"03020100":32:"00010203"
|
||||
|
||||
Byteswap 32 with truncation
|
||||
mbedtls_byteswap:"0706050403020100":32:"00010203"
|
||||
|
||||
Byteswap 32 all-zero
|
||||
mbedtls_byteswap:"00000000":32:"00000000"
|
||||
|
||||
Byteswap 32 all-ones
|
||||
mbedtls_byteswap:"ffffffffffffffff":32:"ffffffff"
|
||||
|
||||
Byteswap 64
|
||||
mbedtls_byteswap:"0706050403020100":64:"01020304050607"
|
||||
|
||||
Byteswap 64 all-zero
|
||||
mbedtls_byteswap:"0000000000000000":64:"0000000000000000"
|
||||
|
||||
Byteswap 64 all-ones
|
||||
mbedtls_byteswap:"ffffffffffffffff":64:"ffffffffffffffff"
|
||||
|
||||
Get individual bytes
|
||||
get_byte
|
||||
|
||||
Endian-aware unaligned 16-bit BE offset=0
|
||||
unaligned_access_endian_aware:16:0:1
|
||||
|
||||
Endian-aware unaligned 16-bit BE offset=3
|
||||
unaligned_access_endian_aware:16:3:1
|
||||
|
||||
Endian-aware unaligned 16-bit LE offset=0
|
||||
unaligned_access_endian_aware:16:0:0
|
||||
|
||||
Endian-aware unaligned 16-bit LE offset=3
|
||||
unaligned_access_endian_aware:16:3:0
|
||||
|
||||
Endian-aware unaligned 32-bit BE offset=0
|
||||
unaligned_access_endian_aware:32:0:1
|
||||
|
||||
Endian-aware unaligned 32-bit BE offset=3
|
||||
unaligned_access_endian_aware:32:3:1
|
||||
|
||||
Endian-aware unaligned 32-bit LE offset=0
|
||||
unaligned_access_endian_aware:32:0:0
|
||||
|
||||
Endian-aware unaligned 32-bit LE offset=3
|
||||
unaligned_access_endian_aware:32:3:0
|
||||
|
||||
Endian-aware unaligned 64-bit BE offset=0
|
||||
unaligned_access_endian_aware:64:0:1
|
||||
|
||||
Endian-aware unaligned 64-bit BE offset=3
|
||||
unaligned_access_endian_aware:64:3:1
|
||||
|
||||
Endian-aware unaligned 64-bit LE offset=0
|
||||
unaligned_access_endian_aware:64:0:0
|
||||
|
||||
Endian-aware unaligned 64-bit LE offset=3
|
||||
unaligned_access_endian_aware:64:3:0
|
||||
|
||||
Big-endian check
|
||||
mbedtls_is_big_endian
|
||||
360
vendor/mbedtls/tests/suites/test_suite_alignment.function
vendored
Normal file
360
vendor/mbedtls/tests/suites/test_suite_alignment.function
vendored
Normal file
@@ -0,0 +1,360 @@
|
||||
/* BEGIN_HEADER */
|
||||
#include <alignment.h>
|
||||
|
||||
#include <stdint.h>
|
||||
|
||||
#if defined(__clang__)
|
||||
#pragma clang diagnostic ignored "-Wunreachable-code"
|
||||
#endif
|
||||
|
||||
/*
|
||||
* Convert a string of the form "abcd" (case-insensitive) to a uint64_t.
|
||||
*/
|
||||
static int parse_hex_string(char *hex_string, uint64_t *result)
|
||||
{
|
||||
uint8_t raw[8] = { 0 };
|
||||
size_t olen;
|
||||
if (mbedtls_test_unhexify(raw, sizeof(raw), hex_string, &olen) != 0) {
|
||||
return 0;
|
||||
}
|
||||
|
||||
*result = 0;
|
||||
for (size_t i = 0; i < olen; i++) {
|
||||
*result |= ((uint64_t) raw[i]) << ((olen - i - 1) * 8);
|
||||
}
|
||||
return 1;
|
||||
}
|
||||
|
||||
/* END_HEADER */
|
||||
|
||||
/* BEGIN_CASE */
|
||||
void mbedtls_unaligned_access(int size, int offset)
|
||||
{
|
||||
/* Define 64-bit aligned raw byte array */
|
||||
uint64_t raw[2];
|
||||
|
||||
/* Populate with known data */
|
||||
uint8_t *x = (uint8_t *) raw;
|
||||
for (size_t i = 0; i < sizeof(raw); i++) {
|
||||
x[i] = (uint8_t) i;
|
||||
}
|
||||
|
||||
TEST_ASSERT(size == 16 || size == 32 || size == 64);
|
||||
|
||||
uint64_t r = 0;
|
||||
switch (size) {
|
||||
case 16:
|
||||
r = mbedtls_get_unaligned_uint16(x + offset);
|
||||
break;
|
||||
case 32:
|
||||
r = mbedtls_get_unaligned_uint32(x + offset);
|
||||
break;
|
||||
case 64:
|
||||
r = mbedtls_get_unaligned_uint64(x + offset);
|
||||
break;
|
||||
}
|
||||
|
||||
/* Define expected result by manually aligning the raw bytes, and
|
||||
* reading back with a normal pointer access. */
|
||||
uint64_t raw_aligned_64;
|
||||
uint16_t *raw_aligned_16 = (uint16_t *) &raw_aligned_64;
|
||||
uint32_t *raw_aligned_32 = (uint32_t *) &raw_aligned_64;
|
||||
memcpy(&raw_aligned_64, ((uint8_t *) &raw) + offset, size / 8);
|
||||
/* Make a 16/32/64 byte read from the aligned location, and copy to expected */
|
||||
uint64_t expected = 0;
|
||||
switch (size) {
|
||||
case 16:
|
||||
expected = *raw_aligned_16;
|
||||
break;
|
||||
case 32:
|
||||
expected = *raw_aligned_32;
|
||||
break;
|
||||
case 64:
|
||||
expected = raw_aligned_64;
|
||||
break;
|
||||
}
|
||||
|
||||
TEST_EQUAL(r, expected);
|
||||
|
||||
/* Write sentinel to the part of the array we will test writing to */
|
||||
for (size_t i = 0; i < (size_t) (size / 8); i++) {
|
||||
x[i + offset] = 0xff;
|
||||
}
|
||||
/*
|
||||
* Write back to the array with mbedtls_put_unaligned_uint16 and validate
|
||||
* that the array is unchanged as a result.
|
||||
*/
|
||||
switch (size) {
|
||||
case 16:
|
||||
mbedtls_put_unaligned_uint16(x + offset, r);
|
||||
break;
|
||||
case 32:
|
||||
mbedtls_put_unaligned_uint32(x + offset, r);
|
||||
break;
|
||||
case 64:
|
||||
mbedtls_put_unaligned_uint64(x + offset, r);
|
||||
break;
|
||||
}
|
||||
for (size_t i = 0; i < sizeof(x); i++) {
|
||||
TEST_EQUAL(x[i], (uint8_t) i);
|
||||
}
|
||||
}
|
||||
/* END_CASE */
|
||||
|
||||
/* BEGIN_CASE */
|
||||
void mbedtls_byteswap(char *input_str, int size, char *expected_str)
|
||||
{
|
||||
uint64_t input = 0, expected = 0;
|
||||
TEST_ASSERT(parse_hex_string(input_str, &input));
|
||||
TEST_ASSERT(parse_hex_string(expected_str, &expected));
|
||||
|
||||
/* Check against expected result */
|
||||
uint64_t r = 0;
|
||||
switch (size) {
|
||||
case 16:
|
||||
r = MBEDTLS_BSWAP16(input);
|
||||
break;
|
||||
case 32:
|
||||
r = MBEDTLS_BSWAP32(input);
|
||||
break;
|
||||
case 64:
|
||||
r = MBEDTLS_BSWAP64(input);
|
||||
break;
|
||||
default:
|
||||
TEST_FAIL("size must be 16, 32 or 64");
|
||||
}
|
||||
TEST_EQUAL(r, expected);
|
||||
|
||||
/*
|
||||
* Check byte by byte by extracting bytes from opposite ends of
|
||||
* input and r.
|
||||
*/
|
||||
for (size_t i = 0; i < (size_t) (size / 8); i++) {
|
||||
size_t s1 = i * 8;
|
||||
size_t s2 = ((size / 8 - 1) - i) * 8;
|
||||
uint64_t a = (input & ((uint64_t) 0xff << s1)) >> s1;
|
||||
uint64_t b = (r & ((uint64_t) 0xff << s2)) >> s2;
|
||||
TEST_EQUAL(a, b);
|
||||
}
|
||||
|
||||
/* Check BSWAP(BSWAP(x)) == x */
|
||||
switch (size) {
|
||||
case 16:
|
||||
r = MBEDTLS_BSWAP16(r);
|
||||
TEST_EQUAL(r, input & 0xffff);
|
||||
break;
|
||||
case 32:
|
||||
r = MBEDTLS_BSWAP32(r);
|
||||
TEST_EQUAL(r, input & 0xffffffff);
|
||||
break;
|
||||
case 64:
|
||||
r = MBEDTLS_BSWAP64(r);
|
||||
TEST_EQUAL(r, input);
|
||||
break;
|
||||
}
|
||||
}
|
||||
/* END_CASE */
|
||||
|
||||
/* BEGIN_CASE */
|
||||
void get_byte()
|
||||
{
|
||||
uint8_t data[16];
|
||||
|
||||
for (size_t i = 0; i < sizeof(data); i++) {
|
||||
data[i] = (uint8_t) i;
|
||||
}
|
||||
|
||||
uint64_t u64 = 0x0706050403020100;
|
||||
for (size_t b = 0; b < 8; b++) {
|
||||
uint8_t expected = b;
|
||||
uint8_t actual = b + 1;
|
||||
switch (b) {
|
||||
case 0:
|
||||
actual = MBEDTLS_BYTE_0(u64);
|
||||
break;
|
||||
case 1:
|
||||
actual = MBEDTLS_BYTE_1(u64);
|
||||
break;
|
||||
case 2:
|
||||
actual = MBEDTLS_BYTE_2(u64);
|
||||
break;
|
||||
case 3:
|
||||
actual = MBEDTLS_BYTE_3(u64);
|
||||
break;
|
||||
case 4:
|
||||
actual = MBEDTLS_BYTE_4(u64);
|
||||
break;
|
||||
case 5:
|
||||
actual = MBEDTLS_BYTE_5(u64);
|
||||
break;
|
||||
case 6:
|
||||
actual = MBEDTLS_BYTE_6(u64);
|
||||
break;
|
||||
case 7:
|
||||
actual = MBEDTLS_BYTE_7(u64);
|
||||
break;
|
||||
}
|
||||
TEST_EQUAL(actual, expected);
|
||||
}
|
||||
|
||||
uint32_t u32 = 0x03020100;
|
||||
for (size_t b = 0; b < 4; b++) {
|
||||
uint8_t expected = b;
|
||||
uint8_t actual = b + 1;
|
||||
switch (b) {
|
||||
case 0:
|
||||
actual = MBEDTLS_BYTE_0(u32);
|
||||
break;
|
||||
case 1:
|
||||
actual = MBEDTLS_BYTE_1(u32);
|
||||
break;
|
||||
case 2:
|
||||
actual = MBEDTLS_BYTE_2(u32);
|
||||
break;
|
||||
case 3:
|
||||
actual = MBEDTLS_BYTE_3(u32);
|
||||
break;
|
||||
}
|
||||
TEST_EQUAL(actual, expected);
|
||||
}
|
||||
|
||||
uint16_t u16 = 0x0100;
|
||||
for (size_t b = 0; b < 2; b++) {
|
||||
uint8_t expected = b;
|
||||
uint8_t actual = b + 1;
|
||||
switch (b) {
|
||||
case 0:
|
||||
actual = MBEDTLS_BYTE_0(u16);
|
||||
break;
|
||||
case 1:
|
||||
actual = MBEDTLS_BYTE_1(u16);
|
||||
break;
|
||||
}
|
||||
TEST_EQUAL(actual, expected);
|
||||
}
|
||||
|
||||
uint8_t u8 = 0x01;
|
||||
uint8_t actual = MBEDTLS_BYTE_0(u8);
|
||||
TEST_EQUAL(actual, u8);
|
||||
}
|
||||
/* END_CASE */
|
||||
|
||||
/* BEGIN_CASE */
|
||||
void unaligned_access_endian_aware(int size, int offset, int big_endian)
|
||||
{
|
||||
TEST_ASSERT(size == 16 || size == 24 || size == 32 || size == 64);
|
||||
TEST_ASSERT(offset >= 0 && offset < 8);
|
||||
|
||||
/* Define 64-bit aligned raw byte array */
|
||||
uint64_t raw[2];
|
||||
/* Populate with known data: x == { 0, 1, 2, ... } */
|
||||
uint8_t *x = (uint8_t *) raw;
|
||||
for (size_t i = 0; i < sizeof(raw); i++) {
|
||||
x[i] = (uint8_t) i;
|
||||
}
|
||||
|
||||
uint64_t read = 0;
|
||||
if (big_endian) {
|
||||
switch (size) {
|
||||
case 16:
|
||||
read = MBEDTLS_GET_UINT16_BE(x, offset);
|
||||
break;
|
||||
case 24:
|
||||
read = MBEDTLS_GET_UINT24_BE(x, offset);
|
||||
break;
|
||||
case 32:
|
||||
read = MBEDTLS_GET_UINT32_BE(x, offset);
|
||||
break;
|
||||
case 64:
|
||||
read = MBEDTLS_GET_UINT64_BE(x, offset);
|
||||
break;
|
||||
}
|
||||
} else {
|
||||
switch (size) {
|
||||
case 16:
|
||||
read = MBEDTLS_GET_UINT16_LE(x, offset);
|
||||
break;
|
||||
case 24:
|
||||
read = MBEDTLS_GET_UINT24_LE(x, offset);
|
||||
break;
|
||||
case 32:
|
||||
read = MBEDTLS_GET_UINT32_LE(x, offset);
|
||||
break;
|
||||
case 64:
|
||||
read = MBEDTLS_GET_UINT64_LE(x, offset);
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
/* Build up expected value byte by byte, in either big or little endian format */
|
||||
uint64_t expected = 0;
|
||||
for (size_t i = 0; i < (size_t) (size / 8); i++) {
|
||||
uint64_t b = x[i + offset];
|
||||
uint8_t shift = (big_endian) ? (8 * ((size / 8 - 1) - i)) : (8 * i);
|
||||
expected |= b << shift;
|
||||
}
|
||||
|
||||
/* Verify read */
|
||||
TEST_EQUAL(read, expected);
|
||||
|
||||
/* Test writing back to memory. First write sentinel */
|
||||
for (size_t i = 0; i < (size_t) (size / 8); i++) {
|
||||
x[i + offset] = 0xff;
|
||||
}
|
||||
/* Overwrite sentinel with endian-aware write macro */
|
||||
if (big_endian) {
|
||||
switch (size) {
|
||||
case 16:
|
||||
MBEDTLS_PUT_UINT16_BE(read, x, offset);
|
||||
break;
|
||||
case 24:
|
||||
MBEDTLS_PUT_UINT24_BE(read, x, offset);
|
||||
break;
|
||||
case 32:
|
||||
MBEDTLS_PUT_UINT32_BE(read, x, offset);
|
||||
break;
|
||||
case 64:
|
||||
MBEDTLS_PUT_UINT64_BE(read, x, offset);
|
||||
break;
|
||||
}
|
||||
} else {
|
||||
switch (size) {
|
||||
case 16:
|
||||
MBEDTLS_PUT_UINT16_LE(read, x, offset);
|
||||
break;
|
||||
case 24:
|
||||
MBEDTLS_PUT_UINT24_LE(read, x, offset);
|
||||
break;
|
||||
case 32:
|
||||
MBEDTLS_PUT_UINT32_LE(read, x, offset);
|
||||
break;
|
||||
case 64:
|
||||
MBEDTLS_PUT_UINT64_LE(read, x, offset);
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
/* Verify write - check memory is correct */
|
||||
for (size_t i = 0; i < sizeof(raw); i++) {
|
||||
TEST_EQUAL(x[i], (uint8_t) i);
|
||||
}
|
||||
}
|
||||
/* END_CASE */
|
||||
|
||||
/* BEGIN_CASE */
|
||||
void mbedtls_is_big_endian()
|
||||
{
|
||||
uint16_t check = 0x1234;
|
||||
uint8_t *p = (uint8_t *) ✓
|
||||
|
||||
if (MBEDTLS_IS_BIG_ENDIAN) {
|
||||
/* Big-endian: data stored MSB first, i.e. p == { 0x12, 0x34 } */
|
||||
TEST_EQUAL(p[0], 0x12);
|
||||
TEST_EQUAL(p[1], 0x34);
|
||||
} else {
|
||||
/* Little-endian: data stored LSB first, i.e. p == { 0x34, 0x12 } */
|
||||
TEST_EQUAL(p[0], 0x34);
|
||||
TEST_EQUAL(p[1], 0x12);
|
||||
}
|
||||
}
|
||||
/* END_CASE */
|
||||
92
vendor/mbedtls/tests/suites/test_suite_aria.data
vendored
Normal file
92
vendor/mbedtls/tests/suites/test_suite_aria.data
vendored
Normal file
@@ -0,0 +1,92 @@
|
||||
ARIA - Invalid parameters
|
||||
aria_invalid_param:
|
||||
|
||||
ARIA-128-ECB Encrypt - RFC 5794
|
||||
aria_encrypt_ecb:"000102030405060708090a0b0c0d0e0f":"00112233445566778899aabbccddeeff":"d718fbd6ab644c739da95f3be6451778":0
|
||||
|
||||
ARIA-128-ECB Decrypt - RFC 5794
|
||||
aria_decrypt_ecb:"000102030405060708090a0b0c0d0e0f":"d718fbd6ab644c739da95f3be6451778":"00112233445566778899aabbccddeeff":0
|
||||
|
||||
ARIA-192-ECB Encrypt - RFC 5794
|
||||
aria_encrypt_ecb:"000102030405060708090a0b0c0d0e0f1011121314151617":"00112233445566778899aabbccddeeff":"26449c1805dbe7aa25a468ce263a9e79":0
|
||||
|
||||
ARIA-192-ECB Decrypt - RFC 5794
|
||||
aria_decrypt_ecb:"000102030405060708090a0b0c0d0e0f1011121314151617":"26449c1805dbe7aa25a468ce263a9e79":"00112233445566778899aabbccddeeff":0
|
||||
|
||||
ARIA-256-ECB Encrypt - RFC 5794
|
||||
aria_encrypt_ecb:"000102030405060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e1f":"00112233445566778899aabbccddeeff":"f92bd7c79fb72e2f2b8f80c1972d24fc":0
|
||||
|
||||
ARIA-256-ECB Decrypt - RFC 5794
|
||||
aria_decrypt_ecb:"000102030405060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e1f":"f92bd7c79fb72e2f2b8f80c1972d24fc":"00112233445566778899aabbccddeeff":0
|
||||
|
||||
ARIA-128-ECB Encrypt - Official Test Vectors 1.0
|
||||
aria_encrypt_ecb:"00112233445566778899aabbccddeeff":"11111111aaaaaaaa11111111bbbbbbbb11111111cccccccc11111111dddddddd22222222aaaaaaaa22222222bbbbbbbb22222222cccccccc22222222dddddddd33333333aaaaaaaa33333333bbbbbbbb33333333cccccccc33333333dddddddd44444444aaaaaaaa44444444bbbbbbbb44444444cccccccc44444444dddddddd55555555aaaaaaaa55555555bbbbbbbb55555555cccccccc55555555dddddddd":"c6ecd08e22c30abdb215cf74e2075e6e29ccaac63448708d331b2f816c51b17d9e133d1528dbf0af5787c7f3a3f5c2bf6b6f345907a3055612ce072ff54de7d788424da6e8ccfe8172b391be499354165665ba7864917000a6eeb2ecb4a698edfc7887e7f556377614ab0a282293e6d884dbb84206cdb16ed1754e77a1f243fd086953f752cc1e46c7c794ae85537dcaec8dd721f55c93b6edfe2adea43873e8":0
|
||||
|
||||
ARIA-128-ECB Decrypt - Official Test Vectors 1.0
|
||||
aria_decrypt_ecb:"00112233445566778899aabbccddeeff":"c6ecd08e22c30abdb215cf74e2075e6e29ccaac63448708d331b2f816c51b17d9e133d1528dbf0af5787c7f3a3f5c2bf6b6f345907a3055612ce072ff54de7d788424da6e8ccfe8172b391be499354165665ba7864917000a6eeb2ecb4a698edfc7887e7f556377614ab0a282293e6d884dbb84206cdb16ed1754e77a1f243fd086953f752cc1e46c7c794ae85537dcaec8dd721f55c93b6edfe2adea43873e8":"11111111aaaaaaaa11111111bbbbbbbb11111111cccccccc11111111dddddddd22222222aaaaaaaa22222222bbbbbbbb22222222cccccccc22222222dddddddd33333333aaaaaaaa33333333bbbbbbbb33333333cccccccc33333333dddddddd44444444aaaaaaaa44444444bbbbbbbb44444444cccccccc44444444dddddddd55555555aaaaaaaa55555555bbbbbbbb55555555cccccccc55555555dddddddd":0
|
||||
|
||||
ARIA-192-ECB Encrypt - Official Test Vectors 1.0
|
||||
aria_encrypt_ecb:"00112233445566778899aabbccddeeff0011223344556677":"11111111aaaaaaaa11111111bbbbbbbb11111111cccccccc11111111dddddddd22222222aaaaaaaa22222222bbbbbbbb22222222cccccccc22222222dddddddd33333333aaaaaaaa33333333bbbbbbbb33333333cccccccc33333333dddddddd44444444aaaaaaaa44444444bbbbbbbb44444444cccccccc44444444dddddddd55555555aaaaaaaa55555555bbbbbbbb55555555cccccccc55555555dddddddd":"8d1470625f59ebacb0e55b534b3e462b5f23d33bff78f46c3c15911f4a21809aaccad80b4bda915aa9dae6bcebe06a6c83f77fd5391acfe61de2f646b5d447edbfd5bb49b12fbb9145b227895a757b2af1f7188734863d7b8b6ede5a5b2f06a0a233c8523d2db778fb31b0e311f32700152f33861e9d040c83b5eb40cd88ea49975709dc629365a189f78a3ec40345fc6a5a307a8f9a4413091e007eca5645a0":0
|
||||
|
||||
ARIA-192-ECB Decrypt - Official Test Vectors 1.0
|
||||
aria_decrypt_ecb:"00112233445566778899aabbccddeeff0011223344556677":"8d1470625f59ebacb0e55b534b3e462b5f23d33bff78f46c3c15911f4a21809aaccad80b4bda915aa9dae6bcebe06a6c83f77fd5391acfe61de2f646b5d447edbfd5bb49b12fbb9145b227895a757b2af1f7188734863d7b8b6ede5a5b2f06a0a233c8523d2db778fb31b0e311f32700152f33861e9d040c83b5eb40cd88ea49975709dc629365a189f78a3ec40345fc6a5a307a8f9a4413091e007eca5645a0":"11111111aaaaaaaa11111111bbbbbbbb11111111cccccccc11111111dddddddd22222222aaaaaaaa22222222bbbbbbbb22222222cccccccc22222222dddddddd33333333aaaaaaaa33333333bbbbbbbb33333333cccccccc33333333dddddddd44444444aaaaaaaa44444444bbbbbbbb44444444cccccccc44444444dddddddd55555555aaaaaaaa55555555bbbbbbbb55555555cccccccc55555555dddddddd":0
|
||||
|
||||
ARIA-256-ECB Encrypt - Official Test Vectors 1.0
|
||||
aria_encrypt_ecb:"00112233445566778899aabbccddeeff00112233445566778899aabbccddeeff":"11111111aaaaaaaa11111111bbbbbbbb11111111cccccccc11111111dddddddd22222222aaaaaaaa22222222bbbbbbbb22222222cccccccc22222222dddddddd33333333aaaaaaaa33333333bbbbbbbb33333333cccccccc33333333dddddddd44444444aaaaaaaa44444444bbbbbbbb44444444cccccccc44444444dddddddd55555555aaaaaaaa55555555bbbbbbbb55555555cccccccc55555555dddddddd":"58a875e6044ad7fffa4f58420f7f442d8e191016f28e79aefc01e204773280d7018e5f7a938ec30711719953bae86542cd7ebc752474c1a5f6eaaace2a7e29462ee7dfa5afdb84177ead95ccd4b4bb6e1ed17b9534cff0a5fc2941429cfee2ee49c7adbeb7e9d1b0d2a8531d942079596a27ed79f5b1dd13ecd604b07a48885a3afa0627a0e4e60a3c703af292f1baa77b702f16c54aa74bc727ea95c7468b00":0
|
||||
|
||||
ARIA-256-ECB Decrypt - Official Test Vectors 1.0
|
||||
aria_decrypt_ecb:"00112233445566778899aabbccddeeff00112233445566778899aabbccddeeff":"58a875e6044ad7fffa4f58420f7f442d8e191016f28e79aefc01e204773280d7018e5f7a938ec30711719953bae86542cd7ebc752474c1a5f6eaaace2a7e29462ee7dfa5afdb84177ead95ccd4b4bb6e1ed17b9534cff0a5fc2941429cfee2ee49c7adbeb7e9d1b0d2a8531d942079596a27ed79f5b1dd13ecd604b07a48885a3afa0627a0e4e60a3c703af292f1baa77b702f16c54aa74bc727ea95c7468b00":"11111111aaaaaaaa11111111bbbbbbbb11111111cccccccc11111111dddddddd22222222aaaaaaaa22222222bbbbbbbb22222222cccccccc22222222dddddddd33333333aaaaaaaa33333333bbbbbbbb33333333cccccccc33333333dddddddd44444444aaaaaaaa44444444bbbbbbbb44444444cccccccc44444444dddddddd55555555aaaaaaaa55555555bbbbbbbb55555555cccccccc55555555dddddddd":0
|
||||
|
||||
ARIA-128-CBC Encrypt - Official Test Vectors 1.0
|
||||
aria_encrypt_cbc:"00112233445566778899aabbccddeeff":"0f1e2d3c4b5a69788796a5b4c3d2e1f0":"11111111aaaaaaaa11111111bbbbbbbb11111111cccccccc11111111dddddddd22222222aaaaaaaa22222222bbbbbbbb22222222cccccccc22222222dddddddd33333333aaaaaaaa33333333bbbbbbbb33333333cccccccc33333333dddddddd44444444aaaaaaaa44444444bbbbbbbb44444444cccccccc44444444dddddddd55555555aaaaaaaa55555555bbbbbbbb55555555cccccccc55555555dddddddd":"49d61860b14909109cef0d22a9268134fadf9fb23151e9645fba75018bdb1538b53334634bbf7d4cd4b5377033060c155fe3948ca75de1031e1d85619e0ad61eb419a866b3c2dbfd10a4ed18b22149f75897f0b8668b0c1c542c687778835fb7cd46e45f85eaa7072437dd9fa6793d6f8d4ccefc4eb1ac641ac1bd30b18c6d64c49bca137eb21c2e04da62712ca2b4f540c57112c38791852cfac7a5d19ed83a":0
|
||||
|
||||
ARIA-128-CBC Decrypt - Official Test Vectors 1.0
|
||||
aria_decrypt_cbc:"00112233445566778899aabbccddeeff":"0f1e2d3c4b5a69788796a5b4c3d2e1f0":"49d61860b14909109cef0d22a9268134fadf9fb23151e9645fba75018bdb1538b53334634bbf7d4cd4b5377033060c155fe3948ca75de1031e1d85619e0ad61eb419a866b3c2dbfd10a4ed18b22149f75897f0b8668b0c1c542c687778835fb7cd46e45f85eaa7072437dd9fa6793d6f8d4ccefc4eb1ac641ac1bd30b18c6d64c49bca137eb21c2e04da62712ca2b4f540c57112c38791852cfac7a5d19ed83a":"11111111aaaaaaaa11111111bbbbbbbb11111111cccccccc11111111dddddddd22222222aaaaaaaa22222222bbbbbbbb22222222cccccccc22222222dddddddd33333333aaaaaaaa33333333bbbbbbbb33333333cccccccc33333333dddddddd44444444aaaaaaaa44444444bbbbbbbb44444444cccccccc44444444dddddddd55555555aaaaaaaa55555555bbbbbbbb55555555cccccccc55555555dddddddd":0
|
||||
|
||||
ARIA-192-CBC Encrypt - Official Test Vectors 1.0
|
||||
aria_encrypt_cbc:"00112233445566778899aabbccddeeff0011223344556677":"0f1e2d3c4b5a69788796a5b4c3d2e1f0":"11111111aaaaaaaa11111111bbbbbbbb11111111cccccccc11111111dddddddd22222222aaaaaaaa22222222bbbbbbbb22222222cccccccc22222222dddddddd33333333aaaaaaaa33333333bbbbbbbb33333333cccccccc33333333dddddddd44444444aaaaaaaa44444444bbbbbbbb44444444cccccccc44444444dddddddd55555555aaaaaaaa55555555bbbbbbbb55555555cccccccc55555555dddddddd":"afe6cf23974b533c672a826264ea785f4e4f7f780dc7f3f1e0962b80902386d514e9c3e77259de92dd1102ffab086c1ea52a71260db5920a83295c25320e421147ca45d532f327b856ea947cd2196ae2e040826548b4c891b0ed0ca6e714dbc4631998d548110d666b3d54c2a091955c6f05beb4f62309368696c9791fc4c551564a2637f194346ec45fbca6c72a5b4612e208d531d6c34cc5c64eac6bd0cf8c":0
|
||||
|
||||
ARIA-192-CBC Decrypt - Official Test Vectors 1.0
|
||||
aria_decrypt_cbc:"00112233445566778899aabbccddeeff0011223344556677":"0f1e2d3c4b5a69788796a5b4c3d2e1f0":"afe6cf23974b533c672a826264ea785f4e4f7f780dc7f3f1e0962b80902386d514e9c3e77259de92dd1102ffab086c1ea52a71260db5920a83295c25320e421147ca45d532f327b856ea947cd2196ae2e040826548b4c891b0ed0ca6e714dbc4631998d548110d666b3d54c2a091955c6f05beb4f62309368696c9791fc4c551564a2637f194346ec45fbca6c72a5b4612e208d531d6c34cc5c64eac6bd0cf8c":"11111111aaaaaaaa11111111bbbbbbbb11111111cccccccc11111111dddddddd22222222aaaaaaaa22222222bbbbbbbb22222222cccccccc22222222dddddddd33333333aaaaaaaa33333333bbbbbbbb33333333cccccccc33333333dddddddd44444444aaaaaaaa44444444bbbbbbbb44444444cccccccc44444444dddddddd55555555aaaaaaaa55555555bbbbbbbb55555555cccccccc55555555dddddddd":0
|
||||
|
||||
ARIA-256-CBC Encrypt - Official Test Vectors 1.0
|
||||
aria_encrypt_cbc:"00112233445566778899aabbccddeeff00112233445566778899aabbccddeeff":"0f1e2d3c4b5a69788796a5b4c3d2e1f0":"11111111aaaaaaaa11111111bbbbbbbb11111111cccccccc11111111dddddddd22222222aaaaaaaa22222222bbbbbbbb22222222cccccccc22222222dddddddd33333333aaaaaaaa33333333bbbbbbbb33333333cccccccc33333333dddddddd44444444aaaaaaaa44444444bbbbbbbb44444444cccccccc44444444dddddddd55555555aaaaaaaa55555555bbbbbbbb55555555cccccccc55555555dddddddd":"523a8a806ae621f155fdd28dbc34e1ab7b9b42432ad8b2efb96e23b13f0a6e52f36185d50ad002c5f601bee5493f118b243ee2e313642bffc3902e7b2efd9a12fa682edd2d23c8b9c5f043c18b17c1ec4b5867918270fbec1027c19ed6af833da5d620994668ca22f599791d292dd6273b2959082aafb7a996167cce1eec5f0cfd15f610d87e2dda9ba68ce1260ca54b222491418374294e7909b1e8551cd8de":0
|
||||
|
||||
ARIA-256-CBC Decrypt - Official Test Vectors 1.0
|
||||
aria_decrypt_cbc:"00112233445566778899aabbccddeeff00112233445566778899aabbccddeeff":"0f1e2d3c4b5a69788796a5b4c3d2e1f0":"523a8a806ae621f155fdd28dbc34e1ab7b9b42432ad8b2efb96e23b13f0a6e52f36185d50ad002c5f601bee5493f118b243ee2e313642bffc3902e7b2efd9a12fa682edd2d23c8b9c5f043c18b17c1ec4b5867918270fbec1027c19ed6af833da5d620994668ca22f599791d292dd6273b2959082aafb7a996167cce1eec5f0cfd15f610d87e2dda9ba68ce1260ca54b222491418374294e7909b1e8551cd8de":"11111111aaaaaaaa11111111bbbbbbbb11111111cccccccc11111111dddddddd22222222aaaaaaaa22222222bbbbbbbb22222222cccccccc22222222dddddddd33333333aaaaaaaa33333333bbbbbbbb33333333cccccccc33333333dddddddd44444444aaaaaaaa44444444bbbbbbbb44444444cccccccc44444444dddddddd55555555aaaaaaaa55555555bbbbbbbb55555555cccccccc55555555dddddddd":0
|
||||
|
||||
ARIA-128-CTR Encrypt - Official Test Vectors 1.0
|
||||
aria_encrypt_ctr:"00112233445566778899aabbccddeeff":"00000000000000000000000000000000":"11111111aaaaaaaa11111111bbbbbbbb11111111cccccccc11111111dddddddd22222222aaaaaaaa22222222bbbbbbbb22222222cccccccc22222222dddddddd33333333aaaaaaaa33333333bbbbbbbb33333333cccccccc33333333dddddddd44444444aaaaaaaa44444444bbbbbbbb44444444cccccccc44444444dddddddd55555555aaaaaaaa55555555bbbbbbbb55555555cccccccc55555555dddddddd":"ac5d7de805a0bf1c57c854501af60fa11497e2a34519dea1569e91e5b5ccae2ff3bfa1bf975f4571f48be191613546c3911163c085f871f0e7ae5f2a085b81851c2a3ddf20ecb8fa51901aec8ee4ba32a35dab67bb72cd9140ad188a967ac0fbbdfa94ea6cce47dcf8525ab5a814cfeb2bb60ee2b126e2d9d847c1a9e96f9019e3e6a7fe40d3829afb73db1cc245646addb62d9b907baaafbe46a73dbc131d3d":0
|
||||
|
||||
ARIA-192-CTR Encrypt - Official Test Vectors 1.0
|
||||
aria_encrypt_ctr:"00112233445566778899aabbccddeeff0011223344556677":"00000000000000000000000000000000":"11111111aaaaaaaa11111111bbbbbbbb11111111cccccccc11111111dddddddd22222222aaaaaaaa22222222bbbbbbbb22222222cccccccc22222222dddddddd33333333aaaaaaaa33333333bbbbbbbb33333333cccccccc33333333dddddddd44444444aaaaaaaa44444444bbbbbbbb44444444cccccccc44444444dddddddd55555555aaaaaaaa55555555bbbbbbbb55555555cccccccc55555555dddddddd":"08625ca8fe569c19ba7af3760a6ed1cef4d199263e999dde14082dbba7560b79a4c6b456b8707dce751f9854f18893dfdb3f4e5afa539733e6f1e70b98ba37891f8f81e95df8efc26c7ce043504cb18958b865e4e316cd2aa1c97f31bf23dc046ef326b95a692a191ba0f2a41c5fe9ae070f236ff7078e703b42666caafbdd20bad74ac4c20c0f46c7ca24c151716575c947da16c90cfe1bf217a41cfebe7531":0
|
||||
|
||||
ARIA-192-CTR Decrypt - Official Test Vectors 1.0
|
||||
aria_decrypt_ctr:"00112233445566778899aabbccddeeff0011223344556677":"00000000000000000000000000000000":"08625ca8fe569c19ba7af3760a6ed1cef4d199263e999dde14082dbba7560b79a4c6b456b8707dce751f9854f18893dfdb3f4e5afa539733e6f1e70b98ba37891f8f81e95df8efc26c7ce043504cb18958b865e4e316cd2aa1c97f31bf23dc046ef326b95a692a191ba0f2a41c5fe9ae070f236ff7078e703b42666caafbdd20bad74ac4c20c0f46c7ca24c151716575c947da16c90cfe1bf217a41cfebe7531":"11111111aaaaaaaa11111111bbbbbbbb11111111cccccccc11111111dddddddd22222222aaaaaaaa22222222bbbbbbbb22222222cccccccc22222222dddddddd33333333aaaaaaaa33333333bbbbbbbb33333333cccccccc33333333dddddddd44444444aaaaaaaa44444444bbbbbbbb44444444cccccccc44444444dddddddd55555555aaaaaaaa55555555bbbbbbbb55555555cccccccc55555555dddddddd":0
|
||||
|
||||
ARIA-256-CTR Encrypt - Official Test Vectors 1.0
|
||||
aria_encrypt_ctr:"00112233445566778899aabbccddeeff00112233445566778899aabbccddeeff":"00000000000000000000000000000000":"11111111aaaaaaaa11111111bbbbbbbb11111111cccccccc11111111dddddddd22222222aaaaaaaa22222222bbbbbbbb22222222cccccccc22222222dddddddd33333333aaaaaaaa33333333bbbbbbbb33333333cccccccc33333333dddddddd44444444aaaaaaaa44444444bbbbbbbb44444444cccccccc44444444dddddddd55555555aaaaaaaa55555555bbbbbbbb55555555cccccccc55555555dddddddd":"30026c329666141721178b99c0a1f1b2f06940253f7b3089e2a30ea86aa3c88f5940f05ad7ee41d71347bb7261e348f18360473fdf7d4e7723bffb4411cc13f6cdd89f3bc7b9c768145022c7a74f14d7c305cd012a10f16050c23f1ae5c23f45998d13fbaa041e51619577e0772764896a5d4516d8ffceb3bf7e05f613edd9a60cdcedaff9cfcaf4e00d445a54334f73ab2cad944e51d266548e61c6eb0aa1cd":0
|
||||
|
||||
ARIA-256-CTR Decrypt - Official Test Vectors 1.0
|
||||
aria_decrypt_ctr:"00112233445566778899aabbccddeeff00112233445566778899aabbccddeeff":"00000000000000000000000000000000":"30026c329666141721178b99c0a1f1b2f06940253f7b3089e2a30ea86aa3c88f5940f05ad7ee41d71347bb7261e348f18360473fdf7d4e7723bffb4411cc13f6cdd89f3bc7b9c768145022c7a74f14d7c305cd012a10f16050c23f1ae5c23f45998d13fbaa041e51619577e0772764896a5d4516d8ffceb3bf7e05f613edd9a60cdcedaff9cfcaf4e00d445a54334f73ab2cad944e51d266548e61c6eb0aa1cd":"11111111aaaaaaaa11111111bbbbbbbb11111111cccccccc11111111dddddddd22222222aaaaaaaa22222222bbbbbbbb22222222cccccccc22222222dddddddd33333333aaaaaaaa33333333bbbbbbbb33333333cccccccc33333333dddddddd44444444aaaaaaaa44444444bbbbbbbb44444444cccccccc44444444dddddddd55555555aaaaaaaa55555555bbbbbbbb55555555cccccccc55555555dddddddd":0
|
||||
|
||||
ARIA-128-CFB128 Encrypt - Official Test Vectors 1.0
|
||||
aria_encrypt_cfb128:"00112233445566778899aabbccddeeff":"0f1e2d3c4b5a69788796a5b4c3d2e1f0":"11111111aaaaaaaa11111111bbbbbbbb11111111cccccccc11111111dddddddd22222222aaaaaaaa22222222bbbbbbbb22222222cccccccc22222222dddddddd33333333aaaaaaaa33333333bbbbbbbb33333333cccccccc33333333dddddddd44444444aaaaaaaa44444444bbbbbbbb44444444cccccccc44444444dddddddd55555555aaaaaaaa55555555bbbbbbbb55555555cccccccc55555555dddddddd":"3720e53ba7d615383406b09f0a05a200c07c21e6370f413a5d132500a68285017c61b434c7b7ca9685a51071861e4d4bb873b599b479e2d573dddeafba89f812ac6a9e44d554078eb3be94839db4b33da3f59c063123a7ef6f20e10579fa4fd239100ca73b52d4fcafeadee73f139f78f9b7614c2b3b9dbe010f87db06a89a9435f79ce8121431371f4e87b984e0230c22a6dacb32fc42dcc6accef33285bf11":0
|
||||
|
||||
ARIA-128-CFB128 Decrypt - Official Test Vectors 1.0
|
||||
aria_decrypt_cfb128:"00112233445566778899aabbccddeeff":"0f1e2d3c4b5a69788796a5b4c3d2e1f0":"3720e53ba7d615383406b09f0a05a200c07c21e6370f413a5d132500a68285017c61b434c7b7ca9685a51071861e4d4bb873b599b479e2d573dddeafba89f812ac6a9e44d554078eb3be94839db4b33da3f59c063123a7ef6f20e10579fa4fd239100ca73b52d4fcafeadee73f139f78f9b7614c2b3b9dbe010f87db06a89a9435f79ce8121431371f4e87b984e0230c22a6dacb32fc42dcc6accef33285bf11":"11111111aaaaaaaa11111111bbbbbbbb11111111cccccccc11111111dddddddd22222222aaaaaaaa22222222bbbbbbbb22222222cccccccc22222222dddddddd33333333aaaaaaaa33333333bbbbbbbb33333333cccccccc33333333dddddddd44444444aaaaaaaa44444444bbbbbbbb44444444cccccccc44444444dddddddd55555555aaaaaaaa55555555bbbbbbbb55555555cccccccc55555555dddddddd":0
|
||||
|
||||
ARIA-192-CFB128 Encrypt - Official Test Vectors 1.0
|
||||
aria_encrypt_cfb128:"00112233445566778899aabbccddeeff0011223344556677":"0f1e2d3c4b5a69788796a5b4c3d2e1f0":"11111111aaaaaaaa11111111bbbbbbbb11111111cccccccc11111111dddddddd22222222aaaaaaaa22222222bbbbbbbb22222222cccccccc22222222dddddddd33333333aaaaaaaa33333333bbbbbbbb33333333cccccccc33333333dddddddd44444444aaaaaaaa44444444bbbbbbbb44444444cccccccc44444444dddddddd55555555aaaaaaaa55555555bbbbbbbb55555555cccccccc55555555dddddddd":"4171f7192bf4495494d2736129640f5c4d87a9a213664c9448477c6ecc2013598d9766952dd8c3868f17e36ef66fd84bfa45d1593d2d6ee3ea2115047d710d4fb66187caa3a315b3c8ea2d313962edcfe5a3e2028d5ba9a09fd5c65c19d3440e477f0cab0628ec6902c73ee02f1afee9f80115be7b9df82d1e28228e28581a20560e195cbb9e2b327bf56fd2d0ae5502e42c13e9b4015d4da42dc859252e7da4":0
|
||||
|
||||
ARIA-192-CFB128 Decrypt - Official Test Vectors 1.0
|
||||
aria_decrypt_cfb128:"00112233445566778899aabbccddeeff0011223344556677":"0f1e2d3c4b5a69788796a5b4c3d2e1f0":"4171f7192bf4495494d2736129640f5c4d87a9a213664c9448477c6ecc2013598d9766952dd8c3868f17e36ef66fd84bfa45d1593d2d6ee3ea2115047d710d4fb66187caa3a315b3c8ea2d313962edcfe5a3e2028d5ba9a09fd5c65c19d3440e477f0cab0628ec6902c73ee02f1afee9f80115be7b9df82d1e28228e28581a20560e195cbb9e2b327bf56fd2d0ae5502e42c13e9b4015d4da42dc859252e7da4":"11111111aaaaaaaa11111111bbbbbbbb11111111cccccccc11111111dddddddd22222222aaaaaaaa22222222bbbbbbbb22222222cccccccc22222222dddddddd33333333aaaaaaaa33333333bbbbbbbb33333333cccccccc33333333dddddddd44444444aaaaaaaa44444444bbbbbbbb44444444cccccccc44444444dddddddd55555555aaaaaaaa55555555bbbbbbbb55555555cccccccc55555555dddddddd":0
|
||||
|
||||
ARIA-256-CFB128 Encrypt - Official Test Vectors 1.0
|
||||
aria_encrypt_cfb128:"00112233445566778899aabbccddeeff00112233445566778899aabbccddeeff":"0f1e2d3c4b5a69788796a5b4c3d2e1f0":"11111111aaaaaaaa11111111bbbbbbbb11111111cccccccc11111111dddddddd22222222aaaaaaaa22222222bbbbbbbb22222222cccccccc22222222dddddddd33333333aaaaaaaa33333333bbbbbbbb33333333cccccccc33333333dddddddd44444444aaaaaaaa44444444bbbbbbbb44444444cccccccc44444444dddddddd55555555aaaaaaaa55555555bbbbbbbb55555555cccccccc55555555dddddddd":"26834705b0f2c0e2588d4a7f09009635f28bb93d8c31f870ec1e0bdb082b66fa402dd9c202be300c4517d196b14d4ce11dce97f7aaba54341b0d872cc9b63753a3e8556a14be6f7b3e27e3cfc39caf80f2a355aa50dc83c09c7b11828694f8e4aa726c528976b53f2c877f4991a3a8d28adb63bd751846ffb2350265e179d4990753ae8485ff9b4133ddad5875b84a90cbcfa62a045d726df71b6bda0eeca0be":0
|
||||
|
||||
ARIA-256-CFB128 Decrypt - Official Test Vectors 1.0
|
||||
aria_decrypt_cfb128:"00112233445566778899aabbccddeeff00112233445566778899aabbccddeeff":"0f1e2d3c4b5a69788796a5b4c3d2e1f0":"26834705b0f2c0e2588d4a7f09009635f28bb93d8c31f870ec1e0bdb082b66fa402dd9c202be300c4517d196b14d4ce11dce97f7aaba54341b0d872cc9b63753a3e8556a14be6f7b3e27e3cfc39caf80f2a355aa50dc83c09c7b11828694f8e4aa726c528976b53f2c877f4991a3a8d28adb63bd751846ffb2350265e179d4990753ae8485ff9b4133ddad5875b84a90cbcfa62a045d726df71b6bda0eeca0be":"11111111aaaaaaaa11111111bbbbbbbb11111111cccccccc11111111dddddddd22222222aaaaaaaa22222222bbbbbbbb22222222cccccccc22222222dddddddd33333333aaaaaaaa33333333bbbbbbbb33333333cccccccc33333333dddddddd44444444aaaaaaaa44444444bbbbbbbb44444444cccccccc44444444dddddddd55555555aaaaaaaa55555555bbbbbbbb55555555cccccccc55555555dddddddd":0
|
||||
|
||||
ARIA Selftest
|
||||
aria_selftest:
|
||||
278
vendor/mbedtls/tests/suites/test_suite_aria.function
vendored
Normal file
278
vendor/mbedtls/tests/suites/test_suite_aria.function
vendored
Normal file
@@ -0,0 +1,278 @@
|
||||
/* BEGIN_HEADER */
|
||||
#include "mbedtls/aria.h"
|
||||
|
||||
/* Maximum size of data used by test vectors
|
||||
* WARNING: to be adapted if and when adding larger test cases */
|
||||
#define ARIA_MAX_DATASIZE 160
|
||||
|
||||
/* Maximum sizes of hexified things */
|
||||
#define ARIA_MAX_KEY_STR (2 * MBEDTLS_ARIA_MAX_KEYSIZE + 1)
|
||||
#define ARIA_BLOCK_STR (2 * MBEDTLS_ARIA_BLOCKSIZE + 1)
|
||||
#define ARIA_MAX_DATA_STR (2 * ARIA_MAX_DATASIZE + 1)
|
||||
/* END_HEADER */
|
||||
|
||||
/* BEGIN_DEPENDENCIES
|
||||
* depends_on:MBEDTLS_ARIA_C
|
||||
* END_DEPENDENCIES
|
||||
*/
|
||||
|
||||
/* BEGIN_CASE */
|
||||
void aria_invalid_param()
|
||||
{
|
||||
mbedtls_aria_context ctx;
|
||||
unsigned char input[MBEDTLS_ARIA_BLOCKSIZE] = { 0 };
|
||||
unsigned char output[MBEDTLS_ARIA_BLOCKSIZE] = { 0 };
|
||||
unsigned char iv[MBEDTLS_ARIA_BLOCKSIZE] = { 0 };
|
||||
size_t iv_off = 0;
|
||||
|
||||
((void) iv_off);
|
||||
((void) iv);
|
||||
((void) ctx);
|
||||
((void) input);
|
||||
((void) output);
|
||||
|
||||
#if defined(MBEDTLS_CIPHER_MODE_CBC)
|
||||
TEST_EQUAL(MBEDTLS_ERR_ARIA_BAD_INPUT_DATA,
|
||||
mbedtls_aria_crypt_cbc(&ctx,
|
||||
42 /* invalid mode */,
|
||||
sizeof(input),
|
||||
iv,
|
||||
input,
|
||||
output));
|
||||
#endif /* MBEDTLS_CIPHER_MODE_CBC */
|
||||
|
||||
#if defined(MBEDTLS_CIPHER_MODE_CFB)
|
||||
TEST_EQUAL(MBEDTLS_ERR_ARIA_BAD_INPUT_DATA,
|
||||
mbedtls_aria_crypt_cfb128(&ctx,
|
||||
42, /* invalid mode */
|
||||
sizeof(input),
|
||||
&iv_off,
|
||||
iv,
|
||||
input,
|
||||
output));
|
||||
#endif /* MBEDTLS_CIPHER_MODE_CFB */
|
||||
|
||||
#if defined(MBEDTLS_CIPHER_MODE_CBC) || defined(MBEDTLS_CIPHER_MODE_CFB)
|
||||
exit:
|
||||
return;
|
||||
#endif
|
||||
|
||||
}
|
||||
/* END_CASE */
|
||||
|
||||
/* BEGIN_CASE */
|
||||
void aria_encrypt_ecb(data_t *key_str, data_t *src_str,
|
||||
data_t *expected_output, int setkey_result)
|
||||
{
|
||||
unsigned char output[ARIA_MAX_DATASIZE];
|
||||
mbedtls_aria_context ctx;
|
||||
size_t i;
|
||||
|
||||
memset(output, 0x00, sizeof(output));
|
||||
mbedtls_aria_init(&ctx);
|
||||
|
||||
TEST_ASSERT(mbedtls_aria_setkey_enc(&ctx, key_str->x, key_str->len * 8)
|
||||
== setkey_result);
|
||||
if (setkey_result == 0) {
|
||||
for (i = 0; i < src_str->len; i += MBEDTLS_ARIA_BLOCKSIZE) {
|
||||
TEST_ASSERT(mbedtls_aria_crypt_ecb(&ctx, src_str->x + i,
|
||||
output + i) == 0);
|
||||
}
|
||||
|
||||
TEST_MEMORY_COMPARE(output, expected_output->len,
|
||||
expected_output->x, expected_output->len);
|
||||
}
|
||||
|
||||
exit:
|
||||
mbedtls_aria_free(&ctx);
|
||||
}
|
||||
/* END_CASE */
|
||||
|
||||
/* BEGIN_CASE depends_on:!MBEDTLS_BLOCK_CIPHER_NO_DECRYPT */
|
||||
void aria_decrypt_ecb(data_t *key_str, data_t *src_str,
|
||||
data_t *expected_output, int setkey_result)
|
||||
{
|
||||
unsigned char output[ARIA_MAX_DATASIZE];
|
||||
mbedtls_aria_context ctx;
|
||||
size_t i;
|
||||
|
||||
memset(output, 0x00, sizeof(output));
|
||||
mbedtls_aria_init(&ctx);
|
||||
|
||||
TEST_ASSERT(mbedtls_aria_setkey_dec(&ctx, key_str->x, key_str->len * 8)
|
||||
== setkey_result);
|
||||
if (setkey_result == 0) {
|
||||
for (i = 0; i < src_str->len; i += MBEDTLS_ARIA_BLOCKSIZE) {
|
||||
TEST_ASSERT(mbedtls_aria_crypt_ecb(&ctx, src_str->x + i,
|
||||
output + i) == 0);
|
||||
}
|
||||
|
||||
TEST_MEMORY_COMPARE(output, expected_output->len,
|
||||
expected_output->x, expected_output->len);
|
||||
}
|
||||
|
||||
exit:
|
||||
mbedtls_aria_free(&ctx);
|
||||
}
|
||||
/* END_CASE */
|
||||
|
||||
/* BEGIN_CASE depends_on:MBEDTLS_CIPHER_MODE_CBC */
|
||||
void aria_encrypt_cbc(data_t *key_str, data_t *iv_str,
|
||||
data_t *src_str, data_t *expected_output,
|
||||
int cbc_result)
|
||||
{
|
||||
unsigned char output[ARIA_MAX_DATASIZE];
|
||||
mbedtls_aria_context ctx;
|
||||
|
||||
memset(output, 0x00, sizeof(output));
|
||||
mbedtls_aria_init(&ctx);
|
||||
|
||||
mbedtls_aria_setkey_enc(&ctx, key_str->x, key_str->len * 8);
|
||||
TEST_ASSERT(mbedtls_aria_crypt_cbc(&ctx, MBEDTLS_ARIA_ENCRYPT,
|
||||
src_str->len, iv_str->x, src_str->x,
|
||||
output) == cbc_result);
|
||||
if (cbc_result == 0) {
|
||||
TEST_MEMORY_COMPARE(output, expected_output->len,
|
||||
expected_output->x, expected_output->len);
|
||||
}
|
||||
|
||||
exit:
|
||||
mbedtls_aria_free(&ctx);
|
||||
}
|
||||
/* END_CASE */
|
||||
|
||||
/* BEGIN_CASE depends_on:MBEDTLS_CIPHER_MODE_CBC */
|
||||
void aria_decrypt_cbc(data_t *key_str, data_t *iv_str,
|
||||
data_t *src_str, data_t *expected_output,
|
||||
int cbc_result)
|
||||
{
|
||||
unsigned char output[ARIA_MAX_DATASIZE];
|
||||
mbedtls_aria_context ctx;
|
||||
|
||||
memset(output, 0x00, sizeof(output));
|
||||
mbedtls_aria_init(&ctx);
|
||||
|
||||
mbedtls_aria_setkey_dec(&ctx, key_str->x, key_str->len * 8);
|
||||
TEST_ASSERT(mbedtls_aria_crypt_cbc(&ctx, MBEDTLS_ARIA_DECRYPT,
|
||||
src_str->len, iv_str->x, src_str->x,
|
||||
output) == cbc_result);
|
||||
if (cbc_result == 0) {
|
||||
TEST_MEMORY_COMPARE(output, expected_output->len,
|
||||
expected_output->x, expected_output->len);
|
||||
}
|
||||
|
||||
exit:
|
||||
mbedtls_aria_free(&ctx);
|
||||
}
|
||||
/* END_CASE */
|
||||
|
||||
/* BEGIN_CASE depends_on:MBEDTLS_CIPHER_MODE_CFB */
|
||||
void aria_encrypt_cfb128(data_t *key_str, data_t *iv_str,
|
||||
data_t *src_str, data_t *expected_output,
|
||||
int result)
|
||||
{
|
||||
unsigned char output[ARIA_MAX_DATASIZE];
|
||||
mbedtls_aria_context ctx;
|
||||
size_t iv_offset = 0;
|
||||
|
||||
memset(output, 0x00, sizeof(output));
|
||||
mbedtls_aria_init(&ctx);
|
||||
|
||||
mbedtls_aria_setkey_enc(&ctx, key_str->x, key_str->len * 8);
|
||||
TEST_ASSERT(mbedtls_aria_crypt_cfb128(&ctx, MBEDTLS_ARIA_ENCRYPT,
|
||||
src_str->len, &iv_offset,
|
||||
iv_str->x, src_str->x, output)
|
||||
== result);
|
||||
|
||||
TEST_MEMORY_COMPARE(output, expected_output->len,
|
||||
expected_output->x, expected_output->len);
|
||||
|
||||
exit:
|
||||
mbedtls_aria_free(&ctx);
|
||||
}
|
||||
/* END_CASE */
|
||||
|
||||
/* BEGIN_CASE depends_on:MBEDTLS_CIPHER_MODE_CFB */
|
||||
void aria_decrypt_cfb128(data_t *key_str, data_t *iv_str,
|
||||
data_t *src_str, data_t *expected_output,
|
||||
int result)
|
||||
{
|
||||
unsigned char output[ARIA_MAX_DATASIZE];
|
||||
mbedtls_aria_context ctx;
|
||||
size_t iv_offset = 0;
|
||||
|
||||
memset(output, 0x00, sizeof(output));
|
||||
mbedtls_aria_init(&ctx);
|
||||
|
||||
mbedtls_aria_setkey_enc(&ctx, key_str->x, key_str->len * 8);
|
||||
TEST_ASSERT(mbedtls_aria_crypt_cfb128(&ctx, MBEDTLS_ARIA_DECRYPT,
|
||||
src_str->len, &iv_offset,
|
||||
iv_str->x, src_str->x, output)
|
||||
== result);
|
||||
|
||||
TEST_MEMORY_COMPARE(output, expected_output->len,
|
||||
expected_output->x, expected_output->len);
|
||||
|
||||
exit:
|
||||
mbedtls_aria_free(&ctx);
|
||||
}
|
||||
/* END_CASE */
|
||||
|
||||
/* BEGIN_CASE depends_on:MBEDTLS_CIPHER_MODE_CTR */
|
||||
void aria_encrypt_ctr(data_t *key_str, data_t *iv_str,
|
||||
data_t *src_str, data_t *expected_output,
|
||||
int result)
|
||||
{
|
||||
unsigned char output[ARIA_MAX_DATASIZE];
|
||||
unsigned char blk[MBEDTLS_ARIA_BLOCKSIZE];
|
||||
mbedtls_aria_context ctx;
|
||||
size_t iv_offset = 0;
|
||||
|
||||
memset(output, 0x00, sizeof(output));
|
||||
mbedtls_aria_init(&ctx);
|
||||
|
||||
mbedtls_aria_setkey_enc(&ctx, key_str->x, key_str->len * 8);
|
||||
TEST_ASSERT(mbedtls_aria_crypt_ctr(&ctx, src_str->len, &iv_offset,
|
||||
iv_str->x, blk, src_str->x, output)
|
||||
== result);
|
||||
|
||||
TEST_MEMORY_COMPARE(output, expected_output->len,
|
||||
expected_output->x, expected_output->len);
|
||||
|
||||
exit:
|
||||
mbedtls_aria_free(&ctx);
|
||||
}
|
||||
/* END_CASE */
|
||||
|
||||
/* BEGIN_CASE depends_on:MBEDTLS_CIPHER_MODE_CTR */
|
||||
void aria_decrypt_ctr(data_t *key_str, data_t *iv_str,
|
||||
data_t *src_str, data_t *expected_output,
|
||||
int result)
|
||||
{
|
||||
unsigned char output[ARIA_MAX_DATASIZE];
|
||||
unsigned char blk[MBEDTLS_ARIA_BLOCKSIZE];
|
||||
mbedtls_aria_context ctx;
|
||||
size_t iv_offset = 0;
|
||||
|
||||
memset(output, 0x00, sizeof(output));
|
||||
mbedtls_aria_init(&ctx);
|
||||
|
||||
mbedtls_aria_setkey_enc(&ctx, key_str->x, key_str->len * 8);
|
||||
TEST_ASSERT(mbedtls_aria_crypt_ctr(&ctx, src_str->len, &iv_offset,
|
||||
iv_str->x, blk, src_str->x, output)
|
||||
== result);
|
||||
|
||||
TEST_MEMORY_COMPARE(output, expected_output->len,
|
||||
expected_output->x, expected_output->len);
|
||||
|
||||
exit:
|
||||
mbedtls_aria_free(&ctx);
|
||||
}
|
||||
/* END_CASE */
|
||||
|
||||
/* BEGIN_CASE depends_on:MBEDTLS_SELF_TEST */
|
||||
void aria_selftest()
|
||||
{
|
||||
TEST_ASSERT(mbedtls_aria_self_test(1) == 0);
|
||||
}
|
||||
/* END_CASE */
|
||||
637
vendor/mbedtls/tests/suites/test_suite_asn1parse.data
vendored
Normal file
637
vendor/mbedtls/tests/suites/test_suite_asn1parse.data
vendored
Normal file
@@ -0,0 +1,637 @@
|
||||
Empty length
|
||||
parse_prefixes:"04":MBEDTLS_ERR_ASN1_OUT_OF_DATA:UNPREDICTABLE_RESULT
|
||||
|
||||
Incomplete length
|
||||
parse_prefixes:"0481":MBEDTLS_ERR_ASN1_OUT_OF_DATA:UNPREDICTABLE_RESULT
|
||||
|
||||
Prefixes of OCTET STRING, length=0
|
||||
parse_prefixes:"0400":0:0
|
||||
|
||||
Prefixes of OCTET STRING, length=0 (0 length bytes)
|
||||
parse_prefixes:"0480":MBEDTLS_ERR_ASN1_INVALID_LENGTH:MBEDTLS_ERR_ASN1_INVALID_LENGTH
|
||||
|
||||
Prefixes of OCTET STRING, length=1
|
||||
parse_prefixes:"040141":0:0
|
||||
|
||||
Prefixes of OCTET STRING, length=2
|
||||
parse_prefixes:"04024142":0:0
|
||||
|
||||
Prefixes of BOOLEAN, length=0
|
||||
parse_prefixes:"0100":MBEDTLS_ERR_ASN1_INVALID_LENGTH:MBEDTLS_ERR_ASN1_INVALID_LENGTH
|
||||
|
||||
Prefixes of BOOLEAN, length=1
|
||||
parse_prefixes:"010100":0:0
|
||||
|
||||
Prefixes of BOOLEAN, length=2
|
||||
parse_prefixes:"01020000":MBEDTLS_ERR_ASN1_INVALID_LENGTH:MBEDTLS_ERR_ASN1_INVALID_LENGTH
|
||||
|
||||
Prefixes of INTEGER, length=1
|
||||
parse_prefixes:"020141":0:0
|
||||
|
||||
Prefixes of INTEGER, length=2
|
||||
parse_prefixes:"02024142":0:0
|
||||
|
||||
Prefixes of INTEGER, length=5
|
||||
parse_prefixes:"02054142434445":0:0
|
||||
|
||||
Prefixes of empty BIT STRING
|
||||
parse_prefixes:"0300":MBEDTLS_ERR_ASN1_OUT_OF_DATA:UNPREDICTABLE_RESULT
|
||||
|
||||
Prefixes of BIT STRING, unused_bits=0, payload_length=0
|
||||
parse_prefixes:"030100":0:MBEDTLS_ERR_ASN1_LENGTH_MISMATCH
|
||||
|
||||
Prefixes of BIT STRING, unused_bits=0, payload_length=1
|
||||
parse_prefixes:"0302002a":0:MBEDTLS_ERR_ASN1_LENGTH_MISMATCH
|
||||
|
||||
Prefixes of BIT STRING, unused_bits=1, payload_length=1
|
||||
parse_prefixes:"0302012a":0:MBEDTLS_ERR_ASN1_LENGTH_MISMATCH
|
||||
|
||||
Prefixes of empty SEQUENCE
|
||||
parse_prefixes:"3000":0:0
|
||||
|
||||
Prefixes of SEQUENCE of BOOLEAN, INTEGER, INTEGER
|
||||
parse_prefixes:"300b01010102012a0203123456":0:0
|
||||
|
||||
Prefixes of SEQUENCE of (SEQUENCE of INTEGER, INTEGER), INTEGER
|
||||
parse_prefixes:"300b3006020141020142020161":0:0
|
||||
|
||||
length=0 (short form)
|
||||
get_len:"00":0
|
||||
|
||||
length=0 (1 length byte)
|
||||
get_len:"8100":0
|
||||
|
||||
length=0 (2 length bytes)
|
||||
get_len:"820000":0
|
||||
|
||||
length=1 (short form)
|
||||
get_len:"01":1
|
||||
|
||||
length=1 (1 length byte)
|
||||
get_len:"8101":1
|
||||
|
||||
length=1 (2 length bytes)
|
||||
get_len:"820001":1
|
||||
|
||||
length=1 (3 length bytes)
|
||||
get_len:"83000001":1
|
||||
|
||||
length=1 (4 length bytes)
|
||||
get_len:"8400000001":1
|
||||
|
||||
length=2 (short form)
|
||||
get_len:"02":2
|
||||
|
||||
length=2 (1 length byte)
|
||||
get_len:"8102":2
|
||||
|
||||
length=2 (2 length bytes)
|
||||
get_len:"820002":2
|
||||
|
||||
length=2 (3 length bytes)
|
||||
get_len:"83000002":2
|
||||
|
||||
length=2 (4 length bytes)
|
||||
get_len:"8400000002":2
|
||||
|
||||
length=127 (short form)
|
||||
get_len:"7f":127
|
||||
|
||||
length=128 (1 length byte)
|
||||
get_len:"8180":128
|
||||
|
||||
length=128 (2 length bytes)
|
||||
get_len:"820080":128
|
||||
|
||||
length=255 (1 length byte)
|
||||
get_len:"81ff":255
|
||||
|
||||
length=255 (2 length bytes)
|
||||
get_len:"8200ff":255
|
||||
|
||||
length=256 (2 length bytes)
|
||||
get_len:"820100":256
|
||||
|
||||
length=256 (3 length bytes)
|
||||
get_len:"83000100":256
|
||||
|
||||
length=258 (2 length bytes)
|
||||
get_len:"820102":258
|
||||
|
||||
length=258 (3 length bytes)
|
||||
get_len:"83000102":258
|
||||
|
||||
length=65535 (2 length bytes)
|
||||
get_len:"82ffff":65535
|
||||
|
||||
length=65535 (3 length bytes)
|
||||
get_len:"8300ffff":65535
|
||||
|
||||
length=65535 (4 length bytes)
|
||||
get_len:"840000ffff":65535
|
||||
|
||||
length=65536 (3 length bytes)
|
||||
get_len:"83010000":65536
|
||||
|
||||
length=65536 (4 length bytes)
|
||||
get_len:"8400010000":65536
|
||||
|
||||
length=16777215 (3 length bytes)
|
||||
get_len:"83ffffff":16777215
|
||||
|
||||
length=16777215 (4 length bytes)
|
||||
get_len:"8400ffffff":16777215
|
||||
|
||||
length=16777216 (4 length bytes)
|
||||
get_len:"8401000000":16777216
|
||||
|
||||
length=16909060 (4 length bytes)
|
||||
get_len:"8401020304":16909060
|
||||
|
||||
BOOLEAN FALSE
|
||||
get_boolean:"010100":0:0
|
||||
|
||||
BOOLEAN TRUE (1)
|
||||
get_boolean:"010101":1:0
|
||||
|
||||
BOOLEAN TRUE (2)
|
||||
get_boolean:"010101":1:0
|
||||
|
||||
BOOLEAN TRUE (128)
|
||||
get_boolean:"010180":1:0
|
||||
|
||||
BOOLEAN TRUE (255)
|
||||
get_boolean:"0101ff":1:0
|
||||
|
||||
Not BOOLEAN
|
||||
get_boolean:"020101":0:MBEDTLS_ERR_ASN1_UNEXPECTED_TAG
|
||||
|
||||
Empty INTEGER
|
||||
empty_integer:"0200"
|
||||
|
||||
INTEGER 0
|
||||
get_integer:"020100":"0":0
|
||||
|
||||
INTEGER 0, extra leading 0
|
||||
get_integer:"02020000":"0":0
|
||||
|
||||
INTEGER 1
|
||||
get_integer:"020101":"1":0:
|
||||
|
||||
INTEGER 1, extra leading 0
|
||||
get_integer:"02020001":"1":0:
|
||||
|
||||
INTEGER 0x7f
|
||||
get_integer:"02017f":"7f":0
|
||||
|
||||
INTEGER 0x80
|
||||
get_integer:"02020080":"80":0
|
||||
|
||||
INTEGER 0x80, extra leading 0
|
||||
get_integer:"0203000080":"80":0
|
||||
|
||||
INTEGER 0xff
|
||||
get_integer:"020200ff":"ff":0
|
||||
|
||||
INTEGER 0x7fff
|
||||
get_integer:"02027fff":"7fff":0
|
||||
|
||||
INTEGER 0x12345678
|
||||
get_integer:"020412345678":"12345678":0
|
||||
|
||||
INTEGER 0x12345678, extra leading 0
|
||||
get_integer:"02050012345678":"12345678":0
|
||||
|
||||
INTEGER 0x7fffffff
|
||||
get_integer:"02047fffffff":"7fffffff":0
|
||||
|
||||
INTEGER 0x7fffffff, extra leading 0
|
||||
get_integer:"0205007fffffff":"7fffffff":0
|
||||
|
||||
INTEGER 0x80000000
|
||||
get_integer:"02050080000000":"80000000":0
|
||||
|
||||
INTEGER 0xffffffff
|
||||
get_integer:"020500ffffffff":"ffffffff":0
|
||||
|
||||
INTEGER 0x100000000
|
||||
get_integer:"02050100000000":"0100000000":0
|
||||
|
||||
INTEGER 0x123456789abcdef0
|
||||
get_integer:"0208123456789abcdef0":"123456789abcdef0":0
|
||||
|
||||
INTEGER 0xfedcab9876543210
|
||||
get_integer:"020900fedcab9876543210":"fedcab9876543210":0
|
||||
|
||||
INTEGER 0x1fedcab9876543210
|
||||
get_integer:"020901fedcab9876543210":"1fedcab9876543210":0
|
||||
|
||||
INTEGER with 127 value octets
|
||||
get_integer:"027f0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcd":"0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcd":0
|
||||
|
||||
INTEGER with 127 value octets (long length encoding)
|
||||
get_integer:"02817f0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcd":"0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcd":0
|
||||
|
||||
INTEGER with 128 value octets
|
||||
get_integer:"0281800123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef":"0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef":0
|
||||
|
||||
INTEGER with 128 value octets (leading 0 in length)
|
||||
get_integer:"028200800123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef":"0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef":0
|
||||
|
||||
INTEGER -1
|
||||
get_integer:"0201ff":"-1":0
|
||||
|
||||
INTEGER -1, extra leading ff
|
||||
get_integer:"0202ffff":"-1":0
|
||||
|
||||
INTEGER -0x7f
|
||||
get_integer:"020181":"-7f":0
|
||||
|
||||
INTEGER -0x80
|
||||
get_integer:"020180":"-80":0
|
||||
|
||||
INTEGER -0x81
|
||||
get_integer:"0202ff7f":"-81":0
|
||||
|
||||
INTEGER -0xff
|
||||
get_integer:"0202ff01":"-ff":0
|
||||
|
||||
INTEGER -0x100
|
||||
get_integer:"0202ff00":"-100":0
|
||||
|
||||
INTEGER -0x7fffffff
|
||||
get_integer:"020480000001":"-7fffffff":0
|
||||
|
||||
INTEGER -0x80000000
|
||||
get_integer:"020480000000":"-80000000":0
|
||||
|
||||
INTEGER -0x80000001
|
||||
get_integer:"0205ff7fffffff":"-80000001":0
|
||||
|
||||
INTEGER -0xffffffff
|
||||
get_integer:"0205ff00000001":"-ffffffff":0
|
||||
|
||||
INTEGER -0x100000000
|
||||
get_integer:"0205ff00000000":"-100000000":0
|
||||
|
||||
INTEGER -0x123456789abcdef0
|
||||
get_integer:"0208edcba98765432110":"-123456789abcdef0":0
|
||||
|
||||
INTEGER -0xfedcba9876543210
|
||||
get_integer:"0209ff0123456789abcdf0":"-fedcba9876543210":0
|
||||
|
||||
INTEGER -0x1fedcab9876543210
|
||||
get_integer:"0209fe0123546789abcdf0":"-1fedcab9876543210":0
|
||||
|
||||
Not INTEGER
|
||||
get_integer:"010101":"":MBEDTLS_ERR_ASN1_UNEXPECTED_TAG
|
||||
|
||||
INTEGER too large for mpi
|
||||
get_mpi_too_large:
|
||||
|
||||
ENUMERATED 0
|
||||
get_enum:"0A0100":"0":0
|
||||
|
||||
ENUMERATED 0, extra leading 0
|
||||
get_enum:"0A020000":"0":0
|
||||
|
||||
ENUMERATED 1
|
||||
get_enum:"0A0101":"1":0
|
||||
|
||||
ENUMERATED 1, extra leading 0
|
||||
get_enum:"0A020001":"1":0
|
||||
|
||||
ENUMERATED 0x7f
|
||||
get_enum:"0A017f":"7f":0
|
||||
|
||||
ENUMERATED 0x80
|
||||
get_enum:"0A020080":"80":0
|
||||
|
||||
ENUMERATED 0x80, extra leading 0
|
||||
get_enum:"0A03000080":"80":0
|
||||
|
||||
ENUMERATED 0xff
|
||||
get_enum:"0A0200ff":"ff":0
|
||||
|
||||
ENUMERATED 0x7fff
|
||||
get_enum:"0A027fff":"7fff":0
|
||||
|
||||
ENUMERATED 0x12345678
|
||||
get_enum:"0A0412345678":"12345678":0
|
||||
|
||||
ENUMERATED 0x12345678, extra leading 0
|
||||
get_enum:"0A050012345678":"12345678":0
|
||||
|
||||
ENUMERATED 0x7fffffff
|
||||
get_enum:"0A047fffffff":"7fffffff":0
|
||||
|
||||
ENUMERATED 0x7fffffff, extra leading 0
|
||||
get_enum:"0A05007fffffff":"7fffffff":0
|
||||
|
||||
ENUMERATED 0x80000000
|
||||
get_enum:"0A050080000000":"80000000":0
|
||||
|
||||
ENUMERATED 0xffffffff
|
||||
get_enum:"0A0500ffffffff":"ffffffff":0
|
||||
|
||||
ENUMERATED 0x100000000
|
||||
get_enum:"0A050100000000":"0100000000":0
|
||||
|
||||
ENUMERATED -1
|
||||
get_enum:"0A01ff":"-1":0
|
||||
|
||||
ENUMERATED -1, extra leading ff
|
||||
get_enum:"0A02ffff":"-1":0
|
||||
|
||||
ENUMERATED -0x7f
|
||||
get_enum:"0A0181":"-7f":0
|
||||
|
||||
ENUMERATED -0x80
|
||||
get_enum:"0A0180":"-80":0
|
||||
|
||||
ENUMERATED -0x81
|
||||
get_enum:"0A02ff7f":"-81":0
|
||||
|
||||
ENUMERATED -0xff
|
||||
get_enum:"0A02ff01":"-ff":0
|
||||
|
||||
ENUMERATED -0x100
|
||||
get_enum:"0A02ff00":"-100":0
|
||||
|
||||
ENUMERATED -0x7fffffff
|
||||
get_enum:"0A0480000001":"-7fffffff":0
|
||||
|
||||
ENUMERATED -0x80000000
|
||||
get_enum:"0A0480000000":"-80000000":0
|
||||
|
||||
ENUMERATED -0x80000001
|
||||
get_enum:"0A05ff7fffffff":"-80000001":0
|
||||
|
||||
ENUMERATED -0xffffffff
|
||||
get_enum:"0A05ff00000001":"-ffffffff":0
|
||||
|
||||
ENUMERATED -0x100000000
|
||||
get_enum:"0A05ff00000000":"-100000000":0
|
||||
|
||||
BIT STRING: empty
|
||||
get_bitstring:"0300":0:0:MBEDTLS_ERR_ASN1_OUT_OF_DATA:MBEDTLS_ERR_ASN1_INVALID_DATA
|
||||
|
||||
BIT STRING: octets=0, unused_bits=0
|
||||
get_bitstring:"030100":0:0:0:0
|
||||
|
||||
BIT STRING: octets=0, unused_bits=7
|
||||
get_bitstring:"030107":0:7:0:MBEDTLS_ERR_ASN1_INVALID_DATA
|
||||
|
||||
BIT STRING: octets=0, unused_bits=8
|
||||
get_bitstring:"030108":0:0:MBEDTLS_ERR_ASN1_INVALID_LENGTH:MBEDTLS_ERR_ASN1_INVALID_DATA
|
||||
|
||||
BIT STRING: octets=1, unused_bits=0
|
||||
get_bitstring:"03020041":1:0:0:0
|
||||
|
||||
BIT STRING: octets=1, unused_bits=7
|
||||
get_bitstring:"03020741":1:7:0:MBEDTLS_ERR_ASN1_INVALID_DATA
|
||||
|
||||
BIT STRING: octets=1, unused_bits=8
|
||||
get_bitstring:"03020841":1:8:MBEDTLS_ERR_ASN1_INVALID_LENGTH:MBEDTLS_ERR_ASN1_INVALID_DATA
|
||||
|
||||
BIT STRING: octets=2, unused_bits=0
|
||||
get_bitstring:"0303004142":2:0:0:0
|
||||
|
||||
BIT STRING: octets=2, unused_bits=7
|
||||
get_bitstring:"0303074142":2:7:0:MBEDTLS_ERR_ASN1_INVALID_DATA
|
||||
|
||||
BIT STRING: octets=2, unused_bits=8
|
||||
get_bitstring:"0303084142":2:8:MBEDTLS_ERR_ASN1_INVALID_LENGTH:MBEDTLS_ERR_ASN1_INVALID_DATA
|
||||
|
||||
BIT STRING with trailing garbage, unused_bits=0
|
||||
get_bitstring:"030200417e":1:0:MBEDTLS_ERR_ASN1_LENGTH_MISMATCH:0
|
||||
|
||||
BIT STRING with trailing garbage, unused_bits=7
|
||||
get_bitstring:"030207417e":1:7:MBEDTLS_ERR_ASN1_LENGTH_MISMATCH:MBEDTLS_ERR_ASN1_INVALID_DATA
|
||||
|
||||
BIT STRING with trailing garbage, unused_bits=8
|
||||
get_bitstring:"030208417e":1:8:MBEDTLS_ERR_ASN1_INVALID_LENGTH:MBEDTLS_ERR_ASN1_INVALID_DATA
|
||||
|
||||
Not BIT STRING
|
||||
get_bitstring:"04020100":0:0:MBEDTLS_ERR_ASN1_UNEXPECTED_TAG:MBEDTLS_ERR_ASN1_UNEXPECTED_TAG
|
||||
|
||||
SEQUENCE OF 0 OCTET STRING
|
||||
get_sequence_of:"3000":0x04:"":0
|
||||
|
||||
SEQUENCE OF 0 OCTET STRING plus trailing garbage
|
||||
get_sequence_of:"30007e":0x04:"":MBEDTLS_ERR_ASN1_LENGTH_MISMATCH
|
||||
|
||||
SEQUENCE of 1 OCTET STRING truncated after tag
|
||||
get_sequence_of:"300104":0x04:"":MBEDTLS_ERR_ASN1_OUT_OF_DATA
|
||||
|
||||
SEQUENCE of 1 OCTET STRING truncated in length #1
|
||||
get_sequence_of:"30020481":0x04:"":MBEDTLS_ERR_ASN1_OUT_OF_DATA
|
||||
|
||||
SEQUENCE of 1 OCTET STRING truncated in length #2
|
||||
get_sequence_of:"3003048201":0x04:"":MBEDTLS_ERR_ASN1_OUT_OF_DATA
|
||||
|
||||
SEQUENCE of 1 OCTET STRING truncated in content #1
|
||||
get_sequence_of:"30020401":0x04:"":MBEDTLS_ERR_ASN1_OUT_OF_DATA
|
||||
|
||||
SEQUENCE of 1 OCTET STRING truncated in content #2
|
||||
get_sequence_of:"3003040241":0x04:"":MBEDTLS_ERR_ASN1_OUT_OF_DATA
|
||||
|
||||
SEQUENCE of 1 OCTET STRING truncated in content #3
|
||||
get_sequence_of:"300404034142":0x04:"":MBEDTLS_ERR_ASN1_OUT_OF_DATA
|
||||
|
||||
SEQUENCE of 1 OCTET STRING (0)
|
||||
get_sequence_of:"30020400":0x04:"4,0":0
|
||||
|
||||
SEQUENCE of 1 OCTET STRING (1)
|
||||
get_sequence_of:"3003040141":0x04:"4,1":0
|
||||
|
||||
SEQUENCE of 1 OCTET STRING (126)
|
||||
get_sequence_of:"308180047e414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141":0x04:"5,126":0
|
||||
|
||||
SEQUENCE of 2 OCTET STRINGs, second truncated after tag
|
||||
get_sequence_of:"30050402414104":0x04:"":MBEDTLS_ERR_ASN1_OUT_OF_DATA
|
||||
|
||||
SEQUENCE of 2 OCTET STRINGs, second truncated in length #1
|
||||
get_sequence_of:"3006040241410481":0x04:"":MBEDTLS_ERR_ASN1_OUT_OF_DATA
|
||||
|
||||
SEQUENCE of 2 OCTET STRINGs, second truncated in length #2
|
||||
get_sequence_of:"300704024141048201":0x04:"":MBEDTLS_ERR_ASN1_OUT_OF_DATA
|
||||
|
||||
SEQUENCE of 2 OCTET STRINGs, second truncated in content #1
|
||||
get_sequence_of:"3006040241410401":0x04:"":MBEDTLS_ERR_ASN1_OUT_OF_DATA
|
||||
|
||||
SEQUENCE of 2 OCTET STRINGs, second truncated in content #2
|
||||
get_sequence_of:"300704024141040241":0x04:"":MBEDTLS_ERR_ASN1_OUT_OF_DATA
|
||||
|
||||
SEQUENCE of 2 OCTET STRINGs, second truncated in content #3
|
||||
get_sequence_of:"30080402414104034142":0x04:"":MBEDTLS_ERR_ASN1_OUT_OF_DATA
|
||||
|
||||
SEQUENCE of 2 OCTET STRINGs (2, 0)
|
||||
get_sequence_of:"3006040241410400":0x04:"4,2,8,0":0
|
||||
|
||||
SEQUENCE of 2 OCTET STRINGs (2, 1)
|
||||
get_sequence_of:"300704024141040142":0x04:"4,2,8,1":0
|
||||
|
||||
SEQUENCE of 2 OCTET STRINGs (0, 2)
|
||||
get_sequence_of:"3006040004024141":0x04:"4,0,6,2":0
|
||||
|
||||
SEQUENCE of 2 OCTET STRINGs (1, 2)
|
||||
get_sequence_of:"300704014104024242":0x04:"4,1,7,2":0
|
||||
|
||||
Not a SEQUENCE (not CONSTRUCTED)
|
||||
get_sequence_of:"1000":0x04:"":MBEDTLS_ERR_ASN1_UNEXPECTED_TAG
|
||||
|
||||
Not a SEQUENCE (not SEQUENCE)
|
||||
get_sequence_of:"3100":0x04:"":MBEDTLS_ERR_ASN1_UNEXPECTED_TAG
|
||||
|
||||
Traverse empty SEQUENCE
|
||||
traverse_sequence_of:"3000":0:0:0:0:"":0
|
||||
|
||||
Traverse empty SEQUENCE plus trailing garbage
|
||||
traverse_sequence_of:"30007e":0:0:0:0:"":MBEDTLS_ERR_ASN1_LENGTH_MISMATCH
|
||||
|
||||
Traverse SEQUENCE of INTEGER: 1 INTEGER
|
||||
traverse_sequence_of:"30050203123456":0xff:0x02:0:0:"4,0x02,3":0
|
||||
|
||||
Traverse SEQUENCE of INTEGER: 2 INTEGERs
|
||||
traverse_sequence_of:"30080203123456020178":0xff:0x02:0:0:"4,0x02,3,9,0x02,1":0
|
||||
|
||||
Traverse SEQUENCE of INTEGER: INTEGER, NULL
|
||||
traverse_sequence_of:"300702031234560500":0xff:0x02:0:0:"4,0x02,3":MBEDTLS_ERR_ASN1_UNEXPECTED_TAG
|
||||
|
||||
Traverse SEQUENCE of INTEGER: NULL, INTEGER
|
||||
traverse_sequence_of:"300705000203123456":0xff:0x02:0:0:"":MBEDTLS_ERR_ASN1_UNEXPECTED_TAG
|
||||
|
||||
Traverse SEQUENCE of ANY: NULL, INTEGER
|
||||
traverse_sequence_of:"300705000203123456":0:0:0:0:"4,0x05,0,6,0x02,3":0
|
||||
|
||||
Traverse SEQUENCE of ANY, skip non-INTEGER: INTEGER, NULL
|
||||
traverse_sequence_of:"300702031234560500":0:0:0xff:0x02:"4,0x02,3":0
|
||||
|
||||
Traverse SEQUENCE of ANY, skip non-INTEGER: NULL, INTEGER
|
||||
traverse_sequence_of:"300705000203123456":0:0:0xff:0x02:"6,0x02,3":0
|
||||
|
||||
Traverse SEQUENCE of INTEGER, skip everything
|
||||
traverse_sequence_of:"30080203123456020178":0xff:0x02:0:1:"":0
|
||||
|
||||
Traverse SEQUENCE of {NULL, OCTET STRING}, skip NULL: OS, NULL
|
||||
traverse_sequence_of:"300704031234560500":0xfe:0x04:0xff:0x04:"4,0x04,3":0
|
||||
|
||||
Traverse SEQUENCE of {NULL, OCTET STRING}, skip NULL: NULL, OS
|
||||
traverse_sequence_of:"300705000403123456":0xfe:0x04:0xff:0x04:"6,0x04,3":0
|
||||
|
||||
Traverse SEQUENCE of {NULL, OCTET STRING}, skip everything
|
||||
traverse_sequence_of:"300705000403123456":0xfe:0x04:0:1:"":0
|
||||
|
||||
Traverse SEQUENCE of INTEGER, stop at 0: NULL
|
||||
traverse_sequence_of:"30020500":0xff:0x02:0:0:"":MBEDTLS_ERR_ASN1_UNEXPECTED_TAG
|
||||
|
||||
Traverse SEQUENCE of INTEGER, stop at 0: INTEGER
|
||||
traverse_sequence_of:"30050203123456":0xff:0x02:0:0:"":RET_TRAVERSE_STOP
|
||||
|
||||
Traverse SEQUENCE of INTEGER, stop at 0: INTEGER, NULL
|
||||
traverse_sequence_of:"300702031234560500":0xff:0x02:0:0:"":RET_TRAVERSE_STOP
|
||||
|
||||
Traverse SEQUENCE of INTEGER, stop at 1: INTEGER, NULL
|
||||
traverse_sequence_of:"300702031234560500":0xff:0x02:0:0:"4,0x02,3":MBEDTLS_ERR_ASN1_UNEXPECTED_TAG
|
||||
|
||||
Traverse SEQUENCE of INTEGER, stop at 1: INTEGER, INTEGER
|
||||
traverse_sequence_of:"30080203123456020178":0xff:0x02:0:0:"4,0x02,3":RET_TRAVERSE_STOP
|
||||
|
||||
AlgorithmIdentifier, no params
|
||||
get_alg:"300506034f4944":4:3:0:0:0:7:0
|
||||
|
||||
AlgorithmIdentifier, no params, trailing garbage
|
||||
get_alg:"300506034f49447e":4:3:0:0:0:7:0
|
||||
|
||||
AlgorithmIdentifier, null params
|
||||
get_alg:"300706034f49440500":4:3:0x05:9:0:9:0
|
||||
|
||||
AlgorithmIdentifier, null params, trailing garbage
|
||||
get_alg:"300706034f494405007e":4:3:0x05:9:0:9:0
|
||||
|
||||
AlgorithmIdentifier, OCTET STRING params
|
||||
get_alg:"300c06034f494404056162636465":4:3:0x04:9:5:14:0
|
||||
|
||||
AlgorithmIdentifier, truncated before OID
|
||||
get_alg:"3000":4:3:0:0:0:2:MBEDTLS_ERR_ASN1_OUT_OF_DATA
|
||||
|
||||
AlgorithmIdentifier, truncated in OID after tag
|
||||
get_alg:"300106":0:0:0:0:0:3:MBEDTLS_ERR_ASN1_OUT_OF_DATA
|
||||
|
||||
AlgorithmIdentifier, truncated in OID after length
|
||||
get_alg:"30020603":4:3:0:0:0:4:MBEDTLS_ERR_ASN1_OUT_OF_DATA
|
||||
|
||||
AlgorithmIdentifier, truncated inside OID content
|
||||
get_alg:"300406034f49":4:3:0:0:0:6:MBEDTLS_ERR_ASN1_OUT_OF_DATA
|
||||
|
||||
AlgorithmIdentifier, truncated in params after tag
|
||||
get_alg:"300606034f494404":4:3:0x04:0:0:8:MBEDTLS_ERR_ASN1_OUT_OF_DATA
|
||||
|
||||
AlgorithmIdentifier, truncated in params after length
|
||||
get_alg:"300706034f49440405":4:3:0x04:9:0:9:MBEDTLS_ERR_ASN1_OUT_OF_DATA
|
||||
|
||||
AlgorithmIdentifier, truncated inside params content
|
||||
get_alg:"300806034f4944040561":4:3:0x04:9:5:10:MBEDTLS_ERR_ASN1_OUT_OF_DATA
|
||||
|
||||
Not an AlgorithmIdentifier (not a SEQUENCE)
|
||||
get_alg:"310506034f4944":0:0:0:0:0:0:MBEDTLS_ERR_ASN1_UNEXPECTED_TAG
|
||||
|
||||
Not an AlgorithmIdentifier (empty SEQUENCE)
|
||||
get_alg:"3000":0:0:0:0:0:0:MBEDTLS_ERR_ASN1_OUT_OF_DATA
|
||||
|
||||
Not an AlgorithmIdentifier (not an OID)
|
||||
get_alg:"3006050006034f4944":0:0:0:0:0:0:MBEDTLS_ERR_ASN1_UNEXPECTED_TAG
|
||||
|
||||
Not an AlgorithmIdentifier (too many elements)
|
||||
get_alg:"300f06034f494406034f494406034f4944":0:0:0:0:0:0:MBEDTLS_ERR_ASN1_LENGTH_MISMATCH
|
||||
|
||||
Find named data: not found
|
||||
find_named_data:"414141":"424242":"434343":"444444":"7f7f7f":0:4
|
||||
|
||||
Find named data: empty haystack
|
||||
find_named_data:"414141":"424242":"434343":"444444":"7f7f7f":4:4
|
||||
|
||||
Find named data: first
|
||||
find_named_data:"414141":"424242":"434343":"444444":"414141":0:0
|
||||
|
||||
Find named data: last
|
||||
find_named_data:"414141":"424242":"434343":"444444":"444444":0:3
|
||||
|
||||
Find named data: skip suffix
|
||||
find_named_data:"41414141":"414141":"434343":"444444":"414141":0:1
|
||||
|
||||
Find named data: skip prefix
|
||||
find_named_data:"4141":"414141":"434343":"444444":"414141":0:1
|
||||
|
||||
Find named data: first match
|
||||
find_named_data:"414141":"414141":"434343":"444444":"414141":0:0
|
||||
|
||||
Free named data: null pointer
|
||||
depends_on:MBEDTLS_TEST_DEPRECATED
|
||||
free_named_data_null:
|
||||
|
||||
Free named data: all null
|
||||
depends_on:MBEDTLS_TEST_DEPRECATED
|
||||
free_named_data:0:0:0
|
||||
|
||||
Free named data: with oid
|
||||
depends_on:MBEDTLS_TEST_DEPRECATED
|
||||
free_named_data:1:0:0
|
||||
|
||||
Free named data: with val
|
||||
depends_on:MBEDTLS_TEST_DEPRECATED
|
||||
free_named_data:0:1:0
|
||||
|
||||
Free named data: with next
|
||||
depends_on:MBEDTLS_TEST_DEPRECATED
|
||||
free_named_data:0:0:1
|
||||
|
||||
Free named data list (empty)
|
||||
free_named_data_list:0
|
||||
|
||||
Free named data list (1)
|
||||
free_named_data_list:1
|
||||
|
||||
Free named data list (2)
|
||||
free_named_data_list:2
|
||||
774
vendor/mbedtls/tests/suites/test_suite_asn1parse.function
vendored
Normal file
774
vendor/mbedtls/tests/suites/test_suite_asn1parse.function
vendored
Normal file
@@ -0,0 +1,774 @@
|
||||
/* BEGIN_HEADER */
|
||||
#include <errno.h>
|
||||
#include <stdlib.h>
|
||||
#include <limits.h>
|
||||
|
||||
#include "mbedtls/bignum.h"
|
||||
#include "mbedtls/asn1.h"
|
||||
#if defined(MBEDTLS_ASN1_WRITE_C)
|
||||
#include "mbedtls/asn1write.h"
|
||||
#endif
|
||||
|
||||
/* Used internally to report an error that indicates a bug in a parsing function. */
|
||||
#define ERR_PARSE_INCONSISTENCY INT_MAX
|
||||
|
||||
/* Use this magic value in some tests to indicate that the expected result
|
||||
* should not be checked. */
|
||||
#define UNPREDICTABLE_RESULT 0x5552
|
||||
|
||||
static int nested_parse(unsigned char **const p,
|
||||
const unsigned char *const end)
|
||||
{
|
||||
int ret;
|
||||
size_t len = 0;
|
||||
size_t len2 = 0;
|
||||
unsigned char *const start = *p;
|
||||
unsigned char *content_start;
|
||||
unsigned char tag;
|
||||
|
||||
/* First get the length, skipping over the tag. */
|
||||
content_start = start + 1;
|
||||
ret = mbedtls_asn1_get_len(&content_start, end, &len);
|
||||
TEST_ASSERT(content_start <= end);
|
||||
if (ret != 0) {
|
||||
return ret;
|
||||
}
|
||||
|
||||
/* Since we have a valid element start (tag and length), retrieve and
|
||||
* check the tag. */
|
||||
tag = start[0];
|
||||
TEST_EQUAL(mbedtls_asn1_get_tag(p, end, &len2, tag ^ 1),
|
||||
MBEDTLS_ERR_ASN1_UNEXPECTED_TAG);
|
||||
*p = start;
|
||||
TEST_EQUAL(mbedtls_asn1_get_tag(p, end, &len2, tag), 0);
|
||||
TEST_EQUAL(len, len2);
|
||||
TEST_ASSERT(*p == content_start);
|
||||
*p = content_start;
|
||||
|
||||
switch (tag & 0x1f) {
|
||||
case MBEDTLS_ASN1_BOOLEAN:
|
||||
{
|
||||
int val = -257;
|
||||
*p = start;
|
||||
ret = mbedtls_asn1_get_bool(p, end, &val);
|
||||
if (ret == 0) {
|
||||
TEST_ASSERT(val == 0 || val == 1);
|
||||
}
|
||||
break;
|
||||
}
|
||||
|
||||
case MBEDTLS_ASN1_INTEGER:
|
||||
{
|
||||
#if defined(MBEDTLS_BIGNUM_C)
|
||||
mbedtls_mpi mpi;
|
||||
mbedtls_mpi_init(&mpi);
|
||||
*p = start;
|
||||
ret = mbedtls_asn1_get_mpi(p, end, &mpi);
|
||||
mbedtls_mpi_free(&mpi);
|
||||
#else
|
||||
*p = start + 1;
|
||||
ret = mbedtls_asn1_get_len(p, end, &len);
|
||||
*p += len;
|
||||
#endif
|
||||
/* If we're sure that the number fits in an int, also
|
||||
* call mbedtls_asn1_get_int(). */
|
||||
if (ret == 0 && len < sizeof(int)) {
|
||||
int val = -257;
|
||||
unsigned char *q = start;
|
||||
ret = mbedtls_asn1_get_int(&q, end, &val);
|
||||
TEST_ASSERT(*p == q);
|
||||
}
|
||||
break;
|
||||
}
|
||||
|
||||
case MBEDTLS_ASN1_BIT_STRING:
|
||||
{
|
||||
mbedtls_asn1_bitstring bs;
|
||||
*p = start;
|
||||
ret = mbedtls_asn1_get_bitstring(p, end, &bs);
|
||||
break;
|
||||
}
|
||||
|
||||
case MBEDTLS_ASN1_SEQUENCE:
|
||||
{
|
||||
while (*p <= end && *p < content_start + len && ret == 0) {
|
||||
ret = nested_parse(p, content_start + len);
|
||||
}
|
||||
break;
|
||||
}
|
||||
|
||||
case MBEDTLS_ASN1_OCTET_STRING:
|
||||
case MBEDTLS_ASN1_NULL:
|
||||
case MBEDTLS_ASN1_OID:
|
||||
case MBEDTLS_ASN1_UTF8_STRING:
|
||||
case MBEDTLS_ASN1_SET:
|
||||
case MBEDTLS_ASN1_PRINTABLE_STRING:
|
||||
case MBEDTLS_ASN1_T61_STRING:
|
||||
case MBEDTLS_ASN1_IA5_STRING:
|
||||
case MBEDTLS_ASN1_UTC_TIME:
|
||||
case MBEDTLS_ASN1_GENERALIZED_TIME:
|
||||
case MBEDTLS_ASN1_UNIVERSAL_STRING:
|
||||
case MBEDTLS_ASN1_BMP_STRING:
|
||||
default:
|
||||
/* No further testing implemented for this tag. */
|
||||
*p += len;
|
||||
return 0;
|
||||
}
|
||||
|
||||
TEST_ASSERT(*p <= end);
|
||||
return ret;
|
||||
|
||||
exit:
|
||||
return ERR_PARSE_INCONSISTENCY;
|
||||
}
|
||||
|
||||
static int get_len_step(const data_t *input, size_t buffer_size,
|
||||
size_t actual_length)
|
||||
{
|
||||
unsigned char *buf = NULL;
|
||||
unsigned char *p = NULL;
|
||||
unsigned char *end;
|
||||
size_t parsed_length;
|
||||
int ret;
|
||||
|
||||
mbedtls_test_set_step(buffer_size);
|
||||
/* Allocate a new buffer of exactly the length to parse each time.
|
||||
* This gives memory sanitizers a chance to catch buffer overreads. */
|
||||
if (buffer_size == 0) {
|
||||
TEST_CALLOC(buf, 1);
|
||||
end = buf + 1;
|
||||
p = end;
|
||||
} else {
|
||||
TEST_CALLOC_OR_SKIP(buf, buffer_size);
|
||||
if (buffer_size > input->len) {
|
||||
memcpy(buf, input->x, input->len);
|
||||
memset(buf + input->len, 'A', buffer_size - input->len);
|
||||
} else {
|
||||
memcpy(buf, input->x, buffer_size);
|
||||
}
|
||||
p = buf;
|
||||
end = buf + buffer_size;
|
||||
}
|
||||
|
||||
ret = mbedtls_asn1_get_len(&p, end, &parsed_length);
|
||||
|
||||
if (buffer_size >= input->len + actual_length) {
|
||||
TEST_EQUAL(ret, 0);
|
||||
TEST_ASSERT(p == buf + input->len);
|
||||
TEST_EQUAL(parsed_length, actual_length);
|
||||
} else {
|
||||
TEST_EQUAL(ret, MBEDTLS_ERR_ASN1_OUT_OF_DATA);
|
||||
}
|
||||
mbedtls_free(buf);
|
||||
return 1;
|
||||
|
||||
exit:
|
||||
mbedtls_free(buf);
|
||||
return 0;
|
||||
}
|
||||
|
||||
typedef struct {
|
||||
const unsigned char *input_start;
|
||||
const char *description;
|
||||
} traverse_state_t;
|
||||
|
||||
/* Value returned by traverse_callback if description runs out. */
|
||||
#define RET_TRAVERSE_STOP 1
|
||||
/* Value returned by traverse_callback if description has an invalid format
|
||||
* (see traverse_sequence_of). */
|
||||
#define RET_TRAVERSE_ERROR 2
|
||||
|
||||
|
||||
static int traverse_callback(void *ctx, int tag,
|
||||
unsigned char *content, size_t len)
|
||||
{
|
||||
traverse_state_t *state = ctx;
|
||||
size_t offset;
|
||||
const char *rest = state->description;
|
||||
unsigned long n;
|
||||
|
||||
TEST_ASSERT(content > state->input_start);
|
||||
offset = content - state->input_start;
|
||||
mbedtls_test_set_step(offset);
|
||||
|
||||
if (*rest == 0) {
|
||||
return RET_TRAVERSE_STOP;
|
||||
}
|
||||
n = strtoul(rest, (char **) &rest, 0);
|
||||
TEST_EQUAL(n, offset);
|
||||
TEST_EQUAL(*rest, ',');
|
||||
++rest;
|
||||
n = strtoul(rest, (char **) &rest, 0);
|
||||
TEST_EQUAL(n, (unsigned) tag);
|
||||
TEST_EQUAL(*rest, ',');
|
||||
++rest;
|
||||
n = strtoul(rest, (char **) &rest, 0);
|
||||
TEST_EQUAL(n, len);
|
||||
if (*rest == ',') {
|
||||
++rest;
|
||||
}
|
||||
|
||||
state->description = rest;
|
||||
return 0;
|
||||
|
||||
exit:
|
||||
return RET_TRAVERSE_ERROR;
|
||||
}
|
||||
|
||||
/* END_HEADER */
|
||||
|
||||
/* BEGIN_DEPENDENCIES
|
||||
* depends_on:MBEDTLS_ASN1_PARSE_C
|
||||
* END_DEPENDENCIES
|
||||
*/
|
||||
|
||||
/* BEGIN_CASE */
|
||||
void parse_prefixes(const data_t *input,
|
||||
int full_result,
|
||||
int overfull_result)
|
||||
{
|
||||
/* full_result: expected result from parsing the given string. */
|
||||
/* overfull_result: expected_result from parsing the given string plus
|
||||
* some trailing garbage. This may be UNPREDICTABLE_RESULT to accept
|
||||
* any result: use this for invalid inputs that may or may not become
|
||||
* valid depending on what the trailing garbage is. */
|
||||
|
||||
unsigned char *buf = NULL;
|
||||
unsigned char *p = NULL;
|
||||
size_t buffer_size;
|
||||
int ret;
|
||||
|
||||
/* Test every prefix of the input, except the empty string.
|
||||
* The first byte of the string is the tag. Without a tag byte,
|
||||
* we wouldn't know what to parse the input as.
|
||||
* Also test the input followed by an extra byte.
|
||||
*/
|
||||
for (buffer_size = 1; buffer_size <= input->len + 1; buffer_size++) {
|
||||
mbedtls_test_set_step(buffer_size);
|
||||
/* Allocate a new buffer of exactly the length to parse each time.
|
||||
* This gives memory sanitizers a chance to catch buffer overreads. */
|
||||
TEST_CALLOC(buf, buffer_size);
|
||||
memcpy(buf, input->x, buffer_size);
|
||||
p = buf;
|
||||
ret = nested_parse(&p, buf + buffer_size);
|
||||
|
||||
if (ret == ERR_PARSE_INCONSISTENCY) {
|
||||
goto exit;
|
||||
}
|
||||
if (buffer_size < input->len) {
|
||||
TEST_EQUAL(ret, MBEDTLS_ERR_ASN1_OUT_OF_DATA);
|
||||
} else if (buffer_size == input->len) {
|
||||
TEST_EQUAL(ret, full_result);
|
||||
} else { /* ( buffer_size > input->len ) */
|
||||
if (overfull_result != UNPREDICTABLE_RESULT) {
|
||||
TEST_EQUAL(ret, overfull_result);
|
||||
}
|
||||
}
|
||||
if (ret == 0) {
|
||||
TEST_ASSERT(p == buf + input->len);
|
||||
}
|
||||
|
||||
mbedtls_free(buf);
|
||||
buf = NULL;
|
||||
}
|
||||
|
||||
exit:
|
||||
mbedtls_free(buf);
|
||||
}
|
||||
/* END_CASE */
|
||||
|
||||
/* BEGIN_CASE */
|
||||
void get_len(const data_t *input, int actual_length_arg)
|
||||
{
|
||||
size_t actual_length = actual_length_arg;
|
||||
size_t buffer_size;
|
||||
|
||||
/* Test prefixes of a buffer containing the given length string
|
||||
* followed by `actual_length` bytes of payload. To save a bit of
|
||||
* time, we skip some "boring" prefixes: we don't test prefixes where
|
||||
* the payload is truncated more than one byte away from either end,
|
||||
* and we only test the empty string on a 1-byte input.
|
||||
*/
|
||||
for (buffer_size = 1; buffer_size <= input->len + 1; buffer_size++) {
|
||||
if (!get_len_step(input, buffer_size, actual_length)) {
|
||||
goto exit;
|
||||
}
|
||||
}
|
||||
if (!get_len_step(input, input->len + actual_length - 1, actual_length)) {
|
||||
goto exit;
|
||||
}
|
||||
if (!get_len_step(input, input->len + actual_length, actual_length)) {
|
||||
goto exit;
|
||||
}
|
||||
}
|
||||
/* END_CASE */
|
||||
|
||||
/* BEGIN_CASE */
|
||||
void get_boolean(const data_t *input,
|
||||
int expected_value, int expected_result)
|
||||
{
|
||||
unsigned char *p = input->x;
|
||||
int val;
|
||||
int ret;
|
||||
ret = mbedtls_asn1_get_bool(&p, input->x + input->len, &val);
|
||||
TEST_EQUAL(ret, expected_result);
|
||||
if (expected_result == 0) {
|
||||
TEST_EQUAL(val, expected_value);
|
||||
TEST_ASSERT(p == input->x + input->len);
|
||||
}
|
||||
}
|
||||
/* END_CASE */
|
||||
|
||||
/* BEGIN_CASE */
|
||||
void empty_integer(const data_t *input)
|
||||
{
|
||||
unsigned char *p;
|
||||
#if defined(MBEDTLS_BIGNUM_C)
|
||||
mbedtls_mpi actual_mpi;
|
||||
#endif
|
||||
int val;
|
||||
|
||||
#if defined(MBEDTLS_BIGNUM_C)
|
||||
mbedtls_mpi_init(&actual_mpi);
|
||||
#endif
|
||||
|
||||
/* An INTEGER with no content is not valid. */
|
||||
p = input->x;
|
||||
TEST_EQUAL(mbedtls_asn1_get_int(&p, input->x + input->len, &val),
|
||||
MBEDTLS_ERR_ASN1_INVALID_LENGTH);
|
||||
|
||||
#if defined(MBEDTLS_BIGNUM_C)
|
||||
/* INTEGERs are sometimes abused as bitstrings, so the library accepts
|
||||
* an INTEGER with empty content and gives it the value 0. */
|
||||
p = input->x;
|
||||
TEST_EQUAL(mbedtls_asn1_get_mpi(&p, input->x + input->len, &actual_mpi),
|
||||
0);
|
||||
TEST_EQUAL(mbedtls_mpi_cmp_int(&actual_mpi, 0), 0);
|
||||
#endif
|
||||
|
||||
exit:
|
||||
#if defined(MBEDTLS_BIGNUM_C)
|
||||
mbedtls_mpi_free(&actual_mpi);
|
||||
#endif
|
||||
/*empty cleanup in some configurations*/;
|
||||
}
|
||||
/* END_CASE */
|
||||
|
||||
/* BEGIN_CASE */
|
||||
void get_integer(const data_t *input,
|
||||
const char *expected_hex, int expected_result)
|
||||
{
|
||||
unsigned char *p;
|
||||
#if defined(MBEDTLS_BIGNUM_C)
|
||||
mbedtls_mpi expected_mpi;
|
||||
mbedtls_mpi actual_mpi;
|
||||
mbedtls_mpi complement;
|
||||
int expected_result_for_mpi = expected_result;
|
||||
#endif
|
||||
long expected_value;
|
||||
int expected_result_for_int = expected_result;
|
||||
int val;
|
||||
int ret;
|
||||
|
||||
#if defined(MBEDTLS_BIGNUM_C)
|
||||
mbedtls_mpi_init(&expected_mpi);
|
||||
mbedtls_mpi_init(&actual_mpi);
|
||||
mbedtls_mpi_init(&complement);
|
||||
#endif
|
||||
|
||||
errno = 0;
|
||||
expected_value = strtol(expected_hex, NULL, 16);
|
||||
if (expected_result == 0 &&
|
||||
(errno == ERANGE
|
||||
#if LONG_MAX > INT_MAX
|
||||
|| expected_value > INT_MAX || expected_value < INT_MIN
|
||||
#endif
|
||||
)) {
|
||||
/* The library returns the dubious error code INVALID_LENGTH
|
||||
* for integers that are out of range. */
|
||||
expected_result_for_int = MBEDTLS_ERR_ASN1_INVALID_LENGTH;
|
||||
}
|
||||
if (expected_result == 0 && expected_value < 0) {
|
||||
/* The library does not support negative INTEGERs and
|
||||
* returns the dubious error code INVALID_LENGTH.
|
||||
* Test that we preserve the historical behavior. If we
|
||||
* decide to change the behavior, we'll also change this test. */
|
||||
expected_result_for_int = MBEDTLS_ERR_ASN1_INVALID_LENGTH;
|
||||
}
|
||||
|
||||
p = input->x;
|
||||
ret = mbedtls_asn1_get_int(&p, input->x + input->len, &val);
|
||||
TEST_EQUAL(ret, expected_result_for_int);
|
||||
if (ret == 0) {
|
||||
TEST_EQUAL(val, expected_value);
|
||||
TEST_ASSERT(p == input->x + input->len);
|
||||
}
|
||||
|
||||
#if defined(MBEDTLS_BIGNUM_C)
|
||||
ret = mbedtls_test_read_mpi(&expected_mpi, expected_hex);
|
||||
TEST_ASSERT(ret == 0 || ret == MBEDTLS_ERR_MPI_BAD_INPUT_DATA);
|
||||
if (ret == MBEDTLS_ERR_MPI_BAD_INPUT_DATA) {
|
||||
/* The data overflows the maximum MPI size. */
|
||||
expected_result_for_mpi = MBEDTLS_ERR_MPI_BAD_INPUT_DATA;
|
||||
}
|
||||
p = input->x;
|
||||
ret = mbedtls_asn1_get_mpi(&p, input->x + input->len, &actual_mpi);
|
||||
TEST_EQUAL(ret, expected_result_for_mpi);
|
||||
if (ret == 0) {
|
||||
if (expected_value >= 0) {
|
||||
TEST_ASSERT(mbedtls_mpi_cmp_mpi(&actual_mpi,
|
||||
&expected_mpi) == 0);
|
||||
} else {
|
||||
/* The library ignores the sign bit in ASN.1 INTEGERs
|
||||
* (which makes sense insofar as INTEGERs are sometimes
|
||||
* abused as bit strings), so the result of parsing them
|
||||
* is a positive integer such that expected_mpi +
|
||||
* actual_mpi = 2^n where n is the length of the content
|
||||
* of the INTEGER. (Leading ff octets don't matter for the
|
||||
* expected value, but they matter for the actual value.)
|
||||
* Test that we don't change from this behavior. If we
|
||||
* decide to fix the library to change the behavior on
|
||||
* negative INTEGERs, we'll fix this test code. */
|
||||
unsigned char *q = input->x + 1;
|
||||
size_t len;
|
||||
TEST_ASSERT(mbedtls_asn1_get_len(&q, input->x + input->len,
|
||||
&len) == 0);
|
||||
TEST_ASSERT(mbedtls_mpi_lset(&complement, 1) == 0);
|
||||
TEST_ASSERT(mbedtls_mpi_shift_l(&complement, len * 8) == 0);
|
||||
TEST_ASSERT(mbedtls_mpi_add_mpi(&complement, &complement,
|
||||
&expected_mpi) == 0);
|
||||
TEST_ASSERT(mbedtls_mpi_cmp_mpi(&complement,
|
||||
&actual_mpi) == 0);
|
||||
}
|
||||
TEST_ASSERT(p == input->x + input->len);
|
||||
}
|
||||
#endif
|
||||
|
||||
exit:
|
||||
#if defined(MBEDTLS_BIGNUM_C)
|
||||
mbedtls_mpi_free(&expected_mpi);
|
||||
mbedtls_mpi_free(&actual_mpi);
|
||||
mbedtls_mpi_free(&complement);
|
||||
#endif
|
||||
/*empty cleanup in some configurations*/;
|
||||
}
|
||||
/* END_CASE */
|
||||
|
||||
/* BEGIN_CASE */
|
||||
void get_enum(const data_t *input,
|
||||
const char *expected_hex, int expected_result)
|
||||
{
|
||||
unsigned char *p;
|
||||
long expected_value;
|
||||
int expected_result_for_enum = expected_result;
|
||||
int val;
|
||||
int ret;
|
||||
|
||||
errno = 0;
|
||||
expected_value = strtol(expected_hex, NULL, 16);
|
||||
if (expected_result == 0 &&
|
||||
(errno == ERANGE
|
||||
#if LONG_MAX > INT_MAX
|
||||
|| expected_value > INT_MAX || expected_value < INT_MIN
|
||||
#endif
|
||||
)) {
|
||||
/* The library returns the dubious error code INVALID_LENGTH
|
||||
* for integers that are out of range. */
|
||||
expected_result_for_enum = MBEDTLS_ERR_ASN1_INVALID_LENGTH;
|
||||
}
|
||||
if (expected_result == 0 && expected_value < 0) {
|
||||
/* The library does not support negative INTEGERs and
|
||||
* returns the dubious error code INVALID_LENGTH.
|
||||
* Test that we preserve the historical behavior. If we
|
||||
* decide to change the behavior, we'll also change this test. */
|
||||
expected_result_for_enum = MBEDTLS_ERR_ASN1_INVALID_LENGTH;
|
||||
}
|
||||
|
||||
p = input->x;
|
||||
ret = mbedtls_asn1_get_enum(&p, input->x + input->len, &val);
|
||||
TEST_EQUAL(ret, expected_result_for_enum);
|
||||
if (ret == 0) {
|
||||
TEST_EQUAL(val, expected_value);
|
||||
TEST_ASSERT(p == input->x + input->len);
|
||||
}
|
||||
}
|
||||
/* END_CASE */
|
||||
|
||||
/* BEGIN_CASE depends_on:MBEDTLS_BIGNUM_C */
|
||||
void get_mpi_too_large()
|
||||
{
|
||||
unsigned char *buf = NULL;
|
||||
unsigned char *p;
|
||||
mbedtls_mpi actual_mpi;
|
||||
size_t too_many_octets =
|
||||
MBEDTLS_MPI_MAX_LIMBS * sizeof(mbedtls_mpi_uint) + 1;
|
||||
size_t size = too_many_octets + 6;
|
||||
|
||||
mbedtls_mpi_init(&actual_mpi);
|
||||
|
||||
TEST_CALLOC(buf, size);
|
||||
buf[0] = 0x02; /* tag: INTEGER */
|
||||
buf[1] = 0x84; /* 4-octet length */
|
||||
buf[2] = (too_many_octets >> 24) & 0xff;
|
||||
buf[3] = (too_many_octets >> 16) & 0xff;
|
||||
buf[4] = (too_many_octets >> 8) & 0xff;
|
||||
buf[5] = too_many_octets & 0xff;
|
||||
buf[6] = 0x01; /* most significant octet */
|
||||
|
||||
p = buf;
|
||||
TEST_EQUAL(mbedtls_asn1_get_mpi(&p, buf + size, &actual_mpi),
|
||||
MBEDTLS_ERR_MPI_ALLOC_FAILED);
|
||||
|
||||
exit:
|
||||
mbedtls_mpi_free(&actual_mpi);
|
||||
mbedtls_free(buf);
|
||||
}
|
||||
/* END_CASE */
|
||||
|
||||
/* BEGIN_CASE */
|
||||
void get_bitstring(const data_t *input,
|
||||
int expected_length, int expected_unused_bits,
|
||||
int expected_result, int expected_result_null)
|
||||
{
|
||||
mbedtls_asn1_bitstring bs = { 0xdead, 0x21, NULL };
|
||||
unsigned char *p = input->x;
|
||||
|
||||
TEST_EQUAL(mbedtls_asn1_get_bitstring(&p, input->x + input->len, &bs),
|
||||
expected_result);
|
||||
if (expected_result == 0) {
|
||||
TEST_EQUAL(bs.len, (size_t) expected_length);
|
||||
TEST_EQUAL(bs.unused_bits, expected_unused_bits);
|
||||
TEST_ASSERT(bs.p != NULL);
|
||||
TEST_EQUAL(bs.p - input->x + bs.len, input->len);
|
||||
TEST_ASSERT(p == input->x + input->len);
|
||||
}
|
||||
|
||||
p = input->x;
|
||||
TEST_EQUAL(mbedtls_asn1_get_bitstring_null(&p, input->x + input->len,
|
||||
&bs.len),
|
||||
expected_result_null);
|
||||
if (expected_result_null == 0) {
|
||||
TEST_EQUAL(bs.len, (size_t) expected_length);
|
||||
if (expected_result == 0) {
|
||||
TEST_ASSERT(p == input->x + input->len - bs.len);
|
||||
}
|
||||
}
|
||||
}
|
||||
/* END_CASE */
|
||||
|
||||
/* BEGIN_CASE */
|
||||
void get_sequence_of(const data_t *input, int tag,
|
||||
const char *description,
|
||||
int expected_result)
|
||||
{
|
||||
/* The description string is a comma-separated list of integers.
|
||||
* For each element in the SEQUENCE in input, description contains
|
||||
* two integers: the offset of the element (offset from the start
|
||||
* of input to the tag of the element) and the length of the
|
||||
* element's contents.
|
||||
* "offset1,length1,..." */
|
||||
|
||||
mbedtls_asn1_sequence head = { { 0, 0, NULL }, NULL };
|
||||
mbedtls_asn1_sequence *cur;
|
||||
unsigned char *p = input->x;
|
||||
const char *rest = description;
|
||||
unsigned long n;
|
||||
unsigned int step = 0;
|
||||
|
||||
TEST_EQUAL(mbedtls_asn1_get_sequence_of(&p, input->x + input->len,
|
||||
&head, tag),
|
||||
expected_result);
|
||||
if (expected_result == 0) {
|
||||
TEST_ASSERT(p == input->x + input->len);
|
||||
|
||||
if (!*rest) {
|
||||
TEST_EQUAL(head.buf.tag, 0);
|
||||
TEST_ASSERT(head.buf.p == NULL);
|
||||
TEST_EQUAL(head.buf.len, 0);
|
||||
TEST_ASSERT(head.next == NULL);
|
||||
} else {
|
||||
cur = &head;
|
||||
while (*rest) {
|
||||
mbedtls_test_set_step(step);
|
||||
TEST_ASSERT(cur != NULL);
|
||||
TEST_EQUAL(cur->buf.tag, tag);
|
||||
n = strtoul(rest, (char **) &rest, 0);
|
||||
TEST_EQUAL(n, (size_t) (cur->buf.p - input->x));
|
||||
++rest;
|
||||
n = strtoul(rest, (char **) &rest, 0);
|
||||
TEST_EQUAL(n, cur->buf.len);
|
||||
if (*rest) {
|
||||
++rest;
|
||||
}
|
||||
cur = cur->next;
|
||||
++step;
|
||||
}
|
||||
TEST_ASSERT(cur == NULL);
|
||||
}
|
||||
}
|
||||
|
||||
exit:
|
||||
mbedtls_asn1_sequence_free(head.next);
|
||||
}
|
||||
/* END_CASE */
|
||||
|
||||
/* BEGIN_CASE */
|
||||
void traverse_sequence_of(const data_t *input,
|
||||
int tag_must_mask, int tag_must_val,
|
||||
int tag_may_mask, int tag_may_val,
|
||||
const char *description,
|
||||
int expected_result)
|
||||
{
|
||||
/* The description string is a comma-separated list of integers.
|
||||
* For each element in the SEQUENCE in input, description contains
|
||||
* three integers: the offset of the element's content (offset from
|
||||
* the start of input to the content of the element), the element's tag,
|
||||
* and the length of the element's contents.
|
||||
* "offset1,tag1,length1,..." */
|
||||
|
||||
unsigned char *p = input->x;
|
||||
traverse_state_t traverse_state = { input->x, description };
|
||||
int ret;
|
||||
|
||||
ret = mbedtls_asn1_traverse_sequence_of(&p, input->x + input->len,
|
||||
(uint8_t) tag_must_mask, (uint8_t) tag_must_val,
|
||||
(uint8_t) tag_may_mask, (uint8_t) tag_may_val,
|
||||
traverse_callback, &traverse_state);
|
||||
if (ret == RET_TRAVERSE_ERROR) {
|
||||
goto exit;
|
||||
}
|
||||
TEST_EQUAL(ret, expected_result);
|
||||
TEST_EQUAL(*traverse_state.description, 0);
|
||||
}
|
||||
/* END_CASE */
|
||||
|
||||
/* BEGIN_CASE */
|
||||
void get_alg(const data_t *input,
|
||||
int oid_offset, int oid_length,
|
||||
int params_tag, int params_offset, int params_length,
|
||||
int total_length,
|
||||
int expected_result)
|
||||
{
|
||||
mbedtls_asn1_buf oid = { -1, 0, NULL };
|
||||
mbedtls_asn1_buf params = { -1, 0, NULL };
|
||||
unsigned char *p = input->x;
|
||||
int ret;
|
||||
|
||||
TEST_EQUAL(mbedtls_asn1_get_alg(&p, input->x + input->len,
|
||||
&oid, ¶ms),
|
||||
expected_result);
|
||||
if (expected_result == 0) {
|
||||
TEST_EQUAL(oid.tag, MBEDTLS_ASN1_OID);
|
||||
TEST_EQUAL(oid.p - input->x, oid_offset);
|
||||
TEST_EQUAL(oid.len, (size_t) oid_length);
|
||||
TEST_EQUAL(params.tag, params_tag);
|
||||
if (params_offset != 0) {
|
||||
TEST_EQUAL(params.p - input->x, params_offset);
|
||||
} else {
|
||||
TEST_ASSERT(params.p == NULL);
|
||||
}
|
||||
TEST_EQUAL(params.len, (size_t) params_length);
|
||||
TEST_EQUAL(p - input->x, total_length);
|
||||
}
|
||||
|
||||
ret = mbedtls_asn1_get_alg_null(&p, input->x + input->len, &oid);
|
||||
if (expected_result == 0 && params_offset == 0) {
|
||||
TEST_EQUAL(oid.tag, MBEDTLS_ASN1_OID);
|
||||
TEST_EQUAL(oid.p - input->x, oid_offset);
|
||||
TEST_EQUAL(oid.len, (size_t) oid_length);
|
||||
TEST_EQUAL(p - input->x, total_length);
|
||||
} else {
|
||||
TEST_ASSERT(ret != 0);
|
||||
}
|
||||
}
|
||||
/* END_CASE */
|
||||
|
||||
/* BEGIN_CASE */
|
||||
void find_named_data(data_t *oid0, data_t *oid1, data_t *oid2, data_t *oid3,
|
||||
data_t *needle, int from, int position)
|
||||
{
|
||||
mbedtls_asn1_named_data nd[] = {
|
||||
{ { 0x06, oid0->len, oid0->x }, { 0, 0, NULL }, NULL, 0 },
|
||||
{ { 0x06, oid1->len, oid1->x }, { 0, 0, NULL }, NULL, 0 },
|
||||
{ { 0x06, oid2->len, oid2->x }, { 0, 0, NULL }, NULL, 0 },
|
||||
{ { 0x06, oid3->len, oid3->x }, { 0, 0, NULL }, NULL, 0 },
|
||||
};
|
||||
mbedtls_asn1_named_data *pointers[ARRAY_LENGTH(nd) + 1];
|
||||
size_t i;
|
||||
const mbedtls_asn1_named_data *found;
|
||||
|
||||
for (i = 0; i < ARRAY_LENGTH(nd); i++) {
|
||||
pointers[i] = &nd[i];
|
||||
}
|
||||
pointers[ARRAY_LENGTH(nd)] = NULL;
|
||||
for (i = 0; i < ARRAY_LENGTH(nd); i++) {
|
||||
nd[i].next = pointers[i+1];
|
||||
}
|
||||
|
||||
found = mbedtls_asn1_find_named_data((const mbedtls_asn1_named_data *) pointers[from],
|
||||
(const char *) needle->x,
|
||||
needle->len);
|
||||
TEST_ASSERT(found == pointers[position]);
|
||||
}
|
||||
/* END_CASE */
|
||||
|
||||
/* BEGIN_CASE depends_on:!MBEDTLS_DEPRECATED_REMOVED:!MBEDTLS_DEPRECATED_WARNING */
|
||||
void free_named_data_null()
|
||||
{
|
||||
mbedtls_asn1_free_named_data(NULL);
|
||||
goto exit; /* Silence unused label warning */
|
||||
}
|
||||
/* END_CASE */
|
||||
|
||||
/* BEGIN_CASE depends_on:!MBEDTLS_DEPRECATED_REMOVED:!MBEDTLS_DEPRECATED_WARNING */
|
||||
void free_named_data(int with_oid, int with_val, int with_next)
|
||||
{
|
||||
mbedtls_asn1_named_data next =
|
||||
{ { 0x06, 0, NULL }, { 0, 0xcafe, NULL }, NULL, 0 };
|
||||
mbedtls_asn1_named_data head =
|
||||
{ { 0x06, 0, NULL }, { 0, 0, NULL }, NULL, 0 };
|
||||
|
||||
if (with_oid) {
|
||||
TEST_CALLOC(head.oid.p, 1);
|
||||
}
|
||||
if (with_val) {
|
||||
TEST_CALLOC(head.val.p, 1);
|
||||
}
|
||||
if (with_next) {
|
||||
head.next = &next;
|
||||
}
|
||||
|
||||
mbedtls_asn1_free_named_data(&head);
|
||||
TEST_ASSERT(head.oid.p == NULL);
|
||||
TEST_ASSERT(head.val.p == NULL);
|
||||
TEST_ASSERT(head.next == NULL);
|
||||
TEST_ASSERT(next.val.len == 0xcafe);
|
||||
|
||||
exit:
|
||||
mbedtls_free(head.oid.p);
|
||||
mbedtls_free(head.val.p);
|
||||
}
|
||||
/* END_CASE */
|
||||
|
||||
/* BEGIN_CASE */
|
||||
void free_named_data_list(int length)
|
||||
{
|
||||
mbedtls_asn1_named_data *head = NULL;
|
||||
int i;
|
||||
|
||||
for (i = 0; i < length; i++) {
|
||||
mbedtls_asn1_named_data *new = NULL;
|
||||
TEST_CALLOC(new, 1);
|
||||
new->next = head;
|
||||
head = new;
|
||||
}
|
||||
|
||||
mbedtls_asn1_free_named_data_list(&head);
|
||||
TEST_ASSERT(head == NULL);
|
||||
/* Most of the point of the test is that it doesn't leak memory.
|
||||
* So this test is only really useful under a memory leak detection
|
||||
* framework. */
|
||||
exit:
|
||||
mbedtls_asn1_free_named_data_list(&head);
|
||||
}
|
||||
/* END_CASE */
|
||||
395
vendor/mbedtls/tests/suites/test_suite_asn1write.data
vendored
Normal file
395
vendor/mbedtls/tests/suites/test_suite_asn1write.data
vendored
Normal file
@@ -0,0 +1,395 @@
|
||||
ASN.1 Write NULL
|
||||
mbedtls_asn1_write_null:"0500"
|
||||
|
||||
ASN.1 Write BOOLEAN FALSE
|
||||
mbedtls_asn1_write_bool:0:"010100"
|
||||
|
||||
ASN.1 Write BOOLEAN TRUE
|
||||
mbedtls_asn1_write_bool:1:"0101ff"
|
||||
|
||||
ASN.1 Write int 0
|
||||
mbedtls_asn1_write_int:0:"020100"
|
||||
|
||||
ASN.1 Write int 1
|
||||
mbedtls_asn1_write_int:1:"020101"
|
||||
|
||||
ASN.1 Write int 127
|
||||
mbedtls_asn1_write_int:0x7f:"02017f"
|
||||
|
||||
ASN.1 Write int 128
|
||||
mbedtls_asn1_write_int:0x80:"02020080"
|
||||
|
||||
ASN.1 Write int 255
|
||||
mbedtls_asn1_write_int:0xff:"020200ff"
|
||||
|
||||
ASN.1 Write int 256
|
||||
mbedtls_asn1_write_int:0x100:"02020100"
|
||||
|
||||
ASN.1 Write int 32767
|
||||
mbedtls_asn1_write_int:0x7fff:"02027fff"
|
||||
|
||||
ASN.1 Write int 32768
|
||||
mbedtls_asn1_write_int:0x8000:"0203008000"
|
||||
|
||||
ASN.1 Write int 65535
|
||||
mbedtls_asn1_write_int:0xffff:"020300ffff"
|
||||
|
||||
ASN.1 Write int 65536
|
||||
mbedtls_asn1_write_int:0x10000:"0203010000"
|
||||
|
||||
ASN.1 Write int 8388607
|
||||
mbedtls_asn1_write_int:0x7fffff:"02037fffff"
|
||||
|
||||
ASN.1 Write int 8388608
|
||||
mbedtls_asn1_write_int:0x800000:"020400800000"
|
||||
|
||||
ASN.1 Write int 0x12345678
|
||||
mbedtls_asn1_write_int:0x12345678:"020412345678"
|
||||
|
||||
ASN.1 Write int 2147483647
|
||||
mbedtls_asn1_write_int:0x7fffffff:"02047fffffff"
|
||||
|
||||
ASN.1 Write enum 0
|
||||
mbedtls_asn1_write_enum:0:"0A0100"
|
||||
|
||||
ASN.1 Write enum 1
|
||||
mbedtls_asn1_write_enum:1:"0A0101"
|
||||
|
||||
ASN.1 Write enum 127
|
||||
mbedtls_asn1_write_enum:0x7f:"0A017f"
|
||||
|
||||
ASN.1 Write enum 128
|
||||
mbedtls_asn1_write_enum:0x80:"0A020080"
|
||||
|
||||
ASN.1 Write enum 255
|
||||
mbedtls_asn1_write_enum:0xff:"0A0200ff"
|
||||
|
||||
ASN.1 Write enum 256
|
||||
mbedtls_asn1_write_enum:0x100:"0A020100"
|
||||
|
||||
ASN.1 Write enum 32767
|
||||
mbedtls_asn1_write_enum:0x7fff:"0A027fff"
|
||||
|
||||
ASN.1 Write enum 32768
|
||||
mbedtls_asn1_write_enum:0x8000:"0A03008000"
|
||||
|
||||
ASN.1 Write enum 65535
|
||||
mbedtls_asn1_write_enum:0xffff:"0A0300ffff"
|
||||
|
||||
ASN.1 Write enum 65536
|
||||
mbedtls_asn1_write_enum:0x10000:"0A03010000"
|
||||
|
||||
ASN.1 Write enum 8388607
|
||||
mbedtls_asn1_write_enum:0x7fffff:"0A037fffff"
|
||||
|
||||
ASN.1 Write enum 8388608
|
||||
mbedtls_asn1_write_enum:0x800000:"0A0400800000"
|
||||
|
||||
ASN.1 Write enum 0x12345678
|
||||
mbedtls_asn1_write_enum:0x12345678:"0A0412345678"
|
||||
|
||||
ASN.1 Write enum 2147483647
|
||||
mbedtls_asn1_write_enum:0x7fffffff:"0A047fffffff"
|
||||
|
||||
ASN.1 Write mpi 0 (null)
|
||||
mbedtls_asn1_write_mpi:"":"020100"
|
||||
|
||||
ASN.1 Write mpi 0 (1 limb)
|
||||
mbedtls_asn1_write_mpi:"00":"020100"
|
||||
|
||||
ASN.1 Write mpi 1
|
||||
mbedtls_asn1_write_mpi:"01":"020101"
|
||||
|
||||
ASN.1 Write mpi 0x7f
|
||||
mbedtls_asn1_write_mpi:"7f":"02017f"
|
||||
|
||||
ASN.1 Write mpi 0x7f with leading 0 limb
|
||||
mbedtls_asn1_write_mpi:"00000000000000007f":"02017f"
|
||||
|
||||
ASN.1 Write mpi 0x80
|
||||
mbedtls_asn1_write_mpi:"80":"02020080"
|
||||
|
||||
ASN.1 Write mpi 0x80 with leading 0 limb
|
||||
mbedtls_asn1_write_mpi:"000000000000000080":"02020080"
|
||||
|
||||
ASN.1 Write mpi 0xff
|
||||
mbedtls_asn1_write_mpi:"ff":"020200ff"
|
||||
|
||||
ASN.1 Write mpi 0x100
|
||||
mbedtls_asn1_write_mpi:"0100":"02020100"
|
||||
|
||||
ASN.1 Write mpi, 127*8-1 bits
|
||||
mbedtls_asn1_write_mpi:"7f7b16e05c1537de7c41cef1a0985d6a3ced98aec28e091874cbad6b5e40a5c956258f18861c28bed8ba808259339ee34b2e509c4080149474d5d5b86093f90c475a6443fc87e1a293d4151be625d652f1c32a00a018bba10c8a2ae5b2b0ee4be64e053dce9d07ec7919526c9dfcf2ec9fc3db485caa8e5a68a2cd0a427de8":"027f7f7b16e05c1537de7c41cef1a0985d6a3ced98aec28e091874cbad6b5e40a5c956258f18861c28bed8ba808259339ee34b2e509c4080149474d5d5b86093f90c475a6443fc87e1a293d4151be625d652f1c32a00a018bba10c8a2ae5b2b0ee4be64e053dce9d07ec7919526c9dfcf2ec9fc3db485caa8e5a68a2cd0a427de8"
|
||||
|
||||
ASN.1 Write mpi, 127*8 bits
|
||||
mbedtls_asn1_write_mpi:"e77b16e05c1537de7c41cef1a0985d6a3ced98aec28e091874cbad6b5e40a5c956258f18861c28bed8ba808259339ee34b2e509c4080149474d5d5b86093f90c475a6443fc87e1a293d4151be625d652f1c32a00a018bba10c8a2ae5b2b0ee4be64e053dce9d07ec7919526c9dfcf2ec9fc3db485caa8e5a68a2cd0a427de8":"02818000e77b16e05c1537de7c41cef1a0985d6a3ced98aec28e091874cbad6b5e40a5c956258f18861c28bed8ba808259339ee34b2e509c4080149474d5d5b86093f90c475a6443fc87e1a293d4151be625d652f1c32a00a018bba10c8a2ae5b2b0ee4be64e053dce9d07ec7919526c9dfcf2ec9fc3db485caa8e5a68a2cd0a427de8"
|
||||
|
||||
ASN.1 Write mpi, 127*8+1 bits
|
||||
mbedtls_asn1_write_mpi:"018446d68934cc1af23c4cd909884d4bd737a1890e12f5ef8bf3d807d72feffa63c0bf2633345f8b8418d144617c871a7a0277ac0150eed4b3db7f9dff21114cd0d7f282400f03c931cb00c367550e374a1ed3762a1801ca714cfc8d5aac69707ca81e0661400ed0014d97cba48f94d835dd681fc3053c51958afbf7583cf49c":"028180018446d68934cc1af23c4cd909884d4bd737a1890e12f5ef8bf3d807d72feffa63c0bf2633345f8b8418d144617c871a7a0277ac0150eed4b3db7f9dff21114cd0d7f282400f03c931cb00c367550e374a1ed3762a1801ca714cfc8d5aac69707ca81e0661400ed0014d97cba48f94d835dd681fc3053c51958afbf7583cf49c"
|
||||
|
||||
ASN.1 Write mpi, 255*8-1 bits
|
||||
mbedtls_asn1_write_mpi:"7bd1913fcfb652896209ad3e62f5d04a8dfc71eb1698543c52200bd7bbf3c11dd9ff57c299a2f4da172b3d5bd7e29affddf8859be7d50a45537a0df15b17af603d18803fd17134847cba78d83e64bf9fee58364d6124add0541da7bad331cd35fb48186a74bc502ddb967602401c0db02b19e5d38f09e8618fa7f6a1a3f738629baffdc63d9d70d396007d943fd64ae696e5b7e88f2c6d6ec322b461dbddd36efa91d990343b66419cf4832a22dc9ad13021185a1bf007989a50ba3bfd1152b8db899482d3ed498d1b9fae243a3cdae9530d8b29fdb684f70cdc0c9b8527265312603b405e67d59d4b1d654ddc3b7fd5515acb32440dc80903c8474a2c136c":"0281ff7bd1913fcfb652896209ad3e62f5d04a8dfc71eb1698543c52200bd7bbf3c11dd9ff57c299a2f4da172b3d5bd7e29affddf8859be7d50a45537a0df15b17af603d18803fd17134847cba78d83e64bf9fee58364d6124add0541da7bad331cd35fb48186a74bc502ddb967602401c0db02b19e5d38f09e8618fa7f6a1a3f738629baffdc63d9d70d396007d943fd64ae696e5b7e88f2c6d6ec322b461dbddd36efa91d990343b66419cf4832a22dc9ad13021185a1bf007989a50ba3bfd1152b8db899482d3ed498d1b9fae243a3cdae9530d8b29fdb684f70cdc0c9b8527265312603b405e67d59d4b1d654ddc3b7fd5515acb32440dc80903c8474a2c136c"
|
||||
|
||||
ASN.1 Write mpi, 255*8 bits
|
||||
mbedtls_asn1_write_mpi:"fbd1913fcfb652896209ad3e62f5d04a8dfc71eb1698543c52200bd7bbf3c11dd9ff57c299a2f4da172b3d5bd7e29affddf8859be7d50a45537a0df15b17af603d18803fd17134847cba78d83e64bf9fee58364d6124add0541da7bad331cd35fb48186a74bc502ddb967602401c0db02b19e5d38f09e8618fa7f6a1a3f738629baffdc63d9d70d396007d943fd64ae696e5b7e88f2c6d6ec322b461dbddd36efa91d990343b66419cf4832a22dc9ad13021185a1bf007989a50ba3bfd1152b8db899482d3ed498d1b9fae243a3cdae9530d8b29fdb684f70cdc0c9b8527265312603b405e67d59d4b1d654ddc3b7fd5515acb32440dc80903c8474a2c136c":"0282010000fbd1913fcfb652896209ad3e62f5d04a8dfc71eb1698543c52200bd7bbf3c11dd9ff57c299a2f4da172b3d5bd7e29affddf8859be7d50a45537a0df15b17af603d18803fd17134847cba78d83e64bf9fee58364d6124add0541da7bad331cd35fb48186a74bc502ddb967602401c0db02b19e5d38f09e8618fa7f6a1a3f738629baffdc63d9d70d396007d943fd64ae696e5b7e88f2c6d6ec322b461dbddd36efa91d990343b66419cf4832a22dc9ad13021185a1bf007989a50ba3bfd1152b8db899482d3ed498d1b9fae243a3cdae9530d8b29fdb684f70cdc0c9b8527265312603b405e67d59d4b1d654ddc3b7fd5515acb32440dc80903c8474a2c136c"
|
||||
|
||||
ASN.1 Write mpi, 256*8-1 bits
|
||||
mbedtls_asn1_write_mpi:"7bd1913fcfb652896209ad3e62f5d04a8dfc71eb1698543c52200bd7bbf3c11dd9ff57c299a2f4da172b3d5bd7e29affddf8859be7d50a45537a0df15b17af603d18803fd17134847cba78d83e64bf9fee58364d6124add0541da7bad331cd35fb48186a74bc502ddb967602401c0db02b19e5d38f09e8618fa7f6a1a3f738629baffdc63d9d70d396007d943fd64ae696e5b7e88f2c6d6ec322b461dbddd36efa91d990343b66419cf4832a22dc9ad13021185a1bf007989a50ba3bfd1152b8db899482d3ed498d1b9fae243a3cdae9530d8b29fdb684f70cdc0c9b8527265312603b405e67d59d4b1d654ddc3b7fd5515acb32440dc80903c8474a2c136c89":"028201007bd1913fcfb652896209ad3e62f5d04a8dfc71eb1698543c52200bd7bbf3c11dd9ff57c299a2f4da172b3d5bd7e29affddf8859be7d50a45537a0df15b17af603d18803fd17134847cba78d83e64bf9fee58364d6124add0541da7bad331cd35fb48186a74bc502ddb967602401c0db02b19e5d38f09e8618fa7f6a1a3f738629baffdc63d9d70d396007d943fd64ae696e5b7e88f2c6d6ec322b461dbddd36efa91d990343b66419cf4832a22dc9ad13021185a1bf007989a50ba3bfd1152b8db899482d3ed498d1b9fae243a3cdae9530d8b29fdb684f70cdc0c9b8527265312603b405e67d59d4b1d654ddc3b7fd5515acb32440dc80903c8474a2c136c89"
|
||||
|
||||
ASN.1 Write OCTET STRING: length=0
|
||||
mbedtls_asn1_write_string:MBEDTLS_ASN1_OCTET_STRING:"":"0400"
|
||||
|
||||
ASN.1 Write OCTET STRING: length=1
|
||||
mbedtls_asn1_write_string:MBEDTLS_ASN1_OCTET_STRING:"41":"040141"
|
||||
|
||||
ASN.1 Write OCTET STRING: length=2
|
||||
mbedtls_asn1_write_string:MBEDTLS_ASN1_OCTET_STRING:"4142":"04024142"
|
||||
|
||||
ASN.1 Write OCTET STRING: length=127
|
||||
mbedtls_asn1_write_string:MBEDTLS_ASN1_OCTET_STRING:"99a66790856f7199641f55cadabb660aaed6aa0d9ef8cef4417118c6e8c6e15becbaa21c63faf48726e92357a38b3079a0b9d60be7457ec6552f900dd032577167c91e829927343c3a769b362db4de0ad2ffb8f13cc2eeca9e52dc557118baa88b857477595622bc301a1ae2150030d652c4a482cf88d0ded85d6731ff2d38":"047f99a66790856f7199641f55cadabb660aaed6aa0d9ef8cef4417118c6e8c6e15becbaa21c63faf48726e92357a38b3079a0b9d60be7457ec6552f900dd032577167c91e829927343c3a769b362db4de0ad2ffb8f13cc2eeca9e52dc557118baa88b857477595622bc301a1ae2150030d652c4a482cf88d0ded85d6731ff2d38"
|
||||
|
||||
ASN.1 Write OCTET STRING: length=128
|
||||
mbedtls_asn1_write_string:MBEDTLS_ASN1_OCTET_STRING:"0199a66790856f7199641f55cadabb660aaed6aa0d9ef8cef4417118c6e8c6e15becbaa21c63faf48726e92357a38b3079a0b9d60be7457ec6552f900dd032577167c91e829927343c3a769b362db4de0ad2ffb8f13cc2eeca9e52dc557118baa88b857477595622bc301a1ae2150030d652c4a482cf88d0ded85d6731ff2d38":"0481800199a66790856f7199641f55cadabb660aaed6aa0d9ef8cef4417118c6e8c6e15becbaa21c63faf48726e92357a38b3079a0b9d60be7457ec6552f900dd032577167c91e829927343c3a769b362db4de0ad2ffb8f13cc2eeca9e52dc557118baa88b857477595622bc301a1ae2150030d652c4a482cf88d0ded85d6731ff2d38"
|
||||
|
||||
ASN.1 Write OCTET STRING: length=255
|
||||
mbedtls_asn1_write_string:MBEDTLS_ASN1_OCTET_STRING:"633ed2cb0a2915dc4438a4c063017eb336cd9571d2a0585522c5073ca22a30ca7b8c9bd167d89ba1827bc6fb5d6ef6dcc52ee6eecc47e84ee0dd18fa3ebbdb6edfc679f037160d48d46a0d7e571335b24a28c8fd29b7f4a93d013b74e522bc1f5f605096bb99d438814b77b54d6dde608417b0a0ce9a8cb507fbeb95e9926b4bb6eec725599493d4b156ef3a5fd701426456029111c20f1d03c5d8999d2c042277ef91c5114a6c06218c1ba28d41ef08e4870d0cef260cba9de16d7d11ed5889b88fb93073746ebb158a4246cdb8a4ce403a5d1d598a0d11548f22070f833c1344d15e7a1445c133d19b8295b7c071bf2227178938031249d22d21c6f8e53d":"0481ff633ed2cb0a2915dc4438a4c063017eb336cd9571d2a0585522c5073ca22a30ca7b8c9bd167d89ba1827bc6fb5d6ef6dcc52ee6eecc47e84ee0dd18fa3ebbdb6edfc679f037160d48d46a0d7e571335b24a28c8fd29b7f4a93d013b74e522bc1f5f605096bb99d438814b77b54d6dde608417b0a0ce9a8cb507fbeb95e9926b4bb6eec725599493d4b156ef3a5fd701426456029111c20f1d03c5d8999d2c042277ef91c5114a6c06218c1ba28d41ef08e4870d0cef260cba9de16d7d11ed5889b88fb93073746ebb158a4246cdb8a4ce403a5d1d598a0d11548f22070f833c1344d15e7a1445c133d19b8295b7c071bf2227178938031249d22d21c6f8e53d"
|
||||
|
||||
ASN.1 Write OCTET STRING: length=256
|
||||
mbedtls_asn1_write_string:MBEDTLS_ASN1_OCTET_STRING:"5a633ed2cb0a2915dc4438a4c063017eb336cd9571d2a0585522c5073ca22a30ca7b8c9bd167d89ba1827bc6fb5d6ef6dcc52ee6eecc47e84ee0dd18fa3ebbdb6edfc679f037160d48d46a0d7e571335b24a28c8fd29b7f4a93d013b74e522bc1f5f605096bb99d438814b77b54d6dde608417b0a0ce9a8cb507fbeb95e9926b4bb6eec725599493d4b156ef3a5fd701426456029111c20f1d03c5d8999d2c042277ef91c5114a6c06218c1ba28d41ef08e4870d0cef260cba9de16d7d11ed5889b88fb93073746ebb158a4246cdb8a4ce403a5d1d598a0d11548f22070f833c1344d15e7a1445c133d19b8295b7c071bf2227178938031249d22d21c6f8e53d":"048201005a633ed2cb0a2915dc4438a4c063017eb336cd9571d2a0585522c5073ca22a30ca7b8c9bd167d89ba1827bc6fb5d6ef6dcc52ee6eecc47e84ee0dd18fa3ebbdb6edfc679f037160d48d46a0d7e571335b24a28c8fd29b7f4a93d013b74e522bc1f5f605096bb99d438814b77b54d6dde608417b0a0ce9a8cb507fbeb95e9926b4bb6eec725599493d4b156ef3a5fd701426456029111c20f1d03c5d8999d2c042277ef91c5114a6c06218c1ba28d41ef08e4870d0cef260cba9de16d7d11ed5889b88fb93073746ebb158a4246cdb8a4ce403a5d1d598a0d11548f22070f833c1344d15e7a1445c133d19b8295b7c071bf2227178938031249d22d21c6f8e53d"
|
||||
|
||||
ASN.1 Write UTF8 STRING: length=0
|
||||
mbedtls_asn1_write_string:MBEDTLS_ASN1_UTF8_STRING:"":"0c00"
|
||||
|
||||
ASN.1 Write UTF8 STRING: length=1
|
||||
mbedtls_asn1_write_string:MBEDTLS_ASN1_UTF8_STRING:"41":"0c0141"
|
||||
|
||||
ASN.1 Write UTF8 STRING: length=128
|
||||
mbedtls_asn1_write_string:MBEDTLS_ASN1_UTF8_STRING:"0199a66790856f7199641f55cadabb660aaed6aa0d9ef8cef4417118c6e8c6e15becbaa21c63faf48726e92357a38b3079a0b9d60be7457ec6552f900dd032577167c91e829927343c3a769b362db4de0ad2ffb8f13cc2eeca9e52dc557118baa88b857477595622bc301a1ae2150030d652c4a482cf88d0ded85d6731ff2d38":"0c81800199a66790856f7199641f55cadabb660aaed6aa0d9ef8cef4417118c6e8c6e15becbaa21c63faf48726e92357a38b3079a0b9d60be7457ec6552f900dd032577167c91e829927343c3a769b362db4de0ad2ffb8f13cc2eeca9e52dc557118baa88b857477595622bc301a1ae2150030d652c4a482cf88d0ded85d6731ff2d38"
|
||||
|
||||
ASN.1 Write PRINTABLE STRING: length=0
|
||||
mbedtls_asn1_write_string:MBEDTLS_ASN1_PRINTABLE_STRING:"":"1300"
|
||||
|
||||
ASN.1 Write PRINTABLE STRING: length=1
|
||||
mbedtls_asn1_write_string:MBEDTLS_ASN1_PRINTABLE_STRING:"41":"130141"
|
||||
|
||||
ASN.1 Write PRINTABLE STRING: length=128
|
||||
mbedtls_asn1_write_string:MBEDTLS_ASN1_PRINTABLE_STRING:"0199a66790856f7199641f55cadabb660aaed6aa0d9ef8cef4417118c6e8c6e15becbaa21c63faf48726e92357a38b3079a0b9d60be7457ec6552f900dd032577167c91e829927343c3a769b362db4de0ad2ffb8f13cc2eeca9e52dc557118baa88b857477595622bc301a1ae2150030d652c4a482cf88d0ded85d6731ff2d38":"1381800199a66790856f7199641f55cadabb660aaed6aa0d9ef8cef4417118c6e8c6e15becbaa21c63faf48726e92357a38b3079a0b9d60be7457ec6552f900dd032577167c91e829927343c3a769b362db4de0ad2ffb8f13cc2eeca9e52dc557118baa88b857477595622bc301a1ae2150030d652c4a482cf88d0ded85d6731ff2d38"
|
||||
|
||||
ASN.1 Write IA5 STRING: length=0
|
||||
mbedtls_asn1_write_string:MBEDTLS_ASN1_IA5_STRING:"":"1600"
|
||||
|
||||
ASN.1 Write IA5 STRING: length=1
|
||||
mbedtls_asn1_write_string:MBEDTLS_ASN1_IA5_STRING:"41":"160141"
|
||||
|
||||
ASN.1 Write IA5 STRING: length=128
|
||||
mbedtls_asn1_write_string:MBEDTLS_ASN1_IA5_STRING:"0199a66790856f7199641f55cadabb660aaed6aa0d9ef8cef4417118c6e8c6e15becbaa21c63faf48726e92357a38b3079a0b9d60be7457ec6552f900dd032577167c91e829927343c3a769b362db4de0ad2ffb8f13cc2eeca9e52dc557118baa88b857477595622bc301a1ae2150030d652c4a482cf88d0ded85d6731ff2d38":"1681800199a66790856f7199641f55cadabb660aaed6aa0d9ef8cef4417118c6e8c6e15becbaa21c63faf48726e92357a38b3079a0b9d60be7457ec6552f900dd032577167c91e829927343c3a769b362db4de0ad2ffb8f13cc2eeca9e52dc557118baa88b857477595622bc301a1ae2150030d652c4a482cf88d0ded85d6731ff2d38"
|
||||
|
||||
ASN.1 Write tagged string: length=0
|
||||
mbedtls_asn1_write_string:MBEDTLS_ASN1_IA5_STRING | MBEDTLS_ASN1_CONTEXT_SPECIFIC:"":"9600"
|
||||
|
||||
ASN.1 Write tagged string: length=1
|
||||
mbedtls_asn1_write_string:MBEDTLS_ASN1_IA5_STRING | MBEDTLS_ASN1_CONTEXT_SPECIFIC:"41":"960141"
|
||||
|
||||
ASN.1 Write tagged string: length=128
|
||||
mbedtls_asn1_write_string:MBEDTLS_ASN1_IA5_STRING | MBEDTLS_ASN1_CONTEXT_SPECIFIC:"0199a66790856f7199641f55cadabb660aaed6aa0d9ef8cef4417118c6e8c6e15becbaa21c63faf48726e92357a38b3079a0b9d60be7457ec6552f900dd032577167c91e829927343c3a769b362db4de0ad2ffb8f13cc2eeca9e52dc557118baa88b857477595622bc301a1ae2150030d652c4a482cf88d0ded85d6731ff2d38":"9681800199a66790856f7199641f55cadabb660aaed6aa0d9ef8cef4417118c6e8c6e15becbaa21c63faf48726e92357a38b3079a0b9d60be7457ec6552f900dd032577167c91e829927343c3a769b362db4de0ad2ffb8f13cc2eeca9e52dc557118baa88b857477595622bc301a1ae2150030d652c4a482cf88d0ded85d6731ff2d38"
|
||||
|
||||
ASN.1 Write OID: length=0
|
||||
mbedtls_asn1_write_string:MBEDTLS_ASN1_OID:"":"0600"
|
||||
|
||||
ASN.1 Write OID: length=1
|
||||
mbedtls_asn1_write_string:MBEDTLS_ASN1_OID:"41":"060141"
|
||||
|
||||
ASN.1 Write AlgorithmIdentifier, null parameters
|
||||
mbedtls_asn1_write_algorithm_identifier:"4f4944":0:"300706034f49440500"
|
||||
|
||||
ASN.1 Write AlgorithmIdentifier, parameters (8 bytes)
|
||||
mbedtls_asn1_write_algorithm_identifier:"4f4944":8:"300d06034f4944"
|
||||
|
||||
ASN.1 Write AlgorithmIdentifier, total length=0x7f
|
||||
mbedtls_asn1_write_algorithm_identifier:"4f4944":0x7a:"307f06034f4944"
|
||||
|
||||
ASN.1 Write AlgorithmIdentifier, total length=0x80
|
||||
mbedtls_asn1_write_algorithm_identifier:"4f4944":0x7b:"30818006034f4944"
|
||||
|
||||
ASN.1 Write AlgorithmIdentifier, total length=0xff
|
||||
mbedtls_asn1_write_algorithm_identifier:"4f4944":0xfa:"3081ff06034f4944"
|
||||
|
||||
ASN.1 Write AlgorithmIdentifier, total length=0x100
|
||||
mbedtls_asn1_write_algorithm_identifier:"4f4944":0xfb:"3082010006034f4944"
|
||||
|
||||
ASN.1 Write AlgorithmIdentifier, total length=0xffff
|
||||
mbedtls_asn1_write_algorithm_identifier:"4f4944":0xfffa:"3082ffff06034f4944"
|
||||
|
||||
ASN.1 Write AlgorithmIdentifier, total length=0x10000
|
||||
mbedtls_asn1_write_algorithm_identifier:"4f4944":0xfffb:"308301000006034f4944"
|
||||
|
||||
ASN.1 Write AlgorithmIdentifier, total length=0xffffff
|
||||
mbedtls_asn1_write_algorithm_identifier:"4f4944":0xfffffa:"3083ffffff06034f4944"
|
||||
|
||||
ASN.1 Write AlgorithmIdentifier, total length=0x1000000
|
||||
mbedtls_asn1_write_algorithm_identifier:"4f4944":0xfffffb:"30840100000006034f4944"
|
||||
|
||||
ASN.1 Write / Read Length #0 (Len = 0, short form)
|
||||
mbedtls_asn1_write_len:0:"00":1:1
|
||||
|
||||
ASN.1 Write / Read Length #1 (Len = 127, short form)
|
||||
mbedtls_asn1_write_len:127:"7F":1:1
|
||||
|
||||
ASN.1 Write / Read Length #2 (Len = 127, buffer too small)
|
||||
mbedtls_asn1_write_len:127:"7F":0:MBEDTLS_ERR_ASN1_BUF_TOO_SMALL
|
||||
|
||||
ASN.1 Write / Read Length #3 (Len = 128, long form)
|
||||
mbedtls_asn1_write_len:128:"8180":2:2
|
||||
|
||||
ASN.1 Write / Read Length #4 (Len = 255, long form)
|
||||
mbedtls_asn1_write_len:255:"81FF":2:2
|
||||
|
||||
ASN.1 Write / Read Length #5 (Len = 255, buffer too small)
|
||||
mbedtls_asn1_write_len:255:"81FF":1:MBEDTLS_ERR_ASN1_BUF_TOO_SMALL
|
||||
|
||||
ASN.1 Write / Read Length #6 (Len = 258, byte order)
|
||||
mbedtls_asn1_write_len:258:"820102":3:3
|
||||
|
||||
ASN.1 Write / Read Length #7 (Len = 65535, long form)
|
||||
mbedtls_asn1_write_len:65535:"82FFFF":3:3
|
||||
|
||||
ASN.1 Write / Read Length #8 (Len = 65535, buffer too small)
|
||||
mbedtls_asn1_write_len:65535:"82FFFF":2:MBEDTLS_ERR_ASN1_BUF_TOO_SMALL
|
||||
|
||||
ASN.1 Write / Read Length #9 (Len = 66051, byte order)
|
||||
mbedtls_asn1_write_len:66051:"83010203":4:4
|
||||
|
||||
ASN.1 Write / Read Length #10 (Len = 16777215, long form)
|
||||
mbedtls_asn1_write_len:16777215:"83FFFFFF":4:4
|
||||
|
||||
ASN.1 Write / Read Length #11 (Len = 16777215, buffer too small)
|
||||
mbedtls_asn1_write_len:16777215:"83FFFFFF":3:MBEDTLS_ERR_ASN1_BUF_TOO_SMALL
|
||||
|
||||
ASN.1 Write / Read Length #12 (Len = 16909060, byte order)
|
||||
mbedtls_asn1_write_len:16909060:"8401020304":5:5
|
||||
|
||||
ASN.1 Write / Read Length #12 (Len = 16909060, buffer too small)
|
||||
mbedtls_asn1_write_len:16909060:"8401020304":4:MBEDTLS_ERR_ASN1_BUF_TOO_SMALL
|
||||
|
||||
ASN.1 Write Named Bitstring / Unused bits #0
|
||||
test_asn1_write_bitstrings:"FF":8:"030200FF":1
|
||||
|
||||
ASN.1 Write Named Bitstring / Unused bits #1
|
||||
test_asn1_write_bitstrings:"FE":8:"030201FE":1
|
||||
|
||||
ASN.1 Write Named Bitstring / Unused bits #2
|
||||
test_asn1_write_bitstrings:"FC":7:"030202FC":1
|
||||
|
||||
ASN.1 Write Named Bitstring / Unused bits #3
|
||||
test_asn1_write_bitstrings:"F8":8:"030203F8":1
|
||||
|
||||
ASN.1 Write Named Bitstring / Unused bits #4
|
||||
test_asn1_write_bitstrings:"F0":6:"030204F0":1
|
||||
|
||||
ASN.1 Write Named Bitstring / Unused bits #5
|
||||
test_asn1_write_bitstrings:"E0":6:"030205E0":1
|
||||
|
||||
ASN.1 Write Named Bitstring / Unused bits #6
|
||||
test_asn1_write_bitstrings:"C0":8:"030206C0":1
|
||||
|
||||
ASN.1 Write Named Bitstring / Unused bits #7
|
||||
test_asn1_write_bitstrings:"80":8:"03020780":1
|
||||
|
||||
ASN.1 Write Named Bitstring / Empty bitstring
|
||||
test_asn1_write_bitstrings:"00":7:"030100":1
|
||||
|
||||
ASN.1 Write Named Bitstring / Empty bitstring (bits = 16)
|
||||
test_asn1_write_bitstrings:"0000":16:"030100":1
|
||||
|
||||
ASN.1 Write Named Bitstring / Empty bitstring (bits = 24)
|
||||
test_asn1_write_bitstrings:"FFFFFF":0:"030100":1
|
||||
|
||||
ASN.1 Write Named Bitstring / 15 trailing bits all unset
|
||||
test_asn1_write_bitstrings:"F88000":24:"030307F880":1
|
||||
|
||||
ASN.1 Write Named Bitstring / 15 trailing bits all set
|
||||
test_asn1_write_bitstrings:"F8FFFF":9:"030307F880":1
|
||||
|
||||
ASN.1 Write Bitstring / Unused bits #0
|
||||
test_asn1_write_bitstrings:"FF":8:"030200FF":0
|
||||
|
||||
ASN.1 Write Bitstring / Unused bits #1
|
||||
test_asn1_write_bitstrings:"FF":7:"030201FE":0
|
||||
|
||||
ASN.1 Write Bitstring / Unused bits #2
|
||||
test_asn1_write_bitstrings:"FF":6:"030202FC":0
|
||||
|
||||
ASN.1 Write Bitstring / Unused bits #3
|
||||
test_asn1_write_bitstrings:"FF":5:"030203F8":0
|
||||
|
||||
ASN.1 Write Bitstring / Unused bits #4
|
||||
test_asn1_write_bitstrings:"FF":4:"030204F0":0
|
||||
|
||||
ASN.1 Write Bitstring / Unused bits #5
|
||||
test_asn1_write_bitstrings:"FF":3:"030205E0":0
|
||||
|
||||
ASN.1 Write Bitstring / Unused bits #6
|
||||
test_asn1_write_bitstrings:"FF":2:"030206C0":0
|
||||
|
||||
ASN.1 Write Bitstring / Unused bits #7
|
||||
test_asn1_write_bitstrings:"FF":1:"03020780":0
|
||||
|
||||
ASN.1 Write Bitstring / 1 trailing bit (bits 15)
|
||||
test_asn1_write_bitstrings:"0003":15:"0303010002":0
|
||||
|
||||
ASN.1 Write Bitstring / 0 bits
|
||||
test_asn1_write_bitstrings:"":0:"030100":0
|
||||
|
||||
ASN.1 Write Bitstring / long string all bits unset except trailing bits
|
||||
test_asn1_write_bitstrings:"000000000007":45:"030703000000000000":0
|
||||
|
||||
Store named data: not found
|
||||
store_named_data_find:"414141":"424242":"434343":"444444":"7f7f7f":0:-1
|
||||
|
||||
Store named data: empty haystack
|
||||
store_named_data_find:"414141":"424242":"434343":"444444":"7f7f7f":4:-1
|
||||
|
||||
Store named data: first
|
||||
store_named_data_find:"414141":"424242":"434343":"444444":"414141":0:0
|
||||
|
||||
Store named data: last
|
||||
store_named_data_find:"414141":"424242":"434343":"444444":"444444":0:3
|
||||
|
||||
Store named data: skip suffix
|
||||
store_named_data_find:"41414141":"414141":"434343":"444444":"414141":0:1
|
||||
|
||||
Store named data: skip prefix
|
||||
store_named_data_find:"4141":"414141":"434343":"444444":"414141":0:1
|
||||
|
||||
Store named data: first match
|
||||
store_named_data_find:"414141":"414141":"434343":"444444":"414141":0:0
|
||||
|
||||
Store named data: found, null to zero
|
||||
store_named_data_val_found:0:0
|
||||
|
||||
Store named data: found, null to data
|
||||
store_named_data_val_found:0:9
|
||||
|
||||
Store named data: found, data to zero
|
||||
store_named_data_val_found:9:0
|
||||
|
||||
Store named data: found, smaller data
|
||||
store_named_data_val_found:9:2
|
||||
|
||||
Store named data: found, same-size data
|
||||
store_named_data_val_found:9:9
|
||||
|
||||
Store named data: found, larger data
|
||||
store_named_data_val_found:4:9
|
||||
|
||||
Store named data: new, val_len=0
|
||||
store_named_data_val_new:0:1
|
||||
|
||||
Stored named data: new, val_len=0, val=NULL
|
||||
store_named_data_val_new:0:0
|
||||
|
||||
Store named data: new, val_len=4
|
||||
store_named_data_val_new:4:1
|
||||
|
||||
Store named data: new, val_len=4, val=NULL
|
||||
store_named_data_val_new:4:0
|
||||
606
vendor/mbedtls/tests/suites/test_suite_asn1write.function
vendored
Normal file
606
vendor/mbedtls/tests/suites/test_suite_asn1write.function
vendored
Normal file
@@ -0,0 +1,606 @@
|
||||
/* BEGIN_HEADER */
|
||||
#include "mbedtls/asn1write.h"
|
||||
|
||||
#define GUARD_LEN 4
|
||||
#define GUARD_VAL 0x2a
|
||||
|
||||
typedef struct {
|
||||
unsigned char *output;
|
||||
unsigned char *start;
|
||||
unsigned char *end;
|
||||
unsigned char *p;
|
||||
size_t size;
|
||||
} generic_write_data_t;
|
||||
|
||||
static int generic_write_start_step(generic_write_data_t *data)
|
||||
{
|
||||
mbedtls_test_set_step(data->size);
|
||||
mbedtls_free(data->output);
|
||||
data->output = NULL;
|
||||
TEST_CALLOC(data->output, data->size == 0 ? 1 : data->size);
|
||||
data->end = data->output + data->size;
|
||||
data->p = data->end;
|
||||
data->start = data->end - data->size;
|
||||
return 1;
|
||||
exit:
|
||||
return 0;
|
||||
}
|
||||
|
||||
static int generic_write_finish_step(generic_write_data_t *data,
|
||||
const data_t *expected, int ret)
|
||||
{
|
||||
int ok = 0;
|
||||
|
||||
if (data->size < expected->len) {
|
||||
TEST_EQUAL(ret, MBEDTLS_ERR_ASN1_BUF_TOO_SMALL);
|
||||
} else {
|
||||
TEST_EQUAL(ret, data->end - data->p);
|
||||
TEST_ASSERT(data->p >= data->start);
|
||||
TEST_ASSERT(data->p <= data->end);
|
||||
TEST_MEMORY_COMPARE(data->p, (size_t) (data->end - data->p),
|
||||
expected->x, expected->len);
|
||||
}
|
||||
ok = 1;
|
||||
|
||||
exit:
|
||||
return ok;
|
||||
}
|
||||
|
||||
/* END_HEADER */
|
||||
|
||||
/* BEGIN_DEPENDENCIES
|
||||
* depends_on:MBEDTLS_ASN1_WRITE_C
|
||||
* END_DEPENDENCIES
|
||||
*/
|
||||
|
||||
/* BEGIN_CASE */
|
||||
void mbedtls_asn1_write_null(data_t *expected)
|
||||
{
|
||||
generic_write_data_t data = { NULL, NULL, NULL, NULL, 0 };
|
||||
int ret;
|
||||
|
||||
for (data.size = 0; data.size <= expected->len + 1; data.size++) {
|
||||
if (!generic_write_start_step(&data)) {
|
||||
goto exit;
|
||||
}
|
||||
ret = mbedtls_asn1_write_null(&data.p, data.start);
|
||||
if (!generic_write_finish_step(&data, expected, ret)) {
|
||||
goto exit;
|
||||
}
|
||||
/* There's no parsing function for NULL. */
|
||||
}
|
||||
|
||||
exit:
|
||||
mbedtls_free(data.output);
|
||||
}
|
||||
/* END_CASE */
|
||||
|
||||
/* BEGIN_CASE */
|
||||
void mbedtls_asn1_write_bool(int val, data_t *expected)
|
||||
{
|
||||
generic_write_data_t data = { NULL, NULL, NULL, NULL, 0 };
|
||||
int ret;
|
||||
|
||||
for (data.size = 0; data.size <= expected->len + 1; data.size++) {
|
||||
if (!generic_write_start_step(&data)) {
|
||||
goto exit;
|
||||
}
|
||||
ret = mbedtls_asn1_write_bool(&data.p, data.start, val);
|
||||
if (!generic_write_finish_step(&data, expected, ret)) {
|
||||
goto exit;
|
||||
}
|
||||
#if defined(MBEDTLS_ASN1_PARSE_C)
|
||||
if (ret >= 0) {
|
||||
int read = 0xdeadbeef;
|
||||
TEST_EQUAL(mbedtls_asn1_get_bool(&data.p, data.end, &read), 0);
|
||||
TEST_EQUAL(val, read);
|
||||
}
|
||||
#endif /* MBEDTLS_ASN1_PARSE_C */
|
||||
}
|
||||
|
||||
exit:
|
||||
mbedtls_free(data.output);
|
||||
}
|
||||
/* END_CASE */
|
||||
|
||||
/* BEGIN_CASE */
|
||||
void mbedtls_asn1_write_int(int val, data_t *expected)
|
||||
{
|
||||
generic_write_data_t data = { NULL, NULL, NULL, NULL, 0 };
|
||||
int ret;
|
||||
|
||||
for (data.size = 0; data.size <= expected->len + 1; data.size++) {
|
||||
if (!generic_write_start_step(&data)) {
|
||||
goto exit;
|
||||
}
|
||||
ret = mbedtls_asn1_write_int(&data.p, data.start, val);
|
||||
if (!generic_write_finish_step(&data, expected, ret)) {
|
||||
goto exit;
|
||||
}
|
||||
#if defined(MBEDTLS_ASN1_PARSE_C)
|
||||
if (ret >= 0) {
|
||||
int read = 0xdeadbeef;
|
||||
TEST_EQUAL(mbedtls_asn1_get_int(&data.p, data.end, &read), 0);
|
||||
TEST_EQUAL(val, read);
|
||||
}
|
||||
#endif /* MBEDTLS_ASN1_PARSE_C */
|
||||
}
|
||||
|
||||
exit:
|
||||
mbedtls_free(data.output);
|
||||
}
|
||||
/* END_CASE */
|
||||
|
||||
|
||||
/* BEGIN_CASE */
|
||||
void mbedtls_asn1_write_enum(int val, data_t *expected)
|
||||
{
|
||||
generic_write_data_t data = { NULL, NULL, NULL, NULL, 0 };
|
||||
int ret;
|
||||
|
||||
for (data.size = 0; data.size <= expected->len + 1; data.size++) {
|
||||
if (!generic_write_start_step(&data)) {
|
||||
goto exit;
|
||||
}
|
||||
ret = mbedtls_asn1_write_enum(&data.p, data.start, val);
|
||||
if (!generic_write_finish_step(&data, expected, ret)) {
|
||||
goto exit;
|
||||
}
|
||||
#if defined(MBEDTLS_ASN1_PARSE_C)
|
||||
if (ret >= 0) {
|
||||
int read = 0xdeadbeef;
|
||||
TEST_EQUAL(mbedtls_asn1_get_enum(&data.p, data.end, &read), 0);
|
||||
TEST_EQUAL(val, read);
|
||||
}
|
||||
#endif /* MBEDTLS_ASN1_PARSE_C */
|
||||
}
|
||||
|
||||
exit:
|
||||
mbedtls_free(data.output);
|
||||
}
|
||||
/* END_CASE */
|
||||
|
||||
/* BEGIN_CASE depends_on:MBEDTLS_BIGNUM_C */
|
||||
void mbedtls_asn1_write_mpi(data_t *val, data_t *expected)
|
||||
{
|
||||
generic_write_data_t data = { NULL, NULL, NULL, NULL, 0 };
|
||||
mbedtls_mpi mpi, read;
|
||||
int ret;
|
||||
|
||||
mbedtls_mpi_init(&mpi);
|
||||
mbedtls_mpi_init(&read);
|
||||
TEST_ASSERT(mbedtls_mpi_read_binary(&mpi, val->x, val->len) == 0);
|
||||
|
||||
for (data.size = 0; data.size <= expected->len + 1; data.size++) {
|
||||
if (!generic_write_start_step(&data)) {
|
||||
goto exit;
|
||||
}
|
||||
ret = mbedtls_asn1_write_mpi(&data.p, data.start, &mpi);
|
||||
if (!generic_write_finish_step(&data, expected, ret)) {
|
||||
goto exit;
|
||||
}
|
||||
#if defined(MBEDTLS_ASN1_PARSE_C)
|
||||
if (ret >= 0) {
|
||||
TEST_EQUAL(mbedtls_asn1_get_mpi(&data.p, data.end, &read), 0);
|
||||
TEST_EQUAL(0, mbedtls_mpi_cmp_mpi(&mpi, &read));
|
||||
}
|
||||
#endif /* MBEDTLS_ASN1_PARSE_C */
|
||||
/* Skip some intermediate lengths, they're boring. */
|
||||
if (expected->len > 10 && data.size == 8) {
|
||||
data.size = expected->len - 2;
|
||||
}
|
||||
}
|
||||
|
||||
exit:
|
||||
mbedtls_mpi_free(&mpi);
|
||||
mbedtls_mpi_free(&read);
|
||||
mbedtls_free(data.output);
|
||||
}
|
||||
/* END_CASE */
|
||||
|
||||
/* BEGIN_CASE */
|
||||
void mbedtls_asn1_write_string(int tag, data_t *content, data_t *expected)
|
||||
{
|
||||
generic_write_data_t data = { NULL, NULL, NULL, NULL, 0 };
|
||||
int ret;
|
||||
|
||||
for (data.size = 0; data.size <= expected->len + 1; data.size++) {
|
||||
if (!generic_write_start_step(&data)) {
|
||||
goto exit;
|
||||
}
|
||||
switch (tag) {
|
||||
case MBEDTLS_ASN1_OCTET_STRING:
|
||||
ret = mbedtls_asn1_write_octet_string(
|
||||
&data.p, data.start, content->x, content->len);
|
||||
break;
|
||||
case MBEDTLS_ASN1_OID:
|
||||
ret = mbedtls_asn1_write_oid(
|
||||
&data.p, data.start,
|
||||
(const char *) content->x, content->len);
|
||||
break;
|
||||
case MBEDTLS_ASN1_UTF8_STRING:
|
||||
ret = mbedtls_asn1_write_utf8_string(
|
||||
&data.p, data.start,
|
||||
(const char *) content->x, content->len);
|
||||
break;
|
||||
case MBEDTLS_ASN1_PRINTABLE_STRING:
|
||||
ret = mbedtls_asn1_write_printable_string(
|
||||
&data.p, data.start,
|
||||
(const char *) content->x, content->len);
|
||||
break;
|
||||
case MBEDTLS_ASN1_IA5_STRING:
|
||||
ret = mbedtls_asn1_write_ia5_string(
|
||||
&data.p, data.start,
|
||||
(const char *) content->x, content->len);
|
||||
break;
|
||||
default:
|
||||
ret = mbedtls_asn1_write_tagged_string(
|
||||
&data.p, data.start, tag,
|
||||
(const char *) content->x, content->len);
|
||||
}
|
||||
if (!generic_write_finish_step(&data, expected, ret)) {
|
||||
goto exit;
|
||||
}
|
||||
/* There's no parsing function for octet or character strings. */
|
||||
/* Skip some intermediate lengths, they're boring. */
|
||||
if (expected->len > 10 && data.size == 8) {
|
||||
data.size = expected->len - 2;
|
||||
}
|
||||
}
|
||||
|
||||
exit:
|
||||
mbedtls_free(data.output);
|
||||
}
|
||||
/* END_CASE */
|
||||
|
||||
/* BEGIN_CASE */
|
||||
void mbedtls_asn1_write_algorithm_identifier(data_t *oid,
|
||||
int par_len,
|
||||
data_t *expected)
|
||||
{
|
||||
generic_write_data_t data = { NULL, NULL, NULL, NULL, 0 };
|
||||
int ret;
|
||||
#if defined(MBEDTLS_ASN1_PARSE_C)
|
||||
unsigned char *buf_complete = NULL;
|
||||
#endif /* MBEDTLS_ASN1_PARSE_C */
|
||||
|
||||
for (data.size = 0; data.size <= expected->len + 1; data.size++) {
|
||||
if (!generic_write_start_step(&data)) {
|
||||
goto exit;
|
||||
}
|
||||
ret = mbedtls_asn1_write_algorithm_identifier(
|
||||
&data.p, data.start,
|
||||
(const char *) oid->x, oid->len, par_len);
|
||||
/* If params_len != 0, mbedtls_asn1_write_algorithm_identifier()
|
||||
* assumes that the parameters are already present in the buffer
|
||||
* and returns a length that accounts for this, but our test
|
||||
* data omits the parameters. */
|
||||
if (ret >= 0) {
|
||||
ret -= par_len;
|
||||
}
|
||||
if (!generic_write_finish_step(&data, expected, ret)) {
|
||||
goto exit;
|
||||
}
|
||||
|
||||
#if defined(MBEDTLS_ASN1_PARSE_C)
|
||||
/* Only do a parse-back test if the parameters aren't too large for
|
||||
* a small-heap environment. The boundary is somewhat arbitrary. */
|
||||
if (ret >= 0 && par_len <= 1234) {
|
||||
mbedtls_asn1_buf alg = { 0, 0, NULL };
|
||||
mbedtls_asn1_buf params = { 0, 0, NULL };
|
||||
/* The writing function doesn't write the parameters unless
|
||||
* they're null: it only takes their length as input. But the
|
||||
* parsing function requires the parameters to be present.
|
||||
* Thus make up parameters. */
|
||||
size_t data_len = data.end - data.p;
|
||||
size_t len_complete = data_len + par_len;
|
||||
unsigned char expected_params_tag;
|
||||
size_t expected_params_len;
|
||||
TEST_CALLOC(buf_complete, len_complete);
|
||||
unsigned char *end_complete = buf_complete + len_complete;
|
||||
memcpy(buf_complete, data.p, data_len);
|
||||
if (par_len == 0) {
|
||||
/* mbedtls_asn1_write_algorithm_identifier() wrote a NULL */
|
||||
expected_params_tag = 0x05;
|
||||
expected_params_len = 0;
|
||||
} else if (par_len >= 2 && par_len < 2 + 128) {
|
||||
/* Write an OCTET STRING with a short length encoding */
|
||||
expected_params_tag = buf_complete[data_len] = 0x04;
|
||||
expected_params_len = par_len - 2;
|
||||
buf_complete[data_len + 1] = (unsigned char) expected_params_len;
|
||||
} else if (par_len >= 4 + 128 && par_len < 3 + 256 * 256) {
|
||||
/* Write an OCTET STRING with a two-byte length encoding */
|
||||
expected_params_tag = buf_complete[data_len] = 0x04;
|
||||
expected_params_len = par_len - 4;
|
||||
buf_complete[data_len + 1] = 0x82;
|
||||
buf_complete[data_len + 2] = (unsigned char) (expected_params_len >> 8);
|
||||
buf_complete[data_len + 3] = (unsigned char) (expected_params_len);
|
||||
} else {
|
||||
TEST_FAIL("Bad test data: invalid length of ASN.1 element");
|
||||
}
|
||||
unsigned char *p = buf_complete;
|
||||
TEST_EQUAL(mbedtls_asn1_get_alg(&p, end_complete,
|
||||
&alg, ¶ms), 0);
|
||||
TEST_EQUAL(alg.tag, MBEDTLS_ASN1_OID);
|
||||
TEST_MEMORY_COMPARE(alg.p, alg.len, oid->x, oid->len);
|
||||
TEST_EQUAL(params.tag, expected_params_tag);
|
||||
TEST_EQUAL(params.len, expected_params_len);
|
||||
mbedtls_free(buf_complete);
|
||||
buf_complete = NULL;
|
||||
}
|
||||
#endif /* MBEDTLS_ASN1_PARSE_C */
|
||||
}
|
||||
|
||||
exit:
|
||||
mbedtls_free(data.output);
|
||||
#if defined(MBEDTLS_ASN1_PARSE_C)
|
||||
mbedtls_free(buf_complete);
|
||||
#endif /* MBEDTLS_ASN1_PARSE_C */
|
||||
}
|
||||
/* END_CASE */
|
||||
|
||||
/* BEGIN_CASE depends_on:MBEDTLS_ASN1_PARSE_C */
|
||||
void mbedtls_asn1_write_len(int len, data_t *asn1, int buf_len,
|
||||
int result)
|
||||
{
|
||||
int ret;
|
||||
unsigned char buf[150];
|
||||
unsigned char *p;
|
||||
size_t i;
|
||||
size_t read_len;
|
||||
|
||||
memset(buf, GUARD_VAL, sizeof(buf));
|
||||
|
||||
p = buf + GUARD_LEN + buf_len;
|
||||
|
||||
ret = mbedtls_asn1_write_len(&p, buf + GUARD_LEN, (size_t) len);
|
||||
|
||||
TEST_ASSERT(ret == result);
|
||||
|
||||
/* Check for buffer overwrite on both sides */
|
||||
for (i = 0; i < GUARD_LEN; i++) {
|
||||
TEST_ASSERT(buf[i] == GUARD_VAL);
|
||||
TEST_ASSERT(buf[GUARD_LEN + buf_len + i] == GUARD_VAL);
|
||||
}
|
||||
|
||||
if (result >= 0) {
|
||||
TEST_ASSERT(p + asn1->len == buf + GUARD_LEN + buf_len);
|
||||
|
||||
TEST_ASSERT(memcmp(p, asn1->x, asn1->len) == 0);
|
||||
|
||||
/* Read back with mbedtls_asn1_get_len() to check */
|
||||
ret = mbedtls_asn1_get_len(&p, buf + GUARD_LEN + buf_len, &read_len);
|
||||
|
||||
if (len == 0) {
|
||||
TEST_ASSERT(ret == 0);
|
||||
} else {
|
||||
/* Return will be MBEDTLS_ERR_ASN1_OUT_OF_DATA because the rest of
|
||||
* the buffer is missing
|
||||
*/
|
||||
TEST_ASSERT(ret == MBEDTLS_ERR_ASN1_OUT_OF_DATA);
|
||||
}
|
||||
TEST_ASSERT(read_len == (size_t) len);
|
||||
TEST_ASSERT(p == buf + GUARD_LEN + buf_len);
|
||||
}
|
||||
}
|
||||
/* END_CASE */
|
||||
|
||||
/* BEGIN_CASE */
|
||||
void test_asn1_write_bitstrings(data_t *bitstring, int bits,
|
||||
data_t *expected, int is_named)
|
||||
{
|
||||
generic_write_data_t data = { NULL, NULL, NULL, NULL, 0 };
|
||||
int ret;
|
||||
int (*func)(unsigned char **p, const unsigned char *start,
|
||||
const unsigned char *buf, size_t bits) =
|
||||
(is_named ? mbedtls_asn1_write_named_bitstring :
|
||||
mbedtls_asn1_write_bitstring);
|
||||
#if defined(MBEDTLS_ASN1_PARSE_C)
|
||||
unsigned char *masked_bitstring = NULL;
|
||||
#endif /* MBEDTLS_ASN1_PARSE_C */
|
||||
|
||||
/* The API expects `bitstring->x` to contain `bits` bits. */
|
||||
size_t byte_length = (bits + 7) / 8;
|
||||
TEST_ASSERT(bitstring->len >= byte_length);
|
||||
|
||||
#if defined(MBEDTLS_ASN1_PARSE_C)
|
||||
TEST_CALLOC(masked_bitstring, byte_length);
|
||||
if (byte_length != 0) {
|
||||
memcpy(masked_bitstring, bitstring->x, byte_length);
|
||||
if (bits % 8 != 0) {
|
||||
masked_bitstring[byte_length - 1] &= ~(0xff >> (bits % 8));
|
||||
}
|
||||
}
|
||||
size_t value_bits = bits;
|
||||
if (is_named) {
|
||||
/* In a named bit string, all trailing 0 bits are removed. */
|
||||
while (byte_length > 0 && masked_bitstring[byte_length - 1] == 0) {
|
||||
--byte_length;
|
||||
}
|
||||
value_bits = 8 * byte_length;
|
||||
if (byte_length > 0) {
|
||||
unsigned char last_byte = masked_bitstring[byte_length - 1];
|
||||
for (unsigned b = 1; b < 0xff && (last_byte & b) == 0; b <<= 1) {
|
||||
--value_bits;
|
||||
}
|
||||
}
|
||||
}
|
||||
#endif /* MBEDTLS_ASN1_PARSE_C */
|
||||
|
||||
for (data.size = 0; data.size <= expected->len + 1; data.size++) {
|
||||
if (!generic_write_start_step(&data)) {
|
||||
goto exit;
|
||||
}
|
||||
ret = (*func)(&data.p, data.start, bitstring->x, bits);
|
||||
if (!generic_write_finish_step(&data, expected, ret)) {
|
||||
goto exit;
|
||||
}
|
||||
#if defined(MBEDTLS_ASN1_PARSE_C)
|
||||
if (ret >= 0) {
|
||||
mbedtls_asn1_bitstring read = { 0, 0, NULL };
|
||||
TEST_EQUAL(mbedtls_asn1_get_bitstring(&data.p, data.end,
|
||||
&read), 0);
|
||||
TEST_MEMORY_COMPARE(read.p, read.len,
|
||||
masked_bitstring, byte_length);
|
||||
TEST_EQUAL(read.unused_bits, 8 * byte_length - value_bits);
|
||||
}
|
||||
#endif /* MBEDTLS_ASN1_PARSE_C */
|
||||
}
|
||||
|
||||
exit:
|
||||
mbedtls_free(data.output);
|
||||
#if defined(MBEDTLS_ASN1_PARSE_C)
|
||||
mbedtls_free(masked_bitstring);
|
||||
#endif /* MBEDTLS_ASN1_PARSE_C */
|
||||
}
|
||||
/* END_CASE */
|
||||
|
||||
/* BEGIN_CASE */
|
||||
void store_named_data_find(data_t *oid0, data_t *oid1,
|
||||
data_t *oid2, data_t *oid3,
|
||||
data_t *needle, int from, int position)
|
||||
{
|
||||
data_t *oid[4] = { oid0, oid1, oid2, oid3 };
|
||||
mbedtls_asn1_named_data nd[] = {
|
||||
{ { 0x06, 0, NULL }, { 0, 0, NULL }, NULL, 0 },
|
||||
{ { 0x06, 0, NULL }, { 0, 0, NULL }, NULL, 0 },
|
||||
{ { 0x06, 0, NULL }, { 0, 0, NULL }, NULL, 0 },
|
||||
{ { 0x06, 0, NULL }, { 0, 0, NULL }, NULL, 0 },
|
||||
};
|
||||
mbedtls_asn1_named_data *pointers[ARRAY_LENGTH(nd) + 1];
|
||||
size_t i;
|
||||
mbedtls_asn1_named_data *head = NULL;
|
||||
mbedtls_asn1_named_data *found = NULL;
|
||||
|
||||
for (i = 0; i < ARRAY_LENGTH(nd); i++) {
|
||||
pointers[i] = &nd[i];
|
||||
}
|
||||
pointers[ARRAY_LENGTH(nd)] = NULL;
|
||||
for (i = 0; i < ARRAY_LENGTH(nd); i++) {
|
||||
TEST_CALLOC(nd[i].oid.p, oid[i]->len);
|
||||
memcpy(nd[i].oid.p, oid[i]->x, oid[i]->len);
|
||||
nd[i].oid.len = oid[i]->len;
|
||||
nd[i].next = pointers[i+1];
|
||||
}
|
||||
|
||||
head = pointers[from];
|
||||
found = mbedtls_asn1_store_named_data(&head,
|
||||
(const char *) needle->x,
|
||||
needle->len,
|
||||
NULL, 0);
|
||||
|
||||
/* In any case, the existing list structure must be unchanged. */
|
||||
for (i = 0; i < ARRAY_LENGTH(nd); i++) {
|
||||
TEST_ASSERT(nd[i].next == pointers[i+1]);
|
||||
}
|
||||
|
||||
if (position >= 0) {
|
||||
/* position should have been found and modified. */
|
||||
TEST_ASSERT(head == pointers[from]);
|
||||
TEST_ASSERT(found == pointers[position]);
|
||||
} else {
|
||||
/* A new entry should have been created. */
|
||||
TEST_ASSERT(found == head);
|
||||
TEST_ASSERT(head->next == pointers[from]);
|
||||
for (i = 0; i < ARRAY_LENGTH(nd); i++) {
|
||||
TEST_ASSERT(found != &nd[i]);
|
||||
}
|
||||
}
|
||||
|
||||
exit:
|
||||
if (found != NULL && found == head && found != pointers[from]) {
|
||||
mbedtls_free(found->oid.p);
|
||||
mbedtls_free(found);
|
||||
}
|
||||
for (i = 0; i < ARRAY_LENGTH(nd); i++) {
|
||||
mbedtls_free(nd[i].oid.p);
|
||||
}
|
||||
}
|
||||
/* END_CASE */
|
||||
|
||||
/* BEGIN_CASE */
|
||||
void store_named_data_val_found(int old_len, int new_len)
|
||||
{
|
||||
mbedtls_asn1_named_data nd =
|
||||
{ { 0x06, 3, (unsigned char *) "OID" }, { 0, 0, NULL }, NULL, 0 };
|
||||
mbedtls_asn1_named_data *head = &nd;
|
||||
mbedtls_asn1_named_data *found = NULL;
|
||||
unsigned char *old_val = NULL;
|
||||
unsigned char *new_val = (unsigned char *) "new value";
|
||||
|
||||
if (old_len != 0) {
|
||||
TEST_CALLOC(nd.val.p, (size_t) old_len);
|
||||
old_val = nd.val.p;
|
||||
nd.val.len = old_len;
|
||||
memset(old_val, 'x', old_len);
|
||||
}
|
||||
if (new_len <= 0) {
|
||||
new_len = -new_len;
|
||||
new_val = NULL;
|
||||
}
|
||||
|
||||
found = mbedtls_asn1_store_named_data(&head, "OID", 3,
|
||||
new_val, new_len);
|
||||
TEST_ASSERT(head == &nd);
|
||||
TEST_ASSERT(found == head);
|
||||
|
||||
if (new_val != NULL) {
|
||||
TEST_MEMORY_COMPARE(found->val.p, found->val.len,
|
||||
new_val, (size_t) new_len);
|
||||
}
|
||||
if (new_len == 0) {
|
||||
TEST_ASSERT(found->val.p == NULL);
|
||||
/* If new_len != 0, then new_val != NULL and the length has been checked
|
||||
* above by TEST_MEMORY_COMPARE(). But not here, so we need to check. */
|
||||
TEST_EQUAL(found->val.len, 0);
|
||||
} else if (new_len == old_len) {
|
||||
TEST_ASSERT(found->val.p == old_val);
|
||||
} else {
|
||||
TEST_ASSERT(found->val.p != old_val);
|
||||
}
|
||||
|
||||
exit:
|
||||
mbedtls_free(nd.val.p);
|
||||
}
|
||||
/* END_CASE */
|
||||
|
||||
/* BEGIN_CASE */
|
||||
void store_named_data_val_new(int new_len, int set_new_val)
|
||||
{
|
||||
mbedtls_asn1_named_data *head = NULL;
|
||||
mbedtls_asn1_named_data *found = NULL;
|
||||
const unsigned char *oid = (unsigned char *) "OID";
|
||||
size_t oid_len = strlen((const char *) oid);
|
||||
const unsigned char *new_val = (unsigned char *) "new value";
|
||||
|
||||
if (set_new_val == 0) {
|
||||
new_val = NULL;
|
||||
}
|
||||
|
||||
found = mbedtls_asn1_store_named_data(&head,
|
||||
(const char *) oid, oid_len,
|
||||
new_val, (size_t) new_len);
|
||||
TEST_ASSERT(found != NULL);
|
||||
TEST_ASSERT(found == head);
|
||||
TEST_ASSERT(found->oid.p != oid);
|
||||
TEST_MEMORY_COMPARE(found->oid.p, found->oid.len, oid, oid_len);
|
||||
if (new_len == 0) {
|
||||
TEST_ASSERT(found->val.p == NULL);
|
||||
TEST_EQUAL(found->val.len, 0);
|
||||
} else if (new_val == NULL) {
|
||||
TEST_ASSERT(found->val.p != NULL);
|
||||
TEST_EQUAL(found->val.len, new_len);
|
||||
} else {
|
||||
TEST_ASSERT(found->val.p != new_val);
|
||||
TEST_MEMORY_COMPARE(found->val.p, found->val.len,
|
||||
new_val, (size_t) new_len);
|
||||
}
|
||||
|
||||
exit:
|
||||
if (found != NULL) {
|
||||
mbedtls_free(found->oid.p);
|
||||
mbedtls_free(found->val.p);
|
||||
}
|
||||
mbedtls_free(found);
|
||||
}
|
||||
/* END_CASE */
|
||||
296
vendor/mbedtls/tests/suites/test_suite_base64.data
vendored
Normal file
296
vendor/mbedtls/tests/suites/test_suite_base64.data
vendored
Normal file
@@ -0,0 +1,296 @@
|
||||
enc_char (all digits)
|
||||
enc_chars:
|
||||
|
||||
dec_value (all characters)
|
||||
dec_chars:
|
||||
|
||||
Test case mbedtls_base64_encode #1 buffer just right
|
||||
mbedtls_base64_encode:"":"":0:0
|
||||
|
||||
Test case mbedtls_base64_encode #2 buffer just right
|
||||
mbedtls_base64_encode:"f":"Zg==":5:0
|
||||
|
||||
Test case mbedtls_base64_encode #2 buffer too small
|
||||
mbedtls_base64_encode:"f":"Zg==":4:MBEDTLS_ERR_BASE64_BUFFER_TOO_SMALL
|
||||
|
||||
Test case mbedtls_base64_encode #3 buffer just right
|
||||
mbedtls_base64_encode:"fo":"Zm8=":5:0
|
||||
|
||||
Test case mbedtls_base64_encode #3 buffer too small
|
||||
mbedtls_base64_encode:"fo":"Zm8=":4:MBEDTLS_ERR_BASE64_BUFFER_TOO_SMALL
|
||||
|
||||
Test case mbedtls_base64_encode #4 buffer just right
|
||||
mbedtls_base64_encode:"foo":"Zm9v":5:0
|
||||
|
||||
Test case mbedtls_base64_encode #4 buffer too small
|
||||
mbedtls_base64_encode:"foo":"Zm9v":4:MBEDTLS_ERR_BASE64_BUFFER_TOO_SMALL
|
||||
|
||||
Test case mbedtls_base64_encode #5 buffer just right
|
||||
mbedtls_base64_encode:"foob":"Zm9vYg==":9:0
|
||||
|
||||
Test case mbedtls_base64_encode #5 buffer too small
|
||||
mbedtls_base64_encode:"foob":"Zm9vYg==":8:MBEDTLS_ERR_BASE64_BUFFER_TOO_SMALL
|
||||
|
||||
Test case mbedtls_base64_encode #6 buffer just right
|
||||
mbedtls_base64_encode:"fooba":"Zm9vYmE=":9:0
|
||||
|
||||
Test case mbedtls_base64_encode #6 buffer too small
|
||||
mbedtls_base64_encode:"fooba":"Zm9vYmE=":8:MBEDTLS_ERR_BASE64_BUFFER_TOO_SMALL
|
||||
|
||||
Test case mbedtls_base64_encode #7 buffer just right
|
||||
mbedtls_base64_encode:"foobar":"Zm9vYmFy":9:0
|
||||
|
||||
Test case mbedtls_base64_encode #7 buffer too small
|
||||
mbedtls_base64_encode:"foobar":"Zm9vYmFy":8:MBEDTLS_ERR_BASE64_BUFFER_TOO_SMALL
|
||||
|
||||
Test case mbedtls_base64_decode #1
|
||||
mbedtls_base64_decode:"":"":0
|
||||
|
||||
Test case mbedtls_base64_decode #2
|
||||
mbedtls_base64_decode:"Zg==":"f":0
|
||||
|
||||
Test case mbedtls_base64_decode #3
|
||||
mbedtls_base64_decode:"Zm8=":"fo":0
|
||||
|
||||
Test case mbedtls_base64_decode #4
|
||||
mbedtls_base64_decode:"Zm9v":"foo":0
|
||||
|
||||
Test case mbedtls_base64_decode #5
|
||||
mbedtls_base64_decode:"Zm9vYg==":"foob":0
|
||||
|
||||
Test case mbedtls_base64_decode #6
|
||||
mbedtls_base64_decode:"Zm9vYmE=":"fooba":0
|
||||
|
||||
Test case mbedtls_base64_decode #7
|
||||
mbedtls_base64_decode:"Zm9vYmFy":"foobar":0
|
||||
|
||||
Base64 decode (Illegal character)
|
||||
mbedtls_base64_decode:"zm#=":"":MBEDTLS_ERR_BASE64_INVALID_CHARACTER
|
||||
|
||||
Base64 decode (Too much equal signs)
|
||||
mbedtls_base64_decode:"zm===":"":MBEDTLS_ERR_BASE64_INVALID_CHARACTER
|
||||
|
||||
Base64 decode (Invalid char after equal signs)
|
||||
mbedtls_base64_decode:"zm=masd":"":MBEDTLS_ERR_BASE64_INVALID_CHARACTER
|
||||
|
||||
Base64 decode (Space inside string)
|
||||
mbedtls_base64_decode:"zm masd":"":MBEDTLS_ERR_BASE64_INVALID_CHARACTER
|
||||
|
||||
# The next few test cases validate systematically for short inputs that
|
||||
# we require the correct number of trailing equal signs.
|
||||
|
||||
# 4k+1 digits is always wrong (wouldn't encode more bytes than 4k digits)
|
||||
Base64 decode: 1 digit, 0 equals (bad)
|
||||
mbedtls_base64_decode:"Y":"":MBEDTLS_ERR_BASE64_INVALID_CHARACTER
|
||||
|
||||
Base64 decode: 1 digit, 1 equals (bad)
|
||||
mbedtls_base64_decode:"Y=":"":MBEDTLS_ERR_BASE64_INVALID_CHARACTER
|
||||
|
||||
Base64 decode: 1 digit, 2 equals (bad)
|
||||
mbedtls_base64_decode:"Y==":"":MBEDTLS_ERR_BASE64_INVALID_CHARACTER
|
||||
|
||||
Base64 decode: 1 digit, 3 equals (bad)
|
||||
mbedtls_base64_decode:"Y===":"":MBEDTLS_ERR_BASE64_INVALID_CHARACTER
|
||||
|
||||
Base64 decode: 2 digits, 0 equals (bad)
|
||||
mbedtls_base64_decode:"Yw":"c":MBEDTLS_ERR_BASE64_INVALID_CHARACTER
|
||||
|
||||
Base64 decode: 2 digits, 1 equals (bad)
|
||||
mbedtls_base64_decode:"Yw=":"c":MBEDTLS_ERR_BASE64_INVALID_CHARACTER
|
||||
|
||||
Base64 decode: 2 digits, 2 equals (good)
|
||||
mbedtls_base64_decode:"Yw==":"c":0
|
||||
|
||||
Base64 decode: 2 digits, 3 equals (bad)
|
||||
mbedtls_base64_decode:"Yw===":"c":MBEDTLS_ERR_BASE64_INVALID_CHARACTER
|
||||
|
||||
Base64 decode: 3 digits, 0 equals (bad)
|
||||
mbedtls_base64_decode:"Y28":"co":MBEDTLS_ERR_BASE64_INVALID_CHARACTER
|
||||
|
||||
Base64 decode: 3 digits, 1 equals (good)
|
||||
mbedtls_base64_decode:"Y28=":"co":0
|
||||
|
||||
Base64 decode: 3 digits, 2 equals (bad)
|
||||
mbedtls_base64_decode:"Y28==":"co":MBEDTLS_ERR_BASE64_INVALID_CHARACTER
|
||||
|
||||
Base64 decode: 3 digits, 3 equals (bad)
|
||||
mbedtls_base64_decode:"Y28===":"co":MBEDTLS_ERR_BASE64_INVALID_CHARACTER
|
||||
|
||||
Base64 decode: 4 digits, 0 equals (good)
|
||||
mbedtls_base64_decode:"Y29t":"com":0
|
||||
|
||||
Base64 decode: 4 digits, 1 equals (bad)
|
||||
mbedtls_base64_decode:"Y29t=":"com":MBEDTLS_ERR_BASE64_INVALID_CHARACTER
|
||||
|
||||
Base64 decode: 4 digits, 2 equals (bad)
|
||||
mbedtls_base64_decode:"Y29t==":"com":MBEDTLS_ERR_BASE64_INVALID_CHARACTER
|
||||
|
||||
Base64 decode: 4 digits, 3 equals (bad)
|
||||
mbedtls_base64_decode:"Y29t===":"com":MBEDTLS_ERR_BASE64_INVALID_CHARACTER
|
||||
|
||||
# 4k+1 digits is always wrong (wouldn't encode more bytes than 4k digits)
|
||||
Base64 decode: 5 digits, 0 equals (bad)
|
||||
mbedtls_base64_decode:"Y29tc":"":MBEDTLS_ERR_BASE64_INVALID_CHARACTER
|
||||
|
||||
Base64 decode: 5 digits, 1 equals (bad)
|
||||
mbedtls_base64_decode:"Y29tc=":"":MBEDTLS_ERR_BASE64_INVALID_CHARACTER
|
||||
|
||||
Base64 decode: 5 digits, 2 equals (bad)
|
||||
mbedtls_base64_decode:"Y29tc==":"":MBEDTLS_ERR_BASE64_INVALID_CHARACTER
|
||||
|
||||
Base64 decode: 5 digits, 3 equals (bad)
|
||||
mbedtls_base64_decode:"Y29tc===":"com":MBEDTLS_ERR_BASE64_INVALID_CHARACTER
|
||||
|
||||
Base64 decode: 6 digits, 0 equals (bad)
|
||||
mbedtls_base64_decode:"Y29tcA":"comp":MBEDTLS_ERR_BASE64_INVALID_CHARACTER
|
||||
|
||||
Base64 decode: 6 digits, 1 equals (bad)
|
||||
mbedtls_base64_decode:"Y29tcA=":"comp":MBEDTLS_ERR_BASE64_INVALID_CHARACTER
|
||||
|
||||
Base64 decode: 6 digits, 2 equals (good)
|
||||
mbedtls_base64_decode:"Y29tcA==":"comp":0
|
||||
|
||||
Base64 decode: 6 digits, 3 equals (bad)
|
||||
mbedtls_base64_decode:"Y29tcA===":"comp":MBEDTLS_ERR_BASE64_INVALID_CHARACTER
|
||||
|
||||
Base64 decode: 7 digits, 0 equals (bad)
|
||||
mbedtls_base64_decode:"Y29tcG8":"compo":MBEDTLS_ERR_BASE64_INVALID_CHARACTER
|
||||
|
||||
Base64 decode: 7 digits, 1 equals (good)
|
||||
mbedtls_base64_decode:"Y29tcG8=":"compo":0
|
||||
|
||||
Base64 decode: 7 digits, 2 equals (bad)
|
||||
mbedtls_base64_decode:"Y29tcG8==":"compo":MBEDTLS_ERR_BASE64_INVALID_CHARACTER
|
||||
|
||||
Base64 decode: 7 digits, 3 equals (bad)
|
||||
mbedtls_base64_decode:"Y29tcG8===":"compo":MBEDTLS_ERR_BASE64_INVALID_CHARACTER
|
||||
|
||||
Base64 decode: 8 digits, 0 equals (good)
|
||||
mbedtls_base64_decode:"Y29tcG9z":"compos":0
|
||||
|
||||
Base64 decode: 8 digits, 1 equals (bad)
|
||||
mbedtls_base64_decode:"Y29tcG9z=":"compos":MBEDTLS_ERR_BASE64_INVALID_CHARACTER
|
||||
|
||||
Base64 decode: 8 digits, 2 equals (bad)
|
||||
mbedtls_base64_decode:"Y29tcG9z==":"compos":MBEDTLS_ERR_BASE64_INVALID_CHARACTER
|
||||
|
||||
Base64 decode: 8 digits, 3 equals (bad)
|
||||
mbedtls_base64_decode:"Y29tcG9z===":"compos":MBEDTLS_ERR_BASE64_INVALID_CHARACTER
|
||||
|
||||
Base64 decode "Zm9vYmFy" (no newline nor '\0' at end)
|
||||
base64_decode_hex_src:"5a6d3976596d4679":"foobar":0
|
||||
|
||||
Base64 decode "Zm9vYmFy\n" (LF at end)
|
||||
base64_decode_hex_src:"5a6d3976596d46790a":"foobar":0
|
||||
|
||||
Base64 decode "Zm9vYmFy\r\n" (CRLF at end)
|
||||
base64_decode_hex_src:"5a6d3976596d46790d0a":"foobar":0
|
||||
|
||||
Base64 decode "Zm9vYmFy\r" (CR at end)
|
||||
base64_decode_hex_src:"5a6d3976596d46790d":"":MBEDTLS_ERR_BASE64_INVALID_CHARACTER
|
||||
|
||||
Base64 decode "Zm9vYmFy " (SP at end)
|
||||
base64_decode_hex_src:"5a6d3976596d467920":"foobar":0
|
||||
|
||||
Base64 decode "Zm9vYmFy \n" (SP+LF at end)
|
||||
base64_decode_hex_src:"5a6d3976596d4679200a":"foobar":0
|
||||
|
||||
Base64 decode "Zm9vYmFy \r\n" (SP+CRLF at end)
|
||||
base64_decode_hex_src:"5a6d3976596d4679200d0a":"foobar":0
|
||||
|
||||
Base64 decode "Zm9vYmFy \r" (SP+CR at end)
|
||||
base64_decode_hex_src:"5a6d3976596d4679200d":"":MBEDTLS_ERR_BASE64_INVALID_CHARACTER
|
||||
|
||||
Base64 decode "Zm9vYmFy " (2SP at end)
|
||||
base64_decode_hex_src:"5a6d3976596d46792020":"foobar":0
|
||||
|
||||
Base64 decode "Zm9vYmFy \n" (2SP+LF at end)
|
||||
base64_decode_hex_src:"5a6d3976596d467920200a":"foobar":0
|
||||
|
||||
Base64 decode "Zm9vYmFy \r\n" (2SP+CRLF at end)
|
||||
base64_decode_hex_src:"5a6d3976596d467920200d0a":"foobar":0
|
||||
|
||||
Base64 decode "Zm9vYmFy \r" (2SP+CR at end)
|
||||
base64_decode_hex_src:"5a6d3976596d467920200d":"":MBEDTLS_ERR_BASE64_INVALID_CHARACTER
|
||||
|
||||
Base64 decode "Zm9vYmF\ny" (LF inside)
|
||||
base64_decode_hex_src:"5a6d3976596d460a79":"foobar":0
|
||||
|
||||
Base64 decode "Zm9vYmF\ry" (CRLF inside)
|
||||
base64_decode_hex_src:"5a6d3976596d460d0a79":"foobar":0
|
||||
|
||||
Base64 decode "Zm9vYmF\ry" (CR inside)
|
||||
base64_decode_hex_src:"5a6d3976596d460d79":"":MBEDTLS_ERR_BASE64_INVALID_CHARACTER
|
||||
|
||||
Base64 decode "Zm9vYmF y" (SP inside)
|
||||
base64_decode_hex_src:"5a6d3976596d462079":"":MBEDTLS_ERR_BASE64_INVALID_CHARACTER
|
||||
|
||||
Base64 decode "Zm9vYmF \ny" (SP+LF inside)
|
||||
base64_decode_hex_src:"5a6d3976596d46200a79":"foobar":0
|
||||
|
||||
Base64 decode "Zm9vYmF \ry" (SP+CRLF inside)
|
||||
base64_decode_hex_src:"5a6d3976596d46200d0a79":"foobar":0
|
||||
|
||||
Base64 decode "Zm9vYmF \ry" (SP+CR inside)
|
||||
base64_decode_hex_src:"5a6d3976596d46200d79":"":MBEDTLS_ERR_BASE64_INVALID_CHARACTER
|
||||
|
||||
Base64 decode "Zm9vYmF y" (2SP inside)
|
||||
base64_decode_hex_src:"5a6d3976596d46202079":"":MBEDTLS_ERR_BASE64_INVALID_CHARACTER
|
||||
|
||||
Base64 decode "Zm9vYmF \ny" (2SP+LF inside)
|
||||
base64_decode_hex_src:"5a6d3976596d4620200a79":"foobar":0
|
||||
|
||||
Base64 decode "Zm9vYmF \ry" (2SP+CRLF inside)
|
||||
base64_decode_hex_src:"5a6d3976596d4620200d0a79":"foobar":0
|
||||
|
||||
Base64 decode "Zm9vYmF \ry" (2SP+CR inside)
|
||||
base64_decode_hex_src:"5a6d3976596d4620200d79":"":MBEDTLS_ERR_BASE64_INVALID_CHARACTER
|
||||
|
||||
Base64 encode hex #1
|
||||
base64_encode_hex:"010203040506070809":"AQIDBAUGBwgJ":13:0
|
||||
|
||||
Base64 encode hex #2 (buffer too small)
|
||||
base64_encode_hex:"010203040506070809":"AQIDBAUGBwgJ":12:MBEDTLS_ERR_BASE64_BUFFER_TOO_SMALL
|
||||
|
||||
Base64 encode hex #3
|
||||
base64_encode_hex:"0102030405060708":"AQIDBAUGBwg=":13:0
|
||||
|
||||
Base64 encode hex #4
|
||||
base64_encode_hex:"01020304050607":"AQIDBAUGBw==":13:0
|
||||
|
||||
# Rotate the bytes around so that they end up at each offset modulo 3 in
|
||||
# successive test cases.
|
||||
Base64 encode hex all valid input bytes #0
|
||||
base64_encode_hex:"000102030405060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e1f202122232425262728292a2b2c2d2e2f303132333435363738393a3b3c3d3e3f404142434445464748494a4b4c4d4e4f505152535455565758595a5b5c5d5e5f606162636465666768696a6b6c6d6e6f707172737475767778797a7b7c7d7e7f808182838485868788898a8b8c8d8e8f909192939495969798999a9b9c9d9e9fa0a1a2a3a4a5a6a7a8a9aaabacadaeafb0b1b2b3b4b5b6b7b8b9babbbcbdbebfc0c1c2c3c4c5c6c7c8c9cacbcccdcecfd0d1d2d3d4d5d6d7d8d9dadbdcdddedfe0e1e2e3e4e5e6e7e8e9eaebecedeeeff0f1f2f3f4f5f6f7f8f9fafbfcfdfeff":"AAECAwQFBgcICQoLDA0ODxAREhMUFRYXGBkaGxwdHh8gISIjJCUmJygpKissLS4vMDEyMzQ1Njc4OTo7PD0+P0BBQkNERUZHSElKS0xNTk9QUVJTVFVWV1hZWltcXV5fYGFiY2RlZmdoaWprbG1ub3BxcnN0dXZ3eHl6e3x9fn+AgYKDhIWGh4iJiouMjY6PkJGSk5SVlpeYmZqbnJ2en6ChoqOkpaanqKmqq6ytrq+wsbKztLW2t7i5uru8vb6/wMHCw8TFxsfIycrLzM3Oz9DR0tPU1dbX2Nna29zd3t/g4eLj5OXm5+jp6uvs7e7v8PHy8/T19vf4+fr7/P3+/w==":345:0
|
||||
|
||||
Base64 encode hex all valid input bytes #1
|
||||
base64_encode_hex:"0102030405060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e1f202122232425262728292a2b2c2d2e2f303132333435363738393a3b3c3d3e3f404142434445464748494a4b4c4d4e4f505152535455565758595a5b5c5d5e5f606162636465666768696a6b6c6d6e6f707172737475767778797a7b7c7d7e7f808182838485868788898a8b8c8d8e8f909192939495969798999a9b9c9d9e9fa0a1a2a3a4a5a6a7a8a9aaabacadaeafb0b1b2b3b4b5b6b7b8b9babbbcbdbebfc0c1c2c3c4c5c6c7c8c9cacbcccdcecfd0d1d2d3d4d5d6d7d8d9dadbdcdddedfe0e1e2e3e4e5e6e7e8e9eaebecedeeeff0f1f2f3f4f5f6f7f8f9fafbfcfdfeff00":"AQIDBAUGBwgJCgsMDQ4PEBESExQVFhcYGRobHB0eHyAhIiMkJSYnKCkqKywtLi8wMTIzNDU2Nzg5Ojs8PT4/QEFCQ0RFRkdISUpLTE1OT1BRUlNUVVZXWFlaW1xdXl9gYWJjZGVmZ2hpamtsbW5vcHFyc3R1dnd4eXp7fH1+f4CBgoOEhYaHiImKi4yNjo+QkZKTlJWWl5iZmpucnZ6foKGio6SlpqeoqaqrrK2ur7CxsrO0tba3uLm6u7y9vr/AwcLDxMXGx8jJysvMzc7P0NHS09TV1tfY2drb3N3e3+Dh4uPk5ebn6Onq6+zt7u/w8fLz9PX29/j5+vv8/f7/AA==":345:0
|
||||
|
||||
Base64 encode hex all valid input bytes #2
|
||||
base64_encode_hex:"02030405060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e1f202122232425262728292a2b2c2d2e2f303132333435363738393a3b3c3d3e3f404142434445464748494a4b4c4d4e4f505152535455565758595a5b5c5d5e5f606162636465666768696a6b6c6d6e6f707172737475767778797a7b7c7d7e7f808182838485868788898a8b8c8d8e8f909192939495969798999a9b9c9d9e9fa0a1a2a3a4a5a6a7a8a9aaabacadaeafb0b1b2b3b4b5b6b7b8b9babbbcbdbebfc0c1c2c3c4c5c6c7c8c9cacbcccdcecfd0d1d2d3d4d5d6d7d8d9dadbdcdddedfe0e1e2e3e4e5e6e7e8e9eaebecedeeeff0f1f2f3f4f5f6f7f8f9fafbfcfdfeff0001":"AgMEBQYHCAkKCwwNDg8QERITFBUWFxgZGhscHR4fICEiIyQlJicoKSorLC0uLzAxMjM0NTY3ODk6Ozw9Pj9AQUJDREVGR0hJSktMTU5PUFFSU1RVVldYWVpbXF1eX2BhYmNkZWZnaGlqa2xtbm9wcXJzdHV2d3h5ent8fX5/gIGCg4SFhoeIiYqLjI2Oj5CRkpOUlZaXmJmam5ydnp+goaKjpKWmp6ipqqusra6vsLGys7S1tre4ubq7vL2+v8DBwsPExcbHyMnKy8zNzs/Q0dLT1NXW19jZ2tvc3d7f4OHi4+Tl5ufo6err7O3u7/Dx8vP09fb3+Pn6+/z9/v8AAQ==":345:0
|
||||
|
||||
Base64 encode all valid output characters at all offsets
|
||||
base64_encode_hex:"00108310518720928b30d38f41149351559761969b71d79f8218a39259a7a29aabb2dbafc31cb3d35db7e39ebbf3dfbff800420c41461c824a2cc34e3d04524d45565d865a6dc75e7e08628e49669e8a6aaecb6ebf0c72cf4d76df8e7aefcf7effe00108310518720928b30d38f41149351559761969b71d79f8218a39259a7a29aabb2dbafc31cb3d35db7e39ebbf3dfbff800420c41461c824a2cc34e3d04524d45565d865a6dc75e7e08628e49669e8a6aaecb6ebf0c72cf4d76df8e7aefcf7efd0":"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/+ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/+ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/+ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/Q":261:0
|
||||
|
||||
Base64 decode hex #1
|
||||
base64_decode_hex:"AQIDBAUGBwgJ":"010203040506070809":9:0
|
||||
|
||||
Base64 decode hex #2 (buffer too small)
|
||||
base64_decode_hex:"AQIDBAUGBwgJ":"010203040506070809":8:MBEDTLS_ERR_BASE64_BUFFER_TOO_SMALL
|
||||
|
||||
Base64 decode hex #3
|
||||
base64_decode_hex:"AQIDBAUGBwg=":"0102030405060708":8:0
|
||||
|
||||
Base64 decode hex #4
|
||||
base64_decode_hex:"AQIDBAUGBw==":"01020304050607":7:0
|
||||
|
||||
Base64 decode hex #5 (buffer too small)
|
||||
base64_decode_hex:"AQIDBAUGBw==":"01020304050607":6:MBEDTLS_ERR_BASE64_BUFFER_TOO_SMALL
|
||||
|
||||
Base64 decode all valid input characters at all offsets
|
||||
base64_decode_hex:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/+ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/+ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/+ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/Q":"00108310518720928b30d38f41149351559761969b71d79f8218a39259a7a29aabb2dbafc31cb3d35db7e39ebbf3dfbff800420c41461c824a2cc34e3d04524d45565d865a6dc75e7e08628e49669e8a6aaecb6ebf0c72cf4d76df8e7aefcf7effe00108310518720928b30d38f41149351559761969b71d79f8218a39259a7a29aabb2dbafc31cb3d35db7e39ebbf3dfbff800420c41461c824a2cc34e3d04524d45565d865a6dc75e7e08628e49669e8a6aaecb6ebf0c72cf4d76df8e7aefcf7efd0":195:0
|
||||
|
||||
Base64 Selftest
|
||||
depends_on:MBEDTLS_SELF_TEST
|
||||
base64_selftest:
|
||||
|
||||
222
vendor/mbedtls/tests/suites/test_suite_base64.function
vendored
Normal file
222
vendor/mbedtls/tests/suites/test_suite_base64.function
vendored
Normal file
@@ -0,0 +1,222 @@
|
||||
/* BEGIN_HEADER */
|
||||
#include "mbedtls/base64.h"
|
||||
#include "base64_internal.h"
|
||||
#include "constant_time_internal.h"
|
||||
#include <test/constant_flow.h>
|
||||
|
||||
#if defined(MBEDTLS_TEST_HOOKS)
|
||||
static const char base64_digits[] =
|
||||
"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";
|
||||
#endif /* MBEDTLS_TEST_HOOKS */
|
||||
|
||||
/* END_HEADER */
|
||||
|
||||
/* BEGIN_DEPENDENCIES
|
||||
* depends_on:MBEDTLS_BASE64_C
|
||||
* END_DEPENDENCIES
|
||||
*/
|
||||
|
||||
/* BEGIN_CASE depends_on:MBEDTLS_TEST_HOOKS */
|
||||
void enc_chars()
|
||||
{
|
||||
for (unsigned value = 0; value < 64; value++) {
|
||||
mbedtls_test_set_step(value);
|
||||
TEST_CF_SECRET(&value, sizeof(value));
|
||||
unsigned char digit = mbedtls_ct_base64_enc_char(value);
|
||||
TEST_CF_PUBLIC(&value, sizeof(value));
|
||||
TEST_CF_PUBLIC(&digit, sizeof(digit));
|
||||
TEST_EQUAL(digit, base64_digits[value]);
|
||||
}
|
||||
}
|
||||
/* END_CASE */
|
||||
|
||||
/* BEGIN_CASE depends_on:MBEDTLS_TEST_HOOKS */
|
||||
void dec_chars()
|
||||
{
|
||||
char *p;
|
||||
signed char expected;
|
||||
|
||||
for (unsigned c = 0; c <= 0xff; c++) {
|
||||
mbedtls_test_set_step(c);
|
||||
/* base64_digits is 0-terminated. sizeof()-1 excludes the trailing 0. */
|
||||
p = memchr(base64_digits, c, sizeof(base64_digits) - 1);
|
||||
if (p == NULL) {
|
||||
expected = -1;
|
||||
} else {
|
||||
expected = p - base64_digits;
|
||||
}
|
||||
TEST_CF_SECRET(&c, sizeof(c));
|
||||
signed char actual = mbedtls_ct_base64_dec_value(c);
|
||||
TEST_CF_PUBLIC(&c, sizeof(c));
|
||||
TEST_CF_PUBLIC(&actual, sizeof(actual));
|
||||
TEST_EQUAL(actual, expected);
|
||||
}
|
||||
}
|
||||
/* END_CASE */
|
||||
|
||||
/* BEGIN_CASE */
|
||||
void mbedtls_base64_encode(char *src_string, char *dst_string,
|
||||
int dst_buf_size, int result)
|
||||
{
|
||||
unsigned char src_str[1000];
|
||||
unsigned char dst_str[1000];
|
||||
size_t len, src_len;
|
||||
|
||||
memset(src_str, 0x00, 1000);
|
||||
memset(dst_str, 0x00, 1000);
|
||||
|
||||
strncpy((char *) src_str, src_string, sizeof(src_str) - 1);
|
||||
src_len = strlen((char *) src_str);
|
||||
|
||||
TEST_CF_SECRET(src_str, sizeof(src_str));
|
||||
TEST_ASSERT(mbedtls_base64_encode(dst_str, dst_buf_size, &len, src_str, src_len) == result);
|
||||
TEST_CF_PUBLIC(src_str, sizeof(src_str));
|
||||
|
||||
/* dest_str will have had tainted data copied to it, prevent the TEST_ASSERT below from triggering
|
||||
CF failures by unmarking it. */
|
||||
TEST_CF_PUBLIC(dst_str, len);
|
||||
|
||||
if (result == 0) {
|
||||
TEST_ASSERT(strcmp((char *) dst_str, dst_string) == 0);
|
||||
}
|
||||
}
|
||||
/* END_CASE */
|
||||
|
||||
/* BEGIN_CASE */
|
||||
void mbedtls_base64_decode(char *src_string, char *dst_string, int result)
|
||||
{
|
||||
unsigned char *src = NULL;
|
||||
size_t src_len = strlen(src_string);
|
||||
unsigned char *dst = NULL;
|
||||
size_t correct_dst_len = strlen(dst_string);
|
||||
size_t dst_size = correct_dst_len;
|
||||
size_t len;
|
||||
|
||||
/* Allocate exactly the size of the input, to ensure there's no buffer
|
||||
* overread in builds with ASan. (src_string has at least one extra null
|
||||
* character at the end.) */
|
||||
TEST_CALLOC(src, src_len);
|
||||
if (src_len != 0) {
|
||||
memcpy(src, src_string, src_len);
|
||||
}
|
||||
|
||||
/* Allocate exactly the size of the input, to ensure there's no buffer
|
||||
* overflow in builds with ASan. */
|
||||
TEST_CALLOC(dst, dst_size);
|
||||
|
||||
/* Test normal operation */
|
||||
TEST_EQUAL(mbedtls_base64_decode(dst, dst_size, &len,
|
||||
src, src_len),
|
||||
result);
|
||||
if (result == 0) {
|
||||
TEST_MEMORY_COMPARE(dst_string, correct_dst_len, dst, len);
|
||||
}
|
||||
|
||||
/* Test an output buffer that's one byte too small */
|
||||
if (result == 0 && dst_size != 0) {
|
||||
mbedtls_free(dst);
|
||||
dst = NULL;
|
||||
TEST_CALLOC(dst, dst_size - 1);
|
||||
TEST_EQUAL(mbedtls_base64_decode(dst, dst_size - 1, &len,
|
||||
src, src_len),
|
||||
MBEDTLS_ERR_BASE64_BUFFER_TOO_SMALL);
|
||||
TEST_EQUAL(correct_dst_len, len);
|
||||
}
|
||||
|
||||
/* Test an empty output buffer. `mbedtls_base64_decode()` must return
|
||||
* `BUFFER_TOO_SMALL` but report the correct output length.
|
||||
* Skip this when dst_size==0 since that would be a valid call to
|
||||
* `mbedtls_base64_decode()` which should return 0.
|
||||
*/
|
||||
if (result == 0 && dst_size != 0) {
|
||||
TEST_EQUAL(mbedtls_base64_decode(NULL, 0, &len,
|
||||
src, src_len),
|
||||
MBEDTLS_ERR_BASE64_BUFFER_TOO_SMALL);
|
||||
TEST_EQUAL(correct_dst_len, len);
|
||||
}
|
||||
|
||||
/* Test dst=NULL with dlen!=0 (explicitly documented as supported) */
|
||||
if (result == 0 && dst_size != 0) {
|
||||
TEST_EQUAL(mbedtls_base64_decode(NULL, 42, &len,
|
||||
src, src_len),
|
||||
MBEDTLS_ERR_BASE64_BUFFER_TOO_SMALL);
|
||||
TEST_EQUAL(correct_dst_len, len);
|
||||
}
|
||||
|
||||
exit:
|
||||
mbedtls_free(src);
|
||||
mbedtls_free(dst);
|
||||
}
|
||||
/* END_CASE */
|
||||
|
||||
/* BEGIN_CASE */
|
||||
void base64_encode_hex(data_t *src, char *dst, int dst_buf_size,
|
||||
int result)
|
||||
{
|
||||
unsigned char *res = NULL;
|
||||
size_t len;
|
||||
|
||||
res = mbedtls_test_zero_alloc(dst_buf_size);
|
||||
|
||||
TEST_CF_SECRET(src->x, src->len);
|
||||
TEST_ASSERT(mbedtls_base64_encode(res, dst_buf_size, &len, src->x, src->len) == result);
|
||||
TEST_CF_PUBLIC(src->x, src->len);
|
||||
|
||||
/* res will have had tainted data copied to it, prevent the TEST_ASSERT below from triggering
|
||||
CF failures by unmarking it. */
|
||||
TEST_CF_PUBLIC(res, len);
|
||||
|
||||
if (result == 0) {
|
||||
TEST_ASSERT(len == strlen(dst));
|
||||
TEST_ASSERT(memcmp(dst, res, len) == 0);
|
||||
}
|
||||
|
||||
exit:
|
||||
mbedtls_free(res);
|
||||
}
|
||||
/* END_CASE */
|
||||
|
||||
/* BEGIN_CASE */
|
||||
void base64_decode_hex(char *src, data_t *dst, int dst_buf_size,
|
||||
int result)
|
||||
{
|
||||
unsigned char *res = NULL;
|
||||
size_t len;
|
||||
|
||||
res = mbedtls_test_zero_alloc(dst_buf_size);
|
||||
|
||||
TEST_ASSERT(mbedtls_base64_decode(res, dst_buf_size, &len, (unsigned char *) src,
|
||||
strlen(src)) == result);
|
||||
if (result == 0) {
|
||||
TEST_ASSERT(len == dst->len);
|
||||
TEST_ASSERT(memcmp(dst->x, res, len) == 0);
|
||||
}
|
||||
|
||||
exit:
|
||||
mbedtls_free(res);
|
||||
}
|
||||
/* END_CASE */
|
||||
|
||||
/* BEGIN_CASE */
|
||||
void base64_decode_hex_src(data_t *src, char *dst_ref, int result)
|
||||
{
|
||||
unsigned char dst[1000] = { 0 };
|
||||
size_t len;
|
||||
|
||||
TEST_ASSERT(mbedtls_base64_decode(dst, sizeof(dst), &len, src->x, src->len) == result);
|
||||
if (result == 0) {
|
||||
TEST_ASSERT(len == strlen(dst_ref));
|
||||
TEST_ASSERT(memcmp(dst, dst_ref, len) == 0);
|
||||
}
|
||||
|
||||
exit:
|
||||
;;
|
||||
}
|
||||
/* END_CASE */
|
||||
|
||||
/* BEGIN_CASE depends_on:MBEDTLS_SELF_TEST */
|
||||
void base64_selftest()
|
||||
{
|
||||
TEST_ASSERT(mbedtls_base64_self_test(1) == 0);
|
||||
}
|
||||
/* END_CASE */
|
||||
1706
vendor/mbedtls/tests/suites/test_suite_bignum.function
vendored
Normal file
1706
vendor/mbedtls/tests/suites/test_suite_bignum.function
vendored
Normal file
File diff suppressed because it is too large
Load Diff
5361
vendor/mbedtls/tests/suites/test_suite_bignum.generated.data
vendored
Normal file
5361
vendor/mbedtls/tests/suites/test_suite_bignum.generated.data
vendored
Normal file
File diff suppressed because it is too large
Load Diff
2014
vendor/mbedtls/tests/suites/test_suite_bignum.misc.data
vendored
Normal file
2014
vendor/mbedtls/tests/suites/test_suite_bignum.misc.data
vendored
Normal file
File diff suppressed because it is too large
Load Diff
1664
vendor/mbedtls/tests/suites/test_suite_bignum_core.function
vendored
Normal file
1664
vendor/mbedtls/tests/suites/test_suite_bignum_core.function
vendored
Normal file
File diff suppressed because it is too large
Load Diff
34178
vendor/mbedtls/tests/suites/test_suite_bignum_core.generated.data
vendored
Normal file
34178
vendor/mbedtls/tests/suites/test_suite_bignum_core.generated.data
vendored
Normal file
File diff suppressed because it is too large
Load Diff
551
vendor/mbedtls/tests/suites/test_suite_bignum_core.misc.data
vendored
Normal file
551
vendor/mbedtls/tests/suites/test_suite_bignum_core.misc.data
vendored
Normal file
@@ -0,0 +1,551 @@
|
||||
Test mbedtls_mpi_core_io functions with null pointers
|
||||
mpi_core_io_null
|
||||
|
||||
Test mbedtls_mpi_core_io_be #1 (Buffer and limbs just fit, input limb-aligned)
|
||||
mpi_core_io_be:"0941379d00fed1491fe15df284dfde4a142f68aa8d412023195cee66883e6290ffe703f4ea5963bf212713cee46b107c09182b5edcd955adac418bf4918e2889af48e1099d513830cec85c26ac1e158b52620e33ba8692f893efbb2f958b4424":96:24:0:0
|
||||
|
||||
Test mbedtls_mpi_core_io_be #2 (Buffer and limbs just fit, input unaligned)
|
||||
mpi_core_io_be:"0941379d00fed1491fe15df284dfde4a142f68aa8d412023195cee66883e6290ffe703f4ea5963bf212713cee46b107c09182b5edcd955adac418bf4918e2889af48e1099d513830cec85c26ac1e158b52620e33ba8692f893efbb2f958b":94:24:0:0
|
||||
|
||||
Test mbedtls_mpi_core_io_be #3 (Buffer just fits, extra limbs, input limb-aligned)
|
||||
mpi_core_io_be:"0941379d00fed1491fe15df284dfde4a142f68aa8d412023195cee66883e6290ffe703f4ea5963bf212713cee46b107c09182b5edcd955adac418bf4918e2889af48e1099d513830cec85c26ac1e158b52620e33ba8692f893efbb2f958b4424":96:28:0:0
|
||||
|
||||
Test mbedtls_mpi_core_io_be #4 (Buffer just fits, extra limbs, input unaligned)
|
||||
mpi_core_io_be:"0941379d00fed1491fe15df284dfde4a142f68aa8d412023195cee66883e6290ffe703f4ea5963bf212713cee46b107c09182b5edcd955adac418bf4918e2889af48e1099d513830cec85c26ac1e158b52620e33ba8692f893efbb2f958b":94:28:0:0
|
||||
|
||||
Test mbedtls_mpi_core_io_be #5 (Extra limbs, buffer aligned to extra limbs, input limb-aligned)
|
||||
mpi_core_io_be:"0941379d00fed1491fe15df284dfde4a142f68aa8d412023195cee66883e6290ffe703f4ea5963bf212713cee46b107c09182b5edcd955adac418bf4918e2889af48e1099d513830cec85c26ac1e158b52620e33ba8692f893efbb2f958b4424":112:28:0:0
|
||||
|
||||
Test mbedtls_mpi_core_io_be #6 (Extra limbs, buffer aligned to extra limbs, input unaligned)
|
||||
mpi_core_io_be:"0941379d00fed1491fe15df284dfde4a142f68aa8d412023195cee66883e6290ffe703f4ea5963bf212713cee46b107c09182b5edcd955adac418bf4918e2889af48e1099d513830cec85c26ac1e158b52620e33ba8692f893efbb2f958b":112:28:0:0
|
||||
|
||||
Test mbedtls_mpi_core_io_be #7 (Buffer and limbs just fit, input limb-aligned with leading zeroes)
|
||||
mpi_core_io_be:"00000000000000001fe15df284dfde4a142f68aa8d412023195cee66883e6290ffe703f4ea5963bf212713cee46b107c09182b5edcd955adac418bf4918e2889af48e1099d513830cec85c26ac1e158b52620e33ba8692f893efbb2f958b4424":88:24:0:0
|
||||
|
||||
Test mbedtls_mpi_core_io_be #8 (Buffer and limbs just fit, input unaligned with leading zeroes)
|
||||
mpi_core_io_be:"00000000000000001fe15df284dfde4a142f68aa8d412023195cee66883e6290ffe703f4ea5963bf212713cee46b107c09182b5edcd955adac418bf4918e2889af48e1099d513830cec85c26ac1e158b52620e33ba8692f893efbb2f958b":86:24:0:0
|
||||
|
||||
Test mbedtls_mpi_core_io_be #9 (Buffer just fits, extra limbs, input limb-aligned with leading zeroes)
|
||||
mpi_core_io_be:"00000000000000001fe15df284dfde4a142f68aa8d412023195cee66883e6290ffe703f4ea5963bf212713cee46b107c09182b5edcd955adac418bf4918e2889af48e1099d513830cec85c26ac1e158b52620e33ba8692f893efbb2f958b4424":88:28:0:0
|
||||
|
||||
Test mbedtls_mpi_core_io_be #10 (Buffer just fits, extra limbs, input unaligned with leading zeroes)
|
||||
mpi_core_io_be:"00000000000000001fe15df284dfde4a142f68aa8d412023195cee66883e6290ffe703f4ea5963bf212713cee46b107c09182b5edcd955adac418bf4918e2889af48e1099d513830cec85c26ac1e158b52620e33ba8692f893efbb2f958b":86:28:0:0
|
||||
|
||||
Test mbedtls_mpi_core_io_be #11 (Zero)
|
||||
mpi_core_io_be:"00":1:1:0:0
|
||||
|
||||
Test mbedtls_mpi_core_io_be #12 (Zero, empty output)
|
||||
mpi_core_io_be:"00":0:1:0:0
|
||||
|
||||
Test mbedtls_mpi_core_io_be #13 (Zero, empty input)
|
||||
mpi_core_io_be:"":1:1:0:0
|
||||
|
||||
Test mbedtls_mpi_core_io_be #14 (One)
|
||||
mpi_core_io_be:"01":1:1:0:0
|
||||
|
||||
Test mbedtls_mpi_core_io_be #15 (One limb, 32 bit)
|
||||
depends_on:MBEDTLS_HAVE_INT32
|
||||
mpi_core_io_be:"ff000000":4:1:0:0
|
||||
|
||||
Test mbedtls_mpi_core_io_be #16 (One limb, 64 bit)
|
||||
depends_on:MBEDTLS_HAVE_INT64
|
||||
mpi_core_io_be:"ff00000000000000":8:2:0:0
|
||||
|
||||
Test mbedtls_mpi_core_io_be #17 (not enough limbs, input limb-aligned)
|
||||
mpi_core_io_be:"0941379d00fed1491fe15df284dfde4a142f68aa8d412023195cee66883e6290ffe703f4ea5963bf212713cee46b107c09182b5edcd955adac418bf4918e2889af48e1099d513830cec85c26ac1e158b52620e33ba8692f893efbb2f958b4424":96:22:MBEDTLS_ERR_MPI_BUFFER_TOO_SMALL:0
|
||||
|
||||
Test mbedtls_mpi_core_io_be #18 (not enough limbs, input unaligned)
|
||||
mpi_core_io_be:"0941379d00fed1491fe15df284dfde4a142f68aa8d412023195cee66883e6290ffe703f4ea5963bf212713cee46b107c09182b5edcd955adac418bf4918e2889af48e1099d513830cec85c26ac1e158b52620e33ba8692f893efbb2f958b":94:22:MBEDTLS_ERR_MPI_BUFFER_TOO_SMALL:0
|
||||
|
||||
Test mbedtls_mpi_core_io_be #19 (buffer too small, input limb-aligned)
|
||||
mpi_core_io_be:"0941379d00fed1491fe15df284dfde4a142f68aa8d412023195cee66883e6290ffe703f4ea5963bf212713cee46b107c09182b5edcd955adac418bf4918e2889af48e1099d513830cec85c26ac1e158b52620e33ba8692f893efbb2f958b4424":95:24:0:MBEDTLS_ERR_MPI_BUFFER_TOO_SMALL
|
||||
|
||||
Test mbedtls_mpi_core_io_be #20 (buffer too small, input unaligned)
|
||||
mpi_core_io_be:"0941379d00fed1491fe15df284dfde4a142f68aa8d412023195cee66883e6290ffe703f4ea5963bf212713cee46b107c09182b5edcd955adac418bf4918e2889af48e1099d513830cec85c26ac1e158b52620e33ba8692f893efbb2f958b":93:24:0:MBEDTLS_ERR_MPI_BUFFER_TOO_SMALL
|
||||
|
||||
Test mbedtls_mpi_core_io_be #21 (Buffer and limbs fit, input unaligned, odd number of limbs)
|
||||
mpi_core_io_be:"00de4a142f68aa8d412023195cee66883e6290ffe703f4ea5963bf212713cee46b107c09182b5edcd955adac418bf4918e2889af48e1099d513830cec85c26ac1e158b52620e33ba8692f893efbb2f958b4424":82:21:0:0
|
||||
|
||||
Test mbedtls_mpi_core_io_le #1 (Buffer and limbs just fit, input limb-aligned)
|
||||
mpi_core_io_le:"0941379d00fed1491fe15df284dfde4a142f68aa8d412023195cee66883e6290ffe703f4ea5963bf212713cee46b107c09182b5edcd955adac418bf4918e2889af48e1099d513830cec85c26ac1e158b52620e33ba8692f893efbb2f958b4424":96:24:0:0
|
||||
|
||||
Test mbedtls_mpi_core_io_le #2 (Buffer and limbs just fit, input unaligned)
|
||||
mpi_core_io_le:"0941379d00fed1491fe15df284dfde4a142f68aa8d412023195cee66883e6290ffe703f4ea5963bf212713cee46b107c09182b5edcd955adac418bf4918e2889af48e1099d513830cec85c26ac1e158b52620e33ba8692f893efbb2f958b":94:24:0:0
|
||||
|
||||
Test mbedtls_mpi_core_io_le #3 (Buffer just fits, extra limbs, input limb-aligned)
|
||||
mpi_core_io_le:"0941379d00fed1491fe15df284dfde4a142f68aa8d412023195cee66883e6290ffe703f4ea5963bf212713cee46b107c09182b5edcd955adac418bf4918e2889af48e1099d513830cec85c26ac1e158b52620e33ba8692f893efbb2f958b4424":96:28:0:0
|
||||
|
||||
Test mbedtls_mpi_core_io_le #4 (Buffer just fits, extra limbs, input unaligned)
|
||||
mpi_core_io_le:"0941379d00fed1491fe15df284dfde4a142f68aa8d412023195cee66883e6290ffe703f4ea5963bf212713cee46b107c09182b5edcd955adac418bf4918e2889af48e1099d513830cec85c26ac1e158b52620e33ba8692f893efbb2f958b":94:28:0:0
|
||||
|
||||
Test mbedtls_mpi_core_io_le #5 (Extra limbs, buffer aligned to extra limbs, input limb-aligned)
|
||||
mpi_core_io_le:"0941379d00fed1491fe15df284dfde4a142f68aa8d412023195cee66883e6290ffe703f4ea5963bf212713cee46b107c09182b5edcd955adac418bf4918e2889af48e1099d513830cec85c26ac1e158b52620e33ba8692f893efbb2f958b4424":112:28:0:0
|
||||
|
||||
Test mbedtls_mpi_core_io_le #6 (Extra limbs, buffer aligned to extra limbs, input unaligned)
|
||||
mpi_core_io_le:"0941379d00fed1491fe15df284dfde4a142f68aa8d412023195cee66883e6290ffe703f4ea5963bf212713cee46b107c09182b5edcd955adac418bf4918e2889af48e1099d513830cec85c26ac1e158b52620e33ba8692f893efbb2f958b":112:28:0:0
|
||||
|
||||
Test mbedtls_mpi_core_io_le #7 (Buffer and limbs just fit, input limb-aligned with leading zeroes)
|
||||
mpi_core_io_le:"1fe15df284dfde4a142f68aa8d412023195cee66883e6290ffe703f4ea5963bf212713cee46b107c09182b5edcd955adac418bf4918e2889af48e1099d513830cec85c26ac1e158b52620e33ba8692f893efbb2f958b44240000000000000000":88:24:0:0
|
||||
|
||||
Test mbedtls_mpi_core_io_le #8 (Buffer and limbs just fit, input unaligned with leading zeroes)
|
||||
mpi_core_io_le:"1fe15df284dfde4a142f68aa8d412023195cee66883e6290ffe703f4ea5963bf212713cee46b107c09182b5edcd955adac418bf4918e2889af48e1099d513830cec85c26ac1e158b52620e33ba8692f893efbb2f958b0000000000000000":86:24:0:0
|
||||
|
||||
Test mbedtls_mpi_core_io_le #9 (Buffer just fits, extra limbs, input limb-aligned with leading zeroes)
|
||||
mpi_core_io_le:"1fe15df284dfde4a142f68aa8d412023195cee66883e6290ffe703f4ea5963bf212713cee46b107c09182b5edcd955adac418bf4918e2889af48e1099d513830cec85c26ac1e158b52620e33ba8692f893efbb2f958b44240000000000000000":88:28:0:0
|
||||
|
||||
Test mbedtls_mpi_core_io_le #10 (Buffer just fits, extra limbs, input unaligned with leading zeroes)
|
||||
mpi_core_io_le:"1fe15df284dfde4a142f68aa8d412023195cee66883e6290ffe703f4ea5963bf212713cee46b107c09182b5edcd955adac418bf4918e2889af48e1099d513830cec85c26ac1e158b52620e33ba8692f893efbb2f958b0000000000000000":86:28:0:0
|
||||
|
||||
Test mbedtls_mpi_core_io_le #11 (Zero)
|
||||
mpi_core_io_le:"00":1:1:0:0
|
||||
|
||||
Test mbedtls_mpi_core_io_le #12 (Zero, empty output)
|
||||
mpi_core_io_le:"00":0:1:0:0
|
||||
|
||||
Test mbedtls_mpi_core_io_le #13 (Zero, empty input)
|
||||
mpi_core_io_le:"":1:1:0:0
|
||||
|
||||
Test mbedtls_mpi_core_io_le #14 (One)
|
||||
mpi_core_io_le:"01":1:1:0:0
|
||||
|
||||
Test mbedtls_mpi_core_io_le #15 (One limb)
|
||||
depends_on:MBEDTLS_HAVE_INT32
|
||||
mpi_core_io_le:"000000ff":4:1:0:0
|
||||
|
||||
Test mbedtls_mpi_core_io_le #16 (One limb)
|
||||
depends_on:MBEDTLS_HAVE_INT64
|
||||
mpi_core_io_le:"00000000000000ff":8:2:0:0
|
||||
|
||||
Test mbedtls_mpi_core_io_le #17 (not enough limbs, input limb-aligned)
|
||||
mpi_core_io_le:"0941379d00fed1491fe15df284dfde4a142f68aa8d412023195cee66883e6290ffe703f4ea5963bf212713cee46b107c09182b5edcd955adac418bf4918e2889af48e1099d513830cec85c26ac1e158b52620e33ba8692f893efbb2f958b4424":96:22:MBEDTLS_ERR_MPI_BUFFER_TOO_SMALL:0
|
||||
|
||||
Test mbedtls_mpi_core_io_le #18 (not enough limbs, input unaligned)
|
||||
mpi_core_io_le:"0941379d00fed1491fe15df284dfde4a142f68aa8d412023195cee66883e6290ffe703f4ea5963bf212713cee46b107c09182b5edcd955adac418bf4918e2889af48e1099d513830cec85c26ac1e158b52620e33ba8692f893efbb2f958b":94:22:MBEDTLS_ERR_MPI_BUFFER_TOO_SMALL:0
|
||||
|
||||
Test mbedtls_mpi_core_io_le #19 (buffer too small, input limb-aligned)
|
||||
mpi_core_io_le:"0941379d00fed1491fe15df284dfde4a142f68aa8d412023195cee66883e6290ffe703f4ea5963bf212713cee46b107c09182b5edcd955adac418bf4918e2889af48e1099d513830cec85c26ac1e158b52620e33ba8692f893efbb2f958b4424":95:24:0:MBEDTLS_ERR_MPI_BUFFER_TOO_SMALL
|
||||
|
||||
Test mbedtls_mpi_core_io_le #20 (buffer too small, input unaligned)
|
||||
mpi_core_io_le:"0941379d00fed1491fe15df284dfde4a142f68aa8d412023195cee66883e6290ffe703f4ea5963bf212713cee46b107c09182b5edcd955adac418bf4918e2889af48e1099d513830cec85c26ac1e158b52620e33ba8692f893efbb2f958b":93:24:0:MBEDTLS_ERR_MPI_BUFFER_TOO_SMALL
|
||||
|
||||
Test mbedtls_mpi_core_io_le #21 (Buffer and limbs fit, input unaligned, odd number of limbs)
|
||||
mpi_core_io_le:"de4a142f68aa8d412023195cee66883e6290ffe703f4ea5963bf212713cee46b107c09182b5edcd955adac418bf4918e2889af48e1099d513830cec85c26ac1e158b52620e33ba8692f893efbb2f958b442400":82:21:0:0
|
||||
|
||||
Test mbedtls_mpi_core_bitlen 764-bit
|
||||
mpi_core_bitlen:"941379d00fed1491fe15df284dfde4a142f68aa8d412023195cee66883e6290ffe703f4ea5963bf212713cee46b107c09182b5edcd955adac418bf4918e2889af48e1099d513830cec85c26ac1e158b52620e33ba8692f893efbb2f958b4424":764
|
||||
|
||||
Test mbedtls_mpi_core_bitlen 0x18
|
||||
mpi_core_bitlen:"18":5
|
||||
|
||||
Test mbedtls_mpi_core_bitlen 0x18 with leading 0 limb(s)
|
||||
mpi_core_bitlen:"00000000000000018":5
|
||||
|
||||
Test mbedtls_mpi_core_bitlen 0x18 << 64
|
||||
mpi_core_bitlen:"180000000000000000":69
|
||||
|
||||
Test mbedtls_mpi_core_bitlen 0x01
|
||||
mpi_core_bitlen:"1":1
|
||||
|
||||
Test mbedtls_mpi_core_bitlen 0x0f
|
||||
mpi_core_bitlen:"f":4
|
||||
|
||||
Test mbedtls_mpi_core_bitlen 0x10
|
||||
mpi_core_bitlen:"10":5
|
||||
|
||||
Test mbedtls_mpi_core_bitlen 0x0a
|
||||
mpi_core_bitlen:"a":4
|
||||
|
||||
Test mbedtls_mpi_core_bitlen: 0 (1 limb)
|
||||
mpi_core_bitlen:"0":0
|
||||
|
||||
mbedtls_mpi_core_lt_ct: x=y (1 limb)
|
||||
mpi_core_lt_ct:"2B5":"2B5":0
|
||||
|
||||
mbedtls_mpi_core_lt_ct: x>y (1 limb)
|
||||
mpi_core_lt_ct:"2B5":"2B4":0
|
||||
|
||||
mbedtls_mpi_core_lt_ct: x<y (1 limb)
|
||||
mpi_core_lt_ct:"2B5":"2B6":1
|
||||
|
||||
mbedtls_mpi_core_lt_ct: x>y (63 bit x, y first byte greater)
|
||||
mpi_core_lt_ct:"7FFFFFFFFFFFFFFF":"00000000000000FF":0
|
||||
|
||||
mbedtls_mpi_core_lt_ct: x<y (63 bit y, x first byte greater)
|
||||
mpi_core_lt_ct:"00000000000000FF":"7FFFFFFFFFFFFFFF":1
|
||||
|
||||
mbedtls_mpi_core_lt_ct: x>y (64 bit x, y=x-1)
|
||||
mpi_core_lt_ct:"8000000000000000":"7FFFFFFFFFFFFFFF":0
|
||||
|
||||
mbedtls_mpi_core_lt_ct: x<y (64 bit y, x=y-1)
|
||||
mpi_core_lt_ct:"7FFFFFFFFFFFFFFF":"8000000000000000":1
|
||||
|
||||
mbedtls_mpi_core_lt_ct: x>y (64 bit x, y=1)
|
||||
mpi_core_lt_ct:"8000000000000000":"0000000000000001":0
|
||||
|
||||
mbedtls_mpi_core_lt_ct: x<y (64 bit y, x=1)
|
||||
mpi_core_lt_ct:"0000000000000001":"8000000000000000":1
|
||||
|
||||
mbedtls_mpi_core_lt_ct: x>y (64 bit x, y=0)
|
||||
mpi_core_lt_ct:"8000000000000000":"0000000000000000":0
|
||||
|
||||
mbedtls_mpi_core_lt_ct: x<y (64 bit y, x=0)
|
||||
mpi_core_lt_ct:"0000000000000000":"8000000000000000":1
|
||||
|
||||
mbedtls_mpi_core_lt_ct: x>y (64 bit x, first bytes equal)
|
||||
mpi_core_lt_ct:"FFFFFFFFFFFFFFFF":"00000000000000FF":0
|
||||
|
||||
mbedtls_mpi_core_lt_ct: x<y (64 bit y, first bytes equal)
|
||||
mpi_core_lt_ct:"00000000000000FF":"FFFFFFFFFFFFFFFF":1
|
||||
|
||||
mbedtls_mpi_core_lt_ct: x>y (31 bit x, y first byte greater)
|
||||
mpi_core_lt_ct:"7FFFFFFF":"000000FF":0
|
||||
|
||||
mbedtls_mpi_core_lt_ct: x<y (31 bit y, x first byte greater)
|
||||
mpi_core_lt_ct:"000000FF":"7FFFFFFF":1
|
||||
|
||||
mbedtls_mpi_core_lt_ct: x>y (32 bit x, y=x-1)
|
||||
mpi_core_lt_ct:"80000000":"7FFFFFFF":0
|
||||
|
||||
mbedtls_mpi_core_lt_ct: x<y (32 bit y, x=y-1)
|
||||
mpi_core_lt_ct:"7FFFFFFF":"80000000":1
|
||||
|
||||
mbedtls_mpi_core_lt_ct: x>y (32 bit x, y=1)
|
||||
mpi_core_lt_ct:"80000000":"00000001":0
|
||||
|
||||
mbedtls_mpi_core_lt_ct: x<y (32 bit y, x=1)
|
||||
mpi_core_lt_ct:"00000001":"80000000":1
|
||||
|
||||
mbedtls_mpi_core_lt_ct: x>y (32 bit x, y=0)
|
||||
mpi_core_lt_ct:"80000000":"00000000":0
|
||||
|
||||
mbedtls_mpi_core_lt_ct: x<y (32 bit y, x=0)
|
||||
mpi_core_lt_ct:"00000000":"80000000":1
|
||||
|
||||
mbedtls_mpi_core_lt_ct: x>y (32 bit x, first bytes equal)
|
||||
mpi_core_lt_ct:"FFFFFFFF":"000000FF":0
|
||||
|
||||
mbedtls_mpi_core_lt_ct: x<y (32 bit y, first bytes equal)
|
||||
mpi_core_lt_ct:"000000FF":"FFFFFFFF":1
|
||||
|
||||
mbedtls_mpi_core_lt_ct: x<y, zero vs non-zero MS limb
|
||||
mpi_core_lt_ct:"0FFFFFFFFFFFFFFFF":"1FFFFFFFFFFFFFFFF":1
|
||||
|
||||
mbedtls_mpi_core_lt_ct: x>y, equal MS limbs
|
||||
mpi_core_lt_ct:"EEFFFFFFFFFFFFFFFF":"EEFFFFFFFFFFFFFFF1":0
|
||||
|
||||
mbedtls_mpi_core_lt_ct: x=y (multi-limb)
|
||||
mpi_core_lt_ct:"EEFFFFFFFFFFFFFFFF":"EEFFFFFFFFFFFFFFFF":0
|
||||
|
||||
mbedtls_mpi_core_lt_ct: x<y (alternating limbs)
|
||||
mpi_core_lt_ct:"11FFFFFFFFFFFFFFFF":"FF1111111111111111":1
|
||||
|
||||
mbedtls_mpi_core_lt_ct: x>y (alternating limbs)
|
||||
mpi_core_lt_ct:"FF1111111111111111":"11FFFFFFFFFFFFFFFF":0
|
||||
|
||||
Test mbedtls_mpi_core_uint_le_mpi: 0 (1 limb)
|
||||
mpi_core_uint_le_mpi:"00"
|
||||
|
||||
Test mbedtls_mpi_core_uint_le_mpi: 0 (>=2 limbs)
|
||||
mpi_core_uint_le_mpi:"000000000000000000"
|
||||
|
||||
Test mbedtls_mpi_core_uint_le_mpi: 1 (1 limb)
|
||||
mpi_core_uint_le_mpi:"01"
|
||||
|
||||
Test mbedtls_mpi_core_uint_le_mpi: 1 (>=2 limbs)
|
||||
mpi_core_uint_le_mpi:"000000000000000001"
|
||||
|
||||
Test mbedtls_mpi_core_uint_le_mpi: 42 (1 limb)
|
||||
mpi_core_uint_le_mpi:"2a"
|
||||
|
||||
Test mbedtls_mpi_core_uint_le_mpi: 42 (>=2 limbs)
|
||||
mpi_core_uint_le_mpi:"000000000000000042"
|
||||
|
||||
Test mbedtls_mpi_core_uint_le_mpi: 2^31-1
|
||||
mpi_core_uint_le_mpi:"7fffffff"
|
||||
|
||||
Test mbedtls_mpi_core_uint_le_mpi: 2^31-1 with leading zero limb
|
||||
mpi_core_uint_le_mpi:"00000000007fffffff"
|
||||
|
||||
Test mbedtls_mpi_core_uint_le_mpi: 2^32-1
|
||||
mpi_core_uint_le_mpi:"ffffffff"
|
||||
|
||||
Test mbedtls_mpi_core_uint_le_mpi: 2^32-1 with leading zero limb
|
||||
mpi_core_uint_le_mpi:"0000000000ffffffff"
|
||||
|
||||
Test mbedtls_mpi_core_uint_le_mpi: 2^32
|
||||
mpi_core_uint_le_mpi:"10000000"
|
||||
|
||||
Test mbedtls_mpi_core_uint_le_mpi: 2^32 with leading zero limb
|
||||
mpi_core_uint_le_mpi:"000000000010000000"
|
||||
|
||||
Test mbedtls_mpi_core_uint_le_mpi: 2^32+1
|
||||
mpi_core_uint_le_mpi:"10000001"
|
||||
|
||||
Test mbedtls_mpi_core_uint_le_mpi: 2^32+1 with leading zero limb
|
||||
mpi_core_uint_le_mpi:"000000000010000001"
|
||||
|
||||
Test mbedtls_mpi_core_uint_le_mpi: 2^63-1
|
||||
mpi_core_uint_le_mpi:"7fffffffffffffff"
|
||||
|
||||
Test mbedtls_mpi_core_uint_le_mpi: 2^63-1 with leading zero limb
|
||||
mpi_core_uint_le_mpi:"007fffffffffffffff"
|
||||
|
||||
Test mbedtls_mpi_core_uint_le_mpi: 2^64-1
|
||||
mpi_core_uint_le_mpi:"ffffffffffffffff"
|
||||
|
||||
Test mbedtls_mpi_core_uint_le_mpi: 2^64-1 with leading zero limb
|
||||
mpi_core_uint_le_mpi:"00ffffffffffffffff"
|
||||
|
||||
Test mbedtls_mpi_core_uint_le_mpi: 2^64
|
||||
mpi_core_uint_le_mpi:"010000000000000000"
|
||||
|
||||
Test mbedtls_mpi_core_uint_le_mpi: 2^64+1
|
||||
mpi_core_uint_le_mpi:"010000000000000001"
|
||||
|
||||
Test mbedtls_mpi_core_uint_le_mpi: 2^64+2
|
||||
mpi_core_uint_le_mpi:"010000000000000002"
|
||||
|
||||
mbedtls_mpi_core_cond_assign: 1 limb
|
||||
mpi_core_cond_assign:"FFFFFFFF":"11111111":4
|
||||
|
||||
mbedtls_mpi_core_cond_assign: more limbs #1
|
||||
mpi_core_cond_assign:"00000000FFFFFFFF55555555AAAAAAAA":"0123456789ABCDEF0123456789ABCDEF":16
|
||||
|
||||
mbedtls_mpi_core_cond_assign: more limbs #2
|
||||
mpi_core_cond_assign:"11111111EEEEEEEE77777777CCCCCCCC":"FEDCBA9876543210FEDCBA9876543210":16
|
||||
|
||||
mbedtls_mpi_core_cond_assign: more limbs #3
|
||||
mpi_core_cond_assign:"562D2B7E83BDC6FF783CEC0D6F46EAE7":"4C314E3B5CEB009C25F3300D5ECF670A":16
|
||||
|
||||
mbedtls_mpi_core_cond_assign: copy 256 bytes of limbs
|
||||
mpi_core_cond_assign:"00000000111111112222222233333333444444445555555566666666777777778888888899999999AAAAAAAABBBBBBBBCCCCCCCCDDDDDDDDEEEEEEEEFFFFFFFF00000000111111112222222233333333444444445555555566666666777777778888888899999999AAAAAAAABBBBBBBBCCCCCCCCDDDDDDDDEEEEEEEEFFFFFFFF00000000111111112222222233333333444444445555555566666666777777778888888899999999AAAAAAAABBBBBBBBCCCCCCCCDDDDDDDDEEEEEEEEFFFFFFFF00000000111111112222222233333333444444445555555566666666777777778888888899999999AAAAAAAABBBBBBBBCCCCCCCCDDDDDDDDEEEEEEEEFFFFFFFF":"6E3173EEAC8D68A5AB53D259F32D9E9C298FD2C4FAD3BEE9151DC103EA2382F5480C7D11F451C060A1E3D887E05A620EF6395763CB7A40FC473DD0771456A018E18635EA971C36DCAD09D60E8BD0E2E0CCD1AECB8BE0ABA881DBE60163F6C45947EC0B05FDAAA3DF944627DD4FACBAD3FF2AB4B99D91E548C06A4AF320A9CA0D2FD0CB19B90B9D6A8BF59CB631DD925B6DEA621FE962099D3D0BED6B13C0C546DC6B563A7FC63B1B77D277897DD7B9DF28C4C9213A183B83D982964C6AD8192CE7354B11ED727EDEF85074C46E4E2E6C1728FB7980385CDB36512F927847C6A14A118624ABC12B09DBEE60D651B5431AAD982228C61655EABB80C263871AE1CF":256
|
||||
|
||||
mbedtls_mpi_core_cond_assign: copy half of the limbs
|
||||
mpi_core_cond_assign:"00000000FFFFFFFF55555555AAAAAAAA":"FEDCBA9876543210FEDCBA9876543210":8
|
||||
|
||||
mbedtls_mpi_core_cond_swap: same value
|
||||
mpi_core_cond_swap:"FFFFFFFF":"FFFFFFFF":4
|
||||
|
||||
mbedtls_mpi_core_cond_swap: 1 limb
|
||||
mpi_core_cond_swap:"FFFFFFFF":"11111111":4
|
||||
|
||||
mbedtls_mpi_core_cond_swap: more limbs #1
|
||||
mpi_core_cond_swap:"00000000FFFFFFFF55555555AAAAAAAA":"0123456789ABCDEF0123456789ABCDEF":16
|
||||
|
||||
mbedtls_mpi_core_cond_swap: more limbs #2
|
||||
mpi_core_cond_swap:"11111111EEEEEEEE77777777CCCCCCCC":"FEDCBA9876543210FEDCBA9876543210":16
|
||||
|
||||
mbedtls_mpi_core_cond_swap: more limbs #3
|
||||
mpi_core_cond_swap:"562D2B7E83BDC6FF783CEC0D6F46EAE7":"4C314E3B5CEB009C25F3300D5ECF670A":16
|
||||
|
||||
mbedtls_mpi_core_cond_swap: copy 256 bytes of limbs
|
||||
mpi_core_cond_swap:"00000000111111112222222233333333444444445555555566666666777777778888888899999999AAAAAAAABBBBBBBBCCCCCCCCDDDDDDDDEEEEEEEEFFFFFFFF00000000111111112222222233333333444444445555555566666666777777778888888899999999AAAAAAAABBBBBBBBCCCCCCCCDDDDDDDDEEEEEEEEFFFFFFFF00000000111111112222222233333333444444445555555566666666777777778888888899999999AAAAAAAABBBBBBBBCCCCCCCCDDDDDDDDEEEEEEEEFFFFFFFF00000000111111112222222233333333444444445555555566666666777777778888888899999999AAAAAAAABBBBBBBBCCCCCCCCDDDDDDDDEEEEEEEEFFFFFFFF":"9FBBA284460D8EAB5E0D66B634BD18FBA58C0C25417DD637526A7622C6425B46E09AEFBB8C2340AC823DFE990A62C85DB23BCDBEA734134606CEEB4BCF7444569D5EC4E32341ED09D7A5D0BB8B11D7B726BAECCF37D4FC1BEBD892CADD7BE9E093343C1A68D7A188DFE145C1EDBD8048B24E20A076F981D75ABE44318ADC40ED316C444774B6A90D3EE49557315AA6FAB162A498C0B2E2C15BD94186A665E12DDC39211583FA5F21218A3B46999FEBA4DFF454FB6ED35B8F3AE5F8EA840838BD76006DA112F85EDAA2CC07518FFC9724D5695BAF74F16C8D1A3A06029D2F5C1023D9E8A84D1267BD9AF82D1F5F77092D34BE4E8C4D1EA8C58F90B094DCFD6920":256
|
||||
|
||||
mbedtls_mpi_core_cond_swap: copy half of the limbs
|
||||
mpi_core_cond_swap:"00000000FFFFFFFF55555555AAAAAAAA":"FEDCBA9876543210FEDCBA9876543210":8
|
||||
|
||||
mbedtls_mpi_montg_init #1
|
||||
mpi_montg_init:"000000000000001d":"cb08d3dcb08d3dcb"
|
||||
|
||||
mbedtls_mpi_montg_init #2
|
||||
mpi_montg_init:"0000000000000009":"71c71c71c71c71c7"
|
||||
|
||||
mbedtls_mpi_montg_init #3
|
||||
mpi_montg_init:"000000000001869f":"34d76bc8e5e3eaa1"
|
||||
|
||||
mbedtls_mpi_montg_init #4
|
||||
mpi_montg_init:"00000000000080000000000000000001":"ffffffffffffffff"
|
||||
|
||||
mbedtls_mpi_montg_init #5
|
||||
mpi_montg_init:"0000000000a1ffffffffffffffffffff":"0000000000000001"
|
||||
|
||||
mbedtls_mpi_montg_init #6
|
||||
mpi_montg_init:"00000000000257ffffffffffffffffff":"0000000000000001"
|
||||
|
||||
mbedtls_mpi_montg_init #7
|
||||
mpi_montg_init:"b91ba63180c726fbd57786f27f1ede97a3b40c59a7fcfb5898f076e9af57028d":"32edc7e1ac2e6fbb"
|
||||
|
||||
mbedtls_mpi_montg_init #8
|
||||
mpi_montg_init:"b3a119602ee213cde28581ecd892e0f592a338655dce4ca88054b3d124d0e561":"e41cfb909805815f"
|
||||
|
||||
mbedtls_mpi_montg_init #9
|
||||
mpi_montg_init:"0284139ea19c139ebe09a8111926aaa39a2c2be12ed487a809d3cb5bc55854725b4cdcb5734c58f90b2f60d99cc1950cdbc8d651793e93c9c6f0ead752500a32c56c62082912b66132b2a6aa42ada923e1ad22ceb7ba0123":"c02e2164b293c975"
|
||||
|
||||
mbedtls_mpi_montg_init #10
|
||||
mpi_montg_init:"00000000000000011a9351d2d32ccd568e75bf8b4ebbb2a36be691b55832edac662ff79803df8af525fba453068be16ac3920bcc1b468f8f7fe786e0fa4ecbabcad31e5e3b05def802eb8600deaf11ef452487db878df20a80606e4bb6a163b83895d034cc8b53dbcd005be42ffdd2ce99bed06089a0b79d":"ffec8978c055794b"
|
||||
|
||||
mbedtls_mpi_montg_init #11
|
||||
mpi_montg_init:"eeaf0ab9adb38dd69c33f80afa8fc5e86072618775ff3c0b9ea2314c9c256576d674df7496ea81d3383b4813d692c6e0e0d5d8e250b98be48e495c1d6089dad15dc7d7b46154d6b6ce8ef4ad69b15d4982559b297bcf1885c529f566660e57ec68edbc3c05726cc02fd4cbf4976eaa9afd5138fe8376435b9fc61d2fc0eb06e3":"7b07a0b0379b9135"
|
||||
|
||||
mbedtls_mpi_montg_init #12
|
||||
mpi_montg_init:"00000007a364ab3de755f924642bd5273524234f78395da1ed9098f39af4fe248288b0cb7f1c27214588969479d7dc9f0d327b5544dd4c095aa1fa271df421fe9ee460855cc8423d223e2c85dc793f6babdca7fc804ea1f408f867db053bfd98c45085ea5d805c78d2863bacdfcaf4c6147ebb74a9056045074785714c0b84ed":"8f54b233c070871b"
|
||||
|
||||
mbedtls_mpi_montg_init #13
|
||||
mpi_montg_init:"e2df85c83ee8463b3af26805791cc0b1ba1af89564e887a63d5ba18ea72fb593b664cf8ace78241ea3109b7644510e02324a5c1e9a85daada3c383759d7678ce8d8886b51a3237dc84b543de4f843c77fc77ba08ef90e7e96ba622478f6b96daa3e9b8511f36279fb0120ef93bad2090e7878346fe4ae29ad61be48b6835e8407d0849422e05c7a4d1e02322f2675056d73d4c5a1ab376bfaccfd61ff7d64b715c9525a7ed8dcda1144f8722c30d12ba3d95221d897edc825a1598a645e2c457":"b777a905d9239899"
|
||||
|
||||
mbedtls_mpi_montg_init #14
|
||||
mpi_montg_init:"baea2d65939296fc2536f18f2a4042a741f33088ecd5000e76c67a466e7a1e696f8ee9a15497168b3a2b597799dc9475909ebbc64b96f233430c6aa3e4a86e9352b0230081502da09ef41dc0a164a1c6a31bd1338e359a28c78ef50c89f06a46b46a27d7245bba7468334625687201d62ef084de4c5190dfe70c14a318204492de6edd138e14e9337fda739dcadd0212302db7770de28d8c5c79b6a6b5f927e656e157cd7e41204ec39731fe3608ecd4b885a194647fe7f02b74639cc76cdf03":"827ef0810f71fc55"
|
||||
|
||||
mbedtls_mpi_montg_init #15
|
||||
mpi_montg_init:"bf741f75e28a44e271cf43e68dbadd23c72d2f2e1fc78a6d6aaaadf2ccbf26c9a232aff5b3f3f29323b114f3018144ed9438943e07820e222137d3bb229b61671e61f75f6021a26436df9e669929fa392df021f105d2fce0717468a522018721ccde541b9a7b558128419f457ef33a5753f00c20c2d709727eef6278c55b278b10abe1d13e538514128b5dcb7bfd015e0fdcb081555071813974135d5ab5000630a94f5b0f4021a504ab4f3df2403e6140b9939f8bbe714635f5cff10744be03":"aab901da57bba355"
|
||||
|
||||
mbedtls_mpi_core_get_mont_r2_unsafe_neg
|
||||
mpi_core_get_mont_r2_unsafe_neg:
|
||||
|
||||
mbedtls_mpi_core_get_mont_r2_unsafe #1
|
||||
mpi_core_get_mont_r2_unsafe:"f":"1":"1"
|
||||
|
||||
mbedtls_mpi_core_get_mont_r2_unsafe #2
|
||||
mpi_core_get_mont_r2_unsafe:"fd":"ec":"24"
|
||||
|
||||
mbedtls_mpi_core_get_mont_r2_unsafe #3
|
||||
mpi_core_get_mont_r2_unsafe:"eeff99aa37":"a23bd6a686":"a23bd6a686"
|
||||
|
||||
mbedtls_mpi_core_get_mont_r2_unsafe #4
|
||||
mpi_core_get_mont_r2_unsafe:"eeff99aa11":"3308cb71":"3308cb71"
|
||||
|
||||
mbedtls_mpi_core_get_mont_r2_unsafe #5
|
||||
mpi_core_get_mont_r2_unsafe:"800000000005":"6400000000":"6400000000"
|
||||
|
||||
mbedtls_mpi_core_get_mont_r2_unsafe #6
|
||||
mpi_core_get_mont_r2_unsafe:"7fffffffffffffff":"4":"4"
|
||||
|
||||
mbedtls_mpi_core_get_mont_r2_unsafe #7
|
||||
mpi_core_get_mont_r2_unsafe:"80fe000a10000001":"5dbc6e833bad575a":"5dbc6e833bad575a"
|
||||
|
||||
mbedtls_mpi_core_get_mont_r2_unsafe #8
|
||||
mpi_core_get_mont_r2_unsafe:"25a55a46e5da99c71c7":"11637ce1347edeaf669":"1e455bf7451c05bc711"
|
||||
|
||||
mbedtls_mpi_core_get_mont_r2_unsafe #9
|
||||
mpi_core_get_mont_r2_unsafe:"314dc643fb763f2b8c0e2de00879":"1058ad82120c3a10196bb36229c1":"1058ad82120c3a10196bb36229c1"
|
||||
|
||||
mbedtls_mpi_core_get_mont_r2_unsafe #10
|
||||
mpi_core_get_mont_r2_unsafe:"8335616aed761f1f7f44e6bd49e807b82e3bf2bf11bfa63":"5d96a26447dca0cb7209c048f9e63e8dc623d67c8f44396":"5d96a26447dca0cb7209c048f9e63e8dc623d67c8f44396"
|
||||
|
||||
mbedtls_mpi_core_get_mont_r2_unsafe #11
|
||||
mpi_core_get_mont_r2_unsafe:"d1cece570f2f991013f26dd5b03c4c5b65f97be5905f36cb4664f2c78ff80aa8135a4aaf57ccb8a0aca2f394909a74cef1ef6758a64d11e2c149c393659d124bfc94196f0ce88f7d7d567efa5a649e2deefaa6e10fdc3deac60d606bf63fc540ac95294347031aefd73d6a9ee10188aaeb7a90d920894553cb196881691cadc51808715a07e8b24fcb1a63df047c7cdf084dd177ba368c806f3d51ddb5d3898c863e687ecaf7d649a57a46264a582f94d3c8f2edaf59f77a7f6bdaf83c991e8f06abe220ec8507386fce8c3da84c6c3903ab8f3ad4630a204196a7dbcbd9bcca4e40ec5cc5c09938d49f5e1e6181db8896f33bb12e6ef73f12ec5c5ea7a8a337":"12d7243d92ebc8338221f6dcec8ad8a2ec64c10a98339c8721beb1cb79e629253a7aa35e25d5421e6c2b43ddc4310cf4443875c070a7a5a5cc2c4c3eefa8a133af2e477fb7bb5b5058c6120946a7f9f08f2fab51e2f243b9ba206d2bfd62e4ef647dda49100d7004794f28172be2d715905fbd2e9ab8588c774523c0e096b49b6855a10e5ce0d8498370949a29d71d293788bf10a71e2447d4b2f11959a72f7290e2950772d14c83f15532468745fa58a83fca8883b0b6169a27ec0cf922c4f39d283bb20fca5ff1de01d9c66b8a710108b951af634d56c843d9505bf2edd5a7b8f0b72a5c95672151e60075a78084e83fbe284617a90c74c8335cce38bb012e":"12d7243d92ebc8338221f6dcec8ad8a2ec64c10a98339c8721beb1cb79e629253a7aa35e25d5421e6c2b43ddc4310cf4443875c070a7a5a5cc2c4c3eefa8a133af2e477fb7bb5b5058c6120946a7f9f08f2fab51e2f243b9ba206d2bfd62e4ef647dda49100d7004794f28172be2d715905fbd2e9ab8588c774523c0e096b49b6855a10e5ce0d8498370949a29d71d293788bf10a71e2447d4b2f11959a72f7290e2950772d14c83f15532468745fa58a83fca8883b0b6169a27ec0cf922c4f39d283bb20fca5ff1de01d9c66b8a710108b951af634d56c843d9505bf2edd5a7b8f0b72a5c95672151e60075a78084e83fbe284617a90c74c8335cce38bb012e"
|
||||
|
||||
Fill random core: 0 bytes
|
||||
mpi_core_fill_random:0:0:1:0:0
|
||||
|
||||
Fill random core: 1 byte, RNG stops at 0
|
||||
mpi_core_fill_random:1:-1:0:0:MBEDTLS_ERR_ENTROPY_SOURCE_FAILED
|
||||
|
||||
Fill random core: 1 byte, RNG just sufficient
|
||||
mpi_core_fill_random:1:0:0:0:0
|
||||
|
||||
Fill random core: 1 byte, RNG not exhausted
|
||||
mpi_core_fill_random:1:1:0:0:0
|
||||
|
||||
Fill random core: 1 byte, prior content nonzero
|
||||
mpi_core_fill_random:1:0:0:0xba:0
|
||||
|
||||
Fill random core: 1 byte, 1 extra limb
|
||||
mpi_core_fill_random:1:0:1:0:0
|
||||
|
||||
Fill random core: 1 byte, 1 extra limb, prior content nonzero
|
||||
mpi_core_fill_random:1:0:1:0xba:0
|
||||
|
||||
Fill random core: 8 bytes, RNG stops before
|
||||
mpi_core_fill_random:8:-1:0:0:MBEDTLS_ERR_ENTROPY_SOURCE_FAILED
|
||||
|
||||
Fill random core: 8 bytes, RNG just sufficient
|
||||
mpi_core_fill_random:8:0:0:0:0
|
||||
|
||||
Fill random core: 8 bytes, RNG not exhausted
|
||||
mpi_core_fill_random:8:1:0:0:0
|
||||
|
||||
Fill random core: 8 bytes, prior content nonzero
|
||||
mpi_core_fill_random:8:0:0:0xba:0
|
||||
|
||||
Fill random core: 8 bytes, 1 extra limb
|
||||
mpi_core_fill_random:8:0:1:0:0
|
||||
|
||||
Fill random core: 8 bytes, 1 extra limb, prior content nonzero
|
||||
mpi_core_fill_random:8:0:1:0xba:0
|
||||
|
||||
Fill random core: 9 bytes, 1 missing limb
|
||||
mpi_core_fill_random:9:0:-1:0:MBEDTLS_ERR_MPI_BAD_INPUT_DATA
|
||||
|
||||
Fill random core: 42 bytes, RNG stops before
|
||||
mpi_core_fill_random:42:-1:0:0:MBEDTLS_ERR_ENTROPY_SOURCE_FAILED
|
||||
|
||||
Fill random core: 42 bytes, RNG just sufficient
|
||||
mpi_core_fill_random:42:0:0:0:0
|
||||
|
||||
Fill random core: 42 bytes, RNG not exhausted
|
||||
mpi_core_fill_random:42:1:0:0:0
|
||||
|
||||
Fill random core: 42 bytes, prior content nonzero
|
||||
mpi_core_fill_random:42:0:0:0xba:0
|
||||
|
||||
Fill random core: 42 bytes, 1 extra limb
|
||||
mpi_core_fill_random:42:0:1:0:0
|
||||
|
||||
Fill random core: 42 bytes, 1 extra limb, prior content nonzero
|
||||
mpi_core_fill_random:42:0:1:0xba:0
|
||||
|
||||
Fill random core: 42 bytes, 1 missing limb
|
||||
mpi_core_fill_random:42:0:-1:0:MBEDTLS_ERR_MPI_BAD_INPUT_DATA
|
||||
|
||||
Fill random core: 42 bytes, 5 missing limbs
|
||||
mpi_core_fill_random:42:0:-5:0:MBEDTLS_ERR_MPI_BAD_INPUT_DATA
|
||||
|
||||
CLZ: 0 0: all ones
|
||||
mpi_core_clz:0:0
|
||||
|
||||
CLZ: 1 0
|
||||
mpi_core_clz:1:0
|
||||
|
||||
CLZ: 1 1
|
||||
mpi_core_clz:1:1
|
||||
|
||||
CLZ: 4 5
|
||||
mpi_core_clz:4:5
|
||||
|
||||
CLZ: 8 16
|
||||
mpi_core_clz:8:16
|
||||
|
||||
CLZ: 31 0
|
||||
mpi_core_clz:31:0
|
||||
|
||||
CLZ: 32 0
|
||||
mpi_core_clz:32:0
|
||||
|
||||
CLZ: 33 0
|
||||
mpi_core_clz:33:0
|
||||
|
||||
CLZ: 63 0
|
||||
mpi_core_clz:63:0
|
||||
|
||||
CLZ: 64 0
|
||||
mpi_core_clz:64:0
|
||||
|
||||
CLZ: 100000 0: skip overly long input
|
||||
mpi_core_clz:100000:0
|
||||
|
||||
GCD-modinv random 80-bit, non-trivial GCD -> no inverse
|
||||
mpi_core_gcd_modinv_odd:"e4518a1900fce698fa3":"1a84113636607520200d":"3":""
|
||||
|
||||
GCD-modinv random 80-bit, trivial GCD -> inverse
|
||||
mpi_core_gcd_modinv_odd:"7f2405d6de7db80a7bc":"1a84113636607520200d":"1":"15f158844a59cd7a3ed2"
|
||||
|
||||
# This data results in the gcd-modinv loop converging to its final state
|
||||
# only in the last iteration. See python script in commit message.
|
||||
GCD-modinv (almost) max iterations
|
||||
mpi_core_gcd_modinv_odd:"8000000000000000":"b26eb5721a2cb24c36acb4550b176671":"1":"77e1dd63583a6b3c8deefe7737862c89"
|
||||
|
||||
GCD-modinv preconditions not met
|
||||
mpi_core_gcd_modinv_odd_preconditions:
|
||||
|
||||
Div2 mod odd: even value
|
||||
mpi_core_div2_mod_odd:"4":"7":"2"
|
||||
|
||||
Div2 mod odd: odd value, no carry
|
||||
mpi_core_div2_mod_odd:"5":"7":"6"
|
||||
|
||||
Div2 mod odd: odd value with carry
|
||||
mpi_core_div2_mod_odd:"8000000000000001":"8000000000000003":"8000000000000002"
|
||||
|
||||
Div2 mod odd: even value with top bit set
|
||||
mpi_core_div2_mod_odd:"8000000000000002":"8000000000000003":"4000000000000001"
|
||||
742
vendor/mbedtls/tests/suites/test_suite_bignum_mod.function
vendored
Normal file
742
vendor/mbedtls/tests/suites/test_suite_bignum_mod.function
vendored
Normal file
@@ -0,0 +1,742 @@
|
||||
/* BEGIN_HEADER */
|
||||
#include "mbedtls/bignum.h"
|
||||
#include "mbedtls/entropy.h"
|
||||
#include "bignum_mod.h"
|
||||
#include "bignum_mod_raw.h"
|
||||
#include "constant_time_internal.h"
|
||||
#include "test/constant_flow.h"
|
||||
|
||||
#define TEST_COMPARE_MPI_RESIDUES(a, b) \
|
||||
TEST_MEMORY_COMPARE((a).p, (a).limbs * sizeof(mbedtls_mpi_uint), \
|
||||
(b).p, (b).limbs * sizeof(mbedtls_mpi_uint))
|
||||
|
||||
static int test_read_residue(mbedtls_mpi_mod_residue *r,
|
||||
const mbedtls_mpi_mod_modulus *m,
|
||||
char *input,
|
||||
int skip_limbs_and_value_checks)
|
||||
{
|
||||
mbedtls_mpi_uint *p = NULL;
|
||||
size_t limbs;
|
||||
|
||||
int ret = mbedtls_test_read_mpi_core(&p, &limbs, input);
|
||||
if (ret != 0) {
|
||||
return ret;
|
||||
}
|
||||
|
||||
if (skip_limbs_and_value_checks) {
|
||||
r->p = p;
|
||||
r->limbs = limbs;
|
||||
return 0;
|
||||
}
|
||||
|
||||
/* mbedtls_mpi_mod_residue_setup() checks limbs, and that value < m */
|
||||
return mbedtls_mpi_mod_residue_setup(r, m, p, limbs);
|
||||
}
|
||||
/* END_HEADER */
|
||||
|
||||
/* BEGIN_DEPENDENCIES
|
||||
* depends_on:MBEDTLS_BIGNUM_C:MBEDTLS_ECP_WITH_MPI_UINT
|
||||
* END_DEPENDENCIES
|
||||
*/
|
||||
|
||||
/* BEGIN_CASE */
|
||||
void mpi_mod_setup(int int_rep, int iret)
|
||||
{
|
||||
#define MLIMBS 8
|
||||
mbedtls_mpi_uint mp[MLIMBS];
|
||||
mbedtls_mpi_mod_modulus m;
|
||||
int ret;
|
||||
|
||||
memset(mp, 0xFF, sizeof(mp));
|
||||
|
||||
mbedtls_mpi_mod_modulus_init(&m);
|
||||
|
||||
switch (int_rep) {
|
||||
case MBEDTLS_MPI_MOD_REP_MONTGOMERY:
|
||||
ret = mbedtls_mpi_mod_modulus_setup(&m, mp, MLIMBS);
|
||||
break;
|
||||
case MBEDTLS_MPI_MOD_REP_OPT_RED:
|
||||
ret = mbedtls_mpi_mod_optred_modulus_setup(&m, mp, MLIMBS, NULL);
|
||||
break;
|
||||
default:
|
||||
ret = MBEDTLS_ERR_MPI_BAD_INPUT_DATA;
|
||||
break;
|
||||
}
|
||||
|
||||
TEST_EQUAL(ret, iret);
|
||||
|
||||
/* Only test if the constants have been set-up */
|
||||
if (ret == 0 && int_rep == MBEDTLS_MPI_MOD_REP_MONTGOMERY) {
|
||||
/* Test that the consts have been calculated */
|
||||
TEST_ASSERT(m.rep.mont.rr != NULL);
|
||||
TEST_ASSERT(m.rep.mont.mm != 0);
|
||||
|
||||
}
|
||||
|
||||
/* Address sanitiser should catch if we try to free mp */
|
||||
mbedtls_mpi_mod_modulus_free(&m);
|
||||
|
||||
/* Make sure that the modulus doesn't have reference to mp anymore */
|
||||
TEST_ASSERT(m.p != mp);
|
||||
|
||||
/* Only test if the constants have been set-up */
|
||||
if (ret == 0 && int_rep == MBEDTLS_MPI_MOD_REP_MONTGOMERY) {
|
||||
/* Verify the data and pointers allocated have been properly wiped */
|
||||
TEST_ASSERT(m.rep.mont.rr == NULL);
|
||||
TEST_ASSERT(m.rep.mont.mm == 0);
|
||||
}
|
||||
exit:
|
||||
/* It should be safe to call an mbedtls free several times */
|
||||
mbedtls_mpi_mod_modulus_free(&m);
|
||||
|
||||
#undef MLIMBS
|
||||
}
|
||||
/* END_CASE */
|
||||
|
||||
/* BEGIN_CASE */
|
||||
void mpi_mod_mul(char *input_A,
|
||||
char *input_B,
|
||||
char *input_N,
|
||||
char *result)
|
||||
{
|
||||
mbedtls_mpi_uint *X = NULL;
|
||||
|
||||
mbedtls_mpi_mod_residue rA = { NULL, 0 };
|
||||
mbedtls_mpi_mod_residue rB = { NULL, 0 };
|
||||
mbedtls_mpi_mod_residue rR = { NULL, 0 };
|
||||
mbedtls_mpi_mod_residue rX = { NULL, 0 };
|
||||
|
||||
mbedtls_mpi_mod_modulus m;
|
||||
mbedtls_mpi_mod_modulus_init(&m);
|
||||
|
||||
TEST_EQUAL(mbedtls_test_read_mpi_modulus(&m, input_N,
|
||||
MBEDTLS_MPI_MOD_REP_MONTGOMERY), 0);
|
||||
|
||||
TEST_EQUAL(test_read_residue(&rA, &m, input_A, 0), 0);
|
||||
TEST_EQUAL(test_read_residue(&rB, &m, input_B, 0), 0);
|
||||
TEST_EQUAL(test_read_residue(&rR, &m, result, 0), 0);
|
||||
|
||||
const size_t limbs = m.limbs;
|
||||
const size_t bytes = limbs * sizeof(mbedtls_mpi_uint);
|
||||
|
||||
TEST_EQUAL(rA.limbs, limbs);
|
||||
TEST_EQUAL(rB.limbs, limbs);
|
||||
TEST_EQUAL(rR.limbs, limbs);
|
||||
|
||||
TEST_CALLOC(X, limbs);
|
||||
|
||||
TEST_EQUAL(mbedtls_mpi_mod_residue_setup(&rX, &m, X, limbs), 0);
|
||||
|
||||
TEST_EQUAL(mbedtls_mpi_mod_mul(&rX, &rA, &rB, &m), 0);
|
||||
TEST_MEMORY_COMPARE(rX.p, bytes, rR.p, bytes);
|
||||
|
||||
/* alias X to A */
|
||||
memcpy(rX.p, rA.p, bytes);
|
||||
TEST_EQUAL(mbedtls_mpi_mod_mul(&rX, &rX, &rB, &m), 0);
|
||||
TEST_MEMORY_COMPARE(rX.p, bytes, rR.p, bytes);
|
||||
|
||||
/* alias X to B */
|
||||
memcpy(rX.p, rB.p, bytes);
|
||||
TEST_EQUAL(mbedtls_mpi_mod_mul(&rX, &rA, &rX, &m), 0);
|
||||
TEST_MEMORY_COMPARE(rX.p, bytes, rR.p, bytes);
|
||||
|
||||
/* A == B: alias A and B */
|
||||
if (memcmp(rA.p, rB.p, bytes) == 0) {
|
||||
TEST_EQUAL(mbedtls_mpi_mod_mul(&rX, &rA, &rA, &m), 0);
|
||||
TEST_MEMORY_COMPARE(rX.p, bytes, rR.p, bytes);
|
||||
|
||||
/* X, A, B all aliased together */
|
||||
memcpy(rX.p, rA.p, bytes);
|
||||
TEST_EQUAL(mbedtls_mpi_mod_mul(&rX, &rX, &rX, &m), 0);
|
||||
TEST_MEMORY_COMPARE(rX.p, bytes, rR.p, bytes);
|
||||
}
|
||||
/* A != B: test B * A */
|
||||
else {
|
||||
TEST_EQUAL(mbedtls_mpi_mod_mul(&rX, &rB, &rA, &m), 0);
|
||||
TEST_MEMORY_COMPARE(rX.p, bytes, rR.p, bytes);
|
||||
|
||||
/* B * A: alias X to A */
|
||||
memcpy(rX.p, rA.p, bytes);
|
||||
TEST_EQUAL(mbedtls_mpi_mod_mul(&rX, &rB, &rX, &m), 0);
|
||||
TEST_MEMORY_COMPARE(rX.p, bytes, rR.p, bytes);
|
||||
|
||||
/* B + A: alias X to B */
|
||||
memcpy(rX.p, rB.p, bytes);
|
||||
TEST_EQUAL(mbedtls_mpi_mod_mul(&rX, &rX, &rA, &m), 0);
|
||||
TEST_MEMORY_COMPARE(rX.p, bytes, rR.p, bytes);
|
||||
}
|
||||
|
||||
exit:
|
||||
mbedtls_free(rA.p);
|
||||
mbedtls_free(rB.p);
|
||||
mbedtls_free(rR.p);
|
||||
mbedtls_free(X);
|
||||
mbedtls_free((mbedtls_mpi_uint *) m.p);
|
||||
|
||||
mbedtls_mpi_mod_modulus_free(&m);
|
||||
}
|
||||
/* END_CASE */
|
||||
|
||||
/* BEGIN_CASE */
|
||||
void mpi_mod_mul_neg(char *input_A,
|
||||
char *input_B,
|
||||
char *input_N,
|
||||
char *result,
|
||||
int exp_ret)
|
||||
{
|
||||
mbedtls_mpi_uint *X = NULL;
|
||||
|
||||
mbedtls_mpi_mod_residue rA = { NULL, 0 };
|
||||
mbedtls_mpi_mod_residue rB = { NULL, 0 };
|
||||
mbedtls_mpi_mod_residue rR = { NULL, 0 };
|
||||
mbedtls_mpi_mod_residue rX = { NULL, 0 };
|
||||
|
||||
mbedtls_mpi_mod_modulus m;
|
||||
mbedtls_mpi_mod_modulus_init(&m);
|
||||
|
||||
mbedtls_mpi_mod_modulus fake_m;
|
||||
mbedtls_mpi_mod_modulus_init(&fake_m);
|
||||
|
||||
TEST_EQUAL(mbedtls_test_read_mpi_modulus(&m, input_N,
|
||||
MBEDTLS_MPI_MOD_REP_MONTGOMERY), 0);
|
||||
|
||||
TEST_EQUAL(test_read_residue(&rA, &m, input_A, 1), 0);
|
||||
TEST_EQUAL(test_read_residue(&rB, &m, input_B, 1), 0);
|
||||
TEST_EQUAL(test_read_residue(&rR, &m, result, 1), 0);
|
||||
|
||||
const size_t limbs = m.limbs;
|
||||
|
||||
TEST_CALLOC(X, limbs);
|
||||
|
||||
TEST_EQUAL(mbedtls_mpi_mod_residue_setup(&rX, &m, X, limbs), 0);
|
||||
rX.limbs = rR.limbs;
|
||||
|
||||
TEST_EQUAL(mbedtls_mpi_mod_mul(&rX, &rA, &rB, &m), exp_ret);
|
||||
|
||||
/* Check when m is not initialized */
|
||||
TEST_EQUAL(mbedtls_mpi_mod_mul(&rX, &rA, &rB, &fake_m),
|
||||
MBEDTLS_ERR_MPI_BAD_INPUT_DATA);
|
||||
|
||||
exit:
|
||||
mbedtls_free(rA.p);
|
||||
mbedtls_free(rB.p);
|
||||
mbedtls_free(rR.p);
|
||||
mbedtls_free(X);
|
||||
mbedtls_free((mbedtls_mpi_uint *) m.p);
|
||||
|
||||
mbedtls_mpi_mod_modulus_free(&m);
|
||||
mbedtls_mpi_mod_modulus_free(&fake_m);
|
||||
}
|
||||
/* END_CASE */
|
||||
|
||||
/* BEGIN_CASE */
|
||||
void mpi_mod_sub(char *input_N,
|
||||
char *input_A, char *input_B,
|
||||
char *input_D, int expected_ret)
|
||||
{
|
||||
mbedtls_mpi_mod_residue a = { NULL, 0 };
|
||||
mbedtls_mpi_mod_residue b = { NULL, 0 };
|
||||
mbedtls_mpi_mod_residue d = { NULL, 0 };
|
||||
mbedtls_mpi_mod_residue x = { NULL, 0 };
|
||||
mbedtls_mpi_uint *X_raw = NULL;
|
||||
|
||||
mbedtls_mpi_mod_modulus m;
|
||||
mbedtls_mpi_mod_modulus_init(&m);
|
||||
|
||||
TEST_EQUAL(0,
|
||||
mbedtls_test_read_mpi_modulus(&m, input_N,
|
||||
MBEDTLS_MPI_MOD_REP_MONTGOMERY));
|
||||
|
||||
/* test_read_residue() normally checks that inputs have the same number of
|
||||
* limbs as the modulus. For negative testing we can ask it to skip this
|
||||
* with a non-zero final parameter. */
|
||||
TEST_EQUAL(0, test_read_residue(&a, &m, input_A, expected_ret != 0));
|
||||
TEST_EQUAL(0, test_read_residue(&b, &m, input_B, expected_ret != 0));
|
||||
TEST_EQUAL(0, test_read_residue(&d, &m, input_D, expected_ret != 0));
|
||||
|
||||
size_t limbs = m.limbs;
|
||||
size_t bytes = limbs * sizeof(*X_raw);
|
||||
|
||||
if (expected_ret == 0) {
|
||||
/* Negative test with too many limbs in output */
|
||||
TEST_CALLOC(X_raw, limbs + 1);
|
||||
|
||||
x.p = X_raw;
|
||||
x.limbs = limbs + 1;
|
||||
TEST_EQUAL(MBEDTLS_ERR_MPI_BAD_INPUT_DATA,
|
||||
mbedtls_mpi_mod_sub(&x, &a, &b, &m));
|
||||
|
||||
mbedtls_free(X_raw);
|
||||
X_raw = NULL;
|
||||
|
||||
/* Negative test with too few limbs in output */
|
||||
if (limbs > 1) {
|
||||
TEST_CALLOC(X_raw, limbs - 1);
|
||||
|
||||
x.p = X_raw;
|
||||
x.limbs = limbs - 1;
|
||||
TEST_EQUAL(MBEDTLS_ERR_MPI_BAD_INPUT_DATA,
|
||||
mbedtls_mpi_mod_sub(&x, &a, &b, &m));
|
||||
|
||||
mbedtls_free(X_raw);
|
||||
X_raw = NULL;
|
||||
}
|
||||
|
||||
/* Negative testing with too many/too few limbs in a and b is covered by
|
||||
* manually-written test cases with expected_ret != 0. */
|
||||
}
|
||||
|
||||
TEST_CALLOC(X_raw, limbs);
|
||||
|
||||
TEST_EQUAL(0, mbedtls_mpi_mod_residue_setup(&x, &m, X_raw, limbs));
|
||||
|
||||
/* a - b => Correct result, or expected error */
|
||||
TEST_EQUAL(expected_ret, mbedtls_mpi_mod_sub(&x, &a, &b, &m));
|
||||
if (expected_ret != 0) {
|
||||
goto exit;
|
||||
}
|
||||
|
||||
TEST_COMPARE_MPI_RESIDUES(x, d);
|
||||
|
||||
/* a - b: alias x to a => Correct result */
|
||||
memcpy(x.p, a.p, bytes);
|
||||
TEST_EQUAL(0, mbedtls_mpi_mod_sub(&x, &x, &b, &m));
|
||||
TEST_COMPARE_MPI_RESIDUES(x, d);
|
||||
|
||||
/* a - b: alias x to b => Correct result */
|
||||
memcpy(x.p, b.p, bytes);
|
||||
TEST_EQUAL(0, mbedtls_mpi_mod_sub(&x, &a, &x, &m));
|
||||
TEST_COMPARE_MPI_RESIDUES(x, d);
|
||||
|
||||
if (memcmp(a.p, b.p, bytes) == 0) {
|
||||
/* a == b: alias a and b */
|
||||
|
||||
/* a - a => Correct result */
|
||||
TEST_EQUAL(0, mbedtls_mpi_mod_sub(&x, &a, &a, &m));
|
||||
TEST_COMPARE_MPI_RESIDUES(x, d);
|
||||
|
||||
/* a - a: x, a, b all aliased together => Correct result */
|
||||
memcpy(x.p, a.p, bytes);
|
||||
TEST_EQUAL(0, mbedtls_mpi_mod_sub(&x, &x, &x, &m));
|
||||
TEST_COMPARE_MPI_RESIDUES(x, d);
|
||||
}
|
||||
|
||||
exit:
|
||||
mbedtls_free((void *) m.p); /* mbedtls_mpi_mod_modulus_free() sets m.p = NULL */
|
||||
mbedtls_mpi_mod_modulus_free(&m);
|
||||
|
||||
mbedtls_free(a.p);
|
||||
mbedtls_free(b.p);
|
||||
mbedtls_free(d.p);
|
||||
mbedtls_free(X_raw);
|
||||
}
|
||||
/* END_CASE */
|
||||
|
||||
/* BEGIN_CASE */
|
||||
void mpi_mod_inv_mont(char *input_N,
|
||||
char *input_A, char *input_I,
|
||||
int expected_ret)
|
||||
{
|
||||
mbedtls_mpi_mod_residue a = { NULL, 0 }; /* argument */
|
||||
mbedtls_mpi_mod_residue i = { NULL, 0 }; /* expected inverse wrt N */
|
||||
mbedtls_mpi_mod_residue x = { NULL, 0 }; /* output */
|
||||
mbedtls_mpi_uint *X_raw = NULL;
|
||||
|
||||
mbedtls_mpi_mod_modulus N;
|
||||
mbedtls_mpi_mod_modulus_init(&N);
|
||||
|
||||
TEST_EQUAL(0,
|
||||
mbedtls_test_read_mpi_modulus(&N, input_N,
|
||||
MBEDTLS_MPI_MOD_REP_MONTGOMERY));
|
||||
|
||||
/* test_read_residue() normally checks that inputs have the same number of
|
||||
* limbs as the modulus. For negative testing we can ask it to skip this
|
||||
* with a non-zero final parameter. */
|
||||
TEST_EQUAL(0, test_read_residue(&a, &N, input_A, expected_ret != 0));
|
||||
TEST_EQUAL(0, test_read_residue(&i, &N, input_I, expected_ret != 0));
|
||||
|
||||
size_t limbs = N.limbs;
|
||||
size_t bytes = limbs * sizeof(*X_raw);
|
||||
|
||||
TEST_CALLOC(X_raw, limbs);
|
||||
|
||||
TEST_EQUAL(0, mbedtls_mpi_mod_residue_setup(&x, &N, X_raw, limbs));
|
||||
|
||||
TEST_EQUAL(expected_ret, mbedtls_mpi_mod_inv(&x, &a, &N));
|
||||
if (expected_ret == 0) {
|
||||
TEST_COMPARE_MPI_RESIDUES(x, i);
|
||||
|
||||
/* a^-1: alias x to a => Correct result */
|
||||
memcpy(x.p, a.p, bytes);
|
||||
TEST_EQUAL(0, mbedtls_mpi_mod_inv(&x, &x, &N));
|
||||
TEST_COMPARE_MPI_RESIDUES(x, i);
|
||||
}
|
||||
|
||||
exit:
|
||||
mbedtls_free((void *) N.p); /* mbedtls_mpi_mod_modulus_free() sets N.p = NULL */
|
||||
mbedtls_mpi_mod_modulus_free(&N);
|
||||
|
||||
mbedtls_free(a.p);
|
||||
mbedtls_free(i.p);
|
||||
mbedtls_free(X_raw);
|
||||
}
|
||||
/* END_CASE */
|
||||
|
||||
/* BEGIN_CASE */
|
||||
void mpi_mod_inv_non_mont(char *input_N,
|
||||
char *input_A, char *input_I,
|
||||
int expected_ret)
|
||||
{
|
||||
mbedtls_mpi_mod_residue a = { NULL, 0 }; /* argument */
|
||||
mbedtls_mpi_mod_residue i = { NULL, 0 }; /* expected inverse wrt N */
|
||||
mbedtls_mpi_mod_residue x = { NULL, 0 }; /* output */
|
||||
mbedtls_mpi_uint *X_raw = NULL;
|
||||
|
||||
mbedtls_mpi_mod_modulus N;
|
||||
mbedtls_mpi_mod_modulus_init(&N);
|
||||
|
||||
TEST_EQUAL(0,
|
||||
mbedtls_test_read_mpi_modulus(&N, input_N,
|
||||
MBEDTLS_MPI_MOD_REP_OPT_RED));
|
||||
|
||||
/* test_read_residue() normally checks that inputs have the same number of
|
||||
* limbs as the modulus. For negative testing we can ask it to skip this
|
||||
* with a non-zero final parameter. */
|
||||
TEST_EQUAL(0, test_read_residue(&a, &N, input_A, expected_ret != 0));
|
||||
TEST_EQUAL(0, test_read_residue(&i, &N, input_I, expected_ret != 0));
|
||||
|
||||
size_t limbs = N.limbs;
|
||||
size_t bytes = limbs * sizeof(*X_raw);
|
||||
|
||||
TEST_CALLOC(X_raw, limbs);
|
||||
|
||||
TEST_EQUAL(0, mbedtls_mpi_mod_residue_setup(&x, &N, X_raw, limbs));
|
||||
|
||||
TEST_EQUAL(expected_ret, mbedtls_mpi_mod_inv(&x, &a, &N));
|
||||
if (expected_ret == 0) {
|
||||
TEST_COMPARE_MPI_RESIDUES(x, i);
|
||||
|
||||
/* a^-1: alias x to a => Correct result */
|
||||
memcpy(x.p, a.p, bytes);
|
||||
TEST_EQUAL(0, mbedtls_mpi_mod_inv(&x, &x, &N));
|
||||
TEST_COMPARE_MPI_RESIDUES(x, i);
|
||||
}
|
||||
|
||||
exit:
|
||||
mbedtls_free((void *) N.p); /* mbedtls_mpi_mod_modulus_free() sets N.p = NULL */
|
||||
mbedtls_mpi_mod_modulus_free(&N);
|
||||
|
||||
mbedtls_free(a.p);
|
||||
mbedtls_free(i.p);
|
||||
mbedtls_free(X_raw);
|
||||
}
|
||||
/* END_CASE */
|
||||
|
||||
/* BEGIN_CASE */
|
||||
void mpi_mod_add(char *input_N,
|
||||
char *input_A, char *input_B,
|
||||
char *input_S, int expected_ret)
|
||||
{
|
||||
mbedtls_mpi_mod_residue a = { NULL, 0 };
|
||||
mbedtls_mpi_mod_residue b = { NULL, 0 };
|
||||
mbedtls_mpi_mod_residue s = { NULL, 0 };
|
||||
mbedtls_mpi_mod_residue x = { NULL, 0 };
|
||||
mbedtls_mpi_uint *X_raw = NULL;
|
||||
|
||||
mbedtls_mpi_mod_modulus m;
|
||||
mbedtls_mpi_mod_modulus_init(&m);
|
||||
|
||||
TEST_EQUAL(0,
|
||||
mbedtls_test_read_mpi_modulus(&m, input_N,
|
||||
MBEDTLS_MPI_MOD_REP_MONTGOMERY));
|
||||
|
||||
/* test_read_residue() normally checks that inputs have the same number of
|
||||
* limbs as the modulus. For negative testing we can ask it to skip this
|
||||
* with a non-zero final parameter. */
|
||||
TEST_EQUAL(0, test_read_residue(&a, &m, input_A, expected_ret != 0));
|
||||
TEST_EQUAL(0, test_read_residue(&b, &m, input_B, expected_ret != 0));
|
||||
TEST_EQUAL(0, test_read_residue(&s, &m, input_S, expected_ret != 0));
|
||||
|
||||
size_t limbs = m.limbs;
|
||||
size_t bytes = limbs * sizeof(*X_raw);
|
||||
|
||||
if (expected_ret == 0) {
|
||||
/* Negative test with too many limbs in output */
|
||||
TEST_CALLOC(X_raw, limbs + 1);
|
||||
|
||||
x.p = X_raw;
|
||||
x.limbs = limbs + 1;
|
||||
TEST_EQUAL(MBEDTLS_ERR_MPI_BAD_INPUT_DATA,
|
||||
mbedtls_mpi_mod_add(&x, &a, &b, &m));
|
||||
|
||||
mbedtls_free(X_raw);
|
||||
X_raw = NULL;
|
||||
|
||||
/* Negative test with too few limbs in output */
|
||||
if (limbs > 1) {
|
||||
TEST_CALLOC(X_raw, limbs - 1);
|
||||
|
||||
x.p = X_raw;
|
||||
x.limbs = limbs - 1;
|
||||
TEST_EQUAL(MBEDTLS_ERR_MPI_BAD_INPUT_DATA,
|
||||
mbedtls_mpi_mod_add(&x, &a, &b, &m));
|
||||
|
||||
mbedtls_free(X_raw);
|
||||
X_raw = NULL;
|
||||
}
|
||||
|
||||
/* Negative testing with too many/too few limbs in a and b is covered by
|
||||
* manually-written test cases with oret != 0. */
|
||||
}
|
||||
|
||||
/* Allocate correct number of limbs for X_raw */
|
||||
TEST_CALLOC(X_raw, limbs);
|
||||
|
||||
TEST_EQUAL(0, mbedtls_mpi_mod_residue_setup(&x, &m, X_raw, limbs));
|
||||
|
||||
/* A + B => Correct result or expected error */
|
||||
TEST_EQUAL(expected_ret, mbedtls_mpi_mod_add(&x, &a, &b, &m));
|
||||
if (expected_ret != 0) {
|
||||
goto exit;
|
||||
}
|
||||
|
||||
TEST_COMPARE_MPI_RESIDUES(x, s);
|
||||
|
||||
/* a + b: alias x to a => Correct result */
|
||||
memcpy(x.p, a.p, bytes);
|
||||
TEST_EQUAL(0, mbedtls_mpi_mod_add(&x, &x, &b, &m));
|
||||
TEST_COMPARE_MPI_RESIDUES(x, s);
|
||||
|
||||
/* a + b: alias x to b => Correct result */
|
||||
memcpy(x.p, b.p, bytes);
|
||||
TEST_EQUAL(0, mbedtls_mpi_mod_add(&x, &a, &x, &m));
|
||||
TEST_COMPARE_MPI_RESIDUES(x, s);
|
||||
|
||||
if (memcmp(a.p, b.p, bytes) == 0) {
|
||||
/* a == b: alias a and b */
|
||||
|
||||
/* a + a => Correct result */
|
||||
TEST_EQUAL(0, mbedtls_mpi_mod_add(&x, &a, &a, &m));
|
||||
TEST_COMPARE_MPI_RESIDUES(x, s);
|
||||
|
||||
/* a + a: x, a, b all aliased together => Correct result */
|
||||
memcpy(x.p, a.p, bytes);
|
||||
TEST_EQUAL(0, mbedtls_mpi_mod_add(&x, &x, &x, &m));
|
||||
TEST_COMPARE_MPI_RESIDUES(x, s);
|
||||
}
|
||||
|
||||
exit:
|
||||
mbedtls_free((void *) m.p); /* mbedtls_mpi_mod_modulus_free() sets m.p = NULL */
|
||||
mbedtls_mpi_mod_modulus_free(&m);
|
||||
|
||||
mbedtls_free(a.p);
|
||||
mbedtls_free(b.p);
|
||||
mbedtls_free(s.p);
|
||||
mbedtls_free(X_raw);
|
||||
}
|
||||
/* END_CASE */
|
||||
|
||||
/* BEGIN_CASE */
|
||||
void mpi_residue_setup(char *input_N, char *input_R, int ret)
|
||||
{
|
||||
mbedtls_mpi_uint *N = NULL;
|
||||
mbedtls_mpi_uint *R = NULL;
|
||||
size_t n_limbs, r_limbs;
|
||||
mbedtls_mpi_mod_modulus m;
|
||||
mbedtls_mpi_mod_residue r;
|
||||
|
||||
mbedtls_mpi_mod_modulus_init(&m);
|
||||
|
||||
/* Allocate the memory for intermediate data structures */
|
||||
TEST_EQUAL(0, mbedtls_test_read_mpi_core(&N, &n_limbs, input_N));
|
||||
TEST_EQUAL(0, mbedtls_test_read_mpi_core(&R, &r_limbs, input_R));
|
||||
|
||||
TEST_EQUAL(0, mbedtls_mpi_mod_modulus_setup(&m, N, n_limbs));
|
||||
|
||||
TEST_EQUAL(ret, mbedtls_mpi_mod_residue_setup(&r, &m, R, r_limbs));
|
||||
|
||||
if (ret == 0) {
|
||||
TEST_EQUAL(r.limbs, r_limbs);
|
||||
TEST_ASSERT(r.p == R);
|
||||
}
|
||||
|
||||
exit:
|
||||
mbedtls_mpi_mod_modulus_free(&m);
|
||||
mbedtls_free(N);
|
||||
mbedtls_free(R);
|
||||
}
|
||||
/* END_CASE */
|
||||
|
||||
/* BEGIN_CASE */
|
||||
void mpi_mod_io_neg(char *input_N, data_t *buf, int ret)
|
||||
{
|
||||
mbedtls_mpi_uint *N = NULL;
|
||||
mbedtls_mpi_uint *R = NULL;
|
||||
|
||||
mbedtls_mpi_mod_modulus m;
|
||||
mbedtls_mpi_mod_residue r = { NULL, 0 };
|
||||
mbedtls_mpi_mod_ext_rep endian = MBEDTLS_MPI_MOD_EXT_REP_LE;
|
||||
|
||||
mbedtls_mpi_mod_modulus_init(&m);
|
||||
|
||||
size_t n_limbs;
|
||||
TEST_EQUAL(0, mbedtls_test_read_mpi_core(&N, &n_limbs, input_N));
|
||||
size_t r_limbs = n_limbs;
|
||||
TEST_CALLOC(R, r_limbs);
|
||||
|
||||
/* modulus->p == NULL || residue->p == NULL ( m has not been set-up ) */
|
||||
TEST_EQUAL(MBEDTLS_ERR_MPI_BAD_INPUT_DATA,
|
||||
mbedtls_mpi_mod_read(&r, &m, buf->x, buf->len, endian));
|
||||
|
||||
TEST_EQUAL(MBEDTLS_ERR_MPI_BAD_INPUT_DATA,
|
||||
mbedtls_mpi_mod_write(&r, &m, buf->x, buf->len, endian));
|
||||
|
||||
/* Set up modulus and test with residue->p == NULL */
|
||||
TEST_EQUAL(0, mbedtls_mpi_mod_modulus_setup(&m, N, n_limbs));
|
||||
|
||||
TEST_EQUAL(MBEDTLS_ERR_MPI_BAD_INPUT_DATA,
|
||||
mbedtls_mpi_mod_read(&r, &m, buf->x, buf->len, endian));
|
||||
TEST_EQUAL(MBEDTLS_ERR_MPI_BAD_INPUT_DATA,
|
||||
mbedtls_mpi_mod_write(&r, &m, buf->x, buf->len, endian));
|
||||
|
||||
/* Do the rest of the tests with a residue set up with the input data */
|
||||
TEST_EQUAL(0, mbedtls_mpi_mod_residue_setup(&r, &m, R, r_limbs));
|
||||
|
||||
/* Fail for r_limbs < m->limbs */
|
||||
r.limbs--;
|
||||
TEST_ASSERT(r.limbs < m.limbs);
|
||||
TEST_EQUAL(MBEDTLS_ERR_MPI_BAD_INPUT_DATA,
|
||||
mbedtls_mpi_mod_read(&r, &m, buf->x, buf->len, endian));
|
||||
TEST_EQUAL(MBEDTLS_ERR_MPI_BAD_INPUT_DATA,
|
||||
mbedtls_mpi_mod_write(&r, &m, buf->x, buf->len, endian));
|
||||
r.limbs++;
|
||||
|
||||
/* Fail for r_limbs > m->limbs */
|
||||
m.limbs--;
|
||||
TEST_ASSERT(r.limbs > m.limbs);
|
||||
TEST_EQUAL(MBEDTLS_ERR_MPI_BAD_INPUT_DATA,
|
||||
mbedtls_mpi_mod_read(&r, &m, buf->x, buf->len, endian));
|
||||
TEST_EQUAL(MBEDTLS_ERR_MPI_BAD_INPUT_DATA,
|
||||
mbedtls_mpi_mod_write(&r, &m, buf->x, buf->len, endian));
|
||||
m.limbs++;
|
||||
|
||||
/* Test the read */
|
||||
TEST_EQUAL(ret, mbedtls_mpi_mod_read(&r, &m, buf->x, buf->len, endian));
|
||||
|
||||
/* Test write overflow only when the representation is large and read is successful */
|
||||
if (r.limbs > 1 && ret == 0) {
|
||||
TEST_EQUAL(MBEDTLS_ERR_MPI_BUFFER_TOO_SMALL,
|
||||
mbedtls_mpi_mod_write(&r, &m, buf->x, 1, endian));
|
||||
}
|
||||
|
||||
exit:
|
||||
mbedtls_mpi_mod_residue_release(&r);
|
||||
mbedtls_mpi_mod_modulus_free(&m);
|
||||
mbedtls_free(N);
|
||||
mbedtls_free(R);
|
||||
}
|
||||
/* END_CASE */
|
||||
|
||||
/* BEGIN_CASE */
|
||||
void mpi_mod_io(char *input_N, data_t *input_A, int endian)
|
||||
{
|
||||
mbedtls_mpi_uint *N = NULL;
|
||||
mbedtls_mpi_uint *R = NULL;
|
||||
mbedtls_mpi_uint *R_COPY = NULL;
|
||||
unsigned char *obuf = NULL;
|
||||
unsigned char *ref_buf = NULL;
|
||||
mbedtls_mpi_mod_modulus m;
|
||||
mbedtls_mpi_mod_residue r;
|
||||
mbedtls_mpi_mod_residue r_copy;
|
||||
size_t n_limbs, n_bytes, a_bytes;
|
||||
|
||||
mbedtls_mpi_mod_modulus_init(&m);
|
||||
|
||||
/* Read inputs */
|
||||
TEST_EQUAL(0, mbedtls_test_read_mpi_core(&N, &n_limbs, input_N));
|
||||
n_bytes = n_limbs * sizeof(mbedtls_mpi_uint);
|
||||
a_bytes = input_A->len;
|
||||
|
||||
/* Allocate the memory for intermediate data structures */
|
||||
TEST_CALLOC(R, n_bytes);
|
||||
TEST_CALLOC(R_COPY, n_bytes);
|
||||
|
||||
/* Test that input's size is not greater to modulo's */
|
||||
TEST_LE_U(a_bytes, n_bytes);
|
||||
|
||||
/* Init Structures */
|
||||
TEST_EQUAL(0, mbedtls_mpi_mod_modulus_setup(&m, N, n_limbs));
|
||||
|
||||
/* Enforcing p_limbs >= m->limbs */
|
||||
TEST_EQUAL(0, mbedtls_mpi_mod_residue_setup(&r, &m, R, n_limbs));
|
||||
|
||||
TEST_EQUAL(0, mbedtls_mpi_mod_read(&r, &m, input_A->x, input_A->len,
|
||||
endian));
|
||||
|
||||
/* Read a copy for checking that writing didn't change the value of r */
|
||||
TEST_EQUAL(0, mbedtls_mpi_mod_residue_setup(&r_copy, &m,
|
||||
R_COPY, n_limbs));
|
||||
TEST_EQUAL(0, mbedtls_mpi_mod_read(&r_copy, &m, input_A->x, input_A->len,
|
||||
endian));
|
||||
|
||||
/* Get number of bytes without leading zeroes */
|
||||
size_t a_bytes_trimmed = a_bytes;
|
||||
while (a_bytes_trimmed > 0) {
|
||||
unsigned char *r_byte_array = (unsigned char *) r.p;
|
||||
if (r_byte_array[--a_bytes_trimmed] != 0) {
|
||||
break;
|
||||
}
|
||||
}
|
||||
a_bytes_trimmed++;
|
||||
|
||||
/* Test write with three output buffer sizes: tight, same as input and
|
||||
* longer than the input */
|
||||
size_t obuf_sizes[3];
|
||||
const size_t obuf_sizes_len = sizeof(obuf_sizes) / sizeof(obuf_sizes[0]);
|
||||
obuf_sizes[0] = a_bytes_trimmed;
|
||||
obuf_sizes[1] = a_bytes;
|
||||
obuf_sizes[2] = a_bytes + 8;
|
||||
|
||||
for (size_t i = 0; i < obuf_sizes_len; i++) {
|
||||
TEST_CALLOC(obuf, obuf_sizes[i]);
|
||||
TEST_EQUAL(0, mbedtls_mpi_mod_write(&r, &m, obuf, obuf_sizes[i], endian));
|
||||
|
||||
/* Make sure that writing didn't corrupt the value of r */
|
||||
TEST_MEMORY_COMPARE(r.p, r.limbs, r_copy.p, r_copy.limbs);
|
||||
|
||||
/* Set up reference output for checking the result */
|
||||
TEST_CALLOC(ref_buf, obuf_sizes[i]);
|
||||
switch (endian) {
|
||||
case MBEDTLS_MPI_MOD_EXT_REP_LE:
|
||||
memcpy(ref_buf, input_A->x, a_bytes_trimmed);
|
||||
break;
|
||||
case MBEDTLS_MPI_MOD_EXT_REP_BE:
|
||||
{
|
||||
size_t a_offset = input_A->len - a_bytes_trimmed;
|
||||
size_t ref_offset = obuf_sizes[i] - a_bytes_trimmed;
|
||||
memcpy(ref_buf + ref_offset, input_A->x + a_offset,
|
||||
a_bytes_trimmed);
|
||||
}
|
||||
break;
|
||||
default:
|
||||
TEST_ASSERT(0);
|
||||
}
|
||||
|
||||
/* Check the result */
|
||||
TEST_MEMORY_COMPARE(obuf, obuf_sizes[i], ref_buf, obuf_sizes[i]);
|
||||
|
||||
mbedtls_free(ref_buf);
|
||||
ref_buf = NULL;
|
||||
mbedtls_free(obuf);
|
||||
obuf = NULL;
|
||||
}
|
||||
|
||||
exit:
|
||||
mbedtls_mpi_mod_modulus_free(&m);
|
||||
mbedtls_free(N);
|
||||
mbedtls_free(R);
|
||||
mbedtls_free(R_COPY);
|
||||
mbedtls_free(obuf);
|
||||
mbedtls_free(ref_buf);
|
||||
}
|
||||
/* END_CASE */
|
||||
6781
vendor/mbedtls/tests/suites/test_suite_bignum_mod.generated.data
vendored
Normal file
6781
vendor/mbedtls/tests/suites/test_suite_bignum_mod.generated.data
vendored
Normal file
File diff suppressed because it is too large
Load Diff
370
vendor/mbedtls/tests/suites/test_suite_bignum_mod.misc.data
vendored
Normal file
370
vendor/mbedtls/tests/suites/test_suite_bignum_mod.misc.data
vendored
Normal file
@@ -0,0 +1,370 @@
|
||||
Test mbedtls_mpi_mod_setup #1 (Internal representation invalid)
|
||||
mpi_mod_setup:MBEDTLS_MPI_MOD_REP_INVALID:MBEDTLS_ERR_MPI_BAD_INPUT_DATA
|
||||
|
||||
Test mbedtls_mpi_mod_setup #6 (Optimised reduction)
|
||||
mpi_mod_setup:MBEDTLS_MPI_MOD_REP_OPT_RED:0
|
||||
|
||||
Test mbedtls_mpi_mod_setup #7 (Montgomery representation)
|
||||
mpi_mod_setup:MBEDTLS_MPI_MOD_REP_MONTGOMERY:0
|
||||
|
||||
Test mpi_mod_mul #1 N->limbs != A->limbs
|
||||
mpi_mod_mul_neg:"1":"00000000000000000000000000000000":"f0000000000000000000000000000000":"0":MBEDTLS_ERR_MPI_BAD_INPUT_DATA
|
||||
|
||||
Test mpi_mod_mul #2 N->limbs != B->limbs
|
||||
mpi_mod_mul_neg:"1234567890abcdef1234567890abcdef":"0":"f0000000000000000000000000000000":"0":MBEDTLS_ERR_MPI_BAD_INPUT_DATA
|
||||
|
||||
Test mpi_mod_mul #3 N->limbs != X->limbs
|
||||
mpi_mod_mul_neg:"1234567890abcdef1234567890abcdef":"00000000000000000000000000000000":"f0000000000000000000000000000000":"0":MBEDTLS_ERR_MPI_BAD_INPUT_DATA
|
||||
|
||||
mpi_mod_sub base case for negative testing (N, a, b all >= 1 limb)
|
||||
mpi_mod_sub:"014320a022ccb75bdf470ddf25":"000000025a55a46e5da99c71c7":"00033b2e3c9fd0803ce8000f93":"013fe57440828b4a0008aa4159":0
|
||||
|
||||
mpi_mod_sub with modulus too long/both inputs too short
|
||||
mpi_mod_sub:"0000000014320a022ccb75bdf470ddf25":"000000025a55a46e5da99c71c7":"00033b2e3c9fd0803ce8000f93":"00":MBEDTLS_ERR_MPI_BAD_INPUT_DATA
|
||||
|
||||
mpi_mod_sub with first input too long
|
||||
mpi_mod_sub:"014320a022ccb75bdf470ddf25":"0000000000000025a55a46e5da99c71c7":"00033b2e3c9fd0803ce8000f93":"00":MBEDTLS_ERR_MPI_BAD_INPUT_DATA
|
||||
|
||||
mpi_mod_sub with second input too long
|
||||
mpi_mod_sub:"014320a022ccb75bdf470ddf25":"000000025a55a46e5da99c71c7":"000000000033b2e3c9fd0803ce8000f93":"00":MBEDTLS_ERR_MPI_BAD_INPUT_DATA
|
||||
|
||||
mpi_mod_sub with both inputs too long
|
||||
mpi_mod_sub:"014320a022ccb75bdf470ddf25":"0000000000000025a55a46e5da99c71c7":"000000000033b2e3c9fd0803ce8000f93":"00":MBEDTLS_ERR_MPI_BAD_INPUT_DATA
|
||||
|
||||
mpi_mod_sub with first input too short
|
||||
mpi_mod_sub:"014320a022ccb75bdf470ddf25":"a99c71c7":"00033b2e3c9fd0803ce8000f93":"00":MBEDTLS_ERR_MPI_BAD_INPUT_DATA
|
||||
|
||||
mpi_mod_sub with second input too short
|
||||
mpi_mod_sub:"014320a022ccb75bdf470ddf25":"000000025a55a46e5da99c71c7":"e8000f93":"00":MBEDTLS_ERR_MPI_BAD_INPUT_DATA
|
||||
|
||||
mbedtls_mpi_mod_inv non-Mont. form - base case for negative testing (N, A, A^-1)
|
||||
mpi_mod_inv_non_mont:"000000000000152d02c7e14af67fe0bf":"00000000000000000000000000000038":"000000000000097418193b6f2e0b5fc3":0
|
||||
|
||||
mbedtls_mpi_mod_inv non-Mont. form - A == 0
|
||||
mpi_mod_inv_non_mont:"000000000000152d02c7e14af67fe0bf":"00000000000000000000000000000000":"00":MBEDTLS_ERR_MPI_BAD_INPUT_DATA
|
||||
|
||||
mbedtls_mpi_mod_inv non-Mont. form - A too long
|
||||
mpi_mod_inv_non_mont:"000000000000152d02c7e14af67fe0bf":"0000000000000000000000000000000000000038":"00":MBEDTLS_ERR_MPI_BAD_INPUT_DATA
|
||||
|
||||
mbedtls_mpi_mod_inv non-Mont. form - A too short
|
||||
mpi_mod_inv_non_mont:"000000000000152d02c7e14af67fe0bf":"0000000000000038":"000000000000097418193b6f2e0b5fc3":MBEDTLS_ERR_MPI_BAD_INPUT_DATA
|
||||
|
||||
mbedtls_mpi_mod_inv 32-bit Mont. form - base case for negative testing, A = 1 (N, mont(A), mont(A^-1))
|
||||
depends_on:MBEDTLS_HAVE_INT32
|
||||
mpi_mod_inv_mont:"000000000000152d02c7e14af67fe0bf":"0000000000000d71d51539b9c02b7b28":"0000000000000d71d51539b9c02b7b28":0
|
||||
|
||||
mbedtls_mpi_mod_inv 32-bit Mont. form - A == 0
|
||||
depends_on:MBEDTLS_HAVE_INT32
|
||||
mpi_mod_inv_mont:"000000000000152d02c7e14af67fe0bf":"00000000000000000000000000000000":"00":MBEDTLS_ERR_MPI_BAD_INPUT_DATA
|
||||
|
||||
mbedtls_mpi_mod_inv 32-bit Mont. form - A too long
|
||||
depends_on:MBEDTLS_HAVE_INT32
|
||||
mpi_mod_inv_mont:"000000000000152d02c7e14af67fe0bf":"000000000000000000000d71d51539b9c02b7b28":"00":MBEDTLS_ERR_MPI_BAD_INPUT_DATA
|
||||
|
||||
mbedtls_mpi_mod_inv 32-bit Mont. form - A too short
|
||||
depends_on:MBEDTLS_HAVE_INT32
|
||||
mpi_mod_inv_mont:"000000000000152d02c7e14af67fe0bf":"00000d71d51539b9c02b7b28":"0000000000000d71d51539b9c02b7b28":MBEDTLS_ERR_MPI_BAD_INPUT_DATA
|
||||
|
||||
mbedtls_mpi_mod_inv 64-bit Mont. form - base case for negative testing, A = 1 (N, mont(A), mont(A^-1))
|
||||
depends_on:MBEDTLS_HAVE_INT64
|
||||
mpi_mod_inv_mont:"0000000000000000000000000000152d02c7e14af67fe0bf":"000000000000000000000000000009545642424381c611fb":"000000000000000000000000000009545642424381c611fb":0
|
||||
|
||||
mbedtls_mpi_mod_inv 64-bit Mont. form - A == 0
|
||||
depends_on:MBEDTLS_HAVE_INT64
|
||||
mpi_mod_inv_mont:"0000000000000000000000000000152d02c7e14af67fe0bf":"000000000000000000000000000000000000000000000000":"000000000000000000000000000009545642424381c611fb":MBEDTLS_ERR_MPI_BAD_INPUT_DATA
|
||||
|
||||
mbedtls_mpi_mod_inv 64-bit Mont. form - A too long
|
||||
depends_on:MBEDTLS_HAVE_INT64
|
||||
mpi_mod_inv_mont:"0000000000000000000000000000152d02c7e14af67fe0bf":"0000000000000000000000000000000000000000000009545642424381c611fb":"000000000000000000000000000009545642424381c611fb":MBEDTLS_ERR_MPI_BAD_INPUT_DATA
|
||||
|
||||
mbedtls_mpi_mod_inv 64-bit Mont. form - A too short
|
||||
depends_on:MBEDTLS_HAVE_INT64
|
||||
mpi_mod_inv_mont:"0000000000000000000000000000152d02c7e14af67fe0bf":"00000000000009545642424381c611fb":"000000000000000000000000000009545642424381c611fb":MBEDTLS_ERR_MPI_BAD_INPUT_DATA
|
||||
|
||||
mpi_mod_add base case for negative testing (N, a, b all >= 1 limb)
|
||||
mpi_mod_add:"014320a022ccb75bdf470ddf25":"000000025a55a46e5da99c71c7":"00033b2e3c9fd0803ce8000f93":"00033b3096f574ee9a919c815a":0
|
||||
|
||||
mpi_mod_add with modulus too long/both inputs too short
|
||||
mpi_mod_add:"0000000014320a022ccb75bdf470ddf25":"000000025a55a46e5da99c71c7":"00033b2e3c9fd0803ce8000f93":"00":MBEDTLS_ERR_MPI_BAD_INPUT_DATA
|
||||
|
||||
mpi_mod_add with first input too long
|
||||
mpi_mod_add:"014320a022ccb75bdf470ddf25":"0000000000000025a55a46e5da99c71c7":"00033b2e3c9fd0803ce8000f93":"00":MBEDTLS_ERR_MPI_BAD_INPUT_DATA
|
||||
|
||||
mpi_mod_add with second input too long
|
||||
mpi_mod_add:"014320a022ccb75bdf470ddf25":"000000025a55a46e5da99c71c7":"000000000033b2e3c9fd0803ce8000f93":"00":MBEDTLS_ERR_MPI_BAD_INPUT_DATA
|
||||
|
||||
mpi_mod_add with both inputs too long
|
||||
mpi_mod_add:"014320a022ccb75bdf470ddf25":"0000000000000025a55a46e5da99c71c7":"000000000033b2e3c9fd0803ce8000f93":"00":MBEDTLS_ERR_MPI_BAD_INPUT_DATA
|
||||
|
||||
mpi_mod_add with first input too short
|
||||
mpi_mod_add:"014320a022ccb75bdf470ddf25":"a99c71c7":"00033b2e3c9fd0803ce8000f93":"00":MBEDTLS_ERR_MPI_BAD_INPUT_DATA
|
||||
|
||||
mpi_mod_add with second input too short
|
||||
mpi_mod_add:"014320a022ccb75bdf470ddf25":"000000025a55a46e5da99c71c7":"e8000f93":"00":MBEDTLS_ERR_MPI_BAD_INPUT_DATA
|
||||
|
||||
Test mbedtls_mpi_residue_setup #1 m > r
|
||||
mpi_residue_setup:"fe":"01":0
|
||||
|
||||
Test mbedtls_mpi_residue_setup #2 r == m - 1
|
||||
mpi_residue_setup:"ff":"fe":0
|
||||
|
||||
Test mbedtls_mpi_residue_setup #3 m->limbs = r-> limbs && m > r
|
||||
mpi_residue_setup:"7dfe5c6":"fe":0
|
||||
|
||||
Test mbedtls_mpi_residue_setup #4 m->limbs = r-> limbs && m > r
|
||||
mpi_residue_setup:"7ffffffffffffffffffffffffffffffffffffffffffffff1":"0000000000000000000000000000000000000000000000fe":0
|
||||
|
||||
Test mbedtls_mpi_residue_setup #5 m->limbs > r-> limbs && m > r
|
||||
mpi_residue_setup:"7ffffffff00000000":"fe":MBEDTLS_ERR_MPI_BAD_INPUT_DATA
|
||||
|
||||
Test mbedtls_mpi_residue_setup #6 m->limbs < r-> limbs && m > r
|
||||
mpi_residue_setup:"ff":"000000000000000000000000000000000000000000000001":MBEDTLS_ERR_MPI_BAD_INPUT_DATA
|
||||
|
||||
Test mbedtls_mpi_residue_setup #7 r == m
|
||||
mpi_residue_setup:"fe":"fe":-4
|
||||
|
||||
Test mbedtls_mpi_residue_setup #8 r > m
|
||||
mpi_residue_setup:"fe":"ff":-4
|
||||
|
||||
Test mbedtls_mpi_mod_io_neg #1 input_r < modulo m
|
||||
mpi_mod_io_neg:"fe":"fd":0
|
||||
|
||||
Test mbedtls_mpi_mod_io_neg #2 input_r == modulo m
|
||||
mpi_mod_io_neg:"fe":"fe":MBEDTLS_ERR_MPI_BAD_INPUT_DATA
|
||||
|
||||
Test mbedtls_mpi_mod_io_neg #3 input_r > modulo m
|
||||
mpi_mod_io_neg:"fe":"ff":MBEDTLS_ERR_MPI_BAD_INPUT_DATA
|
||||
|
||||
Test mbedtls_mpi_mod_io_neg #4 input_r too large to fit
|
||||
mpi_mod_io_neg:"fe":"ffffffffffffffffff":MBEDTLS_ERR_MPI_BUFFER_TOO_SMALL
|
||||
|
||||
Test mbedtls_mpi_mod_io_neg #5 Sucesfull read / output buffer too small
|
||||
mpi_mod_io_neg:"7ffffffffffffffffffffffffffffff1":"ffff":0
|
||||
|
||||
Test mbedtls_mpi_mod_io #1 N: "11" A: "119".
|
||||
mpi_mod_io:"000000000000000b":"0000000000000000":MBEDTLS_MPI_MOD_EXT_REP_BE
|
||||
|
||||
Test mbedtls_mpi_mod_io #2 N: "11" A: "136".
|
||||
mpi_mod_io:"000000000000000b":"0000000000000000":MBEDTLS_MPI_MOD_EXT_REP_LE
|
||||
|
||||
Test mbedtls_mpi_mod_io #3 N: "11" A: "119".
|
||||
mpi_mod_io:"000000000000000b":"0000000000000001":MBEDTLS_MPI_MOD_EXT_REP_BE
|
||||
|
||||
Test mbedtls_mpi_mod_io #4 N: "11" A: "136".
|
||||
mpi_mod_io:"000000000000000b":"0100000000000000":MBEDTLS_MPI_MOD_EXT_REP_LE
|
||||
|
||||
Test mbedtls_mpi_mod_io #5 N: "140737488355333" A: "119".
|
||||
mpi_mod_io:"0000800000000005":"0000000000000000":MBEDTLS_MPI_MOD_EXT_REP_BE
|
||||
|
||||
Test mbedtls_mpi_mod_io #6 N: "140737488355333" A: "136".
|
||||
mpi_mod_io:"0000800000000005":"0000000000000000":MBEDTLS_MPI_MOD_EXT_REP_LE
|
||||
|
||||
Test mbedtls_mpi_mod_io #7 N: "140737488355333" A: "119".
|
||||
mpi_mod_io:"0000800000000005":"0000000000000001":MBEDTLS_MPI_MOD_EXT_REP_BE
|
||||
|
||||
Test mbedtls_mpi_mod_io #8 N: "140737488355333" A: "136".
|
||||
mpi_mod_io:"0000800000000005":"0100000000000000":MBEDTLS_MPI_MOD_EXT_REP_LE
|
||||
|
||||
Test mbedtls_mpi_mod_io #9 N: "140737488355333" A: "119".
|
||||
mpi_mod_io:"0000800000000005":"00000000000003ca":MBEDTLS_MPI_MOD_EXT_REP_BE
|
||||
|
||||
Test mbedtls_mpi_mod_io #10 N: "140737488355333" A: "136".
|
||||
mpi_mod_io:"0000800000000005":"ca03000000000000":MBEDTLS_MPI_MOD_EXT_REP_LE
|
||||
|
||||
Test mbedtls_mpi_mod_io #11 N: "140737488355333" A: "119".
|
||||
mpi_mod_io:"0000800000000005":"00000000539ed428":MBEDTLS_MPI_MOD_EXT_REP_BE
|
||||
|
||||
Test mbedtls_mpi_mod_io #12 N: "140737488355333" A: "136".
|
||||
mpi_mod_io:"0000800000000005":"28d49e5300000000":MBEDTLS_MPI_MOD_EXT_REP_LE
|
||||
|
||||
Test mbedtls_mpi_mod_io #13 N: "9223372036854775807" A: "119".
|
||||
mpi_mod_io:"7fffffffffffffff":"0000000000000000":MBEDTLS_MPI_MOD_EXT_REP_BE
|
||||
|
||||
Test mbedtls_mpi_mod_io #14 N: "9223372036854775807" A: "136".
|
||||
mpi_mod_io:"7fffffffffffffff":"0000000000000000":MBEDTLS_MPI_MOD_EXT_REP_LE
|
||||
|
||||
Test mbedtls_mpi_mod_io #15 N: "9223372036854775807" A: "119".
|
||||
mpi_mod_io:"7fffffffffffffff":"0000000000000001":MBEDTLS_MPI_MOD_EXT_REP_BE
|
||||
|
||||
Test mbedtls_mpi_mod_io #16 N: "9223372036854775807" A: "136".
|
||||
mpi_mod_io:"7fffffffffffffff":"0100000000000000":MBEDTLS_MPI_MOD_EXT_REP_LE
|
||||
|
||||
Test mbedtls_mpi_mod_io #17 N: "9223372036854775807" A: "119".
|
||||
mpi_mod_io:"7fffffffffffffff":"00000000000003ca":MBEDTLS_MPI_MOD_EXT_REP_BE
|
||||
|
||||
Test mbedtls_mpi_mod_io #18 N: "9223372036854775807" A: "136".
|
||||
mpi_mod_io:"7fffffffffffffff":"ca03000000000000":MBEDTLS_MPI_MOD_EXT_REP_LE
|
||||
|
||||
Test mbedtls_mpi_mod_io #19 N: "9223372036854775807" A: "119".
|
||||
mpi_mod_io:"7fffffffffffffff":"00000000539ed428":MBEDTLS_MPI_MOD_EXT_REP_BE
|
||||
|
||||
Test mbedtls_mpi_mod_io #20 N: "9223372036854775807" A: "136".
|
||||
mpi_mod_io:"7fffffffffffffff":"28d49e5300000000":MBEDTLS_MPI_MOD_EXT_REP_LE
|
||||
|
||||
Test mbedtls_mpi_mod_io #21 N: "9223372036854775807" A: "119".
|
||||
mpi_mod_io:"7fffffffffffffff":"7dfe5c6beb35a2d6":MBEDTLS_MPI_MOD_EXT_REP_BE
|
||||
|
||||
Test mbedtls_mpi_mod_io #22 N: "9223372036854775807" A: "136".
|
||||
mpi_mod_io:"7fffffffffffffff":"d6a235eb6b5cfe7d":MBEDTLS_MPI_MOD_EXT_REP_LE
|
||||
|
||||
Test mbedtls_mpi_mod_io #23 N: "6610145858169835373800827072568987987787972943497619105736762797475099959212160692262984293277166612477845864397201463825139894315919781838969391314120587" A: "119".
|
||||
mpi_mod_io:"7e35b84cb19ea5bc57ec37f5e431462fa962d98c1e63738d4657f18ad6532e6adc3eafe67f1e5fa262af94cee8d3e7268593942a2a98df75154f8c914a282f8b":"00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000":MBEDTLS_MPI_MOD_EXT_REP_BE
|
||||
|
||||
Test mbedtls_mpi_mod_io #24 N: "6610145858169835373800827072568987987787972943497619105736762797475099959212160692262984293277166612477845864397201463825139894315919781838969391314120587" A: "136".
|
||||
mpi_mod_io:"7e35b84cb19ea5bc57ec37f5e431462fa962d98c1e63738d4657f18ad6532e6adc3eafe67f1e5fa262af94cee8d3e7268593942a2a98df75154f8c914a282f8b":"00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000":MBEDTLS_MPI_MOD_EXT_REP_LE
|
||||
|
||||
Test mbedtls_mpi_mod_io #25 N: "6610145858169835373800827072568987987787972943497619105736762797475099959212160692262984293277166612477845864397201463825139894315919781838969391314120587" A: "119".
|
||||
mpi_mod_io:"7e35b84cb19ea5bc57ec37f5e431462fa962d98c1e63738d4657f18ad6532e6adc3eafe67f1e5fa262af94cee8d3e7268593942a2a98df75154f8c914a282f8b":"00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001":MBEDTLS_MPI_MOD_EXT_REP_BE
|
||||
|
||||
Test mbedtls_mpi_mod_io #26 N: "6610145858169835373800827072568987987787972943497619105736762797475099959212160692262984293277166612477845864397201463825139894315919781838969391314120587" A: "136".
|
||||
mpi_mod_io:"7e35b84cb19ea5bc57ec37f5e431462fa962d98c1e63738d4657f18ad6532e6adc3eafe67f1e5fa262af94cee8d3e7268593942a2a98df75154f8c914a282f8b":"01000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000":MBEDTLS_MPI_MOD_EXT_REP_LE
|
||||
|
||||
Test mbedtls_mpi_mod_io #27 N: "6610145858169835373800827072568987987787972943497619105736762797475099959212160692262984293277166612477845864397201463825139894315919781838969391314120587" A: "119".
|
||||
mpi_mod_io:"7e35b84cb19ea5bc57ec37f5e431462fa962d98c1e63738d4657f18ad6532e6adc3eafe67f1e5fa262af94cee8d3e7268593942a2a98df75154f8c914a282f8b":"000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000003ca":MBEDTLS_MPI_MOD_EXT_REP_BE
|
||||
|
||||
Test mbedtls_mpi_mod_io #28 N: "6610145858169835373800827072568987987787972943497619105736762797475099959212160692262984293277166612477845864397201463825139894315919781838969391314120587" A: "136".
|
||||
mpi_mod_io:"7e35b84cb19ea5bc57ec37f5e431462fa962d98c1e63738d4657f18ad6532e6adc3eafe67f1e5fa262af94cee8d3e7268593942a2a98df75154f8c914a282f8b":"ca030000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000":MBEDTLS_MPI_MOD_EXT_REP_LE
|
||||
|
||||
Test mbedtls_mpi_mod_io #29 N: "6610145858169835373800827072568987987787972943497619105736762797475099959212160692262984293277166612477845864397201463825139894315919781838969391314120587" A: "119".
|
||||
mpi_mod_io:"7e35b84cb19ea5bc57ec37f5e431462fa962d98c1e63738d4657f18ad6532e6adc3eafe67f1e5fa262af94cee8d3e7268593942a2a98df75154f8c914a282f8b":"000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000539ed428":MBEDTLS_MPI_MOD_EXT_REP_BE
|
||||
|
||||
Test mbedtls_mpi_mod_io #30 N: "6610145858169835373800827072568987987787972943497619105736762797475099959212160692262984293277166612477845864397201463825139894315919781838969391314120587" A: "136".
|
||||
mpi_mod_io:"7e35b84cb19ea5bc57ec37f5e431462fa962d98c1e63738d4657f18ad6532e6adc3eafe67f1e5fa262af94cee8d3e7268593942a2a98df75154f8c914a282f8b":"28d49e53000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000":MBEDTLS_MPI_MOD_EXT_REP_LE
|
||||
|
||||
Test mbedtls_mpi_mod_io #31 N: "6610145858169835373800827072568987987787972943497619105736762797475099959212160692262984293277166612477845864397201463825139894315919781838969391314120587" A: "119".
|
||||
mpi_mod_io:"7e35b84cb19ea5bc57ec37f5e431462fa962d98c1e63738d4657f18ad6532e6adc3eafe67f1e5fa262af94cee8d3e7268593942a2a98df75154f8c914a282f8b":"00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000007dfe5c6beb35a2d6":MBEDTLS_MPI_MOD_EXT_REP_BE
|
||||
|
||||
Test mbedtls_mpi_mod_io #32 N: "6610145858169835373800827072568987987787972943497619105736762797475099959212160692262984293277166612477845864397201463825139894315919781838969391314120587" A: "136".
|
||||
mpi_mod_io:"7e35b84cb19ea5bc57ec37f5e431462fa962d98c1e63738d4657f18ad6532e6adc3eafe67f1e5fa262af94cee8d3e7268593942a2a98df75154f8c914a282f8b":"d6a235eb6b5cfe7d0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000":MBEDTLS_MPI_MOD_EXT_REP_LE
|
||||
|
||||
Test mbedtls_mpi_mod_io #33 N: "6610145858169835373800827072568987987787972943497619105736762797475099959212160692262984293277166612477845864397201463825139894315919781838969391314120587" A: "119".
|
||||
mpi_mod_io:"7e35b84cb19ea5bc57ec37f5e431462fa962d98c1e63738d4657f18ad6532e6adc3eafe67f1e5fa262af94cee8d3e7268593942a2a98df75154f8c914a282f8b":"0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000dca8de1c2adfc6d7aafb9b48e":MBEDTLS_MPI_MOD_EXT_REP_BE
|
||||
|
||||
Test mbedtls_mpi_mod_io #34 N: "6610145858169835373800827072568987987787972943497619105736762797475099959212160692262984293277166612477845864397201463825139894315919781838969391314120587" A: "136".
|
||||
mpi_mod_io:"7e35b84cb19ea5bc57ec37f5e431462fa962d98c1e63738d4657f18ad6532e6adc3eafe67f1e5fa262af94cee8d3e7268593942a2a98df75154f8c914a282f8b":"8eb4b9af7a6dfcadc2e18dca0d000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000":MBEDTLS_MPI_MOD_EXT_REP_LE
|
||||
|
||||
Test mbedtls_mpi_mod_io #35 N: "6610145858169835373800827072568987987787972943497619105736762797475099959212160692262984293277166612477845864397201463825139894315919781838969391314120587" A: "119".
|
||||
mpi_mod_io:"7e35b84cb19ea5bc57ec37f5e431462fa962d98c1e63738d4657f18ad6532e6adc3eafe67f1e5fa262af94cee8d3e7268593942a2a98df75154f8c914a282f8b":"00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a7d17b6c4be72f3d5c16bf9c1af6fc933":MBEDTLS_MPI_MOD_EXT_REP_BE
|
||||
|
||||
Test mbedtls_mpi_mod_io #36 N: "6610145858169835373800827072568987987787972943497619105736762797475099959212160692262984293277166612477845864397201463825139894315919781838969391314120587" A: "136".
|
||||
mpi_mod_io:"7e35b84cb19ea5bc57ec37f5e431462fa962d98c1e63738d4657f18ad6532e6adc3eafe67f1e5fa262af94cee8d3e7268593942a2a98df75154f8c914a282f8b":"33c96fafc1f96bc1d5f372bec4b6177d0a0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000":MBEDTLS_MPI_MOD_EXT_REP_LE
|
||||
|
||||
Test mbedtls_mpi_mod_io #37 N: "6610145858169835373800827072568987987787972943497619105736762797475099959212160692262984293277166612477845864397201463825139894315919781838969391314120587" A: "119".
|
||||
mpi_mod_io:"7e35b84cb19ea5bc57ec37f5e431462fa962d98c1e63738d4657f18ad6532e6adc3eafe67f1e5fa262af94cee8d3e7268593942a2a98df75154f8c914a282f8b":"000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002fec97beec546f9553142ed52f147845463f579":MBEDTLS_MPI_MOD_EXT_REP_BE
|
||||
|
||||
Test mbedtls_mpi_mod_io #38 N: "6610145858169835373800827072568987987787972943497619105736762797475099959212160692262984293277166612477845864397201463825139894315919781838969391314120587" A: "136".
|
||||
mpi_mod_io:"7e35b84cb19ea5bc57ec37f5e431462fa962d98c1e63738d4657f18ad6532e6adc3eafe67f1e5fa262af94cee8d3e7268593942a2a98df75154f8c914a282f8b":"79f563548447f152ed423155f946c5ee7bc9fe020000000000000000000000000000000000000000000000000000000000000000000000000000000000000000":MBEDTLS_MPI_MOD_EXT_REP_LE
|
||||
|
||||
Test mbedtls_mpi_mod_io #39 N: "6610145858169835373800827072568987987787972943497619105736762797475099959212160692262984293277166612477845864397201463825139894315919781838969391314120587" A: "119".
|
||||
mpi_mod_io:"7e35b84cb19ea5bc57ec37f5e431462fa962d98c1e63738d4657f18ad6532e6adc3eafe67f1e5fa262af94cee8d3e7268593942a2a98df75154f8c914a282f8b":"00000000000000000000000000000000000000000000000000000000000000000000000000000000378dc83b8bc5a7b62cba495af4919578dce6d4f175cadc4f":MBEDTLS_MPI_MOD_EXT_REP_BE
|
||||
|
||||
Test mbedtls_mpi_mod_io #40 N: "6610145858169835373800827072568987987787972943497619105736762797475099959212160692262984293277166612477845864397201463825139894315919781838969391314120587" A: "136".
|
||||
mpi_mod_io:"7e35b84cb19ea5bc57ec37f5e431462fa962d98c1e63738d4657f18ad6532e6adc3eafe67f1e5fa262af94cee8d3e7268593942a2a98df75154f8c914a282f8b":"4fdcca75f1d4e6dc789591f45a49ba2cb6a7c58b3bc88d3700000000000000000000000000000000000000000000000000000000000000000000000000000000":MBEDTLS_MPI_MOD_EXT_REP_LE
|
||||
|
||||
Test mbedtls_mpi_mod_io #41 N: "201076468338594879614802819276237850336264827391977454179" A: "119".
|
||||
mpi_mod_io:"08335616aed761f1f7f44e6bd49e807b82e3bf2bf11bfa63":"000000000000000000000000000000000000000000000000":MBEDTLS_MPI_MOD_EXT_REP_BE
|
||||
|
||||
Test mbedtls_mpi_mod_io #42 N: "201076468338594879614802819276237850336264827391977454179" A: "136".
|
||||
mpi_mod_io:"08335616aed761f1f7f44e6bd49e807b82e3bf2bf11bfa63":"000000000000000000000000000000000000000000000000":MBEDTLS_MPI_MOD_EXT_REP_LE
|
||||
|
||||
Test mbedtls_mpi_mod_io #43 N: "201076468338594879614802819276237850336264827391977454179" A: "119".
|
||||
mpi_mod_io:"08335616aed761f1f7f44e6bd49e807b82e3bf2bf11bfa63":"000000000000000000000000000000000000000000000001":MBEDTLS_MPI_MOD_EXT_REP_BE
|
||||
|
||||
Test mbedtls_mpi_mod_io #44 N: "201076468338594879614802819276237850336264827391977454179" A: "136".
|
||||
mpi_mod_io:"08335616aed761f1f7f44e6bd49e807b82e3bf2bf11bfa63":"010000000000000000000000000000000000000000000000":MBEDTLS_MPI_MOD_EXT_REP_LE
|
||||
|
||||
Test mbedtls_mpi_mod_io #45 N: "201076468338594879614802819276237850336264827391977454179" A: "119".
|
||||
mpi_mod_io:"08335616aed761f1f7f44e6bd49e807b82e3bf2bf11bfa63":"0000000000000000000000000000000000000000000003ca":MBEDTLS_MPI_MOD_EXT_REP_BE
|
||||
|
||||
Test mbedtls_mpi_mod_io #46 N: "201076468338594879614802819276237850336264827391977454179" A: "136".
|
||||
mpi_mod_io:"08335616aed761f1f7f44e6bd49e807b82e3bf2bf11bfa63":"ca0300000000000000000000000000000000000000000000":MBEDTLS_MPI_MOD_EXT_REP_LE
|
||||
|
||||
Test mbedtls_mpi_mod_io #47 N: "201076468338594879614802819276237850336264827391977454179" A: "119".
|
||||
mpi_mod_io:"08335616aed761f1f7f44e6bd49e807b82e3bf2bf11bfa63":"0000000000000000000000000000000000000000539ed428":MBEDTLS_MPI_MOD_EXT_REP_BE
|
||||
|
||||
Test mbedtls_mpi_mod_io #48 N: "201076468338594879614802819276237850336264827391977454179" A: "136".
|
||||
mpi_mod_io:"08335616aed761f1f7f44e6bd49e807b82e3bf2bf11bfa63":"28d49e530000000000000000000000000000000000000000":MBEDTLS_MPI_MOD_EXT_REP_LE
|
||||
|
||||
Test mbedtls_mpi_mod_io #49 N: "201076468338594879614802819276237850336264827391977454179" A: "119".
|
||||
mpi_mod_io:"08335616aed761f1f7f44e6bd49e807b82e3bf2bf11bfa63":"000000000000000000000000000000007dfe5c6beb35a2d6":MBEDTLS_MPI_MOD_EXT_REP_BE
|
||||
|
||||
Test mbedtls_mpi_mod_io #50 N: "201076468338594879614802819276237850336264827391977454179" A: "136".
|
||||
mpi_mod_io:"08335616aed761f1f7f44e6bd49e807b82e3bf2bf11bfa63":"d6a235eb6b5cfe7d00000000000000000000000000000000":MBEDTLS_MPI_MOD_EXT_REP_LE
|
||||
|
||||
Test mbedtls_mpi_mod_io #51 N: "201076468338594879614802819276237850336264827391977454179" A: "119".
|
||||
mpi_mod_io:"08335616aed761f1f7f44e6bd49e807b82e3bf2bf11bfa63":"00000000000000000000000dca8de1c2adfc6d7aafb9b48e":MBEDTLS_MPI_MOD_EXT_REP_BE
|
||||
|
||||
Test mbedtls_mpi_mod_io #52 N: "201076468338594879614802819276237850336264827391977454179" A: "136".
|
||||
mpi_mod_io:"08335616aed761f1f7f44e6bd49e807b82e3bf2bf11bfa63":"8eb4b9af7a6dfcadc2e18dca0d0000000000000000000000":MBEDTLS_MPI_MOD_EXT_REP_LE
|
||||
|
||||
Test mbedtls_mpi_mod_io #53 N: "201076468338594879614802819276237850336264827391977454179" A: "119".
|
||||
mpi_mod_io:"08335616aed761f1f7f44e6bd49e807b82e3bf2bf11bfa63":"000000000000000a7d17b6c4be72f3d5c16bf9c1af6fc933":MBEDTLS_MPI_MOD_EXT_REP_BE
|
||||
|
||||
Test mbedtls_mpi_mod_io #54 N: "201076468338594879614802819276237850336264827391977454179" A: "136".
|
||||
mpi_mod_io:"08335616aed761f1f7f44e6bd49e807b82e3bf2bf11bfa63":"33c96fafc1f96bc1d5f372bec4b6177d0a00000000000000":MBEDTLS_MPI_MOD_EXT_REP_LE
|
||||
|
||||
Test mbedtls_mpi_mod_io #55 N: "201076468338594879614802819276237850336264827391977454179" A: "119".
|
||||
mpi_mod_io:"08335616aed761f1f7f44e6bd49e807b82e3bf2bf11bfa63":"0000000002fec97beec546f9553142ed52f147845463f579":MBEDTLS_MPI_MOD_EXT_REP_BE
|
||||
|
||||
Test mbedtls_mpi_mod_io #56 N: "201076468338594879614802819276237850336264827391977454179" A: "136".
|
||||
mpi_mod_io:"08335616aed761f1f7f44e6bd49e807b82e3bf2bf11bfa63":"79f563548447f152ed423155f946c5ee7bc9fe0200000000":MBEDTLS_MPI_MOD_EXT_REP_LE
|
||||
|
||||
Test mbedtls_mpi_mod_io #57 N: "32292747613635961694771916499883650667878589411552643628627186850993060141490368296439843252993342320145797691611646027435006878234727648863911408777308953382400333083852585109256846643097239747078406546553406955958288616728627292699264194880486908744773379992784153004816057528456043920098334713005039494478693892693017304730883448003944721685094014669042959451482141781404822386404101555113742346277194830729517252154824958327000717338180410404929239489607893939166712107274943411892079802406181464789204374234653633818543559183821503846194953493439237710780169796543565449952151334229364816621060143650318299210551" A: "119".
|
||||
mpi_mod_io:"ffcece570f2f991013f26dd5b03c4c5b65f97be5905f36cb4664f2c78ff80aa8135a4aaf57ccb8a0aca2f394909a74cef1ef6758a64d11e2c149c393659d124bfc94196f0ce88f7d7d567efa5a649e2deefaa6e10fdc3deac60d606bf63fc540ac95294347031aefd73d6a9ee10188aaeb7a90d920894553cb196881691cadc51808715a07e8b24fcb1a63df047c7cdf084dd177ba368c806f3d51ddb5d3898c863e687ecaf7d649a57a46264a582f94d3c8f2edaf59f77a7f6bdaf83c991e8f06abe220ec8507386fce8c3da84c6c3903ab8f3ad4630a204196a7dbcbd9bcca4e40ec5cc5c09938d49f5e1e6181db8896f33bb12e6ef73f12ec5c5ea7a8a337":"00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000":MBEDTLS_MPI_MOD_EXT_REP_BE
|
||||
|
||||
Test mbedtls_mpi_mod_io #58 N: "32292747613635961694771916499883650667878589411552643628627186850993060141490368296439843252993342320145797691611646027435006878234727648863911408777308953382400333083852585109256846643097239747078406546553406955958288616728627292699264194880486908744773379992784153004816057528456043920098334713005039494478693892693017304730883448003944721685094014669042959451482141781404822386404101555113742346277194830729517252154824958327000717338180410404929239489607893939166712107274943411892079802406181464789204374234653633818543559183821503846194953493439237710780169796543565449952151334229364816621060143650318299210551" A: "136".
|
||||
mpi_mod_io:"ffcece570f2f991013f26dd5b03c4c5b65f97be5905f36cb4664f2c78ff80aa8135a4aaf57ccb8a0aca2f394909a74cef1ef6758a64d11e2c149c393659d124bfc94196f0ce88f7d7d567efa5a649e2deefaa6e10fdc3deac60d606bf63fc540ac95294347031aefd73d6a9ee10188aaeb7a90d920894553cb196881691cadc51808715a07e8b24fcb1a63df047c7cdf084dd177ba368c806f3d51ddb5d3898c863e687ecaf7d649a57a46264a582f94d3c8f2edaf59f77a7f6bdaf83c991e8f06abe220ec8507386fce8c3da84c6c3903ab8f3ad4630a204196a7dbcbd9bcca4e40ec5cc5c09938d49f5e1e6181db8896f33bb12e6ef73f12ec5c5ea7a8a337":"00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000":MBEDTLS_MPI_MOD_EXT_REP_LE
|
||||
|
||||
Test mbedtls_mpi_mod_io #59 N: "32292747613635961694771916499883650667878589411552643628627186850993060141490368296439843252993342320145797691611646027435006878234727648863911408777308953382400333083852585109256846643097239747078406546553406955958288616728627292699264194880486908744773379992784153004816057528456043920098334713005039494478693892693017304730883448003944721685094014669042959451482141781404822386404101555113742346277194830729517252154824958327000717338180410404929239489607893939166712107274943411892079802406181464789204374234653633818543559183821503846194953493439237710780169796543565449952151334229364816621060143650318299210551" A: "119".
|
||||
mpi_mod_io:"ffcece570f2f991013f26dd5b03c4c5b65f97be5905f36cb4664f2c78ff80aa8135a4aaf57ccb8a0aca2f394909a74cef1ef6758a64d11e2c149c393659d124bfc94196f0ce88f7d7d567efa5a649e2deefaa6e10fdc3deac60d606bf63fc540ac95294347031aefd73d6a9ee10188aaeb7a90d920894553cb196881691cadc51808715a07e8b24fcb1a63df047c7cdf084dd177ba368c806f3d51ddb5d3898c863e687ecaf7d649a57a46264a582f94d3c8f2edaf59f77a7f6bdaf83c991e8f06abe220ec8507386fce8c3da84c6c3903ab8f3ad4630a204196a7dbcbd9bcca4e40ec5cc5c09938d49f5e1e6181db8896f33bb12e6ef73f12ec5c5ea7a8a337":"00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001":MBEDTLS_MPI_MOD_EXT_REP_BE
|
||||
|
||||
Test mbedtls_mpi_mod_io #60 N: "32292747613635961694771916499883650667878589411552643628627186850993060141490368296439843252993342320145797691611646027435006878234727648863911408777308953382400333083852585109256846643097239747078406546553406955958288616728627292699264194880486908744773379992784153004816057528456043920098334713005039494478693892693017304730883448003944721685094014669042959451482141781404822386404101555113742346277194830729517252154824958327000717338180410404929239489607893939166712107274943411892079802406181464789204374234653633818543559183821503846194953493439237710780169796543565449952151334229364816621060143650318299210551" A: "136".
|
||||
mpi_mod_io:"ffcece570f2f991013f26dd5b03c4c5b65f97be5905f36cb4664f2c78ff80aa8135a4aaf57ccb8a0aca2f394909a74cef1ef6758a64d11e2c149c393659d124bfc94196f0ce88f7d7d567efa5a649e2deefaa6e10fdc3deac60d606bf63fc540ac95294347031aefd73d6a9ee10188aaeb7a90d920894553cb196881691cadc51808715a07e8b24fcb1a63df047c7cdf084dd177ba368c806f3d51ddb5d3898c863e687ecaf7d649a57a46264a582f94d3c8f2edaf59f77a7f6bdaf83c991e8f06abe220ec8507386fce8c3da84c6c3903ab8f3ad4630a204196a7dbcbd9bcca4e40ec5cc5c09938d49f5e1e6181db8896f33bb12e6ef73f12ec5c5ea7a8a337":"01000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000":MBEDTLS_MPI_MOD_EXT_REP_LE
|
||||
|
||||
Test mbedtls_mpi_mod_io #61 N: "32292747613635961694771916499883650667878589411552643628627186850993060141490368296439843252993342320145797691611646027435006878234727648863911408777308953382400333083852585109256846643097239747078406546553406955958288616728627292699264194880486908744773379992784153004816057528456043920098334713005039494478693892693017304730883448003944721685094014669042959451482141781404822386404101555113742346277194830729517252154824958327000717338180410404929239489607893939166712107274943411892079802406181464789204374234653633818543559183821503846194953493439237710780169796543565449952151334229364816621060143650318299210551" A: "119".
|
||||
mpi_mod_io:"ffcece570f2f991013f26dd5b03c4c5b65f97be5905f36cb4664f2c78ff80aa8135a4aaf57ccb8a0aca2f394909a74cef1ef6758a64d11e2c149c393659d124bfc94196f0ce88f7d7d567efa5a649e2deefaa6e10fdc3deac60d606bf63fc540ac95294347031aefd73d6a9ee10188aaeb7a90d920894553cb196881691cadc51808715a07e8b24fcb1a63df047c7cdf084dd177ba368c806f3d51ddb5d3898c863e687ecaf7d649a57a46264a582f94d3c8f2edaf59f77a7f6bdaf83c991e8f06abe220ec8507386fce8c3da84c6c3903ab8f3ad4630a204196a7dbcbd9bcca4e40ec5cc5c09938d49f5e1e6181db8896f33bb12e6ef73f12ec5c5ea7a8a337":"000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000003ca":MBEDTLS_MPI_MOD_EXT_REP_BE
|
||||
|
||||
Test mbedtls_mpi_mod_io #62 N: "32292747613635961694771916499883650667878589411552643628627186850993060141490368296439843252993342320145797691611646027435006878234727648863911408777308953382400333083852585109256846643097239747078406546553406955958288616728627292699264194880486908744773379992784153004816057528456043920098334713005039494478693892693017304730883448003944721685094014669042959451482141781404822386404101555113742346277194830729517252154824958327000717338180410404929239489607893939166712107274943411892079802406181464789204374234653633818543559183821503846194953493439237710780169796543565449952151334229364816621060143650318299210551" A: "136".
|
||||
mpi_mod_io:"ffcece570f2f991013f26dd5b03c4c5b65f97be5905f36cb4664f2c78ff80aa8135a4aaf57ccb8a0aca2f394909a74cef1ef6758a64d11e2c149c393659d124bfc94196f0ce88f7d7d567efa5a649e2deefaa6e10fdc3deac60d606bf63fc540ac95294347031aefd73d6a9ee10188aaeb7a90d920894553cb196881691cadc51808715a07e8b24fcb1a63df047c7cdf084dd177ba368c806f3d51ddb5d3898c863e687ecaf7d649a57a46264a582f94d3c8f2edaf59f77a7f6bdaf83c991e8f06abe220ec8507386fce8c3da84c6c3903ab8f3ad4630a204196a7dbcbd9bcca4e40ec5cc5c09938d49f5e1e6181db8896f33bb12e6ef73f12ec5c5ea7a8a337":"ca030000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000":MBEDTLS_MPI_MOD_EXT_REP_LE
|
||||
|
||||
Test mbedtls_mpi_mod_io #63 N: "32292747613635961694771916499883650667878589411552643628627186850993060141490368296439843252993342320145797691611646027435006878234727648863911408777308953382400333083852585109256846643097239747078406546553406955958288616728627292699264194880486908744773379992784153004816057528456043920098334713005039494478693892693017304730883448003944721685094014669042959451482141781404822386404101555113742346277194830729517252154824958327000717338180410404929239489607893939166712107274943411892079802406181464789204374234653633818543559183821503846194953493439237710780169796543565449952151334229364816621060143650318299210551" A: "119".
|
||||
mpi_mod_io:"ffcece570f2f991013f26dd5b03c4c5b65f97be5905f36cb4664f2c78ff80aa8135a4aaf57ccb8a0aca2f394909a74cef1ef6758a64d11e2c149c393659d124bfc94196f0ce88f7d7d567efa5a649e2deefaa6e10fdc3deac60d606bf63fc540ac95294347031aefd73d6a9ee10188aaeb7a90d920894553cb196881691cadc51808715a07e8b24fcb1a63df047c7cdf084dd177ba368c806f3d51ddb5d3898c863e687ecaf7d649a57a46264a582f94d3c8f2edaf59f77a7f6bdaf83c991e8f06abe220ec8507386fce8c3da84c6c3903ab8f3ad4630a204196a7dbcbd9bcca4e40ec5cc5c09938d49f5e1e6181db8896f33bb12e6ef73f12ec5c5ea7a8a337":"000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000539ed428":MBEDTLS_MPI_MOD_EXT_REP_BE
|
||||
|
||||
Test mbedtls_mpi_mod_io #64 N: "32292747613635961694771916499883650667878589411552643628627186850993060141490368296439843252993342320145797691611646027435006878234727648863911408777308953382400333083852585109256846643097239747078406546553406955958288616728627292699264194880486908744773379992784153004816057528456043920098334713005039494478693892693017304730883448003944721685094014669042959451482141781404822386404101555113742346277194830729517252154824958327000717338180410404929239489607893939166712107274943411892079802406181464789204374234653633818543559183821503846194953493439237710780169796543565449952151334229364816621060143650318299210551" A: "136".
|
||||
mpi_mod_io:"ffcece570f2f991013f26dd5b03c4c5b65f97be5905f36cb4664f2c78ff80aa8135a4aaf57ccb8a0aca2f394909a74cef1ef6758a64d11e2c149c393659d124bfc94196f0ce88f7d7d567efa5a649e2deefaa6e10fdc3deac60d606bf63fc540ac95294347031aefd73d6a9ee10188aaeb7a90d920894553cb196881691cadc51808715a07e8b24fcb1a63df047c7cdf084dd177ba368c806f3d51ddb5d3898c863e687ecaf7d649a57a46264a582f94d3c8f2edaf59f77a7f6bdaf83c991e8f06abe220ec8507386fce8c3da84c6c3903ab8f3ad4630a204196a7dbcbd9bcca4e40ec5cc5c09938d49f5e1e6181db8896f33bb12e6ef73f12ec5c5ea7a8a337":"28d49e53000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000":MBEDTLS_MPI_MOD_EXT_REP_LE
|
||||
|
||||
Test mbedtls_mpi_mod_io #65 N: "32292747613635961694771916499883650667878589411552643628627186850993060141490368296439843252993342320145797691611646027435006878234727648863911408777308953382400333083852585109256846643097239747078406546553406955958288616728627292699264194880486908744773379992784153004816057528456043920098334713005039494478693892693017304730883448003944721685094014669042959451482141781404822386404101555113742346277194830729517252154824958327000717338180410404929239489607893939166712107274943411892079802406181464789204374234653633818543559183821503846194953493439237710780169796543565449952151334229364816621060143650318299210551" A: "119".
|
||||
mpi_mod_io:"ffcece570f2f991013f26dd5b03c4c5b65f97be5905f36cb4664f2c78ff80aa8135a4aaf57ccb8a0aca2f394909a74cef1ef6758a64d11e2c149c393659d124bfc94196f0ce88f7d7d567efa5a649e2deefaa6e10fdc3deac60d606bf63fc540ac95294347031aefd73d6a9ee10188aaeb7a90d920894553cb196881691cadc51808715a07e8b24fcb1a63df047c7cdf084dd177ba368c806f3d51ddb5d3898c863e687ecaf7d649a57a46264a582f94d3c8f2edaf59f77a7f6bdaf83c991e8f06abe220ec8507386fce8c3da84c6c3903ab8f3ad4630a204196a7dbcbd9bcca4e40ec5cc5c09938d49f5e1e6181db8896f33bb12e6ef73f12ec5c5ea7a8a337":"00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000007dfe5c6beb35a2d6":MBEDTLS_MPI_MOD_EXT_REP_BE
|
||||
|
||||
Test mbedtls_mpi_mod_io #66 N: "32292747613635961694771916499883650667878589411552643628627186850993060141490368296439843252993342320145797691611646027435006878234727648863911408777308953382400333083852585109256846643097239747078406546553406955958288616728627292699264194880486908744773379992784153004816057528456043920098334713005039494478693892693017304730883448003944721685094014669042959451482141781404822386404101555113742346277194830729517252154824958327000717338180410404929239489607893939166712107274943411892079802406181464789204374234653633818543559183821503846194953493439237710780169796543565449952151334229364816621060143650318299210551" A: "136".
|
||||
mpi_mod_io:"ffcece570f2f991013f26dd5b03c4c5b65f97be5905f36cb4664f2c78ff80aa8135a4aaf57ccb8a0aca2f394909a74cef1ef6758a64d11e2c149c393659d124bfc94196f0ce88f7d7d567efa5a649e2deefaa6e10fdc3deac60d606bf63fc540ac95294347031aefd73d6a9ee10188aaeb7a90d920894553cb196881691cadc51808715a07e8b24fcb1a63df047c7cdf084dd177ba368c806f3d51ddb5d3898c863e687ecaf7d649a57a46264a582f94d3c8f2edaf59f77a7f6bdaf83c991e8f06abe220ec8507386fce8c3da84c6c3903ab8f3ad4630a204196a7dbcbd9bcca4e40ec5cc5c09938d49f5e1e6181db8896f33bb12e6ef73f12ec5c5ea7a8a337":"d6a235eb6b5cfe7d0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000":MBEDTLS_MPI_MOD_EXT_REP_LE
|
||||
|
||||
Test mbedtls_mpi_mod_io #67 N: "32292747613635961694771916499883650667878589411552643628627186850993060141490368296439843252993342320145797691611646027435006878234727648863911408777308953382400333083852585109256846643097239747078406546553406955958288616728627292699264194880486908744773379992784153004816057528456043920098334713005039494478693892693017304730883448003944721685094014669042959451482141781404822386404101555113742346277194830729517252154824958327000717338180410404929239489607893939166712107274943411892079802406181464789204374234653633818543559183821503846194953493439237710780169796543565449952151334229364816621060143650318299210551" A: "119".
|
||||
mpi_mod_io:"ffcece570f2f991013f26dd5b03c4c5b65f97be5905f36cb4664f2c78ff80aa8135a4aaf57ccb8a0aca2f394909a74cef1ef6758a64d11e2c149c393659d124bfc94196f0ce88f7d7d567efa5a649e2deefaa6e10fdc3deac60d606bf63fc540ac95294347031aefd73d6a9ee10188aaeb7a90d920894553cb196881691cadc51808715a07e8b24fcb1a63df047c7cdf084dd177ba368c806f3d51ddb5d3898c863e687ecaf7d649a57a46264a582f94d3c8f2edaf59f77a7f6bdaf83c991e8f06abe220ec8507386fce8c3da84c6c3903ab8f3ad4630a204196a7dbcbd9bcca4e40ec5cc5c09938d49f5e1e6181db8896f33bb12e6ef73f12ec5c5ea7a8a337":"0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000dca8de1c2adfc6d7aafb9b48e":MBEDTLS_MPI_MOD_EXT_REP_BE
|
||||
|
||||
Test mbedtls_mpi_mod_io #68 N: "32292747613635961694771916499883650667878589411552643628627186850993060141490368296439843252993342320145797691611646027435006878234727648863911408777308953382400333083852585109256846643097239747078406546553406955958288616728627292699264194880486908744773379992784153004816057528456043920098334713005039494478693892693017304730883448003944721685094014669042959451482141781404822386404101555113742346277194830729517252154824958327000717338180410404929239489607893939166712107274943411892079802406181464789204374234653633818543559183821503846194953493439237710780169796543565449952151334229364816621060143650318299210551" A: "136".
|
||||
mpi_mod_io:"ffcece570f2f991013f26dd5b03c4c5b65f97be5905f36cb4664f2c78ff80aa8135a4aaf57ccb8a0aca2f394909a74cef1ef6758a64d11e2c149c393659d124bfc94196f0ce88f7d7d567efa5a649e2deefaa6e10fdc3deac60d606bf63fc540ac95294347031aefd73d6a9ee10188aaeb7a90d920894553cb196881691cadc51808715a07e8b24fcb1a63df047c7cdf084dd177ba368c806f3d51ddb5d3898c863e687ecaf7d649a57a46264a582f94d3c8f2edaf59f77a7f6bdaf83c991e8f06abe220ec8507386fce8c3da84c6c3903ab8f3ad4630a204196a7dbcbd9bcca4e40ec5cc5c09938d49f5e1e6181db8896f33bb12e6ef73f12ec5c5ea7a8a337":"8eb4b9af7a6dfcadc2e18dca0d000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000":MBEDTLS_MPI_MOD_EXT_REP_LE
|
||||
|
||||
Test mbedtls_mpi_mod_io #69 N: "32292747613635961694771916499883650667878589411552643628627186850993060141490368296439843252993342320145797691611646027435006878234727648863911408777308953382400333083852585109256846643097239747078406546553406955958288616728627292699264194880486908744773379992784153004816057528456043920098334713005039494478693892693017304730883448003944721685094014669042959451482141781404822386404101555113742346277194830729517252154824958327000717338180410404929239489607893939166712107274943411892079802406181464789204374234653633818543559183821503846194953493439237710780169796543565449952151334229364816621060143650318299210551" A: "119".
|
||||
mpi_mod_io:"ffcece570f2f991013f26dd5b03c4c5b65f97be5905f36cb4664f2c78ff80aa8135a4aaf57ccb8a0aca2f394909a74cef1ef6758a64d11e2c149c393659d124bfc94196f0ce88f7d7d567efa5a649e2deefaa6e10fdc3deac60d606bf63fc540ac95294347031aefd73d6a9ee10188aaeb7a90d920894553cb196881691cadc51808715a07e8b24fcb1a63df047c7cdf084dd177ba368c806f3d51ddb5d3898c863e687ecaf7d649a57a46264a582f94d3c8f2edaf59f77a7f6bdaf83c991e8f06abe220ec8507386fce8c3da84c6c3903ab8f3ad4630a204196a7dbcbd9bcca4e40ec5cc5c09938d49f5e1e6181db8896f33bb12e6ef73f12ec5c5ea7a8a337":"00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a7d17b6c4be72f3d5c16bf9c1af6fc933":MBEDTLS_MPI_MOD_EXT_REP_BE
|
||||
|
||||
Test mbedtls_mpi_mod_io #70 N: "32292747613635961694771916499883650667878589411552643628627186850993060141490368296439843252993342320145797691611646027435006878234727648863911408777308953382400333083852585109256846643097239747078406546553406955958288616728627292699264194880486908744773379992784153004816057528456043920098334713005039494478693892693017304730883448003944721685094014669042959451482141781404822386404101555113742346277194830729517252154824958327000717338180410404929239489607893939166712107274943411892079802406181464789204374234653633818543559183821503846194953493439237710780169796543565449952151334229364816621060143650318299210551" A: "136".
|
||||
mpi_mod_io:"ffcece570f2f991013f26dd5b03c4c5b65f97be5905f36cb4664f2c78ff80aa8135a4aaf57ccb8a0aca2f394909a74cef1ef6758a64d11e2c149c393659d124bfc94196f0ce88f7d7d567efa5a649e2deefaa6e10fdc3deac60d606bf63fc540ac95294347031aefd73d6a9ee10188aaeb7a90d920894553cb196881691cadc51808715a07e8b24fcb1a63df047c7cdf084dd177ba368c806f3d51ddb5d3898c863e687ecaf7d649a57a46264a582f94d3c8f2edaf59f77a7f6bdaf83c991e8f06abe220ec8507386fce8c3da84c6c3903ab8f3ad4630a204196a7dbcbd9bcca4e40ec5cc5c09938d49f5e1e6181db8896f33bb12e6ef73f12ec5c5ea7a8a337":"33c96fafc1f96bc1d5f372bec4b6177d0a0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000":MBEDTLS_MPI_MOD_EXT_REP_LE
|
||||
|
||||
Test mbedtls_mpi_mod_io #71 N: "32292747613635961694771916499883650667878589411552643628627186850993060141490368296439843252993342320145797691611646027435006878234727648863911408777308953382400333083852585109256846643097239747078406546553406955958288616728627292699264194880486908744773379992784153004816057528456043920098334713005039494478693892693017304730883448003944721685094014669042959451482141781404822386404101555113742346277194830729517252154824958327000717338180410404929239489607893939166712107274943411892079802406181464789204374234653633818543559183821503846194953493439237710780169796543565449952151334229364816621060143650318299210551" A: "119".
|
||||
mpi_mod_io:"ffcece570f2f991013f26dd5b03c4c5b65f97be5905f36cb4664f2c78ff80aa8135a4aaf57ccb8a0aca2f394909a74cef1ef6758a64d11e2c149c393659d124bfc94196f0ce88f7d7d567efa5a649e2deefaa6e10fdc3deac60d606bf63fc540ac95294347031aefd73d6a9ee10188aaeb7a90d920894553cb196881691cadc51808715a07e8b24fcb1a63df047c7cdf084dd177ba368c806f3d51ddb5d3898c863e687ecaf7d649a57a46264a582f94d3c8f2edaf59f77a7f6bdaf83c991e8f06abe220ec8507386fce8c3da84c6c3903ab8f3ad4630a204196a7dbcbd9bcca4e40ec5cc5c09938d49f5e1e6181db8896f33bb12e6ef73f12ec5c5ea7a8a337":"000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002fec97beec546f9553142ed52f147845463f579":MBEDTLS_MPI_MOD_EXT_REP_BE
|
||||
|
||||
Test mbedtls_mpi_mod_io #72 N: "32292747613635961694771916499883650667878589411552643628627186850993060141490368296439843252993342320145797691611646027435006878234727648863911408777308953382400333083852585109256846643097239747078406546553406955958288616728627292699264194880486908744773379992784153004816057528456043920098334713005039494478693892693017304730883448003944721685094014669042959451482141781404822386404101555113742346277194830729517252154824958327000717338180410404929239489607893939166712107274943411892079802406181464789204374234653633818543559183821503846194953493439237710780169796543565449952151334229364816621060143650318299210551" A: "136".
|
||||
mpi_mod_io:"ffcece570f2f991013f26dd5b03c4c5b65f97be5905f36cb4664f2c78ff80aa8135a4aaf57ccb8a0aca2f394909a74cef1ef6758a64d11e2c149c393659d124bfc94196f0ce88f7d7d567efa5a649e2deefaa6e10fdc3deac60d606bf63fc540ac95294347031aefd73d6a9ee10188aaeb7a90d920894553cb196881691cadc51808715a07e8b24fcb1a63df047c7cdf084dd177ba368c806f3d51ddb5d3898c863e687ecaf7d649a57a46264a582f94d3c8f2edaf59f77a7f6bdaf83c991e8f06abe220ec8507386fce8c3da84c6c3903ab8f3ad4630a204196a7dbcbd9bcca4e40ec5cc5c09938d49f5e1e6181db8896f33bb12e6ef73f12ec5c5ea7a8a337":"79f563548447f152ed423155f946c5ee7bc9fe020000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000":MBEDTLS_MPI_MOD_EXT_REP_LE
|
||||
|
||||
Test mbedtls_mpi_mod_io #73 N: "32292747613635961694771916499883650667878589411552643628627186850993060141490368296439843252993342320145797691611646027435006878234727648863911408777308953382400333083852585109256846643097239747078406546553406955958288616728627292699264194880486908744773379992784153004816057528456043920098334713005039494478693892693017304730883448003944721685094014669042959451482141781404822386404101555113742346277194830729517252154824958327000717338180410404929239489607893939166712107274943411892079802406181464789204374234653633818543559183821503846194953493439237710780169796543565449952151334229364816621060143650318299210551" A: "119".
|
||||
mpi_mod_io:"ffcece570f2f991013f26dd5b03c4c5b65f97be5905f36cb4664f2c78ff80aa8135a4aaf57ccb8a0aca2f394909a74cef1ef6758a64d11e2c149c393659d124bfc94196f0ce88f7d7d567efa5a649e2deefaa6e10fdc3deac60d606bf63fc540ac95294347031aefd73d6a9ee10188aaeb7a90d920894553cb196881691cadc51808715a07e8b24fcb1a63df047c7cdf084dd177ba368c806f3d51ddb5d3898c863e687ecaf7d649a57a46264a582f94d3c8f2edaf59f77a7f6bdaf83c991e8f06abe220ec8507386fce8c3da84c6c3903ab8f3ad4630a204196a7dbcbd9bcca4e40ec5cc5c09938d49f5e1e6181db8896f33bb12e6ef73f12ec5c5ea7a8a337":"00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000378dc83b8bc5a7b62cba495af4919578dce6d4f175cadc4f":MBEDTLS_MPI_MOD_EXT_REP_BE
|
||||
|
||||
Test mbedtls_mpi_mod_io #74 N: "32292747613635961694771916499883650667878589411552643628627186850993060141490368296439843252993342320145797691611646027435006878234727648863911408777308953382400333083852585109256846643097239747078406546553406955958288616728627292699264194880486908744773379992784153004816057528456043920098334713005039494478693892693017304730883448003944721685094014669042959451482141781404822386404101555113742346277194830729517252154824958327000717338180410404929239489607893939166712107274943411892079802406181464789204374234653633818543559183821503846194953493439237710780169796543565449952151334229364816621060143650318299210551" A: "136".
|
||||
mpi_mod_io:"ffcece570f2f991013f26dd5b03c4c5b65f97be5905f36cb4664f2c78ff80aa8135a4aaf57ccb8a0aca2f394909a74cef1ef6758a64d11e2c149c393659d124bfc94196f0ce88f7d7d567efa5a649e2deefaa6e10fdc3deac60d606bf63fc540ac95294347031aefd73d6a9ee10188aaeb7a90d920894553cb196881691cadc51808715a07e8b24fcb1a63df047c7cdf084dd177ba368c806f3d51ddb5d3898c863e687ecaf7d649a57a46264a582f94d3c8f2edaf59f77a7f6bdaf83c991e8f06abe220ec8507386fce8c3da84c6c3903ab8f3ad4630a204196a7dbcbd9bcca4e40ec5cc5c09938d49f5e1e6181db8896f33bb12e6ef73f12ec5c5ea7a8a337":"4fdcca75f1d4e6dc789591f45a49ba2cb6a7c58b3bc88d3700000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000":MBEDTLS_MPI_MOD_EXT_REP_LE
|
||||
|
||||
Test mbedtls_mpi_mod_io #75 N: "32292747613635961694771916499883650667878589411552643628627186850993060141490368296439843252993342320145797691611646027435006878234727648863911408777308953382400333083852585109256846643097239747078406546553406955958288616728627292699264194880486908744773379992784153004816057528456043920098334713005039494478693892693017304730883448003944721685094014669042959451482141781404822386404101555113742346277194830729517252154824958327000717338180410404929239489607893939166712107274943411892079802406181464789204374234653633818543559183821503846194953493439237710780169796543565449952151334229364816621060143650318299210551" A: "119".
|
||||
mpi_mod_io:"ffcece570f2f991013f26dd5b03c4c5b65f97be5905f36cb4664f2c78ff80aa8135a4aaf57ccb8a0aca2f394909a74cef1ef6758a64d11e2c149c393659d124bfc94196f0ce88f7d7d567efa5a649e2deefaa6e10fdc3deac60d606bf63fc540ac95294347031aefd73d6a9ee10188aaeb7a90d920894553cb196881691cadc51808715a07e8b24fcb1a63df047c7cdf084dd177ba368c806f3d51ddb5d3898c863e687ecaf7d649a57a46264a582f94d3c8f2edaf59f77a7f6bdaf83c991e8f06abe220ec8507386fce8c3da84c6c3903ab8f3ad4630a204196a7dbcbd9bcca4e40ec5cc5c09938d49f5e1e6181db8896f33bb12e6ef73f12ec5c5ea7a8a337":"b6415f2a1a8e48a518345db11f56db3829c8f2c6415ab4a395ab3ac2ea4cbef4af86eb18a84eb6ded4c6ecbfc4b59c2879a675487f687adea9d197a84a5242a5cf6125ce19a6ad2e7341f1c57d43ea4f4c852a51cb63dabcd1c9de2b827a3146a3d175b35bea41ae75d2a286a3e9d43623152ac513dcdea1d72a7da846a8ab358d9be4926c79cfb287cf1cf25b689de3b912176be5dcaf4d4c6e7cb839a4a3243a6c47c1e2c99d65c59d6fa3672575c2f1ca8de6a32e854ec9d8ec635c96af7679fce26d7d159e4a9da3bd74e1272c376cd926d74fe3fb164a5935cff3d5cdb92b35fe2cea32138a7e6bfbc319ebd1725dacb9a359cbf693f2ecb785efb9d627":MBEDTLS_MPI_MOD_EXT_REP_BE
|
||||
|
||||
Test mbedtls_mpi_mod_io #76 N: "32292747613635961694771916499883650667878589411552643628627186850993060141490368296439843252993342320145797691611646027435006878234727648863911408777308953382400333083852585109256846643097239747078406546553406955958288616728627292699264194880486908744773379992784153004816057528456043920098334713005039494478693892693017304730883448003944721685094014669042959451482141781404822386404101555113742346277194830729517252154824958327000717338180410404929239489607893939166712107274943411892079802406181464789204374234653633818543559183821503846194953493439237710780169796543565449952151334229364816621060143650318299210551" A: "136".
|
||||
mpi_mod_io:"ffcece570f2f991013f26dd5b03c4c5b65f97be5905f36cb4664f2c78ff80aa8135a4aaf57ccb8a0aca2f394909a74cef1ef6758a64d11e2c149c393659d124bfc94196f0ce88f7d7d567efa5a649e2deefaa6e10fdc3deac60d606bf63fc540ac95294347031aefd73d6a9ee10188aaeb7a90d920894553cb196881691cadc51808715a07e8b24fcb1a63df047c7cdf084dd177ba368c806f3d51ddb5d3898c863e687ecaf7d649a57a46264a582f94d3c8f2edaf59f77a7f6bdaf83c991e8f06abe220ec8507386fce8c3da84c6c3903ab8f3ad4630a204196a7dbcbd9bcca4e40ec5cc5c09938d49f5e1e6181db8896f33bb12e6ef73f12ec5c5ea7a8a337":"27d6b9ef85b7ecf293f6cb59a3b9ac5d72d1eb19c3fb6b7e8a1332ea2cfe352bb9cdd5f3cf35594a16fbe34fd726d96c372c27e174bda39d4a9e157d6de2fc7976af965c63ecd8c94e852ea3e68dcaf1c2752567a36f9dc5659dc9e2c1476c3a24a3a439b87c6e4c4dafdce56b1712b9e39d685bf21ccf87b2cf796c92e49b8d35aba846a87d2ad7a1dedc13c52a152336d4e9a386a2d275ae41ea5bb375d1a346317a822bdec9d1bcda63cb512a854c4fea437dc5f141732eada619ce2561cfa542524aa897d1a9de7a687f4875a679289cb5c4bfecc6d4deb64ea818eb86aff4be4ceac23aab95a3b45a41c6f2c82938db561fb15d3418a5488e1a2a5f41b6":MBEDTLS_MPI_MOD_EXT_REP_LE
|
||||
181
vendor/mbedtls/tests/suites/test_suite_bignum_mod_raw.data
vendored
Normal file
181
vendor/mbedtls/tests/suites/test_suite_bignum_mod_raw.data
vendored
Normal file
@@ -0,0 +1,181 @@
|
||||
Test mbedtls_mpi_mod_raw_io #1 BE (Buffer and limbs just fit, input limb-aligned)
|
||||
mpi_mod_raw_io:"0941379d00fed1491fe15df284dfde4a142f68aa8d412023195cee66883e6290ffe703f4ea5963bf212713cee46b107c09182b5edcd955adac418bf4918e2889af48e1099d513830cec85c26ac1e158b52620e33ba8692f893efbb2f958b4424":96:24:MBEDTLS_MPI_MOD_EXT_REP_BE:0:0
|
||||
|
||||
Test mbedtls_mpi_mod_raw_io #1 LE (Buffer and limbs just fit, input limb-aligned)
|
||||
mpi_mod_raw_io:"0941379d00fed1491fe15df284dfde4a142f68aa8d412023195cee66883e6290ffe703f4ea5963bf212713cee46b107c09182b5edcd955adac418bf4918e2889af48e1099d513830cec85c26ac1e158b52620e33ba8692f893efbb2f958b4424":96:24:MBEDTLS_MPI_MOD_EXT_REP_LE:0:0
|
||||
|
||||
Test mbedtls_mpi_mod_raw_io #2 BE (Buffer and limbs just fit, input unaligned)
|
||||
mpi_mod_raw_io:"0941379d00fed1491fe15df284dfde4a142f68aa8d412023195cee66883e6290ffe703f4ea5963bf212713cee46b107c09182b5edcd955adac418bf4918e2889af48e1099d513830cec85c26ac1e158b52620e33ba8692f893efbb2f958b":94:24:MBEDTLS_MPI_MOD_EXT_REP_BE:0:0
|
||||
|
||||
Test mbedtls_mpi_mod_raw_io #2 LE (Buffer and limbs just fit, input unaligned)
|
||||
mpi_mod_raw_io:"0941379d00fed1491fe15df284dfde4a142f68aa8d412023195cee66883e6290ffe703f4ea5963bf212713cee46b107c09182b5edcd955adac418bf4918e2889af48e1099d513830cec85c26ac1e158b52620e33ba8692f893efbb2f958b":94:24:MBEDTLS_MPI_MOD_EXT_REP_LE:0:0
|
||||
|
||||
Test mbedtls_mpi_mod_raw_io #3 BE (Buffer just fits, extra limbs, input limb-aligned)
|
||||
mpi_mod_raw_io:"0941379d00fed1491fe15df284dfde4a142f68aa8d412023195cee66883e6290ffe703f4ea5963bf212713cee46b107c09182b5edcd955adac418bf4918e2889af48e1099d513830cec85c26ac1e158b52620e33ba8692f893efbb2f958b4424":96:28:MBEDTLS_MPI_MOD_EXT_REP_BE:0:0
|
||||
|
||||
Test mbedtls_mpi_mod_raw_io #3 LE (Buffer just fits, extra limbs, input limb-aligned)
|
||||
mpi_mod_raw_io:"0941379d00fed1491fe15df284dfde4a142f68aa8d412023195cee66883e6290ffe703f4ea5963bf212713cee46b107c09182b5edcd955adac418bf4918e2889af48e1099d513830cec85c26ac1e158b52620e33ba8692f893efbb2f958b4424":96:28:MBEDTLS_MPI_MOD_EXT_REP_LE:0:0
|
||||
|
||||
Test mbedtls_mpi_mod_raw_io #4 BE (Buffer just fits, extra limbs, input unaligned)
|
||||
mpi_mod_raw_io:"0941379d00fed1491fe15df284dfde4a142f68aa8d412023195cee66883e6290ffe703f4ea5963bf212713cee46b107c09182b5edcd955adac418bf4918e2889af48e1099d513830cec85c26ac1e158b52620e33ba8692f893efbb2f958b":94:28:MBEDTLS_MPI_MOD_EXT_REP_BE:0:0
|
||||
|
||||
Test mbedtls_mpi_mod_raw_io #4 LE (Buffer just fits, extra limbs, input unaligned)
|
||||
mpi_mod_raw_io:"0941379d00fed1491fe15df284dfde4a142f68aa8d412023195cee66883e6290ffe703f4ea5963bf212713cee46b107c09182b5edcd955adac418bf4918e2889af48e1099d513830cec85c26ac1e158b52620e33ba8692f893efbb2f958b":94:28:MBEDTLS_MPI_MOD_EXT_REP_LE:0:0
|
||||
|
||||
Test mbedtls_mpi_mod_raw_io #5 BE (Extra limbs, buffer aligned to extra limbs, input limb-aligned)
|
||||
mpi_mod_raw_io:"0941379d00fed1491fe15df284dfde4a142f68aa8d412023195cee66883e6290ffe703f4ea5963bf212713cee46b107c09182b5edcd955adac418bf4918e2889af48e1099d513830cec85c26ac1e158b52620e33ba8692f893efbb2f958b4424":112:28:MBEDTLS_MPI_MOD_EXT_REP_BE:0:0
|
||||
|
||||
Test mbedtls_mpi_mod_raw_io #5 LE (Extra limbs, buffer aligned to extra limbs, input limb-aligned)
|
||||
mpi_mod_raw_io:"0941379d00fed1491fe15df284dfde4a142f68aa8d412023195cee66883e6290ffe703f4ea5963bf212713cee46b107c09182b5edcd955adac418bf4918e2889af48e1099d513830cec85c26ac1e158b52620e33ba8692f893efbb2f958b4424":112:28:MBEDTLS_MPI_MOD_EXT_REP_LE:0:0
|
||||
|
||||
Test mbedtls_mpi_mod_raw_io #6 BE (Extra limbs, buffer aligned to extra limbs, input unaligned)
|
||||
mpi_mod_raw_io:"0941379d00fed1491fe15df284dfde4a142f68aa8d412023195cee66883e6290ffe703f4ea5963bf212713cee46b107c09182b5edcd955adac418bf4918e2889af48e1099d513830cec85c26ac1e158b52620e33ba8692f893efbb2f958b":112:28:MBEDTLS_MPI_MOD_EXT_REP_BE:0:0
|
||||
|
||||
Test mbedtls_mpi_mod_raw_io #6 LE (Extra limbs, buffer aligned to extra limbs, input unaligned)
|
||||
mpi_mod_raw_io:"0941379d00fed1491fe15df284dfde4a142f68aa8d412023195cee66883e6290ffe703f4ea5963bf212713cee46b107c09182b5edcd955adac418bf4918e2889af48e1099d513830cec85c26ac1e158b52620e33ba8692f893efbb2f958b":112:28:MBEDTLS_MPI_MOD_EXT_REP_LE:0:0
|
||||
|
||||
Test mbedtls_mpi_mod_raw_io #7 BE (Buffer and limbs just fit, input limb-aligned with leading zeroes)
|
||||
mpi_mod_raw_io:"00000000000000001fe15df284dfde4a142f68aa8d412023195cee66883e6290ffe703f4ea5963bf212713cee46b107c09182b5edcd955adac418bf4918e2889af48e1099d513830cec85c26ac1e158b52620e33ba8692f893efbb2f958b4424":88:24:MBEDTLS_MPI_MOD_EXT_REP_BE:0:0
|
||||
|
||||
Test mbedtls_mpi_mod_raw_io #7 LE (Buffer and limbs just fit, input limb-aligned with leading zeroes)
|
||||
mpi_mod_raw_io:"1fe15df284dfde4a142f68aa8d412023195cee66883e6290ffe703f4ea5963bf212713cee46b107c09182b5edcd955adac418bf4918e2889af48e1099d513830cec85c26ac1e158b52620e33ba8692f893efbb2f958b44240000000000000000":88:24:MBEDTLS_MPI_MOD_EXT_REP_LE:0:0
|
||||
|
||||
Test mbedtls_mpi_mod_raw_io #8 BE (Buffer and limbs just fit, input unaligned with leading zeroes)
|
||||
mpi_mod_raw_io:"00000000000000001fe15df284dfde4a142f68aa8d412023195cee66883e6290ffe703f4ea5963bf212713cee46b107c09182b5edcd955adac418bf4918e2889af48e1099d513830cec85c26ac1e158b52620e33ba8692f893efbb2f958b":86:24:MBEDTLS_MPI_MOD_EXT_REP_BE:0:0
|
||||
|
||||
Test mbedtls_mpi_mod_raw_io #8 LE (Buffer and limbs just fit, input unaligned with leading zeroes)
|
||||
mpi_mod_raw_io:"1fe15df284dfde4a142f68aa8d412023195cee66883e6290ffe703f4ea5963bf212713cee46b107c09182b5edcd955adac418bf4918e2889af48e1099d513830cec85c26ac1e158b52620e33ba8692f893efbb2f958b0000000000000000":86:24:MBEDTLS_MPI_MOD_EXT_REP_LE:0:0
|
||||
|
||||
Test mbedtls_mpi_mod_raw_io #9 BE (Buffer just fits, extra limbs, input limb-aligned with leading zeroes)
|
||||
mpi_mod_raw_io:"00000000000000001fe15df284dfde4a142f68aa8d412023195cee66883e6290ffe703f4ea5963bf212713cee46b107c09182b5edcd955adac418bf4918e2889af48e1099d513830cec85c26ac1e158b52620e33ba8692f893efbb2f958b4424":88:28:MBEDTLS_MPI_MOD_EXT_REP_BE:0:0
|
||||
|
||||
Test mbedtls_mpi_mod_raw_io #9 LE (Buffer just fits, extra limbs, input limb-aligned with leading zeroes)
|
||||
mpi_mod_raw_io:"1fe15df284dfde4a142f68aa8d412023195cee66883e6290ffe703f4ea5963bf212713cee46b107c09182b5edcd955adac418bf4918e2889af48e1099d513830cec85c26ac1e158b52620e33ba8692f893efbb2f958b44240000000000000000":88:28:MBEDTLS_MPI_MOD_EXT_REP_LE:0:0
|
||||
|
||||
Test mbedtls_mpi_mod_raw_io #10 BE (Buffer just fits, extra limbs, input unaligned with leading zeroes)
|
||||
mpi_mod_raw_io:"00000000000000001fe15df284dfde4a142f68aa8d412023195cee66883e6290ffe703f4ea5963bf212713cee46b107c09182b5edcd955adac418bf4918e2889af48e1099d513830cec85c26ac1e158b52620e33ba8692f893efbb2f958b":86:28:MBEDTLS_MPI_MOD_EXT_REP_BE:0:0
|
||||
|
||||
Test mbedtls_mpi_mod_raw_io #10 LE (Buffer just fits, extra limbs, input unaligned with leading zeroes)
|
||||
mpi_mod_raw_io:"1fe15df284dfde4a142f68aa8d412023195cee66883e6290ffe703f4ea5963bf212713cee46b107c09182b5edcd955adac418bf4918e2889af48e1099d513830cec85c26ac1e158b52620e33ba8692f893efbb2f958b0000000000000000":86:28:MBEDTLS_MPI_MOD_EXT_REP_LE:0:0
|
||||
|
||||
Test mbedtls_mpi_mod_raw_io #11 BE (Zero)
|
||||
mpi_mod_raw_io:"00":1:1:MBEDTLS_MPI_MOD_EXT_REP_BE:0:0
|
||||
|
||||
Test mbedtls_mpi_mod_raw_io #11 LE (Zero)
|
||||
mpi_mod_raw_io:"00":1:1:MBEDTLS_MPI_MOD_EXT_REP_LE:0:0
|
||||
|
||||
Test mbedtls_mpi_mod_raw_io #12 BE (Zero, empty output)
|
||||
mpi_mod_raw_io:"00":0:1:MBEDTLS_MPI_MOD_EXT_REP_BE:0:0
|
||||
|
||||
Test mbedtls_mpi_mod_raw_io #12 LE (Zero, empty output)
|
||||
mpi_mod_raw_io:"00":0:1:MBEDTLS_MPI_MOD_EXT_REP_LE:0:0
|
||||
|
||||
Test mbedtls_mpi_mod_raw_io #13 BE (Zero, empty input)
|
||||
mpi_mod_raw_io:"":1:1:MBEDTLS_MPI_MOD_EXT_REP_BE:0:0
|
||||
|
||||
Test mbedtls_mpi_mod_raw_io #13 LE (Zero, empty input)
|
||||
mpi_mod_raw_io:"":1:1:MBEDTLS_MPI_MOD_EXT_REP_LE:0:0
|
||||
|
||||
Test mbedtls_mpi_mod_raw_io #14 BE (One)
|
||||
mpi_mod_raw_io:"01":1:1:MBEDTLS_MPI_MOD_EXT_REP_BE:0:0
|
||||
|
||||
Test mbedtls_mpi_mod_raw_io #14 LE (One)
|
||||
mpi_mod_raw_io:"01":1:1:MBEDTLS_MPI_MOD_EXT_REP_LE:0:0
|
||||
|
||||
Test mbedtls_mpi_mod_raw_io #14 BE (One limb)
|
||||
mpi_mod_raw_io:"ff00000000000000":8:2:MBEDTLS_MPI_MOD_EXT_REP_BE:0:0
|
||||
|
||||
Test mbedtls_mpi_mod_raw_io #14 LE (One limb)
|
||||
mpi_mod_raw_io:"00000000000000ff":8:2:MBEDTLS_MPI_MOD_EXT_REP_LE:0:0
|
||||
|
||||
Test mbedtls_mpi_mod_raw_io #15 BE (One limb)
|
||||
depends_on:MBEDTLS_HAVE_INT32
|
||||
mpi_mod_raw_io:"000000ff":4:1:MBEDTLS_MPI_MOD_EXT_REP_BE:0:0
|
||||
|
||||
Test mbedtls_mpi_mod_raw_io #15 LE (One limb)
|
||||
depends_on:MBEDTLS_HAVE_INT32
|
||||
mpi_mod_raw_io:"000000ff":4:1:MBEDTLS_MPI_MOD_EXT_REP_LE:0:0
|
||||
|
||||
Test mbedtls_mpi_mod_raw_io #16 BE (One limb)
|
||||
depends_on:MBEDTLS_HAVE_INT64
|
||||
mpi_mod_raw_io:"00000000000000ff":8:2:MBEDTLS_MPI_MOD_EXT_REP_BE:0:0
|
||||
|
||||
Test mbedtls_mpi_mod_raw_io #16 LE (One limb)
|
||||
depends_on:MBEDTLS_HAVE_INT64
|
||||
mpi_mod_raw_io:"00000000000000ff":8:2:MBEDTLS_MPI_MOD_EXT_REP_LE:0:0
|
||||
|
||||
Test mbedtls_mpi_mod_raw_io #17 BE (not enough limbs, input limb-aligned)
|
||||
mpi_mod_raw_io:"0941379d00fed1491fe15df284dfde4a142f68aa8d412023195cee66883e6290ffe703f4ea5963bf212713cee46b107c09182b5edcd955adac418bf4918e2889af48e1099d513830cec85c26ac1e158b52620e33ba8692f893efbb2f958b4424":96:22:MBEDTLS_MPI_MOD_EXT_REP_BE:MBEDTLS_ERR_MPI_BUFFER_TOO_SMALL:0
|
||||
|
||||
Test mbedtls_mpi_mod_raw_io #17 LE (not enough limbs, input limb-aligned)
|
||||
mpi_mod_raw_io:"0941379d00fed1491fe15df284dfde4a142f68aa8d412023195cee66883e6290ffe703f4ea5963bf212713cee46b107c09182b5edcd955adac418bf4918e2889af48e1099d513830cec85c26ac1e158b52620e33ba8692f893efbb2f958b4424":96:22:MBEDTLS_MPI_MOD_EXT_REP_LE:MBEDTLS_ERR_MPI_BUFFER_TOO_SMALL:0
|
||||
|
||||
Test mbedtls_mpi_mod_raw_io #18 BE (not enough limbs, input unaligned)
|
||||
mpi_mod_raw_io:"0941379d00fed1491fe15df284dfde4a142f68aa8d412023195cee66883e6290ffe703f4ea5963bf212713cee46b107c09182b5edcd955adac418bf4918e2889af48e1099d513830cec85c26ac1e158b52620e33ba8692f893efbb2f958b":94:22:MBEDTLS_MPI_MOD_EXT_REP_BE:MBEDTLS_ERR_MPI_BUFFER_TOO_SMALL:0
|
||||
|
||||
Test mbedtls_mpi_mod_raw_io #18 LE (not enough limbs, input unaligned)
|
||||
mpi_mod_raw_io:"0941379d00fed1491fe15df284dfde4a142f68aa8d412023195cee66883e6290ffe703f4ea5963bf212713cee46b107c09182b5edcd955adac418bf4918e2889af48e1099d513830cec85c26ac1e158b52620e33ba8692f893efbb2f958b":94:22:MBEDTLS_MPI_MOD_EXT_REP_LE:MBEDTLS_ERR_MPI_BUFFER_TOO_SMALL:0
|
||||
|
||||
Test mbedtls_mpi_mod_raw_io #19 BE (buffer too small, input limb-aligned)
|
||||
mpi_mod_raw_io:"0941379d00fed1491fe15df284dfde4a142f68aa8d412023195cee66883e6290ffe703f4ea5963bf212713cee46b107c09182b5edcd955adac418bf4918e2889af48e1099d513830cec85c26ac1e158b52620e33ba8692f893efbb2f958b4424":95:24:MBEDTLS_MPI_MOD_EXT_REP_BE:0:MBEDTLS_ERR_MPI_BUFFER_TOO_SMALL
|
||||
|
||||
Test mbedtls_mpi_mod_raw_io #19 LE (buffer too small, input limb-aligned)
|
||||
mpi_mod_raw_io:"0941379d00fed1491fe15df284dfde4a142f68aa8d412023195cee66883e6290ffe703f4ea5963bf212713cee46b107c09182b5edcd955adac418bf4918e2889af48e1099d513830cec85c26ac1e158b52620e33ba8692f893efbb2f958b4424":95:24:MBEDTLS_MPI_MOD_EXT_REP_LE:0:MBEDTLS_ERR_MPI_BUFFER_TOO_SMALL
|
||||
|
||||
Test mbedtls_mpi_mod_raw_io #20 BE (buffer too small, input unaligned)
|
||||
mpi_mod_raw_io:"0941379d00fed1491fe15df284dfde4a142f68aa8d412023195cee66883e6290ffe703f4ea5963bf212713cee46b107c09182b5edcd955adac418bf4918e2889af48e1099d513830cec85c26ac1e158b52620e33ba8692f893efbb2f958b":93:24:MBEDTLS_MPI_MOD_EXT_REP_BE:0:MBEDTLS_ERR_MPI_BUFFER_TOO_SMALL
|
||||
|
||||
Test mbedtls_mpi_mod_raw_io #20 LE (buffer too small, input unaligned)
|
||||
mpi_mod_raw_io:"0941379d00fed1491fe15df284dfde4a142f68aa8d412023195cee66883e6290ffe703f4ea5963bf212713cee46b107c09182b5edcd955adac418bf4918e2889af48e1099d513830cec85c26ac1e158b52620e33ba8692f893efbb2f958b":93:24:MBEDTLS_MPI_MOD_EXT_REP_LE:0:MBEDTLS_ERR_MPI_BUFFER_TOO_SMALL
|
||||
|
||||
Test mbedtls_mpi_mod_raw_io #21 BE (modulus is equal to input)
|
||||
mpi_mod_raw_io:"FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF":1024:256:MBEDTLS_MPI_MOD_EXT_REP_BE:MBEDTLS_ERR_MPI_BAD_INPUT_DATA:0
|
||||
|
||||
Test mbedtls_mpi_mod_raw_io #21 LE (modulus is equal to input)
|
||||
mpi_mod_raw_io:"FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF":1024:256:MBEDTLS_MPI_MOD_EXT_REP_LE:MBEDTLS_ERR_MPI_BAD_INPUT_DATA:0
|
||||
|
||||
Test mbedtls_mpi_mod_raw_io #22 (reading with invalid endianness)
|
||||
mpi_mod_raw_io:"":1:1:MBEDTLS_MPI_MOD_EXT_REP_INVALID:MBEDTLS_ERR_MPI_BAD_INPUT_DATA:0
|
||||
|
||||
Test mbedtls_mpi_mod_raw_io #22 (writing with invalid endianness)
|
||||
mpi_mod_raw_io:"":1:1:MBEDTLS_MPI_MOD_EXT_REP_INVALID:0:MBEDTLS_ERR_MPI_BAD_INPUT_DATA
|
||||
|
||||
mbedtls_mpi_mod_raw_cond_assign: 1 limb
|
||||
mpi_mod_raw_cond_assign:"FFFFFFFF":"11111111":4
|
||||
|
||||
mbedtls_mpi_mod_raw_cond_assign: more limbs #1
|
||||
mpi_mod_raw_cond_assign:"00000000FFFFFFFF55555555AAAAAAAA":"0123456789ABCDEF0123456789ABCDEF":16
|
||||
|
||||
mbedtls_mpi_mod_raw_cond_assign: more limbs #2
|
||||
mpi_mod_raw_cond_assign:"11111111EEEEEEEE77777777CCCCCCCC":"FEDCBA9876543210FEDCBA9876543210":16
|
||||
|
||||
mbedtls_mpi_mod_raw_cond_assign: more limbs #3
|
||||
mpi_mod_raw_cond_assign:"562D2B7E83BDC6FF783CEC0D6F46EAE7":"4C314E3B5CEB009C25F3300D5ECF670A":16
|
||||
|
||||
mbedtls_mpi_mod_raw_cond_assign: copy 256 bytes of limbs
|
||||
mpi_mod_raw_cond_assign:"00000000111111112222222233333333444444445555555566666666777777778888888899999999AAAAAAAABBBBBBBBCCCCCCCCDDDDDDDDEEEEEEEEFFFFFFFF00000000111111112222222233333333444444445555555566666666777777778888888899999999AAAAAAAABBBBBBBBCCCCCCCCDDDDDDDDEEEEEEEEFFFFFFFF00000000111111112222222233333333444444445555555566666666777777778888888899999999AAAAAAAABBBBBBBBCCCCCCCCDDDDDDDDEEEEEEEEFFFFFFFF00000000111111112222222233333333444444445555555566666666777777778888888899999999AAAAAAAABBBBBBBBCCCCCCCCDDDDDDDDEEEEEEEEFFFFFFFF":"38AAE958A11CCE9F4B4D0EDF64D31DF6FEA451D56B3BAB3DB796739B96C5C9C619DAE2AD5394D41FC3746A4F35BA186F02D908E900A2BA5AC95D494378A6A6FC619801DA3F3B4C5BAAA49B16DD3B2EF9AFB4B82449F90628E1438405D321ACA8476EA3E7124D46D5F25CD57143F2C6A022F7D6EBF7C726AEF56D97E3944EACD627A814D2F546F5A659DD316AE57584BC46F0D976D537E78AB09D2599BB0F073366C541CEF4B6D76FE72D000A01167FCE506B805B295C12BFCAA3B768D8E6AA50D939BDB519A94000B7B18B2D36AE888EDC33DC933E9612D112BB7A95D0748F175E69F00B9D8470C64E27B4FF39551B09FF046F864E9FC22A3E1F73570DF31214":256
|
||||
|
||||
mbedtls_mpi_mod_raw_cond_assign: copy half of the limbs
|
||||
mpi_mod_raw_cond_assign:"00000000FFFFFFFF55555555AAAAAAAA":"FEDCBA9876543210FEDCBA9876543210":8
|
||||
|
||||
mbedtls_mpi_mod_raw_cond_swap: same value
|
||||
mpi_mod_raw_cond_swap:"FFFFFFFF":"FFFFFFFF":4
|
||||
|
||||
mbedtls_mpi_mod_raw_cond_swap: 1 limb
|
||||
mpi_mod_raw_cond_swap:"FFFFFFFF":"11111111":4
|
||||
|
||||
mbedtls_mpi_mod_raw_cond_swap: more limbs #1
|
||||
mpi_mod_raw_cond_swap:"00000000FFFFFFFF55555555AAAAAAAA":"0123456789ABCDEF0123456789ABCDEF":16
|
||||
|
||||
mbedtls_mpi_mod_raw_cond_swap: more limbs #2
|
||||
mpi_mod_raw_cond_swap:"11111111EEEEEEEE77777777CCCCCCCC":"FEDCBA9876543210FEDCBA9876543210":16
|
||||
|
||||
mbedtls_mpi_mod_raw_cond_swap: more limbs #3
|
||||
mpi_mod_raw_cond_swap:"562D2B7E83BDC6FF783CEC0D6F46EAE7":"4C314E3B5CEB009C25F3300D5ECF670A":16
|
||||
|
||||
mbedtls_mpi_mod_raw_cond_swap: copy 256 bytes of limbs
|
||||
mpi_mod_raw_cond_swap:"00000000111111112222222233333333444444445555555566666666777777778888888899999999AAAAAAAABBBBBBBBCCCCCCCCDDDDDDDDEEEEEEEEFFFFFFFF00000000111111112222222233333333444444445555555566666666777777778888888899999999AAAAAAAABBBBBBBBCCCCCCCCDDDDDDDDEEEEEEEEFFFFFFFF00000000111111112222222233333333444444445555555566666666777777778888888899999999AAAAAAAABBBBBBBBCCCCCCCCDDDDDDDDEEEEEEEEFFFFFFFF00000000111111112222222233333333444444445555555566666666777777778888888899999999AAAAAAAABBBBBBBBCCCCCCCCDDDDDDDDEEEEEEEEFFFFFFFF":"A6154F6146E5AE06C705EF228DB022B4C0C908D9FF11E83CB0836A37DD11D72B5AE0D053B6D0B376B015E3B09DCC04644F12CBCBD0407300DEDA1D817E99A030BA128A57494F6C6BC650A840B70B3A1CDF8A75A387184C93DEF02DD538C60E8764AD2E4600952E09D24DC5524AB34070D25D204174D23B2BFDACBC67F8973C47FAF01CE9810130934AB6A94C5E6D223EDEAE904FD18368231AC3113C2CD73E879124CE21FC379C695C41D6861F5FB957570C3E6EF61F4FBA5D9945FB42931FC8E68370177DB313BEB7AF79B1F0F872368946FF35BD059E60677342EB3A0431714044AD508CD244B7CE200C5DC75B3BC7846A4CF0436C9288F2153124C9283171":256
|
||||
|
||||
mbedtls_mpi_mod_raw_cond_swap: copy half of the limbs
|
||||
mpi_mod_raw_cond_swap:"00000000FFFFFFFF55555555AAAAAAAA":"FEDCBA9876543210FEDCBA9876543210":8
|
||||
|
||||
865
vendor/mbedtls/tests/suites/test_suite_bignum_mod_raw.function
vendored
Normal file
865
vendor/mbedtls/tests/suites/test_suite_bignum_mod_raw.function
vendored
Normal file
@@ -0,0 +1,865 @@
|
||||
/* BEGIN_HEADER */
|
||||
#include "mbedtls/bignum.h"
|
||||
#include "mbedtls/entropy.h"
|
||||
#include "bignum_core.h"
|
||||
#include "bignum_mod_raw.h"
|
||||
#include "constant_time_internal.h"
|
||||
#include "test/constant_flow.h"
|
||||
|
||||
#include "bignum_mod_raw_invasive.h"
|
||||
|
||||
/* END_HEADER */
|
||||
|
||||
/* BEGIN_DEPENDENCIES
|
||||
* depends_on:MBEDTLS_BIGNUM_C:MBEDTLS_ECP_WITH_MPI_UINT
|
||||
* END_DEPENDENCIES
|
||||
*/
|
||||
|
||||
/* BEGIN_CASE */
|
||||
void mpi_mod_raw_io(data_t *input, int nb_int, int nx_32_int,
|
||||
int iendian, int iret, int oret)
|
||||
{
|
||||
mbedtls_mpi_mod_modulus m;
|
||||
mbedtls_mpi_mod_modulus_init(&m);
|
||||
|
||||
if (iret != 0) {
|
||||
TEST_ASSERT(oret == 0);
|
||||
}
|
||||
|
||||
TEST_LE_S(0, nb_int);
|
||||
size_t nb = nb_int;
|
||||
|
||||
unsigned char buf[1024];
|
||||
TEST_LE_U(nb, sizeof(buf));
|
||||
|
||||
/* nx_32_int is the number of 32 bit limbs, if we have 64 bit limbs we need
|
||||
* to halve the number of limbs to have the same size. */
|
||||
size_t nx;
|
||||
TEST_LE_S(0, nx_32_int);
|
||||
if (sizeof(mbedtls_mpi_uint) == 8) {
|
||||
nx = nx_32_int / 2 + nx_32_int % 2;
|
||||
} else {
|
||||
nx = nx_32_int;
|
||||
}
|
||||
|
||||
mbedtls_mpi_uint X[sizeof(buf) / sizeof(mbedtls_mpi_uint)];
|
||||
TEST_LE_U(nx, sizeof(X) / sizeof(X[0]));
|
||||
|
||||
int endian;
|
||||
if (iendian == MBEDTLS_MPI_MOD_EXT_REP_INVALID) {
|
||||
endian = MBEDTLS_MPI_MOD_EXT_REP_LE;
|
||||
} else {
|
||||
endian = iendian;
|
||||
}
|
||||
|
||||
mbedtls_mpi_uint init[sizeof(X) / sizeof(X[0])];
|
||||
memset(init, 0xFF, sizeof(init));
|
||||
int ret = mbedtls_mpi_mod_modulus_setup(&m, init, nx);
|
||||
TEST_EQUAL(ret, 0);
|
||||
|
||||
if (iendian == MBEDTLS_MPI_MOD_EXT_REP_INVALID && iret != 0) {
|
||||
endian = MBEDTLS_MPI_MOD_EXT_REP_INVALID;
|
||||
}
|
||||
|
||||
ret = mbedtls_mpi_mod_raw_read(X, &m, input->x, input->len, endian);
|
||||
TEST_EQUAL(ret, iret);
|
||||
|
||||
if (iret == 0) {
|
||||
if (iendian == MBEDTLS_MPI_MOD_EXT_REP_INVALID && oret != 0) {
|
||||
endian = MBEDTLS_MPI_MOD_EXT_REP_INVALID;
|
||||
}
|
||||
|
||||
ret = mbedtls_mpi_mod_raw_write(X, &m, buf, nb, endian);
|
||||
TEST_EQUAL(ret, oret);
|
||||
}
|
||||
|
||||
if ((iret == 0) && (oret == 0)) {
|
||||
if (nb > input->len) {
|
||||
if (endian == MBEDTLS_MPI_MOD_EXT_REP_BE) {
|
||||
size_t leading_zeroes = nb - input->len;
|
||||
TEST_ASSERT(memcmp(buf + nb - input->len, input->x, input->len) == 0);
|
||||
for (size_t i = 0; i < leading_zeroes; i++) {
|
||||
TEST_EQUAL(buf[i], 0);
|
||||
}
|
||||
} else {
|
||||
TEST_ASSERT(memcmp(buf, input->x, input->len) == 0);
|
||||
for (size_t i = input->len; i < nb; i++) {
|
||||
TEST_EQUAL(buf[i], 0);
|
||||
}
|
||||
}
|
||||
} else {
|
||||
if (endian == MBEDTLS_MPI_MOD_EXT_REP_BE) {
|
||||
size_t leading_zeroes = input->len - nb;
|
||||
TEST_ASSERT(memcmp(input->x + input->len - nb, buf, nb) == 0);
|
||||
for (size_t i = 0; i < leading_zeroes; i++) {
|
||||
TEST_EQUAL(input->x[i], 0);
|
||||
}
|
||||
} else {
|
||||
TEST_ASSERT(memcmp(input->x, buf, nb) == 0);
|
||||
for (size_t i = nb; i < input->len; i++) {
|
||||
TEST_EQUAL(input->x[i], 0);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
exit:
|
||||
mbedtls_mpi_mod_modulus_free(&m);
|
||||
}
|
||||
/* END_CASE */
|
||||
|
||||
/* BEGIN_CASE */
|
||||
void mpi_mod_raw_cond_assign(char *input_X,
|
||||
char *input_Y,
|
||||
int input_bytes)
|
||||
{
|
||||
mbedtls_mpi_uint *X = NULL;
|
||||
mbedtls_mpi_uint *Y = NULL;
|
||||
mbedtls_mpi_uint *buff_m = NULL;
|
||||
size_t limbs_X;
|
||||
size_t limbs_Y;
|
||||
|
||||
mbedtls_mpi_mod_modulus m;
|
||||
mbedtls_mpi_mod_modulus_init(&m);
|
||||
|
||||
TEST_EQUAL(mbedtls_test_read_mpi_core(&X, &limbs_X, input_X), 0);
|
||||
TEST_EQUAL(mbedtls_test_read_mpi_core(&Y, &limbs_Y, input_Y), 0);
|
||||
|
||||
size_t limbs = limbs_X;
|
||||
size_t copy_limbs = CHARS_TO_LIMBS(input_bytes);
|
||||
size_t bytes = limbs * sizeof(mbedtls_mpi_uint);
|
||||
size_t copy_bytes = copy_limbs * sizeof(mbedtls_mpi_uint);
|
||||
|
||||
TEST_EQUAL(limbs_X, limbs_Y);
|
||||
TEST_ASSERT(copy_limbs <= limbs);
|
||||
|
||||
TEST_CALLOC(buff_m, copy_limbs);
|
||||
memset(buff_m, 0xFF, copy_limbs);
|
||||
TEST_EQUAL(mbedtls_mpi_mod_modulus_setup(
|
||||
&m, buff_m, copy_limbs), 0);
|
||||
|
||||
/* condition is false */
|
||||
TEST_CF_SECRET(X, bytes);
|
||||
TEST_CF_SECRET(Y, bytes);
|
||||
|
||||
mbedtls_mpi_mod_raw_cond_assign(X, Y, &m, 0);
|
||||
|
||||
TEST_CF_PUBLIC(X, bytes);
|
||||
TEST_CF_PUBLIC(Y, bytes);
|
||||
|
||||
TEST_ASSERT(memcmp(X, Y, bytes) != 0);
|
||||
|
||||
/* condition is true */
|
||||
TEST_CF_SECRET(X, bytes);
|
||||
TEST_CF_SECRET(Y, bytes);
|
||||
|
||||
mbedtls_mpi_mod_raw_cond_assign(X, Y, &m, 1);
|
||||
|
||||
TEST_CF_PUBLIC(X, bytes);
|
||||
TEST_CF_PUBLIC(Y, bytes);
|
||||
|
||||
/* Check if the given length is copied even it is smaller
|
||||
than the length of the given MPIs. */
|
||||
if (copy_limbs < limbs) {
|
||||
TEST_MEMORY_COMPARE(X, copy_bytes, Y, copy_bytes);
|
||||
TEST_ASSERT(memcmp(X, Y, bytes) != 0);
|
||||
} else {
|
||||
TEST_MEMORY_COMPARE(X, bytes, Y, bytes);
|
||||
}
|
||||
|
||||
exit:
|
||||
mbedtls_free(X);
|
||||
mbedtls_free(Y);
|
||||
|
||||
mbedtls_mpi_mod_modulus_free(&m);
|
||||
mbedtls_free(buff_m);
|
||||
}
|
||||
/* END_CASE */
|
||||
|
||||
/* BEGIN_CASE */
|
||||
void mpi_mod_raw_cond_swap(char *input_X,
|
||||
char *input_Y,
|
||||
int input_bytes)
|
||||
{
|
||||
mbedtls_mpi_uint *tmp_X = NULL;
|
||||
mbedtls_mpi_uint *tmp_Y = NULL;
|
||||
mbedtls_mpi_uint *X = NULL;
|
||||
mbedtls_mpi_uint *Y = NULL;
|
||||
mbedtls_mpi_uint *buff_m = NULL;
|
||||
size_t limbs_X;
|
||||
size_t limbs_Y;
|
||||
|
||||
mbedtls_mpi_mod_modulus m;
|
||||
mbedtls_mpi_mod_modulus_init(&m);
|
||||
|
||||
TEST_EQUAL(mbedtls_test_read_mpi_core(&tmp_X, &limbs_X, input_X), 0);
|
||||
TEST_EQUAL(mbedtls_test_read_mpi_core(&tmp_Y, &limbs_Y, input_Y), 0);
|
||||
|
||||
size_t limbs = limbs_X;
|
||||
size_t copy_limbs = CHARS_TO_LIMBS(input_bytes);
|
||||
size_t bytes = limbs * sizeof(mbedtls_mpi_uint);
|
||||
size_t copy_bytes = copy_limbs * sizeof(mbedtls_mpi_uint);
|
||||
|
||||
TEST_EQUAL(limbs_X, limbs_Y);
|
||||
TEST_ASSERT(copy_limbs <= limbs);
|
||||
|
||||
TEST_CALLOC(buff_m, copy_limbs);
|
||||
memset(buff_m, 0xFF, copy_limbs);
|
||||
TEST_EQUAL(mbedtls_mpi_mod_modulus_setup(
|
||||
&m, buff_m, copy_limbs), 0);
|
||||
|
||||
TEST_CALLOC(X, limbs);
|
||||
memcpy(X, tmp_X, bytes);
|
||||
|
||||
TEST_CALLOC(Y, bytes);
|
||||
memcpy(Y, tmp_Y, bytes);
|
||||
|
||||
/* condition is false */
|
||||
TEST_CF_SECRET(X, bytes);
|
||||
TEST_CF_SECRET(Y, bytes);
|
||||
|
||||
mbedtls_mpi_mod_raw_cond_swap(X, Y, &m, 0);
|
||||
|
||||
TEST_CF_PUBLIC(X, bytes);
|
||||
TEST_CF_PUBLIC(Y, bytes);
|
||||
|
||||
TEST_MEMORY_COMPARE(X, bytes, tmp_X, bytes);
|
||||
TEST_MEMORY_COMPARE(Y, bytes, tmp_Y, bytes);
|
||||
|
||||
/* condition is true */
|
||||
TEST_CF_SECRET(X, bytes);
|
||||
TEST_CF_SECRET(Y, bytes);
|
||||
|
||||
mbedtls_mpi_mod_raw_cond_swap(X, Y, &m, 1);
|
||||
|
||||
TEST_CF_PUBLIC(X, bytes);
|
||||
TEST_CF_PUBLIC(Y, bytes);
|
||||
|
||||
/* Check if the given length is copied even it is smaller
|
||||
than the length of the given MPIs. */
|
||||
if (copy_limbs < limbs) {
|
||||
TEST_MEMORY_COMPARE(X, copy_bytes, tmp_Y, copy_bytes);
|
||||
TEST_MEMORY_COMPARE(Y, copy_bytes, tmp_X, copy_bytes);
|
||||
TEST_ASSERT(memcmp(X, tmp_X, bytes) != 0);
|
||||
TEST_ASSERT(memcmp(X, tmp_Y, bytes) != 0);
|
||||
TEST_ASSERT(memcmp(Y, tmp_X, bytes) != 0);
|
||||
TEST_ASSERT(memcmp(Y, tmp_Y, bytes) != 0);
|
||||
} else {
|
||||
TEST_MEMORY_COMPARE(X, bytes, tmp_Y, bytes);
|
||||
TEST_MEMORY_COMPARE(Y, bytes, tmp_X, bytes);
|
||||
}
|
||||
|
||||
exit:
|
||||
mbedtls_free(tmp_X);
|
||||
mbedtls_free(tmp_Y);
|
||||
mbedtls_free(X);
|
||||
mbedtls_free(Y);
|
||||
|
||||
mbedtls_mpi_mod_modulus_free(&m);
|
||||
mbedtls_free(buff_m);
|
||||
}
|
||||
/* END_CASE */
|
||||
|
||||
/* BEGIN_CASE */
|
||||
void mpi_mod_raw_sub(char *input_A,
|
||||
char *input_B,
|
||||
char *input_N,
|
||||
char *result)
|
||||
{
|
||||
mbedtls_mpi_uint *A = NULL;
|
||||
mbedtls_mpi_uint *B = NULL;
|
||||
mbedtls_mpi_uint *N = NULL;
|
||||
mbedtls_mpi_uint *X = NULL;
|
||||
mbedtls_mpi_uint *res = NULL;
|
||||
size_t limbs_A;
|
||||
size_t limbs_B;
|
||||
size_t limbs_N;
|
||||
size_t limbs_res;
|
||||
|
||||
mbedtls_mpi_mod_modulus m;
|
||||
mbedtls_mpi_mod_modulus_init(&m);
|
||||
|
||||
TEST_EQUAL(mbedtls_test_read_mpi_core(&A, &limbs_A, input_A), 0);
|
||||
TEST_EQUAL(mbedtls_test_read_mpi_core(&B, &limbs_B, input_B), 0);
|
||||
TEST_EQUAL(mbedtls_test_read_mpi_core(&N, &limbs_N, input_N), 0);
|
||||
TEST_EQUAL(mbedtls_test_read_mpi_core(&res, &limbs_res, result), 0);
|
||||
|
||||
size_t limbs = limbs_N;
|
||||
size_t bytes = limbs * sizeof(mbedtls_mpi_uint);
|
||||
|
||||
TEST_EQUAL(limbs_A, limbs);
|
||||
TEST_EQUAL(limbs_B, limbs);
|
||||
TEST_EQUAL(limbs_res, limbs);
|
||||
|
||||
TEST_CALLOC(X, limbs);
|
||||
|
||||
TEST_EQUAL(mbedtls_mpi_mod_modulus_setup(
|
||||
&m, N, limbs), 0);
|
||||
|
||||
mbedtls_mpi_mod_raw_sub(X, A, B, &m);
|
||||
TEST_MEMORY_COMPARE(X, bytes, res, bytes);
|
||||
|
||||
/* alias X to A */
|
||||
memcpy(X, A, bytes);
|
||||
mbedtls_mpi_mod_raw_sub(X, X, B, &m);
|
||||
TEST_MEMORY_COMPARE(X, bytes, res, bytes);
|
||||
|
||||
/* alias X to B */
|
||||
memcpy(X, B, bytes);
|
||||
mbedtls_mpi_mod_raw_sub(X, A, X, &m);
|
||||
TEST_MEMORY_COMPARE(X, bytes, res, bytes);
|
||||
|
||||
/* A == B: alias A and B */
|
||||
if (memcmp(A, B, bytes) == 0) {
|
||||
mbedtls_mpi_mod_raw_sub(X, A, A, &m);
|
||||
TEST_MEMORY_COMPARE(X, bytes, res, bytes);
|
||||
|
||||
/* X, A, B all aliased together */
|
||||
memcpy(X, A, bytes);
|
||||
mbedtls_mpi_mod_raw_sub(X, X, X, &m);
|
||||
TEST_MEMORY_COMPARE(X, bytes, res, bytes);
|
||||
}
|
||||
exit:
|
||||
mbedtls_free(A);
|
||||
mbedtls_free(B);
|
||||
mbedtls_free(X);
|
||||
mbedtls_free(res);
|
||||
|
||||
mbedtls_mpi_mod_modulus_free(&m);
|
||||
mbedtls_free(N);
|
||||
}
|
||||
/* END_CASE */
|
||||
|
||||
/* BEGIN_CASE depends_on:MBEDTLS_TEST_HOOKS */
|
||||
void mpi_mod_raw_fix_quasi_reduction(char *input_N,
|
||||
char *input_X,
|
||||
char *result)
|
||||
{
|
||||
mbedtls_mpi_uint *X = NULL;
|
||||
mbedtls_mpi_uint *N = NULL;
|
||||
mbedtls_mpi_uint *res = NULL;
|
||||
mbedtls_mpi_uint *tmp = NULL;
|
||||
size_t limbs_X;
|
||||
size_t limbs_N;
|
||||
size_t limbs_res;
|
||||
|
||||
mbedtls_mpi_mod_modulus m;
|
||||
mbedtls_mpi_mod_modulus_init(&m);
|
||||
|
||||
TEST_EQUAL(mbedtls_test_read_mpi_core(&X, &limbs_X, input_X), 0);
|
||||
TEST_EQUAL(mbedtls_test_read_mpi_core(&N, &limbs_N, input_N), 0);
|
||||
TEST_EQUAL(mbedtls_test_read_mpi_core(&res, &limbs_res, result), 0);
|
||||
|
||||
size_t limbs = limbs_N;
|
||||
size_t bytes = limbs * sizeof(mbedtls_mpi_uint);
|
||||
|
||||
TEST_EQUAL(limbs_X, limbs);
|
||||
TEST_EQUAL(limbs_res, limbs);
|
||||
|
||||
TEST_CALLOC(tmp, limbs);
|
||||
memcpy(tmp, X, bytes);
|
||||
|
||||
/* Check that 0 <= X < 2N */
|
||||
mbedtls_mpi_uint c = mbedtls_mpi_core_sub(tmp, X, N, limbs);
|
||||
TEST_ASSERT(c || mbedtls_mpi_core_lt_ct(tmp, N, limbs));
|
||||
|
||||
TEST_EQUAL(mbedtls_mpi_mod_modulus_setup(
|
||||
&m, N, limbs), 0);
|
||||
|
||||
mbedtls_mpi_mod_raw_fix_quasi_reduction(X, &m);
|
||||
TEST_MEMORY_COMPARE(X, bytes, res, bytes);
|
||||
|
||||
exit:
|
||||
mbedtls_free(X);
|
||||
mbedtls_free(res);
|
||||
mbedtls_free(tmp);
|
||||
|
||||
mbedtls_mpi_mod_modulus_free(&m);
|
||||
mbedtls_free(N);
|
||||
}
|
||||
/* END_CASE */
|
||||
|
||||
/* BEGIN_CASE */
|
||||
void mpi_mod_raw_mul(char *input_A,
|
||||
char *input_B,
|
||||
char *input_N,
|
||||
char *result)
|
||||
{
|
||||
mbedtls_mpi_uint *A = NULL;
|
||||
mbedtls_mpi_uint *B = NULL;
|
||||
mbedtls_mpi_uint *N = NULL;
|
||||
mbedtls_mpi_uint *X = NULL;
|
||||
mbedtls_mpi_uint *R = NULL;
|
||||
mbedtls_mpi_uint *T = NULL;
|
||||
size_t limbs_A;
|
||||
size_t limbs_B;
|
||||
size_t limbs_N;
|
||||
size_t limbs_R;
|
||||
|
||||
mbedtls_mpi_mod_modulus m;
|
||||
mbedtls_mpi_mod_modulus_init(&m);
|
||||
|
||||
TEST_EQUAL(mbedtls_test_read_mpi_core(&A, &limbs_A, input_A), 0);
|
||||
TEST_EQUAL(mbedtls_test_read_mpi_core(&B, &limbs_B, input_B), 0);
|
||||
TEST_EQUAL(mbedtls_test_read_mpi_core(&N, &limbs_N, input_N), 0);
|
||||
TEST_EQUAL(mbedtls_test_read_mpi_core(&R, &limbs_R, result), 0);
|
||||
|
||||
const size_t limbs = limbs_N;
|
||||
const size_t bytes = limbs * sizeof(mbedtls_mpi_uint);
|
||||
|
||||
TEST_EQUAL(limbs_A, limbs);
|
||||
TEST_EQUAL(limbs_B, limbs);
|
||||
TEST_EQUAL(limbs_R, limbs);
|
||||
|
||||
TEST_CALLOC(X, limbs);
|
||||
|
||||
TEST_EQUAL(mbedtls_mpi_mod_modulus_setup(
|
||||
&m, N, limbs), 0);
|
||||
|
||||
const size_t limbs_T = limbs * 2 + 1;
|
||||
TEST_CALLOC(T, limbs_T);
|
||||
|
||||
mbedtls_mpi_mod_raw_mul(X, A, B, &m, T);
|
||||
TEST_MEMORY_COMPARE(X, bytes, R, bytes);
|
||||
|
||||
/* alias X to A */
|
||||
memcpy(X, A, bytes);
|
||||
mbedtls_mpi_mod_raw_mul(X, X, B, &m, T);
|
||||
TEST_MEMORY_COMPARE(X, bytes, R, bytes);
|
||||
|
||||
/* alias X to B */
|
||||
memcpy(X, B, bytes);
|
||||
mbedtls_mpi_mod_raw_mul(X, A, X, &m, T);
|
||||
TEST_MEMORY_COMPARE(X, bytes, R, bytes);
|
||||
|
||||
/* A == B: alias A and B */
|
||||
if (memcmp(A, B, bytes) == 0) {
|
||||
mbedtls_mpi_mod_raw_mul(X, A, A, &m, T);
|
||||
TEST_MEMORY_COMPARE(X, bytes, R, bytes);
|
||||
|
||||
/* X, A, B all aliased together */
|
||||
memcpy(X, A, bytes);
|
||||
mbedtls_mpi_mod_raw_mul(X, X, X, &m, T);
|
||||
TEST_MEMORY_COMPARE(X, bytes, R, bytes);
|
||||
}
|
||||
/* A != B: test B * A */
|
||||
else {
|
||||
mbedtls_mpi_mod_raw_mul(X, B, A, &m, T);
|
||||
TEST_MEMORY_COMPARE(X, bytes, R, bytes);
|
||||
|
||||
/* B * A: alias X to A */
|
||||
memcpy(X, A, bytes);
|
||||
mbedtls_mpi_mod_raw_mul(X, B, X, &m, T);
|
||||
TEST_MEMORY_COMPARE(X, bytes, R, bytes);
|
||||
|
||||
/* B + A: alias X to B */
|
||||
memcpy(X, B, bytes);
|
||||
mbedtls_mpi_mod_raw_mul(X, X, A, &m, T);
|
||||
TEST_MEMORY_COMPARE(X, bytes, R, bytes);
|
||||
}
|
||||
|
||||
exit:
|
||||
mbedtls_free(A);
|
||||
mbedtls_free(B);
|
||||
mbedtls_free(X);
|
||||
mbedtls_free(R);
|
||||
mbedtls_free(T);
|
||||
|
||||
mbedtls_mpi_mod_modulus_free(&m);
|
||||
mbedtls_free(N);
|
||||
}
|
||||
/* END_CASE */
|
||||
|
||||
/* BEGIN_CASE */
|
||||
void mpi_mod_raw_inv_prime(char *input_N, char *input_A, char *input_X)
|
||||
{
|
||||
mbedtls_mpi_uint *A = NULL;
|
||||
mbedtls_mpi_uint *N = NULL;
|
||||
mbedtls_mpi_uint *X = NULL;
|
||||
size_t A_limbs, N_limbs, X_limbs;
|
||||
mbedtls_mpi_uint *Y = NULL;
|
||||
mbedtls_mpi_uint *T = NULL;
|
||||
const mbedtls_mpi_uint *R2 = NULL;
|
||||
|
||||
/* Legacy MPIs for computing R2 */
|
||||
mbedtls_mpi N_mpi; /* gets set up manually, aliasing N, so no need to free */
|
||||
mbedtls_mpi R2_mpi;
|
||||
mbedtls_mpi_init(&R2_mpi);
|
||||
|
||||
TEST_EQUAL(0, mbedtls_test_read_mpi_core(&A, &A_limbs, input_A));
|
||||
TEST_EQUAL(0, mbedtls_test_read_mpi_core(&N, &N_limbs, input_N));
|
||||
TEST_EQUAL(0, mbedtls_test_read_mpi_core(&X, &X_limbs, input_X));
|
||||
TEST_CALLOC(Y, N_limbs);
|
||||
|
||||
TEST_EQUAL(A_limbs, N_limbs);
|
||||
TEST_EQUAL(X_limbs, N_limbs);
|
||||
|
||||
N_mpi.s = 1;
|
||||
N_mpi.p = N;
|
||||
N_mpi.n = N_limbs;
|
||||
TEST_EQUAL(0, mbedtls_mpi_core_get_mont_r2_unsafe(&R2_mpi, &N_mpi));
|
||||
TEST_EQUAL(0, mbedtls_mpi_grow(&R2_mpi, N_limbs));
|
||||
R2 = R2_mpi.p;
|
||||
|
||||
size_t working_limbs = mbedtls_mpi_mod_raw_inv_prime_working_limbs(N_limbs);
|
||||
|
||||
/* No point exactly duplicating the code in mbedtls_mpi_mod_raw_inv_prime_working_limbs()
|
||||
* to see if the output is correct, but we can check that it's in a
|
||||
* reasonable range. The current calculation works out as
|
||||
* `1 + N_limbs * (welem + 4)`, where welem is the number of elements in
|
||||
* the window (1 << 1 up to 1 << 6).
|
||||
*/
|
||||
size_t min_expected_working_limbs = 1 + N_limbs * 5;
|
||||
size_t max_expected_working_limbs = 1 + N_limbs * 68;
|
||||
|
||||
TEST_LE_U(min_expected_working_limbs, working_limbs);
|
||||
TEST_LE_U(working_limbs, max_expected_working_limbs);
|
||||
|
||||
/* Should also be at least mbedtls_mpi_core_montmul_working_limbs() */
|
||||
TEST_LE_U(mbedtls_mpi_core_montmul_working_limbs(N_limbs),
|
||||
working_limbs);
|
||||
|
||||
TEST_CALLOC(T, working_limbs);
|
||||
|
||||
mbedtls_mpi_mod_raw_inv_prime(Y, A, N, N_limbs, R2, T);
|
||||
|
||||
TEST_EQUAL(0, memcmp(X, Y, N_limbs * sizeof(mbedtls_mpi_uint)));
|
||||
|
||||
/* Check when output aliased to input */
|
||||
|
||||
mbedtls_mpi_mod_raw_inv_prime(A, A, N, N_limbs, R2, T);
|
||||
|
||||
TEST_EQUAL(0, memcmp(X, A, N_limbs * sizeof(mbedtls_mpi_uint)));
|
||||
|
||||
exit:
|
||||
mbedtls_free(T);
|
||||
mbedtls_free(A);
|
||||
mbedtls_free(N);
|
||||
mbedtls_free(X);
|
||||
mbedtls_free(Y);
|
||||
mbedtls_mpi_free(&R2_mpi);
|
||||
// R2 doesn't need to be freed as it is only aliasing R2_mpi
|
||||
// N_mpi doesn't need to be freed as it is only aliasing N
|
||||
}
|
||||
/* END_CASE */
|
||||
|
||||
/* BEGIN_CASE */
|
||||
void mpi_mod_raw_add(char *input_N,
|
||||
char *input_A, char *input_B,
|
||||
char *input_S)
|
||||
{
|
||||
mbedtls_mpi_uint *A = NULL;
|
||||
mbedtls_mpi_uint *B = NULL;
|
||||
mbedtls_mpi_uint *S = NULL;
|
||||
mbedtls_mpi_uint *N = NULL;
|
||||
mbedtls_mpi_uint *X = NULL;
|
||||
size_t A_limbs, B_limbs, N_limbs, S_limbs;
|
||||
|
||||
mbedtls_mpi_mod_modulus m;
|
||||
mbedtls_mpi_mod_modulus_init(&m);
|
||||
|
||||
TEST_EQUAL(0, mbedtls_test_read_mpi_core(&A, &A_limbs, input_A));
|
||||
TEST_EQUAL(0, mbedtls_test_read_mpi_core(&B, &B_limbs, input_B));
|
||||
TEST_EQUAL(0, mbedtls_test_read_mpi_core(&N, &N_limbs, input_N));
|
||||
TEST_EQUAL(0, mbedtls_test_read_mpi_core(&S, &S_limbs, input_S));
|
||||
|
||||
/* Modulus gives the number of limbs; all inputs must have the same. */
|
||||
size_t limbs = N_limbs;
|
||||
size_t bytes = limbs * sizeof(*A);
|
||||
|
||||
TEST_EQUAL(A_limbs, limbs);
|
||||
TEST_EQUAL(B_limbs, limbs);
|
||||
TEST_EQUAL(S_limbs, limbs);
|
||||
|
||||
TEST_CALLOC(X, limbs);
|
||||
|
||||
TEST_EQUAL(mbedtls_mpi_mod_modulus_setup(
|
||||
&m, N, limbs), 0);
|
||||
|
||||
/* A + B => Correct result */
|
||||
mbedtls_mpi_mod_raw_add(X, A, B, &m);
|
||||
TEST_MEMORY_COMPARE(X, bytes, S, bytes);
|
||||
|
||||
/* A + B: alias X to A => Correct result */
|
||||
memcpy(X, A, bytes);
|
||||
mbedtls_mpi_mod_raw_add(X, X, B, &m);
|
||||
TEST_MEMORY_COMPARE(X, bytes, S, bytes);
|
||||
|
||||
/* A + B: alias X to B => Correct result */
|
||||
memcpy(X, B, bytes);
|
||||
mbedtls_mpi_mod_raw_add(X, A, X, &m);
|
||||
TEST_MEMORY_COMPARE(X, bytes, S, bytes);
|
||||
|
||||
if (memcmp(A, B, bytes) == 0) {
|
||||
/* A == B: alias A and B */
|
||||
|
||||
/* A + A => Correct result */
|
||||
mbedtls_mpi_mod_raw_add(X, A, A, &m);
|
||||
TEST_MEMORY_COMPARE(X, bytes, S, bytes);
|
||||
|
||||
/* A + A: X, A, B all aliased together => Correct result */
|
||||
memcpy(X, A, bytes);
|
||||
mbedtls_mpi_mod_raw_add(X, X, X, &m);
|
||||
TEST_MEMORY_COMPARE(X, bytes, S, bytes);
|
||||
} else {
|
||||
/* A != B: test B + A */
|
||||
|
||||
/* B + A => Correct result */
|
||||
mbedtls_mpi_mod_raw_add(X, B, A, &m);
|
||||
TEST_MEMORY_COMPARE(X, bytes, S, bytes);
|
||||
|
||||
/* B + A: alias X to A => Correct result */
|
||||
memcpy(X, A, bytes);
|
||||
mbedtls_mpi_mod_raw_add(X, B, X, &m);
|
||||
TEST_MEMORY_COMPARE(X, bytes, S, bytes);
|
||||
|
||||
/* B + A: alias X to B => Correct result */
|
||||
memcpy(X, B, bytes);
|
||||
mbedtls_mpi_mod_raw_add(X, X, A, &m);
|
||||
TEST_MEMORY_COMPARE(X, bytes, S, bytes);
|
||||
}
|
||||
|
||||
exit:
|
||||
mbedtls_mpi_mod_modulus_free(&m);
|
||||
|
||||
mbedtls_free(A);
|
||||
mbedtls_free(B);
|
||||
mbedtls_free(S);
|
||||
mbedtls_free(N);
|
||||
mbedtls_free(X);
|
||||
}
|
||||
/* END_CASE */
|
||||
|
||||
/* BEGIN_CASE */
|
||||
void mpi_mod_raw_canonical_to_modulus_rep(const char *input_N, int rep,
|
||||
const char *input_A,
|
||||
const char *input_X)
|
||||
{
|
||||
mbedtls_mpi_mod_modulus N;
|
||||
mbedtls_mpi_mod_modulus_init(&N);
|
||||
mbedtls_mpi_uint *A = NULL;
|
||||
size_t A_limbs = 0;;
|
||||
mbedtls_mpi_uint *X = NULL;
|
||||
size_t X_limbs = 0;
|
||||
|
||||
TEST_EQUAL(0, mbedtls_test_read_mpi_modulus(&N, input_N, rep));
|
||||
TEST_EQUAL(0, mbedtls_test_read_mpi_core(&A, &A_limbs, input_A));
|
||||
TEST_EQUAL(0, mbedtls_test_read_mpi_core(&X, &X_limbs, input_X));
|
||||
|
||||
TEST_EQUAL(0, mbedtls_mpi_mod_raw_canonical_to_modulus_rep(A, &N));
|
||||
TEST_MEMORY_COMPARE(A, A_limbs * sizeof(mbedtls_mpi_uint),
|
||||
X, X_limbs * sizeof(mbedtls_mpi_uint));
|
||||
|
||||
exit:
|
||||
mbedtls_test_mpi_mod_modulus_free_with_limbs(&N);
|
||||
mbedtls_free(A);
|
||||
mbedtls_free(X);
|
||||
}
|
||||
/* END_CASE */
|
||||
|
||||
/* BEGIN_CASE */
|
||||
void mpi_mod_raw_modulus_to_canonical_rep(const char *input_N, int rep,
|
||||
const char *input_A,
|
||||
const char *input_X)
|
||||
{
|
||||
mbedtls_mpi_mod_modulus N;
|
||||
mbedtls_mpi_mod_modulus_init(&N);
|
||||
mbedtls_mpi_uint *A = NULL;
|
||||
size_t A_limbs = 0;
|
||||
mbedtls_mpi_uint *X = NULL;
|
||||
size_t X_limbs = 0;
|
||||
|
||||
TEST_EQUAL(0, mbedtls_test_read_mpi_modulus(&N, input_N, rep));
|
||||
TEST_EQUAL(0, mbedtls_test_read_mpi_core(&A, &A_limbs, input_A));
|
||||
TEST_EQUAL(0, mbedtls_test_read_mpi_core(&X, &X_limbs, input_X));
|
||||
|
||||
TEST_EQUAL(0, mbedtls_mpi_mod_raw_modulus_to_canonical_rep(A, &N));
|
||||
TEST_MEMORY_COMPARE(A, A_limbs * sizeof(mbedtls_mpi_uint),
|
||||
X, X_limbs * sizeof(mbedtls_mpi_uint));
|
||||
|
||||
exit:
|
||||
mbedtls_test_mpi_mod_modulus_free_with_limbs(&N);
|
||||
mbedtls_free(A);
|
||||
mbedtls_free(X);
|
||||
}
|
||||
/* END_CASE */
|
||||
|
||||
/* BEGIN_CASE */
|
||||
void mpi_mod_raw_to_mont_rep(char *input_N, char *input_A, char *input_X)
|
||||
{
|
||||
mbedtls_mpi_uint *N = NULL;
|
||||
mbedtls_mpi_uint *A = NULL;
|
||||
mbedtls_mpi_uint *R = NULL; /* for result of low-level conversion */
|
||||
mbedtls_mpi_uint *X = NULL;
|
||||
mbedtls_mpi_uint *T = NULL;
|
||||
size_t n_limbs, a_limbs, x_limbs;
|
||||
|
||||
mbedtls_mpi_mod_modulus m;
|
||||
mbedtls_mpi_mod_modulus_init(&m);
|
||||
|
||||
/* Read inputs */
|
||||
TEST_EQUAL(0, mbedtls_test_read_mpi_core(&N, &n_limbs, input_N));
|
||||
TEST_EQUAL(0, mbedtls_test_read_mpi_core(&A, &a_limbs, input_A));
|
||||
TEST_EQUAL(0, mbedtls_test_read_mpi_core(&X, &x_limbs, input_X));
|
||||
|
||||
/* Number to convert must have same number of limbs as modulus */
|
||||
TEST_EQUAL(a_limbs, n_limbs);
|
||||
|
||||
/* Higher-level conversion is in-place, so expected result must have the
|
||||
* same number of limbs too */
|
||||
TEST_EQUAL(x_limbs, n_limbs);
|
||||
|
||||
size_t limbs = n_limbs;
|
||||
size_t bytes = limbs * sizeof(mbedtls_mpi_uint);
|
||||
|
||||
TEST_EQUAL(0, mbedtls_mpi_mod_modulus_setup(&m, N, n_limbs));
|
||||
|
||||
/* 1. Test low-level function first */
|
||||
|
||||
/* It has separate output, and requires temporary working storage */
|
||||
size_t temp_limbs = mbedtls_mpi_core_montmul_working_limbs(limbs);
|
||||
TEST_CALLOC(T, temp_limbs);
|
||||
TEST_CALLOC(R, limbs);
|
||||
mbedtls_mpi_core_to_mont_rep(R, A, N, n_limbs,
|
||||
m.rep.mont.mm, m.rep.mont.rr, T);
|
||||
/* Test that the low-level function gives the required value */
|
||||
TEST_MEMORY_COMPARE(R, bytes, X, bytes);
|
||||
|
||||
/* Test when output is aliased to input */
|
||||
memcpy(R, A, bytes);
|
||||
mbedtls_mpi_core_to_mont_rep(R, R, N, n_limbs,
|
||||
m.rep.mont.mm, m.rep.mont.rr, T);
|
||||
TEST_MEMORY_COMPARE(R, bytes, X, bytes);
|
||||
|
||||
/* 2. Test higher-level cannonical to Montgomery conversion */
|
||||
|
||||
TEST_EQUAL(0, mbedtls_mpi_mod_raw_to_mont_rep(A, &m));
|
||||
|
||||
/* The result matches expected value */
|
||||
TEST_MEMORY_COMPARE(A, bytes, X, bytes);
|
||||
|
||||
exit:
|
||||
mbedtls_mpi_mod_modulus_free(&m);
|
||||
mbedtls_free(T);
|
||||
mbedtls_free(N);
|
||||
mbedtls_free(A);
|
||||
mbedtls_free(R);
|
||||
mbedtls_free(X);
|
||||
}
|
||||
/* END_CASE */
|
||||
|
||||
/* BEGIN_CASE */
|
||||
void mpi_mod_raw_from_mont_rep(char *input_N, char *input_A, char *input_X)
|
||||
{
|
||||
mbedtls_mpi_uint *N = NULL;
|
||||
mbedtls_mpi_uint *A = NULL;
|
||||
mbedtls_mpi_uint *R = NULL; /* for result of low-level conversion */
|
||||
mbedtls_mpi_uint *X = NULL;
|
||||
mbedtls_mpi_uint *T = NULL;
|
||||
size_t n_limbs, a_limbs, x_limbs;
|
||||
|
||||
mbedtls_mpi_mod_modulus m;
|
||||
mbedtls_mpi_mod_modulus_init(&m);
|
||||
|
||||
/* Read inputs */
|
||||
TEST_EQUAL(0, mbedtls_test_read_mpi_core(&N, &n_limbs, input_N));
|
||||
TEST_EQUAL(0, mbedtls_test_read_mpi_core(&A, &a_limbs, input_A));
|
||||
TEST_EQUAL(0, mbedtls_test_read_mpi_core(&X, &x_limbs, input_X));
|
||||
|
||||
/* Number to convert must have same number of limbs as modulus */
|
||||
TEST_EQUAL(a_limbs, n_limbs);
|
||||
|
||||
/* Higher-level conversion is in-place, so expected result must have the
|
||||
* same number of limbs too */
|
||||
TEST_EQUAL(x_limbs, n_limbs);
|
||||
|
||||
size_t limbs = n_limbs;
|
||||
size_t bytes = limbs * sizeof(mbedtls_mpi_uint);
|
||||
|
||||
TEST_EQUAL(0, mbedtls_mpi_mod_modulus_setup(&m, N, n_limbs));
|
||||
|
||||
/* 1. Test low-level function first */
|
||||
|
||||
/* It has separate output, and requires temporary working storage */
|
||||
size_t temp_limbs = mbedtls_mpi_core_montmul_working_limbs(limbs);
|
||||
TEST_CALLOC(T, temp_limbs);
|
||||
TEST_CALLOC(R, limbs);
|
||||
mbedtls_mpi_core_from_mont_rep(R, A, N, n_limbs,
|
||||
m.rep.mont.mm, T);
|
||||
/* Test that the low-level function gives the required value */
|
||||
TEST_MEMORY_COMPARE(R, bytes, X, bytes);
|
||||
|
||||
/* Test when output is aliased to input */
|
||||
memcpy(R, A, bytes);
|
||||
mbedtls_mpi_core_from_mont_rep(R, R, N, n_limbs,
|
||||
m.rep.mont.mm, T);
|
||||
TEST_MEMORY_COMPARE(R, bytes, X, bytes);
|
||||
|
||||
/* 2. Test higher-level Montgomery to cannonical conversion */
|
||||
|
||||
TEST_EQUAL(0, mbedtls_mpi_mod_raw_from_mont_rep(A, &m));
|
||||
|
||||
/* The result matches expected value */
|
||||
TEST_MEMORY_COMPARE(A, bytes, X, bytes);
|
||||
|
||||
exit:
|
||||
mbedtls_mpi_mod_modulus_free(&m);
|
||||
mbedtls_free(T);
|
||||
mbedtls_free(N);
|
||||
mbedtls_free(A);
|
||||
mbedtls_free(R);
|
||||
mbedtls_free(X);
|
||||
}
|
||||
/* END_CASE */
|
||||
|
||||
/* BEGIN_CASE */
|
||||
void mpi_mod_raw_neg(char *input_N, char *input_A, char *input_X)
|
||||
{
|
||||
mbedtls_mpi_uint *N = NULL;
|
||||
mbedtls_mpi_uint *A = NULL;
|
||||
mbedtls_mpi_uint *X = NULL;
|
||||
mbedtls_mpi_uint *R = NULL;
|
||||
mbedtls_mpi_uint *Z = NULL;
|
||||
size_t n_limbs, a_limbs, x_limbs, bytes;
|
||||
|
||||
mbedtls_mpi_mod_modulus m;
|
||||
mbedtls_mpi_mod_modulus_init(&m);
|
||||
|
||||
/* Read inputs */
|
||||
TEST_EQUAL(0, mbedtls_test_read_mpi_core(&N, &n_limbs, input_N));
|
||||
TEST_EQUAL(0, mbedtls_test_read_mpi_core(&A, &a_limbs, input_A));
|
||||
TEST_EQUAL(0, mbedtls_test_read_mpi_core(&X, &x_limbs, input_X));
|
||||
|
||||
TEST_EQUAL(a_limbs, n_limbs);
|
||||
TEST_EQUAL(x_limbs, n_limbs);
|
||||
bytes = n_limbs * sizeof(mbedtls_mpi_uint);
|
||||
|
||||
TEST_CALLOC(R, n_limbs);
|
||||
TEST_CALLOC(Z, n_limbs);
|
||||
|
||||
TEST_EQUAL(0, mbedtls_mpi_mod_modulus_setup(&m, N, n_limbs));
|
||||
|
||||
/* Neg( A == 0 ) => Zero result */
|
||||
mbedtls_mpi_mod_raw_neg(R, Z, &m);
|
||||
TEST_MEMORY_COMPARE(R, bytes, Z, bytes);
|
||||
|
||||
/* Neg( A == N ) => Zero result */
|
||||
mbedtls_mpi_mod_raw_neg(R, N, &m);
|
||||
TEST_MEMORY_COMPARE(R, bytes, Z, bytes);
|
||||
|
||||
/* Neg( A ) => Correct result */
|
||||
mbedtls_mpi_mod_raw_neg(R, A, &m);
|
||||
TEST_MEMORY_COMPARE(R, bytes, X, bytes);
|
||||
|
||||
/* Neg( A ): alias A to R => Correct result */
|
||||
mbedtls_mpi_mod_raw_neg(A, A, &m);
|
||||
TEST_MEMORY_COMPARE(A, bytes, X, bytes);
|
||||
exit:
|
||||
mbedtls_mpi_mod_modulus_free(&m);
|
||||
mbedtls_free(N);
|
||||
mbedtls_free(A);
|
||||
mbedtls_free(X);
|
||||
mbedtls_free(R);
|
||||
mbedtls_free(Z);
|
||||
}
|
||||
/* END_CASE */
|
||||
9226
vendor/mbedtls/tests/suites/test_suite_bignum_mod_raw.generated.data
vendored
Normal file
9226
vendor/mbedtls/tests/suites/test_suite_bignum_mod_raw.generated.data
vendored
Normal file
File diff suppressed because it is too large
Load Diff
340
vendor/mbedtls/tests/suites/test_suite_bignum_random.data
vendored
Normal file
340
vendor/mbedtls/tests/suites/test_suite_bignum_random.data
vendored
Normal file
@@ -0,0 +1,340 @@
|
||||
MPI core random basic: 0..1
|
||||
mpi_core_random_basic:0:"01":0
|
||||
|
||||
MPI core random basic: 0..2
|
||||
mpi_core_random_basic:0:"02":0
|
||||
|
||||
MPI core random basic: 1..2
|
||||
mpi_core_random_basic:1:"02":0
|
||||
|
||||
MPI core random basic: 2^30..2^31
|
||||
mpi_core_random_basic:0x40000000:"80000000":0
|
||||
|
||||
MPI core random basic: 0..2^128
|
||||
mpi_core_random_basic:0x40000000:"0100000000000000000000000000000000":0
|
||||
|
||||
MPI core random basic: 2^30..2^129
|
||||
mpi_core_random_basic:0x40000000:"0200000000000000000000000000000000":0
|
||||
|
||||
# Use the same data values for mpi_core_random_basic->NOT_ACCEPTABLE
|
||||
# and for mpi_XXX_random_values where we want to return NOT_ACCEPTABLE
|
||||
# but this isn't checked at runtime.
|
||||
MPI core random basic: 2^28-1..2^28+1 (NOT_ACCEPTABLE)
|
||||
mpi_core_random_basic:0x0fffffff:"10000001":MBEDTLS_ERR_MPI_NOT_ACCEPTABLE
|
||||
|
||||
MPI random legacy=core: 2^28-1..2^28+1 (NOT_ACCEPTABLE)
|
||||
mpi_legacy_random_values:0x0fffffff:"10000001"
|
||||
|
||||
MPI random mod=core: 2^28-1..2^28+1 (NOT_ACCEPTABLE) (Mont)
|
||||
mpi_mod_random_values:0x0fffffff:"10000001":MBEDTLS_MPI_MOD_REP_MONTGOMERY
|
||||
|
||||
MPI random mod=core: 2^28-1..2^28+1 (NOT_ACCEPTABLE) (canon)
|
||||
mpi_mod_random_values:0x0fffffff:"10000001":MBEDTLS_MPI_MOD_REP_OPT_RED
|
||||
|
||||
MPI core random basic: 2^29-1..2^29+1 (NOT_ACCEPTABLE)
|
||||
mpi_core_random_basic:0x1fffffff:"20000001":MBEDTLS_ERR_MPI_NOT_ACCEPTABLE
|
||||
|
||||
MPI random legacy=core: 2^29-1..2^29+1 (NOT_ACCEPTABLE)
|
||||
mpi_legacy_random_values:0x1fffffff:"20000001"
|
||||
|
||||
MPI random mod=core: 2^29-1..2^29+1 (NOT_ACCEPTABLE) (Mont)
|
||||
mpi_mod_random_values:0x1fffffff:"20000001":MBEDTLS_MPI_MOD_REP_MONTGOMERY
|
||||
|
||||
MPI random mod=core: 2^29-1..2^29+1 (NOT_ACCEPTABLE) (canon)
|
||||
mpi_mod_random_values:0x1fffffff:"20000001":MBEDTLS_MPI_MOD_REP_OPT_RED
|
||||
|
||||
MPI core random basic: 2^30-1..2^30+1 (NOT_ACCEPTABLE)
|
||||
mpi_core_random_basic:0x3fffffff:"40000001":MBEDTLS_ERR_MPI_NOT_ACCEPTABLE
|
||||
|
||||
MPI random legacy=core: 2^30-1..2^30+1 (NOT_ACCEPTABLE)
|
||||
mpi_legacy_random_values:0x3fffffff:"40000001"
|
||||
|
||||
MPI random mod=core: 2^30-1..2^30+1 (NOT_ACCEPTABLE) (Mont)
|
||||
mpi_mod_random_values:0x3fffffff:"40000001":MBEDTLS_MPI_MOD_REP_MONTGOMERY
|
||||
|
||||
MPI random mod=core: 2^30-1..2^30+1 (NOT_ACCEPTABLE) (canon)
|
||||
mpi_mod_random_values:0x3fffffff:"40000001":MBEDTLS_MPI_MOD_REP_OPT_RED
|
||||
|
||||
MPI core random basic: 2^31-1..2^31+1 (NOT_ACCEPTABLE)
|
||||
mpi_core_random_basic:0x7fffffff:"80000001":MBEDTLS_ERR_MPI_NOT_ACCEPTABLE
|
||||
|
||||
MPI random legacy=core: 2^31-1..2^31+1 (NOT_ACCEPTABLE)
|
||||
mpi_legacy_random_values:0x7fffffff:"80000001"
|
||||
|
||||
MPI random mod=core: 2^31-1..2^31+1 (NOT_ACCEPTABLE) (Mont)
|
||||
mpi_mod_random_values:0x7fffffff:"80000001":MBEDTLS_MPI_MOD_REP_MONTGOMERY
|
||||
|
||||
MPI random mod=core: 2^31-1..2^31+1 (NOT_ACCEPTABLE) (canon)
|
||||
mpi_mod_random_values:0x7fffffff:"80000001":MBEDTLS_MPI_MOD_REP_OPT_RED
|
||||
|
||||
MPI random in range: 1..2
|
||||
mpi_random_many:1:"02":1000
|
||||
|
||||
MPI random in range: 1..3
|
||||
mpi_random_many:1:"03":1000
|
||||
|
||||
MPI random in range: 1..4
|
||||
mpi_random_many:1:"04":1000
|
||||
|
||||
MPI random in range: 1..5
|
||||
mpi_random_many:1:"05":1000
|
||||
|
||||
MPI random in range: 1..6
|
||||
mpi_random_many:1:"06":1000
|
||||
|
||||
MPI random in range: 1..7
|
||||
mpi_random_many:1:"07":1000
|
||||
|
||||
MPI random in range: 1..8
|
||||
mpi_random_many:1:"08":1000
|
||||
|
||||
MPI random in range: 1..9
|
||||
mpi_random_many:1:"09":1000
|
||||
|
||||
MPI random in range: 1..10
|
||||
mpi_random_many:1:"0a":1000
|
||||
|
||||
MPI random in range: 1..11
|
||||
mpi_random_many:1:"0b":1000
|
||||
|
||||
MPI random in range: 1..12
|
||||
mpi_random_many:1:"0c":1000
|
||||
|
||||
MPI random in range: 1..255
|
||||
mpi_random_many:1:"ff":200
|
||||
|
||||
MPI random in range: 1..256
|
||||
mpi_random_many:1:"0100":200
|
||||
|
||||
MPI random in range: 1..257
|
||||
mpi_random_many:1:"0101":200
|
||||
|
||||
MPI random in range: 1..272
|
||||
mpi_random_many:1:"0110":200
|
||||
|
||||
MPI random in range: 1..2^64-1
|
||||
mpi_random_many:1:"ffffffffffffffff":100
|
||||
|
||||
MPI random in range: 1..2^64
|
||||
mpi_random_many:1:"010000000000000000":100
|
||||
|
||||
MPI random in range: 1..2^64+1
|
||||
mpi_random_many:1:"010000000000000001":100
|
||||
|
||||
MPI random in range: 1..2^64+2^63
|
||||
mpi_random_many:1:"018000000000000000":100
|
||||
|
||||
MPI random in range: 1..2^65-1
|
||||
mpi_random_many:1:"01ffffffffffffffff":100
|
||||
|
||||
MPI random in range: 1..2^65
|
||||
mpi_random_many:1:"020000000000000000":100
|
||||
|
||||
MPI random in range: 1..2^65+1
|
||||
mpi_random_many:1:"020000000000000001":100
|
||||
|
||||
MPI random in range: 1..2^65+2^64
|
||||
mpi_random_many:1:"030000000000000000":100
|
||||
|
||||
MPI random in range: 1..2^66+2^65
|
||||
mpi_random_many:1:"060000000000000000":100
|
||||
|
||||
MPI random in range: 1..2^71-1
|
||||
mpi_random_many:1:"7fffffffffffffffff":100
|
||||
|
||||
MPI random in range: 1..2^71
|
||||
mpi_random_many:1:"800000000000000000":100
|
||||
|
||||
MPI random in range: 1..2^71+1
|
||||
mpi_random_many:1:"800000000000000001":100
|
||||
|
||||
MPI random in range: 1..2^71+2^70
|
||||
mpi_random_many:1:"c00000000000000000":100
|
||||
|
||||
MPI random in range: 1..2^72-1
|
||||
mpi_random_many:1:"ffffffffffffffffff":100
|
||||
|
||||
MPI random in range: 1..2^72
|
||||
mpi_random_many:1:"01000000000000000000":100
|
||||
|
||||
MPI random in range: 1..2^72+1
|
||||
mpi_random_many:1:"01000000000000000001":100
|
||||
|
||||
MPI random in range: 1..2^72+2^71
|
||||
mpi_random_many:1:"01800000000000000000":100
|
||||
|
||||
MPI random in range: 0..1
|
||||
mpi_random_many:0:"04":10000
|
||||
|
||||
MPI random in range: 0..4
|
||||
mpi_random_many:0:"04":10000
|
||||
|
||||
MPI random in range: 2..4
|
||||
mpi_random_many:2:"04":10000
|
||||
|
||||
MPI random in range: 3..4
|
||||
mpi_random_many:3:"04":10000
|
||||
|
||||
MPI random in range: smaller result
|
||||
mpi_random_sizes:1:"aaaaaaaaaaaaaaaabbbbbbbbbbbbbbbb":1:0
|
||||
|
||||
MPI random in range: same size result (32-bit limbs)
|
||||
mpi_random_sizes:1:"aaaaaaaaaaaaaaaa":2:0
|
||||
|
||||
MPI random in range: same size result (64-bit limbs)
|
||||
mpi_random_sizes:1:"aaaaaaaaaaaaaaaa":1:0
|
||||
|
||||
MPI random in range: larger result
|
||||
mpi_random_sizes:1:"aaaaaaaaaaaaaaaa":3:0
|
||||
|
||||
## The "0 limb in upper bound" tests rely on the fact that
|
||||
## mbedtls_mpi_read_binary() bases the size of the MPI on the size of
|
||||
## the input, without first checking for leading zeros. If this was
|
||||
## not the case, the tests would still pass, but would not exercise
|
||||
## the advertised behavior.
|
||||
MPI random in range: leading 0 limb in upper bound #0
|
||||
mpi_random_sizes:1:"00aaaaaaaaaaaaaaaa":0:0
|
||||
|
||||
MPI random in range: leading 0 limb in upper bound #1
|
||||
mpi_random_sizes:1:"00aaaaaaaaaaaaaaaa":1:0
|
||||
|
||||
MPI random in range: leading 0 limb in upper bound #2
|
||||
mpi_random_sizes:1:"00aaaaaaaaaaaaaaaa":2:0
|
||||
|
||||
MPI random in range: leading 0 limb in upper bound #3
|
||||
mpi_random_sizes:1:"00aaaaaaaaaaaaaaaa":3:0
|
||||
|
||||
MPI random in range: leading 0 limb in upper bound #4
|
||||
mpi_random_sizes:1:"00aaaaaaaaaaaaaaaa":4:0
|
||||
|
||||
MPI random in range: previously small >0
|
||||
mpi_random_sizes:1:"1234567890":4:1
|
||||
|
||||
MPI random in range: previously small <0
|
||||
mpi_random_sizes:1:"1234567890":4:-1
|
||||
|
||||
MPI random in range: previously large >0
|
||||
mpi_random_sizes:1:"1234":4:65
|
||||
|
||||
MPI random in range: previously large <0
|
||||
mpi_random_sizes:1:"1234":4:-65
|
||||
|
||||
MPI random bad arguments: min < 0
|
||||
mpi_random_fail:-1:"04":MBEDTLS_ERR_MPI_BAD_INPUT_DATA
|
||||
|
||||
MPI random bad arguments: min = N = 0
|
||||
mpi_random_fail:0:"00":MBEDTLS_ERR_MPI_BAD_INPUT_DATA
|
||||
|
||||
MPI random bad arguments: min = N = 1
|
||||
mpi_random_fail:1:"01":MBEDTLS_ERR_MPI_BAD_INPUT_DATA
|
||||
|
||||
MPI random bad arguments: min > N = 0
|
||||
mpi_random_fail:1:"00":MBEDTLS_ERR_MPI_BAD_INPUT_DATA
|
||||
|
||||
MPI random bad arguments: min > N = 1
|
||||
mpi_random_fail:2:"01":MBEDTLS_ERR_MPI_BAD_INPUT_DATA
|
||||
|
||||
MPI random bad arguments: min > N = 1, 0 limb in upper bound
|
||||
mpi_random_fail:2:"000000000000000001":MBEDTLS_ERR_MPI_BAD_INPUT_DATA
|
||||
|
||||
MPI random legacy=core: 0..1
|
||||
mpi_legacy_random_values:0:"01"
|
||||
|
||||
MPI random legacy=core: 0..2
|
||||
mpi_legacy_random_values:0:"02"
|
||||
|
||||
MPI random legacy=core: 1..2
|
||||
mpi_legacy_random_values:1:"02"
|
||||
|
||||
MPI random legacy=core: 2^30..2^31
|
||||
mpi_legacy_random_values:0x40000000:"80000000"
|
||||
|
||||
MPI random legacy=core: 2^31-1..2^32-1
|
||||
mpi_legacy_random_values:0x7fffffff:"ffffffff"
|
||||
|
||||
MPI random legacy=core: 0..2^256
|
||||
mpi_legacy_random_values:0:"010000000000000000000000000000000000000000000000000000000000000000"
|
||||
|
||||
MPI random legacy=core: 0..2^256+1
|
||||
mpi_legacy_random_values:0:"010000000000000000000000000000000000000000000000000000000000000001"
|
||||
|
||||
MPI random mod=core: 0..1 (Mont)
|
||||
mpi_mod_random_values:0:"01":MBEDTLS_MPI_MOD_REP_MONTGOMERY
|
||||
|
||||
MPI random mod=core: 0..1 (canon)
|
||||
mpi_mod_random_values:0:"01":MBEDTLS_MPI_MOD_REP_OPT_RED
|
||||
|
||||
MPI random mod=core: 0..3 (Mont)
|
||||
mpi_mod_random_values:0:"03":MBEDTLS_MPI_MOD_REP_MONTGOMERY
|
||||
|
||||
MPI random mod=core: 0..3 (canon)
|
||||
mpi_mod_random_values:0:"03":MBEDTLS_MPI_MOD_REP_OPT_RED
|
||||
|
||||
MPI random mod=core: 1..3 (Mont)
|
||||
mpi_mod_random_values:1:"03":MBEDTLS_MPI_MOD_REP_MONTGOMERY
|
||||
|
||||
MPI random mod=core: 1..3 (canon)
|
||||
mpi_mod_random_values:1:"03":MBEDTLS_MPI_MOD_REP_OPT_RED
|
||||
|
||||
MPI random mod=core: 2^30..2^31-1 (Mont)
|
||||
mpi_mod_random_values:0x40000000:"7fffffff":MBEDTLS_MPI_MOD_REP_MONTGOMERY
|
||||
|
||||
MPI random mod=core: 2^30..2^31-1 (canon)
|
||||
mpi_mod_random_values:0x40000000:"7fffffff":MBEDTLS_MPI_MOD_REP_OPT_RED
|
||||
|
||||
MPI random mod=core: 2^31-1..2^32-1 (Mont)
|
||||
mpi_mod_random_values:0x7fffffff:"ffffffff":MBEDTLS_MPI_MOD_REP_MONTGOMERY
|
||||
|
||||
MPI random mod=core: 2^31-1..2^32-1 (canon)
|
||||
mpi_mod_random_values:0x7fffffff:"ffffffff":MBEDTLS_MPI_MOD_REP_OPT_RED
|
||||
|
||||
MPI random mod=core: 0..2^256+1 (Mont)
|
||||
mpi_mod_random_values:0:"010000000000000000000000000000000000000000000000000000000000000001":MBEDTLS_MPI_MOD_REP_MONTGOMERY
|
||||
|
||||
MPI random mod=core: 0..2^256+1 (canon)
|
||||
mpi_mod_random_values:0:"010000000000000000000000000000000000000000000000000000000000000001":MBEDTLS_MPI_MOD_REP_OPT_RED
|
||||
|
||||
MPI random mod validation: 1 limb, good, 0..1
|
||||
mpi_mod_random_validation:0:"1":0:0
|
||||
|
||||
MPI random mod validation: 1 limb, good, 1..3
|
||||
mpi_mod_random_validation:1:"3":0:0
|
||||
|
||||
MPI random mod validation: 1 limb, good, 2..3
|
||||
mpi_mod_random_validation:2:"3":0:0
|
||||
|
||||
MPI random mod validation: 1 limb, good, 3..5
|
||||
mpi_mod_random_validation:3:"5":0:0
|
||||
|
||||
MPI random mod validation: 1 limb, good, 4..5
|
||||
mpi_mod_random_validation:4:"5":0:0
|
||||
|
||||
MPI random mod validation: 1 limb, good, 5..7
|
||||
mpi_mod_random_validation:5:"7":0:0
|
||||
|
||||
MPI random mod validation: 1 limb, good, 6..7
|
||||
mpi_mod_random_validation:6:"7":0:0
|
||||
|
||||
MPI random mod validation: 1 limb, good, 0..0x123
|
||||
mpi_mod_random_validation:0:"123":0:0
|
||||
|
||||
MPI random mod validation: 2+ limbs, good
|
||||
mpi_mod_random_validation:0:"01234567890123456789":0:0
|
||||
|
||||
MPI random mod validation: 1 limb, output null
|
||||
mpi_mod_random_validation:0:"123":-1:MBEDTLS_ERR_MPI_BAD_INPUT_DATA
|
||||
|
||||
MPI random mod validation: 1 limb, output too large
|
||||
mpi_mod_random_validation:0:"123":1:MBEDTLS_ERR_MPI_BAD_INPUT_DATA
|
||||
|
||||
MPI random mod validation: 2+ limbs, output too small
|
||||
mpi_mod_random_validation:0:"01234567890123456789":-1:MBEDTLS_ERR_MPI_BAD_INPUT_DATA
|
||||
|
||||
MPI random mod validation: 2+ limbs, output too large
|
||||
mpi_mod_random_validation:0:"01234567890123456789":1:MBEDTLS_ERR_MPI_BAD_INPUT_DATA
|
||||
|
||||
MPI random mod validation: min == upper bound
|
||||
mpi_mod_random_validation:0x123:"123":-1:MBEDTLS_ERR_MPI_BAD_INPUT_DATA
|
||||
|
||||
MPI random mod validation: min > upper bound
|
||||
mpi_mod_random_validation:0x124:"123":-1:MBEDTLS_ERR_MPI_BAD_INPUT_DATA
|
||||
479
vendor/mbedtls/tests/suites/test_suite_bignum_random.function
vendored
Normal file
479
vendor/mbedtls/tests/suites/test_suite_bignum_random.function
vendored
Normal file
@@ -0,0 +1,479 @@
|
||||
/* BEGIN_HEADER */
|
||||
/* Dedicated test suite for mbedtls_mpi_core_random() and the upper-layer
|
||||
* functions. Due to the complexity of how these functions are tested,
|
||||
* we test all the layers in a single test suite, unlike the way other
|
||||
* functions are tested with each layer in its own test suite.
|
||||
*
|
||||
* Test strategy
|
||||
* =============
|
||||
*
|
||||
* There are three main goals for testing random() functions:
|
||||
* - Parameter validation.
|
||||
* - Correctness of outputs (well-formed, in range).
|
||||
* - Distribution of outputs.
|
||||
*
|
||||
* We test parameter validation in a standard way, with unit tests with
|
||||
* positive and negative cases:
|
||||
* - mbedtls_mpi_core_random(): negative cases for mpi_core_random_basic.
|
||||
* - mbedtls_mpi_mod_raw_random(), mbedtls_mpi_mod_random(): negative
|
||||
* cases for mpi_mod_random_validation.
|
||||
* - mbedtls_mpi_random(): mpi_random_fail.
|
||||
*
|
||||
* We test the correctness of outputs in positive tests:
|
||||
* - mbedtls_mpi_core_random(): positive cases for mpi_core_random_basic,
|
||||
* and mpi_random_many.
|
||||
* - mbedtls_mpi_mod_raw_random(), mbedtls_mpi_mod_random(): tested indirectly
|
||||
* via mpi_mod_random_values.
|
||||
* - mbedtls_mpi_random(): mpi_random_sizes, plus indirectly via
|
||||
* mpi_random_values.
|
||||
*
|
||||
* We test the distribution of outputs only for mbedtls_mpi_core_random(),
|
||||
* in mpi_random_many, which runs the function multiple times. This also
|
||||
* helps in validating the output range, through test cases with a small
|
||||
* range where any output out of range would be very likely to lead to a
|
||||
* test failure. For the other functions, we validate the distribution
|
||||
* indirectly by testing that these functions consume the random generator
|
||||
* in the same way as mbedtls_mpi_core_random(). This is done in
|
||||
* mpi_mod_random_values and mpi_legacy_random_values.
|
||||
*/
|
||||
|
||||
#include "mbedtls/bignum.h"
|
||||
#include "mbedtls/entropy.h"
|
||||
#include "bignum_core.h"
|
||||
#include "bignum_mod_raw.h"
|
||||
#include "constant_time_internal.h"
|
||||
|
||||
/* This test suite only manipulates non-negative bignums. */
|
||||
static int sign_is_valid(const mbedtls_mpi *X)
|
||||
{
|
||||
return X->s == 1;
|
||||
}
|
||||
|
||||
/* A common initializer for test functions that should generate the same
|
||||
* sequences for reproducibility and good coverage. */
|
||||
const mbedtls_test_rnd_pseudo_info rnd_pseudo_seed = {
|
||||
/* 16-word key */
|
||||
{ 'T', 'h', 'i', 's', ' ', 'i', 's', ' ',
|
||||
'a', ' ', 's', 'e', 'e', 'd', '!', 0 },
|
||||
/* 2-word initial state, should be zero */
|
||||
0, 0
|
||||
};
|
||||
|
||||
/* Test whether bytes represents (in big-endian base 256) a number b that
|
||||
* is significantly above a power of 2. That is, b must not have a long run
|
||||
* of unset bits after the most significant bit.
|
||||
*
|
||||
* Let n be the bit-size of b, i.e. the integer such that 2^n <= b < 2^{n+1}.
|
||||
* This function returns 1 if, when drawing a number between 0 and b,
|
||||
* the probability that this number is at least 2^n is not negligible.
|
||||
* This probability is (b - 2^n) / b and this function checks that this
|
||||
* number is above some threshold A. The threshold value is heuristic and
|
||||
* based on the needs of mpi_random_many().
|
||||
*/
|
||||
static int is_significantly_above_a_power_of_2(data_t *bytes)
|
||||
{
|
||||
const uint8_t *p = bytes->x;
|
||||
size_t len = bytes->len;
|
||||
unsigned x;
|
||||
|
||||
/* Skip leading null bytes */
|
||||
while (len > 0 && p[0] == 0) {
|
||||
++p;
|
||||
--len;
|
||||
}
|
||||
/* 0 is not significantly above a power of 2 */
|
||||
if (len == 0) {
|
||||
return 0;
|
||||
}
|
||||
/* Extract the (up to) 2 most significant bytes */
|
||||
if (len == 1) {
|
||||
x = p[0];
|
||||
} else {
|
||||
x = (p[0] << 8) | p[1];
|
||||
}
|
||||
|
||||
/* Shift the most significant bit of x to position 8 and mask it out */
|
||||
while ((x & 0xfe00) != 0) {
|
||||
x >>= 1;
|
||||
}
|
||||
x &= 0x00ff;
|
||||
|
||||
/* At this point, x = floor((b - 2^n) / 2^(n-8)). b is significantly above
|
||||
* a power of 2 iff x is significantly above 0 compared to 2^8.
|
||||
* Testing x >= 2^4 amounts to picking A = 1/16 in the function
|
||||
* description above. */
|
||||
return x >= 0x10;
|
||||
}
|
||||
|
||||
/* END_HEADER */
|
||||
|
||||
/* BEGIN_DEPENDENCIES
|
||||
* depends_on:MBEDTLS_BIGNUM_C
|
||||
* END_DEPENDENCIES
|
||||
*/
|
||||
|
||||
/* BEGIN_CASE */
|
||||
void mpi_core_random_basic(int min, char *bound_bytes, int expected_ret)
|
||||
{
|
||||
/* Same RNG as in mpi_random_values */
|
||||
mbedtls_test_rnd_pseudo_info rnd = rnd_pseudo_seed;
|
||||
size_t limbs;
|
||||
mbedtls_mpi_uint *lower_bound = NULL;
|
||||
mbedtls_mpi_uint *upper_bound = NULL;
|
||||
mbedtls_mpi_uint *result = NULL;
|
||||
|
||||
TEST_EQUAL(0, mbedtls_test_read_mpi_core(&upper_bound, &limbs,
|
||||
bound_bytes));
|
||||
TEST_CALLOC(lower_bound, limbs);
|
||||
lower_bound[0] = min;
|
||||
TEST_CALLOC(result, limbs);
|
||||
|
||||
TEST_EQUAL(expected_ret,
|
||||
mbedtls_mpi_core_random(result, min, upper_bound, limbs,
|
||||
mbedtls_test_rnd_pseudo_rand, &rnd));
|
||||
|
||||
if (expected_ret == 0) {
|
||||
TEST_EQUAL(0, mbedtls_mpi_core_lt_ct(result, lower_bound, limbs));
|
||||
TEST_ASSERT(0 != mbedtls_mpi_core_lt_ct(result, upper_bound, limbs));
|
||||
}
|
||||
|
||||
exit:
|
||||
mbedtls_free(lower_bound);
|
||||
mbedtls_free(upper_bound);
|
||||
mbedtls_free(result);
|
||||
}
|
||||
/* END_CASE */
|
||||
|
||||
/* BEGIN_CASE */
|
||||
void mpi_legacy_random_values(int min, char *max_hex)
|
||||
{
|
||||
/* Same RNG as in mpi_core_random_basic */
|
||||
mbedtls_test_rnd_pseudo_info rnd_core = rnd_pseudo_seed;
|
||||
mbedtls_test_rnd_pseudo_info rnd_legacy;
|
||||
memcpy(&rnd_legacy, &rnd_core, sizeof(rnd_core));
|
||||
mbedtls_mpi max_legacy;
|
||||
mbedtls_mpi_init(&max_legacy);
|
||||
mbedtls_mpi_uint *R_core = NULL;
|
||||
mbedtls_mpi R_legacy;
|
||||
mbedtls_mpi_init(&R_legacy);
|
||||
|
||||
TEST_EQUAL(0, mbedtls_test_read_mpi(&max_legacy, max_hex));
|
||||
size_t limbs = max_legacy.n;
|
||||
TEST_CALLOC(R_core, limbs);
|
||||
|
||||
/* Call the legacy function and the core function with the same random
|
||||
* stream. */
|
||||
int core_ret = mbedtls_mpi_core_random(R_core, min, max_legacy.p, limbs,
|
||||
mbedtls_test_rnd_pseudo_rand,
|
||||
&rnd_core);
|
||||
int legacy_ret = mbedtls_mpi_random(&R_legacy, min, &max_legacy,
|
||||
mbedtls_test_rnd_pseudo_rand,
|
||||
&rnd_legacy);
|
||||
|
||||
/* They must return the same status, and, on success, output the
|
||||
* same number, with the same limb count. */
|
||||
TEST_EQUAL(core_ret, legacy_ret);
|
||||
if (core_ret == 0) {
|
||||
TEST_MEMORY_COMPARE(R_core, limbs * ciL,
|
||||
R_legacy.p, R_legacy.n * ciL);
|
||||
}
|
||||
|
||||
/* Also check that they have consumed the RNG in the same way. */
|
||||
/* This may theoretically fail on rare platforms with padding in
|
||||
* the structure! If this is a problem in practice, change to a
|
||||
* field-by-field comparison. */
|
||||
TEST_MEMORY_COMPARE(&rnd_core, sizeof(rnd_core),
|
||||
&rnd_legacy, sizeof(rnd_legacy));
|
||||
|
||||
exit:
|
||||
mbedtls_mpi_free(&max_legacy);
|
||||
mbedtls_free(R_core);
|
||||
mbedtls_mpi_free(&R_legacy);
|
||||
}
|
||||
/* END_CASE */
|
||||
|
||||
/* BEGIN_CASE depends_on:MBEDTLS_ECP_WITH_MPI_UINT */
|
||||
void mpi_mod_random_values(int min, char *max_hex, int rep)
|
||||
{
|
||||
/* Same RNG as in mpi_core_random_basic */
|
||||
mbedtls_test_rnd_pseudo_info rnd_core = rnd_pseudo_seed;
|
||||
mbedtls_test_rnd_pseudo_info rnd_mod_raw;
|
||||
memcpy(&rnd_mod_raw, &rnd_core, sizeof(rnd_core));
|
||||
mbedtls_test_rnd_pseudo_info rnd_mod;
|
||||
memcpy(&rnd_mod, &rnd_core, sizeof(rnd_core));
|
||||
mbedtls_mpi_uint *R_core = NULL;
|
||||
mbedtls_mpi_uint *R_mod_raw = NULL;
|
||||
mbedtls_mpi_uint *R_mod_digits = NULL;
|
||||
mbedtls_mpi_mod_residue R_mod;
|
||||
mbedtls_mpi_mod_modulus N;
|
||||
mbedtls_mpi_mod_modulus_init(&N);
|
||||
|
||||
TEST_EQUAL(mbedtls_test_read_mpi_modulus(&N, max_hex, rep), 0);
|
||||
TEST_CALLOC(R_core, N.limbs);
|
||||
TEST_CALLOC(R_mod_raw, N.limbs);
|
||||
TEST_CALLOC(R_mod_digits, N.limbs);
|
||||
TEST_EQUAL(mbedtls_mpi_mod_residue_setup(&R_mod, &N,
|
||||
R_mod_digits, N.limbs),
|
||||
0);
|
||||
|
||||
/* Call the core and mod random() functions with the same random stream. */
|
||||
int core_ret = mbedtls_mpi_core_random(R_core,
|
||||
min, N.p, N.limbs,
|
||||
mbedtls_test_rnd_pseudo_rand,
|
||||
&rnd_core);
|
||||
int mod_raw_ret = mbedtls_mpi_mod_raw_random(R_mod_raw,
|
||||
min, &N,
|
||||
mbedtls_test_rnd_pseudo_rand,
|
||||
&rnd_mod_raw);
|
||||
int mod_ret = mbedtls_mpi_mod_random(&R_mod,
|
||||
min, &N,
|
||||
mbedtls_test_rnd_pseudo_rand,
|
||||
&rnd_mod);
|
||||
|
||||
/* They must return the same status, and, on success, output the
|
||||
* same number, with the same limb count. */
|
||||
TEST_EQUAL(core_ret, mod_raw_ret);
|
||||
TEST_EQUAL(core_ret, mod_ret);
|
||||
if (core_ret == 0) {
|
||||
TEST_EQUAL(mbedtls_mpi_mod_raw_modulus_to_canonical_rep(R_mod_raw, &N),
|
||||
0);
|
||||
TEST_MEMORY_COMPARE(R_core, N.limbs * ciL,
|
||||
R_mod_raw, N.limbs * ciL);
|
||||
TEST_EQUAL(mbedtls_mpi_mod_raw_modulus_to_canonical_rep(R_mod_digits, &N),
|
||||
0);
|
||||
TEST_MEMORY_COMPARE(R_core, N.limbs * ciL,
|
||||
R_mod_digits, N.limbs * ciL);
|
||||
}
|
||||
|
||||
/* Also check that they have consumed the RNG in the same way. */
|
||||
/* This may theoretically fail on rare platforms with padding in
|
||||
* the structure! If this is a problem in practice, change to a
|
||||
* field-by-field comparison. */
|
||||
TEST_MEMORY_COMPARE(&rnd_core, sizeof(rnd_core),
|
||||
&rnd_mod_raw, sizeof(rnd_mod_raw));
|
||||
TEST_MEMORY_COMPARE(&rnd_core, sizeof(rnd_core),
|
||||
&rnd_mod, sizeof(rnd_mod));
|
||||
|
||||
exit:
|
||||
mbedtls_test_mpi_mod_modulus_free_with_limbs(&N);
|
||||
mbedtls_free(R_core);
|
||||
mbedtls_free(R_mod_raw);
|
||||
mbedtls_free(R_mod_digits);
|
||||
}
|
||||
/* END_CASE */
|
||||
|
||||
/* BEGIN_CASE */
|
||||
void mpi_random_many(int min, char *bound_hex, int iterations)
|
||||
{
|
||||
/* Generate numbers in the range 1..bound-1. Do it iterations times.
|
||||
* This function assumes that the value of bound is at least 2 and
|
||||
* that iterations is large enough that a one-in-2^iterations chance
|
||||
* effectively never occurs.
|
||||
*/
|
||||
|
||||
data_t bound_bytes = { NULL, 0 };
|
||||
mbedtls_mpi_uint *upper_bound = NULL;
|
||||
size_t limbs;
|
||||
size_t n_bits;
|
||||
mbedtls_mpi_uint *result = NULL;
|
||||
size_t b;
|
||||
/* If upper_bound is small, stats[b] is the number of times the value b
|
||||
* has been generated. Otherwise stats[b] is the number of times a
|
||||
* value with bit b set has been generated. */
|
||||
size_t *stats = NULL;
|
||||
size_t stats_len;
|
||||
int full_stats;
|
||||
size_t i;
|
||||
|
||||
TEST_EQUAL(0, mbedtls_test_read_mpi_core(&upper_bound, &limbs,
|
||||
bound_hex));
|
||||
TEST_CALLOC(result, limbs);
|
||||
|
||||
n_bits = mbedtls_mpi_core_bitlen(upper_bound, limbs);
|
||||
/* Consider a bound "small" if it's less than 2^5. This value is chosen
|
||||
* to be small enough that the probability of missing one value is
|
||||
* negligible given the number of iterations. It must be less than
|
||||
* 256 because some of the code below assumes that "small" values
|
||||
* fit in a byte. */
|
||||
if (n_bits <= 5) {
|
||||
full_stats = 1;
|
||||
stats_len = (uint8_t) upper_bound[0];
|
||||
} else {
|
||||
full_stats = 0;
|
||||
stats_len = n_bits;
|
||||
}
|
||||
TEST_CALLOC(stats, stats_len);
|
||||
|
||||
for (i = 0; i < (size_t) iterations; i++) {
|
||||
mbedtls_test_set_step(i);
|
||||
TEST_EQUAL(0, mbedtls_mpi_core_random(result,
|
||||
min, upper_bound, limbs,
|
||||
mbedtls_test_rnd_std_rand, NULL));
|
||||
|
||||
/* Temporarily use a legacy MPI for analysis, because the
|
||||
* necessary auxiliary functions don't exist yet in core. */
|
||||
mbedtls_mpi B = { .s = 1, .n = limbs, .p = upper_bound };
|
||||
mbedtls_mpi R = { .s = 1, .n = limbs, .p = result };
|
||||
|
||||
TEST_ASSERT(mbedtls_mpi_cmp_mpi(&R, &B) < 0);
|
||||
TEST_ASSERT(mbedtls_mpi_cmp_int(&R, min) >= 0);
|
||||
if (full_stats) {
|
||||
uint8_t value;
|
||||
TEST_EQUAL(0, mbedtls_mpi_write_binary(&R, &value, 1));
|
||||
TEST_ASSERT(value < stats_len);
|
||||
++stats[value];
|
||||
} else {
|
||||
for (b = 0; b < n_bits; b++) {
|
||||
stats[b] += mbedtls_mpi_get_bit(&R, b);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if (full_stats) {
|
||||
for (b = min; b < stats_len; b++) {
|
||||
mbedtls_test_set_step(1000000 + b);
|
||||
/* Assert that each value has been reached at least once.
|
||||
* This is almost guaranteed if the iteration count is large
|
||||
* enough. This is a very crude way of checking the distribution.
|
||||
*/
|
||||
TEST_ASSERT(stats[b] > 0);
|
||||
}
|
||||
} else {
|
||||
bound_bytes.len = limbs * sizeof(mbedtls_mpi_uint);
|
||||
TEST_CALLOC(bound_bytes.x, bound_bytes.len);
|
||||
mbedtls_mpi_core_write_be(upper_bound, limbs,
|
||||
bound_bytes.x, bound_bytes.len);
|
||||
int statistically_safe_all_the_way =
|
||||
is_significantly_above_a_power_of_2(&bound_bytes);
|
||||
for (b = 0; b < n_bits; b++) {
|
||||
mbedtls_test_set_step(1000000 + b);
|
||||
/* Assert that each bit has been set in at least one result and
|
||||
* clear in at least one result. Provided that iterations is not
|
||||
* too small, it would be extremely unlikely for this not to be
|
||||
* the case if the results are uniformly distributed.
|
||||
*
|
||||
* As an exception, the top bit may legitimately never be set
|
||||
* if bound is a power of 2 or only slightly above.
|
||||
*/
|
||||
if (statistically_safe_all_the_way || b != n_bits - 1) {
|
||||
TEST_ASSERT(stats[b] > 0);
|
||||
}
|
||||
TEST_ASSERT(stats[b] < (size_t) iterations);
|
||||
}
|
||||
}
|
||||
|
||||
exit:
|
||||
mbedtls_free(bound_bytes.x);
|
||||
mbedtls_free(upper_bound);
|
||||
mbedtls_free(result);
|
||||
mbedtls_free(stats);
|
||||
}
|
||||
/* END_CASE */
|
||||
|
||||
/* BEGIN_CASE */
|
||||
void mpi_random_sizes(int min, data_t *bound_bytes, int nlimbs, int before)
|
||||
{
|
||||
mbedtls_mpi upper_bound;
|
||||
mbedtls_mpi result;
|
||||
|
||||
mbedtls_mpi_init(&upper_bound);
|
||||
mbedtls_mpi_init(&result);
|
||||
|
||||
if (before != 0) {
|
||||
/* Set result to sign(before) * 2^(|before|-1) */
|
||||
TEST_ASSERT(mbedtls_mpi_lset(&result, before > 0 ? 1 : -1) == 0);
|
||||
if (before < 0) {
|
||||
before = -before;
|
||||
}
|
||||
TEST_ASSERT(mbedtls_mpi_shift_l(&result, before - 1) == 0);
|
||||
}
|
||||
|
||||
TEST_EQUAL(0, mbedtls_mpi_grow(&result, nlimbs));
|
||||
TEST_EQUAL(0, mbedtls_mpi_read_binary(&upper_bound,
|
||||
bound_bytes->x, bound_bytes->len));
|
||||
TEST_EQUAL(0, mbedtls_mpi_random(&result, min, &upper_bound,
|
||||
mbedtls_test_rnd_std_rand, NULL));
|
||||
TEST_ASSERT(sign_is_valid(&result));
|
||||
TEST_ASSERT(mbedtls_mpi_cmp_mpi(&result, &upper_bound) < 0);
|
||||
TEST_ASSERT(mbedtls_mpi_cmp_int(&result, min) >= 0);
|
||||
|
||||
exit:
|
||||
mbedtls_mpi_free(&upper_bound);
|
||||
mbedtls_mpi_free(&result);
|
||||
}
|
||||
/* END_CASE */
|
||||
|
||||
/* BEGIN_CASE depends_on:MBEDTLS_ECP_WITH_MPI_UINT */
|
||||
void mpi_mod_random_validation(int min, char *bound_hex,
|
||||
int result_limbs_delta,
|
||||
int expected_ret)
|
||||
{
|
||||
mbedtls_mpi_uint *result_digits = NULL;
|
||||
mbedtls_mpi_mod_modulus N;
|
||||
mbedtls_mpi_mod_modulus_init(&N);
|
||||
|
||||
TEST_EQUAL(mbedtls_test_read_mpi_modulus(&N, bound_hex,
|
||||
MBEDTLS_MPI_MOD_REP_OPT_RED),
|
||||
0);
|
||||
size_t result_limbs = N.limbs + result_limbs_delta;
|
||||
TEST_CALLOC(result_digits, result_limbs);
|
||||
/* Build a reside that might not match the modulus, to test that
|
||||
* the library function rejects that as expected. */
|
||||
mbedtls_mpi_mod_residue result = { result_digits, result_limbs };
|
||||
|
||||
TEST_EQUAL(mbedtls_mpi_mod_random(&result, min, &N,
|
||||
mbedtls_test_rnd_std_rand, NULL),
|
||||
expected_ret);
|
||||
if (expected_ret == 0) {
|
||||
/* Success should only be expected when the result has the same
|
||||
* size as the modulus, otherwise it's a mistake in the test data. */
|
||||
TEST_EQUAL(result_limbs, N.limbs);
|
||||
/* Sanity check: check that the result is in range */
|
||||
TEST_ASSERT(0 != mbedtls_mpi_core_lt_ct(result_digits, N.p, N.limbs));
|
||||
/* Check result >= min (changes result) */
|
||||
TEST_EQUAL(mbedtls_mpi_core_sub_int(result_digits, result_digits, min,
|
||||
result_limbs),
|
||||
0);
|
||||
}
|
||||
|
||||
/* When the result has the right number of limbs, also test mod_raw
|
||||
* (for which this is an unchecked precondition). */
|
||||
if (result_limbs_delta == 0) {
|
||||
TEST_EQUAL(mbedtls_mpi_mod_raw_random(result_digits, min, &N,
|
||||
mbedtls_test_rnd_std_rand, NULL),
|
||||
expected_ret);
|
||||
if (expected_ret == 0) {
|
||||
TEST_ASSERT(0 != mbedtls_mpi_core_lt_ct(result_digits, N.p, N.limbs));
|
||||
TEST_EQUAL(mbedtls_mpi_core_sub_int(result_digits, result.p, min,
|
||||
result_limbs),
|
||||
0);
|
||||
}
|
||||
}
|
||||
|
||||
exit:
|
||||
mbedtls_test_mpi_mod_modulus_free_with_limbs(&N);
|
||||
mbedtls_free(result_digits);
|
||||
}
|
||||
/* END_CASE */
|
||||
|
||||
/* BEGIN_CASE */
|
||||
void mpi_random_fail(int min, data_t *bound_bytes, int expected_ret)
|
||||
{
|
||||
mbedtls_mpi upper_bound;
|
||||
mbedtls_mpi result;
|
||||
int actual_ret;
|
||||
|
||||
mbedtls_mpi_init(&upper_bound);
|
||||
mbedtls_mpi_init(&result);
|
||||
|
||||
TEST_EQUAL(0, mbedtls_mpi_read_binary(&upper_bound,
|
||||
bound_bytes->x, bound_bytes->len));
|
||||
actual_ret = mbedtls_mpi_random(&result, min, &upper_bound,
|
||||
mbedtls_test_rnd_std_rand, NULL);
|
||||
TEST_EQUAL(expected_ret, actual_ret);
|
||||
|
||||
exit:
|
||||
mbedtls_mpi_free(&upper_bound);
|
||||
mbedtls_mpi_free(&result);
|
||||
}
|
||||
/* END_CASE */
|
||||
255
vendor/mbedtls/tests/suites/test_suite_block_cipher.data
vendored
Normal file
255
vendor/mbedtls/tests/suites/test_suite_block_cipher.data
vendored
Normal file
@@ -0,0 +1,255 @@
|
||||
Invalid input
|
||||
invalid:
|
||||
|
||||
AES-128-ECB Encrypt NIST KAT #1
|
||||
depends_on:MBEDTLS_AES_C
|
||||
test_vec:MBEDTLS_CIPHER_ID_AES:"00000000000000000000000000000000":"f34481ec3cc627bacd5dc3fb08f273e6":"0336763e966d92595a567cc9ce537f5e"
|
||||
|
||||
AES-128-ECB Encrypt NIST KAT #2
|
||||
depends_on:MBEDTLS_AES_C
|
||||
test_vec:MBEDTLS_CIPHER_ID_AES:"00000000000000000000000000000000":"9798c4640bad75c7c3227db910174e72":"a9a1631bf4996954ebc093957b234589"
|
||||
|
||||
AES-128-ECB Encrypt NIST KAT #3
|
||||
depends_on:MBEDTLS_AES_C
|
||||
test_vec:MBEDTLS_CIPHER_ID_AES:"00000000000000000000000000000000":"96ab5c2ff612d9dfaae8c31f30c42168":"ff4f8391a6a40ca5b25d23bedd44a597"
|
||||
|
||||
AES-128-ECB Encrypt NIST KAT #4
|
||||
depends_on:MBEDTLS_AES_C
|
||||
test_vec:MBEDTLS_CIPHER_ID_AES:"e0000000000000000000000000000000":"00000000000000000000000000000000":"72a1da770f5d7ac4c9ef94d822affd97"
|
||||
|
||||
AES-128-ECB Encrypt NIST KAT #5
|
||||
depends_on:MBEDTLS_AES_C
|
||||
test_vec:MBEDTLS_CIPHER_ID_AES:"f0000000000000000000000000000000":"00000000000000000000000000000000":"970014d634e2b7650777e8e84d03ccd8"
|
||||
|
||||
AES-128-ECB Encrypt NIST KAT #6
|
||||
depends_on:MBEDTLS_AES_C
|
||||
test_vec:MBEDTLS_CIPHER_ID_AES:"f8000000000000000000000000000000":"00000000000000000000000000000000":"f17e79aed0db7e279e955b5f493875a7"
|
||||
|
||||
AES-128-ECB Encrypt NIST KAT #7
|
||||
depends_on:MBEDTLS_AES_C
|
||||
test_vec:MBEDTLS_CIPHER_ID_AES:"fffffffffffff0000000000000000000":"00000000000000000000000000000000":"7b90785125505fad59b13c186dd66ce3"
|
||||
|
||||
AES-128-ECB Encrypt NIST KAT #8
|
||||
depends_on:MBEDTLS_AES_C
|
||||
test_vec:MBEDTLS_CIPHER_ID_AES:"fffffffffffff8000000000000000000":"00000000000000000000000000000000":"8b527a6aebdaec9eaef8eda2cb7783e5"
|
||||
|
||||
AES-128-ECB Encrypt NIST KAT #9
|
||||
depends_on:MBEDTLS_AES_C
|
||||
test_vec:MBEDTLS_CIPHER_ID_AES:"fffffffffffffc000000000000000000":"00000000000000000000000000000000":"43fdaf53ebbc9880c228617d6a9b548b"
|
||||
|
||||
AES-128-ECB Encrypt NIST KAT #10
|
||||
depends_on:MBEDTLS_AES_C
|
||||
test_vec:MBEDTLS_CIPHER_ID_AES:"ffffffffffffffffffffffffffffc000":"00000000000000000000000000000000":"70c46bb30692be657f7eaa93ebad9897"
|
||||
|
||||
AES-128-ECB Encrypt NIST KAT #11
|
||||
depends_on:MBEDTLS_AES_C
|
||||
test_vec:MBEDTLS_CIPHER_ID_AES:"ffffffffffffffffffffffffffffe000":"00000000000000000000000000000000":"323994cfb9da285a5d9642e1759b224a"
|
||||
|
||||
AES-128-ECB Encrypt NIST KAT #12
|
||||
depends_on:MBEDTLS_AES_C
|
||||
test_vec:MBEDTLS_CIPHER_ID_AES:"fffffffffffffffffffffffffffff000":"00000000000000000000000000000000":"1dbf57877b7b17385c85d0b54851e371"
|
||||
|
||||
AES-128-ECB Encrypt NIST KAT #13
|
||||
depends_on:MBEDTLS_AES_C
|
||||
test_vec:MBEDTLS_CIPHER_ID_AES:"00000000000000000000000000000000":"ffffffffffffffc00000000000000000":"3a4d354f02bb5a5e47d39666867f246a"
|
||||
|
||||
AES-128-ECB Encrypt NIST KAT #14
|
||||
depends_on:MBEDTLS_AES_C
|
||||
test_vec:MBEDTLS_CIPHER_ID_AES:"00000000000000000000000000000000":"ffffffffffffffe00000000000000000":"d451b8d6e1e1a0ebb155fbbf6e7b7dc3"
|
||||
|
||||
AES-128-ECB Encrypt NIST KAT #15
|
||||
depends_on:MBEDTLS_AES_C
|
||||
test_vec:MBEDTLS_CIPHER_ID_AES:"00000000000000000000000000000000":"fffffffffffffff00000000000000000":"6898d4f42fa7ba6a10ac05e87b9f2080"
|
||||
|
||||
AES-128-ECB Encrypt NIST KAT #16
|
||||
depends_on:MBEDTLS_AES_C
|
||||
test_vec:MBEDTLS_CIPHER_ID_AES:"00000000000000000000000000000000":"ffffffffffffffffffffffffe0000000":"082eb8be35f442fb52668e16a591d1d6"
|
||||
|
||||
AES-128-ECB Encrypt NIST KAT #17
|
||||
depends_on:MBEDTLS_AES_C
|
||||
test_vec:MBEDTLS_CIPHER_ID_AES:"00000000000000000000000000000000":"fffffffffffffffffffffffff0000000":"e656f9ecf5fe27ec3e4a73d00c282fb3"
|
||||
|
||||
AES-128-ECB Encrypt NIST KAT #18
|
||||
depends_on:MBEDTLS_AES_C
|
||||
test_vec:MBEDTLS_CIPHER_ID_AES:"00000000000000000000000000000000":"fffffffffffffffffffffffff8000000":"2ca8209d63274cd9a29bb74bcd77683a"
|
||||
|
||||
AES-192-ECB Encrypt NIST KAT #1
|
||||
depends_on:MBEDTLS_AES_C:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
test_vec:MBEDTLS_CIPHER_ID_AES:"000000000000000000000000000000000000000000000000":"fffffffffffffffffffff80000000000":"156f07767a85a4312321f63968338a01"
|
||||
|
||||
AES-192-ECB Encrypt NIST KAT #2
|
||||
depends_on:MBEDTLS_AES_C:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
test_vec:MBEDTLS_CIPHER_ID_AES:"000000000000000000000000000000000000000000000000":"fffffffffffffffffffffc0000000000":"15eec9ebf42b9ca76897d2cd6c5a12e2"
|
||||
|
||||
AES-192-ECB Encrypt NIST KAT #3
|
||||
depends_on:MBEDTLS_AES_C:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
test_vec:MBEDTLS_CIPHER_ID_AES:"000000000000000000000000000000000000000000000000":"fffffffffffffffffffffe0000000000":"db0d3a6fdcc13f915e2b302ceeb70fd8"
|
||||
|
||||
AES-192-ECB Encrypt NIST KAT #4
|
||||
depends_on:MBEDTLS_AES_C:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
test_vec:MBEDTLS_CIPHER_ID_AES:"000000000000000000000000000000000000000000000000":"51719783d3185a535bd75adc65071ce1":"4f354592ff7c8847d2d0870ca9481b7c"
|
||||
|
||||
AES-192-ECB Encrypt NIST KAT #5
|
||||
depends_on:MBEDTLS_AES_C:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
test_vec:MBEDTLS_CIPHER_ID_AES:"000000000000000000000000000000000000000000000000":"26aa49dcfe7629a8901a69a9914e6dfd":"d5e08bf9a182e857cf40b3a36ee248cc"
|
||||
|
||||
AES-192-ECB Encrypt NIST KAT #6
|
||||
depends_on:MBEDTLS_AES_C:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
test_vec:MBEDTLS_CIPHER_ID_AES:"000000000000000000000000000000000000000000000000":"941a4773058224e1ef66d10e0a6ee782":"067cd9d3749207791841562507fa9626"
|
||||
|
||||
AES-192-ECB Encrypt NIST KAT #7
|
||||
depends_on:MBEDTLS_AES_C:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
test_vec:MBEDTLS_CIPHER_ID_AES:"d2926527e0aa9f37b45e2ec2ade5853ef807576104c7ace3":"00000000000000000000000000000000":"dd619e1cf204446112e0af2b9afa8f8c"
|
||||
|
||||
AES-192-ECB Encrypt NIST KAT #8
|
||||
depends_on:MBEDTLS_AES_C:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
test_vec:MBEDTLS_CIPHER_ID_AES:"982215f4e173dfa0fcffe5d3da41c4812c7bcc8ed3540f93":"00000000000000000000000000000000":"d4f0aae13c8fe9339fbf9e69ed0ad74d"
|
||||
|
||||
AES-192-ECB Encrypt NIST KAT #9
|
||||
depends_on:MBEDTLS_AES_C:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
test_vec:MBEDTLS_CIPHER_ID_AES:"98c6b8e01e379fbd14e61af6af891596583565f2a27d59e9":"00000000000000000000000000000000":"19c80ec4a6deb7e5ed1033dda933498f"
|
||||
|
||||
AES-192-ECB Encrypt NIST KAT #10
|
||||
depends_on:MBEDTLS_AES_C:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
test_vec:MBEDTLS_CIPHER_ID_AES:"fffffffffffffffffffffffffff800000000000000000000":"00000000000000000000000000000000":"8dd274bd0f1b58ae345d9e7233f9b8f3"
|
||||
|
||||
AES-192-ECB Encrypt NIST KAT #11
|
||||
depends_on:MBEDTLS_AES_C:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
test_vec:MBEDTLS_CIPHER_ID_AES:"fffffffffffffffffffffffffffc00000000000000000000":"00000000000000000000000000000000":"9d6bdc8f4ce5feb0f3bed2e4b9a9bb0b"
|
||||
|
||||
AES-192-ECB Encrypt NIST KAT #12
|
||||
depends_on:MBEDTLS_AES_C:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
test_vec:MBEDTLS_CIPHER_ID_AES:"fffffffffffffffffffffffffffe00000000000000000000":"00000000000000000000000000000000":"fd5548bcf3f42565f7efa94562528d46"
|
||||
|
||||
AES-256-ECB Encrypt NIST KAT #1
|
||||
depends_on:MBEDTLS_AES_C:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
test_vec:MBEDTLS_CIPHER_ID_AES:"c1cc358b449909a19436cfbb3f852ef8bcb5ed12ac7058325f56e6099aab1a1c":"00000000000000000000000000000000":"352065272169abf9856843927d0674fd"
|
||||
|
||||
AES-256-ECB Encrypt NIST KAT #2
|
||||
depends_on:MBEDTLS_AES_C:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
test_vec:MBEDTLS_CIPHER_ID_AES:"984ca75f4ee8d706f46c2d98c0bf4a45f5b00d791c2dfeb191b5ed8e420fd627":"00000000000000000000000000000000":"4307456a9e67813b452e15fa8fffe398"
|
||||
|
||||
AES-256-ECB Encrypt NIST KAT #3
|
||||
depends_on:MBEDTLS_AES_C:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
test_vec:MBEDTLS_CIPHER_ID_AES:"b43d08a447ac8609baadae4ff12918b9f68fc1653f1269222f123981ded7a92f":"00000000000000000000000000000000":"4663446607354989477a5c6f0f007ef4"
|
||||
|
||||
AES-256-ECB Encrypt NIST KAT #4
|
||||
depends_on:MBEDTLS_AES_C:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
test_vec:MBEDTLS_CIPHER_ID_AES:"0000000000000000000000000000000000000000000000000000000000000000":"0b24af36193ce4665f2825d7b4749c98":"a9ff75bd7cf6613d3731c77c3b6d0c04"
|
||||
|
||||
AES-256-ECB Encrypt NIST KAT #5
|
||||
depends_on:MBEDTLS_AES_C:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
test_vec:MBEDTLS_CIPHER_ID_AES:"0000000000000000000000000000000000000000000000000000000000000000":"761c1fe41a18acf20d241650611d90f1":"623a52fcea5d443e48d9181ab32c7421"
|
||||
|
||||
AES-256-ECB Encrypt NIST KAT #6
|
||||
depends_on:MBEDTLS_AES_C:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
test_vec:MBEDTLS_CIPHER_ID_AES:"0000000000000000000000000000000000000000000000000000000000000000":"8a560769d605868ad80d819bdba03771":"38f2c7ae10612415d27ca190d27da8b4"
|
||||
|
||||
AES-256-ECB Encrypt NIST KAT #7
|
||||
depends_on:MBEDTLS_AES_C:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
test_vec:MBEDTLS_CIPHER_ID_AES:"0000000000000000000000000000000000000000000000000000000000000000":"ffffff80000000000000000000000000":"36aff0ef7bf3280772cf4cac80a0d2b2"
|
||||
|
||||
AES-256-ECB Encrypt NIST KAT #8
|
||||
depends_on:MBEDTLS_AES_C:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
test_vec:MBEDTLS_CIPHER_ID_AES:"0000000000000000000000000000000000000000000000000000000000000000":"ffffffc0000000000000000000000000":"1f8eedea0f62a1406d58cfc3ecea72cf"
|
||||
|
||||
AES-256-ECB Encrypt NIST KAT #9
|
||||
depends_on:MBEDTLS_AES_C:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
test_vec:MBEDTLS_CIPHER_ID_AES:"0000000000000000000000000000000000000000000000000000000000000000":"ffffffe0000000000000000000000000":"abf4154a3375a1d3e6b1d454438f95a6"
|
||||
|
||||
AES-256-ECB Encrypt NIST KAT #10
|
||||
depends_on:MBEDTLS_AES_C:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
test_vec:MBEDTLS_CIPHER_ID_AES:"ffffffffffffffffffffffffffffffffffff8000000000000000000000000000":"00000000000000000000000000000000":"45d089c36d5c5a4efc689e3b0de10dd5"
|
||||
|
||||
AES-256-ECB Encrypt NIST KAT #11
|
||||
depends_on:MBEDTLS_AES_C:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
test_vec:MBEDTLS_CIPHER_ID_AES:"ffffffffffffffffffffffffffffffffffffc000000000000000000000000000":"00000000000000000000000000000000":"b4da5df4becb5462e03a0ed00d295629"
|
||||
|
||||
AES-256-ECB Encrypt NIST KAT #12
|
||||
depends_on:MBEDTLS_AES_C:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
test_vec:MBEDTLS_CIPHER_ID_AES:"ffffffffffffffffffffffffffffffffffffe000000000000000000000000000":"00000000000000000000000000000000":"dcf4e129136c1a4b7a0f38935cc34b2b"
|
||||
|
||||
ARIA-128-ECB Encrypt - RFC 5794
|
||||
depends_on:MBEDTLS_ARIA_C
|
||||
test_vec:MBEDTLS_CIPHER_ID_ARIA:"000102030405060708090a0b0c0d0e0f":"00112233445566778899aabbccddeeff":"d718fbd6ab644c739da95f3be6451778"
|
||||
|
||||
ARIA-192-ECB Encrypt - RFC 5794
|
||||
depends_on:MBEDTLS_ARIA_C
|
||||
test_vec:MBEDTLS_CIPHER_ID_ARIA:"000102030405060708090a0b0c0d0e0f1011121314151617":"00112233445566778899aabbccddeeff":"26449c1805dbe7aa25a468ce263a9e79"
|
||||
|
||||
ARIA-256-ECB Encrypt - RFC 5794
|
||||
depends_on:MBEDTLS_ARIA_C
|
||||
test_vec:MBEDTLS_CIPHER_ID_ARIA:"000102030405060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e1f":"00112233445566778899aabbccddeeff":"f92bd7c79fb72e2f2b8f80c1972d24fc"
|
||||
|
||||
Camellia-128-ECB Encrypt RFC3713 #1
|
||||
depends_on:MBEDTLS_CAMELLIA_C
|
||||
test_vec:MBEDTLS_CIPHER_ID_CAMELLIA:"0123456789abcdeffedcba9876543210":"0123456789abcdeffedcba9876543210":"67673138549669730857065648eabe43"
|
||||
|
||||
Camellia-192-ECB Encrypt RFC3713 #1
|
||||
depends_on:MBEDTLS_CAMELLIA_C
|
||||
test_vec:MBEDTLS_CIPHER_ID_CAMELLIA:"0123456789abcdeffedcba98765432100011223344556677":"0123456789abcdeffedcba9876543210":"b4993401b3e996f84ee5cee7d79b09b9"
|
||||
|
||||
Camellia-256-ECB Encrypt RFC3713 #1
|
||||
depends_on:MBEDTLS_CAMELLIA_C
|
||||
test_vec:MBEDTLS_CIPHER_ID_CAMELLIA:"0123456789abcdeffedcba987654321000112233445566778899aabbccddeeff":"0123456789abcdeffedcba9876543210":"9acc237dff16d76c20ef7c919e3a7509"
|
||||
|
||||
Camellia-128-ECB Encrypt Perl EVP #1 [#1]
|
||||
depends_on:MBEDTLS_CAMELLIA_C
|
||||
test_vec:MBEDTLS_CIPHER_ID_CAMELLIA:"000102030405060708090A0B0C0D0E0F":"00112233445566778899AABBCCDDEEFF":"77CF412067AF8270613529149919546F"
|
||||
|
||||
Camellia-192-ECB Encrypt Perl EVP #1 [#1]
|
||||
depends_on:MBEDTLS_CAMELLIA_C
|
||||
test_vec:MBEDTLS_CIPHER_ID_CAMELLIA:"000102030405060708090A0B0C0D0E0F1011121314151617":"00112233445566778899AABBCCDDEEFF":"B22F3C36B72D31329EEE8ADDC2906C68"
|
||||
|
||||
Camellia-256-ECB Encrypt Perl EVP #1 [#1]
|
||||
depends_on:MBEDTLS_CAMELLIA_C
|
||||
test_vec:MBEDTLS_CIPHER_ID_CAMELLIA:"000102030405060708090A0B0C0D0E0F101112131415161718191A1B1C1D1E1F":"00112233445566778899AABBCCDDEEFF":"2EDF1F3418D53B88841FC8985FB1ECF2"
|
||||
|
||||
Camellia-128-ECB Encrypt Perl EVP #1 [#2]
|
||||
depends_on:MBEDTLS_CAMELLIA_C
|
||||
test_vec:MBEDTLS_CIPHER_ID_CAMELLIA:"2B7E151628AED2A6ABF7158809CF4F3C":"6BC1BEE22E409F96E93D7E117393172A":"432FC5DCD628115B7C388D770B270C96"
|
||||
|
||||
Camellia-128-ECB Encrypt Perl EVP #2
|
||||
depends_on:MBEDTLS_CAMELLIA_C
|
||||
test_vec:MBEDTLS_CIPHER_ID_CAMELLIA:"2B7E151628AED2A6ABF7158809CF4F3C":"AE2D8A571E03AC9C9EB76FAC45AF8E51":"0BE1F14023782A22E8384C5ABB7FAB2B"
|
||||
|
||||
Camellia-128-ECB Encrypt Perl EVP #3
|
||||
depends_on:MBEDTLS_CAMELLIA_C
|
||||
test_vec:MBEDTLS_CIPHER_ID_CAMELLIA:"2B7E151628AED2A6ABF7158809CF4F3C":"30C81C46A35CE411E5FBC1191A0A52EF":"A0A1ABCD1893AB6FE0FE5B65DF5F8636"
|
||||
|
||||
Camellia-128-ECB Encrypt Perl EVP #4
|
||||
depends_on:MBEDTLS_CAMELLIA_C
|
||||
test_vec:MBEDTLS_CIPHER_ID_CAMELLIA:"2B7E151628AED2A6ABF7158809CF4F3C":"F69F2445DF4F9B17AD2B417BE66C3710":"E61925E0D5DFAA9BB29F815B3076E51A"
|
||||
|
||||
Camellia-192-ECB Encrypt Perl EVP #1 [#2]
|
||||
depends_on:MBEDTLS_CAMELLIA_C
|
||||
test_vec:MBEDTLS_CIPHER_ID_CAMELLIA:"8E73B0F7DA0E6452C810F32B809079E562F8EAD2522C6B7B":"6BC1BEE22E409F96E93D7E117393172A":"CCCC6C4E138B45848514D48D0D3439D3"
|
||||
|
||||
Camellia-192-ECB Encrypt Perl EVP #2
|
||||
depends_on:MBEDTLS_CAMELLIA_C
|
||||
test_vec:MBEDTLS_CIPHER_ID_CAMELLIA:"8E73B0F7DA0E6452C810F32B809079E562F8EAD2522C6B7B":"AE2D8A571E03AC9C9EB76FAC45AF8E51":"5713C62C14B2EC0F8393B6AFD6F5785A"
|
||||
|
||||
Camellia-192-ECB Encrypt Perl EVP #3
|
||||
depends_on:MBEDTLS_CAMELLIA_C
|
||||
test_vec:MBEDTLS_CIPHER_ID_CAMELLIA:"8E73B0F7DA0E6452C810F32B809079E562F8EAD2522C6B7B":"30C81C46A35CE411E5FBC1191A0A52EF":"B40ED2B60EB54D09D030CF511FEEF366"
|
||||
|
||||
Camellia-192-ECB Encrypt Perl EVP #4
|
||||
depends_on:MBEDTLS_CAMELLIA_C
|
||||
test_vec:MBEDTLS_CIPHER_ID_CAMELLIA:"8E73B0F7DA0E6452C810F32B809079E562F8EAD2522C6B7B":"F69F2445DF4F9B17AD2B417BE66C3710":"909DBD95799096748CB27357E73E1D26"
|
||||
|
||||
Camellia-256-ECB Encrypt Perl EVP #1 [#2]
|
||||
depends_on:MBEDTLS_CAMELLIA_C
|
||||
test_vec:MBEDTLS_CIPHER_ID_CAMELLIA:"603DEB1015CA71BE2B73AEF0857D77811F352C073B6108D72D9810A30914DFF4":"6BC1BEE22E409F96E93D7E117393172A":"BEFD219B112FA00098919CD101C9CCFA"
|
||||
|
||||
Camellia-256-ECB Encrypt Perl EVP #2
|
||||
depends_on:MBEDTLS_CAMELLIA_C
|
||||
test_vec:MBEDTLS_CIPHER_ID_CAMELLIA:"603DEB1015CA71BE2B73AEF0857D77811F352C073B6108D72D9810A30914DFF4":"AE2D8A571E03AC9C9EB76FAC45AF8E51":"C91D3A8F1AEA08A9386CF4B66C0169EA"
|
||||
|
||||
Camellia-256-ECB Encrypt Perl EVP #3
|
||||
depends_on:MBEDTLS_CAMELLIA_C
|
||||
test_vec:MBEDTLS_CIPHER_ID_CAMELLIA:"603DEB1015CA71BE2B73AEF0857D77811F352C073B6108D72D9810A30914DFF4":"30C81C46A35CE411E5FBC1191A0A52EF":"A623D711DC5F25A51BB8A80D56397D28"
|
||||
|
||||
Camellia-256-ECB Encrypt Perl EVP #4
|
||||
depends_on:MBEDTLS_CAMELLIA_C
|
||||
test_vec:MBEDTLS_CIPHER_ID_CAMELLIA:"603DEB1015CA71BE2B73AEF0857D77811F352C073B6108D72D9810A30914DFF4":"F69F2445DF4F9B17AD2B417BE66C3710":"7960109FB6DC42947FCFE59EA3C5EB6B"
|
||||
|
||||
129
vendor/mbedtls/tests/suites/test_suite_block_cipher.function
vendored
Normal file
129
vendor/mbedtls/tests/suites/test_suite_block_cipher.function
vendored
Normal file
@@ -0,0 +1,129 @@
|
||||
/* BEGIN_HEADER */
|
||||
#include "block_cipher_internal.h"
|
||||
|
||||
#define BLOCK_SIZE 16
|
||||
|
||||
#if defined(MBEDTLS_AES_C)
|
||||
#define VALID_CIPHER_ID MBEDTLS_CIPHER_ID_AES
|
||||
#define BADKEY_ERROR MBEDTLS_ERR_AES_INVALID_KEY_LENGTH
|
||||
#elif defined(MBEDTLS_ARIA_C)
|
||||
#define VALID_CIPHER_ID MBEDTLS_CIPHER_ID_ARIA
|
||||
#define BADKEY_ERROR MBEDTLS_ERR_ARIA_BAD_INPUT_DATA
|
||||
#elif defined(MBEDTLS_CAMELLIA_C)
|
||||
#define VALID_CIPHER_ID MBEDTLS_CIPHER_ID_CAMELLIA
|
||||
#define BADKEY_ERROR MBEDTLS_ERR_CAMELLIA_BAD_INPUT_DATA
|
||||
#else
|
||||
#undef VALID_CIPHER_ID
|
||||
#endif
|
||||
/* END_HEADER */
|
||||
|
||||
/* BEGIN_DEPENDENCIES
|
||||
* depends_on:MBEDTLS_BLOCK_CIPHER_C
|
||||
* END_DEPENDENCIES
|
||||
*/
|
||||
|
||||
/* BEGIN_CASE depends_on:VALID_CIPHER_ID */
|
||||
void invalid()
|
||||
{
|
||||
/* That size is valid for a key or an input/output block. */
|
||||
unsigned char buf[16] = { 0 };
|
||||
|
||||
mbedtls_block_cipher_context_t ctx;
|
||||
|
||||
mbedtls_block_cipher_init(&ctx);
|
||||
|
||||
/* Bad parameters to setup */
|
||||
TEST_EQUAL(MBEDTLS_ERR_CIPHER_BAD_INPUT_DATA,
|
||||
mbedtls_block_cipher_setup(&ctx, MBEDTLS_CIPHER_ID_NONE));
|
||||
TEST_EQUAL(MBEDTLS_ERR_CIPHER_BAD_INPUT_DATA,
|
||||
mbedtls_block_cipher_setup(&ctx, MBEDTLS_CIPHER_ID_DES));
|
||||
|
||||
/* setkey() before successful setup() */
|
||||
TEST_EQUAL(MBEDTLS_ERR_CIPHER_INVALID_CONTEXT,
|
||||
mbedtls_block_cipher_setkey(&ctx, buf, 128));
|
||||
|
||||
/* encrypt() before successful setup() */
|
||||
TEST_EQUAL(MBEDTLS_ERR_CIPHER_INVALID_CONTEXT,
|
||||
mbedtls_block_cipher_encrypt(&ctx, buf, buf));
|
||||
|
||||
/* free() before successful setup()
|
||||
* No return value to check, but shouldn't cause memory errors. */
|
||||
mbedtls_block_cipher_free(&ctx);
|
||||
|
||||
/* Now properly setup the context */
|
||||
mbedtls_block_cipher_init(&ctx);
|
||||
TEST_EQUAL(0, mbedtls_block_cipher_setup(&ctx, VALID_CIPHER_ID));
|
||||
|
||||
/* Bad parameters to setkey() */
|
||||
TEST_EQUAL(BADKEY_ERROR,
|
||||
mbedtls_block_cipher_setkey(&ctx, buf, 42));
|
||||
|
||||
exit:
|
||||
mbedtls_block_cipher_free(&ctx);
|
||||
}
|
||||
/* END_CASE */
|
||||
|
||||
/* BEGIN_CASE */
|
||||
void test_vec(int cipher_id_arg, data_t *key, data_t *input, data_t *outref)
|
||||
{
|
||||
mbedtls_block_cipher_context_t ctx;
|
||||
mbedtls_cipher_id_t cipher_id = cipher_id_arg;
|
||||
unsigned char output[BLOCK_SIZE];
|
||||
|
||||
mbedtls_block_cipher_init(&ctx);
|
||||
|
||||
memset(output, 0x00, sizeof(output));
|
||||
|
||||
TEST_EQUAL(0, mbedtls_block_cipher_setup(&ctx, cipher_id));
|
||||
TEST_EQUAL(0, mbedtls_block_cipher_setkey(&ctx, key->x, 8 * key->len));
|
||||
|
||||
/* Encrypt with input != output */
|
||||
TEST_EQUAL(0, mbedtls_block_cipher_encrypt(&ctx, input->x, output));
|
||||
ASSERT_COMPARE(output, BLOCK_SIZE, outref->x, outref->len);
|
||||
|
||||
/* Encrypt with input == output.
|
||||
* (Also, encrypting again ensures the previous call to encrypt()
|
||||
* did not change the state of the context.) */
|
||||
memcpy(output, input->x, BLOCK_SIZE);
|
||||
TEST_EQUAL(0, mbedtls_block_cipher_encrypt(&ctx, output, output));
|
||||
ASSERT_COMPARE(output, BLOCK_SIZE, outref->x, outref->len);
|
||||
|
||||
exit:
|
||||
mbedtls_block_cipher_free(&ctx);
|
||||
}
|
||||
/* END_CASE */
|
||||
|
||||
/* BEGIN_CASE */
|
||||
void block_cipher_psa_dynamic_dispatch(int cipher_type, int pre_psa_ret, int post_psa_engine)
|
||||
{
|
||||
mbedtls_block_cipher_context_t ctx;
|
||||
(void) post_psa_engine;
|
||||
|
||||
/* Intentionally no PSA init here! (Will be done later.) */
|
||||
|
||||
mbedtls_block_cipher_init(&ctx);
|
||||
|
||||
/* Before PSA crypto init */
|
||||
TEST_EQUAL(pre_psa_ret, mbedtls_block_cipher_setup(&ctx, cipher_type));
|
||||
|
||||
#if defined(MBEDTLS_BLOCK_CIPHER_SOME_PSA)
|
||||
TEST_EQUAL(ctx.engine, MBEDTLS_BLOCK_CIPHER_ENGINE_LEGACY);
|
||||
#endif
|
||||
|
||||
mbedtls_block_cipher_free(&ctx);
|
||||
|
||||
/* Now initilize PSA Crypto */
|
||||
BLOCK_CIPHER_PSA_INIT();
|
||||
|
||||
mbedtls_block_cipher_init(&ctx);
|
||||
/* After PSA Crypto init */
|
||||
TEST_EQUAL(0, mbedtls_block_cipher_setup(&ctx, cipher_type));
|
||||
#if defined(MBEDTLS_BLOCK_CIPHER_SOME_PSA)
|
||||
TEST_EQUAL(ctx.engine, post_psa_engine);
|
||||
#endif
|
||||
|
||||
exit:
|
||||
mbedtls_block_cipher_free(&ctx);
|
||||
BLOCK_CIPHER_PSA_DONE();
|
||||
}
|
||||
/* END_CASE */
|
||||
35
vendor/mbedtls/tests/suites/test_suite_block_cipher.psa.data
vendored
Normal file
35
vendor/mbedtls/tests/suites/test_suite_block_cipher.psa.data
vendored
Normal file
@@ -0,0 +1,35 @@
|
||||
AES - legacy only
|
||||
depends_on:MBEDTLS_BLOCK_CIPHER_AES_VIA_LEGACY:!MBEDTLS_BLOCK_CIPHER_AES_VIA_PSA
|
||||
block_cipher_psa_dynamic_dispatch:MBEDTLS_CIPHER_ID_AES:0:MBEDTLS_BLOCK_CIPHER_ENGINE_LEGACY
|
||||
|
||||
AES - driver only
|
||||
depends_on:!MBEDTLS_BLOCK_CIPHER_AES_VIA_LEGACY:MBEDTLS_BLOCK_CIPHER_AES_VIA_PSA
|
||||
block_cipher_psa_dynamic_dispatch:MBEDTLS_CIPHER_ID_AES:MBEDTLS_ERR_CIPHER_BAD_INPUT_DATA:MBEDTLS_BLOCK_CIPHER_ENGINE_PSA
|
||||
|
||||
AES - legacy + driver
|
||||
depends_on:MBEDTLS_BLOCK_CIPHER_AES_VIA_LEGACY:MBEDTLS_BLOCK_CIPHER_AES_VIA_PSA
|
||||
block_cipher_psa_dynamic_dispatch:MBEDTLS_CIPHER_ID_AES:0:MBEDTLS_BLOCK_CIPHER_ENGINE_PSA
|
||||
|
||||
ARIA - legacy only
|
||||
depends_on:MBEDTLS_BLOCK_CIPHER_ARIA_VIA_LEGACY:!MBEDTLS_BLOCK_CIPHER_ARIA_VIA_PSA
|
||||
block_cipher_psa_dynamic_dispatch:MBEDTLS_CIPHER_ID_ARIA:0:MBEDTLS_BLOCK_CIPHER_ENGINE_LEGACY
|
||||
|
||||
ARIA - driver only
|
||||
depends_on:!MBEDTLS_BLOCK_CIPHER_ARIA_VIA_LEGACY:MBEDTLS_BLOCK_CIPHER_ARIA_VIA_PSA
|
||||
block_cipher_psa_dynamic_dispatch:MBEDTLS_CIPHER_ID_ARIA:MBEDTLS_ERR_CIPHER_BAD_INPUT_DATA:MBEDTLS_BLOCK_CIPHER_ENGINE_PSA
|
||||
|
||||
ARIA - legacy + driver
|
||||
depends_on:MBEDTLS_BLOCK_CIPHER_ARIA_VIA_LEGACY:MBEDTLS_BLOCK_CIPHER_ARIA_VIA_PSA
|
||||
block_cipher_psa_dynamic_dispatch:MBEDTLS_CIPHER_ID_ARIA:0:MBEDTLS_BLOCK_CIPHER_ENGINE_PSA
|
||||
|
||||
Camellia - legacy only
|
||||
depends_on:MBEDTLS_BLOCK_CIPHER_CAMELLIA_VIA_LEGACY:!MBEDTLS_BLOCK_CIPHER_CAMELLIA_VIA_PSA
|
||||
block_cipher_psa_dynamic_dispatch:MBEDTLS_CIPHER_ID_CAMELLIA:0:MBEDTLS_BLOCK_CIPHER_ENGINE_LEGACY
|
||||
|
||||
Camellia - driver only
|
||||
depends_on:!MBEDTLS_BLOCK_CIPHER_CAMELLIA_VIA_LEGACY:MBEDTLS_BLOCK_CIPHER_CAMELLIA_VIA_PSA
|
||||
block_cipher_psa_dynamic_dispatch:MBEDTLS_CIPHER_ID_CAMELLIA:MBEDTLS_ERR_CIPHER_BAD_INPUT_DATA:MBEDTLS_BLOCK_CIPHER_ENGINE_PSA
|
||||
|
||||
Camellia - legacy + driver
|
||||
depends_on:MBEDTLS_BLOCK_CIPHER_CAMELLIA_VIA_LEGACY:MBEDTLS_BLOCK_CIPHER_CAMELLIA_VIA_PSA
|
||||
block_cipher_psa_dynamic_dispatch:MBEDTLS_CIPHER_ID_CAMELLIA:0:MBEDTLS_BLOCK_CIPHER_ENGINE_PSA
|
||||
204
vendor/mbedtls/tests/suites/test_suite_camellia.data
vendored
Normal file
204
vendor/mbedtls/tests/suites/test_suite_camellia.data
vendored
Normal file
@@ -0,0 +1,204 @@
|
||||
Camellia - Invalid parameters
|
||||
camellia_invalid_param:
|
||||
|
||||
Camellia-128-ECB Encrypt RFC3713 #1
|
||||
camellia_encrypt_ecb:"0123456789abcdeffedcba9876543210":"0123456789abcdeffedcba9876543210":"67673138549669730857065648eabe43":0
|
||||
|
||||
Camellia-192-ECB Encrypt RFC3713 #1
|
||||
camellia_encrypt_ecb:"0123456789abcdeffedcba98765432100011223344556677":"0123456789abcdeffedcba9876543210":"b4993401b3e996f84ee5cee7d79b09b9":0
|
||||
|
||||
Camellia-256-ECB Encrypt RFC3713 #1
|
||||
camellia_encrypt_ecb:"0123456789abcdeffedcba987654321000112233445566778899aabbccddeeff":"0123456789abcdeffedcba9876543210":"9acc237dff16d76c20ef7c919e3a7509":0
|
||||
|
||||
Camellia-128-ECB Encrypt Perl EVP #1 [#1]
|
||||
camellia_encrypt_ecb:"000102030405060708090A0B0C0D0E0F":"00112233445566778899AABBCCDDEEFF":"77CF412067AF8270613529149919546F":0
|
||||
|
||||
Camellia-192-ECB Encrypt Perl EVP #1 [#1]
|
||||
camellia_encrypt_ecb:"000102030405060708090A0B0C0D0E0F1011121314151617":"00112233445566778899AABBCCDDEEFF":"B22F3C36B72D31329EEE8ADDC2906C68":0
|
||||
|
||||
Camellia-256-ECB Encrypt Perl EVP #1 [#1]
|
||||
camellia_encrypt_ecb:"000102030405060708090A0B0C0D0E0F101112131415161718191A1B1C1D1E1F":"00112233445566778899AABBCCDDEEFF":"2EDF1F3418D53B88841FC8985FB1ECF2":0
|
||||
|
||||
Camellia-128-ECB Encrypt Perl EVP #1 [#2]
|
||||
camellia_encrypt_ecb:"2B7E151628AED2A6ABF7158809CF4F3C":"6BC1BEE22E409F96E93D7E117393172A":"432FC5DCD628115B7C388D770B270C96":0
|
||||
|
||||
Camellia-128-ECB Encrypt Perl EVP #2
|
||||
camellia_encrypt_ecb:"2B7E151628AED2A6ABF7158809CF4F3C":"AE2D8A571E03AC9C9EB76FAC45AF8E51":"0BE1F14023782A22E8384C5ABB7FAB2B":0
|
||||
|
||||
Camellia-128-ECB Encrypt Perl EVP #3
|
||||
camellia_encrypt_ecb:"2B7E151628AED2A6ABF7158809CF4F3C":"30C81C46A35CE411E5FBC1191A0A52EF":"A0A1ABCD1893AB6FE0FE5B65DF5F8636":0
|
||||
|
||||
Camellia-128-ECB Encrypt Perl EVP #4
|
||||
camellia_encrypt_ecb:"2B7E151628AED2A6ABF7158809CF4F3C":"F69F2445DF4F9B17AD2B417BE66C3710":"E61925E0D5DFAA9BB29F815B3076E51A":0
|
||||
|
||||
Camellia-192-ECB Encrypt Perl EVP #1 [#2]
|
||||
camellia_encrypt_ecb:"8E73B0F7DA0E6452C810F32B809079E562F8EAD2522C6B7B":"6BC1BEE22E409F96E93D7E117393172A":"CCCC6C4E138B45848514D48D0D3439D3":0
|
||||
|
||||
Camellia-192-ECB Encrypt Perl EVP #2
|
||||
camellia_encrypt_ecb:"8E73B0F7DA0E6452C810F32B809079E562F8EAD2522C6B7B":"AE2D8A571E03AC9C9EB76FAC45AF8E51":"5713C62C14B2EC0F8393B6AFD6F5785A":0
|
||||
|
||||
Camellia-192-ECB Encrypt Perl EVP #3
|
||||
camellia_encrypt_ecb:"8E73B0F7DA0E6452C810F32B809079E562F8EAD2522C6B7B":"30C81C46A35CE411E5FBC1191A0A52EF":"B40ED2B60EB54D09D030CF511FEEF366":0
|
||||
|
||||
Camellia-192-ECB Encrypt Perl EVP #4
|
||||
camellia_encrypt_ecb:"8E73B0F7DA0E6452C810F32B809079E562F8EAD2522C6B7B":"F69F2445DF4F9B17AD2B417BE66C3710":"909DBD95799096748CB27357E73E1D26":0
|
||||
|
||||
Camellia-256-ECB Encrypt Perl EVP #1 [#2]
|
||||
camellia_encrypt_ecb:"603DEB1015CA71BE2B73AEF0857D77811F352C073B6108D72D9810A30914DFF4":"6BC1BEE22E409F96E93D7E117393172A":"BEFD219B112FA00098919CD101C9CCFA":0
|
||||
|
||||
Camellia-256-ECB Encrypt Perl EVP #2
|
||||
camellia_encrypt_ecb:"603DEB1015CA71BE2B73AEF0857D77811F352C073B6108D72D9810A30914DFF4":"AE2D8A571E03AC9C9EB76FAC45AF8E51":"C91D3A8F1AEA08A9386CF4B66C0169EA":0
|
||||
|
||||
Camellia-256-ECB Encrypt Perl EVP #3
|
||||
camellia_encrypt_ecb:"603DEB1015CA71BE2B73AEF0857D77811F352C073B6108D72D9810A30914DFF4":"30C81C46A35CE411E5FBC1191A0A52EF":"A623D711DC5F25A51BB8A80D56397D28":0
|
||||
|
||||
Camellia-256-ECB Encrypt Perl EVP #4
|
||||
camellia_encrypt_ecb:"603DEB1015CA71BE2B73AEF0857D77811F352C073B6108D72D9810A30914DFF4":"F69F2445DF4F9B17AD2B417BE66C3710":"7960109FB6DC42947FCFE59EA3C5EB6B":0
|
||||
|
||||
Camellia-128-CBC Encrypt Perl EVP #1
|
||||
camellia_encrypt_cbc:"2B7E151628AED2A6ABF7158809CF4F3C":"000102030405060708090A0B0C0D0E0F":"6BC1BEE22E409F96E93D7E117393172A":"1607CF494B36BBF00DAEB0B503C831AB":0
|
||||
|
||||
Camellia-128-CBC Encrypt Perl EVP #2
|
||||
camellia_encrypt_cbc:"2B7E151628AED2A6ABF7158809CF4F3C":"1607CF494B36BBF00DAEB0B503C831AB":"AE2D8A571E03AC9C9EB76FAC45AF8E51":"A2F2CF671629EF7840C5A5DFB5074887":0
|
||||
|
||||
Camellia-128-CBC Encrypt Perl EVP #3
|
||||
camellia_encrypt_cbc:"2B7E151628AED2A6ABF7158809CF4F3C":"A2F2CF671629EF7840C5A5DFB5074887":"30C81C46A35CE411E5FBC1191A0A52EF":"0F06165008CF8B8B5A63586362543E54":0
|
||||
|
||||
Camellia-128-CBC Encrypt Perl EVP #4
|
||||
camellia_encrypt_cbc:"2B7E151628AED2A6ABF7158809CF4F3C":"36A84CDAFD5F9A85ADA0F0A993D6D577":"F69F2445DF4F9B17AD2B417BE66C3710":"74C64268CDB8B8FAF5B34E8AF3732980":0
|
||||
|
||||
Camellia-192-CBC Encrypt Perl EVP #1
|
||||
camellia_encrypt_cbc:"8E73B0F7DA0E6452C810F32B809079E562F8EAD2522C6B7B":"000102030405060708090A0B0C0D0E0F":"6BC1BEE22E409F96E93D7E117393172A":"2A4830AB5AC4A1A2405955FD2195CF93":0
|
||||
|
||||
Camellia-192-CBC Encrypt Perl EVP #2
|
||||
camellia_encrypt_cbc:"8E73B0F7DA0E6452C810F32B809079E562F8EAD2522C6B7B":"2A4830AB5AC4A1A2405955FD2195CF93":"AE2D8A571E03AC9C9EB76FAC45AF8E51":"5D5A869BD14CE54264F892A6DD2EC3D5":0
|
||||
|
||||
Camellia-192-CBC Encrypt Perl EVP #3
|
||||
camellia_encrypt_cbc:"8E73B0F7DA0E6452C810F32B809079E562F8EAD2522C6B7B":"5D5A869BD14CE54264F892A6DD2EC3D5":"30C81C46A35CE411E5FBC1191A0A52EF":"37D359C3349836D884E310ADDF68C449":0
|
||||
|
||||
Camellia-192-CBC Encrypt Perl EVP #4
|
||||
camellia_encrypt_cbc:"8E73B0F7DA0E6452C810F32B809079E562F8EAD2522C6B7B":"37D359C3349836D884E310ADDF68C449":"F69F2445DF4F9B17AD2B417BE66C3710":"01FAAA930B4AB9916E9668E1428C6B08":0
|
||||
|
||||
Camellia-256-CBC Encrypt Perl EVP #1
|
||||
camellia_encrypt_cbc:"603DEB1015CA71BE2B73AEF0857D77811F352C073B6108D72D9810A30914DFF4":"000102030405060708090A0B0C0D0E0F":"6BC1BEE22E409F96E93D7E117393172A":"E6CFA35FC02B134A4D2C0B6737AC3EDA":0
|
||||
|
||||
Camellia-256-CBC Encrypt Perl EVP #2
|
||||
camellia_encrypt_cbc:"603DEB1015CA71BE2B73AEF0857D77811F352C073B6108D72D9810A30914DFF4":"E6CFA35FC02B134A4D2C0B6737AC3EDA":"AE2D8A571E03AC9C9EB76FAC45AF8E51":"36CBEB73BD504B4070B1B7DE2B21EB50":0
|
||||
|
||||
Camellia-256-CBC Encrypt Perl EVP #3
|
||||
camellia_encrypt_cbc:"603DEB1015CA71BE2B73AEF0857D77811F352C073B6108D72D9810A30914DFF4":"36CBEB73BD504B4070B1B7DE2B21EB50":"30C81C46A35CE411E5FBC1191A0A52EF":"E31A6055297D96CA3330CDF1B1860A83":0
|
||||
|
||||
Camellia-256-CBC Encrypt Perl EVP #4
|
||||
camellia_encrypt_cbc:"603DEB1015CA71BE2B73AEF0857D77811F352C073B6108D72D9810A30914DFF4":"E31A6055297D96CA3330CDF1B1860A83":"F69F2445DF4F9B17AD2B417BE66C3710":"5D563F6D1CCCF236051C0C5C1C58F28F":0
|
||||
|
||||
Camellia-128-CFB128 Encrypt Perl EVP #1
|
||||
depends_on:MBEDTLS_CIPHER_MODE_CFB
|
||||
camellia_encrypt_cfb128:"2B7E151628AED2A6ABF7158809CF4F3C":"000102030405060708090A0B0C0D0E0F":"6BC1BEE22E409F96E93D7E117393172A":"14F7646187817EB586599146B82BD719"
|
||||
|
||||
Camellia-128-CFB128 Encrypt Perl EVP #2
|
||||
depends_on:MBEDTLS_CIPHER_MODE_CFB
|
||||
camellia_encrypt_cfb128:"2B7E151628AED2A6ABF7158809CF4F3C":"14F7646187817EB586599146B82BD719":"AE2D8A571E03AC9C9EB76FAC45AF8E51":"A53D28BB82DF741103EA4F921A44880B"
|
||||
|
||||
Camellia-128-CFB128 Encrypt Perl EVP #3
|
||||
depends_on:MBEDTLS_CIPHER_MODE_CFB
|
||||
camellia_encrypt_cfb128:"2B7E151628AED2A6ABF7158809CF4F3C":"A53D28BB82DF741103EA4F921A44880B":"30C81C46A35CE411E5FBC1191A0A52EF":"9C2157A664626D1DEF9EA420FDE69B96"
|
||||
|
||||
Camellia-128-CFB128 Encrypt Perl EVP #4
|
||||
depends_on:MBEDTLS_CIPHER_MODE_CFB
|
||||
camellia_encrypt_cfb128:"2B7E151628AED2A6ABF7158809CF4F3C":"9C2157A664626D1DEF9EA420FDE69B96":"F69F2445DF4F9B17AD2B417BE66C3710":"742A25F0542340C7BAEF24CA8482BB09"
|
||||
|
||||
Camellia-128-CFB128 Decrypt Perl EVP #1
|
||||
depends_on:MBEDTLS_CIPHER_MODE_CFB
|
||||
camellia_decrypt_cfb128:"2B7E151628AED2A6ABF7158809CF4F3C":"000102030405060708090A0B0C0D0E0F":"6BC1BEE22E409F96E93D7E117393172A":"14F7646187817EB586599146B82BD719"
|
||||
|
||||
Camellia-128-CFB128 Decrypt Perl EVP #2
|
||||
depends_on:MBEDTLS_CIPHER_MODE_CFB
|
||||
camellia_decrypt_cfb128:"2B7E151628AED2A6ABF7158809CF4F3C":"14F7646187817EB586599146B82BD719":"AE2D8A571E03AC9C9EB76FAC45AF8E51":"A53D28BB82DF741103EA4F921A44880B"
|
||||
|
||||
Camellia-128-CFB128 Decrypt Perl EVP #3
|
||||
depends_on:MBEDTLS_CIPHER_MODE_CFB
|
||||
camellia_decrypt_cfb128:"2B7E151628AED2A6ABF7158809CF4F3C":"A53D28BB82DF741103EA4F921A44880B":"30C81C46A35CE411E5FBC1191A0A52EF":"9C2157A664626D1DEF9EA420FDE69B96"
|
||||
|
||||
Camellia-128-CFB128 Decrypt Perl EVP #4
|
||||
depends_on:MBEDTLS_CIPHER_MODE_CFB
|
||||
camellia_decrypt_cfb128:"2B7E151628AED2A6ABF7158809CF4F3C":"9C2157A664626D1DEF9EA420FDE69B96":"F69F2445DF4F9B17AD2B417BE66C3710":"742A25F0542340C7BAEF24CA8482BB09"
|
||||
|
||||
Camellia-192-CFB128 Encrypt Perl EVP #1
|
||||
depends_on:MBEDTLS_CIPHER_MODE_CFB
|
||||
camellia_encrypt_cfb128:"8E73B0F7DA0E6452C810F32B809079E562F8EAD2522C6B7B":"000102030405060708090A0B0C0D0E0F":"6BC1BEE22E409F96E93D7E117393172A":"C832BB9780677DAA82D9B6860DCD565E"
|
||||
|
||||
Camellia-192-CFB128 Encrypt Perl EVP #2
|
||||
depends_on:MBEDTLS_CIPHER_MODE_CFB
|
||||
camellia_encrypt_cfb128:"8E73B0F7DA0E6452C810F32B809079E562F8EAD2522C6B7B":"C832BB9780677DAA82D9B6860DCD565E":"AE2D8A571E03AC9C9EB76FAC45AF8E51":"86F8491627906D780C7A6D46EA331F98"
|
||||
|
||||
Camellia-192-CFB128 Encrypt Perl EVP #3
|
||||
depends_on:MBEDTLS_CIPHER_MODE_CFB
|
||||
camellia_encrypt_cfb128:"8E73B0F7DA0E6452C810F32B809079E562F8EAD2522C6B7B":"86F8491627906D780C7A6D46EA331F98":"30C81C46A35CE411E5FBC1191A0A52EF":"69511CCE594CF710CB98BB63D7221F01"
|
||||
|
||||
Camellia-192-CFB128 Encrypt Perl EVP #4
|
||||
depends_on:MBEDTLS_CIPHER_MODE_CFB
|
||||
camellia_encrypt_cfb128:"8E73B0F7DA0E6452C810F32B809079E562F8EAD2522C6B7B":"69511CCE594CF710CB98BB63D7221F01":"F69F2445DF4F9B17AD2B417BE66C3710":"D5B5378A3ABED55803F25565D8907B84"
|
||||
|
||||
Camellia-192-CFB128 Decrypt Perl EVP #1
|
||||
depends_on:MBEDTLS_CIPHER_MODE_CFB
|
||||
camellia_decrypt_cfb128:"8E73B0F7DA0E6452C810F32B809079E562F8EAD2522C6B7B":"000102030405060708090A0B0C0D0E0F":"6BC1BEE22E409F96E93D7E117393172A":"C832BB9780677DAA82D9B6860DCD565E"
|
||||
|
||||
Camellia-192-CFB128 Decrypt Perl EVP #2
|
||||
depends_on:MBEDTLS_CIPHER_MODE_CFB
|
||||
camellia_decrypt_cfb128:"8E73B0F7DA0E6452C810F32B809079E562F8EAD2522C6B7B":"C832BB9780677DAA82D9B6860DCD565E":"AE2D8A571E03AC9C9EB76FAC45AF8E51":"86F8491627906D780C7A6D46EA331F98"
|
||||
|
||||
Camellia-192-CFB128 Decrypt Perl EVP #3
|
||||
depends_on:MBEDTLS_CIPHER_MODE_CFB
|
||||
camellia_decrypt_cfb128:"8E73B0F7DA0E6452C810F32B809079E562F8EAD2522C6B7B":"86F8491627906D780C7A6D46EA331F98":"30C81C46A35CE411E5FBC1191A0A52EF":"69511CCE594CF710CB98BB63D7221F01"
|
||||
|
||||
Camellia-192-CFB128 Decrypt Perl EVP #4
|
||||
depends_on:MBEDTLS_CIPHER_MODE_CFB
|
||||
camellia_decrypt_cfb128:"8E73B0F7DA0E6452C810F32B809079E562F8EAD2522C6B7B":"69511CCE594CF710CB98BB63D7221F01":"F69F2445DF4F9B17AD2B417BE66C3710":"D5B5378A3ABED55803F25565D8907B84"
|
||||
|
||||
Camellia-256-CFB128 Encrypt Perl EVP #1
|
||||
depends_on:MBEDTLS_CIPHER_MODE_CFB
|
||||
camellia_encrypt_cfb128:"603DEB1015CA71BE2B73AEF0857D77811F352C073B6108D72D9810A30914DFF4":"000102030405060708090A0B0C0D0E0F":"6BC1BEE22E409F96E93D7E117393172A":"CF6107BB0CEA7D7FB1BD31F5E7B06C93"
|
||||
|
||||
Camellia-256-CFB128 Encrypt Perl EVP #2
|
||||
depends_on:MBEDTLS_CIPHER_MODE_CFB
|
||||
camellia_encrypt_cfb128:"603DEB1015CA71BE2B73AEF0857D77811F352C073B6108D72D9810A30914DFF4":"CF6107BB0CEA7D7FB1BD31F5E7B06C93":"AE2D8A571E03AC9C9EB76FAC45AF8E51":"89BEDB4CCDD864EA11BA4CBE849B5E2B"
|
||||
|
||||
Camellia-256-CFB128 Encrypt Perl EVP #3
|
||||
depends_on:MBEDTLS_CIPHER_MODE_CFB
|
||||
camellia_encrypt_cfb128:"603DEB1015CA71BE2B73AEF0857D77811F352C073B6108D72D9810A30914DFF4":"89BEDB4CCDD864EA11BA4CBE849B5E2B":"30C81C46A35CE411E5FBC1191A0A52EF":"555FC3F34BDD2D54C62D9E3BF338C1C4"
|
||||
|
||||
Camellia-256-CFB128 Encrypt Perl EVP #4
|
||||
depends_on:MBEDTLS_CIPHER_MODE_CFB
|
||||
camellia_encrypt_cfb128:"603DEB1015CA71BE2B73AEF0857D77811F352C073B6108D72D9810A30914DFF4":"555FC3F34BDD2D54C62D9E3BF338C1C4":"F69F2445DF4F9B17AD2B417BE66C3710":"5953ADCE14DB8C7F39F1BD39F359BFFA"
|
||||
|
||||
Camellia-256-CFB128 Decrypt Perl EVP #1
|
||||
depends_on:MBEDTLS_CIPHER_MODE_CFB
|
||||
camellia_decrypt_cfb128:"603DEB1015CA71BE2B73AEF0857D77811F352C073B6108D72D9810A30914DFF4":"000102030405060708090A0B0C0D0E0F":"6BC1BEE22E409F96E93D7E117393172A":"CF6107BB0CEA7D7FB1BD31F5E7B06C93"
|
||||
|
||||
Camellia-256-CFB128 Decrypt Perl EVP #2
|
||||
depends_on:MBEDTLS_CIPHER_MODE_CFB
|
||||
camellia_decrypt_cfb128:"603DEB1015CA71BE2B73AEF0857D77811F352C073B6108D72D9810A30914DFF4":"CF6107BB0CEA7D7FB1BD31F5E7B06C93":"AE2D8A571E03AC9C9EB76FAC45AF8E51":"89BEDB4CCDD864EA11BA4CBE849B5E2B"
|
||||
|
||||
Camellia-256-CFB128 Decrypt Perl EVP #3
|
||||
depends_on:MBEDTLS_CIPHER_MODE_CFB
|
||||
camellia_decrypt_cfb128:"603DEB1015CA71BE2B73AEF0857D77811F352C073B6108D72D9810A30914DFF4":"89BEDB4CCDD864EA11BA4CBE849B5E2B":"30C81C46A35CE411E5FBC1191A0A52EF":"555FC3F34BDD2D54C62D9E3BF338C1C4"
|
||||
|
||||
Camellia-256-CFB128 Decrypt Perl EVP #4
|
||||
depends_on:MBEDTLS_CIPHER_MODE_CFB
|
||||
camellia_decrypt_cfb128:"603DEB1015CA71BE2B73AEF0857D77811F352C073B6108D72D9810A30914DFF4":"555FC3F34BDD2D54C62D9E3BF338C1C4":"F69F2445DF4F9B17AD2B417BE66C3710":"5953ADCE14DB8C7F39F1BD39F359BFFA"
|
||||
|
||||
Camellia-ECB Encrypt (Invalid key length)
|
||||
camellia_encrypt_ecb:"0123456789abcdeffedcba98765432":"0123456789abcdeffedcba9876543210":"67673138549669730857065648eabe43":MBEDTLS_ERR_CAMELLIA_BAD_INPUT_DATA
|
||||
|
||||
Camellia-ECB Decrypt (Invalid key length)
|
||||
camellia_decrypt_ecb:"0123456789abcdeffedcba98765432":"0123456789abcdeffedcba9876543210":"67673138549669730857065648eabe43":MBEDTLS_ERR_CAMELLIA_BAD_INPUT_DATA
|
||||
|
||||
Camellia-256-CBC Encrypt (Invalid input length)
|
||||
camellia_encrypt_cbc:"0000000000000000000000000000000000000000000000000000000000000000":"00000000000000000000000000000000":"ffffffffffffffe000000000000000":"":MBEDTLS_ERR_CAMELLIA_INVALID_INPUT_LENGTH
|
||||
|
||||
Camellia-256-CBC Decrypt (Invalid input length)
|
||||
camellia_decrypt_cbc:"0000000000000000000000000000000000000000000000000000000000000000":"00000000000000000000000000000000":"623a52fcea5d443e48d9181ab32c74":"":MBEDTLS_ERR_CAMELLIA_INVALID_INPUT_LENGTH
|
||||
|
||||
Camellia Selftest
|
||||
depends_on:MBEDTLS_SELF_TEST
|
||||
camellia_selftest:
|
||||
197
vendor/mbedtls/tests/suites/test_suite_camellia.function
vendored
Normal file
197
vendor/mbedtls/tests/suites/test_suite_camellia.function
vendored
Normal file
@@ -0,0 +1,197 @@
|
||||
/* BEGIN_HEADER */
|
||||
#include "mbedtls/camellia.h"
|
||||
/* END_HEADER */
|
||||
|
||||
/* BEGIN_DEPENDENCIES
|
||||
* depends_on:MBEDTLS_CAMELLIA_C
|
||||
* END_DEPENDENCIES
|
||||
*/
|
||||
|
||||
/* BEGIN_CASE */
|
||||
void camellia_invalid_param()
|
||||
{
|
||||
mbedtls_camellia_context ctx;
|
||||
unsigned char buf[16] = { 0 };
|
||||
const int invalid_mode = 42;
|
||||
size_t off;
|
||||
((void) off);
|
||||
|
||||
TEST_EQUAL(MBEDTLS_ERR_CAMELLIA_BAD_INPUT_DATA,
|
||||
mbedtls_camellia_crypt_ecb(&ctx,
|
||||
invalid_mode,
|
||||
buf, buf));
|
||||
|
||||
#if defined(MBEDTLS_CIPHER_MODE_CBC)
|
||||
TEST_EQUAL(MBEDTLS_ERR_CAMELLIA_BAD_INPUT_DATA,
|
||||
mbedtls_camellia_crypt_cbc(&ctx,
|
||||
invalid_mode,
|
||||
sizeof(buf),
|
||||
buf, buf, buf));
|
||||
#endif /* MBEDTLS_CIPHER_MODE_CBC */
|
||||
|
||||
#if defined(MBEDTLS_CIPHER_MODE_CFB)
|
||||
TEST_EQUAL(MBEDTLS_ERR_CAMELLIA_BAD_INPUT_DATA,
|
||||
mbedtls_camellia_crypt_cfb128(&ctx,
|
||||
invalid_mode,
|
||||
sizeof(buf),
|
||||
&off, buf,
|
||||
buf, buf));
|
||||
#endif /* MBEDTLS_CIPHER_MODE_CFB */
|
||||
|
||||
exit:
|
||||
return;
|
||||
}
|
||||
/* END_CASE */
|
||||
|
||||
/* BEGIN_CASE */
|
||||
void camellia_encrypt_ecb(data_t *key_str, data_t *src_str,
|
||||
data_t *dst, int setkey_result)
|
||||
{
|
||||
unsigned char output[100];
|
||||
mbedtls_camellia_context ctx;
|
||||
|
||||
memset(output, 0x00, 100);
|
||||
mbedtls_camellia_init(&ctx);
|
||||
|
||||
|
||||
TEST_ASSERT(mbedtls_camellia_setkey_enc(&ctx, key_str->x, key_str->len * 8) == setkey_result);
|
||||
if (setkey_result == 0) {
|
||||
TEST_ASSERT(mbedtls_camellia_crypt_ecb(&ctx, MBEDTLS_CAMELLIA_ENCRYPT, src_str->x,
|
||||
output) == 0);
|
||||
|
||||
TEST_ASSERT(mbedtls_test_hexcmp(output, dst->x, 16, dst->len) == 0);
|
||||
}
|
||||
|
||||
exit:
|
||||
mbedtls_camellia_free(&ctx);
|
||||
}
|
||||
/* END_CASE */
|
||||
|
||||
/* BEGIN_CASE depends_on:!MBEDTLS_BLOCK_CIPHER_NO_DECRYPT */
|
||||
void camellia_decrypt_ecb(data_t *key_str, data_t *src_str,
|
||||
data_t *dst, int setkey_result)
|
||||
{
|
||||
unsigned char output[100];
|
||||
mbedtls_camellia_context ctx;
|
||||
|
||||
memset(output, 0x00, 100);
|
||||
mbedtls_camellia_init(&ctx);
|
||||
|
||||
|
||||
TEST_ASSERT(mbedtls_camellia_setkey_dec(&ctx, key_str->x, key_str->len * 8) == setkey_result);
|
||||
if (setkey_result == 0) {
|
||||
TEST_ASSERT(mbedtls_camellia_crypt_ecb(&ctx, MBEDTLS_CAMELLIA_DECRYPT, src_str->x,
|
||||
output) == 0);
|
||||
|
||||
TEST_ASSERT(mbedtls_test_hexcmp(output, dst->x, 16, dst->len) == 0);
|
||||
}
|
||||
|
||||
exit:
|
||||
mbedtls_camellia_free(&ctx);
|
||||
}
|
||||
/* END_CASE */
|
||||
|
||||
/* BEGIN_CASE depends_on:MBEDTLS_CIPHER_MODE_CBC */
|
||||
void camellia_encrypt_cbc(data_t *key_str, data_t *iv_str,
|
||||
data_t *src_str, data_t *dst, int cbc_result)
|
||||
{
|
||||
unsigned char output[100];
|
||||
mbedtls_camellia_context ctx;
|
||||
|
||||
memset(output, 0x00, 100);
|
||||
mbedtls_camellia_init(&ctx);
|
||||
|
||||
|
||||
mbedtls_camellia_setkey_enc(&ctx, key_str->x, key_str->len * 8);
|
||||
TEST_ASSERT(mbedtls_camellia_crypt_cbc(&ctx, MBEDTLS_CAMELLIA_ENCRYPT, src_str->len, iv_str->x,
|
||||
src_str->x, output) == cbc_result);
|
||||
if (cbc_result == 0) {
|
||||
|
||||
TEST_ASSERT(mbedtls_test_hexcmp(output, dst->x, src_str->len,
|
||||
dst->len) == 0);
|
||||
}
|
||||
|
||||
exit:
|
||||
mbedtls_camellia_free(&ctx);
|
||||
}
|
||||
/* END_CASE */
|
||||
|
||||
/* BEGIN_CASE depends_on:MBEDTLS_CIPHER_MODE_CBC */
|
||||
void camellia_decrypt_cbc(data_t *key_str, data_t *iv_str,
|
||||
data_t *src_str, data_t *dst,
|
||||
int cbc_result)
|
||||
{
|
||||
unsigned char output[100];
|
||||
mbedtls_camellia_context ctx;
|
||||
|
||||
memset(output, 0x00, 100);
|
||||
mbedtls_camellia_init(&ctx);
|
||||
|
||||
|
||||
mbedtls_camellia_setkey_dec(&ctx, key_str->x, key_str->len * 8);
|
||||
TEST_ASSERT(mbedtls_camellia_crypt_cbc(&ctx, MBEDTLS_CAMELLIA_DECRYPT, src_str->len, iv_str->x,
|
||||
src_str->x, output) == cbc_result);
|
||||
if (cbc_result == 0) {
|
||||
|
||||
TEST_ASSERT(mbedtls_test_hexcmp(output, dst->x, src_str->len,
|
||||
dst->len) == 0);
|
||||
}
|
||||
|
||||
exit:
|
||||
mbedtls_camellia_free(&ctx);
|
||||
}
|
||||
/* END_CASE */
|
||||
|
||||
/* BEGIN_CASE depends_on:MBEDTLS_CIPHER_MODE_CFB */
|
||||
void camellia_encrypt_cfb128(data_t *key_str, data_t *iv_str,
|
||||
data_t *src_str, data_t *dst)
|
||||
{
|
||||
unsigned char output[100];
|
||||
mbedtls_camellia_context ctx;
|
||||
size_t iv_offset = 0;
|
||||
|
||||
memset(output, 0x00, 100);
|
||||
mbedtls_camellia_init(&ctx);
|
||||
|
||||
|
||||
mbedtls_camellia_setkey_enc(&ctx, key_str->x, key_str->len * 8);
|
||||
TEST_ASSERT(mbedtls_camellia_crypt_cfb128(&ctx, MBEDTLS_CAMELLIA_ENCRYPT, 16, &iv_offset,
|
||||
iv_str->x, src_str->x, output) == 0);
|
||||
|
||||
TEST_ASSERT(mbedtls_test_hexcmp(output, dst->x, 16, dst->len) == 0);
|
||||
|
||||
exit:
|
||||
mbedtls_camellia_free(&ctx);
|
||||
}
|
||||
/* END_CASE */
|
||||
|
||||
/* BEGIN_CASE depends_on:MBEDTLS_CIPHER_MODE_CFB */
|
||||
void camellia_decrypt_cfb128(data_t *key_str, data_t *iv_str,
|
||||
data_t *src_str,
|
||||
data_t *dst)
|
||||
{
|
||||
unsigned char output[100];
|
||||
mbedtls_camellia_context ctx;
|
||||
size_t iv_offset = 0;
|
||||
|
||||
memset(output, 0x00, 100);
|
||||
mbedtls_camellia_init(&ctx);
|
||||
|
||||
|
||||
mbedtls_camellia_setkey_enc(&ctx, key_str->x, key_str->len * 8);
|
||||
TEST_ASSERT(mbedtls_camellia_crypt_cfb128(&ctx, MBEDTLS_CAMELLIA_DECRYPT, 16, &iv_offset,
|
||||
iv_str->x, src_str->x, output) == 0);
|
||||
|
||||
TEST_ASSERT(mbedtls_test_hexcmp(output, dst->x, 16, dst->len) == 0);
|
||||
|
||||
exit:
|
||||
mbedtls_camellia_free(&ctx);
|
||||
}
|
||||
/* END_CASE */
|
||||
|
||||
/* BEGIN_CASE depends_on:MBEDTLS_SELF_TEST */
|
||||
void camellia_selftest()
|
||||
{
|
||||
TEST_ASSERT(mbedtls_camellia_self_test(1) == 0);
|
||||
}
|
||||
/* END_CASE */
|
||||
1829
vendor/mbedtls/tests/suites/test_suite_ccm.data
vendored
Normal file
1829
vendor/mbedtls/tests/suites/test_suite_ccm.data
vendored
Normal file
File diff suppressed because it is too large
Load Diff
953
vendor/mbedtls/tests/suites/test_suite_ccm.function
vendored
Normal file
953
vendor/mbedtls/tests/suites/test_suite_ccm.function
vendored
Normal file
@@ -0,0 +1,953 @@
|
||||
/* BEGIN_HEADER */
|
||||
#include "mbedtls/ccm.h"
|
||||
#include "mbedtls/error.h"
|
||||
|
||||
/* Use the multipart interface to process the encrypted data in two parts
|
||||
* and check that the output matches the expected output.
|
||||
* The context must have been set up with the key. */
|
||||
static int check_multipart(mbedtls_ccm_context *ctx,
|
||||
int mode,
|
||||
const data_t *iv,
|
||||
const data_t *add,
|
||||
const data_t *input,
|
||||
const data_t *expected_output,
|
||||
const data_t *tag,
|
||||
size_t n1,
|
||||
size_t n1_add)
|
||||
{
|
||||
int ok = 0;
|
||||
uint8_t *output = NULL;
|
||||
size_t n2 = input->len - n1;
|
||||
size_t n2_add = add->len - n1_add;
|
||||
size_t olen;
|
||||
|
||||
/* Sanity checks on the test data */
|
||||
TEST_ASSERT(n1 <= input->len);
|
||||
TEST_ASSERT(n1_add <= add->len);
|
||||
TEST_EQUAL(input->len, expected_output->len);
|
||||
TEST_EQUAL(0, mbedtls_ccm_starts(ctx, mode, iv->x, iv->len));
|
||||
TEST_EQUAL(0, mbedtls_ccm_set_lengths(ctx, add->len, input->len, tag->len));
|
||||
TEST_EQUAL(0, mbedtls_ccm_update_ad(ctx, add->x, n1_add));
|
||||
TEST_EQUAL(0, mbedtls_ccm_update_ad(ctx, add->x + n1_add, n2_add));
|
||||
|
||||
/* Allocate a tight buffer for each update call. This way, if the function
|
||||
* tries to write beyond the advertised required buffer size, this will
|
||||
* count as an overflow for memory sanitizers and static checkers. */
|
||||
TEST_CALLOC(output, n1);
|
||||
olen = 0xdeadbeef;
|
||||
TEST_EQUAL(0, mbedtls_ccm_update(ctx, input->x, n1, output, n1, &olen));
|
||||
TEST_EQUAL(n1, olen);
|
||||
TEST_MEMORY_COMPARE(output, olen, expected_output->x, n1);
|
||||
mbedtls_free(output);
|
||||
output = NULL;
|
||||
|
||||
TEST_CALLOC(output, n2);
|
||||
olen = 0xdeadbeef;
|
||||
TEST_EQUAL(0, mbedtls_ccm_update(ctx, input->x + n1, n2, output, n2, &olen));
|
||||
TEST_EQUAL(n2, olen);
|
||||
TEST_MEMORY_COMPARE(output, olen, expected_output->x + n1, n2);
|
||||
mbedtls_free(output);
|
||||
output = NULL;
|
||||
|
||||
TEST_CALLOC(output, tag->len);
|
||||
TEST_EQUAL(0, mbedtls_ccm_finish(ctx, output, tag->len));
|
||||
TEST_MEMORY_COMPARE(output, tag->len, tag->x, tag->len);
|
||||
mbedtls_free(output);
|
||||
output = NULL;
|
||||
|
||||
ok = 1;
|
||||
exit:
|
||||
mbedtls_free(output);
|
||||
return ok;
|
||||
}
|
||||
/* END_HEADER */
|
||||
|
||||
/* BEGIN_DEPENDENCIES
|
||||
* depends_on:MBEDTLS_CCM_C
|
||||
* END_DEPENDENCIES
|
||||
*/
|
||||
|
||||
/* BEGIN_CASE depends_on:MBEDTLS_SELF_TEST:MBEDTLS_CCM_GCM_CAN_AES */
|
||||
void mbedtls_ccm_self_test()
|
||||
{
|
||||
BLOCK_CIPHER_PSA_INIT();
|
||||
TEST_ASSERT(mbedtls_ccm_self_test(1) == 0);
|
||||
BLOCK_CIPHER_PSA_DONE();
|
||||
}
|
||||
/* END_CASE */
|
||||
|
||||
/* BEGIN_CASE */
|
||||
void mbedtls_ccm_setkey(int cipher_id, int key_size, int result)
|
||||
{
|
||||
mbedtls_ccm_context ctx;
|
||||
mbedtls_ccm_init(&ctx);
|
||||
unsigned char key[32];
|
||||
int ret;
|
||||
|
||||
BLOCK_CIPHER_PSA_INIT();
|
||||
|
||||
memset(key, 0x2A, sizeof(key));
|
||||
TEST_ASSERT((unsigned) key_size <= 8 * sizeof(key));
|
||||
|
||||
ret = mbedtls_ccm_setkey(&ctx, cipher_id, key, key_size);
|
||||
TEST_ASSERT(ret == result);
|
||||
|
||||
exit:
|
||||
mbedtls_ccm_free(&ctx);
|
||||
BLOCK_CIPHER_PSA_DONE();
|
||||
}
|
||||
/* END_CASE */
|
||||
|
||||
/* BEGIN_CASE depends_on:MBEDTLS_CCM_GCM_CAN_AES */
|
||||
void ccm_lengths(int msg_len, int iv_len, int add_len, int tag_len, int res)
|
||||
{
|
||||
mbedtls_ccm_context ctx;
|
||||
mbedtls_ccm_init(&ctx);
|
||||
unsigned char key[16];
|
||||
unsigned char msg[10];
|
||||
unsigned char iv[14];
|
||||
unsigned char *add = NULL;
|
||||
unsigned char out[10];
|
||||
unsigned char tag[18];
|
||||
int decrypt_ret;
|
||||
|
||||
BLOCK_CIPHER_PSA_INIT();
|
||||
|
||||
TEST_CALLOC_OR_SKIP(add, add_len);
|
||||
memset(key, 0, sizeof(key));
|
||||
memset(msg, 0, sizeof(msg));
|
||||
memset(iv, 0, sizeof(iv));
|
||||
memset(out, 0, sizeof(out));
|
||||
memset(tag, 0, sizeof(tag));
|
||||
|
||||
TEST_ASSERT(mbedtls_ccm_setkey(&ctx, MBEDTLS_CIPHER_ID_AES,
|
||||
key, 8 * sizeof(key)) == 0);
|
||||
|
||||
TEST_ASSERT(mbedtls_ccm_encrypt_and_tag(&ctx, msg_len, iv, iv_len, add, add_len,
|
||||
msg, out, tag, tag_len) == res);
|
||||
|
||||
decrypt_ret = mbedtls_ccm_auth_decrypt(&ctx, msg_len, iv, iv_len, add, add_len,
|
||||
msg, out, tag, tag_len);
|
||||
|
||||
if (res == 0) {
|
||||
TEST_ASSERT(decrypt_ret == MBEDTLS_ERR_CCM_AUTH_FAILED);
|
||||
} else {
|
||||
TEST_ASSERT(decrypt_ret == res);
|
||||
}
|
||||
|
||||
exit:
|
||||
mbedtls_free(add);
|
||||
mbedtls_ccm_free(&ctx);
|
||||
BLOCK_CIPHER_PSA_DONE();
|
||||
}
|
||||
/* END_CASE */
|
||||
|
||||
/* BEGIN_CASE depends_on:MBEDTLS_CCM_GCM_CAN_AES */
|
||||
void ccm_star_lengths(int msg_len, int iv_len, int add_len, int tag_len,
|
||||
int res)
|
||||
{
|
||||
mbedtls_ccm_context ctx;
|
||||
mbedtls_ccm_init(&ctx);
|
||||
unsigned char key[16];
|
||||
unsigned char msg[10];
|
||||
unsigned char iv[14];
|
||||
unsigned char add[10];
|
||||
unsigned char out[10];
|
||||
unsigned char tag[18];
|
||||
int decrypt_ret;
|
||||
|
||||
BLOCK_CIPHER_PSA_INIT();
|
||||
|
||||
memset(key, 0, sizeof(key));
|
||||
memset(msg, 0, sizeof(msg));
|
||||
memset(iv, 0, sizeof(iv));
|
||||
memset(add, 0, sizeof(add));
|
||||
memset(out, 0, sizeof(out));
|
||||
memset(tag, 0, sizeof(tag));
|
||||
|
||||
TEST_ASSERT(mbedtls_ccm_setkey(&ctx, MBEDTLS_CIPHER_ID_AES,
|
||||
key, 8 * sizeof(key)) == 0);
|
||||
|
||||
TEST_ASSERT(mbedtls_ccm_star_encrypt_and_tag(&ctx, msg_len, iv, iv_len,
|
||||
add, add_len, msg, out, tag, tag_len) == res);
|
||||
|
||||
decrypt_ret = mbedtls_ccm_star_auth_decrypt(&ctx, msg_len, iv, iv_len, add,
|
||||
add_len, msg, out, tag, tag_len);
|
||||
|
||||
if (res == 0 && tag_len != 0) {
|
||||
TEST_ASSERT(decrypt_ret == MBEDTLS_ERR_CCM_AUTH_FAILED);
|
||||
} else {
|
||||
TEST_ASSERT(decrypt_ret == res);
|
||||
}
|
||||
|
||||
exit:
|
||||
mbedtls_ccm_free(&ctx);
|
||||
BLOCK_CIPHER_PSA_DONE();
|
||||
}
|
||||
/* END_CASE */
|
||||
|
||||
/* BEGIN_CASE */
|
||||
void mbedtls_ccm_encrypt_and_tag(int cipher_id, data_t *key,
|
||||
data_t *msg, data_t *iv,
|
||||
data_t *add, data_t *result)
|
||||
{
|
||||
mbedtls_ccm_context ctx;
|
||||
mbedtls_ccm_init(&ctx);
|
||||
size_t n1, n1_add;
|
||||
uint8_t *io_msg_buf = NULL;
|
||||
uint8_t *tag_buf = NULL;
|
||||
const size_t expected_tag_len = result->len - msg->len;
|
||||
const uint8_t *expected_tag = result->x + msg->len;
|
||||
|
||||
/* Prepare input/output message buffer */
|
||||
TEST_CALLOC(io_msg_buf, msg->len);
|
||||
if (msg->len != 0) {
|
||||
memcpy(io_msg_buf, msg->x, msg->len);
|
||||
}
|
||||
|
||||
/* Prepare tag buffer */
|
||||
TEST_CALLOC(tag_buf, expected_tag_len);
|
||||
|
||||
BLOCK_CIPHER_PSA_INIT();
|
||||
TEST_EQUAL(mbedtls_ccm_setkey(&ctx, cipher_id, key->x, key->len * 8), 0);
|
||||
/* Test with input == output */
|
||||
TEST_EQUAL(mbedtls_ccm_encrypt_and_tag(&ctx, msg->len, iv->x, iv->len, add->x, add->len,
|
||||
io_msg_buf, io_msg_buf, tag_buf, expected_tag_len), 0);
|
||||
|
||||
TEST_MEMORY_COMPARE(io_msg_buf, msg->len, result->x, msg->len);
|
||||
TEST_MEMORY_COMPARE(tag_buf, expected_tag_len, expected_tag, expected_tag_len);
|
||||
|
||||
/* Prepare data_t structures for multipart testing */
|
||||
const data_t encrypted_expected = { .x = result->x,
|
||||
.len = msg->len };
|
||||
const data_t tag_expected = { .x = (uint8_t *) expected_tag, /* cast to conform with data_t x type */
|
||||
.len = expected_tag_len };
|
||||
|
||||
for (n1 = 0; n1 <= msg->len; n1 += 1) {
|
||||
for (n1_add = 0; n1_add <= add->len; n1_add += 1) {
|
||||
mbedtls_test_set_step(n1 * 10000 + n1_add);
|
||||
if (!check_multipart(&ctx, MBEDTLS_CCM_ENCRYPT,
|
||||
iv, add, msg,
|
||||
&encrypted_expected,
|
||||
&tag_expected,
|
||||
n1, n1_add)) {
|
||||
goto exit;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
exit:
|
||||
mbedtls_ccm_free(&ctx);
|
||||
mbedtls_free(io_msg_buf);
|
||||
mbedtls_free(tag_buf);
|
||||
BLOCK_CIPHER_PSA_DONE();
|
||||
}
|
||||
/* END_CASE */
|
||||
|
||||
/* BEGIN_CASE */
|
||||
void mbedtls_ccm_star_no_tag(int cipher_id, int mode, data_t *key,
|
||||
data_t *msg, data_t *iv, data_t *result)
|
||||
{
|
||||
mbedtls_ccm_context ctx;
|
||||
mbedtls_ccm_init(&ctx);
|
||||
uint8_t *output = NULL;
|
||||
size_t olen;
|
||||
|
||||
BLOCK_CIPHER_PSA_INIT();
|
||||
TEST_EQUAL(mbedtls_ccm_setkey(&ctx, cipher_id, key->x, key->len * 8), 0);
|
||||
TEST_EQUAL(0, mbedtls_ccm_starts(&ctx, mode, iv->x, iv->len));
|
||||
TEST_EQUAL(0, mbedtls_ccm_set_lengths(&ctx, 0, msg->len, 0));
|
||||
|
||||
TEST_CALLOC(output, msg->len);
|
||||
TEST_EQUAL(0, mbedtls_ccm_update(&ctx, msg->x, msg->len, output, msg->len, &olen));
|
||||
TEST_EQUAL(result->len, olen);
|
||||
TEST_MEMORY_COMPARE(output, olen, result->x, result->len);
|
||||
|
||||
TEST_EQUAL(0, mbedtls_ccm_finish(&ctx, NULL, 0));
|
||||
exit:
|
||||
mbedtls_free(output);
|
||||
mbedtls_ccm_free(&ctx);
|
||||
BLOCK_CIPHER_PSA_DONE();
|
||||
}
|
||||
/* END_CASE */
|
||||
|
||||
/* BEGIN_CASE */
|
||||
void mbedtls_ccm_auth_decrypt(int cipher_id, data_t *key,
|
||||
data_t *msg, data_t *iv,
|
||||
data_t *add, int expected_tag_len, int result,
|
||||
data_t *expected_msg)
|
||||
{
|
||||
mbedtls_ccm_context ctx;
|
||||
mbedtls_ccm_init(&ctx);
|
||||
size_t n1, n1_add;
|
||||
|
||||
const size_t expected_msg_len = msg->len - expected_tag_len;
|
||||
const uint8_t *expected_tag = msg->x + expected_msg_len;
|
||||
|
||||
/* Prepare input/output message buffer */
|
||||
uint8_t *io_msg_buf = NULL;
|
||||
TEST_CALLOC(io_msg_buf, expected_msg_len);
|
||||
if (expected_msg_len) {
|
||||
memcpy(io_msg_buf, msg->x, expected_msg_len);
|
||||
}
|
||||
|
||||
BLOCK_CIPHER_PSA_INIT();
|
||||
TEST_EQUAL(mbedtls_ccm_setkey(&ctx, cipher_id, key->x, key->len * 8), 0);
|
||||
/* Test with input == output */
|
||||
TEST_EQUAL(mbedtls_ccm_auth_decrypt(&ctx, expected_msg_len, iv->x, iv->len, add->x, add->len,
|
||||
io_msg_buf, io_msg_buf, expected_tag, expected_tag_len),
|
||||
result);
|
||||
|
||||
if (result == 0) {
|
||||
TEST_MEMORY_COMPARE(io_msg_buf, expected_msg_len, expected_msg->x, expected_msg_len);
|
||||
|
||||
/* Prepare data_t structures for multipart testing */
|
||||
const data_t encrypted = { .x = msg->x,
|
||||
.len = expected_msg_len };
|
||||
|
||||
const data_t tag_expected = { .x = (uint8_t *) expected_tag,
|
||||
.len = expected_tag_len };
|
||||
|
||||
for (n1 = 0; n1 <= expected_msg_len; n1 += 1) {
|
||||
for (n1_add = 0; n1_add <= add->len; n1_add += 1) {
|
||||
mbedtls_test_set_step(n1 * 10000 + n1_add);
|
||||
if (!check_multipart(&ctx, MBEDTLS_CCM_DECRYPT,
|
||||
iv, add, &encrypted,
|
||||
expected_msg,
|
||||
&tag_expected,
|
||||
n1, n1_add)) {
|
||||
goto exit;
|
||||
}
|
||||
}
|
||||
}
|
||||
} else {
|
||||
size_t i;
|
||||
|
||||
for (i = 0; i < expected_msg_len; i++) {
|
||||
TEST_EQUAL(io_msg_buf[i], 0);
|
||||
}
|
||||
}
|
||||
|
||||
exit:
|
||||
mbedtls_free(io_msg_buf);
|
||||
mbedtls_ccm_free(&ctx);
|
||||
BLOCK_CIPHER_PSA_DONE();
|
||||
}
|
||||
/* END_CASE */
|
||||
|
||||
/* BEGIN_CASE */
|
||||
void mbedtls_ccm_star_encrypt_and_tag(int cipher_id,
|
||||
data_t *key, data_t *msg,
|
||||
data_t *source_address, data_t *frame_counter,
|
||||
int sec_level, data_t *add,
|
||||
data_t *expected_result, int output_ret)
|
||||
{
|
||||
unsigned char iv[13];
|
||||
mbedtls_ccm_context ctx;
|
||||
mbedtls_ccm_init(&ctx);
|
||||
size_t iv_len, expected_tag_len;
|
||||
size_t n1, n1_add;
|
||||
uint8_t *io_msg_buf = NULL;
|
||||
uint8_t *tag_buf = NULL;
|
||||
|
||||
const uint8_t *expected_tag = expected_result->x + msg->len;
|
||||
|
||||
/* Calculate tag length */
|
||||
if (sec_level % 4 == 0) {
|
||||
expected_tag_len = 0;
|
||||
} else {
|
||||
expected_tag_len = 1 << (sec_level % 4 + 1);
|
||||
}
|
||||
|
||||
/* Prepare input/output message buffer */
|
||||
TEST_CALLOC(io_msg_buf, msg->len);
|
||||
if (msg->len) {
|
||||
memcpy(io_msg_buf, msg->x, msg->len);
|
||||
}
|
||||
|
||||
/* Prepare tag buffer */
|
||||
if (expected_tag_len == 0) {
|
||||
TEST_CALLOC(tag_buf, 16);
|
||||
} else {
|
||||
TEST_CALLOC(tag_buf, expected_tag_len);
|
||||
}
|
||||
|
||||
/* Calculate iv */
|
||||
TEST_ASSERT(source_address->len == 8);
|
||||
TEST_ASSERT(frame_counter->len == 4);
|
||||
memcpy(iv, source_address->x, source_address->len);
|
||||
memcpy(iv + source_address->len, frame_counter->x, frame_counter->len);
|
||||
iv[source_address->len + frame_counter->len] = sec_level;
|
||||
iv_len = sizeof(iv);
|
||||
|
||||
BLOCK_CIPHER_PSA_INIT();
|
||||
TEST_EQUAL(mbedtls_ccm_setkey(&ctx, cipher_id,
|
||||
key->x, key->len * 8), 0);
|
||||
/* Test with input == output */
|
||||
TEST_EQUAL(mbedtls_ccm_star_encrypt_and_tag(&ctx, msg->len, iv, iv_len,
|
||||
add->x, add->len, io_msg_buf,
|
||||
io_msg_buf, tag_buf, expected_tag_len), output_ret);
|
||||
|
||||
TEST_MEMORY_COMPARE(io_msg_buf, msg->len, expected_result->x, msg->len);
|
||||
TEST_MEMORY_COMPARE(tag_buf, expected_tag_len, expected_tag, expected_tag_len);
|
||||
|
||||
if (output_ret == 0) {
|
||||
const data_t iv_data = { .x = iv,
|
||||
.len = iv_len };
|
||||
|
||||
const data_t encrypted_expected = { .x = expected_result->x,
|
||||
.len = msg->len };
|
||||
const data_t tag_expected = { .x = (uint8_t *) expected_tag,
|
||||
.len = expected_tag_len };
|
||||
|
||||
for (n1 = 0; n1 <= msg->len; n1 += 1) {
|
||||
for (n1_add = 0; n1_add <= add->len; n1_add += 1) {
|
||||
mbedtls_test_set_step(n1 * 10000 + n1_add);
|
||||
if (!check_multipart(&ctx, MBEDTLS_CCM_STAR_ENCRYPT,
|
||||
&iv_data, add, msg,
|
||||
&encrypted_expected,
|
||||
&tag_expected,
|
||||
n1, n1_add)) {
|
||||
goto exit;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
exit:
|
||||
mbedtls_ccm_free(&ctx);
|
||||
mbedtls_free(io_msg_buf);
|
||||
mbedtls_free(tag_buf);
|
||||
BLOCK_CIPHER_PSA_DONE();
|
||||
}
|
||||
/* END_CASE */
|
||||
|
||||
/* BEGIN_CASE */
|
||||
void mbedtls_ccm_star_auth_decrypt(int cipher_id,
|
||||
data_t *key, data_t *msg,
|
||||
data_t *source_address, data_t *frame_counter,
|
||||
int sec_level, data_t *add,
|
||||
data_t *expected_result, int output_ret)
|
||||
{
|
||||
unsigned char iv[13];
|
||||
mbedtls_ccm_context ctx;
|
||||
mbedtls_ccm_init(&ctx);
|
||||
size_t iv_len, expected_tag_len;
|
||||
size_t n1, n1_add;
|
||||
|
||||
/* Calculate tag length */
|
||||
if (sec_level % 4 == 0) {
|
||||
expected_tag_len = 0;
|
||||
} else {
|
||||
expected_tag_len = 1 << (sec_level % 4 + 1);
|
||||
}
|
||||
|
||||
const size_t expected_msg_len = msg->len - expected_tag_len;
|
||||
const uint8_t *expected_tag = msg->x + expected_msg_len;
|
||||
|
||||
/* Prepare input/output message buffer */
|
||||
uint8_t *io_msg_buf = NULL;
|
||||
TEST_CALLOC(io_msg_buf, expected_msg_len);
|
||||
if (expected_msg_len) {
|
||||
memcpy(io_msg_buf, msg->x, expected_msg_len);
|
||||
}
|
||||
|
||||
/* Calculate iv */
|
||||
memset(iv, 0x00, sizeof(iv));
|
||||
TEST_ASSERT(source_address->len == 8);
|
||||
TEST_ASSERT(frame_counter->len == 4);
|
||||
memcpy(iv, source_address->x, source_address->len);
|
||||
memcpy(iv + source_address->len, frame_counter->x, frame_counter->len);
|
||||
iv[source_address->len + frame_counter->len] = sec_level;
|
||||
iv_len = sizeof(iv);
|
||||
|
||||
BLOCK_CIPHER_PSA_INIT();
|
||||
TEST_ASSERT(mbedtls_ccm_setkey(&ctx, cipher_id, key->x, key->len * 8) == 0);
|
||||
/* Test with input == output */
|
||||
TEST_EQUAL(mbedtls_ccm_star_auth_decrypt(&ctx, expected_msg_len, iv, iv_len,
|
||||
add->x, add->len, io_msg_buf, io_msg_buf,
|
||||
expected_tag, expected_tag_len), output_ret);
|
||||
|
||||
TEST_MEMORY_COMPARE(io_msg_buf, expected_msg_len, expected_result->x, expected_msg_len);
|
||||
|
||||
if (output_ret == 0) {
|
||||
const data_t iv_data = { .x = iv,
|
||||
.len = iv_len };
|
||||
|
||||
const data_t encrypted = { .x = msg->x,
|
||||
.len = expected_msg_len };
|
||||
|
||||
const data_t tag_expected = { .x = (uint8_t *) expected_tag,
|
||||
.len = expected_tag_len };
|
||||
|
||||
for (n1 = 0; n1 <= expected_msg_len; n1 += 1) {
|
||||
for (n1_add = 0; n1_add <= add->len; n1_add += 1) {
|
||||
mbedtls_test_set_step(n1 * 10000 + n1_add);
|
||||
if (!check_multipart(&ctx, MBEDTLS_CCM_STAR_DECRYPT,
|
||||
&iv_data, add, &encrypted,
|
||||
expected_result,
|
||||
&tag_expected,
|
||||
n1, n1_add)) {
|
||||
goto exit;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
exit:
|
||||
mbedtls_ccm_free(&ctx);
|
||||
mbedtls_free(io_msg_buf);
|
||||
BLOCK_CIPHER_PSA_DONE();
|
||||
}
|
||||
/* END_CASE */
|
||||
|
||||
/* Skip auth data, provide full text */
|
||||
/* BEGIN_CASE */
|
||||
void mbedtls_ccm_skip_ad(int cipher_id, int mode,
|
||||
data_t *key, data_t *msg, data_t *iv,
|
||||
data_t *result, data_t *tag)
|
||||
{
|
||||
mbedtls_ccm_context ctx;
|
||||
mbedtls_ccm_init(&ctx);
|
||||
uint8_t *output = NULL;
|
||||
size_t olen;
|
||||
|
||||
/* Sanity checks on the test data */
|
||||
TEST_EQUAL(msg->len, result->len);
|
||||
|
||||
BLOCK_CIPHER_PSA_INIT();
|
||||
TEST_EQUAL(mbedtls_ccm_setkey(&ctx, cipher_id, key->x, key->len * 8), 0);
|
||||
TEST_EQUAL(0, mbedtls_ccm_starts(&ctx, mode, iv->x, iv->len));
|
||||
TEST_EQUAL(0, mbedtls_ccm_set_lengths(&ctx, 0, msg->len, tag->len));
|
||||
|
||||
TEST_CALLOC(output, result->len);
|
||||
olen = 0xdeadbeef;
|
||||
TEST_EQUAL(0, mbedtls_ccm_update(&ctx, msg->x, msg->len, output, result->len, &olen));
|
||||
TEST_EQUAL(result->len, olen);
|
||||
TEST_MEMORY_COMPARE(output, olen, result->x, result->len);
|
||||
mbedtls_free(output);
|
||||
output = NULL;
|
||||
|
||||
TEST_CALLOC(output, tag->len);
|
||||
TEST_EQUAL(0, mbedtls_ccm_finish(&ctx, output, tag->len));
|
||||
TEST_MEMORY_COMPARE(output, tag->len, tag->x, tag->len);
|
||||
mbedtls_free(output);
|
||||
output = NULL;
|
||||
|
||||
exit:
|
||||
mbedtls_free(output);
|
||||
mbedtls_ccm_free(&ctx);
|
||||
BLOCK_CIPHER_PSA_DONE();
|
||||
}
|
||||
/* END_CASE */
|
||||
|
||||
/* Provide auth data, skip full text */
|
||||
/* BEGIN_CASE */
|
||||
void mbedtls_ccm_skip_update(int cipher_id, int mode,
|
||||
data_t *key, data_t *iv, data_t *add,
|
||||
data_t *tag)
|
||||
{
|
||||
mbedtls_ccm_context ctx;
|
||||
mbedtls_ccm_init(&ctx);
|
||||
uint8_t *output = NULL;
|
||||
|
||||
BLOCK_CIPHER_PSA_INIT();
|
||||
TEST_EQUAL(mbedtls_ccm_setkey(&ctx, cipher_id, key->x, key->len * 8), 0);
|
||||
TEST_EQUAL(0, mbedtls_ccm_starts(&ctx, mode, iv->x, iv->len));
|
||||
TEST_EQUAL(0, mbedtls_ccm_set_lengths(&ctx, add->len, 0, tag->len));
|
||||
|
||||
TEST_EQUAL(0, mbedtls_ccm_update_ad(&ctx, add->x, add->len));
|
||||
|
||||
TEST_CALLOC(output, tag->len);
|
||||
TEST_EQUAL(0, mbedtls_ccm_finish(&ctx, output, tag->len));
|
||||
TEST_MEMORY_COMPARE(output, tag->len, tag->x, tag->len);
|
||||
mbedtls_free(output);
|
||||
output = NULL;
|
||||
|
||||
exit:
|
||||
mbedtls_free(output);
|
||||
mbedtls_ccm_free(&ctx);
|
||||
BLOCK_CIPHER_PSA_DONE();
|
||||
}
|
||||
/* END_CASE */
|
||||
|
||||
/* Provide too much auth data */
|
||||
/* BEGIN_CASE */
|
||||
void mbedtls_ccm_overflow_ad(int cipher_id, int mode,
|
||||
data_t *key, data_t *iv,
|
||||
data_t *add)
|
||||
{
|
||||
mbedtls_ccm_context ctx;
|
||||
mbedtls_ccm_init(&ctx);
|
||||
|
||||
/* This test can't be run with empty additional data */
|
||||
TEST_LE_U(1, add->len);
|
||||
|
||||
BLOCK_CIPHER_PSA_INIT();
|
||||
TEST_EQUAL(mbedtls_ccm_setkey(&ctx, cipher_id, key->x, key->len * 8), 0);
|
||||
TEST_EQUAL(0, mbedtls_ccm_starts(&ctx, mode, iv->x, iv->len));
|
||||
// use hardcoded values for msg length and tag length. They are not a part of this test
|
||||
// subtract 1 from configured auth data length to provoke an overflow
|
||||
TEST_EQUAL(0, mbedtls_ccm_set_lengths(&ctx, add->len - 1, 16, 16));
|
||||
|
||||
TEST_EQUAL(MBEDTLS_ERR_CCM_BAD_INPUT, mbedtls_ccm_update_ad(&ctx, add->x, add->len));
|
||||
exit:
|
||||
mbedtls_ccm_free(&ctx);
|
||||
BLOCK_CIPHER_PSA_DONE();
|
||||
}
|
||||
/* END_CASE */
|
||||
|
||||
/* Provide unexpected auth data */
|
||||
/* BEGIN_CASE */
|
||||
void mbedtls_ccm_unexpected_ad(int cipher_id, int mode,
|
||||
data_t *key, data_t *iv,
|
||||
data_t *add)
|
||||
{
|
||||
mbedtls_ccm_context ctx;
|
||||
mbedtls_ccm_init(&ctx);
|
||||
|
||||
BLOCK_CIPHER_PSA_INIT();
|
||||
TEST_EQUAL(mbedtls_ccm_setkey(&ctx, cipher_id, key->x, key->len * 8), 0);
|
||||
TEST_EQUAL(0, mbedtls_ccm_starts(&ctx, mode, iv->x, iv->len));
|
||||
// use hardcoded values for msg length and tag length. They are not a part of this test
|
||||
TEST_EQUAL(0, mbedtls_ccm_set_lengths(&ctx, 0, 16, 16));
|
||||
|
||||
TEST_EQUAL(MBEDTLS_ERR_CCM_BAD_INPUT, mbedtls_ccm_update_ad(&ctx, add->x, add->len));
|
||||
exit:
|
||||
mbedtls_ccm_free(&ctx);
|
||||
BLOCK_CIPHER_PSA_DONE();
|
||||
}
|
||||
/* END_CASE */
|
||||
|
||||
/* Provide unexpected plaintext/ciphertext data */
|
||||
/* BEGIN_CASE */
|
||||
void mbedtls_ccm_unexpected_text(int cipher_id, int mode,
|
||||
data_t *key, data_t *msg, data_t *iv,
|
||||
data_t *add)
|
||||
{
|
||||
mbedtls_ccm_context ctx;
|
||||
mbedtls_ccm_init(&ctx);
|
||||
uint8_t *output = NULL;
|
||||
size_t olen;
|
||||
|
||||
BLOCK_CIPHER_PSA_INIT();
|
||||
TEST_EQUAL(mbedtls_ccm_setkey(&ctx, cipher_id, key->x, key->len * 8), 0);
|
||||
TEST_EQUAL(0, mbedtls_ccm_starts(&ctx, mode, iv->x, iv->len));
|
||||
// use hardcoded value for tag length. It is not a part of this test
|
||||
TEST_EQUAL(0, mbedtls_ccm_set_lengths(&ctx, add->len, 0, 16));
|
||||
|
||||
TEST_EQUAL(0, mbedtls_ccm_update_ad(&ctx, add->x, add->len));
|
||||
|
||||
TEST_CALLOC(output, msg->len);
|
||||
olen = 0xdeadbeef;
|
||||
TEST_EQUAL(MBEDTLS_ERR_CCM_BAD_INPUT,
|
||||
mbedtls_ccm_update(&ctx, msg->x, msg->len, output, msg->len, &olen));
|
||||
exit:
|
||||
mbedtls_free(output);
|
||||
mbedtls_ccm_free(&ctx);
|
||||
BLOCK_CIPHER_PSA_DONE();
|
||||
}
|
||||
/* END_CASE */
|
||||
|
||||
/* Provide incomplete auth data and finish */
|
||||
/* BEGIN_CASE */
|
||||
void mbedtls_ccm_incomplete_ad(int cipher_id, int mode,
|
||||
data_t *key, data_t *iv, data_t *add)
|
||||
{
|
||||
mbedtls_ccm_context ctx;
|
||||
mbedtls_ccm_init(&ctx);
|
||||
uint8_t *output = NULL;
|
||||
|
||||
/* This test can't be run with empty additional data */
|
||||
TEST_LE_U(1, add->len);
|
||||
|
||||
BLOCK_CIPHER_PSA_INIT();
|
||||
TEST_EQUAL(mbedtls_ccm_setkey(&ctx, cipher_id, key->x, key->len * 8), 0);
|
||||
TEST_EQUAL(0, mbedtls_ccm_starts(&ctx, mode, iv->x, iv->len));
|
||||
// use hardcoded values for msg length and tag length. They are not a part of this test
|
||||
TEST_EQUAL(0, mbedtls_ccm_set_lengths(&ctx, add->len, 0, 16));
|
||||
|
||||
TEST_EQUAL(0, mbedtls_ccm_update_ad(&ctx, add->x, add->len - 1));
|
||||
|
||||
TEST_CALLOC(output, 16);
|
||||
TEST_EQUAL(MBEDTLS_ERR_CCM_BAD_INPUT, mbedtls_ccm_finish(&ctx, output, 16));
|
||||
|
||||
exit:
|
||||
mbedtls_free(output);
|
||||
mbedtls_ccm_free(&ctx);
|
||||
BLOCK_CIPHER_PSA_DONE();
|
||||
}
|
||||
/* END_CASE */
|
||||
|
||||
/* Provide complete auth data on first update_ad.
|
||||
* Provide unexpected auth data on second update_ad */
|
||||
/* BEGIN_CASE */
|
||||
void mbedtls_ccm_full_ad_and_overflow(int cipher_id, int mode,
|
||||
data_t *key, data_t *iv,
|
||||
data_t *add)
|
||||
{
|
||||
mbedtls_ccm_context ctx;
|
||||
mbedtls_ccm_init(&ctx);
|
||||
|
||||
BLOCK_CIPHER_PSA_INIT();
|
||||
TEST_EQUAL(mbedtls_ccm_setkey(&ctx, cipher_id, key->x, key->len * 8), 0);
|
||||
TEST_EQUAL(0, mbedtls_ccm_starts(&ctx, mode, iv->x, iv->len));
|
||||
// use hardcoded values for msg length and tag length. They are not a part of this test
|
||||
TEST_EQUAL(0, mbedtls_ccm_set_lengths(&ctx, add->len, 16, 16));
|
||||
|
||||
// pass full auth data
|
||||
TEST_EQUAL(0, mbedtls_ccm_update_ad(&ctx, add->x, add->len));
|
||||
// pass 1 extra byte
|
||||
TEST_EQUAL(MBEDTLS_ERR_CCM_BAD_INPUT, mbedtls_ccm_update_ad(&ctx, add->x, 1));
|
||||
exit:
|
||||
mbedtls_ccm_free(&ctx);
|
||||
BLOCK_CIPHER_PSA_DONE();
|
||||
}
|
||||
/* END_CASE */
|
||||
|
||||
/* Provide incomplete auth data on first update_ad.
|
||||
* Provide too much auth data on second update_ad */
|
||||
/* BEGIN_CASE */
|
||||
void mbedtls_ccm_incomplete_ad_and_overflow(int cipher_id, int mode,
|
||||
data_t *key, data_t *iv,
|
||||
data_t *add)
|
||||
{
|
||||
mbedtls_ccm_context ctx;
|
||||
mbedtls_ccm_init(&ctx);
|
||||
uint8_t add_second_buffer[2];
|
||||
|
||||
/* This test can't be run with empty additional data */
|
||||
TEST_LE_U(1, add->len);
|
||||
|
||||
add_second_buffer[0] = add->x[add->len - 1];
|
||||
add_second_buffer[1] = 0xAB; // some magic value
|
||||
|
||||
BLOCK_CIPHER_PSA_INIT();
|
||||
TEST_EQUAL(mbedtls_ccm_setkey(&ctx, cipher_id, key->x, key->len * 8), 0);
|
||||
TEST_EQUAL(0, mbedtls_ccm_starts(&ctx, mode, iv->x, iv->len));
|
||||
// use hardcoded values for msg length and tag length. They are not a part of this test
|
||||
TEST_EQUAL(0, mbedtls_ccm_set_lengths(&ctx, add->len, 16, 16));
|
||||
|
||||
// pass incomplete auth data
|
||||
TEST_EQUAL(0, mbedtls_ccm_update_ad(&ctx, add->x, add->len - 1));
|
||||
// pass 2 extra bytes (1 missing byte from previous incomplete pass, and 1 unexpected byte)
|
||||
TEST_EQUAL(MBEDTLS_ERR_CCM_BAD_INPUT, mbedtls_ccm_update_ad(&ctx, add_second_buffer, 2));
|
||||
exit:
|
||||
mbedtls_ccm_free(&ctx);
|
||||
BLOCK_CIPHER_PSA_DONE();
|
||||
}
|
||||
/* END_CASE */
|
||||
|
||||
/* Provide too much plaintext/ciphertext */
|
||||
/* BEGIN_CASE */
|
||||
void mbedtls_ccm_overflow_update(int cipher_id, int mode,
|
||||
data_t *key, data_t *msg, data_t *iv,
|
||||
data_t *add)
|
||||
{
|
||||
mbedtls_ccm_context ctx;
|
||||
mbedtls_ccm_init(&ctx);
|
||||
uint8_t *output = NULL;
|
||||
size_t olen;
|
||||
|
||||
/* This test can't be run with an empty message */
|
||||
TEST_LE_U(1, msg->len);
|
||||
|
||||
BLOCK_CIPHER_PSA_INIT();
|
||||
TEST_EQUAL(mbedtls_ccm_setkey(&ctx, cipher_id, key->x, key->len * 8), 0);
|
||||
TEST_EQUAL(0, mbedtls_ccm_starts(&ctx, mode, iv->x, iv->len));
|
||||
// use hardcoded value for tag length. It is a not a part of this test
|
||||
// subtract 1 from configured msg length to provoke an overflow
|
||||
TEST_EQUAL(0, mbedtls_ccm_set_lengths(&ctx, add->len, msg->len - 1, 16));
|
||||
|
||||
TEST_EQUAL(0, mbedtls_ccm_update_ad(&ctx, add->x, add->len));
|
||||
|
||||
TEST_CALLOC(output, msg->len);
|
||||
TEST_EQUAL(MBEDTLS_ERR_CCM_BAD_INPUT, \
|
||||
mbedtls_ccm_update(&ctx, msg->x, msg->len, output, msg->len, &olen));
|
||||
exit:
|
||||
mbedtls_free(output);
|
||||
mbedtls_ccm_free(&ctx);
|
||||
BLOCK_CIPHER_PSA_DONE();
|
||||
}
|
||||
/* END_CASE */
|
||||
|
||||
/* Provide incomplete plaintext/ciphertext and finish */
|
||||
/* BEGIN_CASE */
|
||||
void mbedtls_ccm_incomplete_update(int cipher_id, int mode,
|
||||
data_t *key, data_t *msg, data_t *iv,
|
||||
data_t *add)
|
||||
{
|
||||
mbedtls_ccm_context ctx;
|
||||
mbedtls_ccm_init(&ctx);
|
||||
uint8_t *output = NULL;
|
||||
size_t olen;
|
||||
|
||||
/* This test can't be run with an empty message */
|
||||
TEST_LE_U(1, msg->len);
|
||||
|
||||
BLOCK_CIPHER_PSA_INIT();
|
||||
TEST_EQUAL(mbedtls_ccm_setkey(&ctx, cipher_id, key->x, key->len * 8), 0);
|
||||
TEST_EQUAL(0, mbedtls_ccm_starts(&ctx, mode, iv->x, iv->len));
|
||||
// use hardcoded value for tag length. It is not a part of this test
|
||||
TEST_EQUAL(0, mbedtls_ccm_set_lengths(&ctx, add->len, msg->len, 16));
|
||||
|
||||
TEST_EQUAL(0, mbedtls_ccm_update_ad(&ctx, add->x, add->len));
|
||||
|
||||
TEST_CALLOC(output, msg->len);
|
||||
olen = 0xdeadbeef;
|
||||
TEST_EQUAL(0, mbedtls_ccm_update(&ctx, msg->x, msg->len - 1, output, msg->len, &olen));
|
||||
mbedtls_free(output);
|
||||
output = NULL;
|
||||
|
||||
TEST_CALLOC(output, 16);
|
||||
TEST_EQUAL(MBEDTLS_ERR_CCM_BAD_INPUT, mbedtls_ccm_finish(&ctx, output, 16));
|
||||
|
||||
exit:
|
||||
mbedtls_free(output);
|
||||
mbedtls_ccm_free(&ctx);
|
||||
BLOCK_CIPHER_PSA_DONE();
|
||||
}
|
||||
/* END_CASE */
|
||||
|
||||
/* Provide full plaintext/ciphertext of first update
|
||||
* Provide unexpected plaintext/ciphertext on second update */
|
||||
/* BEGIN_CASE */
|
||||
void mbedtls_ccm_full_update_and_overflow(int cipher_id, int mode,
|
||||
data_t *key, data_t *msg, data_t *iv,
|
||||
data_t *add)
|
||||
{
|
||||
mbedtls_ccm_context ctx;
|
||||
mbedtls_ccm_init(&ctx);
|
||||
uint8_t *output = NULL;
|
||||
size_t olen;
|
||||
|
||||
BLOCK_CIPHER_PSA_INIT();
|
||||
TEST_EQUAL(mbedtls_ccm_setkey(&ctx, cipher_id, key->x, key->len * 8), 0);
|
||||
TEST_EQUAL(0, mbedtls_ccm_starts(&ctx, mode, iv->x, iv->len));
|
||||
// use hardcoded value for tag length. It is a not a part of this test
|
||||
TEST_EQUAL(0, mbedtls_ccm_set_lengths(&ctx, add->len, msg->len, 16));
|
||||
|
||||
TEST_EQUAL(0, mbedtls_ccm_update_ad(&ctx, add->x, add->len));
|
||||
|
||||
TEST_CALLOC(output, msg->len);
|
||||
// pass full text
|
||||
TEST_EQUAL(0, mbedtls_ccm_update(&ctx, msg->x, msg->len, output, msg->len, &olen));
|
||||
// pass 1 extra byte
|
||||
TEST_EQUAL(MBEDTLS_ERR_CCM_BAD_INPUT, \
|
||||
mbedtls_ccm_update(&ctx, msg->x, 1, output, 1, &olen));
|
||||
exit:
|
||||
mbedtls_free(output);
|
||||
mbedtls_ccm_free(&ctx);
|
||||
BLOCK_CIPHER_PSA_DONE();
|
||||
}
|
||||
/* END_CASE */
|
||||
|
||||
/* Provide incomplete plaintext/ciphertext of first update
|
||||
* Provide too much plaintext/ciphertext on second update */
|
||||
/* BEGIN_CASE */
|
||||
void mbedtls_ccm_incomplete_update_overflow(int cipher_id, int mode,
|
||||
data_t *key, data_t *msg, data_t *iv,
|
||||
data_t *add)
|
||||
{
|
||||
mbedtls_ccm_context ctx;
|
||||
mbedtls_ccm_init(&ctx);
|
||||
uint8_t *output = NULL;
|
||||
size_t olen;
|
||||
uint8_t msg_second_buffer[2];
|
||||
|
||||
/* This test can't be run with an empty message */
|
||||
TEST_LE_U(1, msg->len);
|
||||
|
||||
msg_second_buffer[0] = msg->x[msg->len - 1];
|
||||
msg_second_buffer[1] = 0xAB; // some magic value
|
||||
|
||||
BLOCK_CIPHER_PSA_INIT();
|
||||
TEST_EQUAL(mbedtls_ccm_setkey(&ctx, cipher_id, key->x, key->len * 8), 0);
|
||||
TEST_EQUAL(0, mbedtls_ccm_starts(&ctx, mode, iv->x, iv->len));
|
||||
// use hardcoded value for tag length. It is a not a part of this test
|
||||
TEST_EQUAL(0, mbedtls_ccm_set_lengths(&ctx, add->len, msg->len, 16));
|
||||
|
||||
TEST_EQUAL(0, mbedtls_ccm_update_ad(&ctx, add->x, add->len));
|
||||
|
||||
TEST_CALLOC(output, msg->len + 1);
|
||||
// pass incomplete text
|
||||
TEST_EQUAL(0, mbedtls_ccm_update(&ctx, msg->x, msg->len - 1, output, msg->len + 1, &olen));
|
||||
// pass 2 extra bytes (1 missing byte from previous incomplete pass, and 1 unexpected byte)
|
||||
TEST_EQUAL(MBEDTLS_ERR_CCM_BAD_INPUT, \
|
||||
mbedtls_ccm_update(&ctx, msg_second_buffer, 2, output + msg->len - 1, 2, &olen));
|
||||
exit:
|
||||
mbedtls_free(output);
|
||||
mbedtls_ccm_free(&ctx);
|
||||
BLOCK_CIPHER_PSA_DONE();
|
||||
}
|
||||
/* END_CASE */
|
||||
|
||||
/* Finish without passing any auth data or plaintext/ciphertext input */
|
||||
/* BEGIN_CASE */
|
||||
void mbedtls_ccm_instant_finish(int cipher_id, int mode,
|
||||
data_t *key, data_t *iv)
|
||||
{
|
||||
mbedtls_ccm_context ctx;
|
||||
mbedtls_ccm_init(&ctx);
|
||||
uint8_t *output = NULL;
|
||||
|
||||
BLOCK_CIPHER_PSA_INIT();
|
||||
TEST_EQUAL(mbedtls_ccm_setkey(&ctx, cipher_id, key->x, key->len * 8), 0);
|
||||
TEST_EQUAL(0, mbedtls_ccm_starts(&ctx, mode, iv->x, iv->len));
|
||||
// use hardcoded values for add length, msg length and tag length.
|
||||
// They are not a part of this test
|
||||
TEST_EQUAL(0, mbedtls_ccm_set_lengths(&ctx, 16, 16, 16));
|
||||
|
||||
TEST_CALLOC(output, 16);
|
||||
TEST_EQUAL(MBEDTLS_ERR_CCM_BAD_INPUT, mbedtls_ccm_finish(&ctx, output, 16));
|
||||
|
||||
exit:
|
||||
mbedtls_free(output);
|
||||
mbedtls_ccm_free(&ctx);
|
||||
BLOCK_CIPHER_PSA_DONE();
|
||||
}
|
||||
/* END_CASE */
|
||||
|
||||
/* BEGIN_CASE */
|
||||
void mbedtls_ccm_finish_boundary(int cipher_id, int mode,
|
||||
int start_tag_len, int finish_tag_len,
|
||||
int expected_finish_ret)
|
||||
{
|
||||
unsigned char key[16];
|
||||
unsigned char iv[13];
|
||||
/* Test does not rely on data/iv.Using Arbitrary values */
|
||||
memset(key, 42, sizeof(key));
|
||||
memset(iv, 11, sizeof(iv));
|
||||
|
||||
mbedtls_ccm_context ctx;
|
||||
unsigned char *tag = NULL;
|
||||
|
||||
mbedtls_ccm_init(&ctx);
|
||||
|
||||
BLOCK_CIPHER_PSA_INIT();
|
||||
TEST_EQUAL(mbedtls_ccm_setkey(&ctx, cipher_id, key, sizeof(key) * 8), 0);
|
||||
|
||||
|
||||
/* For non-CCM* with tag_len=0, validate the mbedtls_ccm_set_lengths path
|
||||
* when ccm_calculate_first_block_if_ready() fails. */
|
||||
if (start_tag_len == 0) {
|
||||
TEST_EQUAL(0, mbedtls_ccm_set_lengths(&ctx, 0, 0, (size_t) start_tag_len));
|
||||
TEST_EQUAL(MBEDTLS_ERR_CCM_BAD_INPUT,
|
||||
mbedtls_ccm_starts(&ctx, mode, iv, sizeof(iv)));
|
||||
|
||||
/* Use the caller-provided tag length during setup, then finish with a
|
||||
* different tag length to exercise boundary handling/API compliance */
|
||||
} else {
|
||||
TEST_EQUAL(0, mbedtls_ccm_starts(&ctx, mode, iv, sizeof(iv)));
|
||||
TEST_EQUAL(0, mbedtls_ccm_set_lengths(&ctx, 0, 0, (size_t) start_tag_len));
|
||||
}
|
||||
|
||||
TEST_CALLOC(tag, finish_tag_len);
|
||||
TEST_EQUAL(expected_finish_ret,
|
||||
mbedtls_ccm_finish(&ctx, tag, finish_tag_len));
|
||||
exit:
|
||||
mbedtls_free(tag);
|
||||
mbedtls_ccm_free(&ctx);
|
||||
BLOCK_CIPHER_PSA_DONE();
|
||||
}
|
||||
/* END_CASE */
|
||||
29
vendor/mbedtls/tests/suites/test_suite_chacha20.data
vendored
Normal file
29
vendor/mbedtls/tests/suites/test_suite_chacha20.data
vendored
Normal file
@@ -0,0 +1,29 @@
|
||||
ChaCha20 RFC 7539 Example and Test Vector (Encrypt)
|
||||
chacha20_crypt:"000102030405060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e1f":"000000000000004a00000000":1:"4c616469657320616e642047656e746c656d656e206f662074686520636c617373206f66202739393a204966204920636f756c64206f6666657220796f75206f6e6c79206f6e652074697020666f7220746865206675747572652c2073756e73637265656e20776f756c642062652069742e":"6e2e359a2568f98041ba0728dd0d6981e97e7aec1d4360c20a27afccfd9fae0bf91b65c5524733ab8f593dabcd62b3571639d624e65152ab8f530c359f0861d807ca0dbf500d6a6156a38e088a22b65e52bc514d16ccf806818ce91ab77937365af90bbf74a35be6b40b8eedf2785e42874d"
|
||||
|
||||
ChaCha20 RFC 7539 Example and Test Vector (Decrypt)
|
||||
chacha20_crypt:"000102030405060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e1f":"000000000000004a00000000":1:"6e2e359a2568f98041ba0728dd0d6981e97e7aec1d4360c20a27afccfd9fae0bf91b65c5524733ab8f593dabcd62b3571639d624e65152ab8f530c359f0861d807ca0dbf500d6a6156a38e088a22b65e52bc514d16ccf806818ce91ab77937365af90bbf74a35be6b40b8eedf2785e42874d":"4c616469657320616e642047656e746c656d656e206f662074686520636c617373206f66202739393a204966204920636f756c64206f6666657220796f75206f6e6c79206f6e652074697020666f7220746865206675747572652c2073756e73637265656e20776f756c642062652069742e"
|
||||
|
||||
ChaCha20 RFC 7539 Test Vector #1 (Encrypt)
|
||||
chacha20_crypt:"0000000000000000000000000000000000000000000000000000000000000000":"000000000000000000000000":0:"00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000":"76b8e0ada0f13d90405d6ae55386bd28bdd219b8a08ded1aa836efcc8b770dc7da41597c5157488d7724e03fb8d84a376a43b8f41518a11cc387b669b2ee6586"
|
||||
|
||||
ChaCha20 RFC 7539 Test Vector #1 (Decrypt)
|
||||
chacha20_crypt:"0000000000000000000000000000000000000000000000000000000000000000":"000000000000000000000000":0:"76b8e0ada0f13d90405d6ae55386bd28bdd219b8a08ded1aa836efcc8b770dc7da41597c5157488d7724e03fb8d84a376a43b8f41518a11cc387b669b2ee6586":"00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000"
|
||||
|
||||
ChaCha20 RFC 7539 Test Vector #2 (Encrypt)
|
||||
chacha20_crypt:"0000000000000000000000000000000000000000000000000000000000000001":"000000000000000000000002":1:"416e79207375626d697373696f6e20746f20746865204945544620696e74656e6465642062792074686520436f6e7472696275746f7220666f72207075626c69636174696f6e20617320616c6c206f722070617274206f6620616e204945544620496e7465726e65742d4472616674206f722052464320616e6420616e792073746174656d656e74206d6164652077697468696e2074686520636f6e74657874206f6620616e204945544620616374697669747920697320636f6e7369646572656420616e20224945544620436f6e747269627574696f6e222e20537563682073746174656d656e747320696e636c756465206f72616c2073746174656d656e747320696e20494554462073657373696f6e732c2061732077656c6c206173207772697474656e20616e6420656c656374726f6e696320636f6d6d756e69636174696f6e73206d61646520617420616e792074696d65206f7220706c6163652c207768696368206172652061646472657373656420746f":"a3fbf07df3fa2fde4f376ca23e82737041605d9f4f4f57bd8cff2c1d4b7955ec2a97948bd3722915c8f3d337f7d370050e9e96d647b7c39f56e031ca5eb6250d4042e02785ececfa4b4bb5e8ead0440e20b6e8db09d881a7c6132f420e52795042bdfa7773d8a9051447b3291ce1411c680465552aa6c405b7764d5e87bea85ad00f8449ed8f72d0d662ab052691ca66424bc86d2df80ea41f43abf937d3259dc4b2d0dfb48a6c9139ddd7f76966e928e635553ba76c5c879d7b35d49eb2e62b0871cdac638939e25e8a1e0ef9d5280fa8ca328b351c3c765989cbcf3daa8b6ccc3aaf9f3979c92b3720fc88dc95ed84a1be059c6499b9fda236e7e818b04b0bc39c1e876b193bfe5569753f88128cc08aaa9b63d1a16f80ef2554d7189c411f5869ca52c5b83fa36ff216b9c1d30062bebcfd2dc5bce0911934fda79a86f6e698ced759c3ff9b6477338f3da4f9cd8514ea9982ccafb341b2384dd902f3d1ab7ac61dd29c6f21ba5b862f3730e37cfdc4fd806c22f221"
|
||||
|
||||
ChaCha20 RFC 7539 Test Vector #2 (Decrypt)
|
||||
chacha20_crypt:"0000000000000000000000000000000000000000000000000000000000000001":"000000000000000000000002":1:"a3fbf07df3fa2fde4f376ca23e82737041605d9f4f4f57bd8cff2c1d4b7955ec2a97948bd3722915c8f3d337f7d370050e9e96d647b7c39f56e031ca5eb6250d4042e02785ececfa4b4bb5e8ead0440e20b6e8db09d881a7c6132f420e52795042bdfa7773d8a9051447b3291ce1411c680465552aa6c405b7764d5e87bea85ad00f8449ed8f72d0d662ab052691ca66424bc86d2df80ea41f43abf937d3259dc4b2d0dfb48a6c9139ddd7f76966e928e635553ba76c5c879d7b35d49eb2e62b0871cdac638939e25e8a1e0ef9d5280fa8ca328b351c3c765989cbcf3daa8b6ccc3aaf9f3979c92b3720fc88dc95ed84a1be059c6499b9fda236e7e818b04b0bc39c1e876b193bfe5569753f88128cc08aaa9b63d1a16f80ef2554d7189c411f5869ca52c5b83fa36ff216b9c1d30062bebcfd2dc5bce0911934fda79a86f6e698ced759c3ff9b6477338f3da4f9cd8514ea9982ccafb341b2384dd902f3d1ab7ac61dd29c6f21ba5b862f3730e37cfdc4fd806c22f221":"416e79207375626d697373696f6e20746f20746865204945544620696e74656e6465642062792074686520436f6e7472696275746f7220666f72207075626c69636174696f6e20617320616c6c206f722070617274206f6620616e204945544620496e7465726e65742d4472616674206f722052464320616e6420616e792073746174656d656e74206d6164652077697468696e2074686520636f6e74657874206f6620616e204945544620616374697669747920697320636f6e7369646572656420616e20224945544620436f6e747269627574696f6e222e20537563682073746174656d656e747320696e636c756465206f72616c2073746174656d656e747320696e20494554462073657373696f6e732c2061732077656c6c206173207772697474656e20616e6420656c656374726f6e696320636f6d6d756e69636174696f6e73206d61646520617420616e792074696d65206f7220706c6163652c207768696368206172652061646472657373656420746f"
|
||||
|
||||
ChaCha20 RFC 7539 Test Vector #3 (Encrypt)
|
||||
chacha20_crypt:"1c9240a5eb55d38af333888604f6b5f0473917c1402b80099dca5cbc207075c0":"000000000000000000000002":42:"2754776173206272696c6c69672c20616e642074686520736c6974687920746f7665730a446964206779726520616e642067696d626c6520696e2074686520776162653a0a416c6c206d696d737920776572652074686520626f726f676f7665732c0a416e6420746865206d6f6d65207261746873206f757467726162652e":"62e6347f95ed87a45ffae7426f27a1df5fb69110044c0d73118effa95b01e5cf166d3df2d721caf9b21e5fb14c616871fd84c54f9d65b283196c7fe4f60553ebf39c6402c42234e32a356b3e764312a61a5532055716ead6962568f87d3f3f7704c6a8d1bcd1bf4d50d6154b6da731b187b58dfd728afa36757a797ac188d1"
|
||||
|
||||
ChaCha20 RFC 7539 Test Vector #3 (Decrypt)
|
||||
chacha20_crypt:"1c9240a5eb55d38af333888604f6b5f0473917c1402b80099dca5cbc207075c0":"000000000000000000000002":42:"62e6347f95ed87a45ffae7426f27a1df5fb69110044c0d73118effa95b01e5cf166d3df2d721caf9b21e5fb14c616871fd84c54f9d65b283196c7fe4f60553ebf39c6402c42234e32a356b3e764312a61a5532055716ead6962568f87d3f3f7704c6a8d1bcd1bf4d50d6154b6da731b187b58dfd728afa36757a797ac188d1":"2754776173206272696c6c69672c20616e642074686520736c6974687920746f7665730a446964206779726520616e642067696d626c6520696e2074686520776162653a0a416c6c206d696d737920776572652074686520626f726f676f7665732c0a416e6420746865206d6f6d65207261746873206f757467726162652e"
|
||||
|
||||
ChaCha20 Counter Overflow
|
||||
chacha20_input_len_too_long:
|
||||
|
||||
ChaCha20 Selftest
|
||||
chacha20_self_test:
|
||||
121
vendor/mbedtls/tests/suites/test_suite_chacha20.function
vendored
Normal file
121
vendor/mbedtls/tests/suites/test_suite_chacha20.function
vendored
Normal file
@@ -0,0 +1,121 @@
|
||||
/* BEGIN_HEADER */
|
||||
#include "mbedtls/chacha20.h"
|
||||
/* END_HEADER */
|
||||
|
||||
/* BEGIN_DEPENDENCIES
|
||||
* depends_on:MBEDTLS_CHACHA20_C
|
||||
* END_DEPENDENCIES
|
||||
*/
|
||||
|
||||
/* BEGIN_CASE */
|
||||
void chacha20_crypt(data_t *key_str,
|
||||
data_t *nonce_str,
|
||||
int counter,
|
||||
data_t *src_str,
|
||||
data_t *expected_output_str)
|
||||
{
|
||||
unsigned char output[375];
|
||||
mbedtls_chacha20_context ctx;
|
||||
|
||||
memset(output, 0x00, sizeof(output));
|
||||
|
||||
TEST_ASSERT(src_str->len == expected_output_str->len);
|
||||
TEST_ASSERT(key_str->len == 32U);
|
||||
TEST_ASSERT(nonce_str->len == 12U);
|
||||
|
||||
/*
|
||||
* Test the integrated API
|
||||
*/
|
||||
TEST_ASSERT(mbedtls_chacha20_crypt(key_str->x, nonce_str->x, counter, src_str->len, src_str->x,
|
||||
output) == 0);
|
||||
|
||||
TEST_MEMORY_COMPARE(output, expected_output_str->len,
|
||||
expected_output_str->x, expected_output_str->len);
|
||||
|
||||
/*
|
||||
* Test the streaming API
|
||||
*/
|
||||
mbedtls_chacha20_init(&ctx);
|
||||
|
||||
TEST_ASSERT(mbedtls_chacha20_setkey(&ctx, key_str->x) == 0);
|
||||
|
||||
TEST_ASSERT(mbedtls_chacha20_starts(&ctx, nonce_str->x, counter) == 0);
|
||||
|
||||
memset(output, 0x00, sizeof(output));
|
||||
TEST_ASSERT(mbedtls_chacha20_update(&ctx, src_str->len, src_str->x, output) == 0);
|
||||
|
||||
TEST_MEMORY_COMPARE(output, expected_output_str->len,
|
||||
expected_output_str->x, expected_output_str->len);
|
||||
|
||||
/*
|
||||
* Test the streaming API again, piecewise
|
||||
*/
|
||||
|
||||
/* Don't free/init the context nor set the key again,
|
||||
* in order to test that starts() does the right thing. */
|
||||
TEST_ASSERT(mbedtls_chacha20_starts(&ctx, nonce_str->x, counter) == 0);
|
||||
|
||||
memset(output, 0x00, sizeof(output));
|
||||
TEST_ASSERT(mbedtls_chacha20_update(&ctx, 1, src_str->x, output) == 0);
|
||||
TEST_ASSERT(mbedtls_chacha20_update(&ctx, src_str->len - 1,
|
||||
src_str->x + 1, output + 1) == 0);
|
||||
|
||||
TEST_MEMORY_COMPARE(output, expected_output_str->len,
|
||||
expected_output_str->x, expected_output_str->len);
|
||||
|
||||
mbedtls_chacha20_free(&ctx);
|
||||
}
|
||||
/* END_CASE */
|
||||
|
||||
/* BEGIN_CASE */
|
||||
void chacha20_input_len_too_long(void)
|
||||
{
|
||||
mbedtls_chacha20_context ctx;
|
||||
unsigned char key[32] = { 0 };
|
||||
unsigned char nonce[12] = { 0 };
|
||||
unsigned char input[65] = { 0 };
|
||||
unsigned char output[65] = { 0 };
|
||||
size_t i;
|
||||
|
||||
mbedtls_chacha20_init(&ctx);
|
||||
|
||||
TEST_ASSERT(mbedtls_chacha20_setkey(&ctx, key) == 0);
|
||||
TEST_ASSERT(mbedtls_chacha20_starts(&ctx, nonce, UINT32_MAX) == 0);
|
||||
|
||||
/*
|
||||
* An overlong call must fail before consuming buffered keystream bytes,
|
||||
* writing partial output, or advancing the context.
|
||||
*/
|
||||
TEST_EQUAL(mbedtls_chacha20_update(&ctx, 1, input, output), 0);
|
||||
memset(output, 0x2a, sizeof(output));
|
||||
TEST_EQUAL(mbedtls_chacha20_update(&ctx, 64, input, output),
|
||||
MBEDTLS_ERR_CHACHA20_BAD_INPUT_DATA);
|
||||
for (i = 0; i < sizeof(output); i++) {
|
||||
TEST_EQUAL(output[i], 0x2a);
|
||||
}
|
||||
|
||||
/* Consume the rest of the final counter block, then reject more input. */
|
||||
TEST_EQUAL(mbedtls_chacha20_update(&ctx, 63, input, output), 0);
|
||||
TEST_EQUAL(mbedtls_chacha20_update(&ctx, 0, NULL, NULL), 0);
|
||||
/*Test that zero length update does not break an exhausted context */
|
||||
TEST_EQUAL(mbedtls_chacha20_update(&ctx, 0, NULL, NULL), 0);
|
||||
TEST_EQUAL(mbedtls_chacha20_update(&ctx, 1, input, output),
|
||||
MBEDTLS_ERR_CHACHA20_BAD_INPUT_DATA);
|
||||
|
||||
/* The final counter block is valid, but generating another block is not. */
|
||||
TEST_EQUAL(mbedtls_chacha20_crypt(key, nonce, UINT32_MAX,
|
||||
64U, input, output), 0);
|
||||
TEST_EQUAL(mbedtls_chacha20_crypt(key, nonce, UINT32_MAX,
|
||||
sizeof(input), input, output),
|
||||
MBEDTLS_ERR_CHACHA20_BAD_INPUT_DATA);
|
||||
|
||||
mbedtls_chacha20_free(&ctx);
|
||||
}
|
||||
/* END_CASE */
|
||||
|
||||
/* BEGIN_CASE depends_on:MBEDTLS_SELF_TEST */
|
||||
void chacha20_self_test()
|
||||
{
|
||||
TEST_ASSERT(mbedtls_chacha20_self_test(1) == 0);
|
||||
}
|
||||
/* END_CASE */
|
||||
27
vendor/mbedtls/tests/suites/test_suite_chachapoly.data
vendored
Normal file
27
vendor/mbedtls/tests/suites/test_suite_chachapoly.data
vendored
Normal file
@@ -0,0 +1,27 @@
|
||||
ChaCha20-Poly1305 RFC 7539 Example and Test Vector (Encrypt)
|
||||
mbedtls_chachapoly_enc:"808182838485868788898a8b8c8d8e8f909192939495969798999a9b9c9d9e9f":"070000004041424344454647":"50515253c0c1c2c3c4c5c6c7":"4c616469657320616e642047656e746c656d656e206f662074686520636c617373206f66202739393a204966204920636f756c64206f6666657220796f75206f6e6c79206f6e652074697020666f7220746865206675747572652c2073756e73637265656e20776f756c642062652069742e":"d31a8d34648e60db7b86afbc53ef7ec2a4aded51296e08fea9e2b5a736ee62d63dbea45e8ca9671282fafb69da92728b1a71de0a9e060b2905d6a5b67ecd3b3692ddbd7f2d778b8c9803aee328091b58fab324e4fad675945585808b4831d7bc3ff4def08e4b7a9de576d26586cec64b6116":"1ae10b594f09e26a7e902ecbd0600691"
|
||||
|
||||
ChaCha20-Poly1305 RFC 7539 Example and Test Vector (Decrypt)
|
||||
mbedtls_chachapoly_dec:"808182838485868788898a8b8c8d8e8f909192939495969798999a9b9c9d9e9f":"070000004041424344454647":"50515253c0c1c2c3c4c5c6c7":"d31a8d34648e60db7b86afbc53ef7ec2a4aded51296e08fea9e2b5a736ee62d63dbea45e8ca9671282fafb69da92728b1a71de0a9e060b2905d6a5b67ecd3b3692ddbd7f2d778b8c9803aee328091b58fab324e4fad675945585808b4831d7bc3ff4def08e4b7a9de576d26586cec64b6116":"4c616469657320616e642047656e746c656d656e206f662074686520636c617373206f66202739393a204966204920636f756c64206f6666657220796f75206f6e6c79206f6e652074697020666f7220746865206675747572652c2073756e73637265656e20776f756c642062652069742e":"1ae10b594f09e26a7e902ecbd0600691":0
|
||||
|
||||
ChaCha20-Poly1305 RFC 7539 Example and Test Vector (Decrypt, not authentic)
|
||||
mbedtls_chachapoly_dec:"808182838485868788898a8b8c8d8e8f909192939495969798999a9b9c9d9e9f":"070000004041424344454647":"50515253c0c1c2c3c4c5c6c7":"d31a8d34648e60db7b86afbc53ef7ec2a4aded51296e08fea9e2b5a736ee62d63dbea45e8ca9671282fafb69da92728b1a71de0a9e060b2905d6a5b67ecd3b3692ddbd7f2d778b8c9803aee328091b58fab324e4fad675945585808b4831d7bc3ff4def08e4b7a9de576d26586cec64b6116":"4c616469657320616e642047656e746c656d656e206f662074686520636c617373206f66202739393a204966204920636f756c64206f6666657220796f75206f6e6c79206f6e652074697020666f7220746865206675747572652c2073756e73637265656e20776f756c642062652069742e":"1ae10b594f09e26a7e902ecbd0600690":MBEDTLS_ERR_CHACHAPOLY_AUTH_FAILED
|
||||
|
||||
ChaCha20-Poly1305 RFC 7539 Test Vector #1 (Encrypt)
|
||||
mbedtls_chachapoly_enc:"1c9240a5eb55d38af333888604f6b5f0473917c1402b80099dca5cbc207075c0":"000000000102030405060708":"f33388860000000000004e91":"496e7465726e65742d4472616674732061726520647261667420646f63756d656e74732076616c696420666f722061206d6178696d756d206f6620736978206d6f6e74687320616e64206d617920626520757064617465642c207265706c616365642c206f72206f62736f6c65746564206279206f7468657220646f63756d656e747320617420616e792074696d652e20497420697320696e617070726f70726961746520746f2075736520496e7465726e65742d447261667473206173207265666572656e6365206d6174657269616c206f7220746f2063697465207468656d206f74686572207468616e206173202fe2809c776f726b20696e2070726f67726573732e2fe2809d":"64a0861575861af460f062c79be643bd5e805cfd345cf389f108670ac76c8cb24c6cfc18755d43eea09ee94e382d26b0bdb7b73c321b0100d4f03b7f355894cf332f830e710b97ce98c8a84abd0b948114ad176e008d33bd60f982b1ff37c8559797a06ef4f0ef61c186324e2b3506383606907b6a7c02b0f9f6157b53c867e4b9166c767b804d46a59b5216cde7a4e99040c5a40433225ee282a1b0a06c523eaf4534d7f83fa1155b0047718cbc546a0d072b04b3564eea1b422273f548271a0bb2316053fa76991955ebd63159434ecebb4e466dae5a1073a6727627097a1049e617d91d361094fa68f0ff77987130305beaba2eda04df997b714d6c6f2c29a6ad5cb4022b02709b":"eead9d67890cbb22392336fea1851f38"
|
||||
|
||||
ChaCha20-Poly1305 RFC 7539 Test Vector #1 (Decrypt)
|
||||
mbedtls_chachapoly_dec:"1c9240a5eb55d38af333888604f6b5f0473917c1402b80099dca5cbc207075c0":"000000000102030405060708":"f33388860000000000004e91":"64a0861575861af460f062c79be643bd5e805cfd345cf389f108670ac76c8cb24c6cfc18755d43eea09ee94e382d26b0bdb7b73c321b0100d4f03b7f355894cf332f830e710b97ce98c8a84abd0b948114ad176e008d33bd60f982b1ff37c8559797a06ef4f0ef61c186324e2b3506383606907b6a7c02b0f9f6157b53c867e4b9166c767b804d46a59b5216cde7a4e99040c5a40433225ee282a1b0a06c523eaf4534d7f83fa1155b0047718cbc546a0d072b04b3564eea1b422273f548271a0bb2316053fa76991955ebd63159434ecebb4e466dae5a1073a6727627097a1049e617d91d361094fa68f0ff77987130305beaba2eda04df997b714d6c6f2c29a6ad5cb4022b02709b":"496e7465726e65742d4472616674732061726520647261667420646f63756d656e74732076616c696420666f722061206d6178696d756d206f6620736978206d6f6e74687320616e64206d617920626520757064617465642c207265706c616365642c206f72206f62736f6c65746564206279206f7468657220646f63756d656e747320617420616e792074696d652e20497420697320696e617070726f70726961746520746f2075736520496e7465726e65742d447261667473206173207265666572656e6365206d6174657269616c206f7220746f2063697465207468656d206f74686572207468616e206173202fe2809c776f726b20696e2070726f67726573732e2fe2809d":"eead9d67890cbb22392336fea1851f38":0
|
||||
|
||||
ChaCha20-Poly1305 RFC 7539 Test Vector #1 (Decrypt, not authentic)
|
||||
mbedtls_chachapoly_dec:"1c9240a5eb55d38af333888604f6b5f0473917c1402b80099dca5cbc207075c0":"000000000102030405060708":"f33388860000000000004e91":"64a0861575861af460f062c79be643bd5e805cfd345cf389f108670ac76c8cb24c6cfc18755d43eea09ee94e382d26b0bdb7b73c321b0100d4f03b7f355894cf332f830e710b97ce98c8a84abd0b948114ad176e008d33bd60f982b1ff37c8559797a06ef4f0ef61c186324e2b3506383606907b6a7c02b0f9f6157b53c867e4b9166c767b804d46a59b5216cde7a4e99040c5a40433225ee282a1b0a06c523eaf4534d7f83fa1155b0047718cbc546a0d072b04b3564eea1b422273f548271a0bb2316053fa76991955ebd63159434ecebb4e466dae5a1073a6727627097a1049e617d91d361094fa68f0ff77987130305beaba2eda04df997b714d6c6f2c29a6ad5cb4022b02709b":"496e7465726e65742d4472616674732061726520647261667420646f63756d656e74732076616c696420666f722061206d6178696d756d206f6620736978206d6f6e74687320616e64206d617920626520757064617465642c207265706c616365642c206f72206f62736f6c65746564206279206f7468657220646f63756d656e747320617420616e792074696d652e20497420697320696e617070726f70726961746520746f2075736520496e7465726e65742d447261667473206173207265666572656e6365206d6174657269616c206f7220746f2063697465207468656d206f74686572207468616e206173202fe2809c776f726b20696e2070726f67726573732e2fe2809d":"fead9d67890cbb22392336fea1851f38":MBEDTLS_ERR_CHACHAPOLY_AUTH_FAILED
|
||||
|
||||
ChaCha20-Poly1305 State Flow
|
||||
chachapoly_state:
|
||||
|
||||
ChaCha20-Poly1305 overlong generates the appropriate error
|
||||
chachapoly_update_too_long:
|
||||
|
||||
ChaCha20-Poly1305 Selftest
|
||||
depends_on:MBEDTLS_SELF_TEST
|
||||
chachapoly_selftest:
|
||||
197
vendor/mbedtls/tests/suites/test_suite_chachapoly.function
vendored
Normal file
197
vendor/mbedtls/tests/suites/test_suite_chachapoly.function
vendored
Normal file
@@ -0,0 +1,197 @@
|
||||
/* BEGIN_HEADER */
|
||||
#include "mbedtls/chachapoly.h"
|
||||
/* END_HEADER */
|
||||
|
||||
/* BEGIN_DEPENDENCIES
|
||||
* depends_on:MBEDTLS_CHACHAPOLY_C
|
||||
* END_DEPENDENCIES
|
||||
*/
|
||||
|
||||
/* BEGIN_CASE */
|
||||
void mbedtls_chachapoly_enc(data_t *key_str,
|
||||
data_t *nonce_str,
|
||||
data_t *aad_str,
|
||||
data_t *input_str,
|
||||
data_t *output_str,
|
||||
data_t *mac_str)
|
||||
{
|
||||
unsigned char output[265];
|
||||
unsigned char mac[16]; /* size set by the standard */
|
||||
mbedtls_chachapoly_context ctx;
|
||||
|
||||
TEST_ASSERT(key_str->len == 32);
|
||||
TEST_ASSERT(nonce_str->len == 12);
|
||||
TEST_ASSERT(mac_str->len == 16);
|
||||
|
||||
mbedtls_chachapoly_init(&ctx);
|
||||
|
||||
TEST_ASSERT(mbedtls_chachapoly_setkey(&ctx, key_str->x) == 0);
|
||||
|
||||
TEST_ASSERT(mbedtls_chachapoly_encrypt_and_tag(&ctx,
|
||||
input_str->len, nonce_str->x,
|
||||
aad_str->x, aad_str->len,
|
||||
input_str->x, output, mac) == 0);
|
||||
|
||||
TEST_ASSERT(memcmp(output_str->x, output, output_str->len) == 0);
|
||||
TEST_ASSERT(memcmp(mac_str->x, mac, 16U) == 0);
|
||||
|
||||
exit:
|
||||
mbedtls_chachapoly_free(&ctx);
|
||||
}
|
||||
/* END_CASE */
|
||||
|
||||
/* BEGIN_CASE */
|
||||
void mbedtls_chachapoly_dec(data_t *key_str,
|
||||
data_t *nonce_str,
|
||||
data_t *aad_str,
|
||||
data_t *input_str,
|
||||
data_t *output_str,
|
||||
data_t *mac_str,
|
||||
int ret_exp)
|
||||
{
|
||||
unsigned char output[265];
|
||||
int ret;
|
||||
mbedtls_chachapoly_context ctx;
|
||||
|
||||
TEST_ASSERT(key_str->len == 32);
|
||||
TEST_ASSERT(nonce_str->len == 12);
|
||||
TEST_ASSERT(mac_str->len == 16);
|
||||
|
||||
mbedtls_chachapoly_init(&ctx);
|
||||
|
||||
TEST_ASSERT(mbedtls_chachapoly_setkey(&ctx, key_str->x) == 0);
|
||||
|
||||
ret = mbedtls_chachapoly_auth_decrypt(&ctx,
|
||||
input_str->len, nonce_str->x,
|
||||
aad_str->x, aad_str->len,
|
||||
mac_str->x, input_str->x, output);
|
||||
|
||||
TEST_ASSERT(ret == ret_exp);
|
||||
if (ret_exp == 0) {
|
||||
TEST_ASSERT(memcmp(output_str->x, output, output_str->len) == 0);
|
||||
}
|
||||
|
||||
exit:
|
||||
mbedtls_chachapoly_free(&ctx);
|
||||
}
|
||||
/* END_CASE */
|
||||
|
||||
/* BEGIN_CASE */
|
||||
void chachapoly_update_too_long()
|
||||
{
|
||||
unsigned char key[32] = { 0 };
|
||||
unsigned char nonce[12] = { 0 };
|
||||
unsigned char input[65] = { 0 };
|
||||
unsigned char output[65] = { 0 };
|
||||
mbedtls_chachapoly_context ctx;
|
||||
size_t i;
|
||||
|
||||
mbedtls_chachapoly_init(&ctx);
|
||||
|
||||
TEST_EQUAL(mbedtls_chachapoly_setkey(&ctx, key), 0);
|
||||
TEST_EQUAL(mbedtls_chachapoly_starts(&ctx, nonce,
|
||||
MBEDTLS_CHACHAPOLY_ENCRYPT), 0);
|
||||
|
||||
/* Force the next update to be too long without processing a huge buffer. */
|
||||
ctx.chacha20_ctx.state[12] = UINT32_MAX;
|
||||
/* Test that the failed update does not modify the output. This is a
|
||||
* defense in depth assertion, however is not currently gauranteed by
|
||||
* the API */
|
||||
memset(output, 0x2a, sizeof(output));
|
||||
TEST_EQUAL(mbedtls_chachapoly_update(&ctx, sizeof(input), input, output),
|
||||
MBEDTLS_ERR_CHACHA20_BAD_INPUT_DATA);
|
||||
for (i = 0; i < sizeof(output); i++) {
|
||||
TEST_EQUAL(output[i], 0x2a);
|
||||
}
|
||||
|
||||
exit:
|
||||
mbedtls_chachapoly_free(&ctx);
|
||||
}
|
||||
/* END_CASE */
|
||||
|
||||
/* BEGIN_CASE */
|
||||
void chachapoly_state()
|
||||
{
|
||||
unsigned char key[32];
|
||||
unsigned char nonce[12];
|
||||
unsigned char aad[1];
|
||||
unsigned char input[1];
|
||||
unsigned char output[1];
|
||||
unsigned char mac[16];
|
||||
size_t input_len = sizeof(input);
|
||||
size_t aad_len = sizeof(aad);
|
||||
mbedtls_chachapoly_context ctx;
|
||||
|
||||
memset(key, 0x00, sizeof(key));
|
||||
memset(nonce, 0x00, sizeof(nonce));
|
||||
memset(aad, 0x00, sizeof(aad));
|
||||
memset(input, 0x00, sizeof(input));
|
||||
memset(output, 0x00, sizeof(output));
|
||||
memset(mac, 0x00, sizeof(mac));
|
||||
|
||||
/* Initial state: finish, update, update_aad forbidden */
|
||||
mbedtls_chachapoly_init(&ctx);
|
||||
|
||||
TEST_ASSERT(mbedtls_chachapoly_finish(&ctx, mac)
|
||||
== MBEDTLS_ERR_CHACHAPOLY_BAD_STATE);
|
||||
TEST_ASSERT(mbedtls_chachapoly_update(&ctx, input_len, input, output)
|
||||
== MBEDTLS_ERR_CHACHAPOLY_BAD_STATE);
|
||||
TEST_ASSERT(mbedtls_chachapoly_update_aad(&ctx, aad, aad_len)
|
||||
== MBEDTLS_ERR_CHACHAPOLY_BAD_STATE);
|
||||
|
||||
/* Still initial state: finish, update, update_aad forbidden */
|
||||
TEST_ASSERT(mbedtls_chachapoly_setkey(&ctx, key)
|
||||
== 0);
|
||||
|
||||
TEST_ASSERT(mbedtls_chachapoly_finish(&ctx, mac)
|
||||
== MBEDTLS_ERR_CHACHAPOLY_BAD_STATE);
|
||||
TEST_ASSERT(mbedtls_chachapoly_update(&ctx, input_len, input, output)
|
||||
== MBEDTLS_ERR_CHACHAPOLY_BAD_STATE);
|
||||
TEST_ASSERT(mbedtls_chachapoly_update_aad(&ctx, aad, aad_len)
|
||||
== MBEDTLS_ERR_CHACHAPOLY_BAD_STATE);
|
||||
|
||||
/* Starts -> finish OK */
|
||||
TEST_ASSERT(mbedtls_chachapoly_starts(&ctx, nonce, MBEDTLS_CHACHAPOLY_ENCRYPT)
|
||||
== 0);
|
||||
TEST_ASSERT(mbedtls_chachapoly_finish(&ctx, mac)
|
||||
== 0);
|
||||
|
||||
/* After finish: update, update_aad forbidden */
|
||||
TEST_ASSERT(mbedtls_chachapoly_update(&ctx, input_len, input, output)
|
||||
== MBEDTLS_ERR_CHACHAPOLY_BAD_STATE);
|
||||
TEST_ASSERT(mbedtls_chachapoly_update_aad(&ctx, aad, aad_len)
|
||||
== MBEDTLS_ERR_CHACHAPOLY_BAD_STATE);
|
||||
|
||||
/* Starts -> update* OK */
|
||||
TEST_ASSERT(mbedtls_chachapoly_starts(&ctx, nonce, MBEDTLS_CHACHAPOLY_ENCRYPT)
|
||||
== 0);
|
||||
TEST_ASSERT(mbedtls_chachapoly_update(&ctx, input_len, input, output)
|
||||
== 0);
|
||||
TEST_ASSERT(mbedtls_chachapoly_update(&ctx, input_len, input, output)
|
||||
== 0);
|
||||
|
||||
/* After update: update_aad forbidden */
|
||||
TEST_ASSERT(mbedtls_chachapoly_update_aad(&ctx, aad, aad_len)
|
||||
== MBEDTLS_ERR_CHACHAPOLY_BAD_STATE);
|
||||
|
||||
/* Starts -> update_aad* -> finish OK */
|
||||
TEST_ASSERT(mbedtls_chachapoly_starts(&ctx, nonce, MBEDTLS_CHACHAPOLY_ENCRYPT)
|
||||
== 0);
|
||||
TEST_ASSERT(mbedtls_chachapoly_update_aad(&ctx, aad, aad_len)
|
||||
== 0);
|
||||
TEST_ASSERT(mbedtls_chachapoly_update_aad(&ctx, aad, aad_len)
|
||||
== 0);
|
||||
TEST_ASSERT(mbedtls_chachapoly_finish(&ctx, mac)
|
||||
== 0);
|
||||
|
||||
exit:
|
||||
mbedtls_chachapoly_free(&ctx);
|
||||
}
|
||||
/* END_CASE */
|
||||
|
||||
/* BEGIN_CASE depends_on:MBEDTLS_SELF_TEST */
|
||||
void chachapoly_selftest()
|
||||
{
|
||||
TEST_ASSERT(mbedtls_chachapoly_self_test(1) == 0);
|
||||
}
|
||||
/* END_CASE */
|
||||
2471
vendor/mbedtls/tests/suites/test_suite_cipher.aes.data
vendored
Normal file
2471
vendor/mbedtls/tests/suites/test_suite_cipher.aes.data
vendored
Normal file
File diff suppressed because it is too large
Load Diff
351
vendor/mbedtls/tests/suites/test_suite_cipher.aria.data
vendored
Normal file
351
vendor/mbedtls/tests/suites/test_suite_cipher.aria.data
vendored
Normal file
@@ -0,0 +1,351 @@
|
||||
Aria CBC Decrypt empty buffer
|
||||
depends_on:MBEDTLS_ARIA_C:MBEDTLS_CIPHER_MODE_CBC:MBEDTLS_CIPHER_PADDING_PKCS7
|
||||
dec_empty_buf:MBEDTLS_CIPHER_ARIA_128_CBC:0:0
|
||||
|
||||
ARIA-128 CCM*-NO-TAG - Encrypt and decrypt 0 bytes
|
||||
depends_on:MBEDTLS_ARIA_C:MBEDTLS_CCM_C
|
||||
enc_dec_buf:MBEDTLS_CIPHER_ARIA_128_CCM_STAR_NO_TAG:"ARIA-128-CCM*-NO-TAG":128:0:-1
|
||||
|
||||
ARIA-128 CCM*-NO-TAG - Encrypt and decrypt 1 byte
|
||||
depends_on:MBEDTLS_ARIA_C:MBEDTLS_CCM_C
|
||||
enc_dec_buf:MBEDTLS_CIPHER_ARIA_128_CCM_STAR_NO_TAG:"ARIA-128-CCM*-NO-TAG":128:1:-1
|
||||
|
||||
ARIA-128 CCM*-NO-TAG - Encrypt and decrypt 2 bytes
|
||||
depends_on:MBEDTLS_ARIA_C:MBEDTLS_CCM_C
|
||||
enc_dec_buf:MBEDTLS_CIPHER_ARIA_128_CCM_STAR_NO_TAG:"ARIA-128-CCM*-NO-TAG":128:2:-1
|
||||
|
||||
ARIA-128 CCM*-NO-TAG - Encrypt and decrypt 7 bytes
|
||||
depends_on:MBEDTLS_ARIA_C:MBEDTLS_CCM_C
|
||||
enc_dec_buf:MBEDTLS_CIPHER_ARIA_128_CCM_STAR_NO_TAG:"ARIA-128-CCM*-NO-TAG":128:7:-1
|
||||
|
||||
ARIA-128 CCM*-NO-TAG - Encrypt and decrypt 8 bytes
|
||||
depends_on:MBEDTLS_ARIA_C:MBEDTLS_CCM_C
|
||||
enc_dec_buf:MBEDTLS_CIPHER_ARIA_128_CCM_STAR_NO_TAG:"ARIA-128-CCM*-NO-TAG":128:8:-1
|
||||
|
||||
ARIA-128 CCM*-NO-TAG - Encrypt and decrypt 9 bytes
|
||||
depends_on:MBEDTLS_ARIA_C:MBEDTLS_CCM_C
|
||||
enc_dec_buf:MBEDTLS_CIPHER_ARIA_128_CCM_STAR_NO_TAG:"ARIA-128-CCM*-NO-TAG":128:9:-1
|
||||
|
||||
ARIA-128 CCM*-NO-TAG - Encrypt and decrypt 15 bytes
|
||||
depends_on:MBEDTLS_ARIA_C:MBEDTLS_CCM_C
|
||||
enc_dec_buf:MBEDTLS_CIPHER_ARIA_128_CCM_STAR_NO_TAG:"ARIA-128-CCM*-NO-TAG":128:15:-1
|
||||
|
||||
ARIA-128 CCM*-NO-TAG - Encrypt and decrypt 16 bytes
|
||||
depends_on:MBEDTLS_ARIA_C:MBEDTLS_CCM_C
|
||||
enc_dec_buf:MBEDTLS_CIPHER_ARIA_128_CCM_STAR_NO_TAG:"ARIA-128-CCM*-NO-TAG":128:16:-1
|
||||
|
||||
ARIA-128 CCM*-NO-TAG - Encrypt and decrypt 17 bytes
|
||||
depends_on:MBEDTLS_ARIA_C:MBEDTLS_CCM_C
|
||||
enc_dec_buf:MBEDTLS_CIPHER_ARIA_128_CCM_STAR_NO_TAG:"ARIA-128-CCM*-NO-TAG":128:17:-1
|
||||
|
||||
ARIA-128 CCM*-NO-TAG - Encrypt and decrypt 31 bytes
|
||||
depends_on:MBEDTLS_ARIA_C:MBEDTLS_CCM_C
|
||||
enc_dec_buf:MBEDTLS_CIPHER_ARIA_128_CCM_STAR_NO_TAG:"ARIA-128-CCM*-NO-TAG":128:31:-1
|
||||
|
||||
ARIA-128 CCM*-NO-TAG - Encrypt and decrypt 32 bytes
|
||||
depends_on:MBEDTLS_ARIA_C:MBEDTLS_CCM_C
|
||||
enc_dec_buf:MBEDTLS_CIPHER_ARIA_128_CCM_STAR_NO_TAG:"ARIA-128-CCM*-NO-TAG":128:32:-1
|
||||
|
||||
ARIA-128 CCM*-NO-TAG - Encrypt and decrypt 33 bytes
|
||||
depends_on:MBEDTLS_ARIA_C:MBEDTLS_CCM_C
|
||||
enc_dec_buf:MBEDTLS_CIPHER_ARIA_128_CCM_STAR_NO_TAG:"ARIA-128-CCM*-NO-TAG":128:33:-1
|
||||
|
||||
ARIA-128 CCM*-NO-TAG - Encrypt and decrypt 47 bytes
|
||||
depends_on:MBEDTLS_ARIA_C:MBEDTLS_CCM_C
|
||||
enc_dec_buf:MBEDTLS_CIPHER_ARIA_128_CCM_STAR_NO_TAG:"ARIA-128-CCM*-NO-TAG":128:47:-1
|
||||
|
||||
ARIA-128 CCM*-NO-TAG - Encrypt and decrypt 48 bytes
|
||||
depends_on:MBEDTLS_ARIA_C:MBEDTLS_CCM_C
|
||||
enc_dec_buf:MBEDTLS_CIPHER_ARIA_128_CCM_STAR_NO_TAG:"ARIA-128-CCM*-NO-TAG":128:48:-1
|
||||
|
||||
ARIA-128 CCM*-NO-TAG - Encrypt and decrypt 49 bytes
|
||||
depends_on:MBEDTLS_ARIA_C:MBEDTLS_CCM_C
|
||||
enc_dec_buf:MBEDTLS_CIPHER_ARIA_128_CCM_STAR_NO_TAG:"ARIA-128-CCM*-NO-TAG":128:49:-1
|
||||
|
||||
ARIA-128 CCM*-NO-TAG - Encrypt and decrypt 0 bytes in multiple parts
|
||||
depends_on:MBEDTLS_ARIA_C:MBEDTLS_CCM_C
|
||||
enc_dec_buf_multipart:MBEDTLS_CIPHER_ARIA_128_CCM_STAR_NO_TAG:128:0:0:-1:0:0:0:0
|
||||
|
||||
ARIA-128 CCM*-NO-TAG - Encrypt and decrypt 1 bytes in multiple parts 1
|
||||
depends_on:MBEDTLS_ARIA_C:MBEDTLS_CCM_C
|
||||
enc_dec_buf_multipart:MBEDTLS_CIPHER_ARIA_128_CCM_STAR_NO_TAG:128:1:0:-1:1:0:1:0
|
||||
|
||||
ARIA-128 CCM*-NO-TAG - Encrypt and decrypt 1 bytes in multiple parts 2
|
||||
depends_on:MBEDTLS_ARIA_C:MBEDTLS_CCM_C
|
||||
enc_dec_buf_multipart:MBEDTLS_CIPHER_ARIA_128_CCM_STAR_NO_TAG:128:0:1:-1:0:1:0:1
|
||||
|
||||
ARIA-128 CCM*-NO-TAG - Encrypt and decrypt 16 bytes in multiple parts 1
|
||||
depends_on:MBEDTLS_ARIA_C:MBEDTLS_CCM_C
|
||||
enc_dec_buf_multipart:MBEDTLS_CIPHER_ARIA_128_CCM_STAR_NO_TAG:128:16:0:-1:16:0:16:0
|
||||
|
||||
ARIA-128 CCM*-NO-TAG - Encrypt and decrypt 16 bytes in multiple parts 2
|
||||
depends_on:MBEDTLS_ARIA_C:MBEDTLS_CCM_C
|
||||
enc_dec_buf_multipart:MBEDTLS_CIPHER_ARIA_128_CCM_STAR_NO_TAG:128:0:16:-1:0:16:0:16
|
||||
|
||||
ARIA-128 CCM*-NO-TAG - Encrypt and decrypt 16 bytes in multiple parts 3
|
||||
depends_on:MBEDTLS_ARIA_C:MBEDTLS_CCM_C
|
||||
enc_dec_buf_multipart:MBEDTLS_CIPHER_ARIA_128_CCM_STAR_NO_TAG:128:1:15:-1:1:15:1:15
|
||||
|
||||
ARIA-128 CCM*-NO-TAG - Encrypt and decrypt 16 bytes in multiple parts 4
|
||||
depends_on:MBEDTLS_ARIA_C:MBEDTLS_CCM_C
|
||||
enc_dec_buf_multipart:MBEDTLS_CIPHER_ARIA_128_CCM_STAR_NO_TAG:128:15:1:-1:15:1:15:1
|
||||
|
||||
ARIA-128 CCM*-NO-TAG - Encrypt and decrypt 22 bytes in multiple parts 1
|
||||
depends_on:MBEDTLS_ARIA_C:MBEDTLS_CCM_C
|
||||
enc_dec_buf_multipart:MBEDTLS_CIPHER_ARIA_128_CCM_STAR_NO_TAG:128:15:7:-1:15:7:15:7
|
||||
|
||||
ARIA-128-CCM*-NO-TAG - Encrypt and decrypt 22 bytes in multiple parts 2
|
||||
depends_on:MBEDTLS_ARIA_C:MBEDTLS_CCM_C
|
||||
enc_dec_buf_multipart:MBEDTLS_CIPHER_ARIA_128_CCM_STAR_NO_TAG:128:16:6:-1:16:6:16:6
|
||||
|
||||
ARIA-128-CCM*-NO-TAG - Encrypt and decrypt 23 bytes in multiple parts 1
|
||||
depends_on:MBEDTLS_ARIA_C:MBEDTLS_CCM_C
|
||||
enc_dec_buf_multipart:MBEDTLS_CIPHER_ARIA_128_CCM_STAR_NO_TAG:128:17:6:-1:17:6:17:6
|
||||
|
||||
ARIA-128-CCM*-NO-TAG - Encrypt and decrypt 32 bytes in multiple parts 1
|
||||
depends_on:MBEDTLS_ARIA_C:MBEDTLS_CCM_C
|
||||
enc_dec_buf_multipart:MBEDTLS_CIPHER_ARIA_128_CCM_STAR_NO_TAG:128:16:16:-1:16:16:16:16
|
||||
|
||||
ARIA-192-CCM*-NO-TAG - Encrypt and decrypt 0 bytes
|
||||
depends_on:MBEDTLS_ARIA_C:MBEDTLS_CCM_C
|
||||
enc_dec_buf:MBEDTLS_CIPHER_ARIA_192_CCM_STAR_NO_TAG:"ARIA-192-CCM*-NO-TAG":192:0:-1
|
||||
|
||||
ARIA-192-CCM*-NO-TAG - Encrypt and decrypt 1 byte
|
||||
depends_on:MBEDTLS_ARIA_C:MBEDTLS_CCM_C
|
||||
enc_dec_buf:MBEDTLS_CIPHER_ARIA_192_CCM_STAR_NO_TAG:"ARIA-192-CCM*-NO-TAG":192:1:-1
|
||||
|
||||
ARIA-192-CCM*-NO-TAG - Encrypt and decrypt 2 bytes
|
||||
depends_on:MBEDTLS_ARIA_C:MBEDTLS_CCM_C
|
||||
enc_dec_buf:MBEDTLS_CIPHER_ARIA_192_CCM_STAR_NO_TAG:"ARIA-192-CCM*-NO-TAG":192:2:-1
|
||||
|
||||
ARIA-192-CCM*-NO-TAG - Encrypt and decrypt 7 bytes
|
||||
depends_on:MBEDTLS_ARIA_C:MBEDTLS_CCM_C
|
||||
enc_dec_buf:MBEDTLS_CIPHER_ARIA_192_CCM_STAR_NO_TAG:"ARIA-192-CCM*-NO-TAG":192:7:-1
|
||||
|
||||
ARIA-192-CCM*-NO-TAG - Encrypt and decrypt 8 bytes
|
||||
depends_on:MBEDTLS_ARIA_C:MBEDTLS_CCM_C
|
||||
enc_dec_buf:MBEDTLS_CIPHER_ARIA_192_CCM_STAR_NO_TAG:"ARIA-192-CCM*-NO-TAG":192:8:-1
|
||||
|
||||
ARIA-192-CCM*-NO-TAG - Encrypt and decrypt 9 bytes
|
||||
depends_on:MBEDTLS_ARIA_C:MBEDTLS_CCM_C
|
||||
enc_dec_buf:MBEDTLS_CIPHER_ARIA_192_CCM_STAR_NO_TAG:"ARIA-192-CCM*-NO-TAG":192:9:-1
|
||||
|
||||
ARIA-192-CCM*-NO-TAG - Encrypt and decrypt 15 bytes
|
||||
depends_on:MBEDTLS_ARIA_C:MBEDTLS_CCM_C
|
||||
enc_dec_buf:MBEDTLS_CIPHER_ARIA_192_CCM_STAR_NO_TAG:"ARIA-192-CCM*-NO-TAG":192:15:-1
|
||||
|
||||
ARIA-192-CCM*-NO-TAG - Encrypt and decrypt 16 bytes
|
||||
depends_on:MBEDTLS_ARIA_C:MBEDTLS_CCM_C
|
||||
enc_dec_buf:MBEDTLS_CIPHER_ARIA_192_CCM_STAR_NO_TAG:"ARIA-192-CCM*-NO-TAG":192:16:-1
|
||||
|
||||
ARIA-192-CCM*-NO-TAG - Encrypt and decrypt 17 bytes
|
||||
depends_on:MBEDTLS_ARIA_C:MBEDTLS_CCM_C
|
||||
enc_dec_buf:MBEDTLS_CIPHER_ARIA_192_CCM_STAR_NO_TAG:"ARIA-192-CCM*-NO-TAG":192:17:-1
|
||||
|
||||
ARIA-192-CCM*-NO-TAG - Encrypt and decrypt 31 bytes
|
||||
depends_on:MBEDTLS_ARIA_C:MBEDTLS_CCM_C
|
||||
enc_dec_buf:MBEDTLS_CIPHER_ARIA_192_CCM_STAR_NO_TAG:"ARIA-192-CCM*-NO-TAG":192:31:-1
|
||||
|
||||
ARIA-192-CCM*-NO-TAG - Encrypt and decrypt 32 bytes
|
||||
depends_on:MBEDTLS_ARIA_C:MBEDTLS_CCM_C
|
||||
enc_dec_buf:MBEDTLS_CIPHER_ARIA_192_CCM_STAR_NO_TAG:"ARIA-192-CCM*-NO-TAG":192:32:-1
|
||||
|
||||
ARIA-192-CCM*-NO-TAG - Encrypt and decrypt 33 bytes
|
||||
depends_on:MBEDTLS_ARIA_C:MBEDTLS_CCM_C
|
||||
enc_dec_buf:MBEDTLS_CIPHER_ARIA_192_CCM_STAR_NO_TAG:"ARIA-192-CCM*-NO-TAG":192:33:-1
|
||||
|
||||
ARIA-192-CCM*-NO-TAG - Encrypt and decrypt 47 bytes
|
||||
depends_on:MBEDTLS_ARIA_C:MBEDTLS_CCM_C
|
||||
enc_dec_buf:MBEDTLS_CIPHER_ARIA_192_CCM_STAR_NO_TAG:"ARIA-192-CCM*-NO-TAG":192:47:-1
|
||||
|
||||
ARIA-192-CCM*-NO-TAG - Encrypt and decrypt 48 bytes
|
||||
depends_on:MBEDTLS_ARIA_C:MBEDTLS_CCM_C
|
||||
enc_dec_buf:MBEDTLS_CIPHER_ARIA_192_CCM_STAR_NO_TAG:"ARIA-192-CCM*-NO-TAG":192:48:-1
|
||||
|
||||
ARIA-192-CCM*-NO-TAG - Encrypt and decrypt 49 bytes
|
||||
depends_on:MBEDTLS_ARIA_C:MBEDTLS_CCM_C
|
||||
enc_dec_buf:MBEDTLS_CIPHER_ARIA_192_CCM_STAR_NO_TAG:"ARIA-192-CCM*-NO-TAG":192:49:-1
|
||||
|
||||
ARIA-192-CCM*-NO-TAG - Encrypt and decrypt 0 bytes in multiple parts
|
||||
depends_on:MBEDTLS_ARIA_C:MBEDTLS_CCM_C
|
||||
enc_dec_buf_multipart:MBEDTLS_CIPHER_ARIA_192_CCM_STAR_NO_TAG:192:0:0:-1:0:0:0:0
|
||||
|
||||
ARIA-192-CCM*-NO-TAG - Encrypt and decrypt 1 bytes in multiple parts 1
|
||||
depends_on:MBEDTLS_ARIA_C:MBEDTLS_CCM_C
|
||||
enc_dec_buf_multipart:MBEDTLS_CIPHER_ARIA_192_CCM_STAR_NO_TAG:192:1:0:-1:1:0:1:0
|
||||
|
||||
ARIA-192-CCM*-NO-TAG - Encrypt and decrypt 1 bytes in multiple parts 2
|
||||
depends_on:MBEDTLS_ARIA_C:MBEDTLS_CCM_C
|
||||
enc_dec_buf_multipart:MBEDTLS_CIPHER_ARIA_192_CCM_STAR_NO_TAG:192:0:1:-1:0:1:0:1
|
||||
|
||||
ARIA-192-CCM*-NO-TAG - Encrypt and decrypt 16 bytes in multiple parts 1
|
||||
depends_on:MBEDTLS_ARIA_C:MBEDTLS_CCM_C
|
||||
enc_dec_buf_multipart:MBEDTLS_CIPHER_ARIA_192_CCM_STAR_NO_TAG:192:16:0:-1:16:0:16:0
|
||||
|
||||
ARIA-192-CCM*-NO-TAG - Encrypt and decrypt 16 bytes in multiple parts 2
|
||||
depends_on:MBEDTLS_ARIA_C:MBEDTLS_CCM_C
|
||||
enc_dec_buf_multipart:MBEDTLS_CIPHER_ARIA_192_CCM_STAR_NO_TAG:192:0:16:-1:0:16:0:16
|
||||
|
||||
ARIA-192-CCM*-NO-TAG - Encrypt and decrypt 16 bytes in multiple parts 3
|
||||
depends_on:MBEDTLS_ARIA_C:MBEDTLS_CCM_C
|
||||
enc_dec_buf_multipart:MBEDTLS_CIPHER_ARIA_192_CCM_STAR_NO_TAG:192:1:15:-1:1:15:1:15
|
||||
|
||||
ARIA-192-CCM*-NO-TAG - Encrypt and decrypt 16 bytes in multiple parts 4
|
||||
depends_on:MBEDTLS_ARIA_C:MBEDTLS_CCM_C
|
||||
enc_dec_buf_multipart:MBEDTLS_CIPHER_ARIA_192_CCM_STAR_NO_TAG:192:15:1:-1:15:1:15:1
|
||||
|
||||
ARIA-192-CCM*-NO-TAG - Encrypt and decrypt 22 bytes in multiple parts 1
|
||||
depends_on:MBEDTLS_ARIA_C:MBEDTLS_CCM_C
|
||||
enc_dec_buf_multipart:MBEDTLS_CIPHER_ARIA_192_CCM_STAR_NO_TAG:192:15:7:-1:15:7:15:7
|
||||
|
||||
ARIA-192-CCM*-NO-TAG - Encrypt and decrypt 22 bytes in multiple parts 2
|
||||
depends_on:MBEDTLS_ARIA_C:MBEDTLS_CCM_C
|
||||
enc_dec_buf_multipart:MBEDTLS_CIPHER_ARIA_192_CCM_STAR_NO_TAG:192:16:6:-1:16:6:16:6
|
||||
|
||||
ARIA-192-CCM*-NO-TAG - Encrypt and decrypt 23 bytes in multiple parts 1
|
||||
depends_on:MBEDTLS_ARIA_C:MBEDTLS_CCM_C
|
||||
enc_dec_buf_multipart:MBEDTLS_CIPHER_ARIA_192_CCM_STAR_NO_TAG:192:17:6:-1:17:6:17:6
|
||||
|
||||
ARIA-192-CCM*-NO-TAG - Encrypt and decrypt 32 bytes in multiple parts 1
|
||||
depends_on:MBEDTLS_ARIA_C:MBEDTLS_CCM_C
|
||||
enc_dec_buf_multipart:MBEDTLS_CIPHER_ARIA_192_CCM_STAR_NO_TAG:192:16:16:-1:16:16:16:16
|
||||
|
||||
ARIA-256-CCM*-NO-TAG - Encrypt and decrypt 0 bytes
|
||||
depends_on:MBEDTLS_ARIA_C:MBEDTLS_CCM_C
|
||||
enc_dec_buf:MBEDTLS_CIPHER_ARIA_256_CCM_STAR_NO_TAG:"ARIA-256-CCM*-NO-TAG":256:0:-1
|
||||
|
||||
ARIA-256-CCM*-NO-TAG - Encrypt and decrypt 1 byte
|
||||
depends_on:MBEDTLS_ARIA_C:MBEDTLS_CCM_C
|
||||
enc_dec_buf:MBEDTLS_CIPHER_ARIA_256_CCM_STAR_NO_TAG:"ARIA-256-CCM*-NO-TAG":256:1:-1
|
||||
|
||||
ARIA-256-CCM*-NO-TAG - Encrypt and decrypt 2 bytes
|
||||
depends_on:MBEDTLS_ARIA_C:MBEDTLS_CCM_C
|
||||
enc_dec_buf:MBEDTLS_CIPHER_ARIA_256_CCM_STAR_NO_TAG:"ARIA-256-CCM*-NO-TAG":256:2:-1
|
||||
|
||||
ARIA-256-CCM*-NO-TAG - Encrypt and decrypt 7 bytes
|
||||
depends_on:MBEDTLS_ARIA_C:MBEDTLS_CCM_C
|
||||
enc_dec_buf:MBEDTLS_CIPHER_ARIA_256_CCM_STAR_NO_TAG:"ARIA-256-CCM*-NO-TAG":256:7:-1
|
||||
|
||||
ARIA-256-CCM*-NO-TAG - Encrypt and decrypt 8 bytes
|
||||
depends_on:MBEDTLS_ARIA_C:MBEDTLS_CCM_C
|
||||
enc_dec_buf:MBEDTLS_CIPHER_ARIA_256_CCM_STAR_NO_TAG:"ARIA-256-CCM*-NO-TAG":256:8:-1
|
||||
|
||||
ARIA-256-CCM*-NO-TAG - Encrypt and decrypt 9 bytes
|
||||
depends_on:MBEDTLS_ARIA_C:MBEDTLS_CCM_C
|
||||
enc_dec_buf:MBEDTLS_CIPHER_ARIA_256_CCM_STAR_NO_TAG:"ARIA-256-CCM*-NO-TAG":256:9:-1
|
||||
|
||||
ARIA-256-CCM*-NO-TAG - Encrypt and decrypt 15 bytes
|
||||
depends_on:MBEDTLS_ARIA_C:MBEDTLS_CCM_C
|
||||
enc_dec_buf:MBEDTLS_CIPHER_ARIA_256_CCM_STAR_NO_TAG:"ARIA-256-CCM*-NO-TAG":256:15:-1
|
||||
|
||||
ARIA-256-CCM*-NO-TAG - Encrypt and decrypt 16 bytes
|
||||
depends_on:MBEDTLS_ARIA_C:MBEDTLS_CCM_C
|
||||
enc_dec_buf:MBEDTLS_CIPHER_ARIA_256_CCM_STAR_NO_TAG:"ARIA-256-CCM*-NO-TAG":256:16:-1
|
||||
|
||||
ARIA-256-CCM*-NO-TAG - Encrypt and decrypt 17 bytes
|
||||
depends_on:MBEDTLS_ARIA_C:MBEDTLS_CCM_C
|
||||
enc_dec_buf:MBEDTLS_CIPHER_ARIA_256_CCM_STAR_NO_TAG:"ARIA-256-CCM*-NO-TAG":256:17:-1
|
||||
|
||||
ARIA-256-CCM*-NO-TAG - Encrypt and decrypt 31 bytes
|
||||
depends_on:MBEDTLS_ARIA_C:MBEDTLS_CCM_C
|
||||
enc_dec_buf:MBEDTLS_CIPHER_ARIA_256_CCM_STAR_NO_TAG:"ARIA-256-CCM*-NO-TAG":256:31:-1
|
||||
|
||||
ARIA-256-CCM*-NO-TAG - Encrypt and decrypt 32 bytes
|
||||
depends_on:MBEDTLS_ARIA_C:MBEDTLS_CCM_C
|
||||
enc_dec_buf:MBEDTLS_CIPHER_ARIA_256_CCM_STAR_NO_TAG:"ARIA-256-CCM*-NO-TAG":256:32:-1
|
||||
|
||||
ARIA-256-CCM*-NO-TAG - Encrypt and decrypt 33 bytes
|
||||
depends_on:MBEDTLS_ARIA_C:MBEDTLS_CCM_C
|
||||
enc_dec_buf:MBEDTLS_CIPHER_ARIA_256_CCM_STAR_NO_TAG:"ARIA-256-CCM*-NO-TAG":256:33:-1
|
||||
|
||||
ARIA-256-CCM*-NO-TAG - Encrypt and decrypt 47 bytes
|
||||
depends_on:MBEDTLS_ARIA_C:MBEDTLS_CCM_C
|
||||
enc_dec_buf:MBEDTLS_CIPHER_ARIA_256_CCM_STAR_NO_TAG:"ARIA-256-CCM*-NO-TAG":256:47:-1
|
||||
|
||||
ARIA-256-CCM*-NO-TAG - Encrypt and decrypt 48 bytes
|
||||
depends_on:MBEDTLS_ARIA_C:MBEDTLS_CCM_C
|
||||
enc_dec_buf:MBEDTLS_CIPHER_ARIA_256_CCM_STAR_NO_TAG:"ARIA-256-CCM*-NO-TAG":256:48:-1
|
||||
|
||||
ARIA-256-CCM*-NO-TAG - Encrypt and decrypt 49 bytes
|
||||
depends_on:MBEDTLS_ARIA_C:MBEDTLS_CCM_C
|
||||
enc_dec_buf:MBEDTLS_CIPHER_ARIA_256_CCM_STAR_NO_TAG:"ARIA-256-CCM*-NO-TAG":256:49:-1
|
||||
|
||||
ARIA-256-CCM*-NO-TAG - Encrypt and decrypt 0 bytes in multiple parts
|
||||
depends_on:MBEDTLS_ARIA_C:MBEDTLS_CCM_C
|
||||
enc_dec_buf_multipart:MBEDTLS_CIPHER_ARIA_256_CCM_STAR_NO_TAG:256:0:0:-1:0:0:0:0
|
||||
|
||||
ARIA-256-CCM*-NO-TAG - Encrypt and decrypt 1 bytes in multiple parts 1
|
||||
depends_on:MBEDTLS_ARIA_C:MBEDTLS_CCM_C
|
||||
enc_dec_buf_multipart:MBEDTLS_CIPHER_ARIA_256_CCM_STAR_NO_TAG:256:1:0:-1:1:0:1:0
|
||||
|
||||
ARIA-256-CCM*-NO-TAG - Encrypt and decrypt 1 bytes in multiple parts 2
|
||||
depends_on:MBEDTLS_ARIA_C:MBEDTLS_CCM_C
|
||||
enc_dec_buf_multipart:MBEDTLS_CIPHER_ARIA_256_CCM_STAR_NO_TAG:256:0:1:-1:0:1:0:1
|
||||
|
||||
ARIA-256-CCM*-NO-TAG - Encrypt and decrypt 16 bytes in multiple parts 1
|
||||
depends_on:MBEDTLS_ARIA_C:MBEDTLS_CCM_C
|
||||
enc_dec_buf_multipart:MBEDTLS_CIPHER_ARIA_256_CCM_STAR_NO_TAG:256:16:0:-1:16:0:16:0
|
||||
|
||||
ARIA-256-CCM*-NO-TAG - Encrypt and decrypt 16 bytes in multiple parts 2
|
||||
depends_on:MBEDTLS_ARIA_C:MBEDTLS_CCM_C
|
||||
enc_dec_buf_multipart:MBEDTLS_CIPHER_ARIA_256_CCM_STAR_NO_TAG:256:0:16:-1:0:16:0:16
|
||||
|
||||
ARIA-256-CCM*-NO-TAG - Encrypt and decrypt 16 bytes in multiple parts 3
|
||||
depends_on:MBEDTLS_ARIA_C:MBEDTLS_CCM_C
|
||||
enc_dec_buf_multipart:MBEDTLS_CIPHER_ARIA_256_CCM_STAR_NO_TAG:256:1:15:-1:1:15:1:15
|
||||
|
||||
ARIA-256-CCM*-NO-TAG - Encrypt and decrypt 16 bytes in multiple parts 4
|
||||
depends_on:MBEDTLS_ARIA_C:MBEDTLS_CCM_C
|
||||
enc_dec_buf_multipart:MBEDTLS_CIPHER_ARIA_256_CCM_STAR_NO_TAG:256:15:1:-1:15:1:15:1
|
||||
|
||||
ARIA-256-CCM*-NO-TAG - Encrypt and decrypt 22 bytes in multiple parts 1
|
||||
depends_on:MBEDTLS_ARIA_C:MBEDTLS_CCM_C
|
||||
enc_dec_buf_multipart:MBEDTLS_CIPHER_ARIA_256_CCM_STAR_NO_TAG:256:15:7:-1:15:7:15:7
|
||||
|
||||
ARIA-256-CCM*-NO-TAG - Encrypt and decrypt 22 bytes in multiple parts 2
|
||||
depends_on:MBEDTLS_ARIA_C:MBEDTLS_CCM_C
|
||||
enc_dec_buf_multipart:MBEDTLS_CIPHER_ARIA_256_CCM_STAR_NO_TAG:256:16:6:-1:16:6:16:6
|
||||
|
||||
ARIA-256-CCM*-NO-TAG - Encrypt and decrypt 23 bytes in multiple parts 1
|
||||
depends_on:MBEDTLS_ARIA_C:MBEDTLS_CCM_C
|
||||
enc_dec_buf_multipart:MBEDTLS_CIPHER_ARIA_256_CCM_STAR_NO_TAG:256:17:6:-1:17:6:17:6
|
||||
|
||||
ARIA-256-CCM*-NO-TAG - Encrypt and decrypt 32 bytes in multiple parts 1
|
||||
depends_on:MBEDTLS_ARIA_C:MBEDTLS_CCM_C
|
||||
enc_dec_buf_multipart:MBEDTLS_CIPHER_ARIA_256_CCM_STAR_NO_TAG:256:16:16:-1:16:16:16:16
|
||||
|
||||
ARIA-128-CCM*-NO-TAG crypt Encrypt
|
||||
depends_on:MBEDTLS_ARIA_C:MBEDTLS_CCM_C
|
||||
test_vec_crypt:MBEDTLS_CIPHER_ARIA_128_CCM_STAR_NO_TAG:MBEDTLS_ENCRYPT:"C0C1C2C3C4C5C6C7C8C9CACBCCCDCECF":"00000003020100A0A1A2A3A4A5":"08090A0B0C0D0E0F101112131415161718191A1B1C1D1E":"6781f39fdf8d1c44165fc40ee2fb11f1d6e2ddc8c6512b":0:0
|
||||
|
||||
ARIA-128-CCM*-NO-TAG crypt Decrypt
|
||||
depends_on:MBEDTLS_ARIA_C:MBEDTLS_CCM_C
|
||||
test_vec_crypt:MBEDTLS_CIPHER_ARIA_128_CCM_STAR_NO_TAG:MBEDTLS_DECRYPT:"C0C1C2C3C4C5C6C7C8C9CACBCCCDCECF":"00000003020100A0A1A2A3A4A5":"08090A0B0C0D0E0F101112131415161718191A1B1C1D1E":"6781f39fdf8d1c44165fc40ee2fb11f1d6e2ddc8c6512b":0:0
|
||||
|
||||
ARIA-192-CCM*-NO-TAG crypt Encrypt
|
||||
depends_on:MBEDTLS_ARIA_C:MBEDTLS_CCM_C
|
||||
test_vec_crypt:MBEDTLS_CIPHER_ARIA_192_CCM_STAR_NO_TAG:MBEDTLS_ENCRYPT:"C0C1C2C3C4C5C6C7C8C9CACBCCCDCECFC0C1C2C3C4C5C6C7":"00000003020100A0A1A2A3A4A5":"08090A0B0C0D0E0F101112131415161718191A1B1C1D1E":"993df86214d98ae70582c784903702e349dd64ece488c2":0:0
|
||||
|
||||
ARIA-192-CCM*-NO-TAG crypt Decrypt
|
||||
depends_on:MBEDTLS_ARIA_C:MBEDTLS_CCM_C
|
||||
test_vec_crypt:MBEDTLS_CIPHER_ARIA_192_CCM_STAR_NO_TAG:MBEDTLS_DECRYPT:"C0C1C2C3C4C5C6C7C8C9CACBCCCDCECFC0C1C2C3C4C5C6C7":"00000003020100A0A1A2A3A4A5":"08090A0B0C0D0E0F101112131415161718191A1B1C1D1E":"993df86214d98ae70582c784903702e349dd64ece488c2":0:0
|
||||
|
||||
ARIA-256-CCM*-NO-TAG crypt Encrypt
|
||||
depends_on:MBEDTLS_ARIA_C:MBEDTLS_CCM_C
|
||||
test_vec_crypt:MBEDTLS_CIPHER_ARIA_256_CCM_STAR_NO_TAG:MBEDTLS_ENCRYPT:"C0C1C2C3C4C5C6C7C8C9CACBCCCDCECFC0C1C2C3C4C5C6C7C8C9CACBCCCDCECF":"00000003020100A0A1A2A3A4A5":"08090A0B0C0D0E0F101112131415161718191A1B1C1D1E":"5fdd984a6aa77c1d9a204c08f28172c4b4528bee27c41f":0:0
|
||||
|
||||
ARIA-256-CCM*-NO-TAG crypt Decrypt
|
||||
depends_on:MBEDTLS_ARIA_C:MBEDTLS_CCM_C
|
||||
test_vec_crypt:MBEDTLS_CIPHER_ARIA_256_CCM_STAR_NO_TAG:MBEDTLS_DECRYPT:"C0C1C2C3C4C5C6C7C8C9CACBCCCDCECFC0C1C2C3C4C5C6C7C8C9CACBCCCDCECF":"00000003020100A0A1A2A3A4A5":"08090A0B0C0D0E0F101112131415161718191A1B1C1D1E":"5fdd984a6aa77c1d9a204c08f28172c4b4528bee27c41f":0:0
|
||||
|
||||
Check set padding - 128 bit key
|
||||
depends_on:MBEDTLS_ARIA_C:MBEDTLS_CIPHER_MODE_CBC
|
||||
check_set_padding:MBEDTLS_CIPHER_ARIA_128_CBC
|
||||
|
||||
Check set padding - 192 bit key
|
||||
depends_on:MBEDTLS_ARIA_C:MBEDTLS_CIPHER_MODE_CBC
|
||||
check_set_padding:MBEDTLS_CIPHER_ARIA_192_CBC
|
||||
|
||||
Check set padding - 256 bit key
|
||||
depends_on:MBEDTLS_ARIA_C:MBEDTLS_CIPHER_MODE_CBC
|
||||
check_set_padding:MBEDTLS_CIPHER_ARIA_256_CBC
|
||||
1115
vendor/mbedtls/tests/suites/test_suite_cipher.camellia.data
vendored
Normal file
1115
vendor/mbedtls/tests/suites/test_suite_cipher.camellia.data
vendored
Normal file
File diff suppressed because it is too large
Load Diff
863
vendor/mbedtls/tests/suites/test_suite_cipher.ccm.data
vendored
Normal file
863
vendor/mbedtls/tests/suites/test_suite_cipher.ccm.data
vendored
Normal file
@@ -0,0 +1,863 @@
|
||||
AES-128-CCM test vector NIST #1 (P=0, N=7, A=0, T=4)
|
||||
depends_on:MBEDTLS_AES_C:MBEDTLS_CCM_C
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_AES_128_CCM:"4ae701103c63deca5b5a3939d7d05992":"5a8aa485c316e9":"":"":"02209f55":"":"":0
|
||||
|
||||
AES-128-CCM test vector NIST #2 (P=0, N=7, A=0, T=4)
|
||||
depends_on:MBEDTLS_AES_C:MBEDTLS_CCM_C
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_AES_128_CCM:"4ae701103c63deca5b5a3939d7d05992":"3796cf51b87266":"":"":"9a04c241":"FAIL":"":0
|
||||
|
||||
AES-128-CCM test vector NIST #3 (P=0, N=7, A=0, T=16)
|
||||
depends_on:MBEDTLS_AES_C:MBEDTLS_CCM_C
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_AES_128_CCM:"4bb3c4a4f893ad8c9bdc833c325d62b3":"5a8aa485c316e9":"":"":"75d582db43ce9b13ab4b6f7f14341330":"":"":0
|
||||
|
||||
AES-128-CCM test vector NIST #4 (P=0, N=7, A=0, T=16)
|
||||
depends_on:MBEDTLS_AES_C:MBEDTLS_CCM_C
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_AES_128_CCM:"4bb3c4a4f893ad8c9bdc833c325d62b3":"3796cf51b87266":"":"":"3a65e03af37b81d05acc7ec1bc39deb0":"FAIL":"":0
|
||||
|
||||
AES-128-CCM test vector NIST #5 (P=0, N=13, A=0, T=4)
|
||||
depends_on:MBEDTLS_AES_C:MBEDTLS_CCM_C
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_AES_128_CCM:"4bb3c4a4f893ad8c9bdc833c325d62b3":"5a8aa485c316e9403aff859fbb":"":"":"90156f3f":"":"":0
|
||||
|
||||
AES-128-CCM test vector NIST #6 (P=0, N=13, A=0, T=4)
|
||||
depends_on:MBEDTLS_AES_C:MBEDTLS_CCM_C
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_AES_128_CCM:"4bb3c4a4f893ad8c9bdc833c325d62b3":"a16a2e741f1cd9717285b6d882":"":"":"88909016":"FAIL":"":0
|
||||
|
||||
AES-128-CCM test vector NIST #7 (P=0, N=13, A=0, T=16)
|
||||
depends_on:MBEDTLS_AES_C:MBEDTLS_CCM_C
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_AES_128_CCM:"19ebfde2d5468ba0a3031bde629b11fd":"5a8aa485c316e9403aff859fbb":"":"":"fb04dc5a44c6bb000f2440f5154364b4":"":"":0
|
||||
|
||||
AES-128-CCM test vector NIST #8 (P=0, N=13, A=0, T=16)
|
||||
depends_on:MBEDTLS_AES_C:MBEDTLS_CCM_C
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_AES_128_CCM:"19ebfde2d5468ba0a3031bde629b11fd":"a16a2e741f1cd9717285b6d882":"":"":"5447075bf42a59b91f08064738b015ab":"FAIL":"":0
|
||||
|
||||
AES-128-CCM test vector NIST #9 (P=24, N=7, A=0, T=4)
|
||||
depends_on:MBEDTLS_AES_C:MBEDTLS_CCM_C
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_AES_128_CCM:"19ebfde2d5468ba0a3031bde629b11fd":"5a8aa485c316e9":"":"a90e8ea44085ced791b2fdb7fd44b5cf0bd7d27718029bb7":"03e1fa6b":"":"3796cf51b8726652a4204733b8fbb047cf00fb91a9837e22":0
|
||||
|
||||
AES-128-CCM test vector NIST #10 (P=24, N=7, A=0, T=4)
|
||||
depends_on:MBEDTLS_AES_C:MBEDTLS_CCM_C
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_AES_128_CCM:"19ebfde2d5468ba0a3031bde629b11fd":"31f8fa25827d48":"":"50aafe0578c115c4a8e126ff7b3ccb64dce8ccaa8ceda69f":"23e5d81c":"FAIL":"":0
|
||||
|
||||
AES-128-CCM test vector NIST #11 (P=24, N=7, A=0, T=16)
|
||||
depends_on:MBEDTLS_AES_C:MBEDTLS_CCM_C
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_AES_128_CCM:"197afb02ffbd8f699dacae87094d5243":"5a8aa485c316e9":"":"24ab9eeb0e5508cae80074f1070ee188a637171860881f1f":"2d9a3fbc210595b7b8b1b41523111a8e":"":"3796cf51b8726652a4204733b8fbb047cf00fb91a9837e22":0
|
||||
|
||||
AES-128-CCM test vector NIST #12 (P=24, N=7, A=0, T=16)
|
||||
depends_on:MBEDTLS_AES_C:MBEDTLS_CCM_C
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_AES_128_CCM:"197afb02ffbd8f699dacae87094d5243":"31f8fa25827d48":"":"7ebfda6fa5da1dbffd82dc29b875798fbcef8ba0084fbd24":"63af747cc88a001fa94e060290f209c4":"FAIL":"":0
|
||||
|
||||
AES-128-CCM test vector NIST #13 (P=24, N=13, A=0, T=4)
|
||||
depends_on:MBEDTLS_AES_C:MBEDTLS_CCM_C
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_AES_128_CCM:"197afb02ffbd8f699dacae87094d5243":"5a8aa485c316e9403aff859fbb":"":"4a550134f94455979ec4bf89ad2bd80d25a77ae94e456134":"a3e138b9":"":"a16a2e741f1cd9717285b6d882c1fc53655e9773761ad697":0
|
||||
|
||||
AES-128-CCM test vector NIST #14 (P=24, N=13, A=0, T=4)
|
||||
depends_on:MBEDTLS_AES_C:MBEDTLS_CCM_C
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_AES_128_CCM:"197afb02ffbd8f699dacae87094d5243":"49004912fdd7269279b1f06a89":"":"118ec53dd1bfbe52d5b9fe5dfebecf2ee674ec983eada654":"091a5ae9":"FAIL":"":0
|
||||
|
||||
AES-128-CCM test vector NIST #15 (P=24, N=13, A=0, T=16)
|
||||
depends_on:MBEDTLS_AES_C:MBEDTLS_CCM_C
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_AES_128_CCM:"90929a4b0ac65b350ad1591611fe4829":"5a8aa485c316e9403aff859fbb":"":"4bfe4e35784f0a65b545477e5e2f4bae0e1e6fa717eaf2cb":"6a9a970b9beb2ac1bd4fd62168f8378a":"":"a16a2e741f1cd9717285b6d882c1fc53655e9773761ad697":0
|
||||
|
||||
AES-128-CCM test vector NIST #16 (P=24, N=13, A=0, T=16)
|
||||
depends_on:MBEDTLS_AES_C:MBEDTLS_CCM_C
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_AES_128_CCM:"90929a4b0ac65b350ad1591611fe4829":"49004912fdd7269279b1f06a89":"":"0c56a503aa2c12e87450d45a7b714db980fd348f327c0065":"a65666144994bad0c8195bcb4ade1337":"FAIL":"":0
|
||||
|
||||
AES-128-CCM test vector NIST #17 (P=0, N=7, A=32, T=4)
|
||||
depends_on:MBEDTLS_AES_C:MBEDTLS_CCM_C
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_AES_128_CCM:"90929a4b0ac65b350ad1591611fe4829":"5a8aa485c316e9":"3796cf51b8726652a4204733b8fbb047cf00fb91a9837e22ec22b1a268f88e2c":"":"782e4318":"":"":0
|
||||
|
||||
AES-128-CCM test vector NIST #18 (P=0, N=7, A=32, T=4)
|
||||
depends_on:MBEDTLS_AES_C:MBEDTLS_CCM_C
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_AES_128_CCM:"90929a4b0ac65b350ad1591611fe4829":"a265480ca88d5f":"a2248a882ecbf850daf91933a389e78e81623d233dfd47bf8321361a38f138fe":"":"a04f270a":"FAIL":"":0
|
||||
|
||||
AES-128-CCM test vector NIST #19 (P=0, N=7, A=32, T=16)
|
||||
depends_on:MBEDTLS_AES_C:MBEDTLS_CCM_C
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_AES_128_CCM:"6a798d7c5e1a72b43e20ad5c7b08567b":"5a8aa485c316e9":"3796cf51b8726652a4204733b8fbb047cf00fb91a9837e22ec22b1a268f88e2c":"":"41b476013f45e4a781f253a6f3b1e530":"":"":0
|
||||
|
||||
AES-128-CCM test vector NIST #20 (P=0, N=7, A=32, T=16)
|
||||
depends_on:MBEDTLS_AES_C:MBEDTLS_CCM_C
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_AES_128_CCM:"6a798d7c5e1a72b43e20ad5c7b08567b":"a265480ca88d5f":"a2248a882ecbf850daf91933a389e78e81623d233dfd47bf8321361a38f138fe":"":"f9f018fcd125822616083fffebc4c8e6":"FAIL":"":0
|
||||
|
||||
AES-128-CCM test vector NIST #21 (P=0, N=13, A=32, T=4)
|
||||
depends_on:MBEDTLS_AES_C:MBEDTLS_CCM_C
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_AES_128_CCM:"6a798d7c5e1a72b43e20ad5c7b08567b":"5a8aa485c316e9403aff859fbb":"a16a2e741f1cd9717285b6d882c1fc53655e9773761ad697a7ee6410184c7982":"":"9f69f24f":"":"":0
|
||||
|
||||
AES-128-CCM test vector NIST #22 (P=0, N=13, A=32, T=4)
|
||||
depends_on:MBEDTLS_AES_C:MBEDTLS_CCM_C
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_AES_128_CCM:"6a798d7c5e1a72b43e20ad5c7b08567b":"8739b4bea1a099fe547499cbc6":"f6107696edb332b2ea059d8860fee26be42e5e12e1a4f79a8d0eafce1b2278a7":"":"e17afaa4":"FAIL":"":0
|
||||
|
||||
AES-128-CCM test vector NIST #23 (P=0, N=13, A=32, T=16)
|
||||
depends_on:MBEDTLS_AES_C:MBEDTLS_CCM_C
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_AES_128_CCM:"f9fdca4ac64fe7f014de0f43039c7571":"5a8aa485c316e9403aff859fbb":"a16a2e741f1cd9717285b6d882c1fc53655e9773761ad697a7ee6410184c7982":"":"1859ac36a40a6b28b34266253627797a":"":"":0
|
||||
|
||||
AES-128-CCM test vector NIST #24 (P=0, N=13, A=32, T=16)
|
||||
depends_on:MBEDTLS_AES_C:MBEDTLS_CCM_C
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_AES_128_CCM:"f9fdca4ac64fe7f014de0f43039c7571":"8739b4bea1a099fe547499cbc6":"f6107696edb332b2ea059d8860fee26be42e5e12e1a4f79a8d0eafce1b2278a7":"":"edf8b46eb69ac0044116019dec183072":"FAIL":"":0
|
||||
|
||||
AES-128-CCM test vector NIST #25 (P=24, N=7, A=32, T=4)
|
||||
depends_on:MBEDTLS_AES_C:MBEDTLS_CCM_C
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_AES_128_CCM:"f9fdca4ac64fe7f014de0f43039c7571":"5a8aa485c316e9":"3796cf51b8726652a4204733b8fbb047cf00fb91a9837e22ec22b1a268f88e2c":"6be31860ca271ef448de8f8d8b39346daf4b81d7e92d65b3":"38f125fa":"":"a265480ca88d5f536db0dc6abc40faf0d05be7a966977768":0
|
||||
|
||||
AES-128-CCM test vector NIST #26 (P=24, N=7, A=32, T=4)
|
||||
depends_on:MBEDTLS_AES_C:MBEDTLS_CCM_C
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_AES_128_CCM:"f9fdca4ac64fe7f014de0f43039c7571":"fdd2d6f503c915":"5b92394f21ddc3ad49d9b0881b829a5935cb3a4d23e292a62fb66b5e7ab7020e":"4cc57a9927a6bc401441870d3193bf89ebd163f5c01501c7":"28a66b69":"FAIL":"":0
|
||||
|
||||
AES-128-CCM test vector NIST #27 (P=24, N=7, A=32, T=16)
|
||||
depends_on:MBEDTLS_AES_C:MBEDTLS_CCM_C
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_AES_128_CCM:"a7aa635ea51b0bb20a092bd5573e728c":"5a8aa485c316e9":"3796cf51b8726652a4204733b8fbb047cf00fb91a9837e22ec22b1a268f88e2c":"b351ab96b2e45515254558d5212673ee6c776d42dbca3b51":"2cf3a20b7fd7c49e6e79bef475c2906f":"":"a265480ca88d5f536db0dc6abc40faf0d05be7a966977768":0
|
||||
|
||||
AES-128-CCM test vector NIST #28 (P=24, N=7, A=32, T=16)
|
||||
depends_on:MBEDTLS_AES_C:MBEDTLS_CCM_C
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_AES_128_CCM:"a7aa635ea51b0bb20a092bd5573e728c":"fdd2d6f503c915":"5b92394f21ddc3ad49d9b0881b829a5935cb3a4d23e292a62fb66b5e7ab7020e":"df1a5285caa41b4bb47f6e5ceceba4e82721828d68427a30":"81d18ca149d6766bfaccec88f194eb5b":"FAIL":"":0
|
||||
|
||||
AES-128-CCM test vector NIST #29 (P=24, N=13, A=32, T=4)
|
||||
depends_on:MBEDTLS_AES_C:MBEDTLS_CCM_C
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_AES_128_CCM:"a7aa635ea51b0bb20a092bd5573e728c":"5a8aa485c316e9403aff859fbb":"a16a2e741f1cd9717285b6d882c1fc53655e9773761ad697a7ee6410184c7982":"934f893824e880f743d196b22d1f340a52608155087bd28a":"c25e5329":"":"8739b4bea1a099fe547499cbc6d1b13d849b8084c9b6acc5":0
|
||||
|
||||
AES-128-CCM test vector NIST #30 (P=24, N=13, A=32, T=4)
|
||||
depends_on:MBEDTLS_AES_C:MBEDTLS_CCM_C
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_AES_128_CCM:"a7aa635ea51b0bb20a092bd5573e728c":"0812757ad0cc4d17c4cfe7a642":"ec6c44a7e94e51a3ca6dee229098391575ec7213c85267fbf7492fdbeee61b10":"f43ba9d834ad85dfab3f1c0c27c3441fe4e411a38a261a65":"59b3b3ee":"FAIL":"":0
|
||||
|
||||
AES-128-CCM test vector NIST #31 (P=24, N=13, A=32, T=16)
|
||||
depends_on:MBEDTLS_AES_C:MBEDTLS_CCM_C
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_AES_128_CCM:"26511fb51fcfa75cb4b44da75a6e5a0e":"5a8aa485c316e9403aff859fbb":"a16a2e741f1cd9717285b6d882c1fc53655e9773761ad697a7ee6410184c7982":"50038b5fdd364ee747b70d00bd36840ece4ea19998123375":"c0a458bfcafa3b2609afe0f825cbf503":"":"8739b4bea1a099fe547499cbc6d1b13d849b8084c9b6acc5":0
|
||||
|
||||
AES-128-CCM test vector NIST #32 (P=24, N=13, A=32, T=16)
|
||||
depends_on:MBEDTLS_AES_C:MBEDTLS_CCM_C
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_AES_128_CCM:"26511fb51fcfa75cb4b44da75a6e5a0e":"0812757ad0cc4d17c4cfe7a642":"ec6c44a7e94e51a3ca6dee229098391575ec7213c85267fbf7492fdbeee61b10":"78ed8ff6b5a1255d0fbd0a719a9c27b059ff5f83d0c4962c":"390042ba8bb5f6798dab01c5afad7306":"FAIL":"":0
|
||||
|
||||
AES-192-CCM test vector NIST #1 (P=0, N=7, A=0, T=4)
|
||||
depends_on:MBEDTLS_AES_C:MBEDTLS_CCM_C:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_AES_192_CCM:"c98ad7f38b2c7e970c9b965ec87a08208384718f78206c6c":"5a8aa485c316e9":"":"":"9d4b7f3b":"":"":0
|
||||
|
||||
AES-192-CCM test vector NIST #2 (P=0, N=7, A=0, T=4)
|
||||
depends_on:MBEDTLS_AES_C:MBEDTLS_CCM_C:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_AES_192_CCM:"c98ad7f38b2c7e970c9b965ec87a08208384718f78206c6c":"3796cf51b87266":"":"":"80745de9":"FAIL":"":0
|
||||
|
||||
AES-192-CCM test vector NIST #3 (P=0, N=7, A=0, T=16)
|
||||
depends_on:MBEDTLS_AES_C:MBEDTLS_CCM_C:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_AES_192_CCM:"4bb3c4a4f893ad8c9bdc833c325d62b3d3ad1bccf9282a65":"5a8aa485c316e9":"":"":"17223038fa99d53681ca1beabe78d1b4":"":"":0
|
||||
|
||||
AES-192-CCM test vector NIST #4 (P=0, N=7, A=0, T=16)
|
||||
depends_on:MBEDTLS_AES_C:MBEDTLS_CCM_C:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_AES_192_CCM:"4bb3c4a4f893ad8c9bdc833c325d62b3d3ad1bccf9282a65":"3796cf51b87266":"":"":"d0e1eeef4d2a264536bb1c2c1bde7c35":"FAIL":"":0
|
||||
|
||||
AES-192-CCM test vector NIST #5 (P=0, N=13, A=0, T=4)
|
||||
depends_on:MBEDTLS_AES_C:MBEDTLS_CCM_C:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_AES_192_CCM:"4bb3c4a4f893ad8c9bdc833c325d62b3d3ad1bccf9282a65":"5a8aa485c316e9403aff859fbb":"":"":"fe69ed84":"":"":0
|
||||
|
||||
AES-192-CCM test vector NIST #6 (P=0, N=13, A=0, T=4)
|
||||
depends_on:MBEDTLS_AES_C:MBEDTLS_CCM_C:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_AES_192_CCM:"4bb3c4a4f893ad8c9bdc833c325d62b3d3ad1bccf9282a65":"a16a2e741f1cd9717285b6d882":"":"":"db7ffc82":"FAIL":"":0
|
||||
|
||||
AES-192-CCM test vector NIST #7 (P=0, N=13, A=0, T=16)
|
||||
depends_on:MBEDTLS_AES_C:MBEDTLS_CCM_C:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_AES_192_CCM:"19ebfde2d5468ba0a3031bde629b11fd4094afcb205393fa":"5a8aa485c316e9403aff859fbb":"":"":"0c66a8e547ed4f8c2c9a9a1eb5d455b9":"":"":0
|
||||
|
||||
AES-192-CCM test vector NIST #8 (P=0, N=13, A=0, T=16)
|
||||
depends_on:MBEDTLS_AES_C:MBEDTLS_CCM_C:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_AES_192_CCM:"19ebfde2d5468ba0a3031bde629b11fd4094afcb205393fa":"a16a2e741f1cd9717285b6d882":"":"":"38757b3a61a4dc97ca3ab88bf1240695":"FAIL":"":0
|
||||
|
||||
AES-192-CCM test vector NIST #9 (P=24, N=7, A=0, T=4)
|
||||
depends_on:MBEDTLS_AES_C:MBEDTLS_CCM_C:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_AES_192_CCM:"19ebfde2d5468ba0a3031bde629b11fd4094afcb205393fa":"5a8aa485c316e9":"":"411986d04d6463100bff03f7d0bde7ea2c3488784378138c":"ddc93a54":"":"3796cf51b8726652a4204733b8fbb047cf00fb91a9837e22":0
|
||||
|
||||
AES-192-CCM test vector NIST #10 (P=24, N=7, A=0, T=4)
|
||||
depends_on:MBEDTLS_AES_C:MBEDTLS_CCM_C:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_AES_192_CCM:"19ebfde2d5468ba0a3031bde629b11fd4094afcb205393fa":"31f8fa25827d48":"":"32b649ab56162e55d4148a1292d6a225a988eb1308298273":"b6889036":"FAIL":"":0
|
||||
|
||||
AES-192-CCM test vector NIST #11 (P=24, N=7, A=0, T=16)
|
||||
depends_on:MBEDTLS_AES_C:MBEDTLS_CCM_C:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_AES_192_CCM:"197afb02ffbd8f699dacae87094d524324576b99844f75e1":"5a8aa485c316e9":"":"cba4b4aeb85f0492fd8d905c4a6d8233139833373ef188a8":"c5a5ebecf7ac8607fe412189e83d9d20":"":"3796cf51b8726652a4204733b8fbb047cf00fb91a9837e22":0
|
||||
|
||||
AES-192-CCM test vector NIST #12 (P=24, N=7, A=0, T=16)
|
||||
depends_on:MBEDTLS_AES_C:MBEDTLS_CCM_C:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_AES_192_CCM:"197afb02ffbd8f699dacae87094d524324576b99844f75e1":"31f8fa25827d48":"":"ca62713728b5c9d652504b0ae8fd4fee5d297ee6a8d19cb6":"e699f15f14d34dcaf9ba8ed4b877c97d":"FAIL":"":0
|
||||
|
||||
AES-192-CCM test vector NIST #13 (P=24, N=13, A=0, T=4)
|
||||
depends_on:MBEDTLS_AES_C:MBEDTLS_CCM_C:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_AES_192_CCM:"197afb02ffbd8f699dacae87094d524324576b99844f75e1":"5a8aa485c316e9403aff859fbb":"":"042653c674ef2a90f7fb11d30848e530ae59478f1051633a":"34fad277":"":"a16a2e741f1cd9717285b6d882c1fc53655e9773761ad697":0
|
||||
|
||||
AES-192-CCM test vector NIST #14 (P=24, N=13, A=0, T=4)
|
||||
depends_on:MBEDTLS_AES_C:MBEDTLS_CCM_C:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_AES_192_CCM:"197afb02ffbd8f699dacae87094d524324576b99844f75e1":"49004912fdd7269279b1f06a89":"":"1902d9769a7ba3d3268e1257395c8c2e5f98eef295dcbfa5":"a35df775":"FAIL":"":0
|
||||
|
||||
AES-192-CCM test vector NIST #15 (P=24, N=13, A=0, T=16)
|
||||
depends_on:MBEDTLS_AES_C:MBEDTLS_CCM_C:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_AES_192_CCM:"90929a4b0ac65b350ad1591611fe48297e03956f6083e451":"5a8aa485c316e9403aff859fbb":"":"a5b7d8cca2069908d1ed88e6a9fe2c9bede3131dad54671e":"a7ade30a07d185692ab0ebdf4c78cf7a":"":"a16a2e741f1cd9717285b6d882c1fc53655e9773761ad697":0
|
||||
|
||||
AES-192-CCM test vector NIST #16 (P=24, N=13, A=0, T=16)
|
||||
depends_on:MBEDTLS_AES_C:MBEDTLS_CCM_C:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_AES_192_CCM:"90929a4b0ac65b350ad1591611fe48297e03956f6083e451":"49004912fdd7269279b1f06a89":"":"9a98617fb97a0dfe466be692272dcdaec1c5443a3b51312e":"f042c86363cc05afb98c66e16be8a445":"FAIL":"":0
|
||||
|
||||
AES-192-CCM test vector NIST #17 (P=0, N=7, A=32, T=4)
|
||||
depends_on:MBEDTLS_AES_C:MBEDTLS_CCM_C:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_AES_192_CCM:"90929a4b0ac65b350ad1591611fe48297e03956f6083e451":"5a8aa485c316e9":"3796cf51b8726652a4204733b8fbb047cf00fb91a9837e22ec22b1a268f88e2c":"":"1d089a5f":"":"":0
|
||||
|
||||
AES-192-CCM test vector NIST #18 (P=0, N=7, A=32, T=4)
|
||||
depends_on:MBEDTLS_AES_C:MBEDTLS_CCM_C:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_AES_192_CCM:"90929a4b0ac65b350ad1591611fe48297e03956f6083e451":"a265480ca88d5f":"a2248a882ecbf850daf91933a389e78e81623d233dfd47bf8321361a38f138fe":"":"2f46022a":"FAIL":"":0
|
||||
|
||||
AES-192-CCM test vector NIST #19 (P=0, N=7, A=32, T=16)
|
||||
depends_on:MBEDTLS_AES_C:MBEDTLS_CCM_C:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_AES_192_CCM:"6a798d7c5e1a72b43e20ad5c7b08567b12ab744b61c070e2":"5a8aa485c316e9":"3796cf51b8726652a4204733b8fbb047cf00fb91a9837e22ec22b1a268f88e2c":"":"5280a2137fee3deefcfe9b63a1199fb3":"":"":0
|
||||
|
||||
AES-192-CCM test vector NIST #20 (P=0, N=7, A=32, T=16)
|
||||
depends_on:MBEDTLS_AES_C:MBEDTLS_CCM_C:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_AES_192_CCM:"6a798d7c5e1a72b43e20ad5c7b08567b12ab744b61c070e2":"a265480ca88d5f":"a2248a882ecbf850daf91933a389e78e81623d233dfd47bf8321361a38f138fe":"":"d40a7318c5f2d82f838c0beeefe0d598":"FAIL":"":0
|
||||
|
||||
AES-192-CCM test vector NIST #21 (P=0, N=13, A=32, T=4)
|
||||
depends_on:MBEDTLS_AES_C:MBEDTLS_CCM_C:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_AES_192_CCM:"6a798d7c5e1a72b43e20ad5c7b08567b12ab744b61c070e2":"5a8aa485c316e9403aff859fbb":"a16a2e741f1cd9717285b6d882c1fc53655e9773761ad697a7ee6410184c7982":"":"5e0eaebd":"":"":0
|
||||
|
||||
AES-192-CCM test vector NIST #22 (P=0, N=13, A=32, T=4)
|
||||
depends_on:MBEDTLS_AES_C:MBEDTLS_CCM_C:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_AES_192_CCM:"6a798d7c5e1a72b43e20ad5c7b08567b12ab744b61c070e2":"8739b4bea1a099fe547499cbc6":"f6107696edb332b2ea059d8860fee26be42e5e12e1a4f79a8d0eafce1b2278a7":"":"71b7fc33":"FAIL":"":0
|
||||
|
||||
AES-192-CCM test vector NIST #23 (P=0, N=13, A=32, T=16)
|
||||
depends_on:MBEDTLS_AES_C:MBEDTLS_CCM_C:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_AES_192_CCM:"f9fdca4ac64fe7f014de0f43039c757194d544ce5d15eed4":"5a8aa485c316e9403aff859fbb":"a16a2e741f1cd9717285b6d882c1fc53655e9773761ad697a7ee6410184c7982":"":"d07ccf9fdc3d33aa94cda3d230da707c":"":"":0
|
||||
|
||||
AES-192-CCM test vector NIST #24 (P=0, N=13, A=32, T=16)
|
||||
depends_on:MBEDTLS_AES_C:MBEDTLS_CCM_C:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_AES_192_CCM:"f9fdca4ac64fe7f014de0f43039c757194d544ce5d15eed4":"8739b4bea1a099fe547499cbc6":"f6107696edb332b2ea059d8860fee26be42e5e12e1a4f79a8d0eafce1b2278a7":"":"65fe32b649dc328c9f531584897e85b3":"FAIL":"":0
|
||||
|
||||
AES-192-CCM test vector NIST #25 (P=24, N=7, A=32, T=4)
|
||||
depends_on:MBEDTLS_AES_C:MBEDTLS_CCM_C:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_AES_192_CCM:"f9fdca4ac64fe7f014de0f43039c757194d544ce5d15eed4":"5a8aa485c316e9":"3796cf51b8726652a4204733b8fbb047cf00fb91a9837e22ec22b1a268f88e2c":"9f6ca4af9b159148c889a6584d1183ea26e2614874b05045":"75dea8d1":"":"a265480ca88d5f536db0dc6abc40faf0d05be7a966977768":0
|
||||
|
||||
AES-192-CCM test vector NIST #26 (P=24, N=7, A=32, T=4)
|
||||
depends_on:MBEDTLS_AES_C:MBEDTLS_CCM_C:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_AES_192_CCM:"f9fdca4ac64fe7f014de0f43039c757194d544ce5d15eed4":"fdd2d6f503c915":"5b92394f21ddc3ad49d9b0881b829a5935cb3a4d23e292a62fb66b5e7ab7020e":"84d8212e9cfc2121252baa3b065b1edcf50497b9594db1eb":"d7965825":"FAIL":"":0
|
||||
|
||||
AES-192-CCM test vector NIST #27 (P=24, N=7, A=32, T=16)
|
||||
depends_on:MBEDTLS_AES_C:MBEDTLS_CCM_C:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_AES_192_CCM:"a7aa635ea51b0bb20a092bd5573e728ccd4b3e8cdd2ab33d":"5a8aa485c316e9":"3796cf51b8726652a4204733b8fbb047cf00fb91a9837e22ec22b1a268f88e2c":"6aab64c4787599d8f213446beadb16e08dba60e97f56dbd1":"4d1d980d6fe0fb44b421992662b97975":"":"a265480ca88d5f536db0dc6abc40faf0d05be7a966977768":0
|
||||
|
||||
AES-192-CCM test vector NIST #28 (P=24, N=7, A=32, T=16)
|
||||
depends_on:MBEDTLS_AES_C:MBEDTLS_CCM_C:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_AES_192_CCM:"a7aa635ea51b0bb20a092bd5573e728ccd4b3e8cdd2ab33d":"fdd2d6f503c915":"5b92394f21ddc3ad49d9b0881b829a5935cb3a4d23e292a62fb66b5e7ab7020e":"4980b2ee49b1aaf393175f5ab9bae95ec7904557dfa20660":"3c51d36c826f01384100886198a7f6a3":"FAIL":"":0
|
||||
|
||||
AES-192-CCM test vector NIST #29 (P=24, N=13, A=32, T=4)
|
||||
depends_on:MBEDTLS_AES_C:MBEDTLS_CCM_C:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_AES_192_CCM:"a7aa635ea51b0bb20a092bd5573e728ccd4b3e8cdd2ab33d":"5a8aa485c316e9403aff859fbb":"a16a2e741f1cd9717285b6d882c1fc53655e9773761ad697a7ee6410184c7982":"16e543d0e20615ff0df15acd9927ddfe40668a54bb854ccc":"c25e9fce":"":"8739b4bea1a099fe547499cbc6d1b13d849b8084c9b6acc5":0
|
||||
|
||||
AES-192-CCM test vector NIST #30 (P=24, N=13, A=32, T=4)
|
||||
depends_on:MBEDTLS_AES_C:MBEDTLS_CCM_C:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_AES_192_CCM:"a7aa635ea51b0bb20a092bd5573e728ccd4b3e8cdd2ab33d":"0812757ad0cc4d17c4cfe7a642":"ec6c44a7e94e51a3ca6dee229098391575ec7213c85267fbf7492fdbeee61b10":"df35b109caf690656ae278bbd8f8bba687a2ce11b105dae9":"8ecedb3e":"FAIL":"":0
|
||||
|
||||
AES-192-CCM test vector NIST #31 (P=24, N=13, A=32, T=16)
|
||||
depends_on:MBEDTLS_AES_C:MBEDTLS_CCM_C:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_AES_192_CCM:"26511fb51fcfa75cb4b44da75a6e5a0eb8d9c8f3b906f886":"5a8aa485c316e9403aff859fbb":"a16a2e741f1cd9717285b6d882c1fc53655e9773761ad697a7ee6410184c7982":"c5b0b2ef17498c5570eb335df4588032958ba3d69bf6f317":"8464a6f7fa2b76744e8e8d95691cecb8":"":"8739b4bea1a099fe547499cbc6d1b13d849b8084c9b6acc5":0
|
||||
|
||||
AES-192-CCM test vector NIST #32 (P=24, N=13, A=32, T=16)
|
||||
depends_on:MBEDTLS_AES_C:MBEDTLS_CCM_C:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_AES_192_CCM:"26511fb51fcfa75cb4b44da75a6e5a0eb8d9c8f3b906f886":"0812757ad0cc4d17c4cfe7a642":"ec6c44a7e94e51a3ca6dee229098391575ec7213c85267fbf7492fdbeee61b10":"d1f0518929f4ae2f0543de2a7dfe4bb0110bb3057e524a1c":"06bd6dc2e6bcc3436cffb969ae900388":"FAIL":"":0
|
||||
|
||||
AES-256-CCM test vector NIST #1 (P=0, N=7, A=0, T=4)
|
||||
depends_on:MBEDTLS_AES_C:MBEDTLS_CCM_C:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_AES_256_CCM:"eda32f751456e33195f1f499cf2dc7c97ea127b6d488f211ccc5126fbb24afa6":"a544218dadd3c1":"":"":"469c90bb":"":"":0
|
||||
|
||||
AES-256-CCM test vector NIST #2 (P=0, N=7, A=0, T=4)
|
||||
depends_on:MBEDTLS_AES_C:MBEDTLS_CCM_C:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_AES_256_CCM:"eda32f751456e33195f1f499cf2dc7c97ea127b6d488f211ccc5126fbb24afa6":"d3d5424e20fbec":"":"":"46a908ed":"FAIL":"":0
|
||||
|
||||
AES-256-CCM test vector NIST #3 (P=0, N=7, A=0, T=16)
|
||||
depends_on:MBEDTLS_AES_C:MBEDTLS_CCM_C:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_AES_256_CCM:"e1b8a927a95efe94656677b692662000278b441c79e879dd5c0ddc758bdc9ee8":"a544218dadd3c1":"":"":"8207eb14d33855a52acceed17dbcbf6e":"":"":0
|
||||
|
||||
AES-256-CCM test vector NIST #4 (P=0, N=7, A=0, T=16)
|
||||
depends_on:MBEDTLS_AES_C:MBEDTLS_CCM_C:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_AES_256_CCM:"e1b8a927a95efe94656677b692662000278b441c79e879dd5c0ddc758bdc9ee8":"d3d5424e20fbec":"":"":"60f8e127cb4d30db6df0622158cd931d":"FAIL":"":0
|
||||
|
||||
AES-256-CCM test vector NIST #5 (P=0, N=13, A=0, T=4)
|
||||
depends_on:MBEDTLS_AES_C:MBEDTLS_CCM_C:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_AES_256_CCM:"e1b8a927a95efe94656677b692662000278b441c79e879dd5c0ddc758bdc9ee8":"a544218dadd3c10583db49cf39":"":"":"8a19a133":"":"":0
|
||||
|
||||
AES-256-CCM test vector NIST #6 (P=0, N=13, A=0, T=4)
|
||||
depends_on:MBEDTLS_AES_C:MBEDTLS_CCM_C:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_AES_256_CCM:"e1b8a927a95efe94656677b692662000278b441c79e879dd5c0ddc758bdc9ee8":"3c0e2815d37d844f7ac240ba9d":"":"":"2e317f1b":"FAIL":"":0
|
||||
|
||||
AES-256-CCM test vector NIST #7 (P=0, N=13, A=0, T=16)
|
||||
depends_on:MBEDTLS_AES_C:MBEDTLS_CCM_C:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_AES_256_CCM:"af063639e66c284083c5cf72b70d8bc277f5978e80d9322d99f2fdc718cda569":"a544218dadd3c10583db49cf39":"":"":"97e1a8dd4259ccd2e431e057b0397fcf":"":"":0
|
||||
|
||||
AES-256-CCM test vector NIST #8 (P=0, N=13, A=0, T=16)
|
||||
depends_on:MBEDTLS_AES_C:MBEDTLS_CCM_C:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_AES_256_CCM:"af063639e66c284083c5cf72b70d8bc277f5978e80d9322d99f2fdc718cda569":"3c0e2815d37d844f7ac240ba9d":"":"":"5a9596c511ea6a8671adefc4f2157d8b":"FAIL":"":0
|
||||
|
||||
AES-256-CCM test vector NIST #9 (P=24, N=7, A=0, T=4)
|
||||
depends_on:MBEDTLS_AES_C:MBEDTLS_CCM_C:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_AES_256_CCM:"af063639e66c284083c5cf72b70d8bc277f5978e80d9322d99f2fdc718cda569":"a544218dadd3c1":"":"64a1341679972dc5869fcf69b19d5c5ea50aa0b5e985f5b7":"22aa8d59":"":"d3d5424e20fbec43ae495353ed830271515ab104f8860c98":0
|
||||
|
||||
AES-256-CCM test vector NIST #10 (P=24, N=7, A=0, T=4)
|
||||
depends_on:MBEDTLS_AES_C:MBEDTLS_CCM_C:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_AES_256_CCM:"af063639e66c284083c5cf72b70d8bc277f5978e80d9322d99f2fdc718cda569":"bfcda8b5a2d0d2":"":"c5b7f802bffc498c1626e3774f1d9f94045dfd8e1a10a202":"77d00a75":"FAIL":"":0
|
||||
|
||||
AES-256-CCM test vector NIST #11 (P=24, N=7, A=0, T=16)
|
||||
depends_on:MBEDTLS_AES_C:MBEDTLS_CCM_C:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_AES_256_CCM:"f7079dfa3b5c7b056347d7e437bcded683abd6e2c9e069d333284082cbb5d453":"a544218dadd3c1":"":"bc51c3925a960e7732533e4ef3a4f69ee6826de952bcb0fd":"374f3bb6db8377ebfc79674858c4f305":"":"d3d5424e20fbec43ae495353ed830271515ab104f8860c98":0
|
||||
|
||||
AES-256-CCM test vector NIST #12 (P=24, N=7, A=0, T=16)
|
||||
depends_on:MBEDTLS_AES_C:MBEDTLS_CCM_C:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_AES_256_CCM:"f7079dfa3b5c7b056347d7e437bcded683abd6e2c9e069d333284082cbb5d453":"bfcda8b5a2d0d2":"":"afa1fa8e8a70e26b02161150556d604101fdf423f332c336":"3275f2a4907d51b734fe7238cebbd48f":"FAIL":"":0
|
||||
|
||||
AES-256-CCM test vector NIST #13 (P=24, N=13, A=0, T=4)
|
||||
depends_on:MBEDTLS_AES_C:MBEDTLS_CCM_C:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_AES_256_CCM:"f7079dfa3b5c7b056347d7e437bcded683abd6e2c9e069d333284082cbb5d453":"a544218dadd3c10583db49cf39":"":"63e00d30e4b08fd2a1cc8d70fab327b2368e77a93be4f412":"3d14fb3f":"":"3c0e2815d37d844f7ac240ba9d6e3a0b2a86f706e885959e":0
|
||||
|
||||
AES-256-CCM test vector NIST #14 (P=24, N=13, A=0, T=4)
|
||||
depends_on:MBEDTLS_AES_C:MBEDTLS_CCM_C:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_AES_256_CCM:"f7079dfa3b5c7b056347d7e437bcded683abd6e2c9e069d333284082cbb5d453":"894dcaa61008eb8fb052c60d41":"":"bb5425b3869b76856ec58e39886fb6f6f2ac13fe44cb132d":"8d0c0099":"FAIL":"":0
|
||||
|
||||
AES-256-CCM test vector NIST #15 (P=24, N=13, A=0, T=16)
|
||||
depends_on:MBEDTLS_AES_C:MBEDTLS_CCM_C:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_AES_256_CCM:"1b0e8df63c57f05d9ac457575ea764524b8610ae5164e6215f426f5a7ae6ede4":"a544218dadd3c10583db49cf39":"":"f0050ad16392021a3f40207bed3521fb1e9f808f49830c42":"3a578d179902f912f9ea1afbce1120b3":"":"3c0e2815d37d844f7ac240ba9d6e3a0b2a86f706e885959e":0
|
||||
|
||||
AES-256-CCM test vector NIST #16 (P=24, N=13, A=0, T=16)
|
||||
depends_on:MBEDTLS_AES_C:MBEDTLS_CCM_C:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_AES_256_CCM:"1b0e8df63c57f05d9ac457575ea764524b8610ae5164e6215f426f5a7ae6ede4":"894dcaa61008eb8fb052c60d41":"":"c408190d0fbf5034f83b24a8ed9657331a7ce141de4fae76":"9084607b83bd06e6442eac8dacf583cc":"FAIL":"":0
|
||||
|
||||
AES-256-CCM test vector NIST #17 (P=0, N=7, A=32, T=4)
|
||||
depends_on:MBEDTLS_AES_C:MBEDTLS_CCM_C:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_AES_256_CCM:"1b0e8df63c57f05d9ac457575ea764524b8610ae5164e6215f426f5a7ae6ede4":"a544218dadd3c1":"d3d5424e20fbec43ae495353ed830271515ab104f8860c988d15b6d36c038eab":"":"92d00fbe":"":"":0
|
||||
|
||||
AES-256-CCM test vector NIST #18 (P=0, N=7, A=32, T=4)
|
||||
depends_on:MBEDTLS_AES_C:MBEDTLS_CCM_C:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_AES_256_CCM:"1b0e8df63c57f05d9ac457575ea764524b8610ae5164e6215f426f5a7ae6ede4":"78c46e3249ca28":"232e957c65ffa11988e830d4617d500f1c4a35c1221f396c41ab214f074ca2dc":"":"9143e5c4":"FAIL":"":0
|
||||
|
||||
AES-256-CCM test vector NIST #19 (P=0, N=7, A=32, T=16)
|
||||
depends_on:MBEDTLS_AES_C:MBEDTLS_CCM_C:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_AES_256_CCM:"a4bc10b1a62c96d459fbaf3a5aa3face7313bb9e1253e696f96a7a8e36801088":"a544218dadd3c1":"d3d5424e20fbec43ae495353ed830271515ab104f8860c988d15b6d36c038eab":"":"93af11a08379eb37a16aa2837f09d69d":"":"":0
|
||||
|
||||
AES-256-CCM test vector NIST #20 (P=0, N=7, A=32, T=16)
|
||||
depends_on:MBEDTLS_AES_C:MBEDTLS_CCM_C:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_AES_256_CCM:"a4bc10b1a62c96d459fbaf3a5aa3face7313bb9e1253e696f96a7a8e36801088":"78c46e3249ca28":"232e957c65ffa11988e830d4617d500f1c4a35c1221f396c41ab214f074ca2dc":"":"d19b0c14ec686a7961ca7c386d125a65":"FAIL":"":0
|
||||
|
||||
AES-256-CCM test vector NIST #21 (P=0, N=13, A=32, T=4)
|
||||
depends_on:MBEDTLS_AES_C:MBEDTLS_CCM_C:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_AES_256_CCM:"a4bc10b1a62c96d459fbaf3a5aa3face7313bb9e1253e696f96a7a8e36801088":"a544218dadd3c10583db49cf39":"3c0e2815d37d844f7ac240ba9d6e3a0b2a86f706e885959e09a1005e024f6907":"":"866d4227":"":"":0
|
||||
|
||||
AES-256-CCM test vector NIST #22 (P=0, N=13, A=32, T=4)
|
||||
depends_on:MBEDTLS_AES_C:MBEDTLS_CCM_C:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_AES_256_CCM:"a4bc10b1a62c96d459fbaf3a5aa3face7313bb9e1253e696f96a7a8e36801088":"e8de970f6ee8e80ede933581b5":"89f8b068d34f56bc49d839d8e47b347e6dae737b903b278632447e6c0485d26a":"":"94cb1127":"FAIL":"":0
|
||||
|
||||
AES-256-CCM test vector NIST #23 (P=0, N=13, A=32, T=16)
|
||||
depends_on:MBEDTLS_AES_C:MBEDTLS_CCM_C:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_AES_256_CCM:"8c5cf3457ff22228c39c051c4e05ed4093657eb303f859a9d4b0f8be0127d88a":"a544218dadd3c10583db49cf39":"3c0e2815d37d844f7ac240ba9d6e3a0b2a86f706e885959e09a1005e024f6907":"":"867b0d87cf6e0f718200a97b4f6d5ad5":"":"":0
|
||||
|
||||
AES-256-CCM test vector NIST #24 (P=0, N=13, A=32, T=16)
|
||||
depends_on:MBEDTLS_AES_C:MBEDTLS_CCM_C:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_AES_256_CCM:"8c5cf3457ff22228c39c051c4e05ed4093657eb303f859a9d4b0f8be0127d88a":"e8de970f6ee8e80ede933581b5":"89f8b068d34f56bc49d839d8e47b347e6dae737b903b278632447e6c0485d26a":"":"677a040d46ee3f2b7838273bdad14f16":"FAIL":"":0
|
||||
|
||||
AES-256-CCM test vector NIST #25 (P=24, N=7, A=32, T=4)
|
||||
depends_on:MBEDTLS_AES_C:MBEDTLS_CCM_C:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_AES_256_CCM:"8c5cf3457ff22228c39c051c4e05ed4093657eb303f859a9d4b0f8be0127d88a":"a544218dadd3c1":"d3d5424e20fbec43ae495353ed830271515ab104f8860c988d15b6d36c038eab":"c2fe12658139f5d0dd22cadf2e901695b579302a72fc5608":"3ebc7720":"":"78c46e3249ca28e1ef0531d80fd37c124d9aecb7be6668e3":0
|
||||
|
||||
AES-256-CCM test vector NIST #26 (P=24, N=7, A=32, T=4)
|
||||
depends_on:MBEDTLS_AES_C:MBEDTLS_CCM_C:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_AES_256_CCM:"8c5cf3457ff22228c39c051c4e05ed4093657eb303f859a9d4b0f8be0127d88a":"6ba004fd176791":"5a053b2a1bb87e85d56527bfcdcd3ecafb991bb10e4c862bb0751c700a29f54b":"94748ba81229e53c38583a8564b23ebbafc6f6efdf4c2a81":"c44db2c9":"FAIL":"":0
|
||||
|
||||
AES-256-CCM test vector NIST #27 (P=24, N=7, A=32, T=16)
|
||||
depends_on:MBEDTLS_AES_C:MBEDTLS_CCM_C:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_AES_256_CCM:"705334e30f53dd2f92d190d2c1437c8772f940c55aa35e562214ed45bd458ffe":"a544218dadd3c1":"d3d5424e20fbec43ae495353ed830271515ab104f8860c988d15b6d36c038eab":"3341168eb8c48468c414347fb08f71d2086f7c2d1bd581ce":"1ac68bd42f5ec7fa7e068cc0ecd79c2a":"":"78c46e3249ca28e1ef0531d80fd37c124d9aecb7be6668e3":0
|
||||
|
||||
AES-256-CCM test vector NIST #28 (P=24, N=7, A=32, T=16)
|
||||
depends_on:MBEDTLS_AES_C:MBEDTLS_CCM_C:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_AES_256_CCM:"705334e30f53dd2f92d190d2c1437c8772f940c55aa35e562214ed45bd458ffe":"6ba004fd176791":"5a053b2a1bb87e85d56527bfcdcd3ecafb991bb10e4c862bb0751c700a29f54b":"d543acda712b898cbb27b8f598b2e4438ce587a836e27851":"47c3338a2400809e739b63ba8227d2f9":"FAIL":"":0
|
||||
|
||||
AES-256-CCM test vector NIST #29 (P=24, N=13, A=32, T=4)
|
||||
depends_on:MBEDTLS_AES_C:MBEDTLS_CCM_C:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_AES_256_CCM:"705334e30f53dd2f92d190d2c1437c8772f940c55aa35e562214ed45bd458ffe":"a544218dadd3c10583db49cf39":"3c0e2815d37d844f7ac240ba9d6e3a0b2a86f706e885959e09a1005e024f6907":"c0ea400b599561e7905b99262b4565d5c3dc49fad84d7c69":"ef891339":"":"e8de970f6ee8e80ede933581b5bcf4d837e2b72baa8b00c3":0
|
||||
|
||||
AES-256-CCM test vector NIST #30 (P=24, N=13, A=32, T=4)
|
||||
depends_on:MBEDTLS_AES_C:MBEDTLS_CCM_C:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_AES_256_CCM:"705334e30f53dd2f92d190d2c1437c8772f940c55aa35e562214ed45bd458ffe":"8fa501c5dd9ac9b868144c9fa5":"5bb40e3bb72b4509324a7edc852f72535f1f6283156e63f6959ffaf39dcde800":"60871e03ea0eb968536c99f926ea24ef43d41272ad9fb7f6":"3d488623":"FAIL":"":0
|
||||
|
||||
AES-256-CCM test vector NIST #31 (P=24, N=13, A=32, T=16)
|
||||
depends_on:MBEDTLS_AES_C:MBEDTLS_CCM_C:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_AES_256_CCM:"314a202f836f9f257e22d8c11757832ae5131d357a72df88f3eff0ffcee0da4e":"a544218dadd3c10583db49cf39":"3c0e2815d37d844f7ac240ba9d6e3a0b2a86f706e885959e09a1005e024f6907":"8d34cdca37ce77be68f65baf3382e31efa693e63f914a781":"367f30f2eaad8c063ca50795acd90203":"":"e8de970f6ee8e80ede933581b5bcf4d837e2b72baa8b00c3":0
|
||||
|
||||
AES-256-CCM test vector NIST #32 (P=24, N=13, A=32, T=16)
|
||||
depends_on:MBEDTLS_AES_C:MBEDTLS_CCM_C:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_AES_256_CCM:"314a202f836f9f257e22d8c11757832ae5131d357a72df88f3eff0ffcee0da4e":"8fa501c5dd9ac9b868144c9fa5":"5bb40e3bb72b4509324a7edc852f72535f1f6283156e63f6959ffaf39dcde800":"516c0095cc3d85fd55e48da17c592e0c7014b9daafb82bdc":"4b41096dfdbe9cc1ab610f8f3e038d16":"FAIL":"":0
|
||||
|
||||
Camellia-CCM test vector RFC 5528 #1
|
||||
depends_on:MBEDTLS_CAMELLIA_C:MBEDTLS_CCM_C
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_CAMELLIA_128_CCM:"C0C1C2C3C4C5C6C7C8C9CACBCCCDCECF":"00000003020100A0A1A2A3A4A5":"0001020304050607":"BA737185E719310492F38A5F1251DA55FAFBC949848A0D":"FCAECE746B3DB9AD":"":"08090A0B0C0D0E0F101112131415161718191A1B1C1D1E":0
|
||||
|
||||
Camellia-CCM test vector RFC 5528 #2
|
||||
depends_on:MBEDTLS_CAMELLIA_C:MBEDTLS_CCM_C
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_CAMELLIA_128_CCM:"C0C1C2C3C4C5C6C7C8C9CACBCCCDCECF":"00000004030201A0A1A2A3A4A5":"0001020304050607":"5D2564BF8EAFE1D99526EC016D1BF0424CFBD2CD62848F33":"60B2295DF24283E8":"":"08090A0B0C0D0E0F101112131415161718191A1B1C1D1E1F":0
|
||||
|
||||
Camellia-CCM test vector RFC 5528 #3
|
||||
depends_on:MBEDTLS_CAMELLIA_C:MBEDTLS_CCM_C
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_CAMELLIA_128_CCM:"C0C1C2C3C4C5C6C7C8C9CACBCCCDCECF":"00000005040302A0A1A2A3A4A5":"0001020304050607":"81F663D6C7787817F9203608B982AD15DC2BBD87D756F79204":"F551D6682F23AA46":"":"08090A0B0C0D0E0F101112131415161718191A1B1C1D1E1F20":0
|
||||
|
||||
Camellia-CCM test vector RFC 5528 #4
|
||||
depends_on:MBEDTLS_CAMELLIA_C:MBEDTLS_CCM_C
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_CAMELLIA_128_CCM:"C0C1C2C3C4C5C6C7C8C9CACBCCCDCECF":"00000006050403A0A1A2A3A4A5":"000102030405060708090A0B":"CAEF1E827211B08F7BD90F08C77288C070A4A0":"8B3A933A63E497A0":"":"0C0D0E0F101112131415161718191A1B1C1D1E":0
|
||||
|
||||
Camellia-CCM test vector RFC 5528 #5
|
||||
depends_on:MBEDTLS_CAMELLIA_C:MBEDTLS_CCM_C
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_CAMELLIA_128_CCM:"C0C1C2C3C4C5C6C7C8C9CACBCCCDCECF":"00000007060504A0A1A2A3A4A5":"000102030405060708090A0B":"2AD3BAD94FC52E92BE438E827C1023B96A8A7725":"8FA17BA7F331DB09":"":"0C0D0E0F101112131415161718191A1B1C1D1E1F":0
|
||||
|
||||
Camellia-CCM test vector RFC 5528 #6
|
||||
depends_on:MBEDTLS_CAMELLIA_C:MBEDTLS_CCM_C
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_CAMELLIA_128_CCM:"C0C1C2C3C4C5C6C7C8C9CACBCCCDCECF":"00000008070605A0A1A2A3A4A5":"000102030405060708090A0B":"FEA5480BA53FA8D3C34422AACE4DE67FFA3BB73BAB":"AB36A1EE4FE0FE28":"":"0C0D0E0F101112131415161718191A1B1C1D1E1F20":0
|
||||
|
||||
Camellia-CCM test vector RFC 5528 #7
|
||||
depends_on:MBEDTLS_CAMELLIA_C:MBEDTLS_CCM_C
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_CAMELLIA_128_CCM:"C0C1C2C3C4C5C6C7C8C9CACBCCCDCECF":"00000009080706A0A1A2A3A4A5":"0001020304050607":"54532026E54C119A8D36D9EC6E1ED97416C8708C4B5C2C":"ACAFA3BCCF7A4EBF9573":"":"08090A0B0C0D0E0F101112131415161718191A1B1C1D1E":0
|
||||
|
||||
Camellia-CCM test vector RFC 5528 #8
|
||||
depends_on:MBEDTLS_CAMELLIA_C:MBEDTLS_CCM_C
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_CAMELLIA_128_CCM:"C0C1C2C3C4C5C6C7C8C9CACBCCCDCECF":"0000000A090807A0A1A2A3A4A5":"0001020304050607":"8AD19B001A87D148F4D92BEF34525CCCE3A63C6512A6F575":"7388E4913EF14701F441":"":"08090A0B0C0D0E0F101112131415161718191A1B1C1D1E1F":0
|
||||
|
||||
Camellia-CCM test vector RFC 5528 #9
|
||||
depends_on:MBEDTLS_CAMELLIA_C:MBEDTLS_CCM_C
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_CAMELLIA_128_CCM:"C0C1C2C3C4C5C6C7C8C9CACBCCCDCECF":"0000000B0A0908A0A1A2A3A4A5":"0001020304050607":"5DB08D62407E6E31D60F9CA2C60474219AC0BE50C0D4A57787":"94D6E230CD25C9FEBF87":"":"08090A0B0C0D0E0F101112131415161718191A1B1C1D1E1F20":0
|
||||
|
||||
Camellia-CCM test vector RFC 5528 #10
|
||||
depends_on:MBEDTLS_CAMELLIA_C:MBEDTLS_CCM_C
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_CAMELLIA_128_CCM:"C0C1C2C3C4C5C6C7C8C9CACBCCCDCECF":"0000000C0B0A09A0A1A2A3A4A5":"000102030405060708090A0B":"DB118CCEC1B8761C877CD8963A67D6F3BBBC5C":"D09299EB11F312F23237":"":"0C0D0E0F101112131415161718191A1B1C1D1E":0
|
||||
|
||||
Camellia-CCM test vector RFC 5528 #11
|
||||
depends_on:MBEDTLS_CAMELLIA_C:MBEDTLS_CCM_C
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_CAMELLIA_128_CCM:"C0C1C2C3C4C5C6C7C8C9CACBCCCDCECF":"0000000D0C0B0AA0A1A2A3A4A5":"000102030405060708090A0B":"7CC83D8DC49103525B483DC5CA7EA9AB812B7056":"079DAFFADA16CCCF2C4E":"":"0C0D0E0F101112131415161718191A1B1C1D1E1F":0
|
||||
|
||||
Camellia-CCM test vector RFC 5528 #12
|
||||
depends_on:MBEDTLS_CAMELLIA_C:MBEDTLS_CCM_C
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_CAMELLIA_128_CCM:"C0C1C2C3C4C5C6C7C8C9CACBCCCDCECF":"0000000E0D0C0BA0A1A2A3A4A5":"000102030405060708090A0B":"2CD35B8820D23E7AA351B0E92FC79367238B2CC748":"CBB94C2947793D64AF75":"":"0C0D0E0F101112131415161718191A1B1C1D1E1F20":0
|
||||
|
||||
Camellia-CCM test vector RFC 5528 #13
|
||||
depends_on:MBEDTLS_CAMELLIA_C:MBEDTLS_CCM_C
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_CAMELLIA_128_CCM:"D75C2778078CA93D971F96FDE720F4CD":"00A970110E1927B160B6A31C1C":"6B7F464507FAE496":"A435D727348DDD22907F7EB8F5FDBB4D939DA6524DB4F6":"4558C02D25B127EE":"":"C6B5F3E6CA2311AEF7472B203E735EA561ADB17D56C5A3":0
|
||||
|
||||
Camellia-CCM test vector RFC 5528 #14
|
||||
depends_on:MBEDTLS_CAMELLIA_C:MBEDTLS_CCM_C
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_CAMELLIA_128_CCM:"D75C2778078CA93D971F96FDE720F4CD":"0083CD8CE0CB42B160B6A31C1C":"986605B43DF15DE7":"8AE052508FBECA932E346F05E0DC0DFBCF939EAFFA3E587C":"867D6E1C48703806":"":"01F6CE6764C574483BB02E6BBF1E0ABD26A22572B4D80EE7":0
|
||||
|
||||
Camellia-CCM test vector RFC 5528 #15
|
||||
depends_on:MBEDTLS_CAMELLIA_C:MBEDTLS_CCM_C
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_CAMELLIA_128_CCM:"D75C2778078CA93D971F96FDE720F4CD":"005F54950B18F2B160B6A31C1C":"48F2E7E1A7671A51":"08B67EE21C8BF26E473E408599E9C0836D6AF0BB18DF55466C":"A80878A790476DE5":"":"CDF1D8406FC2E9014953897005FBFB8BA57276F92404608E08":0
|
||||
|
||||
Camellia-CCM test vector RFC 5528 #16
|
||||
depends_on:MBEDTLS_CAMELLIA_C:MBEDTLS_CCM_C
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_CAMELLIA_128_CCM:"D75C2778078CA93D971F96FDE720F4CD":"00EC600863319AB160B6A31C1C":"DE97DF3B8CBD6D8E5030DA4C":"63B78B4967B19EDBB733CD1114F64EB2260893":"68C354828D950CC5":"":"B005DCFA0B59181426A961685A993D8C43185B":0
|
||||
|
||||
Camellia-CCM test vector RFC 5528 #17
|
||||
depends_on:MBEDTLS_CAMELLIA_C:MBEDTLS_CCM_C
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_CAMELLIA_128_CCM:"D75C2778078CA93D971F96FDE720F4CD":"0060CFF1A31EA1B160B6A31C1C":"A5EE93E457DF05466E782DCF":"0BC6BBE2A8B909F4629EE6DC148DA44410E18AF4":"3147383276F66A9F":"":"2E20211298105F129D5ED95B93F72D30B2FACCD7":0
|
||||
|
||||
Camellia-CCM test vector RFC 5528 #18
|
||||
depends_on:MBEDTLS_CAMELLIA_C:MBEDTLS_CCM_C
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_CAMELLIA_128_CCM:"D75C2778078CA93D971F96FDE720F4CD":"000F85CD995C97B160B6A31C1C":"24AA1BF9A5CD876182A25074":"222AD632FA31D6AF970C345F7E77CA3BD0DC25B340":"A1A3D31F8D4B44B7":"":"2645941E75632D3491AF0FC0C9876C3BE4AA7468C9":0
|
||||
|
||||
Camellia-CCM test vector RFC 5528 #19
|
||||
depends_on:MBEDTLS_CAMELLIA_C:MBEDTLS_CCM_C
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_CAMELLIA_128_CCM:"D75C2778078CA93D971F96FDE720F4CD":"00C29B2CAAC4CDB160B6A31C1C":"691946B9CA07BE87":"05B8E1B9C49CFD56CF130AA6251DC2ECC06CCC508FE697":"A0066D57C84BEC182768":"":"070135A6437C9DB120CD61D8F6C39C3EA125FD95A0D23D":0
|
||||
|
||||
Camellia-CCM test vector RFC 5528 #20
|
||||
depends_on:MBEDTLS_CAMELLIA_C:MBEDTLS_CCM_C
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_CAMELLIA_128_CCM:"D75C2778078CA93D971F96FDE720F4CD":"002C6B7595EE62B160B6A31C1C":"D0C54ECB84627DC4":"54CEB968DEE23611575EC003DFAA1CD48849BDF5AE2EDB6B":"7FA775B150ED4383C5A9":"":"C8C0880E6C636E20093DD6594217D2E18877DB264E71A5CC":0
|
||||
|
||||
Camellia-CCM test vector RFC 5528 #21
|
||||
depends_on:MBEDTLS_CAMELLIA_C:MBEDTLS_CCM_C
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_CAMELLIA_128_CCM:"D75C2778078CA93D971F96FDE720F4CD":"00C53CD4C2AA24B160B6A31C1C":"E285E0E4808CDA3D":"B1404546BF667210CA28E309B39BD6CA7E9FC8285FE698D43C":"D20A02E0BDCAED2010D3":"":"F75DAA0710C4E64297794DC2B7D2A20757B1AA4E448002FFAB":0
|
||||
|
||||
Camellia-CCM test vector RFC 5528 #22
|
||||
depends_on:MBEDTLS_CAMELLIA_C:MBEDTLS_CCM_C
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_CAMELLIA_128_CCM:"D75C2778078CA93D971F96FDE720F4CD":"00BEE9267FBADCB160B6A31C1C":"6CAEF9941141570D7C813405":"94C8959C11569A297831A721005857AB61B87A":"2DEA0936B6EB5F625F5D":"":"C238822FAC5F98FF929405B0AD127A4E41854E":0
|
||||
|
||||
Camellia-CCM test vector RFC 5528 #23
|
||||
depends_on:MBEDTLS_CAMELLIA_C:MBEDTLS_CCM_C
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_CAMELLIA_128_CCM:"D75C2778078CA93D971F96FDE720F4CD":"00DFA8B1245007B160B6A31C1C":"36A52CF16B19A2037AB7011E":"5869E3AAD2447C74E0FC05F9A4EA74577F4DE8CA":"8924764296AD04119CE7":"":"4DBF3E774AD245E5D5891F9D1C32A0AE022C85D7":0
|
||||
|
||||
Camellia-CCM test vector RFC 5528 #24
|
||||
depends_on:MBEDTLS_CAMELLIA_C:MBEDTLS_CCM_C
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_CAMELLIA_128_CCM:"D75C2778078CA93D971F96FDE720F4CD":"003B8FD8D3A937B160B6A31C1C":"A4D499F78419728C19178B0C":"4B198156393B0F7796086AAFB454F8C3F034CCA966":"945F1FCEA7E11BEE6A2F":"":"9DC9EDAE2FF5DF8636E8C6DE0EED55F7867E33337D":0
|
||||
|
||||
AES-128-CCM test vector NIST #1 PSA (P=0, N=7, A=0, T=4)
|
||||
depends_on:MBEDTLS_USE_PSA_CRYPTO:MBEDTLS_TEST_DEPRECATED:PSA_WANT_KEY_TYPE_AES:PSA_WANT_ALG_CCM
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_AES_128_CCM:"4ae701103c63deca5b5a3939d7d05992":"5a8aa485c316e9":"":"":"02209f55":"":"":1
|
||||
|
||||
AES-128-CCM test vector NIST #2 PSA (P=0, N=7, A=0, T=4)
|
||||
depends_on:MBEDTLS_USE_PSA_CRYPTO:MBEDTLS_TEST_DEPRECATED:PSA_WANT_KEY_TYPE_AES:PSA_WANT_ALG_CCM
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_AES_128_CCM:"4ae701103c63deca5b5a3939d7d05992":"3796cf51b87266":"":"":"9a04c241":"FAIL":"":1
|
||||
|
||||
AES-128-CCM test vector NIST #3 PSA (P=0, N=7, A=0, T=16)
|
||||
depends_on:MBEDTLS_USE_PSA_CRYPTO:MBEDTLS_TEST_DEPRECATED:PSA_WANT_KEY_TYPE_AES:PSA_WANT_ALG_CCM
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_AES_128_CCM:"4bb3c4a4f893ad8c9bdc833c325d62b3":"5a8aa485c316e9":"":"":"75d582db43ce9b13ab4b6f7f14341330":"":"":1
|
||||
|
||||
AES-128-CCM test vector NIST #4 PSA (P=0, N=7, A=0, T=16)
|
||||
depends_on:MBEDTLS_USE_PSA_CRYPTO:MBEDTLS_TEST_DEPRECATED:PSA_WANT_KEY_TYPE_AES:PSA_WANT_ALG_CCM
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_AES_128_CCM:"4bb3c4a4f893ad8c9bdc833c325d62b3":"3796cf51b87266":"":"":"3a65e03af37b81d05acc7ec1bc39deb0":"FAIL":"":1
|
||||
|
||||
AES-128-CCM test vector NIST #5 PSA (P=0, N=13, A=0, T=4)
|
||||
depends_on:MBEDTLS_USE_PSA_CRYPTO:MBEDTLS_TEST_DEPRECATED:PSA_WANT_KEY_TYPE_AES:PSA_WANT_ALG_CCM
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_AES_128_CCM:"4bb3c4a4f893ad8c9bdc833c325d62b3":"5a8aa485c316e9403aff859fbb":"":"":"90156f3f":"":"":1
|
||||
|
||||
AES-128-CCM test vector NIST #6 PSA (P=0, N=13, A=0, T=4)
|
||||
depends_on:MBEDTLS_USE_PSA_CRYPTO:MBEDTLS_TEST_DEPRECATED:PSA_WANT_KEY_TYPE_AES:PSA_WANT_ALG_CCM
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_AES_128_CCM:"4bb3c4a4f893ad8c9bdc833c325d62b3":"a16a2e741f1cd9717285b6d882":"":"":"88909016":"FAIL":"":1
|
||||
|
||||
AES-128-CCM test vector NIST #7 PSA (P=0, N=13, A=0, T=16)
|
||||
depends_on:MBEDTLS_USE_PSA_CRYPTO:MBEDTLS_TEST_DEPRECATED:PSA_WANT_KEY_TYPE_AES:PSA_WANT_ALG_CCM
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_AES_128_CCM:"19ebfde2d5468ba0a3031bde629b11fd":"5a8aa485c316e9403aff859fbb":"":"":"fb04dc5a44c6bb000f2440f5154364b4":"":"":1
|
||||
|
||||
AES-128-CCM test vector NIST #8 PSA (P=0, N=13, A=0, T=16)
|
||||
depends_on:MBEDTLS_USE_PSA_CRYPTO:MBEDTLS_TEST_DEPRECATED:PSA_WANT_KEY_TYPE_AES:PSA_WANT_ALG_CCM
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_AES_128_CCM:"19ebfde2d5468ba0a3031bde629b11fd":"a16a2e741f1cd9717285b6d882":"":"":"5447075bf42a59b91f08064738b015ab":"FAIL":"":1
|
||||
|
||||
AES-128-CCM test vector NIST #9 PSA (P=24, N=7, A=0, T=4)
|
||||
depends_on:MBEDTLS_USE_PSA_CRYPTO:MBEDTLS_TEST_DEPRECATED:PSA_WANT_KEY_TYPE_AES:PSA_WANT_ALG_CCM
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_AES_128_CCM:"19ebfde2d5468ba0a3031bde629b11fd":"5a8aa485c316e9":"":"a90e8ea44085ced791b2fdb7fd44b5cf0bd7d27718029bb7":"03e1fa6b":"":"3796cf51b8726652a4204733b8fbb047cf00fb91a9837e22":1
|
||||
|
||||
AES-128-CCM test vector NIST #10 PSA (P=24, N=7, A=0, T=4)
|
||||
depends_on:MBEDTLS_USE_PSA_CRYPTO:MBEDTLS_TEST_DEPRECATED:PSA_WANT_KEY_TYPE_AES:PSA_WANT_ALG_CCM
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_AES_128_CCM:"19ebfde2d5468ba0a3031bde629b11fd":"31f8fa25827d48":"":"50aafe0578c115c4a8e126ff7b3ccb64dce8ccaa8ceda69f":"23e5d81c":"FAIL":"":1
|
||||
|
||||
AES-128-CCM test vector NIST #11 PSA (P=24, N=7, A=0, T=16)
|
||||
depends_on:MBEDTLS_USE_PSA_CRYPTO:MBEDTLS_TEST_DEPRECATED:PSA_WANT_KEY_TYPE_AES:PSA_WANT_ALG_CCM
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_AES_128_CCM:"197afb02ffbd8f699dacae87094d5243":"5a8aa485c316e9":"":"24ab9eeb0e5508cae80074f1070ee188a637171860881f1f":"2d9a3fbc210595b7b8b1b41523111a8e":"":"3796cf51b8726652a4204733b8fbb047cf00fb91a9837e22":1
|
||||
|
||||
AES-128-CCM test vector NIST #12 PSA (P=24, N=7, A=0, T=16)
|
||||
depends_on:MBEDTLS_USE_PSA_CRYPTO:MBEDTLS_TEST_DEPRECATED:PSA_WANT_KEY_TYPE_AES:PSA_WANT_ALG_CCM
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_AES_128_CCM:"197afb02ffbd8f699dacae87094d5243":"31f8fa25827d48":"":"7ebfda6fa5da1dbffd82dc29b875798fbcef8ba0084fbd24":"63af747cc88a001fa94e060290f209c4":"FAIL":"":1
|
||||
|
||||
AES-128-CCM test vector NIST #13 PSA (P=24, N=13, A=0, T=4)
|
||||
depends_on:MBEDTLS_USE_PSA_CRYPTO:MBEDTLS_TEST_DEPRECATED:PSA_WANT_KEY_TYPE_AES:PSA_WANT_ALG_CCM
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_AES_128_CCM:"197afb02ffbd8f699dacae87094d5243":"5a8aa485c316e9403aff859fbb":"":"4a550134f94455979ec4bf89ad2bd80d25a77ae94e456134":"a3e138b9":"":"a16a2e741f1cd9717285b6d882c1fc53655e9773761ad697":1
|
||||
|
||||
AES-128-CCM test vector NIST #14 PSA (P=24, N=13, A=0, T=4)
|
||||
depends_on:MBEDTLS_USE_PSA_CRYPTO:MBEDTLS_TEST_DEPRECATED:PSA_WANT_KEY_TYPE_AES:PSA_WANT_ALG_CCM
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_AES_128_CCM:"197afb02ffbd8f699dacae87094d5243":"49004912fdd7269279b1f06a89":"":"118ec53dd1bfbe52d5b9fe5dfebecf2ee674ec983eada654":"091a5ae9":"FAIL":"":1
|
||||
|
||||
AES-128-CCM test vector NIST #15 PSA (P=24, N=13, A=0, T=16)
|
||||
depends_on:MBEDTLS_USE_PSA_CRYPTO:MBEDTLS_TEST_DEPRECATED:PSA_WANT_KEY_TYPE_AES:PSA_WANT_ALG_CCM
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_AES_128_CCM:"90929a4b0ac65b350ad1591611fe4829":"5a8aa485c316e9403aff859fbb":"":"4bfe4e35784f0a65b545477e5e2f4bae0e1e6fa717eaf2cb":"6a9a970b9beb2ac1bd4fd62168f8378a":"":"a16a2e741f1cd9717285b6d882c1fc53655e9773761ad697":1
|
||||
|
||||
AES-128-CCM test vector NIST #16 PSA (P=24, N=13, A=0, T=16)
|
||||
depends_on:MBEDTLS_USE_PSA_CRYPTO:MBEDTLS_TEST_DEPRECATED:PSA_WANT_KEY_TYPE_AES:PSA_WANT_ALG_CCM
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_AES_128_CCM:"90929a4b0ac65b350ad1591611fe4829":"49004912fdd7269279b1f06a89":"":"0c56a503aa2c12e87450d45a7b714db980fd348f327c0065":"a65666144994bad0c8195bcb4ade1337":"FAIL":"":1
|
||||
|
||||
AES-128-CCM test vector NIST #17 PSA (P=0, N=7, A=32, T=4)
|
||||
depends_on:MBEDTLS_USE_PSA_CRYPTO:MBEDTLS_TEST_DEPRECATED:PSA_WANT_KEY_TYPE_AES:PSA_WANT_ALG_CCM
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_AES_128_CCM:"90929a4b0ac65b350ad1591611fe4829":"5a8aa485c316e9":"3796cf51b8726652a4204733b8fbb047cf00fb91a9837e22ec22b1a268f88e2c":"":"782e4318":"":"":1
|
||||
|
||||
AES-128-CCM test vector NIST #18 PSA (P=0, N=7, A=32, T=4)
|
||||
depends_on:MBEDTLS_USE_PSA_CRYPTO:MBEDTLS_TEST_DEPRECATED:PSA_WANT_KEY_TYPE_AES:PSA_WANT_ALG_CCM
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_AES_128_CCM:"90929a4b0ac65b350ad1591611fe4829":"a265480ca88d5f":"a2248a882ecbf850daf91933a389e78e81623d233dfd47bf8321361a38f138fe":"":"a04f270a":"FAIL":"":1
|
||||
|
||||
AES-128-CCM test vector NIST #19 PSA (P=0, N=7, A=32, T=16)
|
||||
depends_on:MBEDTLS_USE_PSA_CRYPTO:MBEDTLS_TEST_DEPRECATED:PSA_WANT_KEY_TYPE_AES:PSA_WANT_ALG_CCM
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_AES_128_CCM:"6a798d7c5e1a72b43e20ad5c7b08567b":"5a8aa485c316e9":"3796cf51b8726652a4204733b8fbb047cf00fb91a9837e22ec22b1a268f88e2c":"":"41b476013f45e4a781f253a6f3b1e530":"":"":1
|
||||
|
||||
AES-128-CCM test vector NIST #20 PSA (P=0, N=7, A=32, T=16)
|
||||
depends_on:MBEDTLS_USE_PSA_CRYPTO:MBEDTLS_TEST_DEPRECATED:PSA_WANT_KEY_TYPE_AES:PSA_WANT_ALG_CCM
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_AES_128_CCM:"6a798d7c5e1a72b43e20ad5c7b08567b":"a265480ca88d5f":"a2248a882ecbf850daf91933a389e78e81623d233dfd47bf8321361a38f138fe":"":"f9f018fcd125822616083fffebc4c8e6":"FAIL":"":1
|
||||
|
||||
AES-128-CCM test vector NIST #21 PSA (P=0, N=13, A=32, T=4)
|
||||
depends_on:MBEDTLS_USE_PSA_CRYPTO:MBEDTLS_TEST_DEPRECATED:PSA_WANT_KEY_TYPE_AES:PSA_WANT_ALG_CCM
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_AES_128_CCM:"6a798d7c5e1a72b43e20ad5c7b08567b":"5a8aa485c316e9403aff859fbb":"a16a2e741f1cd9717285b6d882c1fc53655e9773761ad697a7ee6410184c7982":"":"9f69f24f":"":"":1
|
||||
|
||||
AES-128-CCM test vector NIST #22 PSA (P=0, N=13, A=32, T=4)
|
||||
depends_on:MBEDTLS_USE_PSA_CRYPTO:MBEDTLS_TEST_DEPRECATED:PSA_WANT_KEY_TYPE_AES:PSA_WANT_ALG_CCM
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_AES_128_CCM:"6a798d7c5e1a72b43e20ad5c7b08567b":"8739b4bea1a099fe547499cbc6":"f6107696edb332b2ea059d8860fee26be42e5e12e1a4f79a8d0eafce1b2278a7":"":"e17afaa4":"FAIL":"":1
|
||||
|
||||
AES-128-CCM test vector NIST #23 PSA (P=0, N=13, A=32, T=16)
|
||||
depends_on:MBEDTLS_USE_PSA_CRYPTO:MBEDTLS_TEST_DEPRECATED:PSA_WANT_KEY_TYPE_AES:PSA_WANT_ALG_CCM
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_AES_128_CCM:"f9fdca4ac64fe7f014de0f43039c7571":"5a8aa485c316e9403aff859fbb":"a16a2e741f1cd9717285b6d882c1fc53655e9773761ad697a7ee6410184c7982":"":"1859ac36a40a6b28b34266253627797a":"":"":1
|
||||
|
||||
AES-128-CCM test vector NIST #24 PSA (P=0, N=13, A=32, T=16)
|
||||
depends_on:MBEDTLS_USE_PSA_CRYPTO:MBEDTLS_TEST_DEPRECATED:PSA_WANT_KEY_TYPE_AES:PSA_WANT_ALG_CCM
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_AES_128_CCM:"f9fdca4ac64fe7f014de0f43039c7571":"8739b4bea1a099fe547499cbc6":"f6107696edb332b2ea059d8860fee26be42e5e12e1a4f79a8d0eafce1b2278a7":"":"edf8b46eb69ac0044116019dec183072":"FAIL":"":1
|
||||
|
||||
AES-128-CCM test vector NIST #25 PSA (P=24, N=7, A=32, T=4)
|
||||
depends_on:MBEDTLS_USE_PSA_CRYPTO:MBEDTLS_TEST_DEPRECATED:PSA_WANT_KEY_TYPE_AES:PSA_WANT_ALG_CCM
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_AES_128_CCM:"f9fdca4ac64fe7f014de0f43039c7571":"5a8aa485c316e9":"3796cf51b8726652a4204733b8fbb047cf00fb91a9837e22ec22b1a268f88e2c":"6be31860ca271ef448de8f8d8b39346daf4b81d7e92d65b3":"38f125fa":"":"a265480ca88d5f536db0dc6abc40faf0d05be7a966977768":1
|
||||
|
||||
AES-128-CCM test vector NIST #26 PSA (P=24, N=7, A=32, T=4)
|
||||
depends_on:MBEDTLS_USE_PSA_CRYPTO:MBEDTLS_TEST_DEPRECATED:PSA_WANT_KEY_TYPE_AES:PSA_WANT_ALG_CCM
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_AES_128_CCM:"f9fdca4ac64fe7f014de0f43039c7571":"fdd2d6f503c915":"5b92394f21ddc3ad49d9b0881b829a5935cb3a4d23e292a62fb66b5e7ab7020e":"4cc57a9927a6bc401441870d3193bf89ebd163f5c01501c7":"28a66b69":"FAIL":"":1
|
||||
|
||||
AES-128-CCM test vector NIST #27 PSA (P=24, N=7, A=32, T=16)
|
||||
depends_on:MBEDTLS_USE_PSA_CRYPTO:MBEDTLS_TEST_DEPRECATED:PSA_WANT_KEY_TYPE_AES:PSA_WANT_ALG_CCM
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_AES_128_CCM:"a7aa635ea51b0bb20a092bd5573e728c":"5a8aa485c316e9":"3796cf51b8726652a4204733b8fbb047cf00fb91a9837e22ec22b1a268f88e2c":"b351ab96b2e45515254558d5212673ee6c776d42dbca3b51":"2cf3a20b7fd7c49e6e79bef475c2906f":"":"a265480ca88d5f536db0dc6abc40faf0d05be7a966977768":1
|
||||
|
||||
AES-128-CCM test vector NIST #28 PSA (P=24, N=7, A=32, T=16)
|
||||
depends_on:MBEDTLS_USE_PSA_CRYPTO:MBEDTLS_TEST_DEPRECATED:PSA_WANT_KEY_TYPE_AES:PSA_WANT_ALG_CCM
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_AES_128_CCM:"a7aa635ea51b0bb20a092bd5573e728c":"fdd2d6f503c915":"5b92394f21ddc3ad49d9b0881b829a5935cb3a4d23e292a62fb66b5e7ab7020e":"df1a5285caa41b4bb47f6e5ceceba4e82721828d68427a30":"81d18ca149d6766bfaccec88f194eb5b":"FAIL":"":1
|
||||
|
||||
AES-128-CCM test vector NIST #29 PSA (P=24, N=13, A=32, T=4)
|
||||
depends_on:MBEDTLS_USE_PSA_CRYPTO:MBEDTLS_TEST_DEPRECATED:PSA_WANT_KEY_TYPE_AES:PSA_WANT_ALG_CCM
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_AES_128_CCM:"a7aa635ea51b0bb20a092bd5573e728c":"5a8aa485c316e9403aff859fbb":"a16a2e741f1cd9717285b6d882c1fc53655e9773761ad697a7ee6410184c7982":"934f893824e880f743d196b22d1f340a52608155087bd28a":"c25e5329":"":"8739b4bea1a099fe547499cbc6d1b13d849b8084c9b6acc5":1
|
||||
|
||||
AES-128-CCM test vector NIST #30 PSA (P=24, N=13, A=32, T=4)
|
||||
depends_on:MBEDTLS_USE_PSA_CRYPTO:MBEDTLS_TEST_DEPRECATED:PSA_WANT_KEY_TYPE_AES:PSA_WANT_ALG_CCM
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_AES_128_CCM:"a7aa635ea51b0bb20a092bd5573e728c":"0812757ad0cc4d17c4cfe7a642":"ec6c44a7e94e51a3ca6dee229098391575ec7213c85267fbf7492fdbeee61b10":"f43ba9d834ad85dfab3f1c0c27c3441fe4e411a38a261a65":"59b3b3ee":"FAIL":"":1
|
||||
|
||||
AES-128-CCM test vector NIST #31 PSA (P=24, N=13, A=32, T=16)
|
||||
depends_on:MBEDTLS_USE_PSA_CRYPTO:MBEDTLS_TEST_DEPRECATED:PSA_WANT_KEY_TYPE_AES:PSA_WANT_ALG_CCM
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_AES_128_CCM:"26511fb51fcfa75cb4b44da75a6e5a0e":"5a8aa485c316e9403aff859fbb":"a16a2e741f1cd9717285b6d882c1fc53655e9773761ad697a7ee6410184c7982":"50038b5fdd364ee747b70d00bd36840ece4ea19998123375":"c0a458bfcafa3b2609afe0f825cbf503":"":"8739b4bea1a099fe547499cbc6d1b13d849b8084c9b6acc5":1
|
||||
|
||||
AES-128-CCM test vector NIST #32 PSA (P=24, N=13, A=32, T=16)
|
||||
depends_on:MBEDTLS_USE_PSA_CRYPTO:MBEDTLS_TEST_DEPRECATED:PSA_WANT_KEY_TYPE_AES:PSA_WANT_ALG_CCM
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_AES_128_CCM:"26511fb51fcfa75cb4b44da75a6e5a0e":"0812757ad0cc4d17c4cfe7a642":"ec6c44a7e94e51a3ca6dee229098391575ec7213c85267fbf7492fdbeee61b10":"78ed8ff6b5a1255d0fbd0a719a9c27b059ff5f83d0c4962c":"390042ba8bb5f6798dab01c5afad7306":"FAIL":"":1
|
||||
|
||||
AES-192-CCM test vector NIST #1 PSA (P=0, N=7, A=0, T=4)
|
||||
depends_on:MBEDTLS_USE_PSA_CRYPTO:MBEDTLS_TEST_DEPRECATED:PSA_WANT_KEY_TYPE_AES:PSA_WANT_ALG_CCM:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_AES_192_CCM:"c98ad7f38b2c7e970c9b965ec87a08208384718f78206c6c":"5a8aa485c316e9":"":"":"9d4b7f3b":"":"":1
|
||||
|
||||
AES-192-CCM test vector NIST #2 PSA (P=0, N=7, A=0, T=4)
|
||||
depends_on:MBEDTLS_USE_PSA_CRYPTO:MBEDTLS_TEST_DEPRECATED:PSA_WANT_KEY_TYPE_AES:PSA_WANT_ALG_CCM:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_AES_192_CCM:"c98ad7f38b2c7e970c9b965ec87a08208384718f78206c6c":"3796cf51b87266":"":"":"80745de9":"FAIL":"":1
|
||||
|
||||
AES-192-CCM test vector NIST #3 PSA (P=0, N=7, A=0, T=16)
|
||||
depends_on:MBEDTLS_USE_PSA_CRYPTO:MBEDTLS_TEST_DEPRECATED:PSA_WANT_KEY_TYPE_AES:PSA_WANT_ALG_CCM:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_AES_192_CCM:"4bb3c4a4f893ad8c9bdc833c325d62b3d3ad1bccf9282a65":"5a8aa485c316e9":"":"":"17223038fa99d53681ca1beabe78d1b4":"":"":1
|
||||
|
||||
AES-192-CCM test vector NIST #4 PSA (P=0, N=7, A=0, T=16)
|
||||
depends_on:MBEDTLS_USE_PSA_CRYPTO:MBEDTLS_TEST_DEPRECATED:PSA_WANT_KEY_TYPE_AES:PSA_WANT_ALG_CCM:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_AES_192_CCM:"4bb3c4a4f893ad8c9bdc833c325d62b3d3ad1bccf9282a65":"3796cf51b87266":"":"":"d0e1eeef4d2a264536bb1c2c1bde7c35":"FAIL":"":1
|
||||
|
||||
AES-192-CCM test vector NIST #5 PSA (P=0, N=13, A=0, T=4)
|
||||
depends_on:MBEDTLS_USE_PSA_CRYPTO:MBEDTLS_TEST_DEPRECATED:PSA_WANT_KEY_TYPE_AES:PSA_WANT_ALG_CCM:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_AES_192_CCM:"4bb3c4a4f893ad8c9bdc833c325d62b3d3ad1bccf9282a65":"5a8aa485c316e9403aff859fbb":"":"":"fe69ed84":"":"":1
|
||||
|
||||
AES-192-CCM test vector NIST #6 PSA (P=0, N=13, A=0, T=4)
|
||||
depends_on:MBEDTLS_USE_PSA_CRYPTO:MBEDTLS_TEST_DEPRECATED:PSA_WANT_KEY_TYPE_AES:PSA_WANT_ALG_CCM:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_AES_192_CCM:"4bb3c4a4f893ad8c9bdc833c325d62b3d3ad1bccf9282a65":"a16a2e741f1cd9717285b6d882":"":"":"db7ffc82":"FAIL":"":1
|
||||
|
||||
AES-192-CCM test vector NIST #7 PSA (P=0, N=13, A=0, T=16)
|
||||
depends_on:MBEDTLS_USE_PSA_CRYPTO:MBEDTLS_TEST_DEPRECATED:PSA_WANT_KEY_TYPE_AES:PSA_WANT_ALG_CCM:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_AES_192_CCM:"19ebfde2d5468ba0a3031bde629b11fd4094afcb205393fa":"5a8aa485c316e9403aff859fbb":"":"":"0c66a8e547ed4f8c2c9a9a1eb5d455b9":"":"":1
|
||||
|
||||
AES-192-CCM test vector NIST #8 PSA (P=0, N=13, A=0, T=16)
|
||||
depends_on:MBEDTLS_USE_PSA_CRYPTO:MBEDTLS_TEST_DEPRECATED:PSA_WANT_KEY_TYPE_AES:PSA_WANT_ALG_CCM:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_AES_192_CCM:"19ebfde2d5468ba0a3031bde629b11fd4094afcb205393fa":"a16a2e741f1cd9717285b6d882":"":"":"38757b3a61a4dc97ca3ab88bf1240695":"FAIL":"":1
|
||||
|
||||
AES-192-CCM test vector NIST #9 PSA (P=24, N=7, A=0, T=4)
|
||||
depends_on:MBEDTLS_USE_PSA_CRYPTO:MBEDTLS_TEST_DEPRECATED:PSA_WANT_KEY_TYPE_AES:PSA_WANT_ALG_CCM:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_AES_192_CCM:"19ebfde2d5468ba0a3031bde629b11fd4094afcb205393fa":"5a8aa485c316e9":"":"411986d04d6463100bff03f7d0bde7ea2c3488784378138c":"ddc93a54":"":"3796cf51b8726652a4204733b8fbb047cf00fb91a9837e22":1
|
||||
|
||||
AES-192-CCM test vector NIST #10 PSA (P=24, N=7, A=0, T=4)
|
||||
depends_on:MBEDTLS_USE_PSA_CRYPTO:MBEDTLS_TEST_DEPRECATED:PSA_WANT_KEY_TYPE_AES:PSA_WANT_ALG_CCM:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_AES_192_CCM:"19ebfde2d5468ba0a3031bde629b11fd4094afcb205393fa":"31f8fa25827d48":"":"32b649ab56162e55d4148a1292d6a225a988eb1308298273":"b6889036":"FAIL":"":1
|
||||
|
||||
AES-192-CCM test vector NIST #11 PSA (P=24, N=7, A=0, T=16)
|
||||
depends_on:MBEDTLS_USE_PSA_CRYPTO:MBEDTLS_TEST_DEPRECATED:PSA_WANT_KEY_TYPE_AES:PSA_WANT_ALG_CCM:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_AES_192_CCM:"197afb02ffbd8f699dacae87094d524324576b99844f75e1":"5a8aa485c316e9":"":"cba4b4aeb85f0492fd8d905c4a6d8233139833373ef188a8":"c5a5ebecf7ac8607fe412189e83d9d20":"":"3796cf51b8726652a4204733b8fbb047cf00fb91a9837e22":1
|
||||
|
||||
AES-192-CCM test vector NIST #12 PSA (P=24, N=7, A=0, T=16)
|
||||
depends_on:MBEDTLS_USE_PSA_CRYPTO:MBEDTLS_TEST_DEPRECATED:PSA_WANT_KEY_TYPE_AES:PSA_WANT_ALG_CCM:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_AES_192_CCM:"197afb02ffbd8f699dacae87094d524324576b99844f75e1":"31f8fa25827d48":"":"ca62713728b5c9d652504b0ae8fd4fee5d297ee6a8d19cb6":"e699f15f14d34dcaf9ba8ed4b877c97d":"FAIL":"":1
|
||||
|
||||
AES-192-CCM test vector NIST #13 PSA (P=24, N=13, A=0, T=4)
|
||||
depends_on:MBEDTLS_USE_PSA_CRYPTO:MBEDTLS_TEST_DEPRECATED:PSA_WANT_KEY_TYPE_AES:PSA_WANT_ALG_CCM:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_AES_192_CCM:"197afb02ffbd8f699dacae87094d524324576b99844f75e1":"5a8aa485c316e9403aff859fbb":"":"042653c674ef2a90f7fb11d30848e530ae59478f1051633a":"34fad277":"":"a16a2e741f1cd9717285b6d882c1fc53655e9773761ad697":1
|
||||
|
||||
AES-192-CCM test vector NIST #14 PSA (P=24, N=13, A=0, T=4)
|
||||
depends_on:MBEDTLS_USE_PSA_CRYPTO:MBEDTLS_TEST_DEPRECATED:PSA_WANT_KEY_TYPE_AES:PSA_WANT_ALG_CCM:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_AES_192_CCM:"197afb02ffbd8f699dacae87094d524324576b99844f75e1":"49004912fdd7269279b1f06a89":"":"1902d9769a7ba3d3268e1257395c8c2e5f98eef295dcbfa5":"a35df775":"FAIL":"":1
|
||||
|
||||
AES-192-CCM test vector NIST #15 PSA (P=24, N=13, A=0, T=16)
|
||||
depends_on:MBEDTLS_USE_PSA_CRYPTO:MBEDTLS_TEST_DEPRECATED:PSA_WANT_KEY_TYPE_AES:PSA_WANT_ALG_CCM:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_AES_192_CCM:"90929a4b0ac65b350ad1591611fe48297e03956f6083e451":"5a8aa485c316e9403aff859fbb":"":"a5b7d8cca2069908d1ed88e6a9fe2c9bede3131dad54671e":"a7ade30a07d185692ab0ebdf4c78cf7a":"":"a16a2e741f1cd9717285b6d882c1fc53655e9773761ad697":1
|
||||
|
||||
AES-192-CCM test vector NIST #16 PSA (P=24, N=13, A=0, T=16)
|
||||
depends_on:MBEDTLS_USE_PSA_CRYPTO:MBEDTLS_TEST_DEPRECATED:PSA_WANT_KEY_TYPE_AES:PSA_WANT_ALG_CCM:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_AES_192_CCM:"90929a4b0ac65b350ad1591611fe48297e03956f6083e451":"49004912fdd7269279b1f06a89":"":"9a98617fb97a0dfe466be692272dcdaec1c5443a3b51312e":"f042c86363cc05afb98c66e16be8a445":"FAIL":"":1
|
||||
|
||||
AES-192-CCM test vector NIST #17 PSA (P=0, N=7, A=32, T=4)
|
||||
depends_on:MBEDTLS_USE_PSA_CRYPTO:MBEDTLS_TEST_DEPRECATED:PSA_WANT_KEY_TYPE_AES:PSA_WANT_ALG_CCM:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_AES_192_CCM:"90929a4b0ac65b350ad1591611fe48297e03956f6083e451":"5a8aa485c316e9":"3796cf51b8726652a4204733b8fbb047cf00fb91a9837e22ec22b1a268f88e2c":"":"1d089a5f":"":"":1
|
||||
|
||||
AES-192-CCM test vector NIST #18 PSA (P=0, N=7, A=32, T=4)
|
||||
depends_on:MBEDTLS_USE_PSA_CRYPTO:MBEDTLS_TEST_DEPRECATED:PSA_WANT_KEY_TYPE_AES:PSA_WANT_ALG_CCM:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_AES_192_CCM:"90929a4b0ac65b350ad1591611fe48297e03956f6083e451":"a265480ca88d5f":"a2248a882ecbf850daf91933a389e78e81623d233dfd47bf8321361a38f138fe":"":"2f46022a":"FAIL":"":1
|
||||
|
||||
AES-192-CCM test vector NIST #19 PSA (P=0, N=7, A=32, T=16)
|
||||
depends_on:MBEDTLS_USE_PSA_CRYPTO:MBEDTLS_TEST_DEPRECATED:PSA_WANT_KEY_TYPE_AES:PSA_WANT_ALG_CCM:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_AES_192_CCM:"6a798d7c5e1a72b43e20ad5c7b08567b12ab744b61c070e2":"5a8aa485c316e9":"3796cf51b8726652a4204733b8fbb047cf00fb91a9837e22ec22b1a268f88e2c":"":"5280a2137fee3deefcfe9b63a1199fb3":"":"":1
|
||||
|
||||
AES-192-CCM test vector NIST #20 PSA (P=0, N=7, A=32, T=16)
|
||||
depends_on:MBEDTLS_USE_PSA_CRYPTO:MBEDTLS_TEST_DEPRECATED:PSA_WANT_KEY_TYPE_AES:PSA_WANT_ALG_CCM:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_AES_192_CCM:"6a798d7c5e1a72b43e20ad5c7b08567b12ab744b61c070e2":"a265480ca88d5f":"a2248a882ecbf850daf91933a389e78e81623d233dfd47bf8321361a38f138fe":"":"d40a7318c5f2d82f838c0beeefe0d598":"FAIL":"":1
|
||||
|
||||
AES-192-CCM test vector NIST #21 PSA (P=0, N=13, A=32, T=4)
|
||||
depends_on:MBEDTLS_USE_PSA_CRYPTO:MBEDTLS_TEST_DEPRECATED:PSA_WANT_KEY_TYPE_AES:PSA_WANT_ALG_CCM:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_AES_192_CCM:"6a798d7c5e1a72b43e20ad5c7b08567b12ab744b61c070e2":"5a8aa485c316e9403aff859fbb":"a16a2e741f1cd9717285b6d882c1fc53655e9773761ad697a7ee6410184c7982":"":"5e0eaebd":"":"":1
|
||||
|
||||
AES-192-CCM test vector NIST #22 PSA (P=0, N=13, A=32, T=4)
|
||||
depends_on:MBEDTLS_USE_PSA_CRYPTO:MBEDTLS_TEST_DEPRECATED:PSA_WANT_KEY_TYPE_AES:PSA_WANT_ALG_CCM:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_AES_192_CCM:"6a798d7c5e1a72b43e20ad5c7b08567b12ab744b61c070e2":"8739b4bea1a099fe547499cbc6":"f6107696edb332b2ea059d8860fee26be42e5e12e1a4f79a8d0eafce1b2278a7":"":"71b7fc33":"FAIL":"":1
|
||||
|
||||
AES-192-CCM test vector NIST #23 PSA (P=0, N=13, A=32, T=16)
|
||||
depends_on:MBEDTLS_USE_PSA_CRYPTO:MBEDTLS_TEST_DEPRECATED:PSA_WANT_KEY_TYPE_AES:PSA_WANT_ALG_CCM:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_AES_192_CCM:"f9fdca4ac64fe7f014de0f43039c757194d544ce5d15eed4":"5a8aa485c316e9403aff859fbb":"a16a2e741f1cd9717285b6d882c1fc53655e9773761ad697a7ee6410184c7982":"":"d07ccf9fdc3d33aa94cda3d230da707c":"":"":1
|
||||
|
||||
AES-192-CCM test vector NIST #24 PSA (P=0, N=13, A=32, T=16)
|
||||
depends_on:MBEDTLS_USE_PSA_CRYPTO:MBEDTLS_TEST_DEPRECATED:PSA_WANT_KEY_TYPE_AES:PSA_WANT_ALG_CCM:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_AES_192_CCM:"f9fdca4ac64fe7f014de0f43039c757194d544ce5d15eed4":"8739b4bea1a099fe547499cbc6":"f6107696edb332b2ea059d8860fee26be42e5e12e1a4f79a8d0eafce1b2278a7":"":"65fe32b649dc328c9f531584897e85b3":"FAIL":"":1
|
||||
|
||||
AES-192-CCM test vector NIST #25 PSA (P=24, N=7, A=32, T=4)
|
||||
depends_on:MBEDTLS_USE_PSA_CRYPTO:MBEDTLS_TEST_DEPRECATED:PSA_WANT_KEY_TYPE_AES:PSA_WANT_ALG_CCM:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_AES_192_CCM:"f9fdca4ac64fe7f014de0f43039c757194d544ce5d15eed4":"5a8aa485c316e9":"3796cf51b8726652a4204733b8fbb047cf00fb91a9837e22ec22b1a268f88e2c":"9f6ca4af9b159148c889a6584d1183ea26e2614874b05045":"75dea8d1":"":"a265480ca88d5f536db0dc6abc40faf0d05be7a966977768":1
|
||||
|
||||
AES-192-CCM test vector NIST #26 PSA (P=24, N=7, A=32, T=4)
|
||||
depends_on:MBEDTLS_USE_PSA_CRYPTO:MBEDTLS_TEST_DEPRECATED:PSA_WANT_KEY_TYPE_AES:PSA_WANT_ALG_CCM:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_AES_192_CCM:"f9fdca4ac64fe7f014de0f43039c757194d544ce5d15eed4":"fdd2d6f503c915":"5b92394f21ddc3ad49d9b0881b829a5935cb3a4d23e292a62fb66b5e7ab7020e":"84d8212e9cfc2121252baa3b065b1edcf50497b9594db1eb":"d7965825":"FAIL":"":1
|
||||
|
||||
AES-192-CCM test vector NIST #27 PSA (P=24, N=7, A=32, T=16)
|
||||
depends_on:MBEDTLS_USE_PSA_CRYPTO:MBEDTLS_TEST_DEPRECATED:PSA_WANT_KEY_TYPE_AES:PSA_WANT_ALG_CCM:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_AES_192_CCM:"a7aa635ea51b0bb20a092bd5573e728ccd4b3e8cdd2ab33d":"5a8aa485c316e9":"3796cf51b8726652a4204733b8fbb047cf00fb91a9837e22ec22b1a268f88e2c":"6aab64c4787599d8f213446beadb16e08dba60e97f56dbd1":"4d1d980d6fe0fb44b421992662b97975":"":"a265480ca88d5f536db0dc6abc40faf0d05be7a966977768":1
|
||||
|
||||
AES-192-CCM test vector NIST #28 PSA (P=24, N=7, A=32, T=16)
|
||||
depends_on:MBEDTLS_USE_PSA_CRYPTO:MBEDTLS_TEST_DEPRECATED:PSA_WANT_KEY_TYPE_AES:PSA_WANT_ALG_CCM:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_AES_192_CCM:"a7aa635ea51b0bb20a092bd5573e728ccd4b3e8cdd2ab33d":"fdd2d6f503c915":"5b92394f21ddc3ad49d9b0881b829a5935cb3a4d23e292a62fb66b5e7ab7020e":"4980b2ee49b1aaf393175f5ab9bae95ec7904557dfa20660":"3c51d36c826f01384100886198a7f6a3":"FAIL":"":1
|
||||
|
||||
AES-192-CCM test vector NIST #29 PSA (P=24, N=13, A=32, T=4)
|
||||
depends_on:MBEDTLS_USE_PSA_CRYPTO:MBEDTLS_TEST_DEPRECATED:PSA_WANT_KEY_TYPE_AES:PSA_WANT_ALG_CCM:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_AES_192_CCM:"a7aa635ea51b0bb20a092bd5573e728ccd4b3e8cdd2ab33d":"5a8aa485c316e9403aff859fbb":"a16a2e741f1cd9717285b6d882c1fc53655e9773761ad697a7ee6410184c7982":"16e543d0e20615ff0df15acd9927ddfe40668a54bb854ccc":"c25e9fce":"":"8739b4bea1a099fe547499cbc6d1b13d849b8084c9b6acc5":1
|
||||
|
||||
AES-192-CCM test vector NIST #30 PSA (P=24, N=13, A=32, T=4)
|
||||
depends_on:MBEDTLS_USE_PSA_CRYPTO:MBEDTLS_TEST_DEPRECATED:PSA_WANT_KEY_TYPE_AES:PSA_WANT_ALG_CCM:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_AES_192_CCM:"a7aa635ea51b0bb20a092bd5573e728ccd4b3e8cdd2ab33d":"0812757ad0cc4d17c4cfe7a642":"ec6c44a7e94e51a3ca6dee229098391575ec7213c85267fbf7492fdbeee61b10":"df35b109caf690656ae278bbd8f8bba687a2ce11b105dae9":"8ecedb3e":"FAIL":"":1
|
||||
|
||||
AES-192-CCM test vector NIST #31 PSA (P=24, N=13, A=32, T=16)
|
||||
depends_on:MBEDTLS_USE_PSA_CRYPTO:MBEDTLS_TEST_DEPRECATED:PSA_WANT_KEY_TYPE_AES:PSA_WANT_ALG_CCM:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_AES_192_CCM:"26511fb51fcfa75cb4b44da75a6e5a0eb8d9c8f3b906f886":"5a8aa485c316e9403aff859fbb":"a16a2e741f1cd9717285b6d882c1fc53655e9773761ad697a7ee6410184c7982":"c5b0b2ef17498c5570eb335df4588032958ba3d69bf6f317":"8464a6f7fa2b76744e8e8d95691cecb8":"":"8739b4bea1a099fe547499cbc6d1b13d849b8084c9b6acc5":1
|
||||
|
||||
AES-192-CCM test vector NIST #32 PSA (P=24, N=13, A=32, T=16)
|
||||
depends_on:MBEDTLS_USE_PSA_CRYPTO:MBEDTLS_TEST_DEPRECATED:PSA_WANT_KEY_TYPE_AES:PSA_WANT_ALG_CCM:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_AES_192_CCM:"26511fb51fcfa75cb4b44da75a6e5a0eb8d9c8f3b906f886":"0812757ad0cc4d17c4cfe7a642":"ec6c44a7e94e51a3ca6dee229098391575ec7213c85267fbf7492fdbeee61b10":"d1f0518929f4ae2f0543de2a7dfe4bb0110bb3057e524a1c":"06bd6dc2e6bcc3436cffb969ae900388":"FAIL":"":1
|
||||
|
||||
AES-256-CCM test vector NIST #1 PSA (P=0, N=7, A=0, T=4)
|
||||
depends_on:MBEDTLS_USE_PSA_CRYPTO:MBEDTLS_TEST_DEPRECATED:PSA_WANT_KEY_TYPE_AES:PSA_WANT_ALG_CCM:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_AES_256_CCM:"eda32f751456e33195f1f499cf2dc7c97ea127b6d488f211ccc5126fbb24afa6":"a544218dadd3c1":"":"":"469c90bb":"":"":1
|
||||
|
||||
AES-256-CCM test vector NIST #2 PSA (P=0, N=7, A=0, T=4)
|
||||
depends_on:MBEDTLS_USE_PSA_CRYPTO:MBEDTLS_TEST_DEPRECATED:PSA_WANT_KEY_TYPE_AES:PSA_WANT_ALG_CCM:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_AES_256_CCM:"eda32f751456e33195f1f499cf2dc7c97ea127b6d488f211ccc5126fbb24afa6":"d3d5424e20fbec":"":"":"46a908ed":"FAIL":"":1
|
||||
|
||||
AES-256-CCM test vector NIST #3 PSA (P=0, N=7, A=0, T=16)
|
||||
depends_on:MBEDTLS_USE_PSA_CRYPTO:MBEDTLS_TEST_DEPRECATED:PSA_WANT_KEY_TYPE_AES:PSA_WANT_ALG_CCM:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_AES_256_CCM:"e1b8a927a95efe94656677b692662000278b441c79e879dd5c0ddc758bdc9ee8":"a544218dadd3c1":"":"":"8207eb14d33855a52acceed17dbcbf6e":"":"":1
|
||||
|
||||
AES-256-CCM test vector NIST #4 PSA (P=0, N=7, A=0, T=16)
|
||||
depends_on:MBEDTLS_USE_PSA_CRYPTO:MBEDTLS_TEST_DEPRECATED:PSA_WANT_KEY_TYPE_AES:PSA_WANT_ALG_CCM:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_AES_256_CCM:"e1b8a927a95efe94656677b692662000278b441c79e879dd5c0ddc758bdc9ee8":"d3d5424e20fbec":"":"":"60f8e127cb4d30db6df0622158cd931d":"FAIL":"":1
|
||||
|
||||
AES-256-CCM test vector NIST #5 PSA (P=0, N=13, A=0, T=4)
|
||||
depends_on:MBEDTLS_USE_PSA_CRYPTO:MBEDTLS_TEST_DEPRECATED:PSA_WANT_KEY_TYPE_AES:PSA_WANT_ALG_CCM:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_AES_256_CCM:"e1b8a927a95efe94656677b692662000278b441c79e879dd5c0ddc758bdc9ee8":"a544218dadd3c10583db49cf39":"":"":"8a19a133":"":"":1
|
||||
|
||||
AES-256-CCM test vector NIST #6 PSA (P=0, N=13, A=0, T=4)
|
||||
depends_on:MBEDTLS_USE_PSA_CRYPTO:MBEDTLS_TEST_DEPRECATED:PSA_WANT_KEY_TYPE_AES:PSA_WANT_ALG_CCM:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_AES_256_CCM:"e1b8a927a95efe94656677b692662000278b441c79e879dd5c0ddc758bdc9ee8":"3c0e2815d37d844f7ac240ba9d":"":"":"2e317f1b":"FAIL":"":1
|
||||
|
||||
AES-256-CCM test vector NIST #7 PSA (P=0, N=13, A=0, T=16)
|
||||
depends_on:MBEDTLS_USE_PSA_CRYPTO:MBEDTLS_TEST_DEPRECATED:PSA_WANT_KEY_TYPE_AES:PSA_WANT_ALG_CCM:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_AES_256_CCM:"af063639e66c284083c5cf72b70d8bc277f5978e80d9322d99f2fdc718cda569":"a544218dadd3c10583db49cf39":"":"":"97e1a8dd4259ccd2e431e057b0397fcf":"":"":1
|
||||
|
||||
AES-256-CCM test vector NIST #8 PSA (P=0, N=13, A=0, T=16)
|
||||
depends_on:MBEDTLS_USE_PSA_CRYPTO:MBEDTLS_TEST_DEPRECATED:PSA_WANT_KEY_TYPE_AES:PSA_WANT_ALG_CCM:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_AES_256_CCM:"af063639e66c284083c5cf72b70d8bc277f5978e80d9322d99f2fdc718cda569":"3c0e2815d37d844f7ac240ba9d":"":"":"5a9596c511ea6a8671adefc4f2157d8b":"FAIL":"":1
|
||||
|
||||
AES-256-CCM test vector NIST #9 PSA (P=24, N=7, A=0, T=4)
|
||||
depends_on:MBEDTLS_USE_PSA_CRYPTO:MBEDTLS_TEST_DEPRECATED:PSA_WANT_KEY_TYPE_AES:PSA_WANT_ALG_CCM:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_AES_256_CCM:"af063639e66c284083c5cf72b70d8bc277f5978e80d9322d99f2fdc718cda569":"a544218dadd3c1":"":"64a1341679972dc5869fcf69b19d5c5ea50aa0b5e985f5b7":"22aa8d59":"":"d3d5424e20fbec43ae495353ed830271515ab104f8860c98":1
|
||||
|
||||
AES-256-CCM test vector NIST #10 PSA (P=24, N=7, A=0, T=4)
|
||||
depends_on:MBEDTLS_USE_PSA_CRYPTO:MBEDTLS_TEST_DEPRECATED:PSA_WANT_KEY_TYPE_AES:PSA_WANT_ALG_CCM:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_AES_256_CCM:"af063639e66c284083c5cf72b70d8bc277f5978e80d9322d99f2fdc718cda569":"bfcda8b5a2d0d2":"":"c5b7f802bffc498c1626e3774f1d9f94045dfd8e1a10a202":"77d00a75":"FAIL":"":1
|
||||
|
||||
AES-256-CCM test vector NIST #11 PSA (P=24, N=7, A=0, T=16)
|
||||
depends_on:MBEDTLS_USE_PSA_CRYPTO:MBEDTLS_TEST_DEPRECATED:PSA_WANT_KEY_TYPE_AES:PSA_WANT_ALG_CCM:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_AES_256_CCM:"f7079dfa3b5c7b056347d7e437bcded683abd6e2c9e069d333284082cbb5d453":"a544218dadd3c1":"":"bc51c3925a960e7732533e4ef3a4f69ee6826de952bcb0fd":"374f3bb6db8377ebfc79674858c4f305":"":"d3d5424e20fbec43ae495353ed830271515ab104f8860c98":1
|
||||
|
||||
AES-256-CCM test vector NIST #12 PSA (P=24, N=7, A=0, T=16)
|
||||
depends_on:MBEDTLS_USE_PSA_CRYPTO:MBEDTLS_TEST_DEPRECATED:PSA_WANT_KEY_TYPE_AES:PSA_WANT_ALG_CCM:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_AES_256_CCM:"f7079dfa3b5c7b056347d7e437bcded683abd6e2c9e069d333284082cbb5d453":"bfcda8b5a2d0d2":"":"afa1fa8e8a70e26b02161150556d604101fdf423f332c336":"3275f2a4907d51b734fe7238cebbd48f":"FAIL":"":1
|
||||
|
||||
AES-256-CCM test vector NIST #13 PSA (P=24, N=13, A=0, T=4)
|
||||
depends_on:MBEDTLS_USE_PSA_CRYPTO:MBEDTLS_TEST_DEPRECATED:PSA_WANT_KEY_TYPE_AES:PSA_WANT_ALG_CCM:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_AES_256_CCM:"f7079dfa3b5c7b056347d7e437bcded683abd6e2c9e069d333284082cbb5d453":"a544218dadd3c10583db49cf39":"":"63e00d30e4b08fd2a1cc8d70fab327b2368e77a93be4f412":"3d14fb3f":"":"3c0e2815d37d844f7ac240ba9d6e3a0b2a86f706e885959e":1
|
||||
|
||||
AES-256-CCM test vector NIST #14 PSA (P=24, N=13, A=0, T=4)
|
||||
depends_on:MBEDTLS_USE_PSA_CRYPTO:MBEDTLS_TEST_DEPRECATED:PSA_WANT_KEY_TYPE_AES:PSA_WANT_ALG_CCM:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_AES_256_CCM:"f7079dfa3b5c7b056347d7e437bcded683abd6e2c9e069d333284082cbb5d453":"894dcaa61008eb8fb052c60d41":"":"bb5425b3869b76856ec58e39886fb6f6f2ac13fe44cb132d":"8d0c0099":"FAIL":"":1
|
||||
|
||||
AES-256-CCM test vector NIST #15 PSA (P=24, N=13, A=0, T=16)
|
||||
depends_on:MBEDTLS_USE_PSA_CRYPTO:MBEDTLS_TEST_DEPRECATED:PSA_WANT_KEY_TYPE_AES:PSA_WANT_ALG_CCM:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_AES_256_CCM:"1b0e8df63c57f05d9ac457575ea764524b8610ae5164e6215f426f5a7ae6ede4":"a544218dadd3c10583db49cf39":"":"f0050ad16392021a3f40207bed3521fb1e9f808f49830c42":"3a578d179902f912f9ea1afbce1120b3":"":"3c0e2815d37d844f7ac240ba9d6e3a0b2a86f706e885959e":1
|
||||
|
||||
AES-256-CCM test vector NIST #16 PSA (P=24, N=13, A=0, T=16)
|
||||
depends_on:MBEDTLS_USE_PSA_CRYPTO:MBEDTLS_TEST_DEPRECATED:PSA_WANT_KEY_TYPE_AES:PSA_WANT_ALG_CCM:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_AES_256_CCM:"1b0e8df63c57f05d9ac457575ea764524b8610ae5164e6215f426f5a7ae6ede4":"894dcaa61008eb8fb052c60d41":"":"c408190d0fbf5034f83b24a8ed9657331a7ce141de4fae76":"9084607b83bd06e6442eac8dacf583cc":"FAIL":"":1
|
||||
|
||||
AES-256-CCM test vector NIST #17 PSA (P=0, N=7, A=32, T=4)
|
||||
depends_on:MBEDTLS_USE_PSA_CRYPTO:MBEDTLS_TEST_DEPRECATED:PSA_WANT_KEY_TYPE_AES:PSA_WANT_ALG_CCM:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_AES_256_CCM:"1b0e8df63c57f05d9ac457575ea764524b8610ae5164e6215f426f5a7ae6ede4":"a544218dadd3c1":"d3d5424e20fbec43ae495353ed830271515ab104f8860c988d15b6d36c038eab":"":"92d00fbe":"":"":1
|
||||
|
||||
AES-256-CCM test vector NIST #18 PSA (P=0, N=7, A=32, T=4)
|
||||
depends_on:MBEDTLS_USE_PSA_CRYPTO:MBEDTLS_TEST_DEPRECATED:PSA_WANT_KEY_TYPE_AES:PSA_WANT_ALG_CCM:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_AES_256_CCM:"1b0e8df63c57f05d9ac457575ea764524b8610ae5164e6215f426f5a7ae6ede4":"78c46e3249ca28":"232e957c65ffa11988e830d4617d500f1c4a35c1221f396c41ab214f074ca2dc":"":"9143e5c4":"FAIL":"":1
|
||||
|
||||
AES-256-CCM test vector NIST #19 PSA (P=0, N=7, A=32, T=16)
|
||||
depends_on:MBEDTLS_USE_PSA_CRYPTO:MBEDTLS_TEST_DEPRECATED:PSA_WANT_KEY_TYPE_AES:PSA_WANT_ALG_CCM:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_AES_256_CCM:"a4bc10b1a62c96d459fbaf3a5aa3face7313bb9e1253e696f96a7a8e36801088":"a544218dadd3c1":"d3d5424e20fbec43ae495353ed830271515ab104f8860c988d15b6d36c038eab":"":"93af11a08379eb37a16aa2837f09d69d":"":"":1
|
||||
|
||||
AES-256-CCM test vector NIST #20 PSA (P=0, N=7, A=32, T=16)
|
||||
depends_on:MBEDTLS_USE_PSA_CRYPTO:MBEDTLS_TEST_DEPRECATED:PSA_WANT_KEY_TYPE_AES:PSA_WANT_ALG_CCM:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_AES_256_CCM:"a4bc10b1a62c96d459fbaf3a5aa3face7313bb9e1253e696f96a7a8e36801088":"78c46e3249ca28":"232e957c65ffa11988e830d4617d500f1c4a35c1221f396c41ab214f074ca2dc":"":"d19b0c14ec686a7961ca7c386d125a65":"FAIL":"":1
|
||||
|
||||
AES-256-CCM test vector NIST #21 PSA (P=0, N=13, A=32, T=4)
|
||||
depends_on:MBEDTLS_USE_PSA_CRYPTO:MBEDTLS_TEST_DEPRECATED:PSA_WANT_KEY_TYPE_AES:PSA_WANT_ALG_CCM:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_AES_256_CCM:"a4bc10b1a62c96d459fbaf3a5aa3face7313bb9e1253e696f96a7a8e36801088":"a544218dadd3c10583db49cf39":"3c0e2815d37d844f7ac240ba9d6e3a0b2a86f706e885959e09a1005e024f6907":"":"866d4227":"":"":1
|
||||
|
||||
AES-256-CCM test vector NIST #22 PSA (P=0, N=13, A=32, T=4)
|
||||
depends_on:MBEDTLS_USE_PSA_CRYPTO:MBEDTLS_TEST_DEPRECATED:PSA_WANT_KEY_TYPE_AES:PSA_WANT_ALG_CCM:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_AES_256_CCM:"a4bc10b1a62c96d459fbaf3a5aa3face7313bb9e1253e696f96a7a8e36801088":"e8de970f6ee8e80ede933581b5":"89f8b068d34f56bc49d839d8e47b347e6dae737b903b278632447e6c0485d26a":"":"94cb1127":"FAIL":"":1
|
||||
|
||||
AES-256-CCM test vector NIST #23 PSA (P=0, N=13, A=32, T=16)
|
||||
depends_on:MBEDTLS_USE_PSA_CRYPTO:MBEDTLS_TEST_DEPRECATED:PSA_WANT_KEY_TYPE_AES:PSA_WANT_ALG_CCM:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_AES_256_CCM:"8c5cf3457ff22228c39c051c4e05ed4093657eb303f859a9d4b0f8be0127d88a":"a544218dadd3c10583db49cf39":"3c0e2815d37d844f7ac240ba9d6e3a0b2a86f706e885959e09a1005e024f6907":"":"867b0d87cf6e0f718200a97b4f6d5ad5":"":"":1
|
||||
|
||||
AES-256-CCM test vector NIST #24 PSA (P=0, N=13, A=32, T=16)
|
||||
depends_on:MBEDTLS_USE_PSA_CRYPTO:MBEDTLS_TEST_DEPRECATED:PSA_WANT_KEY_TYPE_AES:PSA_WANT_ALG_CCM:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_AES_256_CCM:"8c5cf3457ff22228c39c051c4e05ed4093657eb303f859a9d4b0f8be0127d88a":"e8de970f6ee8e80ede933581b5":"89f8b068d34f56bc49d839d8e47b347e6dae737b903b278632447e6c0485d26a":"":"677a040d46ee3f2b7838273bdad14f16":"FAIL":"":1
|
||||
|
||||
AES-256-CCM test vector NIST #25 PSA (P=24, N=7, A=32, T=4)
|
||||
depends_on:MBEDTLS_USE_PSA_CRYPTO:MBEDTLS_TEST_DEPRECATED:PSA_WANT_KEY_TYPE_AES:PSA_WANT_ALG_CCM:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_AES_256_CCM:"8c5cf3457ff22228c39c051c4e05ed4093657eb303f859a9d4b0f8be0127d88a":"a544218dadd3c1":"d3d5424e20fbec43ae495353ed830271515ab104f8860c988d15b6d36c038eab":"c2fe12658139f5d0dd22cadf2e901695b579302a72fc5608":"3ebc7720":"":"78c46e3249ca28e1ef0531d80fd37c124d9aecb7be6668e3":1
|
||||
|
||||
AES-256-CCM test vector NIST #26 PSA (P=24, N=7, A=32, T=4)
|
||||
depends_on:MBEDTLS_USE_PSA_CRYPTO:MBEDTLS_TEST_DEPRECATED:PSA_WANT_KEY_TYPE_AES:PSA_WANT_ALG_CCM:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_AES_256_CCM:"8c5cf3457ff22228c39c051c4e05ed4093657eb303f859a9d4b0f8be0127d88a":"6ba004fd176791":"5a053b2a1bb87e85d56527bfcdcd3ecafb991bb10e4c862bb0751c700a29f54b":"94748ba81229e53c38583a8564b23ebbafc6f6efdf4c2a81":"c44db2c9":"FAIL":"":1
|
||||
|
||||
AES-256-CCM test vector NIST #27 PSA (P=24, N=7, A=32, T=16)
|
||||
depends_on:MBEDTLS_USE_PSA_CRYPTO:MBEDTLS_TEST_DEPRECATED:PSA_WANT_KEY_TYPE_AES:PSA_WANT_ALG_CCM:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_AES_256_CCM:"705334e30f53dd2f92d190d2c1437c8772f940c55aa35e562214ed45bd458ffe":"a544218dadd3c1":"d3d5424e20fbec43ae495353ed830271515ab104f8860c988d15b6d36c038eab":"3341168eb8c48468c414347fb08f71d2086f7c2d1bd581ce":"1ac68bd42f5ec7fa7e068cc0ecd79c2a":"":"78c46e3249ca28e1ef0531d80fd37c124d9aecb7be6668e3":1
|
||||
|
||||
AES-256-CCM test vector NIST #28 PSA (P=24, N=7, A=32, T=16)
|
||||
depends_on:MBEDTLS_USE_PSA_CRYPTO:MBEDTLS_TEST_DEPRECATED:PSA_WANT_KEY_TYPE_AES:PSA_WANT_ALG_CCM:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_AES_256_CCM:"705334e30f53dd2f92d190d2c1437c8772f940c55aa35e562214ed45bd458ffe":"6ba004fd176791":"5a053b2a1bb87e85d56527bfcdcd3ecafb991bb10e4c862bb0751c700a29f54b":"d543acda712b898cbb27b8f598b2e4438ce587a836e27851":"47c3338a2400809e739b63ba8227d2f9":"FAIL":"":1
|
||||
|
||||
AES-256-CCM test vector NIST #29 PSA (P=24, N=13, A=32, T=4)
|
||||
depends_on:MBEDTLS_USE_PSA_CRYPTO:MBEDTLS_TEST_DEPRECATED:PSA_WANT_KEY_TYPE_AES:PSA_WANT_ALG_CCM:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_AES_256_CCM:"705334e30f53dd2f92d190d2c1437c8772f940c55aa35e562214ed45bd458ffe":"a544218dadd3c10583db49cf39":"3c0e2815d37d844f7ac240ba9d6e3a0b2a86f706e885959e09a1005e024f6907":"c0ea400b599561e7905b99262b4565d5c3dc49fad84d7c69":"ef891339":"":"e8de970f6ee8e80ede933581b5bcf4d837e2b72baa8b00c3":1
|
||||
|
||||
AES-256-CCM test vector NIST #30 PSA (P=24, N=13, A=32, T=4)
|
||||
depends_on:MBEDTLS_USE_PSA_CRYPTO:MBEDTLS_TEST_DEPRECATED:PSA_WANT_KEY_TYPE_AES:PSA_WANT_ALG_CCM:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_AES_256_CCM:"705334e30f53dd2f92d190d2c1437c8772f940c55aa35e562214ed45bd458ffe":"8fa501c5dd9ac9b868144c9fa5":"5bb40e3bb72b4509324a7edc852f72535f1f6283156e63f6959ffaf39dcde800":"60871e03ea0eb968536c99f926ea24ef43d41272ad9fb7f6":"3d488623":"FAIL":"":1
|
||||
|
||||
AES-256-CCM test vector NIST #31 PSA (P=24, N=13, A=32, T=16)
|
||||
depends_on:MBEDTLS_USE_PSA_CRYPTO:MBEDTLS_TEST_DEPRECATED:PSA_WANT_KEY_TYPE_AES:PSA_WANT_ALG_CCM:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_AES_256_CCM:"314a202f836f9f257e22d8c11757832ae5131d357a72df88f3eff0ffcee0da4e":"a544218dadd3c10583db49cf39":"3c0e2815d37d844f7ac240ba9d6e3a0b2a86f706e885959e09a1005e024f6907":"8d34cdca37ce77be68f65baf3382e31efa693e63f914a781":"367f30f2eaad8c063ca50795acd90203":"":"e8de970f6ee8e80ede933581b5bcf4d837e2b72baa8b00c3":1
|
||||
|
||||
AES-256-CCM test vector NIST #32 PSA (P=24, N=13, A=32, T=16)
|
||||
depends_on:MBEDTLS_USE_PSA_CRYPTO:MBEDTLS_TEST_DEPRECATED:PSA_WANT_KEY_TYPE_AES:PSA_WANT_ALG_CCM:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_AES_256_CCM:"314a202f836f9f257e22d8c11757832ae5131d357a72df88f3eff0ffcee0da4e":"8fa501c5dd9ac9b868144c9fa5":"5bb40e3bb72b4509324a7edc852f72535f1f6283156e63f6959ffaf39dcde800":"516c0095cc3d85fd55e48da17c592e0c7014b9daafb82bdc":"4b41096dfdbe9cc1ab610f8f3e038d16":"FAIL":"":1
|
||||
135
vendor/mbedtls/tests/suites/test_suite_cipher.chacha20.data
vendored
Normal file
135
vendor/mbedtls/tests/suites/test_suite_cipher.chacha20.data
vendored
Normal file
@@ -0,0 +1,135 @@
|
||||
Decrypt empty buffer
|
||||
depends_on:MBEDTLS_CHACHA20_C
|
||||
dec_empty_buf:MBEDTLS_CIPHER_CHACHA20:0:0
|
||||
|
||||
Chacha20 RFC 7539 Test Vector #1
|
||||
depends_on:MBEDTLS_CHACHA20_C
|
||||
decrypt_test_vec:MBEDTLS_CIPHER_CHACHA20:-1:"0000000000000000000000000000000000000000000000000000000000000000":"000000000000000000000000":"76b8e0ada0f13d90405d6ae55386bd28bdd219b8a08ded1aa836efcc8b770dc7da41597c5157488d7724e03fb8d84a376a43b8f41518a11cc387b669b2ee6586":"00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000":"":"":0:0
|
||||
|
||||
ChaCha20 Encrypt and decrypt 0 bytes
|
||||
depends_on:MBEDTLS_CHACHA20_C
|
||||
enc_dec_buf:MBEDTLS_CIPHER_CHACHA20:"CHACHA20":256:0:-1
|
||||
|
||||
ChaCha20 Encrypt and decrypt 1 bytes
|
||||
depends_on:MBEDTLS_CHACHA20_C
|
||||
enc_dec_buf:MBEDTLS_CIPHER_CHACHA20:"CHACHA20":256:1:-1
|
||||
|
||||
ChaCha20 Encrypt and decrypt 2 bytes
|
||||
depends_on:MBEDTLS_CHACHA20_C
|
||||
enc_dec_buf:MBEDTLS_CIPHER_CHACHA20:"CHACHA20":256:2:-1
|
||||
|
||||
ChaCha20 Encrypt and decrypt 7 bytes
|
||||
depends_on:MBEDTLS_CHACHA20_C
|
||||
enc_dec_buf:MBEDTLS_CIPHER_CHACHA20:"CHACHA20":256:7:-1
|
||||
|
||||
ChaCha20 Encrypt and decrypt 8 bytes
|
||||
depends_on:MBEDTLS_CHACHA20_C
|
||||
enc_dec_buf:MBEDTLS_CIPHER_CHACHA20:"CHACHA20":256:8:-1
|
||||
|
||||
ChaCha20 Encrypt and decrypt 9 bytes
|
||||
depends_on:MBEDTLS_CHACHA20_C
|
||||
enc_dec_buf:MBEDTLS_CIPHER_CHACHA20:"CHACHA20":256:9:-1
|
||||
|
||||
ChaCha20 Encrypt and decrypt 15 bytes
|
||||
depends_on:MBEDTLS_CHACHA20_C
|
||||
enc_dec_buf:MBEDTLS_CIPHER_CHACHA20:"CHACHA20":256:15:-1
|
||||
|
||||
ChaCha20 Encrypt and decrypt 16 bytes
|
||||
depends_on:MBEDTLS_CHACHA20_C
|
||||
enc_dec_buf:MBEDTLS_CIPHER_CHACHA20:"CHACHA20":256:16:-1
|
||||
|
||||
ChaCha20 Encrypt and decrypt 17 bytes
|
||||
depends_on:MBEDTLS_CHACHA20_C
|
||||
enc_dec_buf:MBEDTLS_CIPHER_CHACHA20:"CHACHA20":256:17:-1
|
||||
|
||||
ChaCha20 Encrypt and decrypt 31 bytes
|
||||
depends_on:MBEDTLS_CHACHA20_C
|
||||
enc_dec_buf:MBEDTLS_CIPHER_CHACHA20:"CHACHA20":256:31:-1
|
||||
|
||||
ChaCha20 Encrypt and decrypt 32 bytes
|
||||
depends_on:MBEDTLS_CHACHA20_C
|
||||
enc_dec_buf:MBEDTLS_CIPHER_CHACHA20:"CHACHA20":256:32:-1
|
||||
|
||||
ChaCha20 Encrypt and decrypt 33 bytes
|
||||
depends_on:MBEDTLS_CHACHA20_C
|
||||
enc_dec_buf:MBEDTLS_CIPHER_CHACHA20:"CHACHA20":256:33:-1
|
||||
|
||||
ChaCha20 Encrypt and decrypt 47 bytes
|
||||
depends_on:MBEDTLS_CHACHA20_C
|
||||
enc_dec_buf:MBEDTLS_CIPHER_CHACHA20:"CHACHA20":256:47:-1
|
||||
|
||||
ChaCha20 Encrypt and decrypt 48 bytes
|
||||
depends_on:MBEDTLS_CHACHA20_C
|
||||
enc_dec_buf:MBEDTLS_CIPHER_CHACHA20:"CHACHA20":256:48:-1
|
||||
|
||||
ChaCha20 Encrypt and decrypt 49 bytes
|
||||
depends_on:MBEDTLS_CHACHA20_C
|
||||
enc_dec_buf:MBEDTLS_CIPHER_CHACHA20:"CHACHA20":256:49:-1
|
||||
|
||||
ChaCha20 Encrypt and decrypt 0 bytes in multiple parts 1
|
||||
depends_on:MBEDTLS_CHACHA20_C
|
||||
enc_dec_buf_multipart:MBEDTLS_CIPHER_CHACHA20:256:0:0:-1:0:0:0:0
|
||||
|
||||
ChaCha20 Encrypt and decrypt 1 bytes in multiple parts 1
|
||||
depends_on:MBEDTLS_CHACHA20_C
|
||||
enc_dec_buf_multipart:MBEDTLS_CIPHER_CHACHA20:256:1:0:-1:1:0:1:0
|
||||
|
||||
ChaCha20 Encrypt and decrypt 1 bytes in multiple parts 2
|
||||
depends_on:MBEDTLS_CHACHA20_C
|
||||
enc_dec_buf_multipart:MBEDTLS_CIPHER_CHACHA20:256:0:1:-1:0:1:0:1
|
||||
|
||||
ChaCha20 Encrypt and decrypt 16 bytes in multiple parts 1
|
||||
depends_on:MBEDTLS_CHACHA20_C
|
||||
enc_dec_buf_multipart:MBEDTLS_CIPHER_CHACHA20:256:16:0:-1:16:0:16:0
|
||||
|
||||
ChaCha20 Encrypt and decrypt 16 bytes in multiple parts 2
|
||||
depends_on:MBEDTLS_CHACHA20_C
|
||||
enc_dec_buf_multipart:MBEDTLS_CIPHER_CHACHA20:256:0:16:-1:0:16:0:16
|
||||
|
||||
ChaCha20 Encrypt and decrypt 16 bytes in multiple parts 3
|
||||
depends_on:MBEDTLS_CHACHA20_C
|
||||
enc_dec_buf_multipart:MBEDTLS_CIPHER_CHACHA20:256:1:15:-1:1:15:1:15
|
||||
|
||||
ChaCha20 Encrypt and decrypt 16 bytes in multiple parts 4
|
||||
depends_on:MBEDTLS_CHACHA20_C
|
||||
enc_dec_buf_multipart:MBEDTLS_CIPHER_CHACHA20:256:15:1:-1:15:1:15:1
|
||||
|
||||
ChaCha20 Encrypt and decrypt 22 bytes in multiple parts 1
|
||||
depends_on:MBEDTLS_CHACHA20_C
|
||||
enc_dec_buf_multipart:MBEDTLS_CIPHER_CHACHA20:256:15:7:-1:15:7:15:7
|
||||
|
||||
ChaCha20 Encrypt and decrypt 22 bytes in multiple parts 2
|
||||
depends_on:MBEDTLS_CHACHA20_C
|
||||
enc_dec_buf_multipart:MBEDTLS_CIPHER_CHACHA20:256:7:15:-1:7:15:7:15
|
||||
|
||||
ChaCha20 Encrypt and decrypt 22 bytes in multiple parts 3
|
||||
depends_on:MBEDTLS_CHACHA20_C
|
||||
enc_dec_buf_multipart:MBEDTLS_CIPHER_CHACHA20:256:16:6:-1:16:6:16:6
|
||||
|
||||
ChaCha20 Encrypt and decrypt 22 bytes in multiple parts 4
|
||||
depends_on:MBEDTLS_CHACHA20_C
|
||||
enc_dec_buf_multipart:MBEDTLS_CIPHER_CHACHA20:256:6:16:-1:6:16:6:16
|
||||
|
||||
ChaCha20 Encrypt and decrypt 32 bytes in multiple parts
|
||||
depends_on:MBEDTLS_CHACHA20_C
|
||||
enc_dec_buf_multipart:MBEDTLS_CIPHER_CHACHA20:256:16:16:-1:16:16:16:16
|
||||
|
||||
ChaCha20 IV Length 0
|
||||
depends_on:MBEDTLS_CHACHA20_C
|
||||
iv_len_validity:MBEDTLS_CIPHER_CHACHA20:"CHACHA20":0:MBEDTLS_ERR_CIPHER_BAD_INPUT_DATA
|
||||
|
||||
ChaCha20 IV Length 11
|
||||
depends_on:MBEDTLS_CHACHA20_C
|
||||
iv_len_validity:MBEDTLS_CIPHER_CHACHA20:"CHACHA20":11:MBEDTLS_ERR_CIPHER_BAD_INPUT_DATA
|
||||
|
||||
ChaCha20 IV Length 12
|
||||
depends_on:MBEDTLS_CHACHA20_C
|
||||
iv_len_validity:MBEDTLS_CIPHER_CHACHA20:"CHACHA20":12:0
|
||||
|
||||
ChaCha20 IV Length 13
|
||||
depends_on:MBEDTLS_CHACHA20_C
|
||||
iv_len_validity:MBEDTLS_CIPHER_CHACHA20:"CHACHA20":13:MBEDTLS_ERR_CIPHER_BAD_INPUT_DATA
|
||||
|
||||
ChaCha20 IV Length 16
|
||||
depends_on:MBEDTLS_CHACHA20_C
|
||||
iv_len_validity:MBEDTLS_CIPHER_CHACHA20:"CHACHA20":16:MBEDTLS_ERR_CIPHER_BAD_INPUT_DATA
|
||||
143
vendor/mbedtls/tests/suites/test_suite_cipher.chachapoly.data
vendored
Normal file
143
vendor/mbedtls/tests/suites/test_suite_cipher.chachapoly.data
vendored
Normal file
@@ -0,0 +1,143 @@
|
||||
Decrypt empty buffer
|
||||
depends_on:MBEDTLS_CHACHAPOLY_C
|
||||
dec_empty_buf:MBEDTLS_CIPHER_CHACHA20_POLY1305:0:0
|
||||
|
||||
ChaCha20+Poly1305 Encrypt and decrypt 0 bytes
|
||||
depends_on:MBEDTLS_CHACHAPOLY_C
|
||||
enc_dec_buf:MBEDTLS_CIPHER_CHACHA20_POLY1305:"CHACHA20-POLY1305":256:0:-1
|
||||
|
||||
ChaCha20+Poly1305 Encrypt and decrypt 1 bytes
|
||||
depends_on:MBEDTLS_CHACHAPOLY_C
|
||||
enc_dec_buf:MBEDTLS_CIPHER_CHACHA20_POLY1305:"CHACHA20-POLY1305":256:1:-1
|
||||
|
||||
ChaCha20+Poly1305 Encrypt and decrypt 2 bytes
|
||||
depends_on:MBEDTLS_CHACHAPOLY_C
|
||||
enc_dec_buf:MBEDTLS_CIPHER_CHACHA20_POLY1305:"CHACHA20-POLY1305":256:2:-1
|
||||
|
||||
ChaCha20+Poly1305 Encrypt and decrypt 7 bytes
|
||||
depends_on:MBEDTLS_CHACHAPOLY_C
|
||||
enc_dec_buf:MBEDTLS_CIPHER_CHACHA20_POLY1305:"CHACHA20-POLY1305":256:7:-1
|
||||
|
||||
ChaCha20+Poly1305 Encrypt and decrypt 8 bytes
|
||||
depends_on:MBEDTLS_CHACHAPOLY_C
|
||||
enc_dec_buf:MBEDTLS_CIPHER_CHACHA20_POLY1305:"CHACHA20-POLY1305":256:8:-1
|
||||
|
||||
ChaCha20+Poly1305 Encrypt and decrypt 9 bytes
|
||||
depends_on:MBEDTLS_CHACHAPOLY_C
|
||||
enc_dec_buf:MBEDTLS_CIPHER_CHACHA20_POLY1305:"CHACHA20-POLY1305":256:9:-1
|
||||
|
||||
ChaCha20+Poly1305 Encrypt and decrypt 15 bytes
|
||||
depends_on:MBEDTLS_CHACHAPOLY_C
|
||||
enc_dec_buf:MBEDTLS_CIPHER_CHACHA20_POLY1305:"CHACHA20-POLY1305":256:15:-1
|
||||
|
||||
ChaCha20+Poly1305 Encrypt and decrypt 16 bytes
|
||||
depends_on:MBEDTLS_CHACHAPOLY_C
|
||||
enc_dec_buf:MBEDTLS_CIPHER_CHACHA20_POLY1305:"CHACHA20-POLY1305":256:16:-1
|
||||
|
||||
ChaCha20+Poly1305 Encrypt and decrypt 17 bytes
|
||||
depends_on:MBEDTLS_CHACHAPOLY_C
|
||||
enc_dec_buf:MBEDTLS_CIPHER_CHACHA20_POLY1305:"CHACHA20-POLY1305":256:17:-1
|
||||
|
||||
ChaCha20+Poly1305 Encrypt and decrypt 31 bytes
|
||||
depends_on:MBEDTLS_CHACHAPOLY_C
|
||||
enc_dec_buf:MBEDTLS_CIPHER_CHACHA20_POLY1305:"CHACHA20-POLY1305":256:31:-1
|
||||
|
||||
ChaCha20+Poly1305 Encrypt and decrypt 32 bytes
|
||||
depends_on:MBEDTLS_CHACHAPOLY_C
|
||||
enc_dec_buf:MBEDTLS_CIPHER_CHACHA20_POLY1305:"CHACHA20-POLY1305":256:32:-1
|
||||
|
||||
ChaCha20+Poly1305 Encrypt and decrypt 33 bytes
|
||||
depends_on:MBEDTLS_CHACHAPOLY_C
|
||||
enc_dec_buf:MBEDTLS_CIPHER_CHACHA20_POLY1305:"CHACHA20-POLY1305":256:33:-1
|
||||
|
||||
ChaCha20+Poly1305 Encrypt and decrypt 47 bytes
|
||||
depends_on:MBEDTLS_CHACHAPOLY_C
|
||||
enc_dec_buf:MBEDTLS_CIPHER_CHACHA20_POLY1305:"CHACHA20-POLY1305":256:47:-1
|
||||
|
||||
ChaCha20+Poly1305 Encrypt and decrypt 48 bytes
|
||||
depends_on:MBEDTLS_CHACHAPOLY_C
|
||||
enc_dec_buf:MBEDTLS_CIPHER_CHACHA20_POLY1305:"CHACHA20-POLY1305":256:48:-1
|
||||
|
||||
ChaCha20+Poly1305 Encrypt and decrypt 49 bytes
|
||||
depends_on:MBEDTLS_CHACHAPOLY_C
|
||||
enc_dec_buf:MBEDTLS_CIPHER_CHACHA20_POLY1305:"CHACHA20-POLY1305":256:49:-1
|
||||
|
||||
ChaCha20+Poly1305 Encrypt and decrypt 0 bytes in multiple parts 1
|
||||
depends_on:MBEDTLS_CHACHAPOLY_C
|
||||
enc_dec_buf_multipart:MBEDTLS_CIPHER_CHACHA20_POLY1305:256:0:0:-1:0:0:0:0
|
||||
|
||||
ChaCha20+Poly1305 Encrypt and decrypt 1 bytes in multiple parts 1
|
||||
depends_on:MBEDTLS_CHACHAPOLY_C
|
||||
enc_dec_buf_multipart:MBEDTLS_CIPHER_CHACHA20_POLY1305:256:1:0:-1:1:0:1:0
|
||||
|
||||
ChaCha20+Poly1305 Encrypt and decrypt 1 bytes in multiple parts 2
|
||||
depends_on:MBEDTLS_CHACHAPOLY_C
|
||||
enc_dec_buf_multipart:MBEDTLS_CIPHER_CHACHA20_POLY1305:256:0:1:-1:0:1:0:1
|
||||
|
||||
ChaCha20+Poly1305 Encrypt and decrypt 16 bytes in multiple parts 1
|
||||
depends_on:MBEDTLS_CHACHAPOLY_C
|
||||
enc_dec_buf_multipart:MBEDTLS_CIPHER_CHACHA20_POLY1305:256:16:0:-1:16:0:16:0
|
||||
|
||||
ChaCha20+Poly1305 Encrypt and decrypt 16 bytes in multiple parts 2
|
||||
depends_on:MBEDTLS_CHACHAPOLY_C
|
||||
enc_dec_buf_multipart:MBEDTLS_CIPHER_CHACHA20_POLY1305:256:0:16:-1:0:16:0:16
|
||||
|
||||
ChaCha20+Poly1305 Encrypt and decrypt 16 bytes in multiple parts 3
|
||||
depends_on:MBEDTLS_CHACHAPOLY_C
|
||||
enc_dec_buf_multipart:MBEDTLS_CIPHER_CHACHA20_POLY1305:256:1:15:-1:1:15:1:15
|
||||
|
||||
ChaCha20+Poly1305 Encrypt and decrypt 16 bytes in multiple parts 4
|
||||
depends_on:MBEDTLS_CHACHAPOLY_C
|
||||
enc_dec_buf_multipart:MBEDTLS_CIPHER_CHACHA20_POLY1305:256:15:1:-1:15:1:15:1
|
||||
|
||||
ChaCha20+Poly1305 Encrypt and decrypt 22 bytes in multiple parts 1
|
||||
depends_on:MBEDTLS_CHACHAPOLY_C
|
||||
enc_dec_buf_multipart:MBEDTLS_CIPHER_CHACHA20_POLY1305:256:15:7:-1:15:7:15:7
|
||||
|
||||
ChaCha20+Poly1305 Encrypt and decrypt 22 bytes in multiple parts 2
|
||||
depends_on:MBEDTLS_CHACHAPOLY_C
|
||||
enc_dec_buf_multipart:MBEDTLS_CIPHER_CHACHA20_POLY1305:256:7:15:-1:7:15:7:15
|
||||
|
||||
ChaCha20+Poly1305 Encrypt and decrypt 22 bytes in multiple parts 3
|
||||
depends_on:MBEDTLS_CHACHAPOLY_C
|
||||
enc_dec_buf_multipart:MBEDTLS_CIPHER_CHACHA20_POLY1305:256:16:6:-1:16:6:16:6
|
||||
|
||||
ChaCha20+Poly1305 Encrypt and decrypt 22 bytes in multiple parts 4
|
||||
depends_on:MBEDTLS_CHACHAPOLY_C
|
||||
enc_dec_buf_multipart:MBEDTLS_CIPHER_CHACHA20_POLY1305:256:6:16:-1:6:16:6:16
|
||||
|
||||
ChaCha20+Poly1305 Encrypt and decrypt 32 bytes in multiple parts
|
||||
depends_on:MBEDTLS_CHACHAPOLY_C
|
||||
enc_dec_buf_multipart:MBEDTLS_CIPHER_CHACHA20_POLY1305:256:16:16:-1:16:16:16:16
|
||||
|
||||
ChaCha20+Poly1305 RFC 7539 Test Vector #1
|
||||
depends_on:MBEDTLS_CHACHAPOLY_C
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_CHACHA20_POLY1305:"1c9240a5eb55d38af333888604f6b5f0473917c1402b80099dca5cbc207075c0":"000000000102030405060708":"f33388860000000000004e91":"64a0861575861af460f062c79be643bd5e805cfd345cf389f108670ac76c8cb24c6cfc18755d43eea09ee94e382d26b0bdb7b73c321b0100d4f03b7f355894cf332f830e710b97ce98c8a84abd0b948114ad176e008d33bd60f982b1ff37c8559797a06ef4f0ef61c186324e2b3506383606907b6a7c02b0f9f6157b53c867e4b9166c767b804d46a59b5216cde7a4e99040c5a40433225ee282a1b0a06c523eaf4534d7f83fa1155b0047718cbc546a0d072b04b3564eea1b422273f548271a0bb2316053fa76991955ebd63159434ecebb4e466dae5a1073a6727627097a1049e617d91d361094fa68f0ff77987130305beaba2eda04df997b714d6c6f2c29a6ad5cb4022b02709b":"eead9d67890cbb22392336fea1851f38":"":"496e7465726e65742d4472616674732061726520647261667420646f63756d656e74732076616c696420666f722061206d6178696d756d206f6620736978206d6f6e74687320616e64206d617920626520757064617465642c207265706c616365642c206f72206f62736f6c65746564206279206f7468657220646f63756d656e747320617420616e792074696d652e20497420697320696e617070726f70726961746520746f2075736520496e7465726e65742d447261667473206173207265666572656e6365206d6174657269616c206f7220746f2063697465207468656d206f74686572207468616e206173202fe2809c776f726b20696e2070726f67726573732e2fe2809d":0
|
||||
|
||||
ChaCha20+Poly1305 RFC 7539 Test Vector #1 Unauthentic (1st bit flipped)
|
||||
depends_on:MBEDTLS_CHACHAPOLY_C
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_CHACHA20_POLY1305:"1c9240a5eb55d38af333888604f6b5f0473917c1402b80099dca5cbc207075c0":"000000000102030405060708":"f33388860000000000004e91":"64a0861575861af460f062c79be643bd5e805cfd345cf389f108670ac76c8cb24c6cfc18755d43eea09ee94e382d26b0bdb7b73c321b0100d4f03b7f355894cf332f830e710b97ce98c8a84abd0b948114ad176e008d33bd60f982b1ff37c8559797a06ef4f0ef61c186324e2b3506383606907b6a7c02b0f9f6157b53c867e4b9166c767b804d46a59b5216cde7a4e99040c5a40433225ee282a1b0a06c523eaf4534d7f83fa1155b0047718cbc546a0d072b04b3564eea1b422273f548271a0bb2316053fa76991955ebd63159434ecebb4e466dae5a1073a6727627097a1049e617d91d361094fa68f0ff77987130305beaba2eda04df997b714d6c6f2c29a6ad5cb4022b02709b":"6ead9d67890cbb22392336fea1851f38":"FAIL":"":0
|
||||
|
||||
Chacha20+Poly1305 RFC 7539 Test Vector #1 (streaming)
|
||||
depends_on:MBEDTLS_CHACHAPOLY_C
|
||||
decrypt_test_vec:MBEDTLS_CIPHER_CHACHA20_POLY1305:-1:"1c9240a5eb55d38af333888604f6b5f0473917c1402b80099dca5cbc207075c0":"000000000102030405060708":"64a0861575861af460f062c79be643bd5e805cfd345cf389f108670ac76c8cb24c6cfc18755d43eea09ee94e382d26b0bdb7b73c321b0100d4f03b7f355894cf332f830e710b97ce98c8a84abd0b948114ad176e008d33bd60f982b1ff37c8559797a06ef4f0ef61c186324e2b3506383606907b6a7c02b0f9f6157b53c867e4b9166c767b804d46a59b5216cde7a4e99040c5a40433225ee282a1b0a06c523eaf4534d7f83fa1155b0047718cbc546a0d072b04b3564eea1b422273f548271a0bb2316053fa76991955ebd63159434ecebb4e466dae5a1073a6727627097a1049e617d91d361094fa68f0ff77987130305beaba2eda04df997b714d6c6f2c29a6ad5cb4022b02709b":"496e7465726e65742d4472616674732061726520647261667420646f63756d656e74732076616c696420666f722061206d6178696d756d206f6620736978206d6f6e74687320616e64206d617920626520757064617465642c207265706c616365642c206f72206f62736f6c65746564206279206f7468657220646f63756d656e747320617420616e792074696d652e20497420697320696e617070726f70726961746520746f2075736520496e7465726e65742d447261667473206173207265666572656e6365206d6174657269616c206f7220746f2063697465207468656d206f74686572207468616e206173202fe2809c776f726b20696e2070726f67726573732e2fe2809d":"f33388860000000000004e91":"eead9d67890cbb22392336fea1851f38":0:0
|
||||
|
||||
ChaCha20+Poly1305 IV Length 0
|
||||
depends_on:MBEDTLS_CHACHAPOLY_C
|
||||
iv_len_validity:MBEDTLS_CIPHER_CHACHA20_POLY1305:"CHACHA20-POLY1305":0:MBEDTLS_ERR_CIPHER_BAD_INPUT_DATA
|
||||
|
||||
ChaCha20+Poly1305 IV Length 11
|
||||
depends_on:MBEDTLS_CHACHAPOLY_C
|
||||
iv_len_validity:MBEDTLS_CIPHER_CHACHA20_POLY1305:"CHACHA20-POLY1305":11:MBEDTLS_ERR_CIPHER_BAD_INPUT_DATA
|
||||
|
||||
ChaCha20+Poly1305 IV Length 12
|
||||
depends_on:MBEDTLS_CHACHAPOLY_C
|
||||
iv_len_validity:MBEDTLS_CIPHER_CHACHA20_POLY1305:"CHACHA20-POLY1305":12:0
|
||||
|
||||
ChaCha20+Poly1305 IV Length 13
|
||||
depends_on:MBEDTLS_CHACHAPOLY_C
|
||||
iv_len_validity:MBEDTLS_CIPHER_CHACHA20_POLY1305:"CHACHA20-POLY1305":13:MBEDTLS_ERR_CIPHER_BAD_INPUT_DATA
|
||||
|
||||
ChaCha20+Poly1305 IV Length 16
|
||||
depends_on:MBEDTLS_CHACHAPOLY_C
|
||||
iv_len_validity:MBEDTLS_CIPHER_CHACHA20_POLY1305:"CHACHA20-POLY1305":16:MBEDTLS_ERR_CIPHER_BAD_INPUT_DATA
|
||||
255
vendor/mbedtls/tests/suites/test_suite_cipher.constant_time.data
vendored
Normal file
255
vendor/mbedtls/tests/suites/test_suite_cipher.constant_time.data
vendored
Normal file
@@ -0,0 +1,255 @@
|
||||
Constant-time PKCS7 padding, valid #1
|
||||
get_pkcs_padding:"00112233445566778899AABBCCDDEE01":0:15
|
||||
|
||||
Constant-time PKCS7 padding, valid #2
|
||||
get_pkcs_padding:"00112233445566778899AA0505050505":0:11
|
||||
|
||||
Constant-time PKCS7 padding, valid #3
|
||||
get_pkcs_padding:"10101010101010101010101010101010":0:0
|
||||
|
||||
Constant-time PKCS7 padding, invalid zero
|
||||
get_pkcs_padding:"00112233445566778899AABBCCDDEE00":MBEDTLS_ERR_CIPHER_INVALID_PADDING:0
|
||||
|
||||
Constant-time PKCS7 padding, invalid > 16
|
||||
get_pkcs_padding:"00112233445566778899AABBCCDDEE11":MBEDTLS_ERR_CIPHER_INVALID_PADDING:0
|
||||
|
||||
CF AES-128-CBC Decrypt with finish_padded, no padding
|
||||
depends_on:MBEDTLS_AES_C:MBEDTLS_CIPHER_MODE_CBC:HAVE_CONSTANT_TIME_AES
|
||||
decrypt_padded_test_vec_cf:MBEDTLS_CIPHER_AES_128_CBC:MBEDTLS_PADDING_NONE:"ffffffffe00000000000000000000000":"00000000000000000000000000000000":"23f710842b9bb9c32f26648c786807ca":"00000000000000000000000000000000":"":"":0:0
|
||||
|
||||
CF AES-192-CBC Decrypt with finish_padded, no padding
|
||||
depends_on:MBEDTLS_AES_C:MBEDTLS_CIPHER_MODE_CBC:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH:HAVE_CONSTANT_TIME_AES
|
||||
decrypt_padded_test_vec_cf:MBEDTLS_CIPHER_AES_192_CBC:MBEDTLS_PADDING_NONE:"000000000000000000000000000000000000000000000000":"00000000000000000000000000000000":"707b1dbb0ffa40ef7d95def421233fae":"fffffffff80000000000000000000000":"":"":0:0
|
||||
|
||||
CF AES-256-CBC Decrypt with finish_padded, no padding
|
||||
depends_on:MBEDTLS_AES_C:MBEDTLS_CIPHER_MODE_CBC:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH:HAVE_CONSTANT_TIME_AES
|
||||
decrypt_padded_test_vec_cf:MBEDTLS_CIPHER_AES_256_CBC:MBEDTLS_PADDING_NONE:"0000000000000000000000000000000000000000000000000000000000000000":"00000000000000000000000000000000":"49af6b372135acef10132e548f217b17":"ff000000000000000000000000000000":"":"":0:0
|
||||
|
||||
CF AES-128-CBC Decrypt with finish_padded, PKCS7 (good pad 1)
|
||||
depends_on:MBEDTLS_AES_C:MBEDTLS_CIPHER_MODE_CBC:MBEDTLS_CIPHER_PADDING_PKCS7:HAVE_CONSTANT_TIME_AES
|
||||
decrypt_padded_test_vec_cf:MBEDTLS_CIPHER_AES_128_CBC:MBEDTLS_PADDING_PKCS7:"ffffffffe00000000000000000000000":"00000000000000000000000000000000":"6dbd04d1579f6a7bee0842b9ae491588":"000000000000000000000000000000":"":"":0:0
|
||||
|
||||
CF AES-192-CBC Decrypt with finish_padded, PKCS7 (good pad 1)
|
||||
depends_on:MBEDTLS_AES_C:MBEDTLS_CIPHER_MODE_CBC:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH:MBEDTLS_CIPHER_PADDING_PKCS7:HAVE_CONSTANT_TIME_AES
|
||||
decrypt_padded_test_vec_cf:MBEDTLS_CIPHER_AES_192_CBC:MBEDTLS_PADDING_PKCS7:"000000000000000000000000000000000000000000000000":"00000000000000000000000000000000":"593ebdf9a785f414cbed5d8a9eee1e4d":"fffffffff800000000000000000000":"":"":0:0
|
||||
|
||||
CF AES-256-CBC Decrypt with finish_padded, PKCS7 (good pad 1)
|
||||
depends_on:MBEDTLS_AES_C:MBEDTLS_CIPHER_MODE_CBC:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH:MBEDTLS_CIPHER_PADDING_PKCS7:HAVE_CONSTANT_TIME_AES
|
||||
decrypt_padded_test_vec_cf:MBEDTLS_CIPHER_AES_256_CBC:MBEDTLS_PADDING_PKCS7:"0000000000000000000000000000000000000000000000000000000000000000":"00000000000000000000000000000000":"f1b27ac78b93f6b0ab9787d8827176e6":"ff0000000000000000000000000000":"":"":0:0
|
||||
|
||||
CF AES-128-CBC Decrypt with finish_padded, PKCS7 (good pad 2)
|
||||
depends_on:MBEDTLS_AES_C:MBEDTLS_CIPHER_MODE_CBC:MBEDTLS_CIPHER_PADDING_PKCS7:HAVE_CONSTANT_TIME_AES
|
||||
decrypt_padded_test_vec_cf:MBEDTLS_CIPHER_AES_128_CBC:MBEDTLS_PADDING_PKCS7:"ffffffffe00000000000000000000000":"00000000000000000000000000000000":"175334ced3166a22437861f4bcced178":"0000000000000000000000000000":"":"":0:0
|
||||
|
||||
CF AES-192-CBC Decrypt with finish_padded, PKCS7 (good pad 2)
|
||||
depends_on:MBEDTLS_AES_C:MBEDTLS_CIPHER_MODE_CBC:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH:MBEDTLS_CIPHER_PADDING_PKCS7:HAVE_CONSTANT_TIME_AES
|
||||
decrypt_padded_test_vec_cf:MBEDTLS_CIPHER_AES_192_CBC:MBEDTLS_PADDING_PKCS7:"000000000000000000000000000000000000000000000000":"00000000000000000000000000000000":"5d9ee7bc7066e438582c86c165604f2e":"fffffffff8000000000000000000":"":"":0:0
|
||||
|
||||
CF AES-256-CBC Decrypt with finish_padded, PKCS7 (good pad 2)
|
||||
depends_on:MBEDTLS_AES_C:MBEDTLS_CIPHER_MODE_CBC:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH:MBEDTLS_CIPHER_PADDING_PKCS7:HAVE_CONSTANT_TIME_AES
|
||||
decrypt_padded_test_vec_cf:MBEDTLS_CIPHER_AES_256_CBC:MBEDTLS_PADDING_PKCS7:"0000000000000000000000000000000000000000000000000000000000000000":"00000000000000000000000000000000":"cc71abea78b8e82c3791b52d3dba55e2":"ff00000000000000000000000000":"":"":0:0
|
||||
|
||||
CF AES-128-CBC Decrypt with finish_padded, PKCS7 (good pad 15)
|
||||
depends_on:MBEDTLS_AES_C:MBEDTLS_CIPHER_MODE_CBC:MBEDTLS_CIPHER_PADDING_PKCS7:HAVE_CONSTANT_TIME_AES
|
||||
decrypt_padded_test_vec_cf:MBEDTLS_CIPHER_AES_128_CBC:MBEDTLS_PADDING_PKCS7:"ffffffffe00000000000000000000000":"00000000000000000000000000000000":"7d340c60b9067883962c69766cf9ec35":"2a":"":"":0:0
|
||||
|
||||
CF AES-192-CBC Decrypt with finish_padded, PKCS7 (good pad 15)
|
||||
depends_on:MBEDTLS_AES_C:MBEDTLS_CIPHER_MODE_CBC:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH:MBEDTLS_CIPHER_PADDING_PKCS7:HAVE_CONSTANT_TIME_AES
|
||||
decrypt_padded_test_vec_cf:MBEDTLS_CIPHER_AES_192_CBC:MBEDTLS_PADDING_PKCS7:"000000000000000000000000000000000000000000000000":"00000000000000000000000000000000":"48fef8aaa78c4a148f241aaf14866772":"2a":"":"":0:0
|
||||
|
||||
CF AES-256-CBC Decrypt with finish_padded, PKCS7 (good pad 15)
|
||||
depends_on:MBEDTLS_AES_C:MBEDTLS_CIPHER_MODE_CBC:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH:MBEDTLS_CIPHER_PADDING_PKCS7:HAVE_CONSTANT_TIME_AES
|
||||
decrypt_padded_test_vec_cf:MBEDTLS_CIPHER_AES_256_CBC:MBEDTLS_PADDING_PKCS7:"0000000000000000000000000000000000000000000000000000000000000000":"00000000000000000000000000000000":"6ad50ca266a3e32024818f11839afb2f":"2a":"":"":0:0
|
||||
|
||||
CF AES-128-CBC Decrypt with finish_padded, PKCS7 (good pad 16)
|
||||
depends_on:MBEDTLS_AES_C:MBEDTLS_CIPHER_MODE_CBC:MBEDTLS_CIPHER_PADDING_PKCS7:HAVE_CONSTANT_TIME_AES
|
||||
decrypt_padded_test_vec_cf:MBEDTLS_CIPHER_AES_128_CBC:MBEDTLS_PADDING_PKCS7:"ffffffffe00000000000000000000000":"00000000000000000000000000000000":"e9844992c4b55bcaf8199d5df842adad":"":"":"":0:0
|
||||
|
||||
CF AES-192-CBC Decrypt with finish_padded, PKCS7 (good pad 16)
|
||||
depends_on:MBEDTLS_AES_C:MBEDTLS_CIPHER_MODE_CBC:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH:MBEDTLS_CIPHER_PADDING_PKCS7:HAVE_CONSTANT_TIME_AES
|
||||
decrypt_padded_test_vec_cf:MBEDTLS_CIPHER_AES_192_CBC:MBEDTLS_PADDING_PKCS7:"000000000000000000000000000000000000000000000000":"00000000000000000000000000000000":"02bb292527e726fd51eb29894d6f0aad":"":"":"":0:0
|
||||
|
||||
CF AES-256-CBC Decrypt with finish_padded, PKCS7 (good pad 16)
|
||||
depends_on:MBEDTLS_AES_C:MBEDTLS_CIPHER_MODE_CBC:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH:MBEDTLS_CIPHER_PADDING_PKCS7:HAVE_CONSTANT_TIME_AES
|
||||
decrypt_padded_test_vec_cf:MBEDTLS_CIPHER_AES_256_CBC:MBEDTLS_PADDING_PKCS7:"0000000000000000000000000000000000000000000000000000000000000000":"00000000000000000000000000000000":"1f788fe6d86c317549697fbf0c07fa43":"":"":"":0:0
|
||||
|
||||
CF AES-128-CBC Decrypt with finish_padded, PKCS7 (bad pad 0)
|
||||
depends_on:MBEDTLS_AES_C:MBEDTLS_CIPHER_MODE_CBC:MBEDTLS_CIPHER_PADDING_PKCS7:HAVE_CONSTANT_TIME_AES
|
||||
decrypt_padded_test_vec_cf:MBEDTLS_CIPHER_AES_128_CBC:MBEDTLS_PADDING_PKCS7:"ffffffffe00000000000000000000000":"00000000000000000000000000000000":"23f710842b9bb9c32f26648c786807ca":"":"":"":MBEDTLS_ERR_CIPHER_INVALID_PADDING:0
|
||||
|
||||
CF AES-192-CBC Decrypt with finish_padded, PKCS7 (bad pad 0)
|
||||
depends_on:MBEDTLS_AES_C:MBEDTLS_CIPHER_MODE_CBC:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH:MBEDTLS_CIPHER_PADDING_PKCS7:HAVE_CONSTANT_TIME_AES
|
||||
decrypt_padded_test_vec_cf:MBEDTLS_CIPHER_AES_192_CBC:MBEDTLS_PADDING_PKCS7:"000000000000000000000000000000000000000000000000":"00000000000000000000000000000000":"707b1dbb0ffa40ef7d95def421233fae":"":"":"":MBEDTLS_ERR_CIPHER_INVALID_PADDING:0
|
||||
|
||||
CF AES-256-CBC Decrypt with finish_padded, PKCS7 (bad pad 0)
|
||||
depends_on:MBEDTLS_AES_C:MBEDTLS_CIPHER_MODE_CBC:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH:MBEDTLS_CIPHER_PADDING_PKCS7:HAVE_CONSTANT_TIME_AES
|
||||
decrypt_padded_test_vec_cf:MBEDTLS_CIPHER_AES_256_CBC:MBEDTLS_PADDING_PKCS7:"0000000000000000000000000000000000000000000000000000000000000000":"00000000000000000000000000000000":"49af6b372135acef10132e548f217b17":"":"":"":MBEDTLS_ERR_CIPHER_INVALID_PADDING:0
|
||||
|
||||
CF AES-128-CBC Decrypt with finish_padded, PKCS7 (bad pad 0102)
|
||||
depends_on:MBEDTLS_AES_C:MBEDTLS_CIPHER_MODE_CBC:MBEDTLS_CIPHER_PADDING_PKCS7:HAVE_CONSTANT_TIME_AES
|
||||
decrypt_padded_test_vec_cf:MBEDTLS_CIPHER_AES_128_CBC:MBEDTLS_PADDING_PKCS7:"ffffffffe00000000000000000000000":"00000000000000000000000000000000":"e651289760d35177eade56eae724f8fd":"":"":"":MBEDTLS_ERR_CIPHER_INVALID_PADDING:0
|
||||
|
||||
CF AES-192-CBC Decrypt with finish_padded, PKCS7 (bad pad 0102)
|
||||
depends_on:MBEDTLS_AES_C:MBEDTLS_CIPHER_MODE_CBC:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH:MBEDTLS_CIPHER_PADDING_PKCS7:HAVE_CONSTANT_TIME_AES
|
||||
decrypt_padded_test_vec_cf:MBEDTLS_CIPHER_AES_192_CBC:MBEDTLS_PADDING_PKCS7:"000000000000000000000000000000000000000000000000":"00000000000000000000000000000000":"f5b599490354e71a3b3fb5f1419fb971":"":"":"":MBEDTLS_ERR_CIPHER_INVALID_PADDING:0
|
||||
|
||||
CF AES-256-CBC Decrypt with finish_padded, PKCS7 (bad pad 0102)
|
||||
depends_on:MBEDTLS_AES_C:MBEDTLS_CIPHER_MODE_CBC:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH:MBEDTLS_CIPHER_PADDING_PKCS7:HAVE_CONSTANT_TIME_AES
|
||||
decrypt_padded_test_vec_cf:MBEDTLS_CIPHER_AES_256_CBC:MBEDTLS_PADDING_PKCS7:"0000000000000000000000000000000000000000000000000000000000000000":"00000000000000000000000000000000":"6852d318a0884a289a725c558e761e25":"":"":"":MBEDTLS_ERR_CIPHER_INVALID_PADDING:0
|
||||
|
||||
CF AES-128-CBC Decrypt with finish_padded, PKCS7 (long, bad pad 17)
|
||||
depends_on:MBEDTLS_AES_C:MBEDTLS_CIPHER_MODE_CBC:MBEDTLS_CIPHER_PADDING_PKCS7:HAVE_CONSTANT_TIME_AES
|
||||
decrypt_padded_test_vec_cf:MBEDTLS_CIPHER_AES_128_CBC:MBEDTLS_PADDING_PKCS7:"ffffffffe00000000000000000000000":"00000000000000000000000000000000":"9c336551cc31074ffcefc161bac686b7afa572c3b53bd14a1b98d201229ddd03":"":"":"":MBEDTLS_ERR_CIPHER_INVALID_PADDING:0
|
||||
|
||||
CF AES-192-CBC Decrypt with finish_padded, PKCS7 (long, bad pad 17)
|
||||
depends_on:MBEDTLS_AES_C:MBEDTLS_CIPHER_MODE_CBC:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH:MBEDTLS_CIPHER_PADDING_PKCS7:HAVE_CONSTANT_TIME_AES
|
||||
decrypt_padded_test_vec_cf:MBEDTLS_CIPHER_AES_192_CBC:MBEDTLS_PADDING_PKCS7:"000000000000000000000000000000000000000000000000":"00000000000000000000000000000000":"33a31ec7605c85893872a467777f3ddb5c4271870e51a0c618f20a0efccc2bfc":"":"":"":MBEDTLS_ERR_CIPHER_INVALID_PADDING:0
|
||||
|
||||
CF AES-256-CBC Decrypt with finish_padded, PKCS7 (long, bad pad 17)
|
||||
depends_on:MBEDTLS_AES_C:MBEDTLS_CIPHER_MODE_CBC:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH:MBEDTLS_CIPHER_PADDING_PKCS7:HAVE_CONSTANT_TIME_AES
|
||||
decrypt_padded_test_vec_cf:MBEDTLS_CIPHER_AES_256_CBC:MBEDTLS_PADDING_PKCS7:"0000000000000000000000000000000000000000000000000000000000000000":"00000000000000000000000000000000":"3e536c7917a695485ef046bda7c6a3e64f439d87aa0deb338029253bea0ba54f":"":"":"":MBEDTLS_ERR_CIPHER_INVALID_PADDING:0
|
||||
|
||||
CF AES-128-CBC Decrypt with finish_padded, PKCS7 (short, bad pad 17)
|
||||
depends_on:MBEDTLS_AES_C:MBEDTLS_CIPHER_MODE_CBC:MBEDTLS_CIPHER_PADDING_PKCS7:HAVE_CONSTANT_TIME_AES
|
||||
decrypt_padded_test_vec_cf:MBEDTLS_CIPHER_AES_128_CBC:MBEDTLS_PADDING_PKCS7:"ffffffffe00000000000000000000000":"00000000000000000000000000000000":"9c336551cc31074ffcefc161bac686b7":"":"":"":MBEDTLS_ERR_CIPHER_INVALID_PADDING:0
|
||||
|
||||
CF AES-192-CBC Decrypt with finish_padded, PKCS7 (short, bad pad 17)
|
||||
depends_on:MBEDTLS_AES_C:MBEDTLS_CIPHER_MODE_CBC:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH:MBEDTLS_CIPHER_PADDING_PKCS7:HAVE_CONSTANT_TIME_AES
|
||||
decrypt_padded_test_vec_cf:MBEDTLS_CIPHER_AES_192_CBC:MBEDTLS_PADDING_PKCS7:"000000000000000000000000000000000000000000000000":"00000000000000000000000000000000":"33a31ec7605c85893872a467777f3ddb":"":"":"":MBEDTLS_ERR_CIPHER_INVALID_PADDING:0
|
||||
|
||||
CF AES-256-CBC Decrypt with finish_padded, PKCS7 (short, bad pad 17)
|
||||
depends_on:MBEDTLS_AES_C:MBEDTLS_CIPHER_MODE_CBC:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH:MBEDTLS_CIPHER_PADDING_PKCS7:HAVE_CONSTANT_TIME_AES
|
||||
decrypt_padded_test_vec_cf:MBEDTLS_CIPHER_AES_256_CBC:MBEDTLS_PADDING_PKCS7:"0000000000000000000000000000000000000000000000000000000000000000":"00000000000000000000000000000000":"3e536c7917a695485ef046bda7c6a3e6":"":"":"":MBEDTLS_ERR_CIPHER_INVALID_PADDING:0
|
||||
|
||||
CF AES-128-CBC Decrypt test vector, no padding
|
||||
depends_on:MBEDTLS_AES_C:MBEDTLS_CIPHER_MODE_CBC:HAVE_CONSTANT_TIME_AES
|
||||
decrypt_test_vec_cf:MBEDTLS_CIPHER_AES_128_CBC:MBEDTLS_PADDING_NONE:"ffffffffe00000000000000000000000":"00000000000000000000000000000000":"23f710842b9bb9c32f26648c786807ca":"00000000000000000000000000000000":"":"":0:0
|
||||
|
||||
CF AES-192-CBC Decrypt test vector, no padding
|
||||
depends_on:MBEDTLS_AES_C:MBEDTLS_CIPHER_MODE_CBC:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH:HAVE_CONSTANT_TIME_AES
|
||||
decrypt_test_vec_cf:MBEDTLS_CIPHER_AES_192_CBC:MBEDTLS_PADDING_NONE:"000000000000000000000000000000000000000000000000":"00000000000000000000000000000000":"707b1dbb0ffa40ef7d95def421233fae":"fffffffff80000000000000000000000":"":"":0:0
|
||||
|
||||
CF AES-256-CBC Decrypt test vector, no padding
|
||||
depends_on:MBEDTLS_AES_C:MBEDTLS_CIPHER_MODE_CBC:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH:HAVE_CONSTANT_TIME_AES
|
||||
decrypt_test_vec_cf:MBEDTLS_CIPHER_AES_256_CBC:MBEDTLS_PADDING_NONE:"0000000000000000000000000000000000000000000000000000000000000000":"00000000000000000000000000000000":"49af6b372135acef10132e548f217b17":"ff000000000000000000000000000000":"":"":0:0
|
||||
|
||||
CF AES-128-CBC Decrypt test vector, PKCS7 (good pad 1)
|
||||
depends_on:MBEDTLS_AES_C:MBEDTLS_CIPHER_MODE_CBC:MBEDTLS_CIPHER_PADDING_PKCS7:HAVE_CONSTANT_TIME_AES
|
||||
decrypt_test_vec_cf:MBEDTLS_CIPHER_AES_128_CBC:MBEDTLS_PADDING_PKCS7:"ffffffffe00000000000000000000000":"00000000000000000000000000000000":"6dbd04d1579f6a7bee0842b9ae491588":"000000000000000000000000000000":"":"":0:0
|
||||
|
||||
CF AES-192-CBC Decrypt test vector, PKCS7 (good pad 1)
|
||||
depends_on:MBEDTLS_AES_C:MBEDTLS_CIPHER_MODE_CBC:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH:MBEDTLS_CIPHER_PADDING_PKCS7:HAVE_CONSTANT_TIME_AES
|
||||
decrypt_test_vec_cf:MBEDTLS_CIPHER_AES_192_CBC:MBEDTLS_PADDING_PKCS7:"000000000000000000000000000000000000000000000000":"00000000000000000000000000000000":"593ebdf9a785f414cbed5d8a9eee1e4d":"fffffffff800000000000000000000":"":"":0:0
|
||||
|
||||
CF AES-256-CBC Decrypt test vector, PKCS7 (good pad 1)
|
||||
depends_on:MBEDTLS_AES_C:MBEDTLS_CIPHER_MODE_CBC:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH:MBEDTLS_CIPHER_PADDING_PKCS7:HAVE_CONSTANT_TIME_AES
|
||||
decrypt_test_vec_cf:MBEDTLS_CIPHER_AES_256_CBC:MBEDTLS_PADDING_PKCS7:"0000000000000000000000000000000000000000000000000000000000000000":"00000000000000000000000000000000":"f1b27ac78b93f6b0ab9787d8827176e6":"ff0000000000000000000000000000":"":"":0:0
|
||||
|
||||
CF AES-128-CBC Decrypt test vector, PKCS7 (good pad 2)
|
||||
depends_on:MBEDTLS_AES_C:MBEDTLS_CIPHER_MODE_CBC:MBEDTLS_CIPHER_PADDING_PKCS7:HAVE_CONSTANT_TIME_AES
|
||||
decrypt_test_vec_cf:MBEDTLS_CIPHER_AES_128_CBC:MBEDTLS_PADDING_PKCS7:"ffffffffe00000000000000000000000":"00000000000000000000000000000000":"175334ced3166a22437861f4bcced178":"0000000000000000000000000000":"":"":0:0
|
||||
|
||||
CF AES-192-CBC Decrypt test vector, PKCS7 (good pad 2)
|
||||
depends_on:MBEDTLS_AES_C:MBEDTLS_CIPHER_MODE_CBC:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH:MBEDTLS_CIPHER_PADDING_PKCS7:HAVE_CONSTANT_TIME_AES
|
||||
decrypt_test_vec_cf:MBEDTLS_CIPHER_AES_192_CBC:MBEDTLS_PADDING_PKCS7:"000000000000000000000000000000000000000000000000":"00000000000000000000000000000000":"5d9ee7bc7066e438582c86c165604f2e":"fffffffff8000000000000000000":"":"":0:0
|
||||
|
||||
CF AES-256-CBC Decrypt test vector, PKCS7 (good pad 2)
|
||||
depends_on:MBEDTLS_AES_C:MBEDTLS_CIPHER_MODE_CBC:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH:MBEDTLS_CIPHER_PADDING_PKCS7:HAVE_CONSTANT_TIME_AES
|
||||
decrypt_test_vec_cf:MBEDTLS_CIPHER_AES_256_CBC:MBEDTLS_PADDING_PKCS7:"0000000000000000000000000000000000000000000000000000000000000000":"00000000000000000000000000000000":"cc71abea78b8e82c3791b52d3dba55e2":"ff00000000000000000000000000":"":"":0:0
|
||||
|
||||
CF AES-128-CBC Decrypt test vector, PKCS7 (good pad 15)
|
||||
depends_on:MBEDTLS_AES_C:MBEDTLS_CIPHER_MODE_CBC:MBEDTLS_CIPHER_PADDING_PKCS7:HAVE_CONSTANT_TIME_AES
|
||||
decrypt_test_vec_cf:MBEDTLS_CIPHER_AES_128_CBC:MBEDTLS_PADDING_PKCS7:"ffffffffe00000000000000000000000":"00000000000000000000000000000000":"7d340c60b9067883962c69766cf9ec35":"2a":"":"":0:0
|
||||
|
||||
CF AES-192-CBC Decrypt test vector, PKCS7 (good pad 15)
|
||||
depends_on:MBEDTLS_AES_C:MBEDTLS_CIPHER_MODE_CBC:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH:MBEDTLS_CIPHER_PADDING_PKCS7:HAVE_CONSTANT_TIME_AES
|
||||
decrypt_test_vec_cf:MBEDTLS_CIPHER_AES_192_CBC:MBEDTLS_PADDING_PKCS7:"000000000000000000000000000000000000000000000000":"00000000000000000000000000000000":"48fef8aaa78c4a148f241aaf14866772":"2a":"":"":0:0
|
||||
|
||||
CF AES-256-CBC Decrypt test vector, PKCS7 (good pad 15)
|
||||
depends_on:MBEDTLS_AES_C:MBEDTLS_CIPHER_MODE_CBC:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH:MBEDTLS_CIPHER_PADDING_PKCS7:HAVE_CONSTANT_TIME_AES
|
||||
decrypt_test_vec_cf:MBEDTLS_CIPHER_AES_256_CBC:MBEDTLS_PADDING_PKCS7:"0000000000000000000000000000000000000000000000000000000000000000":"00000000000000000000000000000000":"6ad50ca266a3e32024818f11839afb2f":"2a":"":"":0:0
|
||||
|
||||
CF AES-128-CBC Decrypt test vector, PKCS7 (good pad 16)
|
||||
depends_on:MBEDTLS_AES_C:MBEDTLS_CIPHER_MODE_CBC:MBEDTLS_CIPHER_PADDING_PKCS7:HAVE_CONSTANT_TIME_AES
|
||||
decrypt_test_vec_cf:MBEDTLS_CIPHER_AES_128_CBC:MBEDTLS_PADDING_PKCS7:"ffffffffe00000000000000000000000":"00000000000000000000000000000000":"e9844992c4b55bcaf8199d5df842adad":"":"":"":0:0
|
||||
|
||||
CF AES-192-CBC Decrypt test vector, PKCS7 (good pad 16)
|
||||
depends_on:MBEDTLS_AES_C:MBEDTLS_CIPHER_MODE_CBC:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH:MBEDTLS_CIPHER_PADDING_PKCS7:HAVE_CONSTANT_TIME_AES
|
||||
decrypt_test_vec_cf:MBEDTLS_CIPHER_AES_192_CBC:MBEDTLS_PADDING_PKCS7:"000000000000000000000000000000000000000000000000":"00000000000000000000000000000000":"02bb292527e726fd51eb29894d6f0aad":"":"":"":0:0
|
||||
|
||||
CF AES-256-CBC Decrypt test vector, PKCS7 (good pad 16)
|
||||
depends_on:MBEDTLS_AES_C:MBEDTLS_CIPHER_MODE_CBC:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH:MBEDTLS_CIPHER_PADDING_PKCS7:HAVE_CONSTANT_TIME_AES
|
||||
decrypt_test_vec_cf:MBEDTLS_CIPHER_AES_256_CBC:MBEDTLS_PADDING_PKCS7:"0000000000000000000000000000000000000000000000000000000000000000":"00000000000000000000000000000000":"1f788fe6d86c317549697fbf0c07fa43":"":"":"":0:0
|
||||
|
||||
CF AES-128-CBC Decrypt test vector, PKCS7 (bad pad 0)
|
||||
depends_on:MBEDTLS_AES_C:MBEDTLS_CIPHER_MODE_CBC:MBEDTLS_CIPHER_PADDING_PKCS7:HAVE_CONSTANT_TIME_AES
|
||||
decrypt_test_vec_cf:MBEDTLS_CIPHER_AES_128_CBC:MBEDTLS_PADDING_PKCS7:"ffffffffe00000000000000000000000":"00000000000000000000000000000000":"23f710842b9bb9c32f26648c786807ca":"":"":"":MBEDTLS_ERR_CIPHER_INVALID_PADDING:0
|
||||
|
||||
CF AES-192-CBC Decrypt test vector, PKCS7 (bad pad 0)
|
||||
depends_on:MBEDTLS_AES_C:MBEDTLS_CIPHER_MODE_CBC:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH:MBEDTLS_CIPHER_PADDING_PKCS7:HAVE_CONSTANT_TIME_AES
|
||||
decrypt_test_vec_cf:MBEDTLS_CIPHER_AES_192_CBC:MBEDTLS_PADDING_PKCS7:"000000000000000000000000000000000000000000000000":"00000000000000000000000000000000":"707b1dbb0ffa40ef7d95def421233fae":"":"":"":MBEDTLS_ERR_CIPHER_INVALID_PADDING:0
|
||||
|
||||
CF AES-256-CBC Decrypt test vector, PKCS7 (bad pad 0)
|
||||
depends_on:MBEDTLS_AES_C:MBEDTLS_CIPHER_MODE_CBC:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH:MBEDTLS_CIPHER_PADDING_PKCS7:HAVE_CONSTANT_TIME_AES
|
||||
decrypt_test_vec_cf:MBEDTLS_CIPHER_AES_256_CBC:MBEDTLS_PADDING_PKCS7:"0000000000000000000000000000000000000000000000000000000000000000":"00000000000000000000000000000000":"49af6b372135acef10132e548f217b17":"":"":"":MBEDTLS_ERR_CIPHER_INVALID_PADDING:0
|
||||
|
||||
CF AES-128-CBC Decrypt test vector, PKCS7 (bad pad 0102)
|
||||
depends_on:MBEDTLS_AES_C:MBEDTLS_CIPHER_MODE_CBC:MBEDTLS_CIPHER_PADDING_PKCS7:HAVE_CONSTANT_TIME_AES
|
||||
decrypt_test_vec_cf:MBEDTLS_CIPHER_AES_128_CBC:MBEDTLS_PADDING_PKCS7:"ffffffffe00000000000000000000000":"00000000000000000000000000000000":"e651289760d35177eade56eae724f8fd":"":"":"":MBEDTLS_ERR_CIPHER_INVALID_PADDING:0
|
||||
|
||||
CF AES-192-CBC Decrypt test vector, PKCS7 (bad pad 0102)
|
||||
depends_on:MBEDTLS_AES_C:MBEDTLS_CIPHER_MODE_CBC:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH:MBEDTLS_CIPHER_PADDING_PKCS7:HAVE_CONSTANT_TIME_AES
|
||||
decrypt_test_vec_cf:MBEDTLS_CIPHER_AES_192_CBC:MBEDTLS_PADDING_PKCS7:"000000000000000000000000000000000000000000000000":"00000000000000000000000000000000":"f5b599490354e71a3b3fb5f1419fb971":"":"":"":MBEDTLS_ERR_CIPHER_INVALID_PADDING:0
|
||||
|
||||
CF AES-256-CBC Decrypt test vector, PKCS7 (bad pad 0102)
|
||||
depends_on:MBEDTLS_AES_C:MBEDTLS_CIPHER_MODE_CBC:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH:MBEDTLS_CIPHER_PADDING_PKCS7:HAVE_CONSTANT_TIME_AES
|
||||
decrypt_test_vec_cf:MBEDTLS_CIPHER_AES_256_CBC:MBEDTLS_PADDING_PKCS7:"0000000000000000000000000000000000000000000000000000000000000000":"00000000000000000000000000000000":"6852d318a0884a289a725c558e761e25":"":"":"":MBEDTLS_ERR_CIPHER_INVALID_PADDING:0
|
||||
|
||||
CF AES-128-CBC Decrypt test vector, PKCS7 (long, bad pad 17)
|
||||
depends_on:MBEDTLS_AES_C:MBEDTLS_CIPHER_MODE_CBC:MBEDTLS_CIPHER_PADDING_PKCS7:HAVE_CONSTANT_TIME_AES
|
||||
decrypt_test_vec_cf:MBEDTLS_CIPHER_AES_128_CBC:MBEDTLS_PADDING_PKCS7:"ffffffffe00000000000000000000000":"00000000000000000000000000000000":"9c336551cc31074ffcefc161bac686b7afa572c3b53bd14a1b98d201229ddd03":"":"":"":MBEDTLS_ERR_CIPHER_INVALID_PADDING:0
|
||||
|
||||
CF AES-192-CBC Decrypt test vector, PKCS7 (long, bad pad 17)
|
||||
depends_on:MBEDTLS_AES_C:MBEDTLS_CIPHER_MODE_CBC:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH:MBEDTLS_CIPHER_PADDING_PKCS7:HAVE_CONSTANT_TIME_AES
|
||||
decrypt_test_vec_cf:MBEDTLS_CIPHER_AES_192_CBC:MBEDTLS_PADDING_PKCS7:"000000000000000000000000000000000000000000000000":"00000000000000000000000000000000":"33a31ec7605c85893872a467777f3ddb5c4271870e51a0c618f20a0efccc2bfc":"":"":"":MBEDTLS_ERR_CIPHER_INVALID_PADDING:0
|
||||
|
||||
CF AES-256-CBC Decrypt test vector, PKCS7 (long, bad pad 17)
|
||||
depends_on:MBEDTLS_AES_C:MBEDTLS_CIPHER_MODE_CBC:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH:MBEDTLS_CIPHER_PADDING_PKCS7:HAVE_CONSTANT_TIME_AES
|
||||
decrypt_test_vec_cf:MBEDTLS_CIPHER_AES_256_CBC:MBEDTLS_PADDING_PKCS7:"0000000000000000000000000000000000000000000000000000000000000000":"00000000000000000000000000000000":"3e536c7917a695485ef046bda7c6a3e64f439d87aa0deb338029253bea0ba54f":"":"":"":MBEDTLS_ERR_CIPHER_INVALID_PADDING:0
|
||||
|
||||
CF AES-128-CBC Decrypt test vector, PKCS7 (short, bad pad 17)
|
||||
depends_on:MBEDTLS_AES_C:MBEDTLS_CIPHER_MODE_CBC:MBEDTLS_CIPHER_PADDING_PKCS7:HAVE_CONSTANT_TIME_AES
|
||||
decrypt_test_vec_cf:MBEDTLS_CIPHER_AES_128_CBC:MBEDTLS_PADDING_PKCS7:"ffffffffe00000000000000000000000":"00000000000000000000000000000000":"9c336551cc31074ffcefc161bac686b7":"":"":"":MBEDTLS_ERR_CIPHER_INVALID_PADDING:0
|
||||
|
||||
CF AES-192-CBC Decrypt test vector, PKCS7 (short, bad pad 17)
|
||||
depends_on:MBEDTLS_AES_C:MBEDTLS_CIPHER_MODE_CBC:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH:MBEDTLS_CIPHER_PADDING_PKCS7:HAVE_CONSTANT_TIME_AES
|
||||
decrypt_test_vec_cf:MBEDTLS_CIPHER_AES_192_CBC:MBEDTLS_PADDING_PKCS7:"000000000000000000000000000000000000000000000000":"00000000000000000000000000000000":"33a31ec7605c85893872a467777f3ddb":"":"":"":MBEDTLS_ERR_CIPHER_INVALID_PADDING:0
|
||||
|
||||
CF AES-256-CBC Decrypt test vector, PKCS7 (short, bad pad 17)
|
||||
depends_on:MBEDTLS_AES_C:MBEDTLS_CIPHER_MODE_CBC:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH:MBEDTLS_CIPHER_PADDING_PKCS7:HAVE_CONSTANT_TIME_AES
|
||||
decrypt_test_vec_cf:MBEDTLS_CIPHER_AES_256_CBC:MBEDTLS_PADDING_PKCS7:"0000000000000000000000000000000000000000000000000000000000000000":"00000000000000000000000000000000":"3e536c7917a695485ef046bda7c6a3e6":"":"":"":MBEDTLS_ERR_CIPHER_INVALID_PADDING:0
|
||||
|
||||
CF AES-128-CBC crypt Encrypt NIST KAT #4
|
||||
depends_on:MBEDTLS_AES_C:MBEDTLS_CIPHER_MODE_CBC:HAVE_CONSTANT_TIME_AES
|
||||
test_vec_crypt_cf:MBEDTLS_CIPHER_AES_128_CBC:MBEDTLS_PADDING_NONE:MBEDTLS_ENCRYPT:"00000000000000000000000000000000":"00000000000000000000000000000000":"f34481ec3cc627bacd5dc3fb08f273e6":"0336763e966d92595a567cc9ce537f5e":0:0
|
||||
|
||||
CF AES-128-CBC crypt Decrypt NIST KAT #4
|
||||
depends_on:MBEDTLS_AES_C:MBEDTLS_CIPHER_MODE_CBC:HAVE_CONSTANT_TIME_AES
|
||||
test_vec_crypt_cf:MBEDTLS_CIPHER_AES_128_CBC:MBEDTLS_PADDING_NONE:MBEDTLS_DECRYPT:"00000000000000000000000000000000":"00000000000000000000000000000000":"0336763e966d92595a567cc9ce537f5e":"f34481ec3cc627bacd5dc3fb08f273e6":0:0
|
||||
|
||||
CF AES-128-CBC crypt Decrypt PKCS7 invalid padding
|
||||
depends_on:MBEDTLS_AES_C:MBEDTLS_CIPHER_MODE_CBC:MBEDTLS_CIPHER_PADDING_PKCS7:HAVE_CONSTANT_TIME_AES
|
||||
test_vec_crypt_cf:MBEDTLS_CIPHER_AES_128_CBC:MBEDTLS_PADDING_PKCS7:MBEDTLS_DECRYPT:"00000000000000000000000000000000":"00000000000000000000000000000000":"0336763e966d92595a567cc9ce537f5e":"":MBEDTLS_ERR_CIPHER_INVALID_PADDING:0
|
||||
|
||||
CF AES-128-CBC crypt Encrypt NIST KAT #4 PSA
|
||||
depends_on:MBEDTLS_USE_PSA_CRYPTO:MBEDTLS_TEST_DEPRECATED:PSA_WANT_KEY_TYPE_AES:PSA_WANT_ALG_CBC_NO_PADDING:HAVE_CONSTANT_TIME_AES
|
||||
test_vec_crypt_cf:MBEDTLS_CIPHER_AES_128_CBC:MBEDTLS_PADDING_NONE:MBEDTLS_ENCRYPT:"00000000000000000000000000000000":"00000000000000000000000000000000":"f34481ec3cc627bacd5dc3fb08f273e6":"0336763e966d92595a567cc9ce537f5e":0:1
|
||||
|
||||
CF AES-128-CBC crypt Decrypt NIST KAT #4 PSA
|
||||
depends_on:MBEDTLS_USE_PSA_CRYPTO:MBEDTLS_TEST_DEPRECATED:PSA_WANT_KEY_TYPE_AES:PSA_WANT_ALG_CBC_NO_PADDING:HAVE_CONSTANT_TIME_AES
|
||||
test_vec_crypt_cf:MBEDTLS_CIPHER_AES_128_CBC:MBEDTLS_PADDING_NONE:MBEDTLS_DECRYPT:"00000000000000000000000000000000":"00000000000000000000000000000000":"0336763e966d92595a567cc9ce537f5e":"f34481ec3cc627bacd5dc3fb08f273e6":0:1
|
||||
|
||||
## PSA-backed cipher contexts do not support PKCS7 padding.
|
||||
#CF AES-128-CBC crypt Decrypt PKCS7 invalid padding PSA
|
||||
#depends_on:MBEDTLS_USE_PSA_CRYPTO:MBEDTLS_TEST_DEPRECATED:PSA_WANT_KEY_TYPE_AES:PSA_WANT_ALG_CBC_PKCS7:HAVE_CONSTANT_TIME_AES
|
||||
#test_vec_crypt_cf:MBEDTLS_CIPHER_AES_128_CBC:MBEDTLS_PADDING_PKCS7:MBEDTLS_DECRYPT:"00000000000000000000000000000000":"00000000000000000000000000000000":"0336763e966d92595a567cc9ce537f5e":"":MBEDTLS_ERR_CIPHER_INVALID_PADDING:1
|
||||
623
vendor/mbedtls/tests/suites/test_suite_cipher.des.data
vendored
Normal file
623
vendor/mbedtls/tests/suites/test_suite_cipher.des.data
vendored
Normal file
@@ -0,0 +1,623 @@
|
||||
DES CBC Decrypt empty buffer
|
||||
depends_on:MBEDTLS_DES_C:MBEDTLS_CIPHER_MODE_CBC:MBEDTLS_CIPHER_PADDING_PKCS7
|
||||
dec_empty_buf:MBEDTLS_CIPHER_DES_CBC:0:0
|
||||
|
||||
DES EDE CBC Decrypt empty buffer
|
||||
depends_on:MBEDTLS_DES_C:MBEDTLS_CIPHER_MODE_CBC:MBEDTLS_CIPHER_PADDING_PKCS7
|
||||
dec_empty_buf:MBEDTLS_CIPHER_DES_EDE_CBC:0:0
|
||||
|
||||
DES EDE3 CBC Decrypt empty buffer
|
||||
depends_on:MBEDTLS_DES_C:MBEDTLS_CIPHER_MODE_CBC:MBEDTLS_CIPHER_PADDING_PKCS7
|
||||
dec_empty_buf:MBEDTLS_CIPHER_DES_EDE3_CBC:0:0
|
||||
|
||||
DES Encrypt and decrypt 0 bytes [#1]
|
||||
depends_on:MBEDTLS_DES_C:MBEDTLS_CIPHER_MODE_CBC:MBEDTLS_CIPHER_PADDING_PKCS7
|
||||
enc_dec_buf:MBEDTLS_CIPHER_DES_CBC:"DES-CBC":64:0:MBEDTLS_PADDING_PKCS7
|
||||
|
||||
DES Encrypt and decrypt 1 byte
|
||||
depends_on:MBEDTLS_DES_C:MBEDTLS_CIPHER_MODE_CBC:MBEDTLS_CIPHER_PADDING_PKCS7
|
||||
enc_dec_buf:MBEDTLS_CIPHER_DES_CBC:"DES-CBC":64:1:MBEDTLS_PADDING_PKCS7
|
||||
|
||||
DES Encrypt and decrypt 2 bytes
|
||||
depends_on:MBEDTLS_DES_C:MBEDTLS_CIPHER_MODE_CBC:MBEDTLS_CIPHER_PADDING_PKCS7
|
||||
enc_dec_buf:MBEDTLS_CIPHER_DES_CBC:"DES-CBC":64:2:MBEDTLS_PADDING_PKCS7
|
||||
|
||||
DES Encrypt and decrypt 7 bytes
|
||||
depends_on:MBEDTLS_DES_C:MBEDTLS_CIPHER_MODE_CBC:MBEDTLS_CIPHER_PADDING_PKCS7
|
||||
enc_dec_buf:MBEDTLS_CIPHER_DES_CBC:"DES-CBC":64:7:MBEDTLS_PADDING_PKCS7
|
||||
|
||||
DES Encrypt and decrypt 8 bytes
|
||||
depends_on:MBEDTLS_DES_C:MBEDTLS_CIPHER_MODE_CBC:MBEDTLS_CIPHER_PADDING_PKCS7
|
||||
enc_dec_buf:MBEDTLS_CIPHER_DES_CBC:"DES-CBC":64:8:MBEDTLS_PADDING_PKCS7
|
||||
|
||||
DES Encrypt and decrypt 9 bytes
|
||||
depends_on:MBEDTLS_DES_C:MBEDTLS_CIPHER_MODE_CBC:MBEDTLS_CIPHER_PADDING_PKCS7
|
||||
enc_dec_buf:MBEDTLS_CIPHER_DES_CBC:"DES-CBC":64:9:MBEDTLS_PADDING_PKCS7
|
||||
|
||||
DES Encrypt and decrypt 15 bytes
|
||||
depends_on:MBEDTLS_DES_C:MBEDTLS_CIPHER_MODE_CBC:MBEDTLS_CIPHER_PADDING_PKCS7
|
||||
enc_dec_buf:MBEDTLS_CIPHER_DES_CBC:"DES-CBC":64:15:MBEDTLS_PADDING_PKCS7
|
||||
|
||||
DES Encrypt and decrypt 16 bytes
|
||||
depends_on:MBEDTLS_DES_C:MBEDTLS_CIPHER_MODE_CBC:MBEDTLS_CIPHER_PADDING_PKCS7
|
||||
enc_dec_buf:MBEDTLS_CIPHER_DES_CBC:"DES-CBC":64:16:MBEDTLS_PADDING_PKCS7
|
||||
|
||||
DES Encrypt and decrypt 17 bytes
|
||||
depends_on:MBEDTLS_DES_C:MBEDTLS_CIPHER_MODE_CBC:MBEDTLS_CIPHER_PADDING_PKCS7
|
||||
enc_dec_buf:MBEDTLS_CIPHER_DES_CBC:"DES-CBC":64:17:MBEDTLS_PADDING_PKCS7
|
||||
|
||||
DES Encrypt and decrypt 31 bytes
|
||||
depends_on:MBEDTLS_DES_C:MBEDTLS_CIPHER_MODE_CBC:MBEDTLS_CIPHER_PADDING_PKCS7
|
||||
enc_dec_buf:MBEDTLS_CIPHER_DES_CBC:"DES-CBC":64:31:MBEDTLS_PADDING_PKCS7
|
||||
|
||||
DES Encrypt and decrypt 32 bytes [#1]
|
||||
depends_on:MBEDTLS_DES_C:MBEDTLS_CIPHER_MODE_CBC:MBEDTLS_CIPHER_PADDING_PKCS7
|
||||
enc_dec_buf:MBEDTLS_CIPHER_DES_CBC:"DES-CBC":64:32:MBEDTLS_PADDING_PKCS7
|
||||
|
||||
DES Encrypt and decrypt 33 bytes [#2]
|
||||
depends_on:MBEDTLS_DES_C:MBEDTLS_CIPHER_MODE_CBC:MBEDTLS_CIPHER_PADDING_PKCS7
|
||||
enc_dec_buf:MBEDTLS_CIPHER_DES_CBC:"DES-CBC":64:33:MBEDTLS_PADDING_PKCS7
|
||||
|
||||
DES Encrypt and decrypt 47 bytes
|
||||
depends_on:MBEDTLS_DES_C:MBEDTLS_CIPHER_MODE_CBC:MBEDTLS_CIPHER_PADDING_PKCS7
|
||||
enc_dec_buf:MBEDTLS_CIPHER_DES_CBC:"DES-CBC":64:47:MBEDTLS_PADDING_PKCS7
|
||||
|
||||
DES Encrypt and decrypt 48 bytes
|
||||
depends_on:MBEDTLS_DES_C:MBEDTLS_CIPHER_MODE_CBC:MBEDTLS_CIPHER_PADDING_PKCS7
|
||||
enc_dec_buf:MBEDTLS_CIPHER_DES_CBC:"DES-CBC":64:48:MBEDTLS_PADDING_PKCS7
|
||||
|
||||
DES Encrypt and decrypt 49 bytes
|
||||
depends_on:MBEDTLS_DES_C:MBEDTLS_CIPHER_MODE_CBC:MBEDTLS_CIPHER_PADDING_PKCS7
|
||||
enc_dec_buf:MBEDTLS_CIPHER_DES_CBC:"DES-CBC":64:49:MBEDTLS_PADDING_PKCS7
|
||||
|
||||
DES Encrypt and decrypt 0 bytes with one and zeros padding
|
||||
depends_on:MBEDTLS_DES_C:MBEDTLS_CIPHER_MODE_CBC:MBEDTLS_CIPHER_PADDING_ONE_AND_ZEROS
|
||||
enc_dec_buf:MBEDTLS_CIPHER_DES_CBC:"DES-CBC":64:0:MBEDTLS_PADDING_ONE_AND_ZEROS
|
||||
|
||||
DES Encrypt and decrypt 1 byte with one and zeros padding
|
||||
depends_on:MBEDTLS_DES_C:MBEDTLS_CIPHER_MODE_CBC:MBEDTLS_CIPHER_PADDING_ONE_AND_ZEROS
|
||||
enc_dec_buf:MBEDTLS_CIPHER_DES_CBC:"DES-CBC":64:1:MBEDTLS_PADDING_ONE_AND_ZEROS
|
||||
|
||||
DES Encrypt and decrypt 2 bytes with one and zeros padding
|
||||
depends_on:MBEDTLS_DES_C:MBEDTLS_CIPHER_MODE_CBC:MBEDTLS_CIPHER_PADDING_ONE_AND_ZEROS
|
||||
enc_dec_buf:MBEDTLS_CIPHER_DES_CBC:"DES-CBC":64:2:MBEDTLS_PADDING_ONE_AND_ZEROS
|
||||
|
||||
DES Encrypt and decrypt 7 bytes with one and zeros padding
|
||||
depends_on:MBEDTLS_DES_C:MBEDTLS_CIPHER_MODE_CBC:MBEDTLS_CIPHER_PADDING_ONE_AND_ZEROS
|
||||
enc_dec_buf:MBEDTLS_CIPHER_DES_CBC:"DES-CBC":64:7:MBEDTLS_PADDING_ONE_AND_ZEROS
|
||||
|
||||
DES Encrypt and decrypt 8 bytes with one and zeros padding
|
||||
depends_on:MBEDTLS_DES_C:MBEDTLS_CIPHER_MODE_CBC:MBEDTLS_CIPHER_PADDING_ONE_AND_ZEROS
|
||||
enc_dec_buf:MBEDTLS_CIPHER_DES_CBC:"DES-CBC":64:8:MBEDTLS_PADDING_ONE_AND_ZEROS
|
||||
|
||||
DES Encrypt and decrypt 9 bytes with one and zeros padding
|
||||
depends_on:MBEDTLS_DES_C:MBEDTLS_CIPHER_MODE_CBC:MBEDTLS_CIPHER_PADDING_ONE_AND_ZEROS
|
||||
enc_dec_buf:MBEDTLS_CIPHER_DES_CBC:"DES-CBC":64:9:MBEDTLS_PADDING_ONE_AND_ZEROS
|
||||
|
||||
DES Encrypt and decrypt 15 bytes with one and zeros padding
|
||||
depends_on:MBEDTLS_DES_C:MBEDTLS_CIPHER_MODE_CBC:MBEDTLS_CIPHER_PADDING_ONE_AND_ZEROS
|
||||
enc_dec_buf:MBEDTLS_CIPHER_DES_CBC:"DES-CBC":64:15:MBEDTLS_PADDING_ONE_AND_ZEROS
|
||||
|
||||
DES Encrypt and decrypt 16 bytes with one and zeros padding
|
||||
depends_on:MBEDTLS_DES_C:MBEDTLS_CIPHER_MODE_CBC:MBEDTLS_CIPHER_PADDING_ONE_AND_ZEROS
|
||||
enc_dec_buf:MBEDTLS_CIPHER_DES_CBC:"DES-CBC":64:16:MBEDTLS_PADDING_ONE_AND_ZEROS
|
||||
|
||||
DES Encrypt and decrypt 17 bytes with one and zeros padding
|
||||
depends_on:MBEDTLS_DES_C:MBEDTLS_CIPHER_MODE_CBC:MBEDTLS_CIPHER_PADDING_ONE_AND_ZEROS
|
||||
enc_dec_buf:MBEDTLS_CIPHER_DES_CBC:"DES-CBC":64:17:MBEDTLS_PADDING_ONE_AND_ZEROS
|
||||
|
||||
DES Encrypt and decrypt 31 bytes with one and zeros padding
|
||||
depends_on:MBEDTLS_DES_C:MBEDTLS_CIPHER_MODE_CBC:MBEDTLS_CIPHER_PADDING_ONE_AND_ZEROS
|
||||
enc_dec_buf:MBEDTLS_CIPHER_DES_CBC:"DES-CBC":64:31:MBEDTLS_PADDING_ONE_AND_ZEROS
|
||||
|
||||
DES Encrypt and decrypt 32 bytes with one and zeros padding [#1]
|
||||
depends_on:MBEDTLS_DES_C:MBEDTLS_CIPHER_MODE_CBC:MBEDTLS_CIPHER_PADDING_ONE_AND_ZEROS
|
||||
enc_dec_buf:MBEDTLS_CIPHER_DES_CBC:"DES-CBC":64:32:MBEDTLS_PADDING_ONE_AND_ZEROS
|
||||
|
||||
DES Encrypt and decrypt 32 bytes with one and zeros padding [#2]
|
||||
depends_on:MBEDTLS_DES_C:MBEDTLS_CIPHER_MODE_CBC:MBEDTLS_CIPHER_PADDING_ONE_AND_ZEROS
|
||||
enc_dec_buf:MBEDTLS_CIPHER_DES_CBC:"DES-CBC":64:33:MBEDTLS_PADDING_ONE_AND_ZEROS
|
||||
|
||||
DES Encrypt and decrypt 47 bytes with one and zeros padding
|
||||
depends_on:MBEDTLS_DES_C:MBEDTLS_CIPHER_MODE_CBC:MBEDTLS_CIPHER_PADDING_ONE_AND_ZEROS
|
||||
enc_dec_buf:MBEDTLS_CIPHER_DES_CBC:"DES-CBC":64:47:MBEDTLS_PADDING_ONE_AND_ZEROS
|
||||
|
||||
DES Encrypt and decrypt 48 bytes with one and zeros padding
|
||||
depends_on:MBEDTLS_DES_C:MBEDTLS_CIPHER_MODE_CBC:MBEDTLS_CIPHER_PADDING_ONE_AND_ZEROS
|
||||
enc_dec_buf:MBEDTLS_CIPHER_DES_CBC:"DES-CBC":64:48:MBEDTLS_PADDING_ONE_AND_ZEROS
|
||||
|
||||
DES Encrypt and decrypt 49 bytes with one and zeros padding
|
||||
depends_on:MBEDTLS_DES_C:MBEDTLS_CIPHER_MODE_CBC:MBEDTLS_CIPHER_PADDING_ONE_AND_ZEROS
|
||||
enc_dec_buf:MBEDTLS_CIPHER_DES_CBC:"DES-CBC":64:49:MBEDTLS_PADDING_ONE_AND_ZEROS
|
||||
|
||||
DES Encrypt and decrypt 0 bytes with zeros and len padding
|
||||
depends_on:MBEDTLS_DES_C:MBEDTLS_CIPHER_MODE_CBC:MBEDTLS_CIPHER_PADDING_ZEROS_AND_LEN
|
||||
enc_dec_buf:MBEDTLS_CIPHER_DES_CBC:"DES-CBC":64:0:MBEDTLS_PADDING_ZEROS_AND_LEN
|
||||
|
||||
DES Encrypt and decrypt 1 byte with zeros and len padding
|
||||
depends_on:MBEDTLS_DES_C:MBEDTLS_CIPHER_MODE_CBC:MBEDTLS_CIPHER_PADDING_ZEROS_AND_LEN
|
||||
enc_dec_buf:MBEDTLS_CIPHER_DES_CBC:"DES-CBC":64:1:MBEDTLS_PADDING_ZEROS_AND_LEN
|
||||
|
||||
DES Encrypt and decrypt 2 bytes with zeros and len padding
|
||||
depends_on:MBEDTLS_DES_C:MBEDTLS_CIPHER_MODE_CBC:MBEDTLS_CIPHER_PADDING_ZEROS_AND_LEN
|
||||
enc_dec_buf:MBEDTLS_CIPHER_DES_CBC:"DES-CBC":64:2:MBEDTLS_PADDING_ZEROS_AND_LEN
|
||||
|
||||
DES Encrypt and decrypt 7 bytes with zeros and len padding
|
||||
depends_on:MBEDTLS_DES_C:MBEDTLS_CIPHER_MODE_CBC:MBEDTLS_CIPHER_PADDING_ZEROS_AND_LEN
|
||||
enc_dec_buf:MBEDTLS_CIPHER_DES_CBC:"DES-CBC":64:7:MBEDTLS_PADDING_ZEROS_AND_LEN
|
||||
|
||||
DES Encrypt and decrypt 8 bytes with zeros and len padding
|
||||
depends_on:MBEDTLS_DES_C:MBEDTLS_CIPHER_MODE_CBC:MBEDTLS_CIPHER_PADDING_ZEROS_AND_LEN
|
||||
enc_dec_buf:MBEDTLS_CIPHER_DES_CBC:"DES-CBC":64:8:MBEDTLS_PADDING_ZEROS_AND_LEN
|
||||
|
||||
DES Encrypt and decrypt 9 bytes with zeros and len padding
|
||||
depends_on:MBEDTLS_DES_C:MBEDTLS_CIPHER_MODE_CBC:MBEDTLS_CIPHER_PADDING_ZEROS_AND_LEN
|
||||
enc_dec_buf:MBEDTLS_CIPHER_DES_CBC:"DES-CBC":64:9:MBEDTLS_PADDING_ZEROS_AND_LEN
|
||||
|
||||
DES Encrypt and decrypt 15 bytes with zeros and len padding
|
||||
depends_on:MBEDTLS_DES_C:MBEDTLS_CIPHER_MODE_CBC:MBEDTLS_CIPHER_PADDING_ZEROS_AND_LEN
|
||||
enc_dec_buf:MBEDTLS_CIPHER_DES_CBC:"DES-CBC":64:15:MBEDTLS_PADDING_ZEROS_AND_LEN
|
||||
|
||||
DES Encrypt and decrypt 16 bytes with zeros and len padding
|
||||
depends_on:MBEDTLS_DES_C:MBEDTLS_CIPHER_MODE_CBC:MBEDTLS_CIPHER_PADDING_ZEROS_AND_LEN
|
||||
enc_dec_buf:MBEDTLS_CIPHER_DES_CBC:"DES-CBC":64:16:MBEDTLS_PADDING_ZEROS_AND_LEN
|
||||
|
||||
DES Encrypt and decrypt 17 bytes with zeros and len padding
|
||||
depends_on:MBEDTLS_DES_C:MBEDTLS_CIPHER_MODE_CBC:MBEDTLS_CIPHER_PADDING_ZEROS_AND_LEN
|
||||
enc_dec_buf:MBEDTLS_CIPHER_DES_CBC:"DES-CBC":64:17:MBEDTLS_PADDING_ZEROS_AND_LEN
|
||||
|
||||
DES Encrypt and decrypt 31 bytes with zeros and len padding
|
||||
depends_on:MBEDTLS_DES_C:MBEDTLS_CIPHER_MODE_CBC:MBEDTLS_CIPHER_PADDING_ZEROS_AND_LEN
|
||||
enc_dec_buf:MBEDTLS_CIPHER_DES_CBC:"DES-CBC":64:31:MBEDTLS_PADDING_ZEROS_AND_LEN
|
||||
|
||||
DES Encrypt and decrypt 32 bytes with zeros and len padding [#1]
|
||||
depends_on:MBEDTLS_DES_C:MBEDTLS_CIPHER_MODE_CBC:MBEDTLS_CIPHER_PADDING_ZEROS_AND_LEN
|
||||
enc_dec_buf:MBEDTLS_CIPHER_DES_CBC:"DES-CBC":64:32:MBEDTLS_PADDING_ZEROS_AND_LEN
|
||||
|
||||
DES Encrypt and decrypt 32 bytes with zeros and len padding [#2]
|
||||
depends_on:MBEDTLS_DES_C:MBEDTLS_CIPHER_MODE_CBC:MBEDTLS_CIPHER_PADDING_ZEROS_AND_LEN
|
||||
enc_dec_buf:MBEDTLS_CIPHER_DES_CBC:"DES-CBC":64:33:MBEDTLS_PADDING_ZEROS_AND_LEN
|
||||
|
||||
DES Encrypt and decrypt 47 bytes with zeros and len padding
|
||||
depends_on:MBEDTLS_DES_C:MBEDTLS_CIPHER_MODE_CBC:MBEDTLS_CIPHER_PADDING_ZEROS_AND_LEN
|
||||
enc_dec_buf:MBEDTLS_CIPHER_DES_CBC:"DES-CBC":64:47:MBEDTLS_PADDING_ZEROS_AND_LEN
|
||||
|
||||
DES Encrypt and decrypt 48 bytes with zeros and len padding
|
||||
depends_on:MBEDTLS_DES_C:MBEDTLS_CIPHER_MODE_CBC:MBEDTLS_CIPHER_PADDING_ZEROS_AND_LEN
|
||||
enc_dec_buf:MBEDTLS_CIPHER_DES_CBC:"DES-CBC":64:48:MBEDTLS_PADDING_ZEROS_AND_LEN
|
||||
|
||||
DES Encrypt and decrypt 49 bytes with zeros and len padding
|
||||
depends_on:MBEDTLS_DES_C:MBEDTLS_CIPHER_MODE_CBC:MBEDTLS_CIPHER_PADDING_ZEROS_AND_LEN
|
||||
enc_dec_buf:MBEDTLS_CIPHER_DES_CBC:"DES-CBC":64:49:MBEDTLS_PADDING_ZEROS_AND_LEN
|
||||
|
||||
DES Encrypt and decrypt 0 bytes with zeros padding
|
||||
depends_on:MBEDTLS_DES_C:MBEDTLS_CIPHER_MODE_CBC:MBEDTLS_CIPHER_PADDING_ZEROS
|
||||
enc_dec_buf:MBEDTLS_CIPHER_DES_CBC:"DES-CBC":64:0:MBEDTLS_PADDING_ZEROS
|
||||
|
||||
DES Encrypt and decrypt 1 byte with zeros padding
|
||||
depends_on:MBEDTLS_DES_C:MBEDTLS_CIPHER_MODE_CBC:MBEDTLS_CIPHER_PADDING_ZEROS
|
||||
enc_dec_buf:MBEDTLS_CIPHER_DES_CBC:"DES-CBC":64:1:MBEDTLS_PADDING_ZEROS
|
||||
|
||||
DES Encrypt and decrypt 2 bytes with zeros padding
|
||||
depends_on:MBEDTLS_DES_C:MBEDTLS_CIPHER_MODE_CBC:MBEDTLS_CIPHER_PADDING_ZEROS
|
||||
enc_dec_buf:MBEDTLS_CIPHER_DES_CBC:"DES-CBC":64:2:MBEDTLS_PADDING_ZEROS
|
||||
|
||||
DES Encrypt and decrypt 7 bytes with zeros padding
|
||||
depends_on:MBEDTLS_DES_C:MBEDTLS_CIPHER_MODE_CBC:MBEDTLS_CIPHER_PADDING_ZEROS
|
||||
enc_dec_buf:MBEDTLS_CIPHER_DES_CBC:"DES-CBC":64:7:MBEDTLS_PADDING_ZEROS
|
||||
|
||||
DES Encrypt and decrypt 8 bytes with zeros padding
|
||||
depends_on:MBEDTLS_DES_C:MBEDTLS_CIPHER_MODE_CBC:MBEDTLS_CIPHER_PADDING_ZEROS
|
||||
enc_dec_buf:MBEDTLS_CIPHER_DES_CBC:"DES-CBC":64:8:MBEDTLS_PADDING_ZEROS
|
||||
|
||||
DES Encrypt and decrypt 9 bytes with zeros padding
|
||||
depends_on:MBEDTLS_DES_C:MBEDTLS_CIPHER_MODE_CBC:MBEDTLS_CIPHER_PADDING_ZEROS
|
||||
enc_dec_buf:MBEDTLS_CIPHER_DES_CBC:"DES-CBC":64:9:MBEDTLS_PADDING_ZEROS
|
||||
|
||||
DES Encrypt and decrypt 15 bytes with zeros padding
|
||||
depends_on:MBEDTLS_DES_C:MBEDTLS_CIPHER_MODE_CBC:MBEDTLS_CIPHER_PADDING_ZEROS
|
||||
enc_dec_buf:MBEDTLS_CIPHER_DES_CBC:"DES-CBC":64:15:MBEDTLS_PADDING_ZEROS
|
||||
|
||||
DES Encrypt and decrypt 16 bytes with zeros padding
|
||||
depends_on:MBEDTLS_DES_C:MBEDTLS_CIPHER_MODE_CBC:MBEDTLS_CIPHER_PADDING_ZEROS
|
||||
enc_dec_buf:MBEDTLS_CIPHER_DES_CBC:"DES-CBC":64:16:MBEDTLS_PADDING_ZEROS
|
||||
|
||||
DES Encrypt and decrypt 17 bytes with zeros padding
|
||||
depends_on:MBEDTLS_DES_C:MBEDTLS_CIPHER_MODE_CBC:MBEDTLS_CIPHER_PADDING_ZEROS
|
||||
enc_dec_buf:MBEDTLS_CIPHER_DES_CBC:"DES-CBC":64:17:MBEDTLS_PADDING_ZEROS
|
||||
|
||||
DES Encrypt and decrypt 31 bytes with zeros padding
|
||||
depends_on:MBEDTLS_DES_C:MBEDTLS_CIPHER_MODE_CBC:MBEDTLS_CIPHER_PADDING_ZEROS
|
||||
enc_dec_buf:MBEDTLS_CIPHER_DES_CBC:"DES-CBC":64:31:MBEDTLS_PADDING_ZEROS
|
||||
|
||||
DES Encrypt and decrypt 32 bytes with zeros padding [#1]
|
||||
depends_on:MBEDTLS_DES_C:MBEDTLS_CIPHER_MODE_CBC:MBEDTLS_CIPHER_PADDING_ZEROS
|
||||
enc_dec_buf:MBEDTLS_CIPHER_DES_CBC:"DES-CBC":64:32:MBEDTLS_PADDING_ZEROS
|
||||
|
||||
DES Encrypt and decrypt 32 bytes with zeros padding [#2]
|
||||
depends_on:MBEDTLS_DES_C:MBEDTLS_CIPHER_MODE_CBC:MBEDTLS_CIPHER_PADDING_ZEROS
|
||||
enc_dec_buf:MBEDTLS_CIPHER_DES_CBC:"DES-CBC":64:33:MBEDTLS_PADDING_ZEROS
|
||||
|
||||
DES Encrypt and decrypt 47 bytes with zeros padding
|
||||
depends_on:MBEDTLS_DES_C:MBEDTLS_CIPHER_MODE_CBC:MBEDTLS_CIPHER_PADDING_ZEROS
|
||||
enc_dec_buf:MBEDTLS_CIPHER_DES_CBC:"DES-CBC":64:47:MBEDTLS_PADDING_ZEROS
|
||||
|
||||
DES Encrypt and decrypt 48 bytes with zeros padding
|
||||
depends_on:MBEDTLS_DES_C:MBEDTLS_CIPHER_MODE_CBC:MBEDTLS_CIPHER_PADDING_ZEROS
|
||||
enc_dec_buf:MBEDTLS_CIPHER_DES_CBC:"DES-CBC":64:48:MBEDTLS_PADDING_ZEROS
|
||||
|
||||
DES Encrypt and decrypt 49 bytes with zeros padding
|
||||
depends_on:MBEDTLS_DES_C:MBEDTLS_CIPHER_MODE_CBC:MBEDTLS_CIPHER_PADDING_ZEROS
|
||||
enc_dec_buf:MBEDTLS_CIPHER_DES_CBC:"DES-CBC":64:49:MBEDTLS_PADDING_ZEROS
|
||||
|
||||
DES Encrypt and decrypt 0 bytes with no padding
|
||||
depends_on:MBEDTLS_DES_C:MBEDTLS_CIPHER_MODE_CBC
|
||||
enc_dec_buf:MBEDTLS_CIPHER_DES_CBC:"DES-CBC":64:0:MBEDTLS_PADDING_NONE
|
||||
|
||||
DES Encrypt and decrypt 8 bytes with no padding
|
||||
depends_on:MBEDTLS_DES_C:MBEDTLS_CIPHER_MODE_CBC
|
||||
enc_dec_buf:MBEDTLS_CIPHER_DES_CBC:"DES-CBC":64:8:MBEDTLS_PADDING_NONE
|
||||
|
||||
DES Encrypt and decrypt 16 bytes with no padding
|
||||
depends_on:MBEDTLS_DES_C:MBEDTLS_CIPHER_MODE_CBC
|
||||
enc_dec_buf:MBEDTLS_CIPHER_DES_CBC:"DES-CBC":64:16:MBEDTLS_PADDING_NONE
|
||||
|
||||
DES Encrypt and decrypt 32 bytes with no padding
|
||||
depends_on:MBEDTLS_DES_C:MBEDTLS_CIPHER_MODE_CBC
|
||||
enc_dec_buf:MBEDTLS_CIPHER_DES_CBC:"DES-CBC":64:32:MBEDTLS_PADDING_NONE
|
||||
|
||||
DES Encrypt and decrypt 48 bytes with no padding
|
||||
depends_on:MBEDTLS_DES_C:MBEDTLS_CIPHER_MODE_CBC
|
||||
enc_dec_buf:MBEDTLS_CIPHER_DES_CBC:"DES-CBC":64:48:MBEDTLS_PADDING_NONE
|
||||
|
||||
DES Try encrypting 1 bytes with no padding
|
||||
depends_on:MBEDTLS_DES_C:MBEDTLS_CIPHER_MODE_CBC
|
||||
enc_fail:MBEDTLS_CIPHER_DES_CBC:MBEDTLS_PADDING_NONE:64:1:MBEDTLS_ERR_CIPHER_FULL_BLOCK_EXPECTED
|
||||
|
||||
DES Try encrypting 2 bytes with no padding
|
||||
depends_on:MBEDTLS_DES_C:MBEDTLS_CIPHER_MODE_CBC
|
||||
enc_fail:MBEDTLS_CIPHER_DES_CBC:MBEDTLS_PADDING_NONE:64:2:MBEDTLS_ERR_CIPHER_FULL_BLOCK_EXPECTED
|
||||
|
||||
DES Try encrypting 7 bytes with no padding
|
||||
depends_on:MBEDTLS_DES_C:MBEDTLS_CIPHER_MODE_CBC
|
||||
enc_fail:MBEDTLS_CIPHER_DES_CBC:MBEDTLS_PADDING_NONE:64:7:MBEDTLS_ERR_CIPHER_FULL_BLOCK_EXPECTED
|
||||
|
||||
DES Try encrypting 9 bytes with no padding
|
||||
depends_on:MBEDTLS_DES_C:MBEDTLS_CIPHER_MODE_CBC
|
||||
enc_fail:MBEDTLS_CIPHER_DES_CBC:MBEDTLS_PADDING_NONE:64:9:MBEDTLS_ERR_CIPHER_FULL_BLOCK_EXPECTED
|
||||
|
||||
DES Try encrypting 15 bytes with no padding
|
||||
depends_on:MBEDTLS_DES_C:MBEDTLS_CIPHER_MODE_CBC
|
||||
enc_fail:MBEDTLS_CIPHER_DES_CBC:MBEDTLS_PADDING_NONE:64:15:MBEDTLS_ERR_CIPHER_FULL_BLOCK_EXPECTED
|
||||
|
||||
DES Try encrypting 17 bytes with no padding
|
||||
depends_on:MBEDTLS_DES_C:MBEDTLS_CIPHER_MODE_CBC
|
||||
enc_fail:MBEDTLS_CIPHER_DES_CBC:MBEDTLS_PADDING_NONE:64:17:MBEDTLS_ERR_CIPHER_FULL_BLOCK_EXPECTED
|
||||
|
||||
DES Try encrypting 31 bytes with no padding
|
||||
depends_on:MBEDTLS_DES_C:MBEDTLS_CIPHER_MODE_CBC
|
||||
enc_fail:MBEDTLS_CIPHER_DES_CBC:MBEDTLS_PADDING_NONE:64:31:MBEDTLS_ERR_CIPHER_FULL_BLOCK_EXPECTED
|
||||
|
||||
DES Try encrypting 33 bytes with no padding
|
||||
depends_on:MBEDTLS_DES_C:MBEDTLS_CIPHER_MODE_CBC
|
||||
enc_fail:MBEDTLS_CIPHER_DES_CBC:MBEDTLS_PADDING_NONE:64:33:MBEDTLS_ERR_CIPHER_FULL_BLOCK_EXPECTED
|
||||
|
||||
DES Try encrypting 47 bytes with no padding
|
||||
depends_on:MBEDTLS_DES_C:MBEDTLS_CIPHER_MODE_CBC
|
||||
enc_fail:MBEDTLS_CIPHER_DES_CBC:MBEDTLS_PADDING_NONE:64:47:MBEDTLS_ERR_CIPHER_FULL_BLOCK_EXPECTED
|
||||
|
||||
DES Try encrypting 49 bytes with no padding
|
||||
depends_on:MBEDTLS_DES_C:MBEDTLS_CIPHER_MODE_CBC
|
||||
enc_fail:MBEDTLS_CIPHER_DES_CBC:MBEDTLS_PADDING_NONE:64:49:MBEDTLS_ERR_CIPHER_FULL_BLOCK_EXPECTED
|
||||
|
||||
DES Encrypt and decrypt 0 bytes in multiple parts
|
||||
depends_on:MBEDTLS_DES_C:MBEDTLS_CIPHER_MODE_CBC:MBEDTLS_CIPHER_PADDING_PKCS7
|
||||
enc_dec_buf_multipart:MBEDTLS_CIPHER_DES_CBC:64:0:0:MBEDTLS_PADDING_PKCS7:0:0:0:0
|
||||
|
||||
DES Encrypt and decrypt 1 bytes in multiple parts 1
|
||||
depends_on:MBEDTLS_DES_C:MBEDTLS_CIPHER_MODE_CBC:MBEDTLS_CIPHER_PADDING_PKCS7
|
||||
enc_dec_buf_multipart:MBEDTLS_CIPHER_DES_CBC:64:1:0:MBEDTLS_PADDING_PKCS7:0:0:0:0
|
||||
|
||||
DES Encrypt and decrypt 1 bytes in multiple parts 2
|
||||
depends_on:MBEDTLS_DES_C:MBEDTLS_CIPHER_MODE_CBC:MBEDTLS_CIPHER_PADDING_PKCS7
|
||||
enc_dec_buf_multipart:MBEDTLS_CIPHER_DES_CBC:64:0:1:MBEDTLS_PADDING_PKCS7:0:0:0:0
|
||||
|
||||
DES Encrypt and decrypt 16 bytes in multiple parts 1
|
||||
depends_on:MBEDTLS_DES_C:MBEDTLS_CIPHER_MODE_CBC:MBEDTLS_CIPHER_PADDING_PKCS7
|
||||
enc_dec_buf_multipart:MBEDTLS_CIPHER_DES_CBC:64:16:0:MBEDTLS_PADDING_PKCS7:16:0:8:8
|
||||
|
||||
DES Encrypt and decrypt 16 bytes in multiple parts 2
|
||||
depends_on:MBEDTLS_DES_C:MBEDTLS_CIPHER_MODE_CBC:MBEDTLS_CIPHER_PADDING_PKCS7
|
||||
enc_dec_buf_multipart:MBEDTLS_CIPHER_DES_CBC:64:0:16:MBEDTLS_PADDING_PKCS7:0:16:0:16
|
||||
|
||||
DES Encrypt and decrypt 16 bytes in multiple parts 3
|
||||
depends_on:MBEDTLS_DES_C:MBEDTLS_CIPHER_MODE_CBC:MBEDTLS_CIPHER_PADDING_PKCS7
|
||||
enc_dec_buf_multipart:MBEDTLS_CIPHER_DES_CBC:64:1:15:MBEDTLS_PADDING_PKCS7:0:16:0:16
|
||||
|
||||
DES Encrypt and decrypt 16 bytes in multiple parts 4
|
||||
depends_on:MBEDTLS_DES_C:MBEDTLS_CIPHER_MODE_CBC:MBEDTLS_CIPHER_PADDING_PKCS7
|
||||
enc_dec_buf_multipart:MBEDTLS_CIPHER_DES_CBC:64:15:1:MBEDTLS_PADDING_PKCS7:8:8:8:8
|
||||
|
||||
DES Encrypt and decrypt 22 bytes in multiple parts 1 [#1]
|
||||
depends_on:MBEDTLS_DES_C:MBEDTLS_CIPHER_MODE_CBC:MBEDTLS_CIPHER_PADDING_PKCS7
|
||||
enc_dec_buf_multipart:MBEDTLS_CIPHER_DES_CBC:64:15:7:MBEDTLS_PADDING_PKCS7:8:8:8:8
|
||||
|
||||
DES Encrypt and decrypt 22 bytes in multiple parts 1 [#2]
|
||||
depends_on:MBEDTLS_DES_C:MBEDTLS_CIPHER_MODE_CBC:MBEDTLS_CIPHER_PADDING_PKCS7
|
||||
enc_dec_buf_multipart:MBEDTLS_CIPHER_DES_CBC:64:16:6:MBEDTLS_PADDING_PKCS7:16:0:8:8
|
||||
|
||||
DES Encrypt and decrypt 22 bytes in multiple parts 1 [#3]
|
||||
depends_on:MBEDTLS_DES_C:MBEDTLS_CIPHER_MODE_CBC:MBEDTLS_CIPHER_PADDING_PKCS7
|
||||
enc_dec_buf_multipart:MBEDTLS_CIPHER_DES_CBC:64:17:6:MBEDTLS_PADDING_PKCS7:16:0:16:0
|
||||
|
||||
DES Encrypt and decrypt 32 bytes in multiple parts 1
|
||||
depends_on:MBEDTLS_DES_C:MBEDTLS_CIPHER_MODE_CBC:MBEDTLS_CIPHER_PADDING_PKCS7
|
||||
enc_dec_buf_multipart:MBEDTLS_CIPHER_DES_CBC:64:16:16:MBEDTLS_PADDING_PKCS7:16:16:8:24
|
||||
|
||||
DES Encrypt and decrypt 0 bytes [#2]
|
||||
depends_on:MBEDTLS_DES_C:MBEDTLS_CIPHER_MODE_CBC:MBEDTLS_CIPHER_PADDING_PKCS7
|
||||
enc_dec_buf:MBEDTLS_CIPHER_DES_EDE_CBC:"DES-EDE-CBC":128:0:MBEDTLS_PADDING_PKCS7
|
||||
|
||||
DES3 Encrypt and decrypt 1 byte [#1]
|
||||
depends_on:MBEDTLS_DES_C:MBEDTLS_CIPHER_MODE_CBC:MBEDTLS_CIPHER_PADDING_PKCS7
|
||||
enc_dec_buf:MBEDTLS_CIPHER_DES_EDE_CBC:"DES-EDE-CBC":128:1:MBEDTLS_PADDING_PKCS7
|
||||
|
||||
DES3 Encrypt and decrypt 2 bytes [#1]
|
||||
depends_on:MBEDTLS_DES_C:MBEDTLS_CIPHER_MODE_CBC:MBEDTLS_CIPHER_PADDING_PKCS7
|
||||
enc_dec_buf:MBEDTLS_CIPHER_DES_EDE_CBC:"DES-EDE-CBC":128:2:MBEDTLS_PADDING_PKCS7
|
||||
|
||||
DES3 Encrypt and decrypt 7 bytes [#1]
|
||||
depends_on:MBEDTLS_DES_C:MBEDTLS_CIPHER_MODE_CBC:MBEDTLS_CIPHER_PADDING_PKCS7
|
||||
enc_dec_buf:MBEDTLS_CIPHER_DES_EDE_CBC:"DES-EDE-CBC":128:7:MBEDTLS_PADDING_PKCS7
|
||||
|
||||
DES3 Encrypt and decrypt 8 bytes [#1]
|
||||
depends_on:MBEDTLS_DES_C:MBEDTLS_CIPHER_MODE_CBC
|
||||
enc_dec_buf:MBEDTLS_CIPHER_DES_EDE_CBC:"DES-EDE-CBC":128:8:MBEDTLS_PADDING_NONE
|
||||
|
||||
DES3 Encrypt and decrypt 9 bytes [#1]
|
||||
depends_on:MBEDTLS_DES_C:MBEDTLS_CIPHER_MODE_CBC:MBEDTLS_CIPHER_PADDING_PKCS7
|
||||
enc_dec_buf:MBEDTLS_CIPHER_DES_EDE_CBC:"DES-EDE-CBC":128:9:MBEDTLS_PADDING_PKCS7
|
||||
|
||||
DES3 Encrypt and decrypt 15 bytes [#1]
|
||||
depends_on:MBEDTLS_DES_C:MBEDTLS_CIPHER_MODE_CBC:MBEDTLS_CIPHER_PADDING_PKCS7
|
||||
enc_dec_buf:MBEDTLS_CIPHER_DES_EDE_CBC:"DES-EDE-CBC":128:15:MBEDTLS_PADDING_PKCS7
|
||||
|
||||
DES3 Encrypt and decrypt 16 bytes [#1]
|
||||
depends_on:MBEDTLS_DES_C:MBEDTLS_CIPHER_MODE_CBC
|
||||
enc_dec_buf:MBEDTLS_CIPHER_DES_EDE_CBC:"DES-EDE-CBC":128:16:MBEDTLS_PADDING_NONE
|
||||
|
||||
DES3 Encrypt and decrypt 17 bytes [#1]
|
||||
depends_on:MBEDTLS_DES_C:MBEDTLS_CIPHER_MODE_CBC:MBEDTLS_CIPHER_PADDING_PKCS7
|
||||
enc_dec_buf:MBEDTLS_CIPHER_DES_EDE_CBC:"DES-EDE-CBC":128:17:MBEDTLS_PADDING_PKCS7
|
||||
|
||||
DES3 Encrypt and decrypt 31 bytes [#1]
|
||||
depends_on:MBEDTLS_DES_C:MBEDTLS_CIPHER_MODE_CBC:MBEDTLS_CIPHER_PADDING_PKCS7
|
||||
enc_dec_buf:MBEDTLS_CIPHER_DES_EDE_CBC:"DES-EDE-CBC":128:31:MBEDTLS_PADDING_PKCS7
|
||||
|
||||
DES3 Encrypt and decrypt 32 bytes [#1]
|
||||
depends_on:MBEDTLS_DES_C:MBEDTLS_CIPHER_MODE_CBC
|
||||
enc_dec_buf:MBEDTLS_CIPHER_DES_EDE_CBC:"DES-EDE-CBC":128:32:MBEDTLS_PADDING_NONE
|
||||
|
||||
DES3 Encrypt and decrypt 33 bytes [#2]
|
||||
depends_on:MBEDTLS_DES_C:MBEDTLS_CIPHER_MODE_CBC:MBEDTLS_CIPHER_PADDING_PKCS7
|
||||
enc_dec_buf:MBEDTLS_CIPHER_DES_EDE_CBC:"DES-EDE-CBC":128:33:MBEDTLS_PADDING_PKCS7
|
||||
|
||||
DES3 Encrypt and decrypt 47 bytes [#1]
|
||||
depends_on:MBEDTLS_DES_C:MBEDTLS_CIPHER_MODE_CBC:MBEDTLS_CIPHER_PADDING_PKCS7
|
||||
enc_dec_buf:MBEDTLS_CIPHER_DES_EDE_CBC:"DES-EDE-CBC":128:47:MBEDTLS_PADDING_PKCS7
|
||||
|
||||
DES3 Encrypt and decrypt 48 bytes [#1]
|
||||
depends_on:MBEDTLS_DES_C:MBEDTLS_CIPHER_MODE_CBC:MBEDTLS_CIPHER_PADDING_PKCS7
|
||||
enc_dec_buf:MBEDTLS_CIPHER_DES_EDE_CBC:"DES-EDE-CBC":128:48:MBEDTLS_PADDING_PKCS7
|
||||
|
||||
DES3 Encrypt and decrypt 49 bytes [#1]
|
||||
depends_on:MBEDTLS_DES_C:MBEDTLS_CIPHER_MODE_CBC:MBEDTLS_CIPHER_PADDING_PKCS7
|
||||
enc_dec_buf:MBEDTLS_CIPHER_DES_EDE_CBC:"DES-EDE-CBC":128:49:MBEDTLS_PADDING_PKCS7
|
||||
|
||||
DES3 Encrypt and decrypt 0 bytes in multiple parts [#1]
|
||||
depends_on:MBEDTLS_DES_C:MBEDTLS_CIPHER_MODE_CBC:MBEDTLS_CIPHER_PADDING_PKCS7
|
||||
enc_dec_buf_multipart:MBEDTLS_CIPHER_DES_EDE_CBC:128:0:0:MBEDTLS_PADDING_PKCS7:0:0:0:0
|
||||
|
||||
DES3 Encrypt and decrypt 1 bytes in multiple parts 1 [#1]
|
||||
depends_on:MBEDTLS_DES_C:MBEDTLS_CIPHER_MODE_CBC:MBEDTLS_CIPHER_PADDING_PKCS7
|
||||
enc_dec_buf_multipart:MBEDTLS_CIPHER_DES_EDE_CBC:128:1:0:MBEDTLS_PADDING_PKCS7:0:0:0:0
|
||||
|
||||
DES3 Encrypt and decrypt 1 bytes in multiple parts 2 [#1]
|
||||
depends_on:MBEDTLS_DES_C:MBEDTLS_CIPHER_MODE_CBC:MBEDTLS_CIPHER_PADDING_PKCS7
|
||||
enc_dec_buf_multipart:MBEDTLS_CIPHER_DES_EDE_CBC:128:0:1:MBEDTLS_PADDING_PKCS7:0:0:0:0
|
||||
|
||||
DES3 Encrypt and decrypt 16 bytes in multiple parts 1 [#1]
|
||||
depends_on:MBEDTLS_DES_C:MBEDTLS_CIPHER_MODE_CBC:MBEDTLS_CIPHER_PADDING_PKCS7
|
||||
enc_dec_buf_multipart:MBEDTLS_CIPHER_DES_EDE_CBC:128:16:0:MBEDTLS_PADDING_PKCS7:16:0:8:8
|
||||
|
||||
DES3 Encrypt and decrypt 16 bytes in multiple parts 2 [#1]
|
||||
depends_on:MBEDTLS_DES_C:MBEDTLS_CIPHER_MODE_CBC:MBEDTLS_CIPHER_PADDING_PKCS7
|
||||
enc_dec_buf_multipart:MBEDTLS_CIPHER_DES_EDE_CBC:128:0:16:MBEDTLS_PADDING_PKCS7:0:16:0:16
|
||||
|
||||
DES3 Encrypt and decrypt 16 bytes in multiple parts 3 [#1]
|
||||
depends_on:MBEDTLS_DES_C:MBEDTLS_CIPHER_MODE_CBC:MBEDTLS_CIPHER_PADDING_PKCS7
|
||||
enc_dec_buf_multipart:MBEDTLS_CIPHER_DES_EDE_CBC:128:1:15:MBEDTLS_PADDING_PKCS7:0:16:0:16
|
||||
|
||||
DES3 Encrypt and decrypt 16 bytes in multiple parts 4 [#1]
|
||||
depends_on:MBEDTLS_DES_C:MBEDTLS_CIPHER_MODE_CBC:MBEDTLS_CIPHER_PADDING_PKCS7
|
||||
enc_dec_buf_multipart:MBEDTLS_CIPHER_DES_EDE_CBC:128:15:1:MBEDTLS_PADDING_PKCS7:8:8:8:8
|
||||
|
||||
DES3 Encrypt and decrypt 22 bytes in multiple parts 1 [#1]
|
||||
depends_on:MBEDTLS_DES_C:MBEDTLS_CIPHER_MODE_CBC:MBEDTLS_CIPHER_PADDING_PKCS7
|
||||
enc_dec_buf_multipart:MBEDTLS_CIPHER_DES_EDE_CBC:128:15:7:MBEDTLS_PADDING_PKCS7:8:8:8:8
|
||||
|
||||
DES3 Encrypt and decrypt 22 bytes in multiple parts 1 [#2]
|
||||
depends_on:MBEDTLS_DES_C:MBEDTLS_CIPHER_MODE_CBC:MBEDTLS_CIPHER_PADDING_PKCS7
|
||||
enc_dec_buf_multipart:MBEDTLS_CIPHER_DES_EDE_CBC:128:16:6:MBEDTLS_PADDING_PKCS7:16:0:8:8
|
||||
|
||||
DES3 Encrypt and decrypt 22 bytes in multiple parts 1 [#3]
|
||||
depends_on:MBEDTLS_DES_C:MBEDTLS_CIPHER_MODE_CBC:MBEDTLS_CIPHER_PADDING_PKCS7
|
||||
enc_dec_buf_multipart:MBEDTLS_CIPHER_DES_EDE_CBC:128:17:6:MBEDTLS_PADDING_PKCS7:16:0:16:0
|
||||
|
||||
DES3 Encrypt and decrypt 32 bytes in multiple parts 1 [#1]
|
||||
depends_on:MBEDTLS_DES_C:MBEDTLS_CIPHER_MODE_CBC:MBEDTLS_CIPHER_PADDING_PKCS7
|
||||
enc_dec_buf_multipart:MBEDTLS_CIPHER_DES_EDE_CBC:128:16:16:MBEDTLS_PADDING_PKCS7:16:16:8:24
|
||||
|
||||
DES3 Encrypt and decrypt 0 bytes
|
||||
depends_on:MBEDTLS_DES_C:MBEDTLS_CIPHER_MODE_CBC:MBEDTLS_CIPHER_PADDING_PKCS7
|
||||
enc_dec_buf:MBEDTLS_CIPHER_DES_EDE3_CBC:"DES-EDE3-CBC":192:0:MBEDTLS_PADDING_PKCS7
|
||||
|
||||
DES3 Encrypt and decrypt 1 byte [#2]
|
||||
depends_on:MBEDTLS_DES_C:MBEDTLS_CIPHER_MODE_CBC:MBEDTLS_CIPHER_PADDING_PKCS7
|
||||
enc_dec_buf:MBEDTLS_CIPHER_DES_EDE3_CBC:"DES-EDE3-CBC":192:1:MBEDTLS_PADDING_PKCS7
|
||||
|
||||
DES3 Encrypt and decrypt 2 bytes [#2]
|
||||
depends_on:MBEDTLS_DES_C:MBEDTLS_CIPHER_MODE_CBC:MBEDTLS_CIPHER_PADDING_PKCS7
|
||||
enc_dec_buf:MBEDTLS_CIPHER_DES_EDE3_CBC:"DES-EDE3-CBC":192:2:MBEDTLS_PADDING_PKCS7
|
||||
|
||||
DES3 Encrypt and decrypt 7 bytes [#2]
|
||||
depends_on:MBEDTLS_DES_C:MBEDTLS_CIPHER_MODE_CBC:MBEDTLS_CIPHER_PADDING_PKCS7
|
||||
enc_dec_buf:MBEDTLS_CIPHER_DES_EDE3_CBC:"DES-EDE3-CBC":192:7:MBEDTLS_PADDING_PKCS7
|
||||
|
||||
DES3 Encrypt and decrypt 8 bytes [#2]
|
||||
depends_on:MBEDTLS_DES_C:MBEDTLS_CIPHER_MODE_CBC
|
||||
enc_dec_buf:MBEDTLS_CIPHER_DES_EDE3_CBC:"DES-EDE3-CBC":192:8:MBEDTLS_PADDING_NONE
|
||||
|
||||
DES3 Encrypt and decrypt 8 bytes (PKCS7 padding) [#2]
|
||||
depends_on:MBEDTLS_DES_C:MBEDTLS_CIPHER_MODE_CBC:MBEDTLS_CIPHER_PADDING_PKCS7
|
||||
enc_dec_buf:MBEDTLS_CIPHER_DES_EDE3_CBC:"DES-EDE3-CBC":192:8:MBEDTLS_PADDING_PKCS7
|
||||
|
||||
DES3 Encrypt and decrypt 9 bytes [#2]
|
||||
depends_on:MBEDTLS_DES_C:MBEDTLS_CIPHER_MODE_CBC:MBEDTLS_CIPHER_PADDING_PKCS7
|
||||
enc_dec_buf:MBEDTLS_CIPHER_DES_EDE3_CBC:"DES-EDE3-CBC":192:9:MBEDTLS_PADDING_PKCS7
|
||||
|
||||
DES3 Encrypt and decrypt 15 bytes [#2]
|
||||
depends_on:MBEDTLS_DES_C:MBEDTLS_CIPHER_MODE_CBC:MBEDTLS_CIPHER_PADDING_PKCS7
|
||||
enc_dec_buf:MBEDTLS_CIPHER_DES_EDE3_CBC:"DES-EDE3-CBC":192:15:MBEDTLS_PADDING_PKCS7
|
||||
|
||||
DES3 Encrypt and decrypt 16 bytes [#2]
|
||||
depends_on:MBEDTLS_DES_C:MBEDTLS_CIPHER_MODE_CBC
|
||||
enc_dec_buf:MBEDTLS_CIPHER_DES_EDE3_CBC:"DES-EDE3-CBC":192:16:MBEDTLS_PADDING_NONE
|
||||
|
||||
DES3 Encrypt and decrypt 16 bytes (PKCS7 padding) [#2]
|
||||
depends_on:MBEDTLS_DES_C:MBEDTLS_CIPHER_MODE_CBC:MBEDTLS_CIPHER_PADDING_PKCS7
|
||||
enc_dec_buf:MBEDTLS_CIPHER_DES_EDE3_CBC:"DES-EDE3-CBC":192:16:MBEDTLS_PADDING_PKCS7
|
||||
|
||||
DES3 Encrypt and decrypt 17 bytes [#2]
|
||||
depends_on:MBEDTLS_DES_C:MBEDTLS_CIPHER_MODE_CBC:MBEDTLS_CIPHER_PADDING_PKCS7
|
||||
enc_dec_buf:MBEDTLS_CIPHER_DES_EDE3_CBC:"DES-EDE3-CBC":192:17:MBEDTLS_PADDING_PKCS7
|
||||
|
||||
DES3 Encrypt and decrypt 31 bytes [#2]
|
||||
depends_on:MBEDTLS_DES_C:MBEDTLS_CIPHER_MODE_CBC:MBEDTLS_CIPHER_PADDING_PKCS7
|
||||
enc_dec_buf:MBEDTLS_CIPHER_DES_EDE3_CBC:"DES-EDE3-CBC":192:31:MBEDTLS_PADDING_PKCS7
|
||||
|
||||
DES3 Encrypt and decrypt 32 bytes [#3]
|
||||
depends_on:MBEDTLS_DES_C:MBEDTLS_CIPHER_MODE_CBC:MBEDTLS_CIPHER_PADDING_PKCS7
|
||||
enc_dec_buf:MBEDTLS_CIPHER_DES_EDE3_CBC:"DES-EDE3-CBC":192:32:MBEDTLS_PADDING_PKCS7
|
||||
|
||||
DES3 Encrypt and decrypt 32 bytes (PKCS7 padding) [#3]
|
||||
depends_on:MBEDTLS_DES_C:MBEDTLS_CIPHER_MODE_CBC
|
||||
enc_dec_buf:MBEDTLS_CIPHER_DES_EDE3_CBC:"DES-EDE3-CBC":192:32:MBEDTLS_PADDING_NONE
|
||||
|
||||
DES3 Encrypt and decrypt 33 bytes [#4]
|
||||
depends_on:MBEDTLS_DES_C:MBEDTLS_CIPHER_MODE_CBC:MBEDTLS_CIPHER_PADDING_PKCS7
|
||||
enc_dec_buf:MBEDTLS_CIPHER_DES_EDE3_CBC:"DES-EDE3-CBC":192:33:MBEDTLS_PADDING_PKCS7
|
||||
|
||||
DES3 Encrypt and decrypt 47 bytes [#2]
|
||||
depends_on:MBEDTLS_DES_C:MBEDTLS_CIPHER_MODE_CBC:MBEDTLS_CIPHER_PADDING_PKCS7
|
||||
enc_dec_buf:MBEDTLS_CIPHER_DES_EDE3_CBC:"DES-EDE3-CBC":192:47:MBEDTLS_PADDING_PKCS7
|
||||
|
||||
DES3 Encrypt and decrypt 48 bytes [#2]
|
||||
depends_on:MBEDTLS_DES_C:MBEDTLS_CIPHER_MODE_CBC:MBEDTLS_CIPHER_PADDING_PKCS7
|
||||
enc_dec_buf:MBEDTLS_CIPHER_DES_EDE3_CBC:"DES-EDE3-CBC":192:48:MBEDTLS_PADDING_PKCS7
|
||||
|
||||
DES3 Encrypt and decrypt 49 bytes [#2]
|
||||
depends_on:MBEDTLS_DES_C:MBEDTLS_CIPHER_MODE_CBC:MBEDTLS_CIPHER_PADDING_PKCS7
|
||||
enc_dec_buf:MBEDTLS_CIPHER_DES_EDE3_CBC:"DES-EDE3-CBC":192:49:MBEDTLS_PADDING_PKCS7
|
||||
|
||||
DES3 Encrypt and decrypt 0 bytes in multiple parts [#2]
|
||||
depends_on:MBEDTLS_DES_C:MBEDTLS_CIPHER_MODE_CBC:MBEDTLS_CIPHER_PADDING_PKCS7
|
||||
enc_dec_buf_multipart:MBEDTLS_CIPHER_DES_EDE3_CBC:192:0:0:MBEDTLS_PADDING_PKCS7:0:0:0:0
|
||||
|
||||
DES3 Encrypt and decrypt 1 bytes in multiple parts 1 [#2]
|
||||
depends_on:MBEDTLS_DES_C:MBEDTLS_CIPHER_MODE_CBC:MBEDTLS_CIPHER_PADDING_PKCS7
|
||||
enc_dec_buf_multipart:MBEDTLS_CIPHER_DES_EDE3_CBC:192:1:0:MBEDTLS_PADDING_PKCS7:0:0:0:0
|
||||
|
||||
DES3 Encrypt and decrypt 1 bytes in multiple parts 2 [#2]
|
||||
depends_on:MBEDTLS_DES_C:MBEDTLS_CIPHER_MODE_CBC:MBEDTLS_CIPHER_PADDING_PKCS7
|
||||
enc_dec_buf_multipart:MBEDTLS_CIPHER_DES_EDE3_CBC:192:0:1:MBEDTLS_PADDING_PKCS7:0:0:0:0
|
||||
|
||||
DES3 Encrypt and decrypt 16 bytes in multiple parts 1 [#2]
|
||||
depends_on:MBEDTLS_DES_C:MBEDTLS_CIPHER_MODE_CBC:MBEDTLS_CIPHER_PADDING_PKCS7
|
||||
enc_dec_buf_multipart:MBEDTLS_CIPHER_DES_EDE3_CBC:192:16:0:MBEDTLS_PADDING_PKCS7:16:0:8:8
|
||||
|
||||
DES3 Encrypt and decrypt 16 bytes in multiple parts 2 [#2]
|
||||
depends_on:MBEDTLS_DES_C:MBEDTLS_CIPHER_MODE_CBC:MBEDTLS_CIPHER_PADDING_PKCS7
|
||||
enc_dec_buf_multipart:MBEDTLS_CIPHER_DES_EDE3_CBC:192:0:16:MBEDTLS_PADDING_PKCS7:0:16:0:16
|
||||
|
||||
DES3 Encrypt and decrypt 16 bytes in multiple parts 3 [#2]
|
||||
depends_on:MBEDTLS_DES_C:MBEDTLS_CIPHER_MODE_CBC:MBEDTLS_CIPHER_PADDING_PKCS7
|
||||
enc_dec_buf_multipart:MBEDTLS_CIPHER_DES_EDE3_CBC:192:1:15:MBEDTLS_PADDING_PKCS7:0:16:0:16
|
||||
|
||||
DES3 Encrypt and decrypt 16 bytes in multiple parts 4 [#2]
|
||||
depends_on:MBEDTLS_DES_C:MBEDTLS_CIPHER_MODE_CBC:MBEDTLS_CIPHER_PADDING_PKCS7
|
||||
enc_dec_buf_multipart:MBEDTLS_CIPHER_DES_EDE3_CBC:192:15:1:MBEDTLS_PADDING_PKCS7:8:8:8:8
|
||||
|
||||
DES3 Encrypt and decrypt 22 bytes in multiple parts 1 [#4]
|
||||
depends_on:MBEDTLS_DES_C:MBEDTLS_CIPHER_MODE_CBC:MBEDTLS_CIPHER_PADDING_PKCS7
|
||||
enc_dec_buf_multipart:MBEDTLS_CIPHER_DES_EDE3_CBC:192:15:7:MBEDTLS_PADDING_PKCS7:8:8:8:8
|
||||
|
||||
DES3 Encrypt and decrypt 22 bytes in multiple parts 1 [#5]
|
||||
depends_on:MBEDTLS_DES_C:MBEDTLS_CIPHER_MODE_CBC:MBEDTLS_CIPHER_PADDING_PKCS7
|
||||
enc_dec_buf_multipart:MBEDTLS_CIPHER_DES_EDE3_CBC:192:16:6:MBEDTLS_PADDING_PKCS7:16:0:8:8
|
||||
|
||||
DES3 Encrypt and decrypt 22 bytes in multiple parts 1 [#6]
|
||||
depends_on:MBEDTLS_DES_C:MBEDTLS_CIPHER_MODE_CBC:MBEDTLS_CIPHER_PADDING_PKCS7
|
||||
enc_dec_buf_multipart:MBEDTLS_CIPHER_DES_EDE3_CBC:192:17:6:MBEDTLS_PADDING_PKCS7:16:0:16:0
|
||||
|
||||
DES3 Encrypt and decrypt 32 bytes in multiple parts 1 [#2]
|
||||
depends_on:MBEDTLS_DES_C:MBEDTLS_CIPHER_MODE_CBC:MBEDTLS_CIPHER_PADDING_PKCS7
|
||||
enc_dec_buf_multipart:MBEDTLS_CIPHER_DES_EDE3_CBC:192:16:16:MBEDTLS_PADDING_PKCS7:16:16:8:24
|
||||
|
||||
DES ECB Encrypt test vector (OpenSSL) #1
|
||||
depends_on:MBEDTLS_DES_C
|
||||
test_vec_ecb:MBEDTLS_CIPHER_DES_ECB:MBEDTLS_ENCRYPT:"0000000000000000":"0000000000000000":"8CA64DE9C1B123A7":0
|
||||
|
||||
DES ECB Encrypt test vector (OpenSSL) #2
|
||||
depends_on:MBEDTLS_DES_C
|
||||
test_vec_ecb:MBEDTLS_CIPHER_DES_ECB:MBEDTLS_ENCRYPT:"FFFFFFFFFFFFFFFF":"FFFFFFFFFFFFFFFF":"7359B2163E4EDC58":0
|
||||
|
||||
DES ECB Encrypt test vector (OpenSSL) #3
|
||||
depends_on:MBEDTLS_DES_C
|
||||
test_vec_ecb:MBEDTLS_CIPHER_DES_ECB:MBEDTLS_ENCRYPT:"FEDCBA9876543210":"0123456789ABCDEF":"ED39D950FA74BCC4":0
|
||||
|
||||
DES ECB Decrypt test vector (OpenSSL) #1
|
||||
depends_on:MBEDTLS_DES_C
|
||||
test_vec_ecb:MBEDTLS_CIPHER_DES_ECB:MBEDTLS_DECRYPT:"0000000000000000":"8CA64DE9C1B123A7":"0000000000000000":0
|
||||
|
||||
DES ECB Decrypt test vector (OpenSSL) #2
|
||||
depends_on:MBEDTLS_DES_C
|
||||
test_vec_ecb:MBEDTLS_CIPHER_DES_ECB:MBEDTLS_DECRYPT:"FFFFFFFFFFFFFFFF":"7359B2163E4EDC58":"FFFFFFFFFFFFFFFF":0
|
||||
|
||||
DES ECB Decrypt test vector (OpenSSL) #3
|
||||
depends_on:MBEDTLS_DES_C
|
||||
test_vec_ecb:MBEDTLS_CIPHER_DES_ECB:MBEDTLS_DECRYPT:"43297FAD38E373FE":"EA676B2CB7DB2B7A":"762514B829BF486A":0
|
||||
|
||||
DES3-EDE ECB Encrypt test vector (OpenSSL) #1
|
||||
depends_on:MBEDTLS_DES_C
|
||||
test_vec_ecb:MBEDTLS_CIPHER_DES_EDE_ECB:MBEDTLS_ENCRYPT:"0000000000000000FFFFFFFFFFFFFFFF":"0000000000000000":"9295B59BB384736E":0
|
||||
|
||||
DES3-EDE ECB Encrypt test vector (OpenSSL) #2
|
||||
depends_on:MBEDTLS_DES_C
|
||||
test_vec_ecb:MBEDTLS_CIPHER_DES_EDE_ECB:MBEDTLS_ENCRYPT:"FFFFFFFFFFFFFFFF3000000000000000":"FFFFFFFFFFFFFFFF":"199E9D6DF39AA816":0
|
||||
|
||||
DES3-EDE ECB Decrypt test vector (OpenSSL) #1
|
||||
depends_on:MBEDTLS_DES_C
|
||||
test_vec_ecb:MBEDTLS_CIPHER_DES_EDE_ECB:MBEDTLS_DECRYPT:"0000000000000000FFFFFFFFFFFFFFFF":"9295B59BB384736E":"0000000000000000":0
|
||||
|
||||
DES3-EDE ECB Decrypt test vector (OpenSSL) #2
|
||||
depends_on:MBEDTLS_DES_C
|
||||
test_vec_ecb:MBEDTLS_CIPHER_DES_EDE_ECB:MBEDTLS_DECRYPT:"FFFFFFFFFFFFFFFF3000000000000000":"199E9D6DF39AA816":"FFFFFFFFFFFFFFFF":0
|
||||
|
||||
Check set padding - DES
|
||||
depends_on:MBEDTLS_DES_C:MBEDTLS_CIPHER_MODE_CBC
|
||||
check_set_padding:MBEDTLS_CIPHER_DES_EDE_CBC
|
||||
|
||||
Check set padding - Triple DES
|
||||
depends_on:MBEDTLS_DES_C:MBEDTLS_CIPHER_MODE_CBC
|
||||
check_set_padding:MBEDTLS_CIPHER_DES_EDE3_CBC
|
||||
1645
vendor/mbedtls/tests/suites/test_suite_cipher.function
vendored
Normal file
1645
vendor/mbedtls/tests/suites/test_suite_cipher.function
vendored
Normal file
File diff suppressed because it is too large
Load Diff
4747
vendor/mbedtls/tests/suites/test_suite_cipher.gcm.data
vendored
Normal file
4747
vendor/mbedtls/tests/suites/test_suite_cipher.gcm.data
vendored
Normal file
File diff suppressed because it is too large
Load Diff
5
vendor/mbedtls/tests/suites/test_suite_cipher.misc.data
vendored
Normal file
5
vendor/mbedtls/tests/suites/test_suite_cipher.misc.data
vendored
Normal file
@@ -0,0 +1,5 @@
|
||||
CIPHER - Conditional invalid parameter checks
|
||||
cipher_invalid_param_conditional:
|
||||
|
||||
CIPHER - Unconditional invalid parameter checks
|
||||
cipher_invalid_param_unconditional:
|
||||
278
vendor/mbedtls/tests/suites/test_suite_cipher.nist_kw.data
vendored
Normal file
278
vendor/mbedtls/tests/suites/test_suite_cipher.nist_kw.data
vendored
Normal file
@@ -0,0 +1,278 @@
|
||||
KW AES-128 wrap - Decrypt empty buffer
|
||||
depends_on:MBEDTLS_AES_C:MBEDTLS_NIST_KW_C
|
||||
dec_empty_buf:MBEDTLS_CIPHER_AES_128_KW:MBEDTLS_ERR_CIPHER_FEATURE_UNAVAILABLE:MBEDTLS_ERR_CIPHER_FEATURE_UNAVAILABLE
|
||||
|
||||
KWP AES-128 wrap - Decrypt empty buffer
|
||||
depends_on:MBEDTLS_AES_C:MBEDTLS_NIST_KW_C
|
||||
dec_empty_buf:MBEDTLS_CIPHER_AES_128_KWP:MBEDTLS_ERR_CIPHER_FEATURE_UNAVAILABLE:MBEDTLS_ERR_CIPHER_FEATURE_UNAVAILABLE
|
||||
|
||||
KW AES-128 wrap rfc 3394
|
||||
depends_on:MBEDTLS_AES_C:MBEDTLS_NIST_KW_C
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_AES_128_KW:"000102030405060708090A0B0C0D0E0F":"":"":"1FA68B0A8112B447AEF34BD8FB5A7B829D3E862371D2CFE5":"":"":"00112233445566778899AABBCCDDEEFF":0
|
||||
|
||||
KW AES-192 wrap rfc 3394
|
||||
depends_on:MBEDTLS_AES_C:MBEDTLS_NIST_KW_C:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_AES_192_KW:"000102030405060708090A0B0C0D0E0F1011121314151617":"":"":"96778B25AE6CA435F92B5B97C050AED2468AB8A17AD84E5D":"":"":"00112233445566778899AABBCCDDEEFF":0
|
||||
|
||||
KW AES-256 wrap rfc 3394 [#1]
|
||||
depends_on:MBEDTLS_AES_C:MBEDTLS_NIST_KW_C:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_AES_256_KW:"000102030405060708090A0B0C0D0E0F101112131415161718191A1B1C1D1E1F":"":"":"A8F9BC1612C68B3FF6E6F4FBE30E71E4769C8B80A32CB8958CD5D17D6B254DA1":"":"":"00112233445566778899AABBCCDDEEFF0001020304050607":0
|
||||
|
||||
KW AES-256 wrap rfc 3394 [#2]
|
||||
depends_on:MBEDTLS_AES_C:MBEDTLS_NIST_KW_C:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_AES_256_KW:"000102030405060708090A0B0C0D0E0F101112131415161718191A1B1C1D1E1F":"":"":"64E8C3F9CE0F5BA263E9777905818A2A93C8191E7D6E8AE7":"":"":"00112233445566778899AABBCCDDEEFF":0
|
||||
|
||||
KWP AES-192 RFC 5649 #1
|
||||
depends_on:MBEDTLS_AES_C:MBEDTLS_NIST_KW_C:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_AES_192_KWP:"5840df6e29b02af1ab493b705bf16ea1ae8338f4dcc176a8":"":"":"138bdeaa9b8fa7fc61f97742e72248ee5ae6ae5360d1ae6a5f54f373fa543b6a":"":"":"c37b7e6492584340bed12207808941155068f738":0
|
||||
|
||||
KWP AES-192 RFC 5649 #2
|
||||
depends_on:MBEDTLS_AES_C:MBEDTLS_NIST_KW_C:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_AES_192_KWP:"5840df6e29b02af1ab493b705bf16ea1ae8338f4dcc176a8":"":"":"afbeb0f07dfbf5419200f2ccb50bb24f":"":"":"466f7250617369":0
|
||||
|
||||
KWP AES-128 1 byte input
|
||||
depends_on:MBEDTLS_AES_C:MBEDTLS_NIST_KW_C
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_AES_128_KWP:"00000000000000000000000000000000":"":"":"A9D2D4394815D53F2799ABD7E51D2C8B":"":"":"00":0
|
||||
|
||||
KWP AES-128 2 byte input
|
||||
depends_on:MBEDTLS_AES_C:MBEDTLS_NIST_KW_C
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_AES_128_KWP:"00000000000000000000000000000000":"":"":"36D0CA197F638BF478D022C7E543B699":"":"":"0001":0
|
||||
|
||||
KWP AES-128 3 byte input
|
||||
depends_on:MBEDTLS_AES_C:MBEDTLS_NIST_KW_C
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_AES_128_KWP:"00000000000000000000000000000000":"":"":"DAB4EE2853E1C44C5E553E644143902B":"":"":"000102":0
|
||||
|
||||
KWP AES-128 4 byte input
|
||||
depends_on:MBEDTLS_AES_C:MBEDTLS_NIST_KW_C
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_AES_128_KWP:"00000000000000000000000000000000":"":"":"446C037F831092B147C372616357BF7D":"":"":"00010203":0
|
||||
|
||||
KWP AES-128 5 byte input
|
||||
depends_on:MBEDTLS_AES_C:MBEDTLS_NIST_KW_C
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_AES_128_KWP:"00000000000000000000000000000000":"":"":"9ED0AF6457B82E0DDADBD2240A303D74":"":"":"0001020304":0
|
||||
|
||||
KWP AES-128 6 byte input
|
||||
depends_on:MBEDTLS_AES_C:MBEDTLS_NIST_KW_C
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_AES_128_KWP:"00000000000000000000000000000000":"":"":"D863A8CE0DF301A564945259B4F74E7D":"":"":"000102030405":0
|
||||
|
||||
KWP AES-128 7 byte input
|
||||
depends_on:MBEDTLS_AES_C:MBEDTLS_NIST_KW_C
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_AES_128_KWP:"00000000000000000000000000000000":"":"":"E8387E5456242B0C30BE77FC1FF0C1FD":"":"":"00010203040506":0
|
||||
|
||||
KWP AES-128 8 byte input
|
||||
depends_on:MBEDTLS_AES_C:MBEDTLS_NIST_KW_C
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_AES_128_KWP:"00000000000000000000000000000000":"":"":"01FF4C430CDF3D2D815B0972B23D7C35":"":"":"0001020304050607":0
|
||||
|
||||
KWP AES-128 9 byte input
|
||||
depends_on:MBEDTLS_AES_C:MBEDTLS_NIST_KW_C
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_AES_128_KWP:"00000000000000000000000000000000":"":"":"C06E2163E0CC845B348E012AC9413DEEE40C8C3B030A3681":"":"":"000102030405060708":0
|
||||
|
||||
KWP AES-128 10 byte input
|
||||
depends_on:MBEDTLS_AES_C:MBEDTLS_NIST_KW_C
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_AES_128_KWP:"00000000000000000000000000000000":"":"":"3DFD2F643C38B07E121C77C2CA0EF82DA742B0989B6D848E":"":"":"00010203040506070809":0
|
||||
|
||||
KWP AES-128 11 byte input
|
||||
depends_on:MBEDTLS_AES_C:MBEDTLS_NIST_KW_C
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_AES_128_KWP:"00000000000000000000000000000000":"":"":"AFAEF390634E21E754FD09F55A4EDD918A1D23ECA9B76F2B":"":"":"000102030405060708090A":0
|
||||
|
||||
KWP AES-128 12 byte input
|
||||
depends_on:MBEDTLS_AES_C:MBEDTLS_NIST_KW_C
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_AES_128_KWP:"00000000000000000000000000000000":"":"":"A42D14C830F64F0A73570BFA7FDF8DDDD5E3AD3065A09FB0":"":"":"000102030405060708090A0B":0
|
||||
|
||||
KWP AES-128 13 byte input
|
||||
depends_on:MBEDTLS_AES_C:MBEDTLS_NIST_KW_C
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_AES_128_KWP:"00000000000000000000000000000000":"":"":"83F23527625FC643942279D090C1B61D10FC978B54D778CD":"":"":"000102030405060708090A0B0C":0
|
||||
|
||||
KWP AES-128 14 byte input
|
||||
depends_on:MBEDTLS_AES_C:MBEDTLS_NIST_KW_C
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_AES_128_KWP:"00000000000000000000000000000000":"":"":"E073C30E0DAC595F9FD28A0CB9E53945B26D1E1DE4E66D04":"":"":"000102030405060708090A0B0C0D":0
|
||||
|
||||
KWP AES-128 15 byte input
|
||||
depends_on:MBEDTLS_AES_C:MBEDTLS_NIST_KW_C
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_AES_128_KWP:"00000000000000000000000000000000":"":"":"64E3C2F7E0F7CB297C6B8C4CAF665F9F0A3F7082D2522635":"":"":"000102030405060708090A0B0C0D0E":0
|
||||
|
||||
KWP AES-128 16 byte input
|
||||
depends_on:MBEDTLS_AES_C:MBEDTLS_NIST_KW_C
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_AES_128_KWP:"00000000000000000000000000000000":"":"":"8F5982C7D265A0A40FC81D2326429A0A65BCD1368F0E16CB":"":"":"000102030405060708090A0B0C0D0E0F":0
|
||||
|
||||
KWP AES-128 17 byte input
|
||||
depends_on:MBEDTLS_AES_C:MBEDTLS_NIST_KW_C
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_AES_128_KWP:"00000000000000000000000000000000":"":"":"E29EC6664BCBA00986DD9845F8C4B26472BFDDF98522E537B5D23D5D2A8D02C5":"":"":"000102030405060708090A0B0C0D0E0F10":0
|
||||
|
||||
KWP AES-128 18 byte input
|
||||
depends_on:MBEDTLS_AES_C:MBEDTLS_NIST_KW_C
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_AES_128_KWP:"00000000000000000000000000000000":"":"":"9451ABCA0B9756A183F8C9ADA834E1AD2400B693C33624E59F26C35AC1586E2B":"":"":"000102030405060708090A0B0C0D0E0F1011":0
|
||||
|
||||
KWP AES-128 19 byte input
|
||||
depends_on:MBEDTLS_AES_C:MBEDTLS_NIST_KW_C
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_AES_128_KWP:"00000000000000000000000000000000":"":"":"F03CB49A65FD3EF8FC83C52F029A3D73667D5B84DB429C38436619ED8320D12E":"":"":"000102030405060708090A0B0C0D0E0F101112":0
|
||||
|
||||
KWP AES-128 20 byte input
|
||||
depends_on:MBEDTLS_AES_C:MBEDTLS_NIST_KW_C
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_AES_128_KWP:"00000000000000000000000000000000":"":"":"759524B855037849812D62979A18F24D3E672C2663DEA9204BA5A639FB7DB292":"":"":"000102030405060708090A0B0C0D0E0F10111213":0
|
||||
|
||||
KWP AES-128 21 byte input
|
||||
depends_on:MBEDTLS_AES_C:MBEDTLS_NIST_KW_C
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_AES_128_KWP:"00000000000000000000000000000000":"":"":"F352B8228FBFA0769C2E3858D7451FA603E9B751CFE780ED0F93C850C7870259":"":"":"000102030405060708090A0B0C0D0E0F1011121314":0
|
||||
|
||||
KWP AES-128 22 byte input
|
||||
depends_on:MBEDTLS_AES_C:MBEDTLS_NIST_KW_C
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_AES_128_KWP:"00000000000000000000000000000000":"":"":"3491F4C8D916A1BC3824D1478EC746BE8C837415017ED52A1ABC30FB14DDE825":"":"":"000102030405060708090A0B0C0D0E0F101112131415":0
|
||||
|
||||
KWP AES-128 23 byte input
|
||||
depends_on:MBEDTLS_AES_C:MBEDTLS_NIST_KW_C
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_AES_128_KWP:"00000000000000000000000000000000":"":"":"0E6E35C5B9D706C2FF2C4C6CFCF254849879D6C1CB577E0A73BB12CBC7AC9740":"":"":"000102030405060708090A0B0C0D0E0F10111213141516":0
|
||||
|
||||
KWP AES-128 24 byte input
|
||||
depends_on:MBEDTLS_AES_C:MBEDTLS_NIST_KW_C
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_AES_128_KWP:"00000000000000000000000000000000":"":"":"E7DB580663B113B57489E1107F2DCAF7CF80629E7CE1839E1ED044ECD0299E79":"":"":"000102030405060708090A0B0C0D0E0F1011121314151617":0
|
||||
|
||||
KWP AES-128 25 byte input
|
||||
depends_on:MBEDTLS_AES_C:MBEDTLS_NIST_KW_C
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_AES_128_KWP:"00000000000000000000000000000000":"":"":"883500DB91747BAD8C5E122ED2338F3BCB6B43064F5DA9D1303E165815EC8CC4C5BFD31AEAE1B6A3":"":"":"000102030405060708090A0B0C0D0E0F101112131415161718":0
|
||||
|
||||
KWP AES-128 26 byte input
|
||||
depends_on:MBEDTLS_AES_C:MBEDTLS_NIST_KW_C
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_AES_128_KWP:"00000000000000000000000000000000":"":"":"24099AAAD4F19BF614ECC35DA9E3646F73AAFAA9C46975D4B56D72A332AF7EC4850B8294D94B7E1A":"":"":"000102030405060708090A0B0C0D0E0F10111213141516171819":0
|
||||
|
||||
KWP AES-128 27 byte input
|
||||
depends_on:MBEDTLS_AES_C:MBEDTLS_NIST_KW_C
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_AES_128_KWP:"00000000000000000000000000000000":"":"":"C24F8CCE3425AC9638145A0DAC28B59368583FF3A7AAD85FBE1AEAAB5D23C0B128A1F9BC575B785A":"":"":"000102030405060708090A0B0C0D0E0F101112131415161718191A":0
|
||||
|
||||
KWP AES-128 28 byte input
|
||||
depends_on:MBEDTLS_AES_C:MBEDTLS_NIST_KW_C
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_AES_128_KWP:"00000000000000000000000000000000":"":"":"EFD0BC7612331A98F2D68F86E606717197BF57E35114234C675D40E9462ACF00DE7860C0F38677F7":"":"":"000102030405060708090A0B0C0D0E0F101112131415161718191A1B":0
|
||||
|
||||
KW AES-128 wrap CAVS 17.4 COUNT 0 PLEN 16 [#1]
|
||||
depends_on:MBEDTLS_AES_C:MBEDTLS_NIST_KW_C
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_AES_128_KW:"7575da3a93607cc2bfd8cec7aadfd9a6":"":"":"031f6bd7e61e643df68594816f64caa3f56fabea2548f5fb":"":"":"42136d3c384a3eeac95a066fd28fed3f":0
|
||||
|
||||
KW AES-128 wrap CAVS 17.4 COUNT 0 PLEN 16 [#2]
|
||||
depends_on:MBEDTLS_AES_C:MBEDTLS_NIST_KW_C
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_AES_128_KW:"7575da3a93607cc2bfd8cec7aadfd9a7":"":"":"031f6bd7e61e643df68594816f64cbb3f56fabea2548f5fb":"":"FAIL":"":0
|
||||
|
||||
KW AES-128 wrap CAVS 17.4 COUNT 0 PLEN 32
|
||||
depends_on:MBEDTLS_AES_C:MBEDTLS_NIST_KW_C
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_AES_128_KW:"e5d058e7f1c22c016c4e1cc9b26b9f8f":"":"":"60b9f8ac797c56e01e9b5f84d65816a980777869f67991a0e6dc19b8cd75c9b54db4a38456bbd6f3":"":"":"7f604e9b8d39d3c91e193fe6f196c1e3da6211a7c9a33b8873b64b138d1803e4":0
|
||||
|
||||
KW AES-128 wrap CAVS 17.4 COUNT 0 PLEN 24
|
||||
depends_on:MBEDTLS_AES_C:MBEDTLS_NIST_KW_C
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_AES_128_KW:"67ae4270bcdd31e8326b7e7f94c80276":"":"":"96cec0e3272a21faa550a857957aa38ce3c1cf06f0dd9f5b5c5c422cef6c69a1":"":"":"57e748b62fbc37ba25e904ee973d01b136cf7c1d0c8c5c87":0
|
||||
|
||||
KW AES-192 wrap CAVS 17.4 COUNT 0 PLEN 16
|
||||
depends_on:MBEDTLS_AES_C:MBEDTLS_NIST_KW_C:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_AES_192_KW:"a6a3f6d509811859238fc569b5664605f7a73c475a691a8f":"":"":"57d7a4b4e85ffdcb7788b9b666cb63303dd2c5d0f11b1bbb":"":"":"8484e414b091f8a9f72cfd13087ddec1":0
|
||||
|
||||
KW AES-192 wrap CAVS 17.4 COUNT 0 PLEN 32
|
||||
depends_on:MBEDTLS_AES_C:MBEDTLS_NIST_KW_C:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_AES_192_KW:"3686e50dd602f84024570f545bbf618362bef80d45472436":"":"":"c7d5a1a5dfeb7327acbb94767d74cc2afc622ffd01f854d7d3e2b6f75ca7e8f441a0c0bad3d26ee2":"":"":"d780d69b45483b682d311ccaaadcfa3a1cecf1f05dbe2ebc71e6d3fa979f3de8":0
|
||||
|
||||
KW AES-192 wrap CAVS 17.4 COUNT 0 PLEN 24
|
||||
depends_on:MBEDTLS_AES_C:MBEDTLS_NIST_KW_C:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_AES_192_KW:"0a833412e7aa1384ff26866dc9c551bf60413c17e847d317":"":"":"3a7efd629305bf1d61360ed6ff8ec7d059e8af3e5104c29729adb55d1bb94f7e":"":"":"f734760cc0fa3bbfb271277d4f29a48ddecda733d610fa42":0
|
||||
|
||||
KW AES-256 wrap CAVS 17.4 COUNT 0 PLEN 16
|
||||
depends_on:MBEDTLS_AES_C:MBEDTLS_NIST_KW_C:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_AES_256_KW:"f59782f1dceb0544a8da06b34969b9212b55ce6dcbdd0975a33f4b3f88b538da":"":"":"2e63946ea3c090902fa1558375fdb2907742ac74e39403fc":"":"":"73d33060b5f9f2eb5785c0703ddfa704":0
|
||||
|
||||
KW AES-256 wrap CAVS 17.4 COUNT 0 PLEN 32
|
||||
depends_on:MBEDTLS_AES_C:MBEDTLS_NIST_KW_C:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_AES_256_KW:"8b54e6bc3d20e823d96343dc776c0db10c51708ceecc9a38a14beb4ca5b8b221":"":"":"b13eeb7619fab818f1519266516ceb82abc0e699a7153cf26edcb8aeb879f4c011da906841fc5956":"":"":"d6192635c620dee3054e0963396b260af5c6f02695a5205f159541b4bc584bac":0
|
||||
|
||||
KW AES-256 wrap CAVS 17.4 COUNT 0 PLEN 24
|
||||
depends_on:MBEDTLS_AES_C:MBEDTLS_NIST_KW_C:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_AES_256_KW:"112ad41b4856c7254a9848d30fdd78335b039a48a8962c4d1cb78eabd5dad788":"":"":"ba8a259a471b787dd5d540ec25d43d87200fdadc6d1f05d916584fa9f6cbf512":"":"":"1b20bf1990b065d798e1b32264ad50a8747492ba09a04dd1":0
|
||||
|
||||
KWP AES-128 wrap CAVS 17.4 COUNT 0 PLEN 1
|
||||
depends_on:MBEDTLS_AES_C:MBEDTLS_NIST_KW_C
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_AES_128_KWP:"6decf10a1caf8e3b80c7a4be8c9c84e8":"":"":"01a7d657fc4a5b216f261cca4d052c2b":"":"":"49":0
|
||||
|
||||
KWP AES-128 wrap CAVS 17.4 COUNT 0 PLEN 8
|
||||
depends_on:MBEDTLS_AES_C:MBEDTLS_NIST_KW_C
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_AES_128_KWP:"a8e06da625a65b25cf5030826830b661":"":"":"b6f967616dd8d772e9fea295a456dba7":"":"":"43acff293120dd5d":0
|
||||
|
||||
KWP AES-128 wrap CAVS 17.4 COUNT 0 PLEN 9
|
||||
depends_on:MBEDTLS_AES_C:MBEDTLS_NIST_KW_C
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_AES_128_KWP:"7865e20f3c21659ab4690b629cdf3cc4":"":"":"41eca956d4aa047eb5cf4efe659661e74db6f8c564e23500":"":"":"bd6843d420378dc896":0
|
||||
|
||||
KWP AES-128 wrap CAVS 17.4 COUNT 0 PLEN 31
|
||||
depends_on:MBEDTLS_AES_C:MBEDTLS_NIST_KW_C
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_AES_128_KWP:"be96dc195ec034d616486ed70e97fe83":"":"":"974769b3a7b4d5d32985f87fddf9990631e5610fbfb278387b58b1f48e05c77d2fb7575c5169eb0e":"":"":"85b5437b6335ebba7635903a4493d12a77d9357a9e0dbc013456d85f1d3201":0
|
||||
|
||||
KWP AES-192 wrap CAVS 17.4 COUNT 0 PLEN 1
|
||||
depends_on:MBEDTLS_AES_C:MBEDTLS_NIST_KW_C:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_AES_192_KWP:"9ca11078baebc1597a68ce2fe3fc79a201626575252b8860":"":"":"866bc0ae30e290bb20a0dab31a6e7165":"":"":"76":0
|
||||
|
||||
KWP AES-192 wrap CAVS 17.4 COUNT 0 PLEN 8
|
||||
depends_on:MBEDTLS_AES_C:MBEDTLS_NIST_KW_C:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_AES_192_KWP:"c5029804d28341ca267c9e73afc5f963b14bb604708b43f2":"":"":"15b98046b2a3a49b9c0831c476fc34fb":"":"":"e6eb18a3e969ab5c":0
|
||||
|
||||
KWP AES-192 wrap CAVS 17.4 COUNT 0 PLEN 9
|
||||
depends_on:MBEDTLS_AES_C:MBEDTLS_NIST_KW_C:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_AES_192_KWP:"9464f1af6aabad076661328bcfd15777da16a288a2660009":"":"":"d9b257b400d808a0b0386af3be9154fc7f2fb2d7edc06201":"":"":"431527c3a644c106bb":0
|
||||
|
||||
KWP AES-192 wrap CAVS 17.4 COUNT 0 PLEN 31
|
||||
depends_on:MBEDTLS_AES_C:MBEDTLS_NIST_KW_C:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_AES_192_KWP:"a354ccd6dd97cf40bed840f8137e0cf2e91c00e592104765":"":"":"f018e7c8d6dcdbd20606502b2667439d9049a9a2d5c960af8e9251466d6ff8923fb82432b299f1a4":"":"":"22ccc034c5345550f5bc0114f2951f0fe439ec3ecd8ac1fea8889dd12bfb8e":0
|
||||
|
||||
KWP AES-256 wrap CAVS 17.4 COUNT 0 PLEN 1
|
||||
depends_on:MBEDTLS_AES_C:MBEDTLS_NIST_KW_C:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_AES_256_KWP:"95da2700ca6fd9a52554ee2a8df1386f5b94a1a60ed8a4aef60a8d61ab5f225a":"":"":"06ba7ae6f3248cfdcf267507fa001bc4":"":"":"d1":0
|
||||
|
||||
KWP AES-256 wrap CAVS 17.4 COUNT 0 PLEN 8
|
||||
depends_on:MBEDTLS_AES_C:MBEDTLS_NIST_KW_C:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_AES_256_KWP:"3517f0efa7f0c4d74f91af83ece5e7503bcc5ab82907a6e4b7ed34d87b69ab1d":"":"":"0b06a9b635d50cda9d4210cb3a71f990":"":"":"897e0456b289ad31":0
|
||||
|
||||
KWP AES-256 wrap CAVS 17.4 COUNT 0 PLEN 9
|
||||
depends_on:MBEDTLS_AES_C:MBEDTLS_NIST_KW_C:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_AES_256_KWP:"70da43aac823c6dd37d1109f5b18feb4503c973288989745e2cc1cc21d9570c6":"":"":"d67b5b2ad15c645450e23b5e7b6d682f8ae20e716d470db7":"":"":"edf17d966ed896aee3":0
|
||||
|
||||
KWP AES-256 wrap CAVS 17.4 COUNT 0 PLEN 31
|
||||
depends_on:MBEDTLS_AES_C:MBEDTLS_NIST_KW_C:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_AES_256_KWP:"e9bb7f44c7baafbf392ab912589a2f8db53268106eafb74689bb1833136e6113":"":"":"15b9f06fbc765e5e3d55d6b824616f21921d2a6918ee7bf1406b524274e170b4a78333ca5ee92af5":"":"":"ffe952604834bff899e63658f34246815c91597eb40a21729e0a8a959b61f2":0
|
||||
KW AES-128 wrap CAVS 17.4 FAIL COUNT 1 CLEN 48
|
||||
depends_on:MBEDTLS_AES_C:MBEDTLS_NIST_KW_C
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_AES_128_KW:"5d4899ee66beff1bda1fc717a1ad4c50":"":"":"bb7fd0bce778bd775e4e88d904d26a7134364c53a6c493a0":"":"FAIL":"":0
|
||||
|
||||
KW AES-128 wrap CAVS 17.4 FAIL COUNT 1 CLEN 80
|
||||
depends_on:MBEDTLS_AES_C:MBEDTLS_NIST_KW_C
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_AES_128_KW:"84bc6ce7ee4fd9db512536669d0686da":"":"":"c383db930ffd02c0073ac2cc79ec289e6866bdcc6a135a3b776aa42f14ee04f9cca06ed6c0b22901":"":"FAIL":"":0
|
||||
|
||||
KW AES-128 wrap CAVS 17.4 FAIL COUNT 3 CLEN 64
|
||||
depends_on:MBEDTLS_AES_C:MBEDTLS_NIST_KW_C
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_AES_128_KW:"266b009e911bb55f9aa0661539a6fdd5":"":"":"db9c94e7236ec56982d7ddeb9427c24580bc1fb96db98ab19340e03670045b7a":"":"FAIL":"":0
|
||||
|
||||
KW AES-192 wrap CAVS 17.4 FAIL COUNT 3 CLEN 48
|
||||
depends_on:MBEDTLS_AES_C:MBEDTLS_NIST_KW_C:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_AES_192_KW:"9200a0f688d86c0b6bfd9abeff66341684a373fe3f9a3057":"":"":"5c685c8596e374710fe327bafc45cd09190215fdcc03d010":"":"FAIL":"":0
|
||||
|
||||
KW AES-192 wrap CAVS 17.4 FAIL COUNT 1 CLEN 80
|
||||
depends_on:MBEDTLS_AES_C:MBEDTLS_NIST_KW_C:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_AES_192_KW:"95c9e644559919cace6f93f545dbfe48b130808ed66d0964":"":"":"7b8d1307e992221f6ffdcc7909d972d5f02e92187139cfd77f79345cb998bbdbabedb3ac00a6cdc4":"":"FAIL":"":0
|
||||
|
||||
KW AES-192 wrap CAVS 17.4 FAIL COUNT 2 CLEN 64
|
||||
depends_on:MBEDTLS_AES_C:MBEDTLS_NIST_KW_C:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_AES_192_KW:"e218e9643d5db01b412fcaefafe5eb237d03acfad0a3abaa":"":"":"5eee8fbf6a8ab6ba371f4581982ec61839bf28c0eb913d1f417a284dccd72580":"":"FAIL":"":0
|
||||
|
||||
KW AES-256 wrap CAVS 17.4 FAIL COUNT 4 CLEN 48
|
||||
depends_on:MBEDTLS_AES_C:MBEDTLS_NIST_KW_C:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_AES_256_KW:"08c936b25b567a0aa679c29f201bf8b190327df0c2563e39cee061f149f4d91b":"":"":"e227eb8ae9d239ccd8928adec39c28810ca9b3dc1f366444":"":"FAIL":"":0
|
||||
|
||||
KW AES-256 wrap CAVS 17.4 FAIL COUNT 3 CLEN 80
|
||||
depends_on:MBEDTLS_AES_C:MBEDTLS_NIST_KW_C:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_AES_256_KW:"605b22935f1eee56ba884bc7a869febc159ac306b66fb9767a7cc6ab7068dffa":"":"":"6607f5a64c8f9fd96dc6f9f735b06a193762cdbacfc367e410926c1bfe6dd715490adbad5b9697a6":"":"FAIL":"":0
|
||||
|
||||
KW AES-256 wrap CAVS 17.4 FAIL COUNT 3 CLEN 64
|
||||
depends_on:MBEDTLS_AES_C:MBEDTLS_NIST_KW_C:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_AES_256_KW:"81c93da5baa5157bf700fd38d7d67662670778b690cfbca9fe11e06268b35605":"":"":"875e1ca385586f83d1e23e44ca201006df04e1854e41b933fd607a7383ae1a39":"":"FAIL":"":0
|
||||
|
||||
KWP AES-128 wrap CAVS 17.4 FAIL COUNT 1 CLEN 32
|
||||
depends_on:MBEDTLS_AES_C:MBEDTLS_NIST_KW_C
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_AES_128_KWP:"30be7ff51227f0eef786cb7be2482510":"":"":"7f61a0a8b2fe7803f2947d233ec3a255":"":"FAIL":"":0
|
||||
|
||||
KWP AES-192 wrap CAVS 17.4 FAIL COUNT 3 CLEN 32
|
||||
depends_on:MBEDTLS_AES_C:MBEDTLS_NIST_KW_C:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_AES_192_KWP:"21fb6600c1d34a74adee67612672593a86cf235421735350":"":"":"56b45c49c3e379b18d9c38b6423db133":"":"FAIL":"":0
|
||||
|
||||
KWP AES-256 wrap CAVS 17.4 FAIL COUNT 4 CLEN 32
|
||||
depends_on:MBEDTLS_AES_C:MBEDTLS_NIST_KW_C:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
auth_crypt_tv:MBEDTLS_CIPHER_AES_256_KWP:"c32cb3e1e41a4b9f4de79989957866f5dd48dba38c22a6ebb80e14c84bdd9534":"":"":"c29b05c2619a58ecc1d239e7a34273cd":"":"FAIL":"":0
|
||||
95
vendor/mbedtls/tests/suites/test_suite_cipher.null.data
vendored
Normal file
95
vendor/mbedtls/tests/suites/test_suite_cipher.null.data
vendored
Normal file
@@ -0,0 +1,95 @@
|
||||
NULL Encrypt and decrypt 0 bytes
|
||||
depends_on:MBEDTLS_CIPHER_NULL_CIPHER
|
||||
enc_dec_buf:MBEDTLS_CIPHER_NULL:"NULL":0:0:-1
|
||||
|
||||
NULL Encrypt and decrypt 1 bytes
|
||||
depends_on:MBEDTLS_CIPHER_NULL_CIPHER
|
||||
enc_dec_buf:MBEDTLS_CIPHER_NULL:"NULL":0:1:-1
|
||||
|
||||
NULL Encrypt and decrypt 2 bytes
|
||||
depends_on:MBEDTLS_CIPHER_NULL_CIPHER
|
||||
enc_dec_buf:MBEDTLS_CIPHER_NULL:"NULL":0:2:-1
|
||||
|
||||
NULL Encrypt and decrypt 7 bytes
|
||||
depends_on:MBEDTLS_CIPHER_NULL_CIPHER
|
||||
enc_dec_buf:MBEDTLS_CIPHER_NULL:"NULL":0:7:-1
|
||||
|
||||
NULL Encrypt and decrypt 8 bytes
|
||||
depends_on:MBEDTLS_CIPHER_NULL_CIPHER
|
||||
enc_dec_buf:MBEDTLS_CIPHER_NULL:"NULL":0:8:-1
|
||||
|
||||
NULL Encrypt and decrypt 9 bytes
|
||||
depends_on:MBEDTLS_CIPHER_NULL_CIPHER
|
||||
enc_dec_buf:MBEDTLS_CIPHER_NULL:"NULL":0:9:-1
|
||||
|
||||
NULL Encrypt and decrypt 15 bytes
|
||||
depends_on:MBEDTLS_CIPHER_NULL_CIPHER
|
||||
enc_dec_buf:MBEDTLS_CIPHER_NULL:"NULL":0:15:-1
|
||||
|
||||
NULL Encrypt and decrypt 16 bytes
|
||||
depends_on:MBEDTLS_CIPHER_NULL_CIPHER
|
||||
enc_dec_buf:MBEDTLS_CIPHER_NULL:"NULL":0:16:-1
|
||||
|
||||
NULL Encrypt and decrypt 31 bytes
|
||||
depends_on:MBEDTLS_CIPHER_NULL_CIPHER
|
||||
enc_dec_buf:MBEDTLS_CIPHER_NULL:"NULL":0:31:-1
|
||||
|
||||
NULL Encrypt and decrypt 32 bytes
|
||||
depends_on:MBEDTLS_CIPHER_NULL_CIPHER
|
||||
enc_dec_buf:MBEDTLS_CIPHER_NULL:"NULL":0:32:-1
|
||||
|
||||
NULL Encrypt and decrypt 33 bytes
|
||||
depends_on:MBEDTLS_CIPHER_NULL_CIPHER
|
||||
enc_dec_buf:MBEDTLS_CIPHER_NULL:"NULL":0:33:-1
|
||||
|
||||
NULL Encrypt and decrypt 47 bytes
|
||||
depends_on:MBEDTLS_CIPHER_NULL_CIPHER
|
||||
enc_dec_buf:MBEDTLS_CIPHER_NULL:"NULL":0:47:-1
|
||||
|
||||
NULL Encrypt and decrypt 48 bytes
|
||||
depends_on:MBEDTLS_CIPHER_NULL_CIPHER
|
||||
enc_dec_buf:MBEDTLS_CIPHER_NULL:"NULL":0:48:-1
|
||||
|
||||
NULL Encrypt and decrypt 49 bytes
|
||||
depends_on:MBEDTLS_CIPHER_NULL_CIPHER
|
||||
enc_dec_buf:MBEDTLS_CIPHER_NULL:"NULL":0:49:-1
|
||||
|
||||
NULL Encrypt and decrypt 1 bytes in multiple parts 1
|
||||
depends_on:MBEDTLS_CIPHER_NULL_CIPHER
|
||||
enc_dec_buf_multipart:MBEDTLS_CIPHER_NULL:0:1:0:-1:1:0:1:0
|
||||
|
||||
NULL Encrypt and decrypt 1 bytes in multiple parts 2
|
||||
depends_on:MBEDTLS_CIPHER_NULL_CIPHER
|
||||
enc_dec_buf_multipart:MBEDTLS_CIPHER_NULL:0:0:1:-1:0:1:0:1
|
||||
|
||||
NULL Encrypt and decrypt 16 bytes in multiple parts 1
|
||||
depends_on:MBEDTLS_CIPHER_NULL_CIPHER
|
||||
enc_dec_buf_multipart:MBEDTLS_CIPHER_NULL:0:16:0:-1:16:0:16:0
|
||||
|
||||
NULL Encrypt and decrypt 16 bytes in multiple parts 2
|
||||
depends_on:MBEDTLS_CIPHER_NULL_CIPHER
|
||||
enc_dec_buf_multipart:MBEDTLS_CIPHER_NULL:0:0:16:-1:0:16:0:16
|
||||
|
||||
NULL Encrypt and decrypt 16 bytes in multiple parts 3
|
||||
depends_on:MBEDTLS_CIPHER_NULL_CIPHER
|
||||
enc_dec_buf_multipart:MBEDTLS_CIPHER_NULL:0:1:15:-1:1:15:1:15
|
||||
|
||||
NULL Encrypt and decrypt 16 bytes in multiple parts 4
|
||||
depends_on:MBEDTLS_CIPHER_NULL_CIPHER
|
||||
enc_dec_buf_multipart:MBEDTLS_CIPHER_NULL:0:15:1:-1:15:1:15:1
|
||||
|
||||
NULL Encrypt and decrypt 22 bytes in multiple parts 1 [#1]
|
||||
depends_on:MBEDTLS_CIPHER_NULL_CIPHER
|
||||
enc_dec_buf_multipart:MBEDTLS_CIPHER_NULL:0:15:7:-1:15:7:15:7
|
||||
|
||||
NULL Encrypt and decrypt 22 bytes in multiple parts 1 [#2]
|
||||
depends_on:MBEDTLS_CIPHER_NULL_CIPHER
|
||||
enc_dec_buf_multipart:MBEDTLS_CIPHER_NULL:0:16:6:-1:16:6:16:6
|
||||
|
||||
NULL Encrypt and decrypt 22 bytes in multiple parts 1 [#3]
|
||||
depends_on:MBEDTLS_CIPHER_NULL_CIPHER
|
||||
enc_dec_buf_multipart:MBEDTLS_CIPHER_NULL:0:17:6:-1:17:6:17:6
|
||||
|
||||
NULL Encrypt and decrypt 32 bytes in multiple parts 1
|
||||
depends_on:MBEDTLS_CIPHER_NULL_CIPHER
|
||||
enc_dec_buf_multipart:MBEDTLS_CIPHER_NULL:0:16:16:-1:16:16:16:16
|
||||
219
vendor/mbedtls/tests/suites/test_suite_cipher.padding.data
vendored
Normal file
219
vendor/mbedtls/tests/suites/test_suite_cipher.padding.data
vendored
Normal file
@@ -0,0 +1,219 @@
|
||||
Cipher list
|
||||
mbedtls_cipher_list:
|
||||
|
||||
Set padding with AES-CBC
|
||||
depends_on:MBEDTLS_AES_C:MBEDTLS_CIPHER_MODE_CBC:MBEDTLS_CIPHER_PADDING_PKCS7
|
||||
set_padding:MBEDTLS_CIPHER_AES_128_CBC:MBEDTLS_PADDING_PKCS7:0
|
||||
|
||||
Set padding with AES-CFB
|
||||
depends_on:MBEDTLS_AES_C:MBEDTLS_CIPHER_MODE_CFB
|
||||
set_padding:MBEDTLS_CIPHER_AES_128_CFB128:MBEDTLS_PADDING_PKCS7:MBEDTLS_ERR_CIPHER_BAD_INPUT_DATA
|
||||
|
||||
Set padding with AES-CTR
|
||||
depends_on:MBEDTLS_AES_C:MBEDTLS_CIPHER_MODE_CTR
|
||||
set_padding:MBEDTLS_CIPHER_AES_128_CTR:MBEDTLS_PADDING_PKCS7:MBEDTLS_ERR_CIPHER_BAD_INPUT_DATA
|
||||
|
||||
Set padding with CAMELLIA-CBC
|
||||
depends_on:MBEDTLS_CAMELLIA_C:MBEDTLS_CIPHER_MODE_CBC:MBEDTLS_CIPHER_PADDING_PKCS7
|
||||
set_padding:MBEDTLS_CIPHER_CAMELLIA_128_CBC:MBEDTLS_PADDING_PKCS7:0
|
||||
|
||||
Set padding with CAMELLIA-CFB
|
||||
depends_on:MBEDTLS_CAMELLIA_C:MBEDTLS_CIPHER_MODE_CFB
|
||||
set_padding:MBEDTLS_CIPHER_CAMELLIA_128_CFB128:MBEDTLS_PADDING_PKCS7:MBEDTLS_ERR_CIPHER_BAD_INPUT_DATA
|
||||
|
||||
Set padding with CAMELLIA-CTR
|
||||
depends_on:MBEDTLS_CAMELLIA_C:MBEDTLS_CIPHER_MODE_CTR
|
||||
set_padding:MBEDTLS_CIPHER_CAMELLIA_128_CTR:MBEDTLS_PADDING_PKCS7:MBEDTLS_ERR_CIPHER_BAD_INPUT_DATA
|
||||
|
||||
Set padding with DES-CBC
|
||||
depends_on:MBEDTLS_DES_C:MBEDTLS_CIPHER_MODE_CBC:MBEDTLS_CIPHER_PADDING_PKCS7
|
||||
set_padding:MBEDTLS_CIPHER_DES_CBC:MBEDTLS_PADDING_PKCS7:0
|
||||
|
||||
Set padding with NULL
|
||||
depends_on:MBEDTLS_CIPHER_NULL_CIPHER
|
||||
set_padding:MBEDTLS_CIPHER_NULL:MBEDTLS_PADDING_PKCS7:MBEDTLS_ERR_CIPHER_BAD_INPUT_DATA
|
||||
|
||||
Set non-existent padding with AES-CBC
|
||||
depends_on:MBEDTLS_AES_C:MBEDTLS_CIPHER_MODE_CBC
|
||||
set_padding:MBEDTLS_CIPHER_AES_128_CBC:-1:MBEDTLS_ERR_CIPHER_FEATURE_UNAVAILABLE
|
||||
|
||||
Set non-existent padding with CAMELLIA-CBC
|
||||
depends_on:MBEDTLS_CAMELLIA_C:MBEDTLS_CIPHER_MODE_CBC
|
||||
set_padding:MBEDTLS_CIPHER_CAMELLIA_128_CBC:-1:MBEDTLS_ERR_CIPHER_FEATURE_UNAVAILABLE
|
||||
|
||||
Set non-existent padding with DES-CBC
|
||||
depends_on:MBEDTLS_DES_C:MBEDTLS_CIPHER_MODE_CBC
|
||||
set_padding:MBEDTLS_CIPHER_DES_CBC:-1:MBEDTLS_ERR_CIPHER_FEATURE_UNAVAILABLE
|
||||
|
||||
Check PKCS padding #1 (correct)
|
||||
depends_on:MBEDTLS_CIPHER_PADDING_PKCS7
|
||||
check_padding:MBEDTLS_PADDING_PKCS7:"DABBAD0004040404":0:4
|
||||
|
||||
Check PKCS padding #2 (correct)
|
||||
depends_on:MBEDTLS_CIPHER_PADDING_PKCS7
|
||||
check_padding:MBEDTLS_PADDING_PKCS7:"DABBAD0001":0:4
|
||||
|
||||
Check PKCS padding #3 (correct)
|
||||
depends_on:MBEDTLS_CIPHER_PADDING_PKCS7
|
||||
check_padding:MBEDTLS_PADDING_PKCS7:"DABBAD000101":0:5
|
||||
|
||||
Check PKCS padding #4 (correct)
|
||||
depends_on:MBEDTLS_CIPHER_PADDING_PKCS7
|
||||
check_padding:MBEDTLS_PADDING_PKCS7:"030303":0:0
|
||||
|
||||
Check PKCS padding #5 (null padding)
|
||||
depends_on:MBEDTLS_CIPHER_PADDING_PKCS7
|
||||
check_padding:MBEDTLS_PADDING_PKCS7:"DABBAD0000":MBEDTLS_ERR_CIPHER_INVALID_PADDING:0
|
||||
|
||||
Check PKCS padding #6 (too few padding bytes)
|
||||
depends_on:MBEDTLS_CIPHER_PADDING_PKCS7
|
||||
check_padding:MBEDTLS_PADDING_PKCS7:"DABBAD0002":MBEDTLS_ERR_CIPHER_INVALID_PADDING:0
|
||||
|
||||
Check PKCS padding #7 (non-uniform padding bytes #1)
|
||||
depends_on:MBEDTLS_CIPHER_PADDING_PKCS7
|
||||
check_padding:MBEDTLS_PADDING_PKCS7:"DABBAD00030203":MBEDTLS_ERR_CIPHER_INVALID_PADDING:0
|
||||
|
||||
Check PKCS padding #7 (non-uniform padding bytes #2)
|
||||
depends_on:MBEDTLS_CIPHER_PADDING_PKCS7
|
||||
check_padding:MBEDTLS_PADDING_PKCS7:"DABBAD00030103":MBEDTLS_ERR_CIPHER_INVALID_PADDING:0
|
||||
|
||||
Check PKCS padding #7 (non-uniform padding bytes #3)
|
||||
depends_on:MBEDTLS_CIPHER_PADDING_PKCS7
|
||||
check_padding:MBEDTLS_PADDING_PKCS7:"DABBAD00030703":MBEDTLS_ERR_CIPHER_INVALID_PADDING:0
|
||||
|
||||
Check PKCS padding #7 (non-uniform padding bytes #4)
|
||||
depends_on:MBEDTLS_CIPHER_PADDING_PKCS7
|
||||
check_padding:MBEDTLS_PADDING_PKCS7:"DABBAD00030b03":MBEDTLS_ERR_CIPHER_INVALID_PADDING:0
|
||||
|
||||
Check PKCS padding #7 (non-uniform padding bytes #5)
|
||||
depends_on:MBEDTLS_CIPHER_PADDING_PKCS7
|
||||
check_padding:MBEDTLS_PADDING_PKCS7:"DABBAD00031303":MBEDTLS_ERR_CIPHER_INVALID_PADDING:0
|
||||
|
||||
Check PKCS padding #7 (non-uniform padding bytes #6)
|
||||
depends_on:MBEDTLS_CIPHER_PADDING_PKCS7
|
||||
check_padding:MBEDTLS_PADDING_PKCS7:"DABBAD00032303":MBEDTLS_ERR_CIPHER_INVALID_PADDING:0
|
||||
|
||||
Check PKCS padding #7 (non-uniform padding bytes #7)
|
||||
depends_on:MBEDTLS_CIPHER_PADDING_PKCS7
|
||||
check_padding:MBEDTLS_PADDING_PKCS7:"DABBAD00034203":MBEDTLS_ERR_CIPHER_INVALID_PADDING:0
|
||||
|
||||
Check PKCS padding #7 (non-uniform padding bytes #8)
|
||||
depends_on:MBEDTLS_CIPHER_PADDING_PKCS7
|
||||
check_padding:MBEDTLS_PADDING_PKCS7:"DABBAD00038303":MBEDTLS_ERR_CIPHER_INVALID_PADDING:0
|
||||
|
||||
Check PKCS padding #7 (non-uniform padding bytes #9)
|
||||
depends_on:MBEDTLS_CIPHER_PADDING_PKCS7
|
||||
check_padding:MBEDTLS_PADDING_PKCS7:"DABBAD00020303":MBEDTLS_ERR_CIPHER_INVALID_PADDING:0
|
||||
|
||||
Check PKCS padding #7 (non-uniform padding bytes #10)
|
||||
depends_on:MBEDTLS_CIPHER_PADDING_PKCS7
|
||||
check_padding:MBEDTLS_PADDING_PKCS7:"DABBAD00010303":MBEDTLS_ERR_CIPHER_INVALID_PADDING:0
|
||||
|
||||
Check PKCS padding #7 (non-uniform padding bytes #11)
|
||||
depends_on:MBEDTLS_CIPHER_PADDING_PKCS7
|
||||
check_padding:MBEDTLS_PADDING_PKCS7:"DABBAD00070303":MBEDTLS_ERR_CIPHER_INVALID_PADDING:0
|
||||
|
||||
Check PKCS padding #7 (non-uniform padding bytes #12)
|
||||
depends_on:MBEDTLS_CIPHER_PADDING_PKCS7
|
||||
check_padding:MBEDTLS_PADDING_PKCS7:"DABBAD000b0303":MBEDTLS_ERR_CIPHER_INVALID_PADDING:0
|
||||
|
||||
Check PKCS padding #7 (non-uniform padding bytes #13)
|
||||
depends_on:MBEDTLS_CIPHER_PADDING_PKCS7
|
||||
check_padding:MBEDTLS_PADDING_PKCS7:"DABBAD00130303":MBEDTLS_ERR_CIPHER_INVALID_PADDING:0
|
||||
|
||||
Check PKCS padding #7 (non-uniform padding bytes #14)
|
||||
depends_on:MBEDTLS_CIPHER_PADDING_PKCS7
|
||||
check_padding:MBEDTLS_PADDING_PKCS7:"DABBAD00230303":MBEDTLS_ERR_CIPHER_INVALID_PADDING:0
|
||||
|
||||
Check PKCS padding #7 (non-uniform padding bytes #15)
|
||||
depends_on:MBEDTLS_CIPHER_PADDING_PKCS7
|
||||
check_padding:MBEDTLS_PADDING_PKCS7:"DABBAD00420303":MBEDTLS_ERR_CIPHER_INVALID_PADDING:0
|
||||
|
||||
Check PKCS padding #7 (non-uniform padding bytes #16)
|
||||
depends_on:MBEDTLS_CIPHER_PADDING_PKCS7
|
||||
check_padding:MBEDTLS_PADDING_PKCS7:"DABBAD00830303":MBEDTLS_ERR_CIPHER_INVALID_PADDING:0
|
||||
|
||||
Check PKCS padding #8 (overlong)
|
||||
depends_on:MBEDTLS_CIPHER_PADDING_PKCS7
|
||||
check_padding:MBEDTLS_PADDING_PKCS7:"040404":MBEDTLS_ERR_CIPHER_INVALID_PADDING:0
|
||||
|
||||
Check one and zeros padding #1 (correct)
|
||||
depends_on:MBEDTLS_CIPHER_PADDING_ONE_AND_ZEROS
|
||||
check_padding:MBEDTLS_PADDING_ONE_AND_ZEROS:"DABBAD0080":0:4
|
||||
|
||||
Check one and zeros padding #2 (correct)
|
||||
depends_on:MBEDTLS_CIPHER_PADDING_ONE_AND_ZEROS
|
||||
check_padding:MBEDTLS_PADDING_ONE_AND_ZEROS:"DABBAD008000":0:4
|
||||
|
||||
Check one and zeros padding #3 (correct)
|
||||
depends_on:MBEDTLS_CIPHER_PADDING_ONE_AND_ZEROS
|
||||
check_padding:MBEDTLS_PADDING_ONE_AND_ZEROS:"DABBAD00800000":0:4
|
||||
|
||||
Check one and zeros padding #4 (correct)
|
||||
depends_on:MBEDTLS_CIPHER_PADDING_ONE_AND_ZEROS
|
||||
check_padding:MBEDTLS_PADDING_ONE_AND_ZEROS:"DABBAD00808000":0:5
|
||||
|
||||
Check one and zeros padding #5 (correct)
|
||||
depends_on:MBEDTLS_CIPHER_PADDING_ONE_AND_ZEROS
|
||||
check_padding:MBEDTLS_PADDING_ONE_AND_ZEROS:"800000":0:0
|
||||
|
||||
Check one and zeros padding #6 (missing one)
|
||||
depends_on:MBEDTLS_CIPHER_PADDING_ONE_AND_ZEROS
|
||||
check_padding:MBEDTLS_PADDING_ONE_AND_ZEROS:"DABBAD0000":MBEDTLS_ERR_CIPHER_INVALID_PADDING:4
|
||||
|
||||
Check one and zeros padding #7 (overlong)
|
||||
depends_on:MBEDTLS_CIPHER_PADDING_ONE_AND_ZEROS
|
||||
check_padding:MBEDTLS_PADDING_ONE_AND_ZEROS:"0000000000":MBEDTLS_ERR_CIPHER_INVALID_PADDING:4
|
||||
|
||||
Check one and zeros padding #8 (last byte 0x80 | x)
|
||||
depends_on:MBEDTLS_CIPHER_PADDING_ONE_AND_ZEROS
|
||||
check_padding:MBEDTLS_PADDING_ONE_AND_ZEROS:"0000000082":MBEDTLS_ERR_CIPHER_INVALID_PADDING:4
|
||||
|
||||
Check zeros and len padding #1 (correct)
|
||||
depends_on:MBEDTLS_CIPHER_PADDING_ZEROS_AND_LEN
|
||||
check_padding:MBEDTLS_PADDING_ZEROS_AND_LEN:"DABBAD0001":0:4
|
||||
|
||||
Check zeros and len padding #2 (correct)
|
||||
depends_on:MBEDTLS_CIPHER_PADDING_ZEROS_AND_LEN
|
||||
check_padding:MBEDTLS_PADDING_ZEROS_AND_LEN:"DABBAD000002":0:4
|
||||
|
||||
Check zeros and len padding #3 (correct)
|
||||
depends_on:MBEDTLS_CIPHER_PADDING_ZEROS_AND_LEN
|
||||
check_padding:MBEDTLS_PADDING_ZEROS_AND_LEN:"DABBAD000003":0:3
|
||||
|
||||
Check zeros and len padding #4 (correct)
|
||||
depends_on:MBEDTLS_CIPHER_PADDING_ZEROS_AND_LEN
|
||||
check_padding:MBEDTLS_PADDING_ZEROS_AND_LEN:"000003":0:0
|
||||
|
||||
Check zeros and len padding #5 (overlong)
|
||||
depends_on:MBEDTLS_CIPHER_PADDING_ZEROS_AND_LEN
|
||||
check_padding:MBEDTLS_PADDING_ZEROS_AND_LEN:"000004":MBEDTLS_ERR_CIPHER_INVALID_PADDING:0
|
||||
|
||||
Check zeros and len padding #6 (not enough zeros)
|
||||
depends_on:MBEDTLS_CIPHER_PADDING_ZEROS_AND_LEN
|
||||
check_padding:MBEDTLS_PADDING_ZEROS_AND_LEN:"DABBAD000004":MBEDTLS_ERR_CIPHER_INVALID_PADDING:0
|
||||
|
||||
Check zeros padding #1 (correct)
|
||||
depends_on:MBEDTLS_CIPHER_PADDING_ZEROS
|
||||
check_padding:MBEDTLS_PADDING_ZEROS:"DABBAD00":0:3
|
||||
|
||||
Check zeros padding #2 (correct)
|
||||
depends_on:MBEDTLS_CIPHER_PADDING_ZEROS
|
||||
check_padding:MBEDTLS_PADDING_ZEROS:"DABBAD0000":0:3
|
||||
|
||||
Check zeros padding #3 (correct)
|
||||
depends_on:MBEDTLS_CIPHER_PADDING_ZEROS
|
||||
check_padding:MBEDTLS_PADDING_ZEROS:"DABBAD":0:3
|
||||
|
||||
Check zeros padding #4 (correct)
|
||||
depends_on:MBEDTLS_CIPHER_PADDING_ZEROS
|
||||
check_padding:MBEDTLS_PADDING_ZEROS:"000000":0:0
|
||||
|
||||
Check no padding #1 (correct by definition)
|
||||
check_padding:MBEDTLS_PADDING_NONE:"DABBAD00":0:4
|
||||
|
||||
Check no padding #2 (correct by definition)
|
||||
check_padding:MBEDTLS_PADDING_NONE:"DABBAD0001":0:5
|
||||
|
||||
Check no padding #3 (correct by definition)
|
||||
check_padding:MBEDTLS_PADDING_NONE:"":0:0
|
||||
95
vendor/mbedtls/tests/suites/test_suite_cmac.data
vendored
Normal file
95
vendor/mbedtls/tests/suites/test_suite_cmac.data
vendored
Normal file
@@ -0,0 +1,95 @@
|
||||
CMAC self test
|
||||
mbedtls_cmac_self_test:
|
||||
|
||||
CMAC null arguments
|
||||
depends_on:MBEDTLS_AES_C
|
||||
mbedtls_cmac_null_args:
|
||||
|
||||
CMAC init #1 AES-128: OK
|
||||
depends_on:MBEDTLS_AES_C
|
||||
mbedtls_cmac_setkey:MBEDTLS_CIPHER_AES_128_ECB:128:0
|
||||
|
||||
CMAC init #2 AES-192: OK
|
||||
depends_on:MBEDTLS_AES_C:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
mbedtls_cmac_setkey:MBEDTLS_CIPHER_AES_192_ECB:192:0
|
||||
|
||||
CMAC init #3 AES-256: OK
|
||||
depends_on:MBEDTLS_AES_C:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
mbedtls_cmac_setkey:MBEDTLS_CIPHER_AES_256_ECB:256:0
|
||||
|
||||
CMAC init #4 3DES: OK
|
||||
depends_on:MBEDTLS_DES_C
|
||||
mbedtls_cmac_setkey:MBEDTLS_CIPHER_DES_EDE3_ECB:192:0
|
||||
|
||||
CMAC init #5 AES-224: bad key size
|
||||
depends_on:MBEDTLS_AES_C
|
||||
mbedtls_cmac_setkey:MBEDTLS_CIPHER_AES_128_ECB:224:MBEDTLS_ERR_CIPHER_BAD_INPUT_DATA
|
||||
|
||||
CMAC init #6 AES-0: bad key size
|
||||
depends_on:MBEDTLS_AES_C
|
||||
mbedtls_cmac_setkey:MBEDTLS_CIPHER_AES_128_ECB:0:MBEDTLS_ERR_CIPHER_BAD_INPUT_DATA
|
||||
|
||||
CMAC init Camellia-128: wrong cipher
|
||||
depends_on:MBEDTLS_CAMELLIA_C
|
||||
mbedtls_cmac_setkey:MBEDTLS_CIPHER_CAMELLIA_128_ECB:128:MBEDTLS_ERR_CIPHER_BAD_INPUT_DATA
|
||||
|
||||
CMAC init Camellia-192: wrong cipher
|
||||
depends_on:MBEDTLS_CAMELLIA_C
|
||||
mbedtls_cmac_setkey:MBEDTLS_CIPHER_CAMELLIA_192_ECB:192:MBEDTLS_ERR_CIPHER_BAD_INPUT_DATA
|
||||
|
||||
CMAC init Camellia-256: wrong cipher
|
||||
depends_on:MBEDTLS_CAMELLIA_C
|
||||
mbedtls_cmac_setkey:MBEDTLS_CIPHER_CAMELLIA_256_ECB:256:MBEDTLS_ERR_CIPHER_BAD_INPUT_DATA
|
||||
|
||||
CMAC init #8 ARIA-128: wrong cipher
|
||||
depends_on:MBEDTLS_ARIA_C
|
||||
mbedtls_cmac_setkey:MBEDTLS_CIPHER_ARIA_128_ECB:128:MBEDTLS_ERR_CIPHER_BAD_INPUT_DATA
|
||||
|
||||
CMAC init #8 ARIA-192: wrong cipher
|
||||
depends_on:MBEDTLS_ARIA_C
|
||||
mbedtls_cmac_setkey:MBEDTLS_CIPHER_ARIA_192_ECB:192:MBEDTLS_ERR_CIPHER_BAD_INPUT_DATA
|
||||
|
||||
CMAC init #8 ARIA-256: wrong cipher
|
||||
depends_on:MBEDTLS_ARIA_C
|
||||
mbedtls_cmac_setkey:MBEDTLS_CIPHER_ARIA_256_ECB:256:MBEDTLS_ERR_CIPHER_BAD_INPUT_DATA
|
||||
|
||||
CMAC Single Blocks #1 AES-128 - Empty block, no updates
|
||||
depends_on:MBEDTLS_AES_C
|
||||
mbedtls_cmac_multiple_blocks:MBEDTLS_CIPHER_AES_128_ECB:"2b7e151628aed2a6abf7158809cf4f3c":128:16:"":-1:"":-1:"":-1:"":-1:"bb1d6929e95937287fa37d129b756746"
|
||||
|
||||
CMAC Single Blocks #2 AES-128 - Single 16 byte block
|
||||
depends_on:MBEDTLS_AES_C
|
||||
mbedtls_cmac_multiple_blocks:MBEDTLS_CIPHER_AES_128_ECB:"2b7e151628aed2a6abf7158809cf4f3c":128:16:"6bc1bee22e409f96e93d7e117393172a":16:"":-1:"":-1:"":-1:"070a16b46b4d4144f79bdd9dd04a287c"
|
||||
|
||||
CMAC Single Blocks #3 AES-128 - Single 64 byte block
|
||||
depends_on:MBEDTLS_AES_C
|
||||
mbedtls_cmac_multiple_blocks:MBEDTLS_CIPHER_AES_128_ECB:"2b7e151628aed2a6abf7158809cf4f3c":128:16:"6bc1bee22e409f96e93d7e117393172aae2d8a571e03ac9c9eb76fac45af8e5130c81c46a35ce411e5fbc1191a0a52eff69f2445df4f9b17ad2b417be66c3710":64:"":-1:"":-1:"":-1:"51f0bebf7e3b9d92fc49741779363cfe"
|
||||
|
||||
CMAC Multiple Blocks #1 AES-128 - Multiple 8 byte blocks
|
||||
depends_on:MBEDTLS_AES_C
|
||||
mbedtls_cmac_multiple_blocks:MBEDTLS_CIPHER_AES_128_ECB:"2b7e151628aed2a6abf7158809cf4f3c":128:16:"6bc1bee22e409f96":8:"e93d7e117393172a":8:"":-1:"":-1:"070a16b46b4d4144f79bdd9dd04a287c"
|
||||
|
||||
CMAC Multiple Blocks #2 AES-128 - Multiple 16 byte blocks
|
||||
depends_on:MBEDTLS_AES_C
|
||||
mbedtls_cmac_multiple_blocks:MBEDTLS_CIPHER_AES_128_ECB:"2b7e151628aed2a6abf7158809cf4f3c":128:16:"6bc1bee22e409f96e93d7e117393172a":16:"ae2d8a571e03ac9c9eb76fac45af8e51":16:"30c81c46a35ce411e5fbc1191a0a52ef":16:"f69f2445df4f9b17ad2b417be66c3710":16:"51f0bebf7e3b9d92fc49741779363cfe"
|
||||
|
||||
CMAC Multiple Blocks #3 AES-128 - Multiple variable sized blocks
|
||||
depends_on:MBEDTLS_AES_C
|
||||
mbedtls_cmac_multiple_blocks:MBEDTLS_CIPHER_AES_128_ECB:"2b7e151628aed2a6abf7158809cf4f3c":128:16:"6bc1bee22e409f96":8:"e93d7e117393172aae2d8a571e03ac9c":16:"9eb76fac45af8e5130c81c46a35ce411e5fbc1191a0a52ef":24:"f69f2445df4f9b17ad2b417be66c3710":16:"51f0bebf7e3b9d92fc49741779363cfe"
|
||||
|
||||
CMAC Multiple Blocks #4 AES-128 - Multiple 8 byte blocks with gaps
|
||||
depends_on:MBEDTLS_AES_C
|
||||
mbedtls_cmac_multiple_blocks:MBEDTLS_CIPHER_AES_128_ECB:"2b7e151628aed2a6abf7158809cf4f3c":128:16:"":0:"6bc1bee22e409f96":8:"":0:"e93d7e117393172a":8:"070a16b46b4d4144f79bdd9dd04a287c"
|
||||
|
||||
CMAC Multiple Operations, same key #1 AES-192 - Empty, empty
|
||||
depends_on:MBEDTLS_AES_C:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
mbedtls_cmac_multiple_operations_same_key:MBEDTLS_CIPHER_AES_192_ECB:"8e73b0f7da0e6452c810f32b809079e562f8ead2522c6b7b":192:16:"":-1:"":-1:"":-1:"d17ddf46adaacde531cac483de7a9367":"":-1:"":-1:"":-1:"d17ddf46adaacde531cac483de7a9367"
|
||||
|
||||
CMAC Multiple Operations, same key #2 AES-192 - Empty, 64 byte block
|
||||
depends_on:MBEDTLS_AES_C:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
mbedtls_cmac_multiple_operations_same_key:MBEDTLS_CIPHER_AES_192_ECB:"8e73b0f7da0e6452c810f32b809079e562f8ead2522c6b7b":192:16:"":-1:"":-1:"":-1:"d17ddf46adaacde531cac483de7a9367":"6bc1bee22e409f96e93d7e117393172aae2d8a571e03ac9c9eb76fac45af8e5130c81c46a35ce411e5fbc1191a0a52eff69f2445df4f9b17ad2b417be66c3710":64:"":-1:"":-1:"a1d5df0eed790f794d77589659f39a11"
|
||||
|
||||
CMAC Multiple Operations, same key #3 AES-192 - variable byte blocks
|
||||
depends_on:MBEDTLS_AES_C:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
|
||||
mbedtls_cmac_multiple_operations_same_key:MBEDTLS_CIPHER_AES_192_ECB:"8e73b0f7da0e6452c810f32b809079e562f8ead2522c6b7b":192:16:"6bc1bee22e409f96e93d7e117393172aae2d8a571e03ac9c9eb76fac45af8e51":32:"30c81c46a35ce411e5fbc1191a0a52eff69f2445df4f9b17ad2b417be66c3710":32:"":-1:"a1d5df0eed790f794d77589659f39a11":"6bc1bee22e409f96e93d7e117393172aae2d8a571e03ac9c9eb76fac45af8e51":32:"30c81c46a35ce411e5fbc1191a0a52eff69f2445df4f9b17ad2b417be66c3710":32:"":-1:"a1d5df0eed790f794d77589659f39a11"
|
||||
|
||||
301
vendor/mbedtls/tests/suites/test_suite_cmac.function
vendored
Normal file
301
vendor/mbedtls/tests/suites/test_suite_cmac.function
vendored
Normal file
@@ -0,0 +1,301 @@
|
||||
/* BEGIN_HEADER */
|
||||
#include "mbedtls/cipher.h"
|
||||
#include "mbedtls/cmac.h"
|
||||
/* END_HEADER */
|
||||
|
||||
/* BEGIN_DEPENDENCIES
|
||||
* depends_on:MBEDTLS_CMAC_C
|
||||
* END_DEPENDENCIES
|
||||
*/
|
||||
|
||||
/* BEGIN_CASE depends_on:MBEDTLS_SELF_TEST */
|
||||
void mbedtls_cmac_self_test()
|
||||
{
|
||||
TEST_ASSERT(mbedtls_cmac_self_test(1) == 0);
|
||||
}
|
||||
/* END_CASE */
|
||||
|
||||
/* BEGIN_CASE */
|
||||
void mbedtls_cmac_null_args()
|
||||
{
|
||||
mbedtls_cipher_context_t ctx;
|
||||
const mbedtls_cipher_info_t *cipher_info;
|
||||
unsigned char test_key[MBEDTLS_CMAC_MAX_BLOCK_SIZE];
|
||||
unsigned char test_data[MBEDTLS_CMAC_MAX_BLOCK_SIZE];
|
||||
unsigned char test_output[MBEDTLS_CMAC_MAX_BLOCK_SIZE];
|
||||
|
||||
mbedtls_cipher_init(&ctx);
|
||||
|
||||
/* Test NULL cipher info */
|
||||
TEST_ASSERT(mbedtls_cipher_cmac_update(&ctx, test_data, 16) ==
|
||||
MBEDTLS_ERR_CIPHER_BAD_INPUT_DATA);
|
||||
|
||||
cipher_info = mbedtls_cipher_info_from_type(MBEDTLS_CIPHER_AES_128_ECB);
|
||||
TEST_ASSERT(mbedtls_cipher_setup(&ctx, cipher_info) == 0);
|
||||
|
||||
TEST_ASSERT(mbedtls_cipher_cmac_starts(NULL, test_key, 128) ==
|
||||
MBEDTLS_ERR_CIPHER_BAD_INPUT_DATA);
|
||||
|
||||
TEST_ASSERT(mbedtls_cipher_cmac_starts(&ctx, NULL, 128) ==
|
||||
MBEDTLS_ERR_CIPHER_BAD_INPUT_DATA);
|
||||
|
||||
TEST_ASSERT(mbedtls_cipher_cmac_update(NULL, test_data, 16) ==
|
||||
MBEDTLS_ERR_CIPHER_BAD_INPUT_DATA);
|
||||
|
||||
TEST_ASSERT(mbedtls_cipher_cmac_update(&ctx, NULL, 16) ==
|
||||
MBEDTLS_ERR_CIPHER_BAD_INPUT_DATA);
|
||||
|
||||
TEST_ASSERT(mbedtls_cipher_cmac_finish(NULL, test_output) ==
|
||||
MBEDTLS_ERR_CIPHER_BAD_INPUT_DATA);
|
||||
|
||||
TEST_ASSERT(mbedtls_cipher_cmac_finish(&ctx, NULL) ==
|
||||
MBEDTLS_ERR_CIPHER_BAD_INPUT_DATA);
|
||||
|
||||
TEST_ASSERT(mbedtls_cipher_cmac_reset(NULL) ==
|
||||
MBEDTLS_ERR_CIPHER_BAD_INPUT_DATA);
|
||||
|
||||
TEST_ASSERT(mbedtls_cipher_cmac(NULL,
|
||||
test_key, 128,
|
||||
test_data, 16,
|
||||
test_output) ==
|
||||
MBEDTLS_ERR_CIPHER_BAD_INPUT_DATA);
|
||||
|
||||
TEST_ASSERT(mbedtls_cipher_cmac(cipher_info,
|
||||
NULL, 128,
|
||||
test_data, 16,
|
||||
test_output) ==
|
||||
MBEDTLS_ERR_CIPHER_BAD_INPUT_DATA);
|
||||
|
||||
TEST_ASSERT(mbedtls_cipher_cmac(cipher_info,
|
||||
test_key, 128,
|
||||
NULL, 16,
|
||||
test_output) ==
|
||||
MBEDTLS_ERR_CIPHER_BAD_INPUT_DATA);
|
||||
|
||||
TEST_ASSERT(mbedtls_cipher_cmac(cipher_info,
|
||||
test_key, 128,
|
||||
test_data, 16,
|
||||
NULL) ==
|
||||
MBEDTLS_ERR_CIPHER_BAD_INPUT_DATA);
|
||||
#if defined(MBEDTLS_AES_C)
|
||||
TEST_ASSERT(mbedtls_aes_cmac_prf_128(NULL, 16,
|
||||
test_data, 16,
|
||||
test_output) ==
|
||||
MBEDTLS_ERR_CIPHER_BAD_INPUT_DATA);
|
||||
|
||||
TEST_ASSERT(mbedtls_aes_cmac_prf_128(test_key, 16,
|
||||
NULL, 16,
|
||||
test_output) ==
|
||||
MBEDTLS_ERR_CIPHER_BAD_INPUT_DATA);
|
||||
|
||||
TEST_ASSERT(mbedtls_aes_cmac_prf_128(test_key, 16,
|
||||
test_data, 16,
|
||||
NULL) ==
|
||||
MBEDTLS_ERR_CIPHER_BAD_INPUT_DATA);
|
||||
#endif
|
||||
exit:
|
||||
mbedtls_cipher_free(&ctx);
|
||||
}
|
||||
/* END_CASE */
|
||||
|
||||
/* BEGIN_CASE */
|
||||
void mbedtls_cmac_setkey(int cipher_type, int key_size, int result)
|
||||
{
|
||||
const mbedtls_cipher_info_t *cipher_info;
|
||||
unsigned char key[32];
|
||||
unsigned char buf[16];
|
||||
unsigned char tmp[16];
|
||||
|
||||
memset(key, 0x2A, sizeof(key));
|
||||
TEST_ASSERT((unsigned) key_size <= 8 * sizeof(key));
|
||||
|
||||
TEST_ASSERT((cipher_info = mbedtls_cipher_info_from_type(cipher_type))
|
||||
!= NULL);
|
||||
#if !defined(MBEDTLS_DEPRECATED_REMOVED)
|
||||
TEST_LE_U(mbedtls_cipher_info_get_block_size(cipher_info),
|
||||
MBEDTLS_CIPHER_BLKSIZE_MAX);
|
||||
#endif /* MBEDTLS_DEPRECATED_REMOVED */
|
||||
TEST_LE_U(mbedtls_cipher_info_get_block_size(cipher_info),
|
||||
MBEDTLS_CMAC_MAX_BLOCK_SIZE);
|
||||
|
||||
memset(buf, 0x2A, sizeof(buf));
|
||||
TEST_ASSERT((result == mbedtls_cipher_cmac(cipher_info, key, key_size,
|
||||
buf, 16, tmp)) != 0);
|
||||
}
|
||||
/* END_CASE */
|
||||
|
||||
/* BEGIN_CASE */
|
||||
void mbedtls_cmac_multiple_blocks(int cipher_type, data_t *key,
|
||||
int keybits, int block_size,
|
||||
data_t *block1, int block1_len,
|
||||
data_t *block2, int block2_len,
|
||||
data_t *block3, int block3_len,
|
||||
data_t *block4, int block4_len,
|
||||
data_t *expected_result)
|
||||
{
|
||||
const mbedtls_cipher_info_t *cipher_info;
|
||||
mbedtls_cipher_context_t ctx;
|
||||
unsigned char output[MBEDTLS_CMAC_MAX_BLOCK_SIZE];
|
||||
|
||||
/* Convert the test parameters to binary data */
|
||||
|
||||
mbedtls_cipher_init(&ctx);
|
||||
|
||||
/* Validate the test inputs */
|
||||
TEST_ASSERT(block1_len <= 100);
|
||||
TEST_ASSERT(block2_len <= 100);
|
||||
TEST_ASSERT(block3_len <= 100);
|
||||
TEST_ASSERT(block4_len <= 100);
|
||||
|
||||
/* Set up */
|
||||
TEST_ASSERT((cipher_info = mbedtls_cipher_info_from_type(cipher_type))
|
||||
!= NULL);
|
||||
|
||||
TEST_ASSERT(mbedtls_cipher_setup(&ctx, cipher_info) == 0);
|
||||
|
||||
TEST_ASSERT(mbedtls_cipher_cmac_starts(&ctx,
|
||||
(const unsigned char *) key->x,
|
||||
keybits) == 0);
|
||||
|
||||
/* Multiple partial and complete blocks. A negative length means skip the
|
||||
* update operation */
|
||||
if (block1_len >= 0) {
|
||||
TEST_ASSERT(mbedtls_cipher_cmac_update(&ctx,
|
||||
(unsigned char *) block1->x,
|
||||
block1_len) == 0);
|
||||
}
|
||||
|
||||
if (block2_len >= 0) {
|
||||
TEST_ASSERT(mbedtls_cipher_cmac_update(&ctx,
|
||||
(unsigned char *) block2->x,
|
||||
block2_len) == 0);
|
||||
}
|
||||
|
||||
if (block3_len >= 0) {
|
||||
TEST_ASSERT(mbedtls_cipher_cmac_update(&ctx,
|
||||
(unsigned char *) block3->x,
|
||||
block3_len) == 0);
|
||||
}
|
||||
|
||||
if (block4_len >= 0) {
|
||||
TEST_ASSERT(mbedtls_cipher_cmac_update(&ctx,
|
||||
(unsigned char *) block4->x,
|
||||
block4_len) == 0);
|
||||
}
|
||||
|
||||
TEST_ASSERT(mbedtls_cipher_cmac_finish(&ctx, output) == 0);
|
||||
|
||||
TEST_ASSERT(memcmp(output, expected_result->x, block_size) == 0);
|
||||
|
||||
exit:
|
||||
mbedtls_cipher_free(&ctx);
|
||||
}
|
||||
/* END_CASE */
|
||||
|
||||
/* BEGIN_CASE */
|
||||
void mbedtls_cmac_multiple_operations_same_key(int cipher_type,
|
||||
data_t *key, int keybits,
|
||||
int block_size,
|
||||
data_t *block_a1,
|
||||
int block_a1_len,
|
||||
data_t *block_a2,
|
||||
int block_a2_len,
|
||||
data_t *block_a3,
|
||||
int block_a3_len,
|
||||
data_t *expected_result_a,
|
||||
data_t *block_b1,
|
||||
int block_b1_len,
|
||||
data_t *block_b2,
|
||||
int block_b2_len,
|
||||
data_t *block_b3,
|
||||
int block_b3_len,
|
||||
data_t *expected_result_b
|
||||
)
|
||||
{
|
||||
const mbedtls_cipher_info_t *cipher_info;
|
||||
mbedtls_cipher_context_t ctx;
|
||||
unsigned char output[MBEDTLS_CMAC_MAX_BLOCK_SIZE];
|
||||
|
||||
/* Convert the test parameters to binary data */
|
||||
|
||||
|
||||
|
||||
mbedtls_cipher_init(&ctx);
|
||||
|
||||
/* Validate the test inputs */
|
||||
TEST_ASSERT(block_a1_len <= 100);
|
||||
TEST_ASSERT(block_a2_len <= 100);
|
||||
TEST_ASSERT(block_a3_len <= 100);
|
||||
|
||||
TEST_ASSERT(block_b1_len <= 100);
|
||||
TEST_ASSERT(block_b2_len <= 100);
|
||||
TEST_ASSERT(block_b3_len <= 100);
|
||||
|
||||
/* Set up */
|
||||
TEST_ASSERT((cipher_info = mbedtls_cipher_info_from_type(cipher_type))
|
||||
!= NULL);
|
||||
|
||||
TEST_ASSERT(mbedtls_cipher_setup(&ctx, cipher_info) == 0);
|
||||
|
||||
TEST_ASSERT(mbedtls_cipher_cmac_starts(&ctx,
|
||||
(const unsigned char *) key->x,
|
||||
keybits) == 0);
|
||||
|
||||
/* Sequence A */
|
||||
|
||||
/* Multiple partial and complete blocks. A negative length means skip the
|
||||
* update operation */
|
||||
if (block_a1_len >= 0) {
|
||||
TEST_ASSERT(mbedtls_cipher_cmac_update(&ctx,
|
||||
(unsigned char *) block_a1->x,
|
||||
block_a1_len) == 0);
|
||||
}
|
||||
|
||||
if (block_a2_len >= 0) {
|
||||
TEST_ASSERT(mbedtls_cipher_cmac_update(&ctx,
|
||||
(unsigned char *) block_a2->x,
|
||||
block_a2_len) == 0);
|
||||
}
|
||||
|
||||
if (block_a3_len >= 0) {
|
||||
TEST_ASSERT(mbedtls_cipher_cmac_update(&ctx,
|
||||
(unsigned char *) block_a3->x,
|
||||
block_a3_len) == 0);
|
||||
}
|
||||
|
||||
TEST_ASSERT(mbedtls_cipher_cmac_finish(&ctx, output) == 0);
|
||||
|
||||
TEST_ASSERT(memcmp(output, expected_result_a->x, block_size) == 0);
|
||||
|
||||
TEST_ASSERT(mbedtls_cipher_cmac_reset(&ctx) == 0);
|
||||
|
||||
/* Sequence B */
|
||||
|
||||
/* Multiple partial and complete blocks. A negative length means skip the
|
||||
* update operation */
|
||||
if (block_b1_len >= 0) {
|
||||
TEST_ASSERT(mbedtls_cipher_cmac_update(&ctx,
|
||||
(unsigned char *) block_b1->x,
|
||||
block_b1_len) == 0);
|
||||
}
|
||||
|
||||
if (block_b2_len >= 0) {
|
||||
TEST_ASSERT(mbedtls_cipher_cmac_update(&ctx,
|
||||
(unsigned char *) block_b2->x,
|
||||
block_b2_len) == 0);
|
||||
}
|
||||
|
||||
if (block_b3_len >= 0) {
|
||||
TEST_ASSERT(mbedtls_cipher_cmac_update(&ctx,
|
||||
(unsigned char *) block_b3->x,
|
||||
block_b3_len) == 0);
|
||||
}
|
||||
|
||||
TEST_ASSERT(mbedtls_cipher_cmac_finish(&ctx, output) == 0);
|
||||
|
||||
TEST_ASSERT(memcmp(output, expected_result_b->x, block_size) == 0);
|
||||
|
||||
exit:
|
||||
mbedtls_cipher_free(&ctx);
|
||||
}
|
||||
/* END_CASE */
|
||||
62
vendor/mbedtls/tests/suites/test_suite_common.data
vendored
Normal file
62
vendor/mbedtls/tests/suites/test_suite_common.data
vendored
Normal file
@@ -0,0 +1,62 @@
|
||||
Block xor, length 0
|
||||
mbedtls_xor:0
|
||||
|
||||
Block xor, length 1
|
||||
mbedtls_xor:1
|
||||
|
||||
Block xor, length 3
|
||||
mbedtls_xor:3
|
||||
|
||||
Block xor, length 4
|
||||
mbedtls_xor:4
|
||||
|
||||
Block xor, length 7
|
||||
mbedtls_xor:7
|
||||
|
||||
Block xor, length 8
|
||||
mbedtls_xor:8
|
||||
|
||||
Block xor, length 16
|
||||
mbedtls_xor:16
|
||||
|
||||
Block xor, length 64
|
||||
mbedtls_xor:64
|
||||
|
||||
Block xor, length 256
|
||||
mbedtls_xor:256
|
||||
|
||||
Block xor, length 257
|
||||
mbedtls_xor:257
|
||||
|
||||
Block xor, length 16+8
|
||||
mbedtls_xor:24
|
||||
|
||||
Block xor, length 16+8+4
|
||||
mbedtls_xor:28
|
||||
|
||||
Block xor, length 16+8+4+1
|
||||
mbedtls_xor:29
|
||||
|
||||
Block xor, length 16+8+1
|
||||
mbedtls_xor:25
|
||||
|
||||
Block xor, length 16+4
|
||||
mbedtls_xor:20
|
||||
|
||||
Block xor, length 16+4+1
|
||||
mbedtls_xor:21
|
||||
|
||||
Block xor, length 16+1
|
||||
mbedtls_xor:17
|
||||
|
||||
Block xor, length 8+4
|
||||
mbedtls_xor:12
|
||||
|
||||
Block xor, length 8+4+1
|
||||
mbedtls_xor:13
|
||||
|
||||
Block xor, length 8+1
|
||||
mbedtls_xor:9
|
||||
|
||||
Block xor, length 4+1
|
||||
mbedtls_xor:5
|
||||
86
vendor/mbedtls/tests/suites/test_suite_common.function
vendored
Normal file
86
vendor/mbedtls/tests/suites/test_suite_common.function
vendored
Normal file
@@ -0,0 +1,86 @@
|
||||
/* BEGIN_HEADER */
|
||||
#include "common.h"
|
||||
|
||||
static void fill_arrays(unsigned char *a,
|
||||
unsigned char *b,
|
||||
unsigned char *r1,
|
||||
unsigned char *r2,
|
||||
size_t n)
|
||||
{
|
||||
for (size_t i = 0; i < n; i++) {
|
||||
a[i] = (unsigned char) i * 3;
|
||||
b[i] = (unsigned char) i * 3 + 1;
|
||||
r1[i] = (unsigned char) i * 3 + 2;
|
||||
r2[i] = r1[i];
|
||||
}
|
||||
}
|
||||
/* END_HEADER */
|
||||
|
||||
/* BEGIN_CASE */
|
||||
void mbedtls_xor(int len)
|
||||
{
|
||||
size_t n = (size_t) len;
|
||||
unsigned char *a = NULL, *b = NULL, *r1 = NULL, *r2 = NULL;
|
||||
TEST_CALLOC(a, n + 1);
|
||||
TEST_CALLOC(b, n + 1);
|
||||
TEST_CALLOC(r1, n + 1);
|
||||
TEST_CALLOC(r2, n + 1);
|
||||
|
||||
/* Test non-overlapping */
|
||||
fill_arrays(a, b, r1, r2, n);
|
||||
for (size_t i = 0; i < n; i++) {
|
||||
r1[i] = a[i] ^ b[i];
|
||||
}
|
||||
mbedtls_xor(r2, a, b, n);
|
||||
TEST_MEMORY_COMPARE(r1, n, r2, n);
|
||||
|
||||
/* Test r == a */
|
||||
fill_arrays(a, b, r1, r2, n);
|
||||
for (size_t i = 0; i < n; i++) {
|
||||
r1[i] = r1[i] ^ b[i];
|
||||
}
|
||||
mbedtls_xor(r2, r2, b, n);
|
||||
TEST_MEMORY_COMPARE(r1, n, r2, n);
|
||||
|
||||
/* Test r == b */
|
||||
fill_arrays(a, b, r1, r2, n);
|
||||
for (size_t i = 0; i < n; i++) {
|
||||
r1[i] = a[i] ^ r1[i];
|
||||
}
|
||||
mbedtls_xor(r2, a, r2, n);
|
||||
TEST_MEMORY_COMPARE(r1, n, r2, n);
|
||||
|
||||
/* Test a == b */
|
||||
fill_arrays(a, b, r1, r2, n);
|
||||
for (size_t i = 0; i < n; i++) {
|
||||
r1[i] = a[i] ^ a[i];
|
||||
}
|
||||
mbedtls_xor(r2, a, a, n);
|
||||
TEST_MEMORY_COMPARE(r1, n, r2, n);
|
||||
|
||||
/* Test a == b == r */
|
||||
fill_arrays(a, b, r1, r2, n);
|
||||
for (size_t i = 0; i < n; i++) {
|
||||
r1[i] = r1[i] ^ r1[i];
|
||||
}
|
||||
mbedtls_xor(r2, r2, r2, n);
|
||||
TEST_MEMORY_COMPARE(r1, n, r2, n);
|
||||
|
||||
/* Test non-word-aligned buffers, for all combinations of alignedness */
|
||||
for (int i = 0; i < 7; i++) {
|
||||
int r_off = i & 1, a_off = (i & 2) >> 1, b_off = (i & 4) >> 2;
|
||||
fill_arrays(a, b, r1, r2, n + 1);
|
||||
|
||||
for (size_t j = 0; j < n; j++) {
|
||||
r1[j + r_off] = a[j + a_off] ^ b[j + b_off];
|
||||
}
|
||||
mbedtls_xor(r2 + r_off, a + a_off, b + b_off, n);
|
||||
TEST_MEMORY_COMPARE(r1 + r_off, n, r2 + r_off, n);
|
||||
}
|
||||
exit:
|
||||
mbedtls_free(a);
|
||||
mbedtls_free(b);
|
||||
mbedtls_free(r1);
|
||||
mbedtls_free(r2);
|
||||
}
|
||||
/* END_CASE */
|
||||
30
vendor/mbedtls/tests/suites/test_suite_config.crypto_combinations.data
vendored
Normal file
30
vendor/mbedtls/tests/suites/test_suite_config.crypto_combinations.data
vendored
Normal file
@@ -0,0 +1,30 @@
|
||||
# Interesting combinations of low-level crypto options
|
||||
|
||||
# Entropy: available in mbedtls_entropy_init(), thanks to NV seed, no platform sources, no custom source
|
||||
Config: entropy: NV seed only
|
||||
depends_on:!MBEDTLS_NO_DEFAULT_ENTROPY_SOURCES:MBEDTLS_ENTROPY_NV_SEED:MBEDTLS_NO_PLATFORM_ENTROPY:!MBEDTLS_ENTROPY_HARDWARE_ALT
|
||||
pass:
|
||||
|
||||
Config: ECC: Weierstrass curves only
|
||||
depends_on:MBEDTLS_ECP_SHORT_WEIERSTRASS_ENABLED:!MBEDTLS_ECP_MONTGOMERY_ENABLED
|
||||
pass:
|
||||
|
||||
Config: ECC: Montgomery curves only
|
||||
depends_on:!MBEDTLS_ECP_SHORT_WEIERSTRASS_ENABLED:MBEDTLS_ECP_MONTGOMERY_ENABLED
|
||||
pass:
|
||||
|
||||
Config: PK export keys on the stack (PK is ECC-only) (USE_PSA)
|
||||
depends_on:PK_EXPORT_KEYS_ON_THE_STACK:MBEDTLS_USE_PSA_CRYPTO
|
||||
pass:
|
||||
|
||||
Config: PK export keys on the stack (PK is ECC-only) (!USE_PSA)
|
||||
depends_on:PK_EXPORT_KEYS_ON_THE_STACK:!MBEDTLS_USE_PSA_CRYPTO
|
||||
pass:
|
||||
|
||||
Config: PK export keys on the heap (PK is not ECC-only) (USE_PSA)
|
||||
depends_on:!PK_EXPORT_KEYS_ON_THE_STACK:MBEDTLS_USE_PSA_CRYPTO
|
||||
pass:
|
||||
|
||||
Config: PK export keys on the heap (PK is not ECC-only) (!USE_PSA)
|
||||
depends_on:!PK_EXPORT_KEYS_ON_THE_STACK:!MBEDTLS_USE_PSA_CRYPTO
|
||||
pass:
|
||||
14
vendor/mbedtls/tests/suites/test_suite_config.function
vendored
Normal file
14
vendor/mbedtls/tests/suites/test_suite_config.function
vendored
Normal file
@@ -0,0 +1,14 @@
|
||||
/* BEGIN_HEADER */
|
||||
#include "pk_internal.h"
|
||||
/* END_HEADER */
|
||||
|
||||
/* BEGIN_CASE */
|
||||
/* This test case always passes. It is intended solely for configuration
|
||||
* reporting in the outcome file. Write test cases using this function
|
||||
* with dependencies to record in which configurations the dependencies
|
||||
* are met. */
|
||||
void pass()
|
||||
{
|
||||
goto exit;
|
||||
}
|
||||
/* END_CASE */
|
||||
1723
vendor/mbedtls/tests/suites/test_suite_config.mbedtls_boolean.data
vendored
Normal file
1723
vendor/mbedtls/tests/suites/test_suite_config.mbedtls_boolean.data
vendored
Normal file
File diff suppressed because it is too large
Load Diff
707
vendor/mbedtls/tests/suites/test_suite_config.psa_boolean.data
vendored
Normal file
707
vendor/mbedtls/tests/suites/test_suite_config.psa_boolean.data
vendored
Normal file
@@ -0,0 +1,707 @@
|
||||
# Automatically generated by generate_config_tests.py. Do not edit!
|
||||
|
||||
Config: PSA_WANT_ALG_CBC_NO_PADDING
|
||||
depends_on:PSA_WANT_ALG_CBC_NO_PADDING:MBEDTLS_PSA_CRYPTO_CLIENT
|
||||
pass:
|
||||
|
||||
Config: !PSA_WANT_ALG_CBC_NO_PADDING
|
||||
depends_on:!PSA_WANT_ALG_CBC_NO_PADDING:MBEDTLS_PSA_CRYPTO_CLIENT
|
||||
pass:
|
||||
|
||||
Config: PSA_WANT_ALG_CBC_PKCS7
|
||||
depends_on:PSA_WANT_ALG_CBC_PKCS7:MBEDTLS_PSA_CRYPTO_CLIENT
|
||||
pass:
|
||||
|
||||
Config: !PSA_WANT_ALG_CBC_PKCS7
|
||||
depends_on:!PSA_WANT_ALG_CBC_PKCS7:MBEDTLS_PSA_CRYPTO_CLIENT
|
||||
pass:
|
||||
|
||||
Config: PSA_WANT_ALG_CCM
|
||||
depends_on:PSA_WANT_ALG_CCM:MBEDTLS_PSA_CRYPTO_CLIENT
|
||||
pass:
|
||||
|
||||
Config: !PSA_WANT_ALG_CCM
|
||||
depends_on:!PSA_WANT_ALG_CCM:MBEDTLS_PSA_CRYPTO_CLIENT
|
||||
pass:
|
||||
|
||||
Config: PSA_WANT_ALG_CCM_STAR_NO_TAG
|
||||
depends_on:PSA_WANT_ALG_CCM_STAR_NO_TAG:MBEDTLS_PSA_CRYPTO_CLIENT
|
||||
pass:
|
||||
|
||||
Config: !PSA_WANT_ALG_CCM_STAR_NO_TAG
|
||||
depends_on:!PSA_WANT_ALG_CCM_STAR_NO_TAG:MBEDTLS_PSA_CRYPTO_CLIENT
|
||||
pass:
|
||||
|
||||
Config: PSA_WANT_ALG_CFB
|
||||
depends_on:PSA_WANT_ALG_CFB:MBEDTLS_PSA_CRYPTO_CLIENT
|
||||
pass:
|
||||
|
||||
Config: !PSA_WANT_ALG_CFB
|
||||
depends_on:!PSA_WANT_ALG_CFB:MBEDTLS_PSA_CRYPTO_CLIENT
|
||||
pass:
|
||||
|
||||
Config: PSA_WANT_ALG_CHACHA20_POLY1305
|
||||
depends_on:PSA_WANT_ALG_CHACHA20_POLY1305:MBEDTLS_PSA_CRYPTO_CLIENT
|
||||
pass:
|
||||
|
||||
Config: !PSA_WANT_ALG_CHACHA20_POLY1305
|
||||
depends_on:!PSA_WANT_ALG_CHACHA20_POLY1305:MBEDTLS_PSA_CRYPTO_CLIENT
|
||||
pass:
|
||||
|
||||
Config: PSA_WANT_ALG_CMAC
|
||||
depends_on:PSA_WANT_ALG_CMAC:MBEDTLS_PSA_CRYPTO_CLIENT
|
||||
pass:
|
||||
|
||||
Config: !PSA_WANT_ALG_CMAC
|
||||
depends_on:!PSA_WANT_ALG_CMAC:MBEDTLS_PSA_CRYPTO_CLIENT
|
||||
pass:
|
||||
|
||||
Config: PSA_WANT_ALG_CTR
|
||||
depends_on:PSA_WANT_ALG_CTR:MBEDTLS_PSA_CRYPTO_CLIENT
|
||||
pass:
|
||||
|
||||
Config: !PSA_WANT_ALG_CTR
|
||||
depends_on:!PSA_WANT_ALG_CTR:MBEDTLS_PSA_CRYPTO_CLIENT
|
||||
pass:
|
||||
|
||||
Config: PSA_WANT_ALG_DETERMINISTIC_ECDSA
|
||||
depends_on:PSA_WANT_ALG_DETERMINISTIC_ECDSA:MBEDTLS_PSA_CRYPTO_CLIENT
|
||||
pass:
|
||||
|
||||
Config: !PSA_WANT_ALG_DETERMINISTIC_ECDSA
|
||||
depends_on:!PSA_WANT_ALG_DETERMINISTIC_ECDSA:MBEDTLS_PSA_CRYPTO_CLIENT
|
||||
pass:
|
||||
|
||||
Config: PSA_WANT_ALG_ECB_NO_PADDING
|
||||
depends_on:PSA_WANT_ALG_ECB_NO_PADDING:MBEDTLS_PSA_CRYPTO_CLIENT
|
||||
pass:
|
||||
|
||||
Config: !PSA_WANT_ALG_ECB_NO_PADDING
|
||||
depends_on:!PSA_WANT_ALG_ECB_NO_PADDING:MBEDTLS_PSA_CRYPTO_CLIENT
|
||||
pass:
|
||||
|
||||
Config: PSA_WANT_ALG_ECDH
|
||||
depends_on:PSA_WANT_ALG_ECDH:MBEDTLS_PSA_CRYPTO_CLIENT
|
||||
pass:
|
||||
|
||||
Config: !PSA_WANT_ALG_ECDH
|
||||
depends_on:!PSA_WANT_ALG_ECDH:MBEDTLS_PSA_CRYPTO_CLIENT
|
||||
pass:
|
||||
|
||||
Config: PSA_WANT_ALG_ECDSA
|
||||
depends_on:PSA_WANT_ALG_ECDSA:MBEDTLS_PSA_CRYPTO_CLIENT
|
||||
pass:
|
||||
|
||||
Config: !PSA_WANT_ALG_ECDSA
|
||||
depends_on:!PSA_WANT_ALG_ECDSA:MBEDTLS_PSA_CRYPTO_CLIENT
|
||||
pass:
|
||||
|
||||
Config: PSA_WANT_ALG_FFDH
|
||||
depends_on:PSA_WANT_ALG_FFDH:MBEDTLS_PSA_CRYPTO_CLIENT
|
||||
pass:
|
||||
|
||||
Config: !PSA_WANT_ALG_FFDH
|
||||
depends_on:!PSA_WANT_ALG_FFDH:MBEDTLS_PSA_CRYPTO_CLIENT
|
||||
pass:
|
||||
|
||||
Config: PSA_WANT_ALG_GCM
|
||||
depends_on:PSA_WANT_ALG_GCM:MBEDTLS_PSA_CRYPTO_CLIENT
|
||||
pass:
|
||||
|
||||
Config: !PSA_WANT_ALG_GCM
|
||||
depends_on:!PSA_WANT_ALG_GCM:MBEDTLS_PSA_CRYPTO_CLIENT
|
||||
pass:
|
||||
|
||||
Config: PSA_WANT_ALG_HKDF
|
||||
depends_on:PSA_WANT_ALG_HKDF:MBEDTLS_PSA_CRYPTO_CLIENT
|
||||
pass:
|
||||
|
||||
Config: !PSA_WANT_ALG_HKDF
|
||||
depends_on:!PSA_WANT_ALG_HKDF:MBEDTLS_PSA_CRYPTO_CLIENT
|
||||
pass:
|
||||
|
||||
Config: PSA_WANT_ALG_HKDF_EXPAND
|
||||
depends_on:PSA_WANT_ALG_HKDF_EXPAND:MBEDTLS_PSA_CRYPTO_CLIENT
|
||||
pass:
|
||||
|
||||
Config: !PSA_WANT_ALG_HKDF_EXPAND
|
||||
depends_on:!PSA_WANT_ALG_HKDF_EXPAND:MBEDTLS_PSA_CRYPTO_CLIENT
|
||||
pass:
|
||||
|
||||
Config: PSA_WANT_ALG_HKDF_EXTRACT
|
||||
depends_on:PSA_WANT_ALG_HKDF_EXTRACT:MBEDTLS_PSA_CRYPTO_CLIENT
|
||||
pass:
|
||||
|
||||
Config: !PSA_WANT_ALG_HKDF_EXTRACT
|
||||
depends_on:!PSA_WANT_ALG_HKDF_EXTRACT:MBEDTLS_PSA_CRYPTO_CLIENT
|
||||
pass:
|
||||
|
||||
Config: PSA_WANT_ALG_HMAC
|
||||
depends_on:PSA_WANT_ALG_HMAC:MBEDTLS_PSA_CRYPTO_CLIENT
|
||||
pass:
|
||||
|
||||
Config: !PSA_WANT_ALG_HMAC
|
||||
depends_on:!PSA_WANT_ALG_HMAC:MBEDTLS_PSA_CRYPTO_CLIENT
|
||||
pass:
|
||||
|
||||
Config: PSA_WANT_ALG_JPAKE
|
||||
depends_on:PSA_WANT_ALG_JPAKE:MBEDTLS_PSA_CRYPTO_CLIENT
|
||||
pass:
|
||||
|
||||
Config: !PSA_WANT_ALG_JPAKE
|
||||
depends_on:!PSA_WANT_ALG_JPAKE:MBEDTLS_PSA_CRYPTO_CLIENT
|
||||
pass:
|
||||
|
||||
Config: PSA_WANT_ALG_MD5
|
||||
depends_on:PSA_WANT_ALG_MD5:MBEDTLS_PSA_CRYPTO_CLIENT
|
||||
pass:
|
||||
|
||||
Config: !PSA_WANT_ALG_MD5
|
||||
depends_on:!PSA_WANT_ALG_MD5:MBEDTLS_PSA_CRYPTO_CLIENT
|
||||
pass:
|
||||
|
||||
Config: PSA_WANT_ALG_OFB
|
||||
depends_on:PSA_WANT_ALG_OFB:MBEDTLS_PSA_CRYPTO_CLIENT
|
||||
pass:
|
||||
|
||||
Config: !PSA_WANT_ALG_OFB
|
||||
depends_on:!PSA_WANT_ALG_OFB:MBEDTLS_PSA_CRYPTO_CLIENT
|
||||
pass:
|
||||
|
||||
Config: PSA_WANT_ALG_PBKDF2_AES_CMAC_PRF_128
|
||||
depends_on:PSA_WANT_ALG_PBKDF2_AES_CMAC_PRF_128:MBEDTLS_PSA_CRYPTO_CLIENT
|
||||
pass:
|
||||
|
||||
Config: !PSA_WANT_ALG_PBKDF2_AES_CMAC_PRF_128
|
||||
depends_on:!PSA_WANT_ALG_PBKDF2_AES_CMAC_PRF_128:MBEDTLS_PSA_CRYPTO_CLIENT
|
||||
pass:
|
||||
|
||||
Config: PSA_WANT_ALG_PBKDF2_HMAC
|
||||
depends_on:PSA_WANT_ALG_PBKDF2_HMAC:MBEDTLS_PSA_CRYPTO_CLIENT
|
||||
pass:
|
||||
|
||||
Config: !PSA_WANT_ALG_PBKDF2_HMAC
|
||||
depends_on:!PSA_WANT_ALG_PBKDF2_HMAC:MBEDTLS_PSA_CRYPTO_CLIENT
|
||||
pass:
|
||||
|
||||
Config: PSA_WANT_ALG_RIPEMD160
|
||||
depends_on:PSA_WANT_ALG_RIPEMD160:MBEDTLS_PSA_CRYPTO_CLIENT
|
||||
pass:
|
||||
|
||||
Config: !PSA_WANT_ALG_RIPEMD160
|
||||
depends_on:!PSA_WANT_ALG_RIPEMD160:MBEDTLS_PSA_CRYPTO_CLIENT
|
||||
pass:
|
||||
|
||||
Config: PSA_WANT_ALG_RSA_OAEP
|
||||
depends_on:PSA_WANT_ALG_RSA_OAEP:MBEDTLS_PSA_CRYPTO_CLIENT
|
||||
pass:
|
||||
|
||||
Config: !PSA_WANT_ALG_RSA_OAEP
|
||||
depends_on:!PSA_WANT_ALG_RSA_OAEP:MBEDTLS_PSA_CRYPTO_CLIENT
|
||||
pass:
|
||||
|
||||
Config: PSA_WANT_ALG_RSA_PKCS1V15_CRYPT
|
||||
depends_on:PSA_WANT_ALG_RSA_PKCS1V15_CRYPT:MBEDTLS_PSA_CRYPTO_CLIENT
|
||||
pass:
|
||||
|
||||
Config: !PSA_WANT_ALG_RSA_PKCS1V15_CRYPT
|
||||
depends_on:!PSA_WANT_ALG_RSA_PKCS1V15_CRYPT:MBEDTLS_PSA_CRYPTO_CLIENT
|
||||
pass:
|
||||
|
||||
Config: PSA_WANT_ALG_RSA_PKCS1V15_SIGN
|
||||
depends_on:PSA_WANT_ALG_RSA_PKCS1V15_SIGN:MBEDTLS_PSA_CRYPTO_CLIENT
|
||||
pass:
|
||||
|
||||
Config: !PSA_WANT_ALG_RSA_PKCS1V15_SIGN
|
||||
depends_on:!PSA_WANT_ALG_RSA_PKCS1V15_SIGN:MBEDTLS_PSA_CRYPTO_CLIENT
|
||||
pass:
|
||||
|
||||
Config: PSA_WANT_ALG_RSA_PSS
|
||||
depends_on:PSA_WANT_ALG_RSA_PSS:MBEDTLS_PSA_CRYPTO_CLIENT
|
||||
pass:
|
||||
|
||||
Config: !PSA_WANT_ALG_RSA_PSS
|
||||
depends_on:!PSA_WANT_ALG_RSA_PSS:MBEDTLS_PSA_CRYPTO_CLIENT
|
||||
pass:
|
||||
|
||||
Config: PSA_WANT_ALG_SHA3_224
|
||||
depends_on:PSA_WANT_ALG_SHA3_224:MBEDTLS_PSA_CRYPTO_CLIENT
|
||||
pass:
|
||||
|
||||
Config: !PSA_WANT_ALG_SHA3_224
|
||||
depends_on:!PSA_WANT_ALG_SHA3_224:MBEDTLS_PSA_CRYPTO_CLIENT
|
||||
pass:
|
||||
|
||||
Config: PSA_WANT_ALG_SHA3_256
|
||||
depends_on:PSA_WANT_ALG_SHA3_256:MBEDTLS_PSA_CRYPTO_CLIENT
|
||||
pass:
|
||||
|
||||
Config: !PSA_WANT_ALG_SHA3_256
|
||||
depends_on:!PSA_WANT_ALG_SHA3_256:MBEDTLS_PSA_CRYPTO_CLIENT
|
||||
pass:
|
||||
|
||||
Config: PSA_WANT_ALG_SHA3_384
|
||||
depends_on:PSA_WANT_ALG_SHA3_384:MBEDTLS_PSA_CRYPTO_CLIENT
|
||||
pass:
|
||||
|
||||
Config: !PSA_WANT_ALG_SHA3_384
|
||||
depends_on:!PSA_WANT_ALG_SHA3_384:MBEDTLS_PSA_CRYPTO_CLIENT
|
||||
pass:
|
||||
|
||||
Config: PSA_WANT_ALG_SHA3_512
|
||||
depends_on:PSA_WANT_ALG_SHA3_512:MBEDTLS_PSA_CRYPTO_CLIENT
|
||||
pass:
|
||||
|
||||
Config: !PSA_WANT_ALG_SHA3_512
|
||||
depends_on:!PSA_WANT_ALG_SHA3_512:MBEDTLS_PSA_CRYPTO_CLIENT
|
||||
pass:
|
||||
|
||||
Config: PSA_WANT_ALG_SHA_1
|
||||
depends_on:PSA_WANT_ALG_SHA_1:MBEDTLS_PSA_CRYPTO_CLIENT
|
||||
pass:
|
||||
|
||||
Config: !PSA_WANT_ALG_SHA_1
|
||||
depends_on:!PSA_WANT_ALG_SHA_1:MBEDTLS_PSA_CRYPTO_CLIENT
|
||||
pass:
|
||||
|
||||
Config: PSA_WANT_ALG_SHA_224
|
||||
depends_on:PSA_WANT_ALG_SHA_224:MBEDTLS_PSA_CRYPTO_CLIENT
|
||||
pass:
|
||||
|
||||
Config: !PSA_WANT_ALG_SHA_224
|
||||
depends_on:!PSA_WANT_ALG_SHA_224:MBEDTLS_PSA_CRYPTO_CLIENT
|
||||
pass:
|
||||
|
||||
Config: PSA_WANT_ALG_SHA_256
|
||||
depends_on:PSA_WANT_ALG_SHA_256:MBEDTLS_PSA_CRYPTO_CLIENT
|
||||
pass:
|
||||
|
||||
Config: !PSA_WANT_ALG_SHA_256
|
||||
depends_on:!PSA_WANT_ALG_SHA_256:MBEDTLS_PSA_CRYPTO_CLIENT
|
||||
pass:
|
||||
|
||||
Config: PSA_WANT_ALG_SHA_384
|
||||
depends_on:PSA_WANT_ALG_SHA_384:MBEDTLS_PSA_CRYPTO_CLIENT
|
||||
pass:
|
||||
|
||||
Config: !PSA_WANT_ALG_SHA_384
|
||||
depends_on:!PSA_WANT_ALG_SHA_384:MBEDTLS_PSA_CRYPTO_CLIENT
|
||||
pass:
|
||||
|
||||
Config: PSA_WANT_ALG_SHA_512
|
||||
depends_on:PSA_WANT_ALG_SHA_512:MBEDTLS_PSA_CRYPTO_CLIENT
|
||||
pass:
|
||||
|
||||
Config: !PSA_WANT_ALG_SHA_512
|
||||
depends_on:!PSA_WANT_ALG_SHA_512:MBEDTLS_PSA_CRYPTO_CLIENT
|
||||
pass:
|
||||
|
||||
Config: PSA_WANT_ALG_STREAM_CIPHER
|
||||
depends_on:PSA_WANT_ALG_STREAM_CIPHER:MBEDTLS_PSA_CRYPTO_CLIENT
|
||||
pass:
|
||||
|
||||
Config: !PSA_WANT_ALG_STREAM_CIPHER
|
||||
depends_on:!PSA_WANT_ALG_STREAM_CIPHER:MBEDTLS_PSA_CRYPTO_CLIENT
|
||||
pass:
|
||||
|
||||
Config: PSA_WANT_ALG_TLS12_ECJPAKE_TO_PMS
|
||||
depends_on:PSA_WANT_ALG_TLS12_ECJPAKE_TO_PMS:MBEDTLS_PSA_CRYPTO_CLIENT
|
||||
pass:
|
||||
|
||||
Config: !PSA_WANT_ALG_TLS12_ECJPAKE_TO_PMS
|
||||
depends_on:!PSA_WANT_ALG_TLS12_ECJPAKE_TO_PMS:MBEDTLS_PSA_CRYPTO_CLIENT
|
||||
pass:
|
||||
|
||||
Config: PSA_WANT_ALG_TLS12_PRF
|
||||
depends_on:PSA_WANT_ALG_TLS12_PRF:MBEDTLS_PSA_CRYPTO_CLIENT
|
||||
pass:
|
||||
|
||||
Config: !PSA_WANT_ALG_TLS12_PRF
|
||||
depends_on:!PSA_WANT_ALG_TLS12_PRF:MBEDTLS_PSA_CRYPTO_CLIENT
|
||||
pass:
|
||||
|
||||
Config: PSA_WANT_ALG_TLS12_PSK_TO_MS
|
||||
depends_on:PSA_WANT_ALG_TLS12_PSK_TO_MS:MBEDTLS_PSA_CRYPTO_CLIENT
|
||||
pass:
|
||||
|
||||
Config: !PSA_WANT_ALG_TLS12_PSK_TO_MS
|
||||
depends_on:!PSA_WANT_ALG_TLS12_PSK_TO_MS:MBEDTLS_PSA_CRYPTO_CLIENT
|
||||
pass:
|
||||
|
||||
Config: PSA_WANT_DH_RFC7919_2048
|
||||
depends_on:PSA_WANT_DH_RFC7919_2048:MBEDTLS_PSA_CRYPTO_CLIENT
|
||||
pass:
|
||||
|
||||
Config: !PSA_WANT_DH_RFC7919_2048
|
||||
depends_on:!PSA_WANT_DH_RFC7919_2048:MBEDTLS_PSA_CRYPTO_CLIENT
|
||||
pass:
|
||||
|
||||
Config: PSA_WANT_DH_RFC7919_3072
|
||||
depends_on:PSA_WANT_DH_RFC7919_3072:MBEDTLS_PSA_CRYPTO_CLIENT
|
||||
pass:
|
||||
|
||||
Config: !PSA_WANT_DH_RFC7919_3072
|
||||
depends_on:!PSA_WANT_DH_RFC7919_3072:MBEDTLS_PSA_CRYPTO_CLIENT
|
||||
pass:
|
||||
|
||||
Config: PSA_WANT_DH_RFC7919_4096
|
||||
depends_on:PSA_WANT_DH_RFC7919_4096:MBEDTLS_PSA_CRYPTO_CLIENT
|
||||
pass:
|
||||
|
||||
Config: !PSA_WANT_DH_RFC7919_4096
|
||||
depends_on:!PSA_WANT_DH_RFC7919_4096:MBEDTLS_PSA_CRYPTO_CLIENT
|
||||
pass:
|
||||
|
||||
Config: PSA_WANT_DH_RFC7919_6144
|
||||
depends_on:PSA_WANT_DH_RFC7919_6144:MBEDTLS_PSA_CRYPTO_CLIENT
|
||||
pass:
|
||||
|
||||
Config: !PSA_WANT_DH_RFC7919_6144
|
||||
depends_on:!PSA_WANT_DH_RFC7919_6144:MBEDTLS_PSA_CRYPTO_CLIENT
|
||||
pass:
|
||||
|
||||
Config: PSA_WANT_DH_RFC7919_8192
|
||||
depends_on:PSA_WANT_DH_RFC7919_8192:MBEDTLS_PSA_CRYPTO_CLIENT
|
||||
pass:
|
||||
|
||||
Config: !PSA_WANT_DH_RFC7919_8192
|
||||
depends_on:!PSA_WANT_DH_RFC7919_8192:MBEDTLS_PSA_CRYPTO_CLIENT
|
||||
pass:
|
||||
|
||||
Config: PSA_WANT_ECC_BRAINPOOL_P_R1_256
|
||||
depends_on:PSA_WANT_ECC_BRAINPOOL_P_R1_256:MBEDTLS_PSA_CRYPTO_CLIENT
|
||||
pass:
|
||||
|
||||
Config: !PSA_WANT_ECC_BRAINPOOL_P_R1_256
|
||||
depends_on:!PSA_WANT_ECC_BRAINPOOL_P_R1_256:MBEDTLS_PSA_CRYPTO_CLIENT
|
||||
pass:
|
||||
|
||||
Config: PSA_WANT_ECC_BRAINPOOL_P_R1_384
|
||||
depends_on:PSA_WANT_ECC_BRAINPOOL_P_R1_384:MBEDTLS_PSA_CRYPTO_CLIENT
|
||||
pass:
|
||||
|
||||
Config: !PSA_WANT_ECC_BRAINPOOL_P_R1_384
|
||||
depends_on:!PSA_WANT_ECC_BRAINPOOL_P_R1_384:MBEDTLS_PSA_CRYPTO_CLIENT
|
||||
pass:
|
||||
|
||||
Config: PSA_WANT_ECC_BRAINPOOL_P_R1_512
|
||||
depends_on:PSA_WANT_ECC_BRAINPOOL_P_R1_512:MBEDTLS_PSA_CRYPTO_CLIENT
|
||||
pass:
|
||||
|
||||
Config: !PSA_WANT_ECC_BRAINPOOL_P_R1_512
|
||||
depends_on:!PSA_WANT_ECC_BRAINPOOL_P_R1_512:MBEDTLS_PSA_CRYPTO_CLIENT
|
||||
pass:
|
||||
|
||||
Config: PSA_WANT_ECC_MONTGOMERY_255
|
||||
depends_on:PSA_WANT_ECC_MONTGOMERY_255:MBEDTLS_PSA_CRYPTO_CLIENT
|
||||
pass:
|
||||
|
||||
Config: !PSA_WANT_ECC_MONTGOMERY_255
|
||||
depends_on:!PSA_WANT_ECC_MONTGOMERY_255:MBEDTLS_PSA_CRYPTO_CLIENT
|
||||
pass:
|
||||
|
||||
Config: PSA_WANT_ECC_MONTGOMERY_448
|
||||
depends_on:PSA_WANT_ECC_MONTGOMERY_448:MBEDTLS_PSA_CRYPTO_CLIENT
|
||||
pass:
|
||||
|
||||
Config: !PSA_WANT_ECC_MONTGOMERY_448
|
||||
depends_on:!PSA_WANT_ECC_MONTGOMERY_448:MBEDTLS_PSA_CRYPTO_CLIENT
|
||||
pass:
|
||||
|
||||
Config: PSA_WANT_ECC_SECP_K1_192
|
||||
depends_on:PSA_WANT_ECC_SECP_K1_192:MBEDTLS_PSA_CRYPTO_CLIENT
|
||||
pass:
|
||||
|
||||
Config: !PSA_WANT_ECC_SECP_K1_192
|
||||
depends_on:!PSA_WANT_ECC_SECP_K1_192:MBEDTLS_PSA_CRYPTO_CLIENT
|
||||
pass:
|
||||
|
||||
Config: PSA_WANT_ECC_SECP_K1_256
|
||||
depends_on:PSA_WANT_ECC_SECP_K1_256:MBEDTLS_PSA_CRYPTO_CLIENT
|
||||
pass:
|
||||
|
||||
Config: !PSA_WANT_ECC_SECP_K1_256
|
||||
depends_on:!PSA_WANT_ECC_SECP_K1_256:MBEDTLS_PSA_CRYPTO_CLIENT
|
||||
pass:
|
||||
|
||||
Config: PSA_WANT_ECC_SECP_R1_192
|
||||
depends_on:PSA_WANT_ECC_SECP_R1_192:MBEDTLS_PSA_CRYPTO_CLIENT
|
||||
pass:
|
||||
|
||||
Config: !PSA_WANT_ECC_SECP_R1_192
|
||||
depends_on:!PSA_WANT_ECC_SECP_R1_192:MBEDTLS_PSA_CRYPTO_CLIENT
|
||||
pass:
|
||||
|
||||
Config: PSA_WANT_ECC_SECP_R1_224
|
||||
depends_on:PSA_WANT_ECC_SECP_R1_224:MBEDTLS_PSA_CRYPTO_CLIENT
|
||||
pass:
|
||||
|
||||
Config: !PSA_WANT_ECC_SECP_R1_224
|
||||
depends_on:!PSA_WANT_ECC_SECP_R1_224:MBEDTLS_PSA_CRYPTO_CLIENT
|
||||
pass:
|
||||
|
||||
Config: PSA_WANT_ECC_SECP_R1_256
|
||||
depends_on:PSA_WANT_ECC_SECP_R1_256:MBEDTLS_PSA_CRYPTO_CLIENT
|
||||
pass:
|
||||
|
||||
Config: !PSA_WANT_ECC_SECP_R1_256
|
||||
depends_on:!PSA_WANT_ECC_SECP_R1_256:MBEDTLS_PSA_CRYPTO_CLIENT
|
||||
pass:
|
||||
|
||||
Config: PSA_WANT_ECC_SECP_R1_384
|
||||
depends_on:PSA_WANT_ECC_SECP_R1_384:MBEDTLS_PSA_CRYPTO_CLIENT
|
||||
pass:
|
||||
|
||||
Config: !PSA_WANT_ECC_SECP_R1_384
|
||||
depends_on:!PSA_WANT_ECC_SECP_R1_384:MBEDTLS_PSA_CRYPTO_CLIENT
|
||||
pass:
|
||||
|
||||
Config: PSA_WANT_ECC_SECP_R1_521
|
||||
depends_on:PSA_WANT_ECC_SECP_R1_521:MBEDTLS_PSA_CRYPTO_CLIENT
|
||||
pass:
|
||||
|
||||
Config: !PSA_WANT_ECC_SECP_R1_521
|
||||
depends_on:!PSA_WANT_ECC_SECP_R1_521:MBEDTLS_PSA_CRYPTO_CLIENT
|
||||
pass:
|
||||
|
||||
Config: PSA_WANT_KEY_TYPE_AES
|
||||
depends_on:PSA_WANT_KEY_TYPE_AES:MBEDTLS_PSA_CRYPTO_CLIENT
|
||||
pass:
|
||||
|
||||
Config: !PSA_WANT_KEY_TYPE_AES
|
||||
depends_on:!PSA_WANT_KEY_TYPE_AES:MBEDTLS_PSA_CRYPTO_CLIENT
|
||||
pass:
|
||||
|
||||
Config: PSA_WANT_KEY_TYPE_ARIA
|
||||
depends_on:PSA_WANT_KEY_TYPE_ARIA:MBEDTLS_PSA_CRYPTO_CLIENT
|
||||
pass:
|
||||
|
||||
Config: !PSA_WANT_KEY_TYPE_ARIA
|
||||
depends_on:!PSA_WANT_KEY_TYPE_ARIA:MBEDTLS_PSA_CRYPTO_CLIENT
|
||||
pass:
|
||||
|
||||
Config: PSA_WANT_KEY_TYPE_CAMELLIA
|
||||
depends_on:PSA_WANT_KEY_TYPE_CAMELLIA:MBEDTLS_PSA_CRYPTO_CLIENT
|
||||
pass:
|
||||
|
||||
Config: !PSA_WANT_KEY_TYPE_CAMELLIA
|
||||
depends_on:!PSA_WANT_KEY_TYPE_CAMELLIA:MBEDTLS_PSA_CRYPTO_CLIENT
|
||||
pass:
|
||||
|
||||
Config: PSA_WANT_KEY_TYPE_CHACHA20
|
||||
depends_on:PSA_WANT_KEY_TYPE_CHACHA20:MBEDTLS_PSA_CRYPTO_CLIENT
|
||||
pass:
|
||||
|
||||
Config: !PSA_WANT_KEY_TYPE_CHACHA20
|
||||
depends_on:!PSA_WANT_KEY_TYPE_CHACHA20:MBEDTLS_PSA_CRYPTO_CLIENT
|
||||
pass:
|
||||
|
||||
Config: PSA_WANT_KEY_TYPE_DERIVE
|
||||
depends_on:PSA_WANT_KEY_TYPE_DERIVE:MBEDTLS_PSA_CRYPTO_CLIENT
|
||||
pass:
|
||||
|
||||
Config: !PSA_WANT_KEY_TYPE_DERIVE
|
||||
depends_on:!PSA_WANT_KEY_TYPE_DERIVE:MBEDTLS_PSA_CRYPTO_CLIENT
|
||||
pass:
|
||||
|
||||
Config: PSA_WANT_KEY_TYPE_DES
|
||||
depends_on:PSA_WANT_KEY_TYPE_DES:MBEDTLS_PSA_CRYPTO_CLIENT
|
||||
pass:
|
||||
|
||||
Config: !PSA_WANT_KEY_TYPE_DES
|
||||
depends_on:!PSA_WANT_KEY_TYPE_DES:MBEDTLS_PSA_CRYPTO_CLIENT
|
||||
pass:
|
||||
|
||||
Config: PSA_WANT_KEY_TYPE_DH_KEY_PAIR_BASIC
|
||||
depends_on:PSA_WANT_KEY_TYPE_DH_KEY_PAIR_BASIC:MBEDTLS_PSA_CRYPTO_CLIENT
|
||||
pass:
|
||||
|
||||
Config: !PSA_WANT_KEY_TYPE_DH_KEY_PAIR_BASIC
|
||||
depends_on:!PSA_WANT_KEY_TYPE_DH_KEY_PAIR_BASIC:MBEDTLS_PSA_CRYPTO_CLIENT
|
||||
pass:
|
||||
|
||||
Config: PSA_WANT_KEY_TYPE_DH_KEY_PAIR_DERIVE
|
||||
depends_on:PSA_WANT_KEY_TYPE_DH_KEY_PAIR_DERIVE:MBEDTLS_PSA_CRYPTO_CLIENT:PSA_WANT_KEY_TYPE_DH_KEY_PAIR_BASIC
|
||||
pass:
|
||||
|
||||
Config: !PSA_WANT_KEY_TYPE_DH_KEY_PAIR_DERIVE
|
||||
depends_on:!PSA_WANT_KEY_TYPE_DH_KEY_PAIR_DERIVE:MBEDTLS_PSA_CRYPTO_CLIENT:PSA_WANT_KEY_TYPE_DH_KEY_PAIR_BASIC
|
||||
pass:
|
||||
|
||||
Config: PSA_WANT_KEY_TYPE_DH_KEY_PAIR_EXPORT
|
||||
depends_on:PSA_WANT_KEY_TYPE_DH_KEY_PAIR_EXPORT:MBEDTLS_PSA_CRYPTO_CLIENT:PSA_WANT_KEY_TYPE_DH_KEY_PAIR_BASIC
|
||||
pass:
|
||||
|
||||
Config: !PSA_WANT_KEY_TYPE_DH_KEY_PAIR_EXPORT
|
||||
depends_on:!PSA_WANT_KEY_TYPE_DH_KEY_PAIR_EXPORT:MBEDTLS_PSA_CRYPTO_CLIENT:PSA_WANT_KEY_TYPE_DH_KEY_PAIR_BASIC
|
||||
pass:
|
||||
|
||||
Config: PSA_WANT_KEY_TYPE_DH_KEY_PAIR_GENERATE
|
||||
depends_on:PSA_WANT_KEY_TYPE_DH_KEY_PAIR_GENERATE:MBEDTLS_PSA_CRYPTO_CLIENT:PSA_WANT_KEY_TYPE_DH_KEY_PAIR_BASIC
|
||||
pass:
|
||||
|
||||
Config: !PSA_WANT_KEY_TYPE_DH_KEY_PAIR_GENERATE
|
||||
depends_on:!PSA_WANT_KEY_TYPE_DH_KEY_PAIR_GENERATE:MBEDTLS_PSA_CRYPTO_CLIENT:PSA_WANT_KEY_TYPE_DH_KEY_PAIR_BASIC
|
||||
pass:
|
||||
|
||||
Config: PSA_WANT_KEY_TYPE_DH_KEY_PAIR_IMPORT
|
||||
depends_on:PSA_WANT_KEY_TYPE_DH_KEY_PAIR_IMPORT:MBEDTLS_PSA_CRYPTO_CLIENT:PSA_WANT_KEY_TYPE_DH_KEY_PAIR_BASIC
|
||||
pass:
|
||||
|
||||
Config: !PSA_WANT_KEY_TYPE_DH_KEY_PAIR_IMPORT
|
||||
depends_on:!PSA_WANT_KEY_TYPE_DH_KEY_PAIR_IMPORT:MBEDTLS_PSA_CRYPTO_CLIENT:PSA_WANT_KEY_TYPE_DH_KEY_PAIR_BASIC
|
||||
pass:
|
||||
|
||||
Config: PSA_WANT_KEY_TYPE_DH_PUBLIC_KEY
|
||||
depends_on:PSA_WANT_KEY_TYPE_DH_PUBLIC_KEY:MBEDTLS_PSA_CRYPTO_CLIENT
|
||||
pass:
|
||||
|
||||
Config: !PSA_WANT_KEY_TYPE_DH_PUBLIC_KEY
|
||||
depends_on:!PSA_WANT_KEY_TYPE_DH_PUBLIC_KEY:MBEDTLS_PSA_CRYPTO_CLIENT
|
||||
pass:
|
||||
|
||||
Config: PSA_WANT_KEY_TYPE_ECC_KEY_PAIR
|
||||
depends_on:PSA_WANT_KEY_TYPE_ECC_KEY_PAIR:MBEDTLS_PSA_CRYPTO_CLIENT
|
||||
pass:
|
||||
|
||||
Config: !PSA_WANT_KEY_TYPE_ECC_KEY_PAIR
|
||||
depends_on:!PSA_WANT_KEY_TYPE_ECC_KEY_PAIR:MBEDTLS_PSA_CRYPTO_CLIENT
|
||||
pass:
|
||||
|
||||
Config: PSA_WANT_KEY_TYPE_ECC_KEY_PAIR_BASIC
|
||||
depends_on:PSA_WANT_KEY_TYPE_ECC_KEY_PAIR_BASIC:MBEDTLS_PSA_CRYPTO_CLIENT
|
||||
pass:
|
||||
|
||||
Config: !PSA_WANT_KEY_TYPE_ECC_KEY_PAIR_BASIC
|
||||
depends_on:!PSA_WANT_KEY_TYPE_ECC_KEY_PAIR_BASIC:MBEDTLS_PSA_CRYPTO_CLIENT
|
||||
pass:
|
||||
|
||||
Config: PSA_WANT_KEY_TYPE_ECC_KEY_PAIR_DERIVE
|
||||
depends_on:PSA_WANT_KEY_TYPE_ECC_KEY_PAIR_DERIVE:MBEDTLS_PSA_CRYPTO_CLIENT:PSA_WANT_KEY_TYPE_ECC_KEY_PAIR_BASIC
|
||||
pass:
|
||||
|
||||
Config: !PSA_WANT_KEY_TYPE_ECC_KEY_PAIR_DERIVE
|
||||
depends_on:!PSA_WANT_KEY_TYPE_ECC_KEY_PAIR_DERIVE:MBEDTLS_PSA_CRYPTO_CLIENT:PSA_WANT_KEY_TYPE_ECC_KEY_PAIR_BASIC
|
||||
pass:
|
||||
|
||||
Config: PSA_WANT_KEY_TYPE_ECC_KEY_PAIR_EXPORT
|
||||
depends_on:PSA_WANT_KEY_TYPE_ECC_KEY_PAIR_EXPORT:MBEDTLS_PSA_CRYPTO_CLIENT:PSA_WANT_KEY_TYPE_ECC_KEY_PAIR_BASIC
|
||||
pass:
|
||||
|
||||
Config: !PSA_WANT_KEY_TYPE_ECC_KEY_PAIR_EXPORT
|
||||
depends_on:!PSA_WANT_KEY_TYPE_ECC_KEY_PAIR_EXPORT:MBEDTLS_PSA_CRYPTO_CLIENT:PSA_WANT_KEY_TYPE_ECC_KEY_PAIR_BASIC
|
||||
pass:
|
||||
|
||||
Config: PSA_WANT_KEY_TYPE_ECC_KEY_PAIR_GENERATE
|
||||
depends_on:PSA_WANT_KEY_TYPE_ECC_KEY_PAIR_GENERATE:MBEDTLS_PSA_CRYPTO_CLIENT:PSA_WANT_KEY_TYPE_ECC_KEY_PAIR_BASIC
|
||||
pass:
|
||||
|
||||
Config: !PSA_WANT_KEY_TYPE_ECC_KEY_PAIR_GENERATE
|
||||
depends_on:!PSA_WANT_KEY_TYPE_ECC_KEY_PAIR_GENERATE:MBEDTLS_PSA_CRYPTO_CLIENT:PSA_WANT_KEY_TYPE_ECC_KEY_PAIR_BASIC
|
||||
pass:
|
||||
|
||||
Config: PSA_WANT_KEY_TYPE_ECC_KEY_PAIR_IMPORT
|
||||
depends_on:PSA_WANT_KEY_TYPE_ECC_KEY_PAIR_IMPORT:MBEDTLS_PSA_CRYPTO_CLIENT:PSA_WANT_KEY_TYPE_ECC_KEY_PAIR_BASIC
|
||||
pass:
|
||||
|
||||
Config: !PSA_WANT_KEY_TYPE_ECC_KEY_PAIR_IMPORT
|
||||
depends_on:!PSA_WANT_KEY_TYPE_ECC_KEY_PAIR_IMPORT:MBEDTLS_PSA_CRYPTO_CLIENT:PSA_WANT_KEY_TYPE_ECC_KEY_PAIR_BASIC
|
||||
pass:
|
||||
|
||||
Config: PSA_WANT_KEY_TYPE_ECC_PUBLIC_KEY
|
||||
depends_on:PSA_WANT_KEY_TYPE_ECC_PUBLIC_KEY:MBEDTLS_PSA_CRYPTO_CLIENT
|
||||
pass:
|
||||
|
||||
Config: !PSA_WANT_KEY_TYPE_ECC_PUBLIC_KEY
|
||||
depends_on:!PSA_WANT_KEY_TYPE_ECC_PUBLIC_KEY:MBEDTLS_PSA_CRYPTO_CLIENT
|
||||
pass:
|
||||
|
||||
Config: PSA_WANT_KEY_TYPE_HMAC
|
||||
depends_on:PSA_WANT_KEY_TYPE_HMAC:MBEDTLS_PSA_CRYPTO_CLIENT
|
||||
pass:
|
||||
|
||||
Config: !PSA_WANT_KEY_TYPE_HMAC
|
||||
depends_on:!PSA_WANT_KEY_TYPE_HMAC:MBEDTLS_PSA_CRYPTO_CLIENT
|
||||
pass:
|
||||
|
||||
Config: PSA_WANT_KEY_TYPE_PASSWORD
|
||||
depends_on:PSA_WANT_KEY_TYPE_PASSWORD:MBEDTLS_PSA_CRYPTO_CLIENT
|
||||
pass:
|
||||
|
||||
Config: !PSA_WANT_KEY_TYPE_PASSWORD
|
||||
depends_on:!PSA_WANT_KEY_TYPE_PASSWORD:MBEDTLS_PSA_CRYPTO_CLIENT
|
||||
pass:
|
||||
|
||||
Config: PSA_WANT_KEY_TYPE_PASSWORD_HASH
|
||||
depends_on:PSA_WANT_KEY_TYPE_PASSWORD_HASH:MBEDTLS_PSA_CRYPTO_CLIENT
|
||||
pass:
|
||||
|
||||
Config: !PSA_WANT_KEY_TYPE_PASSWORD_HASH
|
||||
depends_on:!PSA_WANT_KEY_TYPE_PASSWORD_HASH:MBEDTLS_PSA_CRYPTO_CLIENT
|
||||
pass:
|
||||
|
||||
Config: PSA_WANT_KEY_TYPE_RAW_DATA
|
||||
depends_on:PSA_WANT_KEY_TYPE_RAW_DATA:MBEDTLS_PSA_CRYPTO_CLIENT
|
||||
pass:
|
||||
|
||||
Config: !PSA_WANT_KEY_TYPE_RAW_DATA
|
||||
depends_on:!PSA_WANT_KEY_TYPE_RAW_DATA:MBEDTLS_PSA_CRYPTO_CLIENT
|
||||
pass:
|
||||
|
||||
Config: PSA_WANT_KEY_TYPE_RSA_KEY_PAIR
|
||||
depends_on:PSA_WANT_KEY_TYPE_RSA_KEY_PAIR:MBEDTLS_PSA_CRYPTO_CLIENT
|
||||
pass:
|
||||
|
||||
Config: !PSA_WANT_KEY_TYPE_RSA_KEY_PAIR
|
||||
depends_on:!PSA_WANT_KEY_TYPE_RSA_KEY_PAIR:MBEDTLS_PSA_CRYPTO_CLIENT
|
||||
pass:
|
||||
|
||||
Config: PSA_WANT_KEY_TYPE_RSA_KEY_PAIR_BASIC
|
||||
depends_on:PSA_WANT_KEY_TYPE_RSA_KEY_PAIR_BASIC:MBEDTLS_PSA_CRYPTO_CLIENT
|
||||
pass:
|
||||
|
||||
Config: !PSA_WANT_KEY_TYPE_RSA_KEY_PAIR_BASIC
|
||||
depends_on:!PSA_WANT_KEY_TYPE_RSA_KEY_PAIR_BASIC:MBEDTLS_PSA_CRYPTO_CLIENT
|
||||
pass:
|
||||
|
||||
Config: PSA_WANT_KEY_TYPE_RSA_KEY_PAIR_DERIVE
|
||||
depends_on:PSA_WANT_KEY_TYPE_RSA_KEY_PAIR_DERIVE:MBEDTLS_PSA_CRYPTO_CLIENT:PSA_WANT_KEY_TYPE_RSA_KEY_PAIR_BASIC
|
||||
pass:
|
||||
|
||||
Config: !PSA_WANT_KEY_TYPE_RSA_KEY_PAIR_DERIVE
|
||||
depends_on:!PSA_WANT_KEY_TYPE_RSA_KEY_PAIR_DERIVE:MBEDTLS_PSA_CRYPTO_CLIENT:PSA_WANT_KEY_TYPE_RSA_KEY_PAIR_BASIC
|
||||
pass:
|
||||
|
||||
Config: PSA_WANT_KEY_TYPE_RSA_KEY_PAIR_EXPORT
|
||||
depends_on:PSA_WANT_KEY_TYPE_RSA_KEY_PAIR_EXPORT:MBEDTLS_PSA_CRYPTO_CLIENT:PSA_WANT_KEY_TYPE_RSA_KEY_PAIR_BASIC
|
||||
pass:
|
||||
|
||||
Config: !PSA_WANT_KEY_TYPE_RSA_KEY_PAIR_EXPORT
|
||||
depends_on:!PSA_WANT_KEY_TYPE_RSA_KEY_PAIR_EXPORT:MBEDTLS_PSA_CRYPTO_CLIENT:PSA_WANT_KEY_TYPE_RSA_KEY_PAIR_BASIC
|
||||
pass:
|
||||
|
||||
Config: PSA_WANT_KEY_TYPE_RSA_KEY_PAIR_GENERATE
|
||||
depends_on:PSA_WANT_KEY_TYPE_RSA_KEY_PAIR_GENERATE:MBEDTLS_PSA_CRYPTO_CLIENT:PSA_WANT_KEY_TYPE_RSA_KEY_PAIR_BASIC
|
||||
pass:
|
||||
|
||||
Config: !PSA_WANT_KEY_TYPE_RSA_KEY_PAIR_GENERATE
|
||||
depends_on:!PSA_WANT_KEY_TYPE_RSA_KEY_PAIR_GENERATE:MBEDTLS_PSA_CRYPTO_CLIENT:PSA_WANT_KEY_TYPE_RSA_KEY_PAIR_BASIC
|
||||
pass:
|
||||
|
||||
Config: PSA_WANT_KEY_TYPE_RSA_KEY_PAIR_IMPORT
|
||||
depends_on:PSA_WANT_KEY_TYPE_RSA_KEY_PAIR_IMPORT:MBEDTLS_PSA_CRYPTO_CLIENT:PSA_WANT_KEY_TYPE_RSA_KEY_PAIR_BASIC
|
||||
pass:
|
||||
|
||||
Config: !PSA_WANT_KEY_TYPE_RSA_KEY_PAIR_IMPORT
|
||||
depends_on:!PSA_WANT_KEY_TYPE_RSA_KEY_PAIR_IMPORT:MBEDTLS_PSA_CRYPTO_CLIENT:PSA_WANT_KEY_TYPE_RSA_KEY_PAIR_BASIC
|
||||
pass:
|
||||
|
||||
Config: PSA_WANT_KEY_TYPE_RSA_PUBLIC_KEY
|
||||
depends_on:PSA_WANT_KEY_TYPE_RSA_PUBLIC_KEY:MBEDTLS_PSA_CRYPTO_CLIENT
|
||||
pass:
|
||||
|
||||
Config: !PSA_WANT_KEY_TYPE_RSA_PUBLIC_KEY
|
||||
depends_on:!PSA_WANT_KEY_TYPE_RSA_PUBLIC_KEY:MBEDTLS_PSA_CRYPTO_CLIENT
|
||||
pass:
|
||||
|
||||
# End of automatically generated file.
|
||||
9
vendor/mbedtls/tests/suites/test_suite_config.psa_combinations.data
vendored
Normal file
9
vendor/mbedtls/tests/suites/test_suite_config.psa_combinations.data
vendored
Normal file
@@ -0,0 +1,9 @@
|
||||
# Interesting combinations of PSA options
|
||||
|
||||
Config: PSA_WANT_ALG_ECDSA without PSA_WANT_ALG_DETERMINISTIC_ECDSA
|
||||
depends_on:PSA_WANT_ALG_ECDSA:!PSA_WANT_ALG_DETERMINISTIC_ECDSA
|
||||
pass:
|
||||
|
||||
Config: PSA_WANT_ALG_DETERMINSTIC_ECDSA without PSA_WANT_ALG_ECDSA
|
||||
depends_on:PSA_WANT_ALG_DETERMINISTIC_ECDSA:!PSA_WANT_ALG_ECDSA
|
||||
pass:
|
||||
9
vendor/mbedtls/tests/suites/test_suite_config.tls_combinations.data
vendored
Normal file
9
vendor/mbedtls/tests/suites/test_suite_config.tls_combinations.data
vendored
Normal file
@@ -0,0 +1,9 @@
|
||||
# Interesting combinations of TLS options
|
||||
|
||||
Config: TLS 1.2 without TLS 1.3
|
||||
depends_on:MBEDTLS_SSL_PROTO_TLS1_2:!MBEDTLS_SSL_PROTO_TLS1_3
|
||||
pass:
|
||||
|
||||
Config: TLS 1.3 without TLS 1.2
|
||||
depends_on:MBEDTLS_SSL_PROTO_TLS1_3:!MBEDTLS_SSL_PROTO_TLS1_2
|
||||
pass:
|
||||
866
vendor/mbedtls/tests/suites/test_suite_constant_time.data
vendored
Normal file
866
vendor/mbedtls/tests/suites/test_suite_constant_time.data
vendored
Normal file
@@ -0,0 +1,866 @@
|
||||
# these are the numbers we'd get with an empty plaintext and truncated HMAC
|
||||
Constant-flow memcpy from offset: small
|
||||
mbedtls_ct_memcpy_offset:0:5:10
|
||||
|
||||
# we could get this with 255-bytes plaintext and untruncated SHA-256
|
||||
Constant-flow memcpy from offset: medium
|
||||
mbedtls_ct_memcpy_offset:0:255:32
|
||||
|
||||
# we could get this with 255-bytes plaintext and untruncated SHA-384
|
||||
Constant-flow memcpy from offset: large
|
||||
mbedtls_ct_memcpy_offset:100:339:48
|
||||
|
||||
mbedtls_ct_memcmp NULL
|
||||
mbedtls_ct_memcmp_null
|
||||
|
||||
mbedtls_ct_memcmp len 1
|
||||
mbedtls_ct_memcmp:-1:1:0
|
||||
|
||||
mbedtls_ct_memcmp len 3
|
||||
mbedtls_ct_memcmp:-1:3:0
|
||||
|
||||
mbedtls_ct_memcmp len 4
|
||||
mbedtls_ct_memcmp:-1:4:0
|
||||
|
||||
mbedtls_ct_memcmp len 5
|
||||
mbedtls_ct_memcmp:-1:5:0
|
||||
|
||||
mbedtls_ct_memcmp len 15
|
||||
mbedtls_ct_memcmp:-1:15:0
|
||||
|
||||
mbedtls_ct_memcmp len 16
|
||||
mbedtls_ct_memcmp:-1:16:0
|
||||
|
||||
mbedtls_ct_memcmp len 17
|
||||
mbedtls_ct_memcmp:-1:17:0
|
||||
|
||||
mbedtls_ct_memcmp len 1 different
|
||||
mbedtls_ct_memcmp:0:1:0
|
||||
|
||||
mbedtls_ct_memcmp len 17 different
|
||||
mbedtls_ct_memcmp:0:17:0
|
||||
|
||||
mbedtls_ct_memcmp len 17 different 1
|
||||
mbedtls_ct_memcmp:1:17:0
|
||||
|
||||
mbedtls_ct_memcmp len 17 different 4
|
||||
mbedtls_ct_memcmp:4:17:0
|
||||
|
||||
mbedtls_ct_memcmp len 17 different 10
|
||||
mbedtls_ct_memcmp:10:17:0
|
||||
|
||||
mbedtls_ct_memcmp len 17 different 16
|
||||
mbedtls_ct_memcmp:16:17:0
|
||||
|
||||
mbedtls_ct_memcmp len 1 offset 1 different
|
||||
mbedtls_ct_memcmp:0:1:1
|
||||
|
||||
mbedtls_ct_memcmp len 17 offset 1 different
|
||||
mbedtls_ct_memcmp:0:17:1
|
||||
|
||||
mbedtls_ct_memcmp len 17 offset 1 different 1
|
||||
mbedtls_ct_memcmp:1:17:1
|
||||
|
||||
mbedtls_ct_memcmp len 17 offset 1 different 5
|
||||
mbedtls_ct_memcmp:5:17:1
|
||||
|
||||
mbedtls_ct_memcmp len 1 offset 1
|
||||
mbedtls_ct_memcmp:-1:1:1
|
||||
|
||||
mbedtls_ct_memcmp len 1 offset 2
|
||||
mbedtls_ct_memcmp:-1:1:2
|
||||
|
||||
mbedtls_ct_memcmp len 1 offset 3
|
||||
mbedtls_ct_memcmp:-1:1:3
|
||||
|
||||
mbedtls_ct_memcmp len 5 offset 1
|
||||
mbedtls_ct_memcmp:-1:5:1
|
||||
|
||||
mbedtls_ct_memcmp len 5 offset 2
|
||||
mbedtls_ct_memcmp:-1:5:2
|
||||
|
||||
mbedtls_ct_memcmp len 5 offset 3
|
||||
mbedtls_ct_memcmp:-1:5:3
|
||||
|
||||
mbedtls_ct_memcmp len 17 offset 1
|
||||
mbedtls_ct_memcmp:-1:17:1
|
||||
|
||||
mbedtls_ct_memcmp len 17 offset 2
|
||||
mbedtls_ct_memcmp:-1:17:2
|
||||
|
||||
mbedtls_ct_memcmp len 17 offset 3
|
||||
mbedtls_ct_memcmp:-1:17:3
|
||||
|
||||
mbedtls_ct_memcmp_single_bit_diff
|
||||
mbedtls_ct_memcmp_single_bit_diff:
|
||||
|
||||
mbedtls_ct_memcpy_if len 1 offset 0
|
||||
mbedtls_ct_memcpy_if:1:1:0
|
||||
|
||||
mbedtls_ct_memcpy_if len 1 offset 1
|
||||
mbedtls_ct_memcpy_if:1:1:1
|
||||
|
||||
mbedtls_ct_memcpy_if len 4 offset 0
|
||||
mbedtls_ct_memcpy_if:1:1:0
|
||||
|
||||
mbedtls_ct_memcpy_if len 4 offset 1
|
||||
mbedtls_ct_memcpy_if:1:1:1
|
||||
|
||||
mbedtls_ct_memcpy_if len 4 offset 2
|
||||
mbedtls_ct_memcpy_if:1:1:2
|
||||
|
||||
mbedtls_ct_memcpy_if len 4 offset 3
|
||||
mbedtls_ct_memcpy_if:1:1:3
|
||||
|
||||
mbedtls_ct_memcpy_if len 15 offset 0
|
||||
mbedtls_ct_memcpy_if:1:15:0
|
||||
|
||||
mbedtls_ct_memcpy_if len 15 offset 1
|
||||
mbedtls_ct_memcpy_if:1:15:1
|
||||
|
||||
mbedtls_ct_memcpy_if len 16 offset 0
|
||||
mbedtls_ct_memcpy_if:1:16:0
|
||||
|
||||
mbedtls_ct_memcpy_if len 16 offset 1
|
||||
mbedtls_ct_memcpy_if:1:16:1
|
||||
|
||||
mbedtls_ct_memcpy_if len 17 offset 0
|
||||
mbedtls_ct_memcpy_if:1:17:0
|
||||
|
||||
mbedtls_ct_memcpy_if len 17 offset 1
|
||||
mbedtls_ct_memcpy_if:1:17:1
|
||||
|
||||
mbedtls_ct_memcpy_if len 0 not eq
|
||||
mbedtls_ct_memcpy_if:0:17:0
|
||||
|
||||
mbedtls_ct_memcpy_if len 5 offset 1 not eq
|
||||
mbedtls_ct_memcpy_if:0:5:1
|
||||
|
||||
mbedtls_ct_memcpy_if len 17 offset 3 not eq
|
||||
mbedtls_ct_memcpy_if:0:17:3
|
||||
|
||||
mbedtls_ct_bool 0
|
||||
mbedtls_ct_bool:"0x0"
|
||||
|
||||
mbedtls_ct_bool 1
|
||||
mbedtls_ct_bool:"0x1"
|
||||
|
||||
mbedtls_ct_bool 4
|
||||
mbedtls_ct_bool:"0x4"
|
||||
|
||||
mbedtls_ct_bool 0xfffffff
|
||||
mbedtls_ct_bool:"0xfffffff"
|
||||
|
||||
mbedtls_ct_bool 0x7fffffff
|
||||
mbedtls_ct_bool:"0x7fffffff"
|
||||
|
||||
mbedtls_ct_bool 0xfffffffe
|
||||
mbedtls_ct_bool:"0xfffffffe"
|
||||
|
||||
mbedtls_ct_bool 0xffffffff
|
||||
mbedtls_ct_bool:"0xffffffff"
|
||||
|
||||
mbedtls_ct_bool 0x0fffffffffffffff
|
||||
mbedtls_ct_bool:"0x0fffffffffffffff"
|
||||
|
||||
mbedtls_ct_bool 0x7fffffffffffffff
|
||||
mbedtls_ct_bool:"0x7fffffffffffffff"
|
||||
|
||||
mbedtls_ct_bool 0xffffffffffffffff
|
||||
mbedtls_ct_bool:"0xffffffffffffffff"
|
||||
|
||||
mbedtls_ct_bool_xxx 0x0 0x0
|
||||
mbedtls_ct_bool_xxx:"0x0":"0x0"
|
||||
|
||||
mbedtls_ct_bool_xxx 0x0 0x1
|
||||
mbedtls_ct_bool_xxx:"0x0":"0x1"
|
||||
|
||||
mbedtls_ct_bool_xxx 0x0 0x7fffffff
|
||||
mbedtls_ct_bool_xxx:"0x0":"0x7fffffff"
|
||||
|
||||
mbedtls_ct_bool_xxx 0x0 0xffffffff
|
||||
mbedtls_ct_bool_xxx:"0x0":"0xffffffff"
|
||||
|
||||
mbedtls_ct_bool_xxx 0x0 0x7fffffffffffffff
|
||||
mbedtls_ct_bool_xxx:"0x0":"0x7fffffffffffffff"
|
||||
|
||||
mbedtls_ct_bool_xxx 0x0 0xffffffffffffffff
|
||||
mbedtls_ct_bool_xxx:"0x0":"0xffffffffffffffff"
|
||||
|
||||
mbedtls_ct_bool_xxx 0x1 0x0
|
||||
mbedtls_ct_bool_xxx:"0x1":"0x0"
|
||||
|
||||
mbedtls_ct_bool_xxx 0x1 0x1
|
||||
mbedtls_ct_bool_xxx:"0x1":"0x1"
|
||||
|
||||
mbedtls_ct_bool_xxx 0x1 0x7fffffff
|
||||
mbedtls_ct_bool_xxx:"0x1":"0x7fffffff"
|
||||
|
||||
mbedtls_ct_bool_xxx 0x1 0xffffffff
|
||||
mbedtls_ct_bool_xxx:"0x1":"0xffffffff"
|
||||
|
||||
mbedtls_ct_bool_xxx 0x1 0x7fffffffffffffff
|
||||
mbedtls_ct_bool_xxx:"0x1":"0x7fffffffffffffff"
|
||||
|
||||
mbedtls_ct_bool_xxx 0x1 0xffffffffffffffff
|
||||
mbedtls_ct_bool_xxx:"0x1":"0xffffffffffffffff"
|
||||
|
||||
mbedtls_ct_bool_xxx 0x7fffffff 0x0
|
||||
mbedtls_ct_bool_xxx:"0x7fffffff":"0x0"
|
||||
|
||||
mbedtls_ct_bool_xxx 0x7fffffff 0x1
|
||||
mbedtls_ct_bool_xxx:"0x7fffffff":"0x1"
|
||||
|
||||
mbedtls_ct_bool_xxx 0x7fffffff 0x7fffffff
|
||||
mbedtls_ct_bool_xxx:"0x7fffffff":"0x7fffffff"
|
||||
|
||||
mbedtls_ct_bool_xxx 0x7fffffff 0xffffffff
|
||||
mbedtls_ct_bool_xxx:"0x7fffffff":"0xffffffff"
|
||||
|
||||
mbedtls_ct_bool_xxx 0x7fffffff 0x7fffffffffffffff
|
||||
mbedtls_ct_bool_xxx:"0x7fffffff":"0x7fffffffffffffff"
|
||||
|
||||
mbedtls_ct_bool_xxx 0x7fffffff 0xffffffffffffffff
|
||||
mbedtls_ct_bool_xxx:"0x7fffffff":"0xffffffffffffffff"
|
||||
|
||||
mbedtls_ct_bool_xxx 0xffffffff 0x0
|
||||
mbedtls_ct_bool_xxx:"0xffffffff":"0x0"
|
||||
|
||||
mbedtls_ct_bool_xxx 0xffffffff 0x1
|
||||
mbedtls_ct_bool_xxx:"0xffffffff":"0x1"
|
||||
|
||||
mbedtls_ct_bool_xxx 0xffffffff 0x7fffffff
|
||||
mbedtls_ct_bool_xxx:"0xffffffff":"0x7fffffff"
|
||||
|
||||
mbedtls_ct_bool_xxx 0xffffffff 0xffffffff
|
||||
mbedtls_ct_bool_xxx:"0xffffffff":"0xffffffff"
|
||||
|
||||
mbedtls_ct_bool_xxx 0xffffffff 0x7fffffffffffffff
|
||||
mbedtls_ct_bool_xxx:"0xffffffff":"0x7fffffffffffffff"
|
||||
|
||||
mbedtls_ct_bool_xxx 0xffffffff 0xffffffffffffffff
|
||||
mbedtls_ct_bool_xxx:"0xffffffff":"0xffffffffffffffff"
|
||||
|
||||
mbedtls_ct_bool_xxx 0x7fffffffffffffff 0x0
|
||||
mbedtls_ct_bool_xxx:"0x7fffffffffffffff":"0x0"
|
||||
|
||||
mbedtls_ct_bool_xxx 0x7fffffffffffffff 0x1
|
||||
mbedtls_ct_bool_xxx:"0x7fffffffffffffff":"0x1"
|
||||
|
||||
mbedtls_ct_bool_xxx 0x7fffffffffffffff 0x7fffffff
|
||||
mbedtls_ct_bool_xxx:"0x7fffffffffffffff":"0x7fffffff"
|
||||
|
||||
mbedtls_ct_bool_xxx 0x7fffffffffffffff 0xffffffff
|
||||
mbedtls_ct_bool_xxx:"0x7fffffffffffffff":"0xffffffff"
|
||||
|
||||
mbedtls_ct_bool_xxx 0x7fffffffffffffff 0x7fffffffffffffff
|
||||
mbedtls_ct_bool_xxx:"0x7fffffffffffffff":"0x7fffffffffffffff"
|
||||
|
||||
mbedtls_ct_bool_xxx 0x7fffffffffffffff 0xffffffffffffffff
|
||||
mbedtls_ct_bool_xxx:"0x7fffffffffffffff":"0xffffffffffffffff"
|
||||
|
||||
mbedtls_ct_bool_xxx 0xffffffffffffffff 0x0
|
||||
mbedtls_ct_bool_xxx:"0xffffffffffffffff":"0x0"
|
||||
|
||||
mbedtls_ct_bool_xxx 0xffffffffffffffff 0x1
|
||||
mbedtls_ct_bool_xxx:"0xffffffffffffffff":"0x1"
|
||||
|
||||
mbedtls_ct_bool_xxx 0xffffffffffffffff 0x7fffffff
|
||||
mbedtls_ct_bool_xxx:"0xffffffffffffffff":"0x7fffffff"
|
||||
|
||||
mbedtls_ct_bool_xxx 0xffffffffffffffff 0xffffffff
|
||||
mbedtls_ct_bool_xxx:"0xffffffffffffffff":"0xffffffff"
|
||||
|
||||
mbedtls_ct_bool_xxx 0xffffffffffffffff 0x7fffffffffffffff
|
||||
mbedtls_ct_bool_xxx:"0xffffffffffffffff":"0x7fffffffffffffff"
|
||||
|
||||
mbedtls_ct_bool_xxx 0xffffffffffffffff 0xffffffffffffffff
|
||||
mbedtls_ct_bool_xxx:"0xffffffffffffffff":"0xffffffffffffffff"
|
||||
|
||||
mbedtls_ct_bool_xxx 138 256
|
||||
mbedtls_ct_bool_xxx:"138":"256"
|
||||
|
||||
mbedtls_ct_bool_xxx 256 138
|
||||
mbedtls_ct_bool_xxx:"256":"138"
|
||||
|
||||
mbedtls_ct_bool_xxx 6 6
|
||||
mbedtls_ct_bool_xxx:"0x6":"0x6"
|
||||
|
||||
mbedtls_ct_uchar_in_range_if 0 0 0
|
||||
mbedtls_ct_uchar_in_range_if:0:0:0
|
||||
|
||||
mbedtls_ct_uchar_in_range_if 0 0 100
|
||||
mbedtls_ct_uchar_in_range_if:0:0:100
|
||||
|
||||
mbedtls_ct_uchar_in_range_if 0 0 255
|
||||
mbedtls_ct_uchar_in_range_if:0:0:255
|
||||
|
||||
mbedtls_ct_uchar_in_range_if 0 65 0
|
||||
mbedtls_ct_uchar_in_range_if:0:65:0
|
||||
|
||||
mbedtls_ct_uchar_in_range_if 0 65 100
|
||||
mbedtls_ct_uchar_in_range_if:0:65:100
|
||||
|
||||
mbedtls_ct_uchar_in_range_if 0 65 255
|
||||
mbedtls_ct_uchar_in_range_if:0:65:255
|
||||
|
||||
mbedtls_ct_uchar_in_range_if 0 90 0
|
||||
mbedtls_ct_uchar_in_range_if:0:90:0
|
||||
|
||||
mbedtls_ct_uchar_in_range_if 0 90 100
|
||||
mbedtls_ct_uchar_in_range_if:0:90:100
|
||||
|
||||
mbedtls_ct_uchar_in_range_if 0 90 255
|
||||
mbedtls_ct_uchar_in_range_if:0:90:255
|
||||
|
||||
mbedtls_ct_uchar_in_range_if 0 255 0
|
||||
mbedtls_ct_uchar_in_range_if:0:255:0
|
||||
|
||||
mbedtls_ct_uchar_in_range_if 0 255 100
|
||||
mbedtls_ct_uchar_in_range_if:0:255:100
|
||||
|
||||
mbedtls_ct_uchar_in_range_if 0 255 255
|
||||
mbedtls_ct_uchar_in_range_if:0:255:255
|
||||
|
||||
mbedtls_ct_uchar_in_range_if 65 0 0
|
||||
mbedtls_ct_uchar_in_range_if:65:0:0
|
||||
|
||||
mbedtls_ct_uchar_in_range_if 65 0 100
|
||||
mbedtls_ct_uchar_in_range_if:65:0:100
|
||||
|
||||
mbedtls_ct_uchar_in_range_if 65 0 255
|
||||
mbedtls_ct_uchar_in_range_if:65:0:255
|
||||
|
||||
mbedtls_ct_uchar_in_range_if 65 65 0
|
||||
mbedtls_ct_uchar_in_range_if:65:65:0
|
||||
|
||||
mbedtls_ct_uchar_in_range_if 65 65 100
|
||||
mbedtls_ct_uchar_in_range_if:65:65:100
|
||||
|
||||
mbedtls_ct_uchar_in_range_if 65 65 255
|
||||
mbedtls_ct_uchar_in_range_if:65:65:255
|
||||
|
||||
mbedtls_ct_uchar_in_range_if 65 90 0
|
||||
mbedtls_ct_uchar_in_range_if:65:90:0
|
||||
|
||||
mbedtls_ct_uchar_in_range_if 65 90 100
|
||||
mbedtls_ct_uchar_in_range_if:65:90:100
|
||||
|
||||
mbedtls_ct_uchar_in_range_if 65 90 255
|
||||
mbedtls_ct_uchar_in_range_if:65:90:255
|
||||
|
||||
mbedtls_ct_uchar_in_range_if 65 255 0
|
||||
mbedtls_ct_uchar_in_range_if:65:255:0
|
||||
|
||||
mbedtls_ct_uchar_in_range_if 65 255 100
|
||||
mbedtls_ct_uchar_in_range_if:65:255:100
|
||||
|
||||
mbedtls_ct_uchar_in_range_if 65 255 255
|
||||
mbedtls_ct_uchar_in_range_if:65:255:255
|
||||
|
||||
mbedtls_ct_uchar_in_range_if 90 0 0
|
||||
mbedtls_ct_uchar_in_range_if:90:0:0
|
||||
|
||||
mbedtls_ct_uchar_in_range_if 90 0 100
|
||||
mbedtls_ct_uchar_in_range_if:90:0:100
|
||||
|
||||
mbedtls_ct_uchar_in_range_if 90 0 255
|
||||
mbedtls_ct_uchar_in_range_if:90:0:255
|
||||
|
||||
mbedtls_ct_uchar_in_range_if 90 65 0
|
||||
mbedtls_ct_uchar_in_range_if:90:65:0
|
||||
|
||||
mbedtls_ct_uchar_in_range_if 90 65 100
|
||||
mbedtls_ct_uchar_in_range_if:90:65:100
|
||||
|
||||
mbedtls_ct_uchar_in_range_if 90 65 255
|
||||
mbedtls_ct_uchar_in_range_if:90:65:255
|
||||
|
||||
mbedtls_ct_uchar_in_range_if 90 90 0
|
||||
mbedtls_ct_uchar_in_range_if:90:90:0
|
||||
|
||||
mbedtls_ct_uchar_in_range_if 90 90 100
|
||||
mbedtls_ct_uchar_in_range_if:90:90:100
|
||||
|
||||
mbedtls_ct_uchar_in_range_if 90 90 255
|
||||
mbedtls_ct_uchar_in_range_if:90:90:255
|
||||
|
||||
mbedtls_ct_uchar_in_range_if 90 255 0
|
||||
mbedtls_ct_uchar_in_range_if:90:255:0
|
||||
|
||||
mbedtls_ct_uchar_in_range_if 90 255 100
|
||||
mbedtls_ct_uchar_in_range_if:90:255:100
|
||||
|
||||
mbedtls_ct_uchar_in_range_if 90 255 255
|
||||
mbedtls_ct_uchar_in_range_if:90:255:255
|
||||
|
||||
mbedtls_ct_uchar_in_range_if 255 0 0
|
||||
mbedtls_ct_uchar_in_range_if:255:0:0
|
||||
|
||||
mbedtls_ct_uchar_in_range_if 255 0 100
|
||||
mbedtls_ct_uchar_in_range_if:255:0:100
|
||||
|
||||
mbedtls_ct_uchar_in_range_if 255 0 255
|
||||
mbedtls_ct_uchar_in_range_if:255:0:255
|
||||
|
||||
mbedtls_ct_uchar_in_range_if 255 65 0
|
||||
mbedtls_ct_uchar_in_range_if:255:65:0
|
||||
|
||||
mbedtls_ct_uchar_in_range_if 255 65 100
|
||||
mbedtls_ct_uchar_in_range_if:255:65:100
|
||||
|
||||
mbedtls_ct_uchar_in_range_if 255 65 255
|
||||
mbedtls_ct_uchar_in_range_if:255:65:255
|
||||
|
||||
mbedtls_ct_uchar_in_range_if 255 90 0
|
||||
mbedtls_ct_uchar_in_range_if:255:90:0
|
||||
|
||||
mbedtls_ct_uchar_in_range_if 255 90 100
|
||||
mbedtls_ct_uchar_in_range_if:255:90:100
|
||||
|
||||
mbedtls_ct_uchar_in_range_if 255 90 255
|
||||
mbedtls_ct_uchar_in_range_if:255:90:255
|
||||
|
||||
mbedtls_ct_uchar_in_range_if 255 255 0
|
||||
mbedtls_ct_uchar_in_range_if:255:255:0
|
||||
|
||||
mbedtls_ct_uchar_in_range_if 255 255 100
|
||||
mbedtls_ct_uchar_in_range_if:255:255:100
|
||||
|
||||
mbedtls_ct_uchar_in_range_if 255 255 255
|
||||
mbedtls_ct_uchar_in_range_if:255:255:255
|
||||
|
||||
mbedtls_ct_if 0x0 0x0 0x0
|
||||
mbedtls_ct_if:"0x0":"0x0":"0x0"
|
||||
|
||||
mbedtls_ct_if 0x0 0x0 0x1
|
||||
mbedtls_ct_if:"0x0":"0x0":"0x1"
|
||||
|
||||
mbedtls_ct_if 0x0 0x0 0x7fffffff
|
||||
mbedtls_ct_if:"0x0":"0x0":"0x7fffffff"
|
||||
|
||||
mbedtls_ct_if 0x0 0x0 0xffffffff
|
||||
mbedtls_ct_if:"0x0":"0x0":"0xffffffff"
|
||||
|
||||
mbedtls_ct_if 0x0 0x0 0x7fffffffffffffff
|
||||
mbedtls_ct_if:"0x0":"0x0":"0x7fffffffffffffff"
|
||||
|
||||
mbedtls_ct_if 0x0 0x0 0xffffffffffffffff
|
||||
mbedtls_ct_if:"0x0":"0x0":"0xffffffffffffffff"
|
||||
|
||||
mbedtls_ct_if 0x0 0x1 0x0
|
||||
mbedtls_ct_if:"0x0":"0x1":"0x0"
|
||||
|
||||
mbedtls_ct_if 0x0 0x1 0x1
|
||||
mbedtls_ct_if:"0x0":"0x1":"0x1"
|
||||
|
||||
mbedtls_ct_if 0x0 0x1 0x7fffffff
|
||||
mbedtls_ct_if:"0x0":"0x1":"0x7fffffff"
|
||||
|
||||
mbedtls_ct_if 0x0 0x1 0xffffffff
|
||||
mbedtls_ct_if:"0x0":"0x1":"0xffffffff"
|
||||
|
||||
mbedtls_ct_if 0x0 0x1 0x7fffffffffffffff
|
||||
mbedtls_ct_if:"0x0":"0x1":"0x7fffffffffffffff"
|
||||
|
||||
mbedtls_ct_if 0x0 0x1 0xffffffffffffffff
|
||||
mbedtls_ct_if:"0x0":"0x1":"0xffffffffffffffff"
|
||||
|
||||
mbedtls_ct_if 0x0 0x7fffffff 0x0
|
||||
mbedtls_ct_if:"0x0":"0x7fffffff":"0x0"
|
||||
|
||||
mbedtls_ct_if 0x0 0x7fffffff 0x1
|
||||
mbedtls_ct_if:"0x0":"0x7fffffff":"0x1"
|
||||
|
||||
mbedtls_ct_if 0x0 0x7fffffff 0x7fffffff
|
||||
mbedtls_ct_if:"0x0":"0x7fffffff":"0x7fffffff"
|
||||
|
||||
mbedtls_ct_if 0x0 0x7fffffff 0xffffffff
|
||||
mbedtls_ct_if:"0x0":"0x7fffffff":"0xffffffff"
|
||||
|
||||
mbedtls_ct_if 0x0 0x7fffffff 0x7fffffffffffffff
|
||||
mbedtls_ct_if:"0x0":"0x7fffffff":"0x7fffffffffffffff"
|
||||
|
||||
mbedtls_ct_if 0x0 0x7fffffff 0xffffffffffffffff
|
||||
mbedtls_ct_if:"0x0":"0x7fffffff":"0xffffffffffffffff"
|
||||
|
||||
mbedtls_ct_if 0x0 0xffffffff 0x0
|
||||
mbedtls_ct_if:"0x0":"0xffffffff":"0x0"
|
||||
|
||||
mbedtls_ct_if 0x0 0xffffffff 0x1
|
||||
mbedtls_ct_if:"0x0":"0xffffffff":"0x1"
|
||||
|
||||
mbedtls_ct_if 0x0 0xffffffff 0x7fffffff
|
||||
mbedtls_ct_if:"0x0":"0xffffffff":"0x7fffffff"
|
||||
|
||||
mbedtls_ct_if 0x0 0xffffffff 0xffffffff
|
||||
mbedtls_ct_if:"0x0":"0xffffffff":"0xffffffff"
|
||||
|
||||
mbedtls_ct_if 0x0 0xffffffff 0x7fffffffffffffff
|
||||
mbedtls_ct_if:"0x0":"0xffffffff":"0x7fffffffffffffff"
|
||||
|
||||
mbedtls_ct_if 0x0 0xffffffff 0xffffffffffffffff
|
||||
mbedtls_ct_if:"0x0":"0xffffffff":"0xffffffffffffffff"
|
||||
|
||||
mbedtls_ct_if 0x0 0x7fffffffffffffff 0x0
|
||||
mbedtls_ct_if:"0x0":"0x7fffffffffffffff":"0x0"
|
||||
|
||||
mbedtls_ct_if 0x0 0x7fffffffffffffff 0x1
|
||||
mbedtls_ct_if:"0x0":"0x7fffffffffffffff":"0x1"
|
||||
|
||||
mbedtls_ct_if 0x0 0x7fffffffffffffff 0x7fffffff
|
||||
mbedtls_ct_if:"0x0":"0x7fffffffffffffff":"0x7fffffff"
|
||||
|
||||
mbedtls_ct_if 0x0 0x7fffffffffffffff 0xffffffff
|
||||
mbedtls_ct_if:"0x0":"0x7fffffffffffffff":"0xffffffff"
|
||||
|
||||
mbedtls_ct_if 0x0 0x7fffffffffffffff 0x7fffffffffffffff
|
||||
mbedtls_ct_if:"0x0":"0x7fffffffffffffff":"0x7fffffffffffffff"
|
||||
|
||||
mbedtls_ct_if 0x0 0x7fffffffffffffff 0xffffffffffffffff
|
||||
mbedtls_ct_if:"0x0":"0x7fffffffffffffff":"0xffffffffffffffff"
|
||||
|
||||
mbedtls_ct_if 0x0 0xffffffffffffffff 0x0
|
||||
mbedtls_ct_if:"0x0":"0xffffffffffffffff":"0x0"
|
||||
|
||||
mbedtls_ct_if 0x0 0xffffffffffffffff 0x1
|
||||
mbedtls_ct_if:"0x0":"0xffffffffffffffff":"0x1"
|
||||
|
||||
mbedtls_ct_if 0x0 0xffffffffffffffff 0x7fffffff
|
||||
mbedtls_ct_if:"0x0":"0xffffffffffffffff":"0x7fffffff"
|
||||
|
||||
mbedtls_ct_if 0x0 0xffffffffffffffff 0xffffffff
|
||||
mbedtls_ct_if:"0x0":"0xffffffffffffffff":"0xffffffff"
|
||||
|
||||
mbedtls_ct_if 0x0 0xffffffffffffffff 0x7fffffffffffffff
|
||||
mbedtls_ct_if:"0x0":"0xffffffffffffffff":"0x7fffffffffffffff"
|
||||
|
||||
mbedtls_ct_if 0x0 0xffffffffffffffff 0xffffffffffffffff
|
||||
mbedtls_ct_if:"0x0":"0xffffffffffffffff":"0xffffffffffffffff"
|
||||
|
||||
mbedtls_ct_if 0xffffffffffffffff 0x0 0x0
|
||||
mbedtls_ct_if:"0xffffffffffffffff":"0x0":"0x0"
|
||||
|
||||
mbedtls_ct_if 0xffffffffffffffff 0x0 0x1
|
||||
mbedtls_ct_if:"0xffffffffffffffff":"0x0":"0x1"
|
||||
|
||||
mbedtls_ct_if 0xffffffffffffffff 0x0 0x7fffffff
|
||||
mbedtls_ct_if:"0xffffffffffffffff":"0x0":"0x7fffffff"
|
||||
|
||||
mbedtls_ct_if 0xffffffffffffffff 0x0 0xffffffff
|
||||
mbedtls_ct_if:"0xffffffffffffffff":"0x0":"0xffffffff"
|
||||
|
||||
mbedtls_ct_if 0xffffffffffffffff 0x0 0x7fffffffffffffff
|
||||
mbedtls_ct_if:"0xffffffffffffffff":"0x0":"0x7fffffffffffffff"
|
||||
|
||||
mbedtls_ct_if 0xffffffffffffffff 0x0 0xffffffffffffffff
|
||||
mbedtls_ct_if:"0xffffffffffffffff":"0x0":"0xffffffffffffffff"
|
||||
|
||||
mbedtls_ct_if 0xffffffffffffffff 0x1 0x0
|
||||
mbedtls_ct_if:"0xffffffffffffffff":"0x1":"0x0"
|
||||
|
||||
mbedtls_ct_if 0xffffffffffffffff 0x1 0x1
|
||||
mbedtls_ct_if:"0xffffffffffffffff":"0x1":"0x1"
|
||||
|
||||
mbedtls_ct_if 0xffffffffffffffff 0x1 0x7fffffff
|
||||
mbedtls_ct_if:"0xffffffffffffffff":"0x1":"0x7fffffff"
|
||||
|
||||
mbedtls_ct_if 0xffffffffffffffff 0x1 0xffffffff
|
||||
mbedtls_ct_if:"0xffffffffffffffff":"0x1":"0xffffffff"
|
||||
|
||||
mbedtls_ct_if 0xffffffffffffffff 0x1 0x7fffffffffffffff
|
||||
mbedtls_ct_if:"0xffffffffffffffff":"0x1":"0x7fffffffffffffff"
|
||||
|
||||
mbedtls_ct_if 0xffffffffffffffff 0x1 0xffffffffffffffff
|
||||
mbedtls_ct_if:"0xffffffffffffffff":"0x1":"0xffffffffffffffff"
|
||||
|
||||
mbedtls_ct_if 0xffffffffffffffff 0x7fffffff 0x0
|
||||
mbedtls_ct_if:"0xffffffffffffffff":"0x7fffffff":"0x0"
|
||||
|
||||
mbedtls_ct_if 0xffffffffffffffff 0x7fffffff 0x1
|
||||
mbedtls_ct_if:"0xffffffffffffffff":"0x7fffffff":"0x1"
|
||||
|
||||
mbedtls_ct_if 0xffffffffffffffff 0x7fffffff 0x7fffffff
|
||||
mbedtls_ct_if:"0xffffffffffffffff":"0x7fffffff":"0x7fffffff"
|
||||
|
||||
mbedtls_ct_if 0xffffffffffffffff 0x7fffffff 0xffffffff
|
||||
mbedtls_ct_if:"0xffffffffffffffff":"0x7fffffff":"0xffffffff"
|
||||
|
||||
mbedtls_ct_if 0xffffffffffffffff 0x7fffffff 0x7fffffffffffffff
|
||||
mbedtls_ct_if:"0xffffffffffffffff":"0x7fffffff":"0x7fffffffffffffff"
|
||||
|
||||
mbedtls_ct_if 0xffffffffffffffff 0x7fffffff 0xffffffffffffffff
|
||||
mbedtls_ct_if:"0xffffffffffffffff":"0x7fffffff":"0xffffffffffffffff"
|
||||
|
||||
mbedtls_ct_if 0xffffffffffffffff 0xffffffff 0x0
|
||||
mbedtls_ct_if:"0xffffffffffffffff":"0xffffffff":"0x0"
|
||||
|
||||
mbedtls_ct_if 0xffffffffffffffff 0xffffffff 0x1
|
||||
mbedtls_ct_if:"0xffffffffffffffff":"0xffffffff":"0x1"
|
||||
|
||||
mbedtls_ct_if 0xffffffffffffffff 0xffffffff 0x7fffffff
|
||||
mbedtls_ct_if:"0xffffffffffffffff":"0xffffffff":"0x7fffffff"
|
||||
|
||||
mbedtls_ct_if 0xffffffffffffffff 0xffffffff 0xffffffff
|
||||
mbedtls_ct_if:"0xffffffffffffffff":"0xffffffff":"0xffffffff"
|
||||
|
||||
mbedtls_ct_if 0xffffffffffffffff 0xffffffff 0x7fffffffffffffff
|
||||
mbedtls_ct_if:"0xffffffffffffffff":"0xffffffff":"0x7fffffffffffffff"
|
||||
|
||||
mbedtls_ct_if 0xffffffffffffffff 0xffffffff 0xffffffffffffffff
|
||||
mbedtls_ct_if:"0xffffffffffffffff":"0xffffffff":"0xffffffffffffffff"
|
||||
|
||||
mbedtls_ct_if 0xffffffffffffffff 0x7fffffffffffffff 0x0
|
||||
mbedtls_ct_if:"0xffffffffffffffff":"0x7fffffffffffffff":"0x0"
|
||||
|
||||
mbedtls_ct_if 0xffffffffffffffff 0x7fffffffffffffff 0x1
|
||||
mbedtls_ct_if:"0xffffffffffffffff":"0x7fffffffffffffff":"0x1"
|
||||
|
||||
mbedtls_ct_if 0xffffffffffffffff 0x7fffffffffffffff 0x7fffffff
|
||||
mbedtls_ct_if:"0xffffffffffffffff":"0x7fffffffffffffff":"0x7fffffff"
|
||||
|
||||
mbedtls_ct_if 0xffffffffffffffff 0x7fffffffffffffff 0xffffffff
|
||||
mbedtls_ct_if:"0xffffffffffffffff":"0x7fffffffffffffff":"0xffffffff"
|
||||
|
||||
mbedtls_ct_if 0xffffffffffffffff 0x7fffffffffffffff 0x7fffffffffffffff
|
||||
mbedtls_ct_if:"0xffffffffffffffff":"0x7fffffffffffffff":"0x7fffffffffffffff"
|
||||
|
||||
mbedtls_ct_if 0xffffffffffffffff 0x7fffffffffffffff 0xffffffffffffffff
|
||||
mbedtls_ct_if:"0xffffffffffffffff":"0x7fffffffffffffff":"0xffffffffffffffff"
|
||||
|
||||
mbedtls_ct_if 0xffffffffffffffff 0xffffffffffffffff 0x0
|
||||
mbedtls_ct_if:"0xffffffffffffffff":"0xffffffffffffffff":"0x0"
|
||||
|
||||
mbedtls_ct_if 0xffffffffffffffff 0xffffffffffffffff 0x1
|
||||
mbedtls_ct_if:"0xffffffffffffffff":"0xffffffffffffffff":"0x1"
|
||||
|
||||
mbedtls_ct_if 0xffffffffffffffff 0xffffffffffffffff 0x7fffffff
|
||||
mbedtls_ct_if:"0xffffffffffffffff":"0xffffffffffffffff":"0x7fffffff"
|
||||
|
||||
mbedtls_ct_if 0xffffffffffffffff 0xffffffffffffffff 0xffffffff
|
||||
mbedtls_ct_if:"0xffffffffffffffff":"0xffffffffffffffff":"0xffffffff"
|
||||
|
||||
mbedtls_ct_if 0xffffffffffffffff 0xffffffffffffffff 0x7fffffffffffffff
|
||||
mbedtls_ct_if:"0xffffffffffffffff":"0xffffffffffffffff":"0x7fffffffffffffff"
|
||||
|
||||
mbedtls_ct_if 0xffffffffffffffff 0xffffffffffffffff 0xffffffffffffffff
|
||||
mbedtls_ct_if:"0xffffffffffffffff":"0xffffffffffffffff":"0xffffffffffffffff"
|
||||
|
||||
mbedtls_ct_error_if 0 0 0
|
||||
mbedtls_ct_error_if:0:0:0
|
||||
|
||||
mbedtls_ct_error_if 0 0 -1
|
||||
mbedtls_ct_error_if:0:0:-1
|
||||
|
||||
mbedtls_ct_error_if 0 0 -32766
|
||||
mbedtls_ct_error_if:0:0:-32766
|
||||
|
||||
mbedtls_ct_error_if 0 0 -32767
|
||||
mbedtls_ct_error_if:0:0:-32767
|
||||
|
||||
mbedtls_ct_error_if 0 -1 0
|
||||
mbedtls_ct_error_if:0:-1:0
|
||||
|
||||
mbedtls_ct_error_if 0 -1 -1
|
||||
mbedtls_ct_error_if:0:-1:-1
|
||||
|
||||
mbedtls_ct_error_if 0 -1 -32766
|
||||
mbedtls_ct_error_if:0:-1:-32766
|
||||
|
||||
mbedtls_ct_error_if 0 -1 -32767
|
||||
mbedtls_ct_error_if:0:-1:-32767
|
||||
|
||||
mbedtls_ct_error_if 0 -32766 0
|
||||
mbedtls_ct_error_if:0:-32766:0
|
||||
|
||||
mbedtls_ct_error_if 0 -32766 -1
|
||||
mbedtls_ct_error_if:0:-32766:-1
|
||||
|
||||
mbedtls_ct_error_if 0 -32766 -32766
|
||||
mbedtls_ct_error_if:0:-32766:-32766
|
||||
|
||||
mbedtls_ct_error_if 0 -32766 -32767
|
||||
mbedtls_ct_error_if:0:-32766:-32767
|
||||
|
||||
mbedtls_ct_error_if 0 -32767 0
|
||||
mbedtls_ct_error_if:0:-32767:0
|
||||
|
||||
mbedtls_ct_error_if 0 -32767 -1
|
||||
mbedtls_ct_error_if:0:-32767:-1
|
||||
|
||||
mbedtls_ct_error_if 0 -32767 -32766
|
||||
mbedtls_ct_error_if:0:-32767:-32766
|
||||
|
||||
mbedtls_ct_error_if 0 -32767 -32767
|
||||
mbedtls_ct_error_if:0:-32767:-32767
|
||||
|
||||
mbedtls_ct_error_if 1 0 0
|
||||
mbedtls_ct_error_if:1:0:0
|
||||
|
||||
mbedtls_ct_error_if 1 0 -1
|
||||
mbedtls_ct_error_if:1:0:-1
|
||||
|
||||
mbedtls_ct_error_if 1 0 -32766
|
||||
mbedtls_ct_error_if:1:0:-32766
|
||||
|
||||
mbedtls_ct_error_if 1 0 -32767
|
||||
mbedtls_ct_error_if:1:0:-32767
|
||||
|
||||
mbedtls_ct_error_if 1 -1 0
|
||||
mbedtls_ct_error_if:1:-1:0
|
||||
|
||||
mbedtls_ct_error_if 1 -1 -1
|
||||
mbedtls_ct_error_if:1:-1:-1
|
||||
|
||||
mbedtls_ct_error_if 1 -1 -32766
|
||||
mbedtls_ct_error_if:1:-1:-32766
|
||||
|
||||
mbedtls_ct_error_if 1 -1 -32767
|
||||
mbedtls_ct_error_if:1:-1:-32767
|
||||
|
||||
mbedtls_ct_error_if 1 -32766 0
|
||||
mbedtls_ct_error_if:1:-32766:0
|
||||
|
||||
mbedtls_ct_error_if 1 -32766 -1
|
||||
mbedtls_ct_error_if:1:-32766:-1
|
||||
|
||||
mbedtls_ct_error_if 1 -32766 -32766
|
||||
mbedtls_ct_error_if:1:-32766:-32766
|
||||
|
||||
mbedtls_ct_error_if 1 -32766 -32767
|
||||
mbedtls_ct_error_if:1:-32766:-32767
|
||||
|
||||
mbedtls_ct_error_if 1 -32767 0
|
||||
mbedtls_ct_error_if:1:-32767:0
|
||||
|
||||
mbedtls_ct_error_if 1 -32767 -1
|
||||
mbedtls_ct_error_if:1:-32767:-1
|
||||
|
||||
mbedtls_ct_error_if 1 -32767 -32766
|
||||
mbedtls_ct_error_if:1:-32767:-32766
|
||||
|
||||
mbedtls_ct_error_if 1 -32767 -32767
|
||||
mbedtls_ct_error_if:1:-32767:-32767
|
||||
|
||||
mbedtls_ct_zeroize_if 0x0 0
|
||||
mbedtls_ct_zeroize_if:"0x0":0
|
||||
|
||||
mbedtls_ct_zeroize_if 0x0 1
|
||||
mbedtls_ct_zeroize_if:"0x0":1
|
||||
|
||||
mbedtls_ct_zeroize_if 0x0 1024
|
||||
mbedtls_ct_zeroize_if:"0x0":1024
|
||||
|
||||
mbedtls_ct_zeroize_if 0xffffffffffffffff 0
|
||||
mbedtls_ct_zeroize_if:"0xffffffffffffffff":0
|
||||
|
||||
mbedtls_ct_zeroize_if 0xffffffffffffffff 1
|
||||
mbedtls_ct_zeroize_if:"0xffffffffffffffff":1
|
||||
|
||||
mbedtls_ct_zeroize_if 0xffffffffffffffff 4
|
||||
mbedtls_ct_zeroize_if:"0xffffffffffffffff":4
|
||||
|
||||
mbedtls_ct_zeroize_if 0xffffffffffffffff 5
|
||||
mbedtls_ct_zeroize_if:"0xffffffffffffffff":5
|
||||
|
||||
mbedtls_ct_zeroize_if 0xffffffffffffffff 7
|
||||
mbedtls_ct_zeroize_if:"0xffffffffffffffff":7
|
||||
|
||||
mbedtls_ct_zeroize_if 0xffffffffffffffff 8
|
||||
mbedtls_ct_zeroize_if:"0xffffffffffffffff":8
|
||||
|
||||
mbedtls_ct_zeroize_if 0xffffffffffffffff 9
|
||||
mbedtls_ct_zeroize_if:"0xffffffffffffffff":9
|
||||
|
||||
mbedtls_ct_zeroize_if 0xffffffffffffffff 1024
|
||||
mbedtls_ct_zeroize_if:"0xffffffffffffffff":1024
|
||||
|
||||
mbedtls_ct_memmove_left 0 0
|
||||
mbedtls_ct_memmove_left:0:0
|
||||
|
||||
mbedtls_ct_memmove_left 1 0
|
||||
mbedtls_ct_memmove_left:1:0
|
||||
|
||||
mbedtls_ct_memmove_left 1 1
|
||||
mbedtls_ct_memmove_left:1:1
|
||||
|
||||
mbedtls_ct_memmove_left 16 0
|
||||
mbedtls_ct_memmove_left:16:0
|
||||
|
||||
mbedtls_ct_memmove_left 16 1
|
||||
mbedtls_ct_memmove_left:16:1
|
||||
|
||||
mbedtls_ct_memmove_left 16 4
|
||||
mbedtls_ct_memmove_left:16:4
|
||||
|
||||
mbedtls_ct_memmove_left 16 15
|
||||
mbedtls_ct_memmove_left:16:15
|
||||
|
||||
mbedtls_ct_memmove_left 16 16
|
||||
mbedtls_ct_memmove_left:16:16
|
||||
|
||||
mbedtls_ct_memcmp_partial -1 0 0 0
|
||||
mbedtls_ct_memcmp_partial:-1:0:0:0
|
||||
|
||||
mbedtls_ct_memcmp_partial 0 1 0 0
|
||||
mbedtls_ct_memcmp_partial:0:1:0:0
|
||||
|
||||
mbedtls_ct_memcmp_partial 0 1 1 0
|
||||
mbedtls_ct_memcmp_partial:0:1:1:0
|
||||
|
||||
mbedtls_ct_memcmp_partial 0 1 0 1
|
||||
mbedtls_ct_memcmp_partial:0:1:0:1
|
||||
|
||||
mbedtls_ct_memcmp_partial -1 1 0 0
|
||||
mbedtls_ct_memcmp_partial:-1:1:0:0
|
||||
|
||||
mbedtls_ct_memcmp_partial 0 2 0 1
|
||||
mbedtls_ct_memcmp_partial:0:2:0:1
|
||||
|
||||
mbedtls_ct_memcmp_partial 0 2 1 0
|
||||
mbedtls_ct_memcmp_partial:0:2:1:0
|
||||
|
||||
mbedtls_ct_memcmp_partial 0 16 4 4
|
||||
mbedtls_ct_memcmp_partial:0:16:4:4
|
||||
|
||||
mbedtls_ct_memcmp_partial 2 16 4 4
|
||||
mbedtls_ct_memcmp_partial:2:16:4:4
|
||||
|
||||
mbedtls_ct_memcmp_partial 3 16 4 4
|
||||
mbedtls_ct_memcmp_partial:3:16:4:4
|
||||
|
||||
mbedtls_ct_memcmp_partial 4 16 4 4
|
||||
mbedtls_ct_memcmp_partial:4:16:4:4
|
||||
|
||||
mbedtls_ct_memcmp_partial 7 16 4 4
|
||||
mbedtls_ct_memcmp_partial:7:16:4:4
|
||||
|
||||
mbedtls_ct_memcmp_partial 11 16 4 4
|
||||
mbedtls_ct_memcmp_partial:11:16:4:4
|
||||
|
||||
mbedtls_ct_memcmp_partial 12 16 4 4
|
||||
mbedtls_ct_memcmp_partial:12:16:4:4
|
||||
|
||||
mbedtls_ct_memcmp_partial 15 16 4 4
|
||||
mbedtls_ct_memcmp_partial:15:16:4:4
|
||||
|
||||
mbedtls_ct_memcmp_partial 15 16 4 0
|
||||
mbedtls_ct_memcmp_partial:15:16:4:0
|
||||
|
||||
mbedtls_ct_memcmp_partial 15 16 0 4
|
||||
mbedtls_ct_memcmp_partial:15:16:0:4
|
||||
|
||||
mbedtls_ct_memcmp_partial 0 16 0 0
|
||||
mbedtls_ct_memcmp_partial:0:16:0:0
|
||||
|
||||
mbedtls_ct_memcmp_partial 15 16 0 0
|
||||
mbedtls_ct_memcmp_partial:15:16:0:0
|
||||
|
||||
mbedtls_ct_memcmp_partial -1 16 0 0
|
||||
mbedtls_ct_memcmp_partial:-1:16:0:0
|
||||
|
||||
mbedtls_ct_memcmp_partial -1 16 12 4
|
||||
mbedtls_ct_memcmp_partial:-1:16:12:4
|
||||
|
||||
mbedtls_ct_memcmp_partial -1 16 8 8
|
||||
mbedtls_ct_memcmp_partial:-1:16:8:8
|
||||
499
vendor/mbedtls/tests/suites/test_suite_constant_time.function
vendored
Normal file
499
vendor/mbedtls/tests/suites/test_suite_constant_time.function
vendored
Normal file
@@ -0,0 +1,499 @@
|
||||
/* BEGIN_HEADER */
|
||||
/** \file test_suite_constant_time.function
|
||||
*
|
||||
* Functional testing of functions in the constant_time module.
|
||||
*
|
||||
* The tests are instrumented with #TEST_CF_SECRET and #TEST_CF_PUBLIC
|
||||
* (see framework/tests/include/test/constant_flow.h) so that running the tests
|
||||
* under MSan or Valgrind will detect a non-constant-time implementation.
|
||||
*/
|
||||
|
||||
#include <stdio.h>
|
||||
|
||||
#include <limits.h>
|
||||
#include <stdlib.h>
|
||||
#include <errno.h>
|
||||
|
||||
#include <mbedtls/bignum.h>
|
||||
#include <mbedtls/constant_time.h>
|
||||
#include <constant_time_internal.h>
|
||||
|
||||
#include <test/constant_flow.h>
|
||||
/* END_HEADER */
|
||||
|
||||
/* BEGIN_CASE */
|
||||
void mbedtls_ct_memcmp_null()
|
||||
{
|
||||
uint32_t x = 0;
|
||||
TEST_ASSERT(mbedtls_ct_memcmp(&x, NULL, 0) == 0);
|
||||
TEST_ASSERT(mbedtls_ct_memcmp(NULL, &x, 0) == 0);
|
||||
TEST_ASSERT(mbedtls_ct_memcmp(NULL, NULL, 0) == 0);
|
||||
}
|
||||
/* END_CASE */
|
||||
|
||||
/* BEGIN_CASE */
|
||||
void mbedtls_ct_bool(char *input)
|
||||
{
|
||||
mbedtls_ct_uint_t v = (mbedtls_ct_uint_t) strtoull(input, NULL, 16);
|
||||
TEST_ASSERT(errno == 0);
|
||||
|
||||
mbedtls_ct_condition_t expected = (v != 0) ? MBEDTLS_CT_TRUE : MBEDTLS_CT_FALSE;
|
||||
TEST_CF_SECRET(&v, sizeof(v));
|
||||
TEST_EQUAL(mbedtls_ct_bool(v), expected);
|
||||
TEST_CF_PUBLIC(&v, sizeof(v));
|
||||
}
|
||||
/* END_CASE */
|
||||
|
||||
/* BEGIN_CASE */
|
||||
void mbedtls_ct_bool_xxx(char *x_str, char *y_str)
|
||||
{
|
||||
mbedtls_ct_uint_t x = strtoull(x_str, NULL, 0);
|
||||
mbedtls_ct_uint_t y = strtoull(y_str, NULL, 0);
|
||||
|
||||
mbedtls_ct_uint_t x1 = x;
|
||||
mbedtls_ct_uint_t y1 = y;
|
||||
|
||||
TEST_CF_SECRET(&x, sizeof(x));
|
||||
TEST_CF_SECRET(&y, sizeof(y));
|
||||
|
||||
mbedtls_ct_condition_t expected = x1 ? MBEDTLS_CT_FALSE : MBEDTLS_CT_TRUE;
|
||||
TEST_EQUAL(mbedtls_ct_bool_not(mbedtls_ct_bool(x)), expected);
|
||||
|
||||
expected = x1 != y1 ? MBEDTLS_CT_TRUE : MBEDTLS_CT_FALSE;
|
||||
TEST_EQUAL(mbedtls_ct_uint_ne(x, y), expected);
|
||||
|
||||
expected = x1 == y1 ? MBEDTLS_CT_TRUE : MBEDTLS_CT_FALSE;
|
||||
TEST_EQUAL(mbedtls_ct_uint_eq(x, y), expected);
|
||||
|
||||
expected = x1 > y1 ? MBEDTLS_CT_TRUE : MBEDTLS_CT_FALSE;
|
||||
TEST_EQUAL(mbedtls_ct_uint_gt(x, y), expected);
|
||||
|
||||
expected = x1 < y1 ? MBEDTLS_CT_TRUE : MBEDTLS_CT_FALSE;
|
||||
TEST_EQUAL(mbedtls_ct_uint_lt(x, y), expected);
|
||||
|
||||
expected = x1 >= y1 ? MBEDTLS_CT_TRUE : MBEDTLS_CT_FALSE;
|
||||
TEST_EQUAL(mbedtls_ct_uint_ge(x, y), expected);
|
||||
|
||||
expected = x1 <= y1 ? MBEDTLS_CT_TRUE : MBEDTLS_CT_FALSE;
|
||||
TEST_EQUAL(mbedtls_ct_uint_le(x, y), expected);
|
||||
|
||||
expected = (!!x1) != (!!y1) ? MBEDTLS_CT_TRUE : MBEDTLS_CT_FALSE;
|
||||
TEST_EQUAL(mbedtls_ct_bool_ne(mbedtls_ct_bool(x), mbedtls_ct_bool(y)), expected);
|
||||
|
||||
expected = (!!x1) && (!!y1) ? MBEDTLS_CT_TRUE : MBEDTLS_CT_FALSE;
|
||||
TEST_EQUAL(mbedtls_ct_bool_and(mbedtls_ct_bool(x), mbedtls_ct_bool(y)), expected);
|
||||
|
||||
expected = (!!x1) || (!!y1) ? MBEDTLS_CT_TRUE : MBEDTLS_CT_FALSE;
|
||||
TEST_EQUAL(mbedtls_ct_bool_or(mbedtls_ct_bool(x), mbedtls_ct_bool(y)), expected);
|
||||
|
||||
TEST_CF_PUBLIC(&x, sizeof(x));
|
||||
TEST_CF_PUBLIC(&y, sizeof(y));
|
||||
}
|
||||
/* END_CASE */
|
||||
|
||||
/* BEGIN_CASE depends_on:MBEDTLS_BASE64_C */
|
||||
void mbedtls_ct_uchar_in_range_if(int li, int hi, int ti)
|
||||
{
|
||||
unsigned char l = li, h = hi, t = ti;
|
||||
|
||||
for (unsigned x = 0; x <= 255; x++) {
|
||||
unsigned char expected = (x >= l) && (x <= h) ? t : 0;
|
||||
|
||||
TEST_CF_SECRET(&x, sizeof(x));
|
||||
TEST_CF_SECRET(&l, sizeof(l));
|
||||
TEST_CF_SECRET(&h, sizeof(h));
|
||||
TEST_CF_SECRET(&t, sizeof(t));
|
||||
|
||||
TEST_EQUAL(mbedtls_ct_uchar_in_range_if(l, h, (unsigned char) x, t), expected);
|
||||
|
||||
TEST_CF_PUBLIC(&x, sizeof(x));
|
||||
TEST_CF_PUBLIC(&l, sizeof(l));
|
||||
TEST_CF_PUBLIC(&h, sizeof(h));
|
||||
TEST_CF_PUBLIC(&t, sizeof(t));
|
||||
}
|
||||
}
|
||||
/* END_CASE */
|
||||
|
||||
/* BEGIN_CASE */
|
||||
void mbedtls_ct_error_if(int cond, int t, int f)
|
||||
{
|
||||
mbedtls_ct_condition_t c = mbedtls_ct_bool(cond);
|
||||
|
||||
int expected = c ? t : f;
|
||||
int expected0 = c ? t : 0;
|
||||
|
||||
TEST_CF_SECRET(&c, sizeof(c));
|
||||
TEST_CF_SECRET(&t, sizeof(t));
|
||||
TEST_CF_SECRET(&f, sizeof(f));
|
||||
|
||||
TEST_EQUAL(mbedtls_ct_error_if(c, t, f), expected);
|
||||
TEST_EQUAL(mbedtls_ct_error_if_else_0(c, t), expected0);
|
||||
|
||||
TEST_CF_PUBLIC(&c, sizeof(c));
|
||||
TEST_CF_PUBLIC(&t, sizeof(t));
|
||||
TEST_CF_PUBLIC(&f, sizeof(f));
|
||||
}
|
||||
/* END_CASE */
|
||||
|
||||
/* BEGIN_CASE */
|
||||
void mbedtls_ct_if(char *c_str, char *t_str, char *f_str)
|
||||
{
|
||||
mbedtls_ct_condition_t c = mbedtls_ct_bool(strtoull(c_str, NULL, 16));
|
||||
mbedtls_ct_uint_t t = (mbedtls_ct_uint_t) strtoull(t_str, NULL, 16);
|
||||
mbedtls_ct_uint_t f = (mbedtls_ct_uint_t) strtoull(f_str, NULL, 16);
|
||||
|
||||
mbedtls_ct_uint_t expected = c ? t : f;
|
||||
mbedtls_ct_uint_t expected0 = c ? t : 0;
|
||||
|
||||
TEST_CF_SECRET(&c, sizeof(c));
|
||||
TEST_CF_SECRET(&t, sizeof(t));
|
||||
TEST_CF_SECRET(&f, sizeof(f));
|
||||
|
||||
TEST_EQUAL(mbedtls_ct_if(c, t, f), expected);
|
||||
TEST_EQUAL(mbedtls_ct_size_if(c, t, f), (size_t) expected);
|
||||
TEST_EQUAL(mbedtls_ct_uint_if(c, t, f), (unsigned) expected);
|
||||
TEST_EQUAL(mbedtls_ct_bool_if(c, mbedtls_ct_bool(t), mbedtls_ct_bool(f)),
|
||||
mbedtls_ct_bool(expected));
|
||||
#if defined(MBEDTLS_BIGNUM_C)
|
||||
TEST_EQUAL(mbedtls_ct_mpi_uint_if(c, t, f), (mbedtls_mpi_uint) expected);
|
||||
#endif
|
||||
|
||||
TEST_EQUAL(mbedtls_ct_uint_if_else_0(c, t), (unsigned) expected0);
|
||||
TEST_EQUAL(mbedtls_ct_size_if_else_0(c, (size_t) t), (size_t) expected0);
|
||||
TEST_EQUAL(mbedtls_ct_bool_if_else_0(c, mbedtls_ct_bool(t)), mbedtls_ct_bool(expected0));
|
||||
#if defined(MBEDTLS_BIGNUM_C)
|
||||
TEST_EQUAL(mbedtls_ct_mpi_uint_if_else_0(c, t), (mbedtls_mpi_uint) expected0);
|
||||
#endif
|
||||
|
||||
TEST_CF_PUBLIC(&c, sizeof(c));
|
||||
TEST_CF_PUBLIC(&t, sizeof(t));
|
||||
TEST_CF_PUBLIC(&f, sizeof(f));
|
||||
}
|
||||
/* END_CASE */
|
||||
|
||||
/* BEGIN_CASE depends_on:MBEDTLS_PKCS1_V15:MBEDTLS_RSA_C:!MBEDTLS_RSA_ALT */
|
||||
void mbedtls_ct_zeroize_if(char *c_str, int len)
|
||||
{
|
||||
uint8_t *buf = NULL;
|
||||
mbedtls_ct_condition_t c = mbedtls_ct_bool(strtoull(c_str, NULL, 16));
|
||||
|
||||
TEST_CALLOC(buf, len);
|
||||
for (size_t i = 0; i < (size_t) len; i++) {
|
||||
buf[i] = 1;
|
||||
}
|
||||
|
||||
TEST_CF_SECRET(&c, sizeof(c));
|
||||
TEST_CF_SECRET(buf, len);
|
||||
mbedtls_ct_zeroize_if(c, buf, len);
|
||||
TEST_CF_PUBLIC(&c, sizeof(c));
|
||||
TEST_CF_PUBLIC(buf, len);
|
||||
|
||||
for (size_t i = 0; i < (size_t) len; i++) {
|
||||
TEST_EQUAL(buf[i], c != 0 ? 0 : 1);
|
||||
}
|
||||
exit:
|
||||
mbedtls_free(buf);
|
||||
}
|
||||
/* END_CASE */
|
||||
|
||||
/* BEGIN_CASE */
|
||||
void mbedtls_ct_memcmp_single_bit_diff()
|
||||
{
|
||||
uint8_t *a = NULL, *b = NULL;
|
||||
size_t size = 32;
|
||||
TEST_CALLOC(a, size);
|
||||
TEST_CALLOC(b, size);
|
||||
|
||||
TEST_CF_SECRET(a, size);
|
||||
TEST_CF_SECRET(b, size);
|
||||
int result = mbedtls_ct_memcmp(a, b, size);
|
||||
TEST_CF_PUBLIC(a, size);
|
||||
TEST_CF_PUBLIC(b, size);
|
||||
TEST_CF_PUBLIC(&result, sizeof(result));
|
||||
|
||||
TEST_EQUAL(result, 0);
|
||||
|
||||
for (size_t offset = 0; offset < size; offset++) {
|
||||
for (size_t bit_offset = 0; bit_offset < 8; bit_offset++) {
|
||||
/* Set a single bit to be different at given offset, to test that we
|
||||
detect single-bit differences */
|
||||
a[offset] = 1 << bit_offset;
|
||||
|
||||
TEST_CF_SECRET(a, size);
|
||||
TEST_CF_SECRET(b, size);
|
||||
result = mbedtls_ct_memcmp(a, b, size);
|
||||
TEST_CF_PUBLIC(a, size);
|
||||
TEST_CF_PUBLIC(b, size);
|
||||
TEST_CF_PUBLIC(&result, sizeof(result));
|
||||
|
||||
TEST_ASSERT(result != 0);
|
||||
|
||||
a[offset] = 0;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
exit:
|
||||
mbedtls_free(a);
|
||||
mbedtls_free(b);
|
||||
}
|
||||
/* END_CASE */
|
||||
|
||||
/* BEGIN_CASE */
|
||||
void mbedtls_ct_memcmp(int same, int size, int offset)
|
||||
{
|
||||
uint8_t *a = NULL, *b = NULL;
|
||||
TEST_CALLOC(a, size + offset);
|
||||
TEST_CALLOC(b, size + offset);
|
||||
|
||||
/* Construct data that matches, if same == -1, otherwise
|
||||
* same gives the number of bytes (after the initial offset)
|
||||
* that will match; after that it will differ.
|
||||
*/
|
||||
for (int i = 0; i < size + offset; i++) {
|
||||
a[i] = i & 0xff;
|
||||
if (same == -1 || (i - offset) < same) {
|
||||
b[i] = a[i];
|
||||
} else {
|
||||
b[i] = (i + 1) & 0xff;
|
||||
}
|
||||
}
|
||||
|
||||
int reference = memcmp(a + offset, b + offset, size);
|
||||
|
||||
TEST_CF_SECRET(a, size + offset);
|
||||
TEST_CF_SECRET(b, size + offset);
|
||||
|
||||
int actual = mbedtls_ct_memcmp(a + offset, b + offset, size);
|
||||
|
||||
TEST_CF_PUBLIC(a, size + offset);
|
||||
TEST_CF_PUBLIC(b, size + offset);
|
||||
TEST_CF_PUBLIC(&actual, sizeof(actual));
|
||||
|
||||
if (same == -1 || same >= size) {
|
||||
TEST_ASSERT(reference == 0);
|
||||
TEST_ASSERT(actual == 0);
|
||||
} else {
|
||||
TEST_ASSERT(reference != 0);
|
||||
TEST_ASSERT(actual != 0);
|
||||
}
|
||||
exit:
|
||||
mbedtls_free(a);
|
||||
mbedtls_free(b);
|
||||
}
|
||||
/* END_CASE */
|
||||
|
||||
/* BEGIN_CASE depends_on:MBEDTLS_NIST_KW_C */
|
||||
|
||||
/**
|
||||
* Generate two arrays of the given size, and test mbedtls_ct_memcmp_partial
|
||||
* over them. The arrays will be identical, except that one byte may be specified
|
||||
* to be different.
|
||||
*
|
||||
* \p diff Index of byte that differs (if out of range, the arrays will match).
|
||||
* \p size Size of arrays to compare
|
||||
* \p skip_head Leading bytes to skip, as per mbedtls_ct_memcmp_partial
|
||||
* \p skip_tail Trailing bytes to skip, as per mbedtls_ct_memcmp_partial
|
||||
*/
|
||||
void mbedtls_ct_memcmp_partial(int diff, int size, int skip_head, int skip_tail)
|
||||
{
|
||||
uint8_t *a = NULL, *b = NULL;
|
||||
|
||||
TEST_CALLOC_NONNULL(a, size);
|
||||
TEST_CALLOC_NONNULL(b, size);
|
||||
|
||||
TEST_ASSERT((skip_head + skip_tail) <= size);
|
||||
|
||||
/* Construct data that matches, except for specified byte (if in range). */
|
||||
for (int i = 0; i < size; i++) {
|
||||
a[i] = i & 0xff;
|
||||
b[i] = a[i];
|
||||
if (i == diff) {
|
||||
// modify the specified byte
|
||||
b[i] ^= 1;
|
||||
}
|
||||
}
|
||||
|
||||
int reference = memcmp(a + skip_head, b + skip_head, size - skip_head - skip_tail);
|
||||
|
||||
TEST_CF_SECRET(a, size);
|
||||
TEST_CF_SECRET(b, size);
|
||||
|
||||
int actual = mbedtls_ct_memcmp_partial(a, b, size, skip_head, skip_tail);
|
||||
|
||||
TEST_CF_PUBLIC(a, size);
|
||||
TEST_CF_PUBLIC(b, size);
|
||||
TEST_CF_PUBLIC(&actual, sizeof(actual));
|
||||
|
||||
TEST_EQUAL(!!reference, !!actual);
|
||||
exit:
|
||||
mbedtls_free(a);
|
||||
mbedtls_free(b);
|
||||
}
|
||||
/* END_CASE */
|
||||
|
||||
/* BEGIN_CASE */
|
||||
void mbedtls_ct_memcpy_if(int eq, int size, int offset)
|
||||
{
|
||||
uint8_t *src = NULL, *src2 = NULL, *result = NULL, *expected = NULL;
|
||||
TEST_CALLOC(src, size + offset);
|
||||
TEST_CALLOC(src2, size + offset);
|
||||
TEST_CALLOC(result, size + offset);
|
||||
TEST_CALLOC(expected, size + offset);
|
||||
|
||||
/* Apply offset to result only */
|
||||
for (int i = 0; i < size + offset; i++) {
|
||||
src[i] = 1;
|
||||
result[i] = 0xff;
|
||||
expected[i] = eq ? 1 : 0xff;
|
||||
}
|
||||
|
||||
int secret_eq = eq;
|
||||
TEST_CF_SECRET(&secret_eq, sizeof(secret_eq));
|
||||
TEST_CF_SECRET(src, size + offset);
|
||||
TEST_CF_SECRET(result, size + offset);
|
||||
|
||||
mbedtls_ct_memcpy_if(mbedtls_ct_bool(secret_eq), result + offset, src, NULL, size);
|
||||
|
||||
TEST_CF_PUBLIC(&secret_eq, sizeof(secret_eq));
|
||||
TEST_CF_PUBLIC(src, size + offset);
|
||||
TEST_CF_PUBLIC(result, size + offset);
|
||||
|
||||
TEST_MEMORY_COMPARE(expected, size, result + offset, size);
|
||||
|
||||
|
||||
/* Apply offset to src only */
|
||||
for (int i = 0; i < size + offset; i++) {
|
||||
src[i] = 1;
|
||||
result[i] = 0xff;
|
||||
expected[i] = eq ? 1 : 0xff;
|
||||
}
|
||||
|
||||
TEST_CF_SECRET(&secret_eq, sizeof(secret_eq));
|
||||
TEST_CF_SECRET(src, size + offset);
|
||||
TEST_CF_SECRET(result, size + offset);
|
||||
|
||||
mbedtls_ct_memcpy_if(mbedtls_ct_bool(secret_eq), result, src + offset, NULL, size);
|
||||
|
||||
TEST_CF_PUBLIC(&secret_eq, sizeof(secret_eq));
|
||||
TEST_CF_PUBLIC(src, size + offset);
|
||||
TEST_CF_PUBLIC(result, size + offset);
|
||||
|
||||
TEST_MEMORY_COMPARE(expected, size, result, size);
|
||||
|
||||
|
||||
/* Apply offset to src and src2 */
|
||||
for (int i = 0; i < size + offset; i++) {
|
||||
src[i] = 1;
|
||||
src2[i] = 2;
|
||||
result[i] = 0xff;
|
||||
expected[i] = eq ? 1 : 2;
|
||||
}
|
||||
|
||||
TEST_CF_SECRET(&secret_eq, sizeof(secret_eq));
|
||||
TEST_CF_SECRET(src, size + offset);
|
||||
TEST_CF_SECRET(src2, size + offset);
|
||||
TEST_CF_SECRET(result, size + offset);
|
||||
|
||||
mbedtls_ct_memcpy_if(mbedtls_ct_bool(secret_eq), result, src + offset, src2 + offset, size);
|
||||
|
||||
TEST_CF_PUBLIC(&secret_eq, sizeof(secret_eq));
|
||||
TEST_CF_PUBLIC(src, size + offset);
|
||||
TEST_CF_SECRET(src2, size + offset);
|
||||
TEST_CF_PUBLIC(result, size + offset);
|
||||
|
||||
TEST_MEMORY_COMPARE(expected, size, result, size);
|
||||
|
||||
|
||||
/* result == src == dest */
|
||||
for (int i = 0; i < size + offset; i++) {
|
||||
src[i] = 2;
|
||||
expected[i] = 2;
|
||||
}
|
||||
|
||||
TEST_CF_SECRET(&secret_eq, sizeof(secret_eq));
|
||||
TEST_CF_SECRET(src, size + offset);
|
||||
TEST_CF_SECRET(result, size + offset);
|
||||
|
||||
mbedtls_ct_memcpy_if(mbedtls_ct_bool(secret_eq), src + offset, src + offset, src + offset,
|
||||
size);
|
||||
|
||||
TEST_CF_PUBLIC(&secret_eq, sizeof(secret_eq));
|
||||
TEST_CF_PUBLIC(src, size + offset);
|
||||
TEST_CF_PUBLIC(result, size + offset);
|
||||
|
||||
TEST_MEMORY_COMPARE(expected, size, src + offset, size);
|
||||
exit:
|
||||
mbedtls_free(src);
|
||||
mbedtls_free(src2);
|
||||
mbedtls_free(result);
|
||||
mbedtls_free(expected);
|
||||
}
|
||||
/* END_CASE */
|
||||
|
||||
/* BEGIN_CASE depends_on:MBEDTLS_PKCS1_V15:MBEDTLS_RSA_C:!MBEDTLS_RSA_ALT */
|
||||
void mbedtls_ct_memmove_left(int len, int offset)
|
||||
{
|
||||
size_t l = (size_t) len;
|
||||
size_t o = (size_t) offset;
|
||||
|
||||
uint8_t *buf = NULL, *buf_expected = NULL;
|
||||
TEST_CALLOC(buf, l);
|
||||
TEST_CALLOC(buf_expected, l);
|
||||
|
||||
for (size_t i = 0; i < l; i++) {
|
||||
buf[i] = (uint8_t) i;
|
||||
buf_expected[i] = buf[i];
|
||||
}
|
||||
|
||||
TEST_CF_SECRET(&o, sizeof(o));
|
||||
TEST_CF_SECRET(buf, l);
|
||||
mbedtls_ct_memmove_left(buf, l, o);
|
||||
TEST_CF_PUBLIC(&o, sizeof(o));
|
||||
TEST_CF_PUBLIC(buf, l);
|
||||
|
||||
if (l > 0) {
|
||||
memmove(buf_expected, buf_expected + o, l - o);
|
||||
memset(buf_expected + (l - o), 0, o);
|
||||
TEST_ASSERT(memcmp(buf, buf_expected, l) == 0);
|
||||
}
|
||||
exit:
|
||||
mbedtls_free(buf);
|
||||
mbedtls_free(buf_expected);
|
||||
}
|
||||
/* END_CASE */
|
||||
|
||||
/* BEGIN_CASE */
|
||||
void mbedtls_ct_memcpy_offset(int offset_min, int offset_max, int len)
|
||||
{
|
||||
unsigned char *dst = NULL;
|
||||
unsigned char *src = NULL;
|
||||
size_t src_len = offset_max + len;
|
||||
size_t secret;
|
||||
|
||||
TEST_CALLOC(dst, len);
|
||||
TEST_CALLOC(src, src_len);
|
||||
|
||||
/* Fill src in a way that we can detect if we copied the right bytes */
|
||||
mbedtls_test_rnd_std_rand(NULL, src, src_len);
|
||||
|
||||
for (secret = offset_min; secret <= (size_t) offset_max; secret++) {
|
||||
mbedtls_test_set_step((int) secret);
|
||||
|
||||
TEST_CF_SECRET(&secret, sizeof(secret));
|
||||
TEST_CF_SECRET(src, len);
|
||||
TEST_CF_SECRET(dst, len);
|
||||
mbedtls_ct_memcpy_offset(dst, src, secret,
|
||||
offset_min, offset_max, len);
|
||||
TEST_CF_PUBLIC(&secret, sizeof(secret));
|
||||
TEST_CF_PUBLIC(src, len);
|
||||
TEST_CF_PUBLIC(dst, len);
|
||||
|
||||
TEST_MEMORY_COMPARE(dst, len, src + secret, len);
|
||||
}
|
||||
|
||||
exit:
|
||||
mbedtls_free(dst);
|
||||
mbedtls_free(src);
|
||||
}
|
||||
/* END_CASE */
|
||||
15
vendor/mbedtls/tests/suites/test_suite_constant_time_hmac.data
vendored
Normal file
15
vendor/mbedtls/tests/suites/test_suite_constant_time_hmac.data
vendored
Normal file
@@ -0,0 +1,15 @@
|
||||
Constant-flow HMAC: MD5
|
||||
depends_on:MBEDTLS_MD_CAN_MD5
|
||||
ssl_cf_hmac:MBEDTLS_MD_MD5
|
||||
|
||||
Constant-flow HMAC: SHA1
|
||||
depends_on:MBEDTLS_MD_CAN_SHA1
|
||||
ssl_cf_hmac:MBEDTLS_MD_SHA1
|
||||
|
||||
Constant-flow HMAC: SHA256
|
||||
depends_on:MBEDTLS_MD_CAN_SHA256
|
||||
ssl_cf_hmac:MBEDTLS_MD_SHA256
|
||||
|
||||
Constant-flow HMAC: SHA384
|
||||
depends_on:MBEDTLS_MD_CAN_SHA384
|
||||
ssl_cf_hmac:MBEDTLS_MD_SHA384
|
||||
159
vendor/mbedtls/tests/suites/test_suite_constant_time_hmac.function
vendored
Normal file
159
vendor/mbedtls/tests/suites/test_suite_constant_time_hmac.function
vendored
Normal file
@@ -0,0 +1,159 @@
|
||||
/* BEGIN_HEADER */
|
||||
|
||||
#include <mbedtls/constant_time.h>
|
||||
#include <mbedtls/md.h>
|
||||
#include <constant_time_internal.h>
|
||||
#include "mbedtls/psa_util.h"
|
||||
#include <ssl_misc.h>
|
||||
|
||||
#include <test/constant_flow.h>
|
||||
/* END_HEADER */
|
||||
|
||||
/* BEGIN_CASE depends_on:MBEDTLS_SSL_SOME_SUITES_USE_MAC:MBEDTLS_SSL_SOME_SUITES_USE_TLS_CBC:MBEDTLS_TEST_HOOKS */
|
||||
void ssl_cf_hmac(int hash)
|
||||
{
|
||||
/*
|
||||
* Test the function mbedtls_ct_hmac() against a reference
|
||||
* implementation.
|
||||
*/
|
||||
#if defined(MBEDTLS_USE_PSA_CRYPTO)
|
||||
mbedtls_svc_key_id_t key = MBEDTLS_SVC_KEY_ID_INIT;
|
||||
psa_key_attributes_t attributes = PSA_KEY_ATTRIBUTES_INIT;
|
||||
psa_algorithm_t alg;
|
||||
psa_mac_operation_t operation = PSA_MAC_OPERATION_INIT;
|
||||
#else
|
||||
mbedtls_md_context_t ctx, ref_ctx;
|
||||
const mbedtls_md_info_t *md_info;
|
||||
#endif /* MBEDTLS_USE_PSA_CRYPTO */
|
||||
size_t out_len, block_size;
|
||||
size_t min_in_len, in_len, max_in_len, i;
|
||||
/* TLS additional data is 13 bytes (hence the "lucky 13" name) */
|
||||
unsigned char add_data[13];
|
||||
unsigned char ref_out[MBEDTLS_MD_MAX_SIZE];
|
||||
unsigned char *data = NULL;
|
||||
unsigned char *out = NULL;
|
||||
unsigned char rec_num = 0;
|
||||
|
||||
USE_PSA_INIT();
|
||||
|
||||
#if defined(MBEDTLS_USE_PSA_CRYPTO)
|
||||
alg = PSA_ALG_HMAC(mbedtls_md_psa_alg_from_type(hash));
|
||||
|
||||
out_len = PSA_HASH_LENGTH(alg);
|
||||
block_size = PSA_HASH_BLOCK_LENGTH(alg);
|
||||
|
||||
/* mbedtls_ct_hmac() requires the key to be exportable */
|
||||
psa_set_key_usage_flags(&attributes, PSA_KEY_USAGE_EXPORT |
|
||||
PSA_KEY_USAGE_VERIFY_HASH);
|
||||
psa_set_key_algorithm(&attributes, PSA_ALG_HMAC(alg));
|
||||
psa_set_key_type(&attributes, PSA_KEY_TYPE_HMAC);
|
||||
#else
|
||||
mbedtls_md_init(&ctx);
|
||||
mbedtls_md_init(&ref_ctx);
|
||||
|
||||
md_info = mbedtls_md_info_from_type(hash);
|
||||
TEST_ASSERT(md_info != NULL);
|
||||
out_len = mbedtls_md_get_size(md_info);
|
||||
TEST_ASSERT(out_len != 0);
|
||||
block_size = hash == MBEDTLS_MD_SHA384 ? 128 : 64;
|
||||
#endif /* MBEDTLS_USE_PSA_CRYPTO */
|
||||
|
||||
/* Use allocated out buffer to catch overwrites */
|
||||
TEST_CALLOC(out, out_len);
|
||||
|
||||
#if defined(MBEDTLS_USE_PSA_CRYPTO)
|
||||
/* Set up dummy key */
|
||||
memset(ref_out, 42, sizeof(ref_out));
|
||||
TEST_EQUAL(PSA_SUCCESS, psa_import_key(&attributes,
|
||||
ref_out, out_len,
|
||||
&key));
|
||||
#else
|
||||
/* Set up contexts with the given hash and a dummy key */
|
||||
TEST_EQUAL(0, mbedtls_md_setup(&ctx, md_info, 1));
|
||||
TEST_EQUAL(0, mbedtls_md_setup(&ref_ctx, md_info, 1));
|
||||
memset(ref_out, 42, sizeof(ref_out));
|
||||
TEST_EQUAL(0, mbedtls_md_hmac_starts(&ctx, ref_out, out_len));
|
||||
TEST_EQUAL(0, mbedtls_md_hmac_starts(&ref_ctx, ref_out, out_len));
|
||||
memset(ref_out, 0, sizeof(ref_out));
|
||||
#endif
|
||||
|
||||
/*
|
||||
* Test all possible lengths up to a point. The difference between
|
||||
* max_in_len and min_in_len is at most 255, and make sure they both vary
|
||||
* by at least one block size.
|
||||
*/
|
||||
for (max_in_len = 0; max_in_len <= 255 + block_size; max_in_len++) {
|
||||
mbedtls_test_set_step(max_in_len * 10000);
|
||||
|
||||
/* Use allocated in buffer to catch overreads */
|
||||
TEST_CALLOC(data, max_in_len);
|
||||
|
||||
min_in_len = max_in_len > 255 ? max_in_len - 255 : 0;
|
||||
for (in_len = min_in_len; in_len <= max_in_len; in_len++) {
|
||||
mbedtls_test_set_step(max_in_len * 10000 + in_len);
|
||||
|
||||
/* Set up dummy data and add_data */
|
||||
rec_num++;
|
||||
memset(add_data, rec_num, sizeof(add_data));
|
||||
for (i = 0; i < in_len; i++) {
|
||||
data[i] = (i & 0xff) ^ rec_num;
|
||||
}
|
||||
|
||||
/* Get the function's result */
|
||||
TEST_CF_SECRET(&in_len, sizeof(in_len));
|
||||
#if defined(MBEDTLS_USE_PSA_CRYPTO)
|
||||
TEST_EQUAL(0, mbedtls_ct_hmac(key, PSA_ALG_HMAC(alg),
|
||||
add_data, sizeof(add_data),
|
||||
data, in_len,
|
||||
min_in_len, max_in_len,
|
||||
out));
|
||||
#else
|
||||
TEST_EQUAL(0, mbedtls_ct_hmac(&ctx, add_data, sizeof(add_data),
|
||||
data, in_len,
|
||||
min_in_len, max_in_len,
|
||||
out));
|
||||
#endif /* MBEDTLS_USE_PSA_CRYPTO */
|
||||
TEST_CF_PUBLIC(&in_len, sizeof(in_len));
|
||||
TEST_CF_PUBLIC(out, out_len);
|
||||
|
||||
#if defined(MBEDTLS_USE_PSA_CRYPTO)
|
||||
TEST_EQUAL(PSA_SUCCESS, psa_mac_verify_setup(&operation,
|
||||
key, alg));
|
||||
TEST_EQUAL(PSA_SUCCESS, psa_mac_update(&operation, add_data,
|
||||
sizeof(add_data)));
|
||||
TEST_EQUAL(PSA_SUCCESS, psa_mac_update(&operation,
|
||||
data, in_len));
|
||||
TEST_EQUAL(PSA_SUCCESS, psa_mac_verify_finish(&operation,
|
||||
out, out_len));
|
||||
#else
|
||||
/* Compute the reference result */
|
||||
TEST_EQUAL(0, mbedtls_md_hmac_update(&ref_ctx, add_data,
|
||||
sizeof(add_data)));
|
||||
TEST_EQUAL(0, mbedtls_md_hmac_update(&ref_ctx, data, in_len));
|
||||
TEST_EQUAL(0, mbedtls_md_hmac_finish(&ref_ctx, ref_out));
|
||||
TEST_EQUAL(0, mbedtls_md_hmac_reset(&ref_ctx));
|
||||
|
||||
/* Compare */
|
||||
TEST_MEMORY_COMPARE(out, out_len, ref_out, out_len);
|
||||
#endif /* MBEDTLS_USE_PSA_CRYPTO */
|
||||
}
|
||||
|
||||
mbedtls_free(data);
|
||||
data = NULL;
|
||||
}
|
||||
|
||||
exit:
|
||||
#if defined(MBEDTLS_USE_PSA_CRYPTO)
|
||||
psa_mac_abort(&operation);
|
||||
psa_destroy_key(key);
|
||||
#else
|
||||
mbedtls_md_free(&ref_ctx);
|
||||
mbedtls_md_free(&ctx);
|
||||
#endif /* MBEDTLS_USE_PSA_CRYPTO */
|
||||
|
||||
mbedtls_free(data);
|
||||
mbedtls_free(out);
|
||||
|
||||
USE_PSA_DONE();
|
||||
}
|
||||
/* END_CASE */
|
||||
1152
vendor/mbedtls/tests/suites/test_suite_ctr_drbg.data
vendored
Normal file
1152
vendor/mbedtls/tests/suites/test_suite_ctr_drbg.data
vendored
Normal file
File diff suppressed because it is too large
Load Diff
524
vendor/mbedtls/tests/suites/test_suite_ctr_drbg.function
vendored
Normal file
524
vendor/mbedtls/tests/suites/test_suite_ctr_drbg.function
vendored
Normal file
@@ -0,0 +1,524 @@
|
||||
/* BEGIN_HEADER */
|
||||
#include "mbedtls/entropy.h"
|
||||
#include "mbedtls/ctr_drbg.h"
|
||||
#include "string.h"
|
||||
#include "ctr.h"
|
||||
|
||||
#if defined(MBEDTLS_THREADING_PTHREAD)
|
||||
#include "mbedtls/threading.h"
|
||||
#endif
|
||||
|
||||
/* Modes for ctr_drbg_validate */
|
||||
enum reseed_mode {
|
||||
RESEED_NEVER, /* never reseed */
|
||||
RESEED_FIRST, /* instantiate, reseed, generate, generate */
|
||||
RESEED_SECOND, /* instantiate, generate, reseed, generate */
|
||||
RESEED_ALWAYS /* prediction resistance, no explicit reseed */
|
||||
};
|
||||
|
||||
static size_t test_offset_idx = 0;
|
||||
static size_t test_max_idx = 0;
|
||||
static int mbedtls_test_entropy_func(void *data, unsigned char *buf, size_t len)
|
||||
{
|
||||
const unsigned char *p = (unsigned char *) data;
|
||||
if (test_offset_idx + len > test_max_idx) {
|
||||
return MBEDTLS_ERR_ENTROPY_SOURCE_FAILED;
|
||||
}
|
||||
memcpy(buf, p + test_offset_idx, len);
|
||||
test_offset_idx += len;
|
||||
return 0;
|
||||
}
|
||||
|
||||
static void ctr_drbg_validate_internal(int reseed_mode, data_t *nonce,
|
||||
int entropy_len_arg, data_t *entropy,
|
||||
data_t *reseed,
|
||||
data_t *add1, data_t *add2,
|
||||
data_t *result)
|
||||
{
|
||||
mbedtls_ctr_drbg_context ctx;
|
||||
mbedtls_ctr_drbg_init(&ctx);
|
||||
unsigned char buf[64];
|
||||
|
||||
size_t entropy_chunk_len = (size_t) entropy_len_arg;
|
||||
TEST_ASSERT(entropy_chunk_len <= sizeof(buf));
|
||||
|
||||
test_offset_idx = 0;
|
||||
test_max_idx = entropy->len;
|
||||
|
||||
/* CTR_DRBG_Instantiate(entropy[:entropy->len], nonce, perso, <ignored>)
|
||||
* where nonce||perso = nonce[nonce->len] */
|
||||
mbedtls_ctr_drbg_set_entropy_len(&ctx, entropy_chunk_len);
|
||||
mbedtls_ctr_drbg_set_nonce_len(&ctx, 0);
|
||||
TEST_ASSERT(mbedtls_ctr_drbg_seed(
|
||||
&ctx,
|
||||
mbedtls_test_entropy_func, entropy->x,
|
||||
nonce->x, nonce->len) == 0);
|
||||
if (reseed_mode == RESEED_ALWAYS) {
|
||||
mbedtls_ctr_drbg_set_prediction_resistance(
|
||||
&ctx,
|
||||
MBEDTLS_CTR_DRBG_PR_ON);
|
||||
}
|
||||
|
||||
if (reseed_mode == RESEED_FIRST) {
|
||||
/* CTR_DRBG_Reseed(entropy[idx:idx+entropy->len],
|
||||
* reseed[:reseed->len]) */
|
||||
TEST_ASSERT(mbedtls_ctr_drbg_reseed(
|
||||
&ctx,
|
||||
reseed->x, reseed->len) == 0);
|
||||
}
|
||||
|
||||
/* CTR_DRBG_Generate(result->len * 8 bits, add1[:add1->len]) -> buf */
|
||||
/* Then reseed if prediction resistance is enabled. */
|
||||
TEST_ASSERT(mbedtls_ctr_drbg_random_with_add(
|
||||
&ctx,
|
||||
buf, result->len,
|
||||
add1->x, add1->len) == 0);
|
||||
|
||||
|
||||
if (reseed_mode == RESEED_SECOND) {
|
||||
/* CTR_DRBG_Reseed(entropy[idx:idx+entropy->len],
|
||||
* reseed[:reseed->len]) */
|
||||
TEST_ASSERT(mbedtls_ctr_drbg_reseed(
|
||||
&ctx,
|
||||
reseed->x, reseed->len) == 0);
|
||||
}
|
||||
|
||||
/* CTR_DRBG_Generate(result->len * 8 bits, add2->x[:add2->len]) -> buf */
|
||||
/* Then reseed if prediction resistance is enabled. */
|
||||
TEST_ASSERT(mbedtls_ctr_drbg_random_with_add(
|
||||
&ctx,
|
||||
buf, result->len,
|
||||
add2->x, add2->len) == 0);
|
||||
TEST_ASSERT(memcmp(buf, result->x, result->len) == 0);
|
||||
|
||||
exit:
|
||||
mbedtls_ctr_drbg_free(&ctx);
|
||||
}
|
||||
|
||||
static const int thread_random_reps = 10;
|
||||
void *thread_random_function(void *ctx); /* only used conditionally in ctr_drbg_threads */
|
||||
void *thread_random_function(void *ctx)
|
||||
{
|
||||
unsigned char out[16];
|
||||
memset(out, 0, sizeof(out));
|
||||
|
||||
for (int i = 0; i < thread_random_reps; i++) {
|
||||
TEST_EQUAL(mbedtls_ctr_drbg_random((mbedtls_ctr_drbg_context *) ctx, out, sizeof(out)), 0);
|
||||
}
|
||||
|
||||
exit:
|
||||
return NULL;
|
||||
}
|
||||
/* END_HEADER */
|
||||
|
||||
/* BEGIN_DEPENDENCIES
|
||||
* depends_on:MBEDTLS_CTR_DRBG_C
|
||||
* END_DEPENDENCIES
|
||||
*/
|
||||
|
||||
/* BEGIN_CASE */
|
||||
void ctr_drbg_special_behaviours()
|
||||
{
|
||||
mbedtls_ctr_drbg_context ctx;
|
||||
unsigned char output[512];
|
||||
unsigned char additional[512];
|
||||
|
||||
mbedtls_ctr_drbg_init(&ctx);
|
||||
memset(output, 0, sizeof(output));
|
||||
memset(additional, 0, sizeof(additional));
|
||||
|
||||
TEST_ASSERT(mbedtls_ctr_drbg_random_with_add(&ctx,
|
||||
output, MBEDTLS_CTR_DRBG_MAX_REQUEST + 1,
|
||||
additional, 16) ==
|
||||
MBEDTLS_ERR_CTR_DRBG_REQUEST_TOO_BIG);
|
||||
TEST_ASSERT(mbedtls_ctr_drbg_random_with_add(&ctx,
|
||||
output, 16,
|
||||
additional, MBEDTLS_CTR_DRBG_MAX_INPUT + 1) ==
|
||||
MBEDTLS_ERR_CTR_DRBG_INPUT_TOO_BIG);
|
||||
|
||||
TEST_ASSERT(mbedtls_ctr_drbg_reseed(&ctx, additional,
|
||||
MBEDTLS_CTR_DRBG_MAX_SEED_INPUT + 1) ==
|
||||
MBEDTLS_ERR_CTR_DRBG_INPUT_TOO_BIG);
|
||||
|
||||
mbedtls_ctr_drbg_set_entropy_len(&ctx, ~0);
|
||||
TEST_ASSERT(mbedtls_ctr_drbg_reseed(&ctx, additional,
|
||||
MBEDTLS_CTR_DRBG_MAX_SEED_INPUT) ==
|
||||
MBEDTLS_ERR_CTR_DRBG_INPUT_TOO_BIG);
|
||||
exit:
|
||||
mbedtls_ctr_drbg_free(&ctx);
|
||||
}
|
||||
/* END_CASE */
|
||||
|
||||
|
||||
/* BEGIN_CASE */
|
||||
void ctr_drbg_validate_no_reseed(data_t *add_init, data_t *entropy,
|
||||
data_t *add1, data_t *add2,
|
||||
data_t *result_string)
|
||||
{
|
||||
data_t empty = { 0, 0 };
|
||||
AES_PSA_INIT();
|
||||
ctr_drbg_validate_internal(RESEED_NEVER, add_init,
|
||||
entropy->len, entropy,
|
||||
&empty, add1, add2,
|
||||
result_string);
|
||||
AES_PSA_DONE();
|
||||
goto exit; // goto is needed to avoid warning ( no test assertions in func)
|
||||
}
|
||||
/* END_CASE */
|
||||
|
||||
/* BEGIN_CASE */
|
||||
void ctr_drbg_validate_pr(data_t *add_init, data_t *entropy,
|
||||
data_t *add1, data_t *add2,
|
||||
data_t *result_string)
|
||||
{
|
||||
data_t empty = { 0, 0 };
|
||||
AES_PSA_INIT();
|
||||
ctr_drbg_validate_internal(RESEED_ALWAYS, add_init,
|
||||
entropy->len / 3, entropy,
|
||||
&empty, add1, add2,
|
||||
result_string);
|
||||
AES_PSA_DONE();
|
||||
goto exit; // goto is needed to avoid warning ( no test assertions in func)
|
||||
}
|
||||
/* END_CASE */
|
||||
|
||||
/* BEGIN_CASE */
|
||||
void ctr_drbg_validate_reseed_between(data_t *add_init, data_t *entropy,
|
||||
data_t *add1, data_t *add_reseed,
|
||||
data_t *add2, data_t *result_string)
|
||||
{
|
||||
AES_PSA_INIT();
|
||||
ctr_drbg_validate_internal(RESEED_SECOND, add_init,
|
||||
entropy->len / 2, entropy,
|
||||
add_reseed, add1, add2,
|
||||
result_string);
|
||||
AES_PSA_DONE();
|
||||
goto exit; // goto is needed to avoid warning ( no test assertions in func)
|
||||
}
|
||||
/* END_CASE */
|
||||
|
||||
/* BEGIN_CASE */
|
||||
void ctr_drbg_validate_reseed_first(data_t *add_init, data_t *entropy,
|
||||
data_t *add1, data_t *add_reseed,
|
||||
data_t *add2, data_t *result_string)
|
||||
{
|
||||
AES_PSA_INIT();
|
||||
ctr_drbg_validate_internal(RESEED_FIRST, add_init,
|
||||
entropy->len / 2, entropy,
|
||||
add_reseed, add1, add2,
|
||||
result_string);
|
||||
AES_PSA_DONE();
|
||||
goto exit; // goto is needed to avoid warning ( no test assertions in func)
|
||||
}
|
||||
/* END_CASE */
|
||||
|
||||
/* BEGIN_CASE */
|
||||
void ctr_drbg_entropy_strength(int expected_bit_strength)
|
||||
{
|
||||
unsigned char entropy[/*initial entropy*/ MBEDTLS_CTR_DRBG_ENTROPY_LEN +
|
||||
/*nonce*/ MBEDTLS_CTR_DRBG_ENTROPY_NONCE_LEN +
|
||||
/*reseed*/ MBEDTLS_CTR_DRBG_ENTROPY_LEN];
|
||||
mbedtls_ctr_drbg_context ctx;
|
||||
size_t last_idx;
|
||||
size_t byte_strength = expected_bit_strength / 8;
|
||||
|
||||
mbedtls_ctr_drbg_init(&ctx);
|
||||
|
||||
AES_PSA_INIT();
|
||||
test_offset_idx = 0;
|
||||
test_max_idx = sizeof(entropy);
|
||||
memset(entropy, 0, sizeof(entropy));
|
||||
|
||||
/* The initial seeding must grab at least byte_strength bytes of entropy
|
||||
* for the entropy input and byte_strength/2 bytes for a nonce. */
|
||||
TEST_ASSERT(mbedtls_ctr_drbg_seed(&ctx,
|
||||
mbedtls_test_entropy_func, entropy,
|
||||
NULL, 0) == 0);
|
||||
TEST_ASSERT(test_offset_idx >= (byte_strength * 3 + 1) / 2);
|
||||
last_idx = test_offset_idx;
|
||||
|
||||
/* A reseed must grab at least byte_strength bytes of entropy. */
|
||||
TEST_ASSERT(mbedtls_ctr_drbg_reseed(&ctx, NULL, 0) == 0);
|
||||
TEST_ASSERT(test_offset_idx - last_idx >= byte_strength);
|
||||
|
||||
exit:
|
||||
mbedtls_ctr_drbg_free(&ctx);
|
||||
AES_PSA_DONE();
|
||||
}
|
||||
/* END_CASE */
|
||||
|
||||
/* BEGIN_CASE */
|
||||
void ctr_drbg_entropy_usage(int entropy_nonce_len)
|
||||
{
|
||||
unsigned char out[16];
|
||||
unsigned char add[16];
|
||||
unsigned char entropy[1024];
|
||||
mbedtls_ctr_drbg_context ctx;
|
||||
size_t i, reps = 10;
|
||||
size_t expected_idx = 0;
|
||||
|
||||
mbedtls_ctr_drbg_init(&ctx);
|
||||
|
||||
AES_PSA_INIT();
|
||||
|
||||
test_offset_idx = 0;
|
||||
test_max_idx = sizeof(entropy);
|
||||
memset(entropy, 0, sizeof(entropy));
|
||||
memset(out, 0, sizeof(out));
|
||||
memset(add, 0, sizeof(add));
|
||||
|
||||
if (entropy_nonce_len >= 0) {
|
||||
TEST_ASSERT(mbedtls_ctr_drbg_set_nonce_len(&ctx, entropy_nonce_len) == 0);
|
||||
}
|
||||
|
||||
/* Set reseed interval before seed */
|
||||
mbedtls_ctr_drbg_set_reseed_interval(&ctx, 2 * reps);
|
||||
|
||||
/* Init must use entropy */
|
||||
TEST_ASSERT(mbedtls_ctr_drbg_seed(&ctx, mbedtls_test_entropy_func, entropy, NULL, 0) == 0);
|
||||
expected_idx += MBEDTLS_CTR_DRBG_ENTROPY_LEN;
|
||||
if (entropy_nonce_len >= 0) {
|
||||
expected_idx += entropy_nonce_len;
|
||||
} else {
|
||||
expected_idx += MBEDTLS_CTR_DRBG_ENTROPY_NONCE_LEN;
|
||||
}
|
||||
TEST_EQUAL(test_offset_idx, expected_idx);
|
||||
|
||||
/* By default, PR is off, and reseed interval was set to
|
||||
* 2 * reps so the next few calls should not use entropy */
|
||||
for (i = 0; i < reps; i++) {
|
||||
TEST_ASSERT(mbedtls_ctr_drbg_random(&ctx, out, sizeof(out) - 4) == 0);
|
||||
TEST_ASSERT(mbedtls_ctr_drbg_random_with_add(&ctx, out, sizeof(out) - 4,
|
||||
add, sizeof(add)) == 0);
|
||||
}
|
||||
TEST_EQUAL(test_offset_idx, expected_idx);
|
||||
|
||||
/* While at it, make sure we didn't write past the requested length */
|
||||
TEST_ASSERT(out[sizeof(out) - 4] == 0);
|
||||
TEST_ASSERT(out[sizeof(out) - 3] == 0);
|
||||
TEST_ASSERT(out[sizeof(out) - 2] == 0);
|
||||
TEST_ASSERT(out[sizeof(out) - 1] == 0);
|
||||
|
||||
/* There have been 2 * reps calls to random. The next call should reseed */
|
||||
TEST_ASSERT(mbedtls_ctr_drbg_random(&ctx, out, sizeof(out)) == 0);
|
||||
expected_idx += MBEDTLS_CTR_DRBG_ENTROPY_LEN;
|
||||
TEST_EQUAL(test_offset_idx, expected_idx);
|
||||
|
||||
/* Set reseed interval after seed */
|
||||
mbedtls_ctr_drbg_set_reseed_interval(&ctx, 4 * reps + 1);
|
||||
|
||||
/* The next few calls should not reseed */
|
||||
for (i = 0; i < (2 * reps); i++) {
|
||||
TEST_ASSERT(mbedtls_ctr_drbg_random(&ctx, out, sizeof(out)) == 0);
|
||||
TEST_ASSERT(mbedtls_ctr_drbg_random_with_add(&ctx, out, sizeof(out),
|
||||
add, sizeof(add)) == 0);
|
||||
}
|
||||
TEST_EQUAL(test_offset_idx, expected_idx);
|
||||
|
||||
/* Call update with too much data (sizeof(entropy) > MAX(_SEED)_INPUT).
|
||||
* Make sure it's detected as an error and doesn't cause memory
|
||||
* corruption. */
|
||||
TEST_ASSERT(mbedtls_ctr_drbg_update(
|
||||
&ctx, entropy, sizeof(entropy)) != 0);
|
||||
|
||||
/* Now enable PR, so the next few calls should all reseed */
|
||||
mbedtls_ctr_drbg_set_prediction_resistance(&ctx, MBEDTLS_CTR_DRBG_PR_ON);
|
||||
TEST_ASSERT(mbedtls_ctr_drbg_random(&ctx, out, sizeof(out)) == 0);
|
||||
expected_idx += MBEDTLS_CTR_DRBG_ENTROPY_LEN;
|
||||
TEST_EQUAL(test_offset_idx, expected_idx);
|
||||
|
||||
/* Finally, check setting entropy_len */
|
||||
mbedtls_ctr_drbg_set_entropy_len(&ctx, 42);
|
||||
TEST_ASSERT(mbedtls_ctr_drbg_random(&ctx, out, sizeof(out)) == 0);
|
||||
expected_idx += 42;
|
||||
TEST_EQUAL(test_offset_idx, expected_idx);
|
||||
|
||||
mbedtls_ctr_drbg_set_entropy_len(&ctx, 13);
|
||||
TEST_ASSERT(mbedtls_ctr_drbg_random(&ctx, out, sizeof(out)) == 0);
|
||||
expected_idx += 13;
|
||||
TEST_EQUAL(test_offset_idx, expected_idx);
|
||||
|
||||
exit:
|
||||
mbedtls_ctr_drbg_free(&ctx);
|
||||
AES_PSA_DONE();
|
||||
}
|
||||
/* END_CASE */
|
||||
|
||||
/* BEGIN_CASE depends_on:MBEDTLS_THREADING_PTHREAD:!MBEDTLS_CTR_DRBG_USE_128_BIT_KEY:!MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH */
|
||||
void ctr_drbg_threads(data_t *expected_result, int reseed, int arg_thread_count)
|
||||
{
|
||||
size_t thread_count = (size_t) arg_thread_count;
|
||||
mbedtls_test_thread_t *threads = NULL;
|
||||
|
||||
unsigned char out[16];
|
||||
unsigned char *entropy = NULL;
|
||||
|
||||
const size_t n_random_calls = thread_count * thread_random_reps + 1;
|
||||
|
||||
/* This is a known-answer test, and although tests use a mock entropy
|
||||
* function the input entropy length will still affect the output.
|
||||
* We therefore need to pick a fixed entropy length, rather than using the
|
||||
* default entropy length (MBEDTLS_CTR_DRBG_ENTROPY_LEN). We've chosen to
|
||||
* use the default value of MBEDTLS_CTR_DRBG_ENTROPY_LEN for SHA-512,
|
||||
* as this was the value used when the expected answers were calculated. */
|
||||
const size_t entropy_len = 48;
|
||||
|
||||
mbedtls_ctr_drbg_context ctx;
|
||||
mbedtls_ctr_drbg_init(&ctx);
|
||||
|
||||
AES_PSA_INIT();
|
||||
|
||||
TEST_CALLOC(threads, sizeof(mbedtls_test_thread_t) * thread_count);
|
||||
memset(out, 0, sizeof(out));
|
||||
|
||||
test_offset_idx = 0;
|
||||
|
||||
/* Need to set a non-default fixed entropy len, to ensure same output across
|
||||
* all configs - see above for details. */
|
||||
mbedtls_ctr_drbg_set_entropy_len(&ctx, entropy_len);
|
||||
|
||||
if (reseed == 0) {
|
||||
mbedtls_ctr_drbg_set_prediction_resistance(&ctx, MBEDTLS_CTR_DRBG_PR_OFF);
|
||||
mbedtls_ctr_drbg_set_reseed_interval(&ctx, n_random_calls + 1);
|
||||
|
||||
TEST_CALLOC(entropy, entropy_len + MBEDTLS_CTR_DRBG_ENTROPY_NONCE_LEN);
|
||||
test_max_idx = entropy_len + MBEDTLS_CTR_DRBG_ENTROPY_NONCE_LEN;
|
||||
} else {
|
||||
const size_t entropy_size = ((n_random_calls + 1) * entropy_len)
|
||||
+ MBEDTLS_CTR_DRBG_ENTROPY_NONCE_LEN;
|
||||
|
||||
mbedtls_ctr_drbg_set_prediction_resistance(&ctx, MBEDTLS_CTR_DRBG_PR_ON);
|
||||
|
||||
TEST_CALLOC(entropy, entropy_size);
|
||||
test_max_idx = entropy_size;
|
||||
}
|
||||
|
||||
TEST_EQUAL(
|
||||
mbedtls_ctr_drbg_seed(&ctx, mbedtls_test_entropy_func, entropy, NULL, 0),
|
||||
0);
|
||||
|
||||
for (size_t i = 0; i < thread_count; i++) {
|
||||
TEST_EQUAL(
|
||||
mbedtls_test_thread_create(&threads[i],
|
||||
thread_random_function, (void *) &ctx),
|
||||
0);
|
||||
}
|
||||
|
||||
for (size_t i = 0; i < thread_count; i++) {
|
||||
TEST_EQUAL(mbedtls_test_thread_join(&threads[i]), 0);
|
||||
}
|
||||
|
||||
/* Take a last output for comparing and thus verifying the DRBG state */
|
||||
TEST_EQUAL(mbedtls_ctr_drbg_random(&ctx, out, sizeof(out)), 0);
|
||||
|
||||
TEST_MEMORY_COMPARE(out, sizeof(out), expected_result->x, expected_result->len);
|
||||
|
||||
exit:
|
||||
mbedtls_ctr_drbg_free(&ctx);
|
||||
mbedtls_free(entropy);
|
||||
mbedtls_free(threads);
|
||||
|
||||
AES_PSA_DONE();
|
||||
}
|
||||
/* END_CASE */
|
||||
|
||||
/* BEGIN_CASE depends_on:MBEDTLS_FS_IO */
|
||||
void ctr_drbg_seed_file(char *path, int ret)
|
||||
{
|
||||
mbedtls_ctr_drbg_context ctx;
|
||||
|
||||
mbedtls_ctr_drbg_init(&ctx);
|
||||
|
||||
AES_PSA_INIT();
|
||||
|
||||
TEST_ASSERT(mbedtls_ctr_drbg_seed(&ctx, mbedtls_test_rnd_std_rand,
|
||||
NULL, NULL, 0) == 0);
|
||||
TEST_ASSERT(mbedtls_ctr_drbg_write_seed_file(&ctx, path) == ret);
|
||||
TEST_ASSERT(mbedtls_ctr_drbg_update_seed_file(&ctx, path) == ret);
|
||||
|
||||
exit:
|
||||
mbedtls_ctr_drbg_free(&ctx);
|
||||
AES_PSA_DONE();
|
||||
}
|
||||
/* END_CASE */
|
||||
|
||||
/* BEGIN_CASE depends_on:MBEDTLS_SELF_TEST */
|
||||
void ctr_drbg_selftest()
|
||||
{
|
||||
AES_PSA_INIT();
|
||||
TEST_ASSERT(mbedtls_ctr_drbg_self_test(1) == 0);
|
||||
AES_PSA_DONE();
|
||||
}
|
||||
/* END_CASE */
|
||||
|
||||
/* BEGIN_CASE */
|
||||
void ctr_increment_rollover()
|
||||
{
|
||||
uint8_t c[16];
|
||||
uint8_t r[16];
|
||||
|
||||
// test all increments from 2^n - 1 to 2^n (i.e. where we roll over into the next bit)
|
||||
for (int n = 0; n <= 128; n++) {
|
||||
memset(c, 0, 16);
|
||||
memset(r, 0, 16);
|
||||
|
||||
// set least significant (highest address) n bits to 1, i.e. generate (2^n - 1)
|
||||
for (int i = 0; i < n; i++) {
|
||||
int bit = i % 8;
|
||||
int byte = (i / 8);
|
||||
c[15 - byte] |= 1 << bit;
|
||||
}
|
||||
// increment to get 2^n
|
||||
mbedtls_ctr_increment_counter(c);
|
||||
|
||||
// now generate a reference result equal to 2^n - i.e. set only bit (n + 1)
|
||||
// if n == 127, this will not set any bits (i.e. wraps to 0).
|
||||
int bit = n % 8;
|
||||
int byte = n / 8;
|
||||
if (byte < 16) {
|
||||
r[15 - byte] = 1 << bit;
|
||||
}
|
||||
|
||||
TEST_MEMORY_COMPARE(c, 16, r, 16);
|
||||
}
|
||||
|
||||
uint64_t lsb = 10, msb = 20;
|
||||
MBEDTLS_PUT_UINT64_BE(msb, c, 0);
|
||||
MBEDTLS_PUT_UINT64_BE(lsb, c, 8);
|
||||
memcpy(r, c, 16);
|
||||
mbedtls_ctr_increment_counter(c);
|
||||
for (int i = 15; i >= 0; i--) {
|
||||
r[i] += 1;
|
||||
if (r[i] != 0) {
|
||||
break;
|
||||
}
|
||||
}
|
||||
TEST_MEMORY_COMPARE(c, 16, r, 16);
|
||||
}
|
||||
/* END_CASE */
|
||||
|
||||
/* BEGIN_CASE */
|
||||
void ctr_increment(data_t *x)
|
||||
{
|
||||
uint8_t c[16];
|
||||
uint8_t r[16];
|
||||
|
||||
// initialise c and r from test argument
|
||||
memset(c, 0, 16);
|
||||
memcpy(c, x->x, x->len);
|
||||
memcpy(r, c, 16);
|
||||
|
||||
// increment c
|
||||
mbedtls_ctr_increment_counter(c);
|
||||
// increment reference
|
||||
for (int i = 15; i >= 0; i--) {
|
||||
r[i] += 1;
|
||||
if (r[i] != 0) {
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
// test that mbedtls_ctr_increment_counter behaviour matches reference
|
||||
TEST_MEMORY_COMPARE(c, 16, r, 16);
|
||||
}
|
||||
/* END_CASE */
|
||||
110
vendor/mbedtls/tests/suites/test_suite_debug.data
vendored
Normal file
110
vendor/mbedtls/tests/suites/test_suite_debug.data
vendored
Normal file
@@ -0,0 +1,110 @@
|
||||
printf "%" MBEDTLS_PRINTF_SIZET, 0
|
||||
printf_int_expr:PRINTF_SIZET:sizeof(size_t):0:"0"
|
||||
|
||||
printf "%" MBEDTLS_PRINTF_SIZET, 1 byte
|
||||
printf_int_expr:PRINTF_SIZET:sizeof(size_t):42:"42"
|
||||
|
||||
printf "%" MBEDTLS_PRINTF_SIZET, 4 bytes
|
||||
printf_int_expr:PRINTF_SIZET:sizeof(size_t):0xfedcba98:"4275878552"
|
||||
|
||||
printf "%" MBEDTLS_PRINTF_SIZET, 8 bytes
|
||||
depends_on:SIZE_MAX>=0xffffffffffffffff
|
||||
printf_int_expr:PRINTF_SIZET:sizeof(size_t):0xfedcba9876543210:"18364758544493064720"
|
||||
|
||||
printf "%" MBEDTLS_PRINTF_LONGLONG, 0
|
||||
printf_int_expr:PRINTF_LONGLONG:sizeof(long long):0:"0"
|
||||
|
||||
printf "%" MBEDTLS_PRINTF_LONGLONG, 1 byte
|
||||
printf_int_expr:PRINTF_LONGLONG:sizeof(long long):42:"42"
|
||||
|
||||
printf "%" MBEDTLS_PRINTF_LONGLONG, 4 bytes
|
||||
printf_int_expr:PRINTF_LONGLONG:sizeof(long long):0xfedcba98:"4275878552"
|
||||
|
||||
printf "%" MBEDTLS_PRINTF_LONGLONG, 8 bytes
|
||||
printf_int_expr:PRINTF_LONGLONG:sizeof(long long):0x7edcba9876543210:"9141386507638288912"
|
||||
|
||||
printf "%" MBEDTLS_PRINTF_LONGLONG, 8 bytes, negative
|
||||
printf_int_expr:PRINTF_LONGLONG:sizeof(long long):-0x7edcba9876543210:"-9141386507638288912"
|
||||
|
||||
printf "%" MBEDTLS_PRINTF_MS_TIME, 0
|
||||
printf_int_expr:PRINTF_MS_TIME:sizeof(mbedtls_ms_time_t):0:"0"
|
||||
|
||||
printf "%" MBEDTLS_PRINTF_MS_TIME, 1 byte
|
||||
printf_int_expr:PRINTF_MS_TIME:sizeof(mbedtls_ms_time_t):42:"42"
|
||||
|
||||
printf "%" MBEDTLS_PRINTF_MS_TIME, 4 bytes
|
||||
printf_int_expr:PRINTF_MS_TIME:sizeof(mbedtls_ms_time_t):0xfedcba98:"4275878552"
|
||||
|
||||
printf "%" MBEDTLS_PRINTF_MS_TIME, 8 bytes
|
||||
printf_int_expr:PRINTF_MS_TIME:sizeof(mbedtls_ms_time_t):0x7edcba9876543210:"9141386507638288912"
|
||||
|
||||
printf "%" MBEDTLS_PRINTF_MS_TIME, 8 bytes, negative
|
||||
printf_int_expr:PRINTF_MS_TIME:sizeof(mbedtls_ms_time_t):-0x7edcba9876543210:"-9141386507638288912"
|
||||
|
||||
Debug print msg (threshold 1, level 0)
|
||||
debug_print_msg_threshold:1:0:"MyFile":999:"MyFile(0999)\: Text message, 2 == 2\n"
|
||||
|
||||
Debug print msg (threshold 1, level 1)
|
||||
debug_print_msg_threshold:1:1:"MyFile":999:"MyFile(0999)\: Text message, 2 == 2\n"
|
||||
|
||||
Debug print msg (threshold 1, level 2)
|
||||
debug_print_msg_threshold:1:2:"MyFile":999:""
|
||||
|
||||
Debug print msg (threshold 0, level 1)
|
||||
debug_print_msg_threshold:0:1:"MyFile":999:""
|
||||
|
||||
Debug print msg (threshold 0, level 5)
|
||||
debug_print_msg_threshold:0:5:"MyFile":999:""
|
||||
|
||||
Debug print return value #1
|
||||
mbedtls_debug_print_ret:"MyFile":999:"Test return value":0:"MyFile(0999)\: Test return value() returned 0 (-0x0000)\n"
|
||||
|
||||
Debug print return value #2
|
||||
mbedtls_debug_print_ret:"MyFile":999:"Test return value":-0x1000:"MyFile(0999)\: Test return value() returned -4096 (-0x1000)\n"
|
||||
|
||||
Debug print return value #3
|
||||
mbedtls_debug_print_ret:"MyFile":999:"Test return value":-0xFFFF:"MyFile(0999)\: Test return value() returned -65535 (-0xffff)\n"
|
||||
|
||||
Debug print buffer #1
|
||||
mbedtls_debug_print_buf:"MyFile":999:"Test return value":"":"MyFile(0999)\: dumping 'Test return value' (0 bytes)\n"
|
||||
|
||||
Debug print buffer #2
|
||||
mbedtls_debug_print_buf:"MyFile":999:"Test return value":"00":"MyFile(0999)\: dumping 'Test return value' (1 bytes)\nMyFile(0999)\: 0000\: 00 .\n"
|
||||
|
||||
Debug print buffer #3
|
||||
mbedtls_debug_print_buf:"MyFile":999:"Test return value":"000102030405060708090A0B0C0D0E0F":"MyFile(0999)\: dumping 'Test return value' (16 bytes)\nMyFile(0999)\: 0000\: 00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f ................\n"
|
||||
|
||||
Debug print buffer #4
|
||||
mbedtls_debug_print_buf:"MyFile":999:"Test return value":"000102030405060708090A0B0C0D0E0F00":"MyFile(0999)\: dumping 'Test return value' (17 bytes)\nMyFile(0999)\: 0000\: 00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f ................\nMyFile(0999)\: 0010\: 00 .\n"
|
||||
|
||||
Debug print buffer #5
|
||||
mbedtls_debug_print_buf:"MyFile":999:"Test return value":"000102030405060708090A0B0C0D0E0F101112131415161718191A1B1C1D1E1F202122232425262728292A2B2C2D2E2F30":"MyFile(0999)\: dumping 'Test return value' (49 bytes)\nMyFile(0999)\: 0000\: 00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f ................\nMyFile(0999)\: 0010\: 10 11 12 13 14 15 16 17 18 19 1a 1b 1c 1d 1e 1f ................\nMyFile(0999)\: 0020\: 20 21 22 23 24 25 26 27 28 29 2a 2b 2c 2d 2e 2f !"#$%&'()*+,-./\nMyFile(0999)\: 0030\: 30 0\n"
|
||||
|
||||
Debug print mbedtls_mpi: 0 (empty representation)
|
||||
mbedtls_debug_print_mpi:"":"MyFile":999:"VALUE":"MyFile(0999)\: value of 'VALUE' (0 bits) is\:\nMyFile(0999)\: 00\n"
|
||||
|
||||
Debug print mbedtls_mpi: 0 (non-empty representation)
|
||||
mbedtls_debug_print_mpi:"00000000000000":"MyFile":999:"VALUE":"MyFile(0999)\: value of 'VALUE' (0 bits) is\:\nMyFile(0999)\: 00\n"
|
||||
|
||||
Debug print mbedtls_mpi #2: 3 bits
|
||||
mbedtls_debug_print_mpi:"00000000000007":"MyFile":999:"VALUE":"MyFile(0999)\: value of 'VALUE' (3 bits) is\:\nMyFile(0999)\: 07\n"
|
||||
|
||||
Debug print mbedtls_mpi: 49 bits
|
||||
mbedtls_debug_print_mpi:"01020304050607":"MyFile":999:"VALUE":"MyFile(0999)\: value of 'VALUE' (49 bits) is\:\nMyFile(0999)\: 01 02 03 04 05 06 07\n"
|
||||
|
||||
Debug print mbedtls_mpi: 759 bits
|
||||
mbedtls_debug_print_mpi:"0000000000000000000000000000000000000000000000000000000041379d00fed1491fe15df284dfde4a142f68aa8d412023195cee66883e6290ffe703f4ea5963bf212713cee46b107c09182b5edcd955adac418bf4918e2889af48e1099d513830cec85c26ac1e158b52620e33ba8692f893efbb2f958b4424":"MyFile":999:"VALUE":"MyFile(0999)\: value of 'VALUE' (759 bits) is\:\nMyFile(0999)\: 41 37 9d 00 fe d1 49 1f e1 5d f2 84 df de 4a 14\nMyFile(0999)\: 2f 68 aa 8d 41 20 23 19 5c ee 66 88 3e 62 90 ff\nMyFile(0999)\: e7 03 f4 ea 59 63 bf 21 27 13 ce e4 6b 10 7c 09\nMyFile(0999)\: 18 2b 5e dc d9 55 ad ac 41 8b f4 91 8e 28 89 af\nMyFile(0999)\: 48 e1 09 9d 51 38 30 ce c8 5c 26 ac 1e 15 8b 52\nMyFile(0999)\: 62 0e 33 ba 86 92 f8 93 ef bb 2f 95 8b 44 24\n"
|
||||
|
||||
Debug print mbedtls_mpi: 764 bits #1
|
||||
mbedtls_debug_print_mpi:"0941379d00fed1491fe15df284dfde4a142f68aa8d412023195cee66883e6290ffe703f4ea5963bf212713cee46b107c09182b5edcd955adac418bf4918e2889af48e1099d513830cec85c26ac1e158b52620e33ba8692f893efbb2f958b4424":"MyFile":999:"VALUE":"MyFile(0999)\: value of 'VALUE' (764 bits) is\:\nMyFile(0999)\: 09 41 37 9d 00 fe d1 49 1f e1 5d f2 84 df de 4a\nMyFile(0999)\: 14 2f 68 aa 8d 41 20 23 19 5c ee 66 88 3e 62 90\nMyFile(0999)\: ff e7 03 f4 ea 59 63 bf 21 27 13 ce e4 6b 10 7c\nMyFile(0999)\: 09 18 2b 5e dc d9 55 ad ac 41 8b f4 91 8e 28 89\nMyFile(0999)\: af 48 e1 09 9d 51 38 30 ce c8 5c 26 ac 1e 15 8b\nMyFile(0999)\: 52 62 0e 33 ba 86 92 f8 93 ef bb 2f 95 8b 44 24\n"
|
||||
|
||||
Debug print mbedtls_mpi: 764 bits #2
|
||||
mbedtls_debug_print_mpi:"0000000000000000000000000000000000000000000000000000000941379d00fed1491fe15df284dfde4a142f68aa8d412023195cee66883e6290ffe703f4ea5963bf212713cee46b107c09182b5edcd955adac418bf4918e2889af48e1099d513830cec85c26ac1e158b52620e33ba8692f893efbb2f958b4424":"MyFile":999:"VALUE":"MyFile(0999)\: value of 'VALUE' (764 bits) is\:\nMyFile(0999)\: 09 41 37 9d 00 fe d1 49 1f e1 5d f2 84 df de 4a\nMyFile(0999)\: 14 2f 68 aa 8d 41 20 23 19 5c ee 66 88 3e 62 90\nMyFile(0999)\: ff e7 03 f4 ea 59 63 bf 21 27 13 ce e4 6b 10 7c\nMyFile(0999)\: 09 18 2b 5e dc d9 55 ad ac 41 8b f4 91 8e 28 89\nMyFile(0999)\: af 48 e1 09 9d 51 38 30 ce c8 5c 26 ac 1e 15 8b\nMyFile(0999)\: 52 62 0e 33 ba 86 92 f8 93 ef bb 2f 95 8b 44 24\n"
|
||||
|
||||
Debug print certificate #1 (RSA)
|
||||
depends_on:MBEDTLS_PEM_PARSE_C:MBEDTLS_BASE64_C:MBEDTLS_RSA_C:MBEDTLS_MD_CAN_SHA1:!MBEDTLS_X509_REMOVE_INFO
|
||||
mbedtls_debug_print_crt:"../framework/data_files/server1.crt":"MyFile":999:"PREFIX_":"MyFile(0999)\: PREFIX_ #1\:\nMyFile(0999)\: cert. version \: 3\nMyFile(0999)\: serial number \: 01\nMyFile(0999)\: issuer name \: C=NL, O=PolarSSL, CN=PolarSSL Test CA\nMyFile(0999)\: subject name \: C=NL, O=PolarSSL, CN=PolarSSL Server 1\nMyFile(0999)\: issued on \: 2019-02-10 14\:44\:06\nMyFile(0999)\: expires on \: 2029-02-10 14\:44\:06\nMyFile(0999)\: signed using \: RSA with SHA1\nMyFile(0999)\: RSA key size \: 2048 bits\nMyFile(0999)\: basic constraints \: CA=false\nMyFile(0999)\: value of 'crt->rsa.N' (2048 bits) is\:\nMyFile(0999)\: a9 02 1f 3d 40 6a d5 55 53 8b fd 36 ee 82 65 2e\nMyFile(0999)\: 15 61 5e 89 bf b8 e8 45 90 db ee 88 16 52 d3 f1\nMyFile(0999)\: 43 50 47 96 12 59 64 87 6b fd 2b e0 46 f9 73 be\nMyFile(0999)\: dd cf 92 e1 91 5b ed 66 a0 6f 89 29 79 45 80 d0\nMyFile(0999)\: 83 6a d5 41 43 77 5f 39 7c 09 04 47 82 b0 57 39\nMyFile(0999)\: 70 ed a3 ec 15 19 1e a8 33 08 47 c1 05 42 a9 fd\nMyFile(0999)\: 4c c3 b4 df dd 06 1f 4d 10 51 40 67 73 13 0f 40\nMyFile(0999)\: f8 6d 81 25 5f 0a b1 53 c6 30 7e 15 39 ac f9 5a\nMyFile(0999)\: ee 7f 92 9e a6 05 5b e7 13 97 85 b5 23 92 d9 d4\nMyFile(0999)\: 24 06 d5 09 25 89 75 07 dd a6 1a 8f 3f 09 19 be\nMyFile(0999)\: ad 65 2c 64 eb 95 9b dc fe 41 5e 17 a6 da 6c 5b\nMyFile(0999)\: 69 cc 02 ba 14 2c 16 24 9c 4a dc cd d0 f7 52 67\nMyFile(0999)\: 73 f1 2d a0 23 fd 7e f4 31 ca 2d 70 ca 89 0b 04\nMyFile(0999)\: db 2e a6 4f 70 6e 9e ce bd 58 89 e2 53 59 9e 6e\nMyFile(0999)\: 5a 92 65 e2 88 3f 0c 94 19 a3 dd e5 e8 9d 95 13\nMyFile(0999)\: ed 29 db ab 70 12 dc 5a ca 6b 17 ab 52 82 54 b1\nMyFile(0999)\: value of 'crt->rsa.E' (17 bits) is\:\nMyFile(0999)\: 01 00 01\n"
|
||||
|
||||
Debug print certificate #2 (EC)
|
||||
depends_on:MBEDTLS_PEM_PARSE_C:MBEDTLS_BASE64_C:MBEDTLS_PK_CAN_ECDSA_SOME:MBEDTLS_PK_HAVE_ECC_KEYS:MBEDTLS_ECP_HAVE_SECP384R1:MBEDTLS_MD_CAN_SHA256:!MBEDTLS_X509_REMOVE_INFO
|
||||
mbedtls_debug_print_crt:"../framework/data_files/test-ca2.crt":"MyFile":999:"PREFIX_":"MyFile(0999)\: PREFIX_ #1\:\nMyFile(0999)\: cert. version \: 3\nMyFile(0999)\: serial number \: C1\:43\:E2\:7E\:62\:43\:CC\:E8\nMyFile(0999)\: issuer name \: C=NL, O=PolarSSL, CN=Polarssl Test EC CA\nMyFile(0999)\: subject name \: C=NL, O=PolarSSL, CN=Polarssl Test EC CA\nMyFile(0999)\: issued on \: 2019-02-10 14\:44\:00\nMyFile(0999)\: expires on \: 2029-02-10 14\:44\:00\nMyFile(0999)\: signed using \: ECDSA with SHA256\nMyFile(0999)\: EC key size \: 384 bits\nMyFile(0999)\: basic constraints \: CA=true\nMyFile(0999)\: value of 'crt->eckey.Q(X)' (384 bits) is\:\nMyFile(0999)\: c3 da 2b 34 41 37 58 2f 87 56 fe fc 89 ba 29 43\nMyFile(0999)\: 4b 4e e0 6e c3 0e 57 53 33 39 58 d4 52 b4 91 95\nMyFile(0999)\: 39 0b 23 df 5f 17 24 62 48 fc 1a 95 29 ce 2c 2d\nMyFile(0999)\: value of 'crt->eckey.Q(Y)' (384 bits) is\:\nMyFile(0999)\: 87 c2 88 52 80 af d6 6a ab 21 dd b8 d3 1c 6e 58\nMyFile(0999)\: b8 ca e8 b2 69 8e f3 41 ad 29 c3 b4 5f 75 a7 47\nMyFile(0999)\: 6f d5 19 29 55 69 9a 53 3b 20 b4 66 16 60 33 1e\n"
|
||||
330
vendor/mbedtls/tests/suites/test_suite_debug.function
vendored
Normal file
330
vendor/mbedtls/tests/suites/test_suite_debug.function
vendored
Normal file
@@ -0,0 +1,330 @@
|
||||
/* BEGIN_HEADER */
|
||||
#include "debug_internal.h"
|
||||
#include "string.h"
|
||||
#include "mbedtls/pk.h"
|
||||
#include <test/ssl_helpers.h>
|
||||
|
||||
#if defined(_WIN32)
|
||||
# include <stdlib.h>
|
||||
# include <crtdbg.h>
|
||||
#endif
|
||||
|
||||
// Dummy type for builds without MBEDTLS_HAVE_TIME
|
||||
#if !defined(MBEDTLS_HAVE_TIME)
|
||||
typedef int64_t mbedtls_ms_time_t;
|
||||
#endif
|
||||
|
||||
typedef enum {
|
||||
PRINTF_SIZET,
|
||||
PRINTF_LONGLONG,
|
||||
PRINTF_MS_TIME,
|
||||
} printf_format_indicator_t;
|
||||
|
||||
const char *const printf_formats[] = {
|
||||
[PRINTF_SIZET] = "%" MBEDTLS_PRINTF_SIZET,
|
||||
[PRINTF_LONGLONG] = "%" MBEDTLS_PRINTF_LONGLONG,
|
||||
[PRINTF_MS_TIME] = "%" MBEDTLS_PRINTF_MS_TIME,
|
||||
};
|
||||
|
||||
struct buffer_data {
|
||||
char buf[2000];
|
||||
char *ptr;
|
||||
};
|
||||
|
||||
#if defined(MBEDTLS_SSL_TLS_C)
|
||||
static void string_debug(void *data, int level, const char *file, int line, const char *str)
|
||||
{
|
||||
struct buffer_data *buffer = (struct buffer_data *) data;
|
||||
char *p = buffer->ptr;
|
||||
((void) level);
|
||||
|
||||
memcpy(p, file, strlen(file));
|
||||
p += strlen(file);
|
||||
|
||||
*p++ = '(';
|
||||
*p++ = '0' + (line / 1000) % 10;
|
||||
*p++ = '0' + (line / 100) % 10;
|
||||
*p++ = '0' + (line / 10) % 10;
|
||||
*p++ = '0' + (line / 1) % 10;
|
||||
*p++ = ')';
|
||||
*p++ = ':';
|
||||
*p++ = ' ';
|
||||
|
||||
#if defined(MBEDTLS_THREADING_C)
|
||||
/* Skip "thread ID" (up to the first space) as it is not predictable */
|
||||
while (*str++ != ' ') {
|
||||
;
|
||||
}
|
||||
#endif
|
||||
|
||||
memcpy(p, str, strlen(str));
|
||||
p += strlen(str);
|
||||
|
||||
/* Detect if debug messages output partial lines and mark them */
|
||||
if (p[-1] != '\n') {
|
||||
*p++ = '*';
|
||||
}
|
||||
|
||||
buffer->ptr = p;
|
||||
}
|
||||
#endif /* MBEDTLS_SSL_TLS_C */
|
||||
|
||||
#if defined(_WIN32)
|
||||
static void noop_invalid_parameter_handler(
|
||||
const wchar_t *expression,
|
||||
const wchar_t *function,
|
||||
const wchar_t *file,
|
||||
unsigned int line,
|
||||
uintptr_t pReserved)
|
||||
{
|
||||
(void) expression;
|
||||
(void) function;
|
||||
(void) file;
|
||||
(void) line;
|
||||
(void) pReserved;
|
||||
}
|
||||
#endif /* _WIN32 */
|
||||
|
||||
/* END_HEADER */
|
||||
|
||||
/* BEGIN_DEPENDENCIES
|
||||
* depends_on:MBEDTLS_DEBUG_C
|
||||
* END_DEPENDENCIES
|
||||
*/
|
||||
|
||||
/* BEGIN_CASE */
|
||||
void printf_int_expr(int format_indicator, intmax_t sizeof_x, intmax_t x, char *result)
|
||||
{
|
||||
#if defined(_WIN32)
|
||||
/* Windows treats any invalid format specifiers passsed to the CRT as fatal assertion failures.
|
||||
Disable this behaviour temporarily, so the rest of the test cases can complete. */
|
||||
_invalid_parameter_handler saved_handler =
|
||||
_set_invalid_parameter_handler(noop_invalid_parameter_handler);
|
||||
|
||||
// Disable assertion pop-up window in Debug builds
|
||||
int saved_report_mode = _CrtSetReportMode(_CRT_ASSERT, _CRTDBG_REPORT_MODE);
|
||||
_CrtSetReportMode(_CRT_ASSERT, _CRTDBG_MODE_DEBUG);
|
||||
#endif
|
||||
|
||||
const char *format = printf_formats[format_indicator];
|
||||
char *output = NULL;
|
||||
const size_t n = strlen(result);
|
||||
|
||||
/* Nominal case: buffer just large enough */
|
||||
TEST_CALLOC(output, n + 1);
|
||||
if ((size_t) sizeof_x <= sizeof(int)) { // Any smaller integers would be promoted to an int due to calling a vararg function
|
||||
TEST_EQUAL(n, mbedtls_debug_snprintf(output, n + 1, format, (int) x));
|
||||
} else if (sizeof_x == sizeof(long)) {
|
||||
TEST_EQUAL(n, mbedtls_debug_snprintf(output, n + 1, format, (long) x));
|
||||
} else if (sizeof_x == sizeof(long long)) {
|
||||
TEST_EQUAL(n, mbedtls_debug_snprintf(output, n + 1, format, (long long) x));
|
||||
} else {
|
||||
TEST_FAIL(
|
||||
"sizeof_x <= sizeof(int) || sizeof_x == sizeof(long) || sizeof_x == sizeof(long long)");
|
||||
}
|
||||
TEST_MEMORY_COMPARE(result, n + 1, output, n + 1);
|
||||
|
||||
exit:
|
||||
mbedtls_free(output);
|
||||
output = NULL;
|
||||
|
||||
#if defined(_WIN32)
|
||||
// Restore default Windows behaviour
|
||||
_set_invalid_parameter_handler(saved_handler);
|
||||
_CrtSetReportMode(_CRT_ASSERT, saved_report_mode);
|
||||
(void) saved_report_mode;
|
||||
#endif
|
||||
}
|
||||
/* END_CASE */
|
||||
|
||||
/* BEGIN_CASE depends_on:MBEDTLS_SSL_TLS_C */
|
||||
void debug_print_msg_threshold(int threshold, int level, char *file,
|
||||
int line, char *result_str)
|
||||
{
|
||||
mbedtls_ssl_context ssl;
|
||||
mbedtls_ssl_config conf;
|
||||
struct buffer_data buffer;
|
||||
|
||||
MD_PSA_INIT();
|
||||
|
||||
mbedtls_ssl_init(&ssl);
|
||||
mbedtls_ssl_config_init(&conf);
|
||||
memset(buffer.buf, 0, 2000);
|
||||
buffer.ptr = buffer.buf;
|
||||
|
||||
TEST_EQUAL(mbedtls_ssl_config_defaults(&conf,
|
||||
MBEDTLS_SSL_IS_CLIENT,
|
||||
MBEDTLS_SSL_TRANSPORT_STREAM,
|
||||
MBEDTLS_SSL_PRESET_DEFAULT),
|
||||
0);
|
||||
mbedtls_ssl_conf_rng(&conf, mbedtls_test_random, NULL);
|
||||
mbedtls_ssl_conf_dbg(&conf, string_debug, &buffer);
|
||||
|
||||
TEST_ASSERT(mbedtls_ssl_setup(&ssl, &conf) == 0);
|
||||
|
||||
mbedtls_debug_set_threshold(threshold);
|
||||
|
||||
mbedtls_debug_print_msg(&ssl, level, file, line,
|
||||
"Text message, 2 == %d", 2);
|
||||
|
||||
TEST_ASSERT(strcmp(buffer.buf, result_str) == 0);
|
||||
|
||||
exit:
|
||||
mbedtls_ssl_free(&ssl);
|
||||
mbedtls_ssl_config_free(&conf);
|
||||
MD_PSA_DONE();
|
||||
}
|
||||
/* END_CASE */
|
||||
|
||||
/* BEGIN_CASE depends_on:MBEDTLS_SSL_TLS_C */
|
||||
void mbedtls_debug_print_ret(char *file, int line, char *text, int value,
|
||||
char *result_str)
|
||||
{
|
||||
mbedtls_ssl_context ssl;
|
||||
mbedtls_ssl_config conf;
|
||||
struct buffer_data buffer;
|
||||
|
||||
MD_PSA_INIT();
|
||||
|
||||
mbedtls_ssl_init(&ssl);
|
||||
mbedtls_ssl_config_init(&conf);
|
||||
memset(buffer.buf, 0, 2000);
|
||||
buffer.ptr = buffer.buf;
|
||||
|
||||
TEST_EQUAL(mbedtls_ssl_config_defaults(&conf,
|
||||
MBEDTLS_SSL_IS_CLIENT,
|
||||
MBEDTLS_SSL_TRANSPORT_STREAM,
|
||||
MBEDTLS_SSL_PRESET_DEFAULT),
|
||||
0);
|
||||
mbedtls_ssl_conf_rng(&conf, mbedtls_test_random, NULL);
|
||||
mbedtls_ssl_conf_dbg(&conf, string_debug, &buffer);
|
||||
|
||||
TEST_ASSERT(mbedtls_ssl_setup(&ssl, &conf) == 0);
|
||||
|
||||
mbedtls_debug_print_ret(&ssl, 0, file, line, text, value);
|
||||
|
||||
TEST_ASSERT(strcmp(buffer.buf, result_str) == 0);
|
||||
|
||||
exit:
|
||||
mbedtls_ssl_free(&ssl);
|
||||
mbedtls_ssl_config_free(&conf);
|
||||
MD_PSA_DONE();
|
||||
}
|
||||
/* END_CASE */
|
||||
|
||||
/* BEGIN_CASE depends_on:MBEDTLS_SSL_TLS_C */
|
||||
void mbedtls_debug_print_buf(char *file, int line, char *text,
|
||||
data_t *data, char *result_str)
|
||||
{
|
||||
mbedtls_ssl_context ssl;
|
||||
mbedtls_ssl_config conf;
|
||||
struct buffer_data buffer;
|
||||
|
||||
MD_PSA_INIT();
|
||||
|
||||
mbedtls_ssl_init(&ssl);
|
||||
mbedtls_ssl_config_init(&conf);
|
||||
memset(buffer.buf, 0, 2000);
|
||||
buffer.ptr = buffer.buf;
|
||||
|
||||
TEST_EQUAL(mbedtls_ssl_config_defaults(&conf,
|
||||
MBEDTLS_SSL_IS_CLIENT,
|
||||
MBEDTLS_SSL_TRANSPORT_STREAM,
|
||||
MBEDTLS_SSL_PRESET_DEFAULT),
|
||||
0);
|
||||
mbedtls_ssl_conf_rng(&conf, mbedtls_test_random, NULL);
|
||||
mbedtls_ssl_conf_dbg(&conf, string_debug, &buffer);
|
||||
|
||||
TEST_ASSERT(mbedtls_ssl_setup(&ssl, &conf) == 0);
|
||||
|
||||
mbedtls_debug_print_buf(&ssl, 0, file, line, text, data->x, data->len);
|
||||
|
||||
TEST_ASSERT(strcmp(buffer.buf, result_str) == 0);
|
||||
|
||||
exit:
|
||||
mbedtls_ssl_free(&ssl);
|
||||
mbedtls_ssl_config_free(&conf);
|
||||
MD_PSA_DONE();
|
||||
}
|
||||
/* END_CASE */
|
||||
|
||||
/* BEGIN_CASE depends_on:MBEDTLS_SSL_TLS_C:MBEDTLS_FS_IO:MBEDTLS_X509_CRT_PARSE_C:!MBEDTLS_X509_REMOVE_INFO */
|
||||
void mbedtls_debug_print_crt(char *crt_file, char *file, int line,
|
||||
char *prefix, char *result_str)
|
||||
{
|
||||
mbedtls_x509_crt crt;
|
||||
mbedtls_ssl_context ssl;
|
||||
mbedtls_ssl_config conf;
|
||||
struct buffer_data buffer;
|
||||
|
||||
mbedtls_ssl_init(&ssl);
|
||||
mbedtls_ssl_config_init(&conf);
|
||||
mbedtls_x509_crt_init(&crt);
|
||||
MD_OR_USE_PSA_INIT();
|
||||
|
||||
memset(buffer.buf, 0, 2000);
|
||||
buffer.ptr = buffer.buf;
|
||||
|
||||
TEST_EQUAL(mbedtls_ssl_config_defaults(&conf,
|
||||
MBEDTLS_SSL_IS_CLIENT,
|
||||
MBEDTLS_SSL_TRANSPORT_STREAM,
|
||||
MBEDTLS_SSL_PRESET_DEFAULT),
|
||||
0);
|
||||
mbedtls_ssl_conf_rng(&conf, mbedtls_test_random, NULL);
|
||||
mbedtls_ssl_conf_dbg(&conf, string_debug, &buffer);
|
||||
|
||||
TEST_ASSERT(mbedtls_ssl_setup(&ssl, &conf) == 0);
|
||||
|
||||
TEST_ASSERT(mbedtls_x509_crt_parse_file(&crt, crt_file) == 0);
|
||||
mbedtls_debug_print_crt(&ssl, 0, file, line, prefix, &crt);
|
||||
|
||||
TEST_ASSERT(strcmp(buffer.buf, result_str) == 0);
|
||||
|
||||
exit:
|
||||
mbedtls_x509_crt_free(&crt);
|
||||
mbedtls_ssl_free(&ssl);
|
||||
mbedtls_ssl_config_free(&conf);
|
||||
MD_OR_USE_PSA_DONE();
|
||||
}
|
||||
/* END_CASE */
|
||||
|
||||
/* BEGIN_CASE depends_on:MBEDTLS_SSL_TLS_C:MBEDTLS_BIGNUM_C */
|
||||
void mbedtls_debug_print_mpi(char *value, char *file, int line,
|
||||
char *prefix, char *result_str)
|
||||
{
|
||||
mbedtls_ssl_context ssl;
|
||||
mbedtls_ssl_config conf;
|
||||
struct buffer_data buffer;
|
||||
mbedtls_mpi val;
|
||||
|
||||
MD_PSA_INIT();
|
||||
|
||||
mbedtls_ssl_init(&ssl);
|
||||
mbedtls_ssl_config_init(&conf);
|
||||
mbedtls_mpi_init(&val);
|
||||
memset(buffer.buf, 0, 2000);
|
||||
buffer.ptr = buffer.buf;
|
||||
|
||||
TEST_EQUAL(mbedtls_ssl_config_defaults(&conf,
|
||||
MBEDTLS_SSL_IS_CLIENT,
|
||||
MBEDTLS_SSL_TRANSPORT_STREAM,
|
||||
MBEDTLS_SSL_PRESET_DEFAULT),
|
||||
0);
|
||||
mbedtls_ssl_conf_rng(&conf, mbedtls_test_random, NULL);
|
||||
mbedtls_ssl_conf_dbg(&conf, string_debug, &buffer);
|
||||
|
||||
TEST_ASSERT(mbedtls_ssl_setup(&ssl, &conf) == 0);
|
||||
|
||||
TEST_ASSERT(mbedtls_test_read_mpi(&val, value) == 0);
|
||||
|
||||
mbedtls_debug_print_mpi(&ssl, 0, file, line, prefix, &val);
|
||||
|
||||
TEST_ASSERT(strcmp(buffer.buf, result_str) == 0);
|
||||
|
||||
exit:
|
||||
mbedtls_mpi_free(&val);
|
||||
mbedtls_ssl_free(&ssl);
|
||||
mbedtls_ssl_config_free(&conf);
|
||||
MD_PSA_DONE();
|
||||
}
|
||||
/* END_CASE */
|
||||
251
vendor/mbedtls/tests/suites/test_suite_des.data
vendored
Normal file
251
vendor/mbedtls/tests/suites/test_suite_des.data
vendored
Normal file
@@ -0,0 +1,251 @@
|
||||
DES check weak key #1
|
||||
des_check_weak:"0101010101010101":1
|
||||
|
||||
DES check weak key #2
|
||||
des_check_weak:"FEE0FEE0FEF1FEF1":1
|
||||
|
||||
DES check weak key #3
|
||||
des_check_weak:"0101010101010100":0
|
||||
|
||||
DES check weak key #4
|
||||
des_check_weak:"EEE0FEE0FEF1FEF1":0
|
||||
|
||||
DES Encrypt OpenSSL Test Vector #1
|
||||
des_encrypt_ecb:"0000000000000000":"0000000000000000":"8CA64DE9C1B123A7"
|
||||
|
||||
DES Encrypt OpenSSL Test Vector #2
|
||||
des_encrypt_ecb:"FFFFFFFFFFFFFFFF":"FFFFFFFFFFFFFFFF":"7359B2163E4EDC58"
|
||||
|
||||
DES Encrypt OpenSSL Test Vector #3
|
||||
des_encrypt_ecb:"3000000000000000":"1000000000000001":"958E6E627A05557B"
|
||||
|
||||
DES Encrypt OpenSSL Test Vector #4
|
||||
des_encrypt_ecb:"1111111111111111":"1111111111111111":"F40379AB9E0EC533"
|
||||
|
||||
DES Encrypt OpenSSL Test Vector #5
|
||||
des_encrypt_ecb:"0123456789ABCDEF":"1111111111111111":"17668DFC7292532D"
|
||||
|
||||
DES Encrypt OpenSSL Test Vector #6
|
||||
des_encrypt_ecb:"1111111111111111":"0123456789ABCDEF":"8A5AE1F81AB8F2DD"
|
||||
|
||||
DES Encrypt OpenSSL Test Vector #7
|
||||
des_encrypt_ecb:"0000000000000000":"0000000000000000":"8CA64DE9C1B123A7"
|
||||
|
||||
DES Encrypt OpenSSL Test Vector #8
|
||||
des_encrypt_ecb:"FEDCBA9876543210":"0123456789ABCDEF":"ED39D950FA74BCC4"
|
||||
|
||||
DES Encrypt OpenSSL Test Vector #9
|
||||
des_encrypt_ecb:"7CA110454A1A6E57":"01A1D6D039776742":"690F5B0D9A26939B"
|
||||
|
||||
DES Encrypt OpenSSL Test Vector #10
|
||||
des_encrypt_ecb:"0131D9619DC1376E":"5CD54CA83DEF57DA":"7A389D10354BD271"
|
||||
|
||||
DES Encrypt OpenSSL Test Vector #11
|
||||
des_encrypt_ecb:"07A1133E4A0B2686":"0248D43806F67172":"868EBB51CAB4599A"
|
||||
|
||||
DES Encrypt OpenSSL Test Vector #12
|
||||
des_encrypt_ecb:"3849674C2602319E":"51454B582DDF440A":"7178876E01F19B2A"
|
||||
|
||||
DES Encrypt OpenSSL Test Vector #13
|
||||
des_encrypt_ecb:"04B915BA43FEB5B6":"42FD443059577FA2":"AF37FB421F8C4095"
|
||||
|
||||
DES Encrypt OpenSSL Test Vector #14
|
||||
des_encrypt_ecb:"0113B970FD34F2CE":"059B5E0851CF143A":"86A560F10EC6D85B"
|
||||
|
||||
DES Encrypt OpenSSL Test Vector #15
|
||||
des_encrypt_ecb:"0170F175468FB5E6":"0756D8E0774761D2":"0CD3DA020021DC09"
|
||||
|
||||
DES Encrypt OpenSSL Test Vector #16
|
||||
des_encrypt_ecb:"43297FAD38E373FE":"762514B829BF486A":"EA676B2CB7DB2B7A"
|
||||
|
||||
DES Encrypt OpenSSL Test Vector #17
|
||||
des_encrypt_ecb:"07A7137045DA2A16":"3BDD119049372802":"DFD64A815CAF1A0F"
|
||||
|
||||
DES Encrypt OpenSSL Test Vector #18
|
||||
des_encrypt_ecb:"04689104C2FD3B2F":"26955F6835AF609A":"5C513C9C4886C088"
|
||||
|
||||
DES Encrypt OpenSSL Test Vector #19
|
||||
des_encrypt_ecb:"37D06BB516CB7546":"164D5E404F275232":"0A2AEEAE3FF4AB77"
|
||||
|
||||
DES Encrypt OpenSSL Test Vector #20
|
||||
des_encrypt_ecb:"1F08260D1AC2465E":"6B056E18759F5CCA":"EF1BF03E5DFA575A"
|
||||
|
||||
DES Encrypt OpenSSL Test Vector #21
|
||||
des_encrypt_ecb:"584023641ABA6176":"004BD6EF09176062":"88BF0DB6D70DEE56"
|
||||
|
||||
DES Encrypt OpenSSL Test Vector #22
|
||||
des_encrypt_ecb:"025816164629B007":"480D39006EE762F2":"A1F9915541020B56"
|
||||
|
||||
DES Encrypt OpenSSL Test Vector #23
|
||||
des_encrypt_ecb:"49793EBC79B3258F":"437540C8698F3CFA":"6FBF1CAFCFFD0556"
|
||||
|
||||
DES Encrypt OpenSSL Test Vector #24
|
||||
des_encrypt_ecb:"4FB05E1515AB73A7":"072D43A077075292":"2F22E49BAB7CA1AC"
|
||||
|
||||
DES Encrypt OpenSSL Test Vector #25
|
||||
des_encrypt_ecb:"49E95D6D4CA229BF":"02FE55778117F12A":"5A6B612CC26CCE4A"
|
||||
|
||||
DES Encrypt OpenSSL Test Vector #26
|
||||
des_encrypt_ecb:"018310DC409B26D6":"1D9D5C5018F728C2":"5F4C038ED12B2E41"
|
||||
|
||||
DES Encrypt OpenSSL Test Vector #27
|
||||
des_encrypt_ecb:"1C587F1C13924FEF":"305532286D6F295A":"63FAC0D034D9F793"
|
||||
|
||||
DES Encrypt OpenSSL Test Vector #28
|
||||
des_encrypt_ecb:"0101010101010101":"0123456789ABCDEF":"617B3A0CE8F07100"
|
||||
|
||||
DES Encrypt OpenSSL Test Vector #29
|
||||
des_encrypt_ecb:"1F1F1F1F0E0E0E0E":"0123456789ABCDEF":"DB958605F8C8C606"
|
||||
|
||||
DES Encrypt OpenSSL Test Vector #30
|
||||
des_encrypt_ecb:"E0FEE0FEF1FEF1FE":"0123456789ABCDEF":"EDBFD1C66C29CCC7"
|
||||
|
||||
DES Encrypt OpenSSL Test Vector #31
|
||||
des_encrypt_ecb:"0000000000000000":"FFFFFFFFFFFFFFFF":"355550B2150E2451"
|
||||
|
||||
DES Encrypt OpenSSL Test Vector #32
|
||||
des_encrypt_ecb:"FFFFFFFFFFFFFFFF":"0000000000000000":"CAAAAF4DEAF1DBAE"
|
||||
|
||||
DES Encrypt OpenSSL Test Vector #33
|
||||
des_encrypt_ecb:"0123456789ABCDEF":"0000000000000000":"D5D44FF720683D0D"
|
||||
|
||||
DES Encrypt OpenSSL Test Vector #34
|
||||
des_encrypt_ecb:"FEDCBA9876543210":"FFFFFFFFFFFFFFFF":"2A2BB008DF97C2F2"
|
||||
|
||||
DES Decrypt OpenSSL Test Vector #1
|
||||
des_decrypt_ecb:"0000000000000000":"8CA64DE9C1B123A7":"0000000000000000"
|
||||
|
||||
DES Decrypt OpenSSL Test Vector #2
|
||||
des_decrypt_ecb:"FFFFFFFFFFFFFFFF":"7359B2163E4EDC58":"FFFFFFFFFFFFFFFF"
|
||||
|
||||
DES Decrypt OpenSSL Test Vector #3
|
||||
des_decrypt_ecb:"3000000000000000":"958E6E627A05557B":"1000000000000001"
|
||||
|
||||
DES Decrypt OpenSSL Test Vector #4
|
||||
des_decrypt_ecb:"1111111111111111":"F40379AB9E0EC533":"1111111111111111"
|
||||
|
||||
DES Decrypt OpenSSL Test Vector #5
|
||||
des_decrypt_ecb:"0123456789ABCDEF":"17668DFC7292532D":"1111111111111111"
|
||||
|
||||
DES Decrypt OpenSSL Test Vector #6
|
||||
des_decrypt_ecb:"1111111111111111":"8A5AE1F81AB8F2DD":"0123456789ABCDEF"
|
||||
|
||||
DES Decrypt OpenSSL Test Vector #7
|
||||
des_decrypt_ecb:"0000000000000000":"8CA64DE9C1B123A7":"0000000000000000"
|
||||
|
||||
DES Decrypt OpenSSL Test Vector #8
|
||||
des_decrypt_ecb:"FEDCBA9876543210":"ED39D950FA74BCC4":"0123456789ABCDEF"
|
||||
|
||||
DES Decrypt OpenSSL Test Vector #9
|
||||
des_decrypt_ecb:"7CA110454A1A6E57":"690F5B0D9A26939B":"01A1D6D039776742"
|
||||
|
||||
DES Decrypt OpenSSL Test Vector #10
|
||||
des_decrypt_ecb:"0131D9619DC1376E":"7A389D10354BD271":"5CD54CA83DEF57DA"
|
||||
|
||||
DES Decrypt OpenSSL Test Vector #11
|
||||
des_decrypt_ecb:"07A1133E4A0B2686":"868EBB51CAB4599A":"0248D43806F67172"
|
||||
|
||||
DES Decrypt OpenSSL Test Vector #12
|
||||
des_decrypt_ecb:"3849674C2602319E":"7178876E01F19B2A":"51454B582DDF440A"
|
||||
|
||||
DES Decrypt OpenSSL Test Vector #13
|
||||
des_decrypt_ecb:"04B915BA43FEB5B6":"AF37FB421F8C4095":"42FD443059577FA2"
|
||||
|
||||
DES Decrypt OpenSSL Test Vector #14
|
||||
des_decrypt_ecb:"0113B970FD34F2CE":"86A560F10EC6D85B":"059B5E0851CF143A"
|
||||
|
||||
DES Decrypt OpenSSL Test Vector #15
|
||||
des_decrypt_ecb:"0170F175468FB5E6":"0CD3DA020021DC09":"0756D8E0774761D2"
|
||||
|
||||
DES Decrypt OpenSSL Test Vector #16
|
||||
des_decrypt_ecb:"43297FAD38E373FE":"EA676B2CB7DB2B7A":"762514B829BF486A"
|
||||
|
||||
DES Decrypt OpenSSL Test Vector #17
|
||||
des_decrypt_ecb:"07A7137045DA2A16":"DFD64A815CAF1A0F":"3BDD119049372802"
|
||||
|
||||
DES Decrypt OpenSSL Test Vector #18
|
||||
des_decrypt_ecb:"04689104C2FD3B2F":"5C513C9C4886C088":"26955F6835AF609A"
|
||||
|
||||
DES Decrypt OpenSSL Test Vector #19
|
||||
des_decrypt_ecb:"37D06BB516CB7546":"0A2AEEAE3FF4AB77":"164D5E404F275232"
|
||||
|
||||
DES Decrypt OpenSSL Test Vector #20
|
||||
des_decrypt_ecb:"1F08260D1AC2465E":"EF1BF03E5DFA575A":"6B056E18759F5CCA"
|
||||
|
||||
DES Decrypt OpenSSL Test Vector #21
|
||||
des_decrypt_ecb:"584023641ABA6176":"88BF0DB6D70DEE56":"004BD6EF09176062"
|
||||
|
||||
DES Decrypt OpenSSL Test Vector #22
|
||||
des_decrypt_ecb:"025816164629B007":"A1F9915541020B56":"480D39006EE762F2"
|
||||
|
||||
DES Decrypt OpenSSL Test Vector #23
|
||||
des_decrypt_ecb:"49793EBC79B3258F":"6FBF1CAFCFFD0556":"437540C8698F3CFA"
|
||||
|
||||
DES Decrypt OpenSSL Test Vector #24
|
||||
des_decrypt_ecb:"4FB05E1515AB73A7":"2F22E49BAB7CA1AC":"072D43A077075292"
|
||||
|
||||
DES Decrypt OpenSSL Test Vector #25
|
||||
des_decrypt_ecb:"49E95D6D4CA229BF":"5A6B612CC26CCE4A":"02FE55778117F12A"
|
||||
|
||||
DES Decrypt OpenSSL Test Vector #26
|
||||
des_decrypt_ecb:"018310DC409B26D6":"5F4C038ED12B2E41":"1D9D5C5018F728C2"
|
||||
|
||||
DES Decrypt OpenSSL Test Vector #27
|
||||
des_decrypt_ecb:"1C587F1C13924FEF":"63FAC0D034D9F793":"305532286D6F295A"
|
||||
|
||||
DES Decrypt OpenSSL Test Vector #28
|
||||
des_decrypt_ecb:"0101010101010101":"617B3A0CE8F07100":"0123456789ABCDEF"
|
||||
|
||||
DES Decrypt OpenSSL Test Vector #29
|
||||
des_decrypt_ecb:"1F1F1F1F0E0E0E0E":"DB958605F8C8C606":"0123456789ABCDEF"
|
||||
|
||||
DES Decrypt OpenSSL Test Vector #30
|
||||
des_decrypt_ecb:"E0FEE0FEF1FEF1FE":"EDBFD1C66C29CCC7":"0123456789ABCDEF"
|
||||
|
||||
DES Decrypt OpenSSL Test Vector #31
|
||||
des_decrypt_ecb:"0000000000000000":"355550B2150E2451":"FFFFFFFFFFFFFFFF"
|
||||
|
||||
DES Decrypt OpenSSL Test Vector #32
|
||||
des_decrypt_ecb:"FFFFFFFFFFFFFFFF":"CAAAAF4DEAF1DBAE":"0000000000000000"
|
||||
|
||||
DES Decrypt OpenSSL Test Vector #33
|
||||
des_decrypt_ecb:"0123456789ABCDEF":"D5D44FF720683D0D":"0000000000000000"
|
||||
|
||||
DES Decrypt OpenSSL Test Vector #34
|
||||
des_decrypt_ecb:"FEDCBA9876543210":"2A2BB008DF97C2F2":"FFFFFFFFFFFFFFFF"
|
||||
|
||||
DES-CBC Encrypt OpenSSL Test Vector #1
|
||||
des_encrypt_cbc:"0123456789abcdef":"fedcba9876543210":"37363534333231204E6F77206973207468652074696D6520":"ccd173ffab2039f4acd8aefddfd8a1eb468e91157888ba68":0
|
||||
|
||||
DES-CBC Decrypt OpenSSL Test Vector #1
|
||||
des_decrypt_cbc:"0123456789abcdef":"fedcba9876543210":"ccd173ffab2039f4acd8aefddfd8a1eb468e91157888ba68":"37363534333231204E6F77206973207468652074696D6520":0
|
||||
|
||||
3DES-ECB 2Key Encrypt OpenSSL Test Vector #1
|
||||
des3_encrypt_ecb:2:"0000000000000000FFFFFFFFFFFFFFFF":"0000000000000000":"9295B59BB384736E"
|
||||
|
||||
3DES-ECB 2Key Encrypt OpenSSL Test Vector #2
|
||||
des3_encrypt_ecb:2:"FFFFFFFFFFFFFFFF3000000000000000":"FFFFFFFFFFFFFFFF":"199E9D6DF39AA816"
|
||||
|
||||
3DES-ECB 2Key Decrypt OpenSSL Test Vector #1
|
||||
des3_decrypt_ecb:2:"0000000000000000FFFFFFFFFFFFFFFF":"9295B59BB384736E":"0000000000000000"
|
||||
|
||||
3DES-ECB 2Key Decrypt OpenSSL Test Vector #2
|
||||
des3_decrypt_ecb:2:"FFFFFFFFFFFFFFFF3000000000000000":"199E9D6DF39AA816":"FFFFFFFFFFFFFFFF"
|
||||
|
||||
3DES-CBC 3Key Encrypt OpenSSL Test Vector #1
|
||||
des3_encrypt_cbc:3:"0123456789abcdeff1e0d3c2b5a49786fedcba9876543210":"fedcba9876543210":"37363534333231204E6F77206973207468652074696D6520":"3FE301C962AC01D02213763C1CBD4CDC799657C064ECF5D4":0
|
||||
|
||||
3DES-CBC 3Key Decrypt OpenSSL Test Vector #1
|
||||
des3_decrypt_cbc:3:"0123456789abcdeff1e0d3c2b5a49786fedcba9876543210":"fedcba9876543210":"3FE301C962AC01D02213763C1CBD4CDC799657C064ECF5D4":"37363534333231204E6F77206973207468652074696D6520":0
|
||||
|
||||
DES-CBC Encrypt (Invalid input length)
|
||||
des_encrypt_cbc:"0123456789abcdef":"fedcba9876543210":"37363534333231204E6F77206973207468652074696D65":"":MBEDTLS_ERR_DES_INVALID_INPUT_LENGTH
|
||||
|
||||
3DES-CBC 3Key Encrypt (Invalid input length)
|
||||
des3_encrypt_cbc:3:"0123456789abcdeff1e0d3c2b5a49786fedcba9876543210":"fedcba9876543210":"37363534333231204E6F77206973207468652074696D65":"":MBEDTLS_ERR_DES_INVALID_INPUT_LENGTH
|
||||
|
||||
Run through parity bit tests
|
||||
des_key_parity_run:
|
||||
|
||||
DES Selftest
|
||||
des_selftest:
|
||||
280
vendor/mbedtls/tests/suites/test_suite_des.function
vendored
Normal file
280
vendor/mbedtls/tests/suites/test_suite_des.function
vendored
Normal file
@@ -0,0 +1,280 @@
|
||||
/* BEGIN_HEADER */
|
||||
#include "mbedtls/des.h"
|
||||
/* END_HEADER */
|
||||
|
||||
/* BEGIN_DEPENDENCIES
|
||||
* depends_on:MBEDTLS_DES_C
|
||||
* END_DEPENDENCIES
|
||||
*/
|
||||
|
||||
/* BEGIN_CASE */
|
||||
void des_check_weak(data_t *key, int ret)
|
||||
{
|
||||
TEST_ASSERT(mbedtls_des_key_check_weak(key->x) == ret);
|
||||
}
|
||||
/* END_CASE */
|
||||
|
||||
/* BEGIN_CASE */
|
||||
void des_encrypt_ecb(data_t *key_str, data_t *src_str, data_t *dst)
|
||||
{
|
||||
unsigned char output[100];
|
||||
mbedtls_des_context ctx;
|
||||
|
||||
memset(output, 0x00, 100);
|
||||
mbedtls_des_init(&ctx);
|
||||
|
||||
|
||||
TEST_ASSERT(mbedtls_des_setkey_enc(&ctx, key_str->x) == 0);
|
||||
TEST_ASSERT(mbedtls_des_crypt_ecb(&ctx, src_str->x, output) == 0);
|
||||
|
||||
TEST_ASSERT(mbedtls_test_hexcmp(output, dst->x, 8, dst->len) == 0);
|
||||
|
||||
exit:
|
||||
mbedtls_des_free(&ctx);
|
||||
}
|
||||
/* END_CASE */
|
||||
|
||||
/* BEGIN_CASE */
|
||||
void des_decrypt_ecb(data_t *key_str, data_t *src_str, data_t *dst)
|
||||
{
|
||||
unsigned char output[100];
|
||||
mbedtls_des_context ctx;
|
||||
|
||||
memset(output, 0x00, 100);
|
||||
mbedtls_des_init(&ctx);
|
||||
|
||||
|
||||
TEST_ASSERT(mbedtls_des_setkey_dec(&ctx, key_str->x) == 0);
|
||||
TEST_ASSERT(mbedtls_des_crypt_ecb(&ctx, src_str->x, output) == 0);
|
||||
|
||||
TEST_ASSERT(mbedtls_test_hexcmp(output, dst->x, 8, dst->len) == 0);
|
||||
|
||||
exit:
|
||||
mbedtls_des_free(&ctx);
|
||||
}
|
||||
/* END_CASE */
|
||||
|
||||
/* BEGIN_CASE depends_on:MBEDTLS_CIPHER_MODE_CBC */
|
||||
void des_encrypt_cbc(data_t *key_str, data_t *iv_str,
|
||||
data_t *src_str, data_t *dst, int cbc_result)
|
||||
{
|
||||
unsigned char output[100];
|
||||
mbedtls_des_context ctx;
|
||||
|
||||
memset(output, 0x00, 100);
|
||||
mbedtls_des_init(&ctx);
|
||||
|
||||
|
||||
TEST_ASSERT(mbedtls_des_setkey_enc(&ctx, key_str->x) == 0);
|
||||
TEST_ASSERT(mbedtls_des_crypt_cbc(&ctx, MBEDTLS_DES_ENCRYPT, src_str->len, iv_str->x,
|
||||
src_str->x, output) == cbc_result);
|
||||
if (cbc_result == 0) {
|
||||
|
||||
TEST_ASSERT(mbedtls_test_hexcmp(output, dst->x, src_str->len,
|
||||
dst->len) == 0);
|
||||
}
|
||||
|
||||
exit:
|
||||
mbedtls_des_free(&ctx);
|
||||
}
|
||||
/* END_CASE */
|
||||
|
||||
/* BEGIN_CASE depends_on:MBEDTLS_CIPHER_MODE_CBC */
|
||||
void des_decrypt_cbc(data_t *key_str, data_t *iv_str,
|
||||
data_t *src_str, data_t *dst,
|
||||
int cbc_result)
|
||||
{
|
||||
unsigned char output[100];
|
||||
mbedtls_des_context ctx;
|
||||
|
||||
memset(output, 0x00, 100);
|
||||
mbedtls_des_init(&ctx);
|
||||
|
||||
|
||||
TEST_ASSERT(mbedtls_des_setkey_dec(&ctx, key_str->x) == 0);
|
||||
TEST_ASSERT(mbedtls_des_crypt_cbc(&ctx, MBEDTLS_DES_DECRYPT, src_str->len, iv_str->x,
|
||||
src_str->x, output) == cbc_result);
|
||||
if (cbc_result == 0) {
|
||||
|
||||
TEST_ASSERT(mbedtls_test_hexcmp(output, dst->x, src_str->len,
|
||||
dst->len) == 0);
|
||||
}
|
||||
|
||||
exit:
|
||||
mbedtls_des_free(&ctx);
|
||||
}
|
||||
/* END_CASE */
|
||||
|
||||
/* BEGIN_CASE */
|
||||
void des3_encrypt_ecb(int key_count, data_t *key_str,
|
||||
data_t *src_str, data_t *dst)
|
||||
{
|
||||
unsigned char output[100];
|
||||
mbedtls_des3_context ctx;
|
||||
|
||||
memset(output, 0x00, 100);
|
||||
mbedtls_des3_init(&ctx);
|
||||
|
||||
|
||||
if (key_count == 2) {
|
||||
TEST_ASSERT(mbedtls_des3_set2key_enc(&ctx, key_str->x) == 0);
|
||||
} else if (key_count == 3) {
|
||||
TEST_ASSERT(mbedtls_des3_set3key_enc(&ctx, key_str->x) == 0);
|
||||
} else {
|
||||
TEST_ASSERT(0);
|
||||
}
|
||||
|
||||
TEST_ASSERT(mbedtls_des3_crypt_ecb(&ctx, src_str->x, output) == 0);
|
||||
|
||||
TEST_ASSERT(mbedtls_test_hexcmp(output, dst->x, 8, dst->len) == 0);
|
||||
|
||||
exit:
|
||||
mbedtls_des3_free(&ctx);
|
||||
}
|
||||
/* END_CASE */
|
||||
|
||||
/* BEGIN_CASE */
|
||||
void des3_decrypt_ecb(int key_count, data_t *key_str,
|
||||
data_t *src_str, data_t *dst)
|
||||
{
|
||||
unsigned char output[100];
|
||||
mbedtls_des3_context ctx;
|
||||
|
||||
memset(output, 0x00, 100);
|
||||
mbedtls_des3_init(&ctx);
|
||||
|
||||
|
||||
if (key_count == 2) {
|
||||
TEST_ASSERT(mbedtls_des3_set2key_dec(&ctx, key_str->x) == 0);
|
||||
} else if (key_count == 3) {
|
||||
TEST_ASSERT(mbedtls_des3_set3key_dec(&ctx, key_str->x) == 0);
|
||||
} else {
|
||||
TEST_ASSERT(0);
|
||||
}
|
||||
|
||||
TEST_ASSERT(mbedtls_des3_crypt_ecb(&ctx, src_str->x, output) == 0);
|
||||
|
||||
TEST_ASSERT(mbedtls_test_hexcmp(output, dst->x, 8, dst->len) == 0);
|
||||
|
||||
exit:
|
||||
mbedtls_des3_free(&ctx);
|
||||
}
|
||||
/* END_CASE */
|
||||
|
||||
/* BEGIN_CASE depends_on:MBEDTLS_CIPHER_MODE_CBC */
|
||||
void des3_encrypt_cbc(int key_count, data_t *key_str,
|
||||
data_t *iv_str, data_t *src_str,
|
||||
data_t *dst, int cbc_result)
|
||||
{
|
||||
unsigned char output[100];
|
||||
mbedtls_des3_context ctx;
|
||||
|
||||
memset(output, 0x00, 100);
|
||||
mbedtls_des3_init(&ctx);
|
||||
|
||||
|
||||
if (key_count == 2) {
|
||||
TEST_ASSERT(mbedtls_des3_set2key_enc(&ctx, key_str->x) == 0);
|
||||
} else if (key_count == 3) {
|
||||
TEST_ASSERT(mbedtls_des3_set3key_enc(&ctx, key_str->x) == 0);
|
||||
} else {
|
||||
TEST_ASSERT(0);
|
||||
}
|
||||
|
||||
TEST_ASSERT(mbedtls_des3_crypt_cbc(&ctx, MBEDTLS_DES_ENCRYPT, src_str->len, iv_str->x,
|
||||
src_str->x, output) == cbc_result);
|
||||
|
||||
if (cbc_result == 0) {
|
||||
|
||||
TEST_ASSERT(mbedtls_test_hexcmp(output, dst->x,
|
||||
src_str->len, dst->len) == 0);
|
||||
}
|
||||
|
||||
exit:
|
||||
mbedtls_des3_free(&ctx);
|
||||
}
|
||||
/* END_CASE */
|
||||
|
||||
/* BEGIN_CASE depends_on:MBEDTLS_CIPHER_MODE_CBC */
|
||||
void des3_decrypt_cbc(int key_count, data_t *key_str,
|
||||
data_t *iv_str, data_t *src_str,
|
||||
data_t *dst, int cbc_result)
|
||||
{
|
||||
unsigned char output[100];
|
||||
mbedtls_des3_context ctx;
|
||||
|
||||
memset(output, 0x00, 100);
|
||||
mbedtls_des3_init(&ctx);
|
||||
|
||||
|
||||
if (key_count == 2) {
|
||||
TEST_ASSERT(mbedtls_des3_set2key_dec(&ctx, key_str->x) == 0);
|
||||
} else if (key_count == 3) {
|
||||
TEST_ASSERT(mbedtls_des3_set3key_dec(&ctx, key_str->x) == 0);
|
||||
} else {
|
||||
TEST_ASSERT(0);
|
||||
}
|
||||
|
||||
TEST_ASSERT(mbedtls_des3_crypt_cbc(&ctx, MBEDTLS_DES_DECRYPT, src_str->len, iv_str->x,
|
||||
src_str->x, output) == cbc_result);
|
||||
|
||||
if (cbc_result == 0) {
|
||||
|
||||
TEST_ASSERT(mbedtls_test_hexcmp(output, dst->x, src_str->len,
|
||||
dst->len) == 0);
|
||||
}
|
||||
|
||||
exit:
|
||||
mbedtls_des3_free(&ctx);
|
||||
}
|
||||
/* END_CASE */
|
||||
|
||||
/* BEGIN_CASE */
|
||||
void des_key_parity_run()
|
||||
{
|
||||
int i, j, cnt;
|
||||
unsigned char key[MBEDTLS_DES_KEY_SIZE];
|
||||
unsigned int parity;
|
||||
|
||||
memset(key, 0, MBEDTLS_DES_KEY_SIZE);
|
||||
cnt = 0;
|
||||
|
||||
// Iterate through all possible byte values
|
||||
//
|
||||
for (i = 0; i < 32; i++) {
|
||||
for (j = 0; j < 8; j++) {
|
||||
key[j] = cnt++;
|
||||
}
|
||||
|
||||
// Set the key parity according to the table
|
||||
//
|
||||
mbedtls_des_key_set_parity(key);
|
||||
|
||||
// Check the parity with a function
|
||||
//
|
||||
for (j = 0; j < 8; j++) {
|
||||
parity = key[j] ^ (key[j] >> 4);
|
||||
parity = parity ^
|
||||
(parity >> 1) ^
|
||||
(parity >> 2) ^
|
||||
(parity >> 3);
|
||||
parity &= 1;
|
||||
|
||||
if (parity != 1) {
|
||||
TEST_ASSERT(0);
|
||||
}
|
||||
}
|
||||
|
||||
// Check the parity with the table
|
||||
//
|
||||
TEST_ASSERT(mbedtls_des_key_check_key_parity(key) == 0);
|
||||
}
|
||||
}
|
||||
/* END_CASE */
|
||||
|
||||
/* BEGIN_CASE depends_on:MBEDTLS_SELF_TEST */
|
||||
void des_selftest()
|
||||
{
|
||||
TEST_ASSERT(mbedtls_des_self_test(1) == 0);
|
||||
}
|
||||
/* END_CASE */
|
||||
124
vendor/mbedtls/tests/suites/test_suite_dhm.data
vendored
Normal file
124
vendor/mbedtls/tests/suites/test_suite_dhm.data
vendored
Normal file
@@ -0,0 +1,124 @@
|
||||
Diffie-Hellman full exchange: tiny x_size
|
||||
dhm_do_dhm:"12df4d7689dff4c99d9ae57d7":1:"1e32158a35e34d7b619657d6":0
|
||||
|
||||
Diffie-Hellman full exchange: 5-bit, x_size=3
|
||||
dhm_do_dhm:"17":3:"5":0
|
||||
|
||||
Diffie-Hellman full exchange: 5-bit, x_size=2
|
||||
dhm_do_dhm:"17":2:"5":0
|
||||
|
||||
## Repeat this test case and a few similar ones several times. The RNG state
|
||||
## changes, so we get to exercise the code with a few different values.
|
||||
Diffie-Hellman full exchange: 5-bit #1
|
||||
dhm_do_dhm:"17":1:"5":0
|
||||
|
||||
Diffie-Hellman full exchange: 5-bit #2
|
||||
dhm_do_dhm:"17":1:"5":0
|
||||
|
||||
Diffie-Hellman full exchange: 5-bit #3
|
||||
dhm_do_dhm:"17":1:"5":0
|
||||
|
||||
Diffie-Hellman full exchange: 5-bit #4
|
||||
dhm_do_dhm:"17":1:"5":0
|
||||
|
||||
Diffie-Hellman full exchange: 5-bit #5
|
||||
dhm_do_dhm:"17":1:"5":0
|
||||
|
||||
## This is x_size = P_size + 1. Arguably x_size > P_size makes no sense,
|
||||
## but it's the current undocumented behavior to treat it the same as when
|
||||
## x_size = P_size. If this behavior changes in the future, change the expected
|
||||
## return status from 0 to MBEDTLS_ERR_DHM_BAD_INPUT_DATA.
|
||||
Diffie-Hellman full exchange: 97-bit, x_size=14
|
||||
dhm_do_dhm:"12df4d7689dff4c99d9ae57d7":14:"1e32158a35e34d7b619657d6":0
|
||||
|
||||
Diffie-Hellman full exchange: 97-bit #1
|
||||
dhm_do_dhm:"12df4d7689dff4c99d9ae57d7":13:"1e32158a35e34d7b619657d6":0
|
||||
|
||||
Diffie-Hellman full exchange: 97-bit #2
|
||||
dhm_do_dhm:"12df4d7689dff4c99d9ae57d7":13:"1e32158a35e34d7b619657d6":0
|
||||
|
||||
Diffie-Hellman full exchange: 97-bit #3
|
||||
dhm_do_dhm:"12df4d7689dff4c99d9ae57d7":13:"1e32158a35e34d7b619657d6":0
|
||||
|
||||
Diffie-Hellman full exchange: 97-bit #4
|
||||
dhm_do_dhm:"12df4d7689dff4c99d9ae57d7":13:"1e32158a35e34d7b619657d6":0
|
||||
|
||||
Diffie-Hellman full exchange: 97-bit #5
|
||||
dhm_do_dhm:"12df4d7689dff4c99d9ae57d7":13:"1e32158a35e34d7b619657d6":0
|
||||
|
||||
Diffie-Hellman full exchange: 97-bit, x_size=12
|
||||
dhm_do_dhm:"12df4d7689dff4c99d9ae57d7":12:"1e32158a35e34d7b619657d6":0
|
||||
|
||||
Diffie-Hellman full exchange: 97-bit, x_size=11
|
||||
dhm_do_dhm:"12df4d7689dff4c99d9ae57d7":11:"1e32158a35e34d7b619657d6":0
|
||||
|
||||
Diffie-Hellman full exchange: 97-bit, x_size=1 #1
|
||||
dhm_do_dhm:"12df4d7689dff4c99d9ae57d7":1:"1e32158a35e34d7b619657d6":0
|
||||
|
||||
Diffie-Hellman full exchange: 97-bit, x_size=1 #2
|
||||
dhm_do_dhm:"12df4d7689dff4c99d9ae57d7":1:"1e32158a35e34d7b619657d6":0
|
||||
|
||||
Diffie-Hellman full exchange: 97-bit, x_size=1 #3
|
||||
dhm_do_dhm:"12df4d7689dff4c99d9ae57d7":1:"1e32158a35e34d7b619657d6":0
|
||||
|
||||
Diffie-Hellman full exchange: 97-bit, x_size=1 #4
|
||||
dhm_do_dhm:"12df4d7689dff4c99d9ae57d7":1:"1e32158a35e34d7b619657d6":0
|
||||
|
||||
Diffie-Hellman full exchange: 97-bit, x_size=1 #5
|
||||
dhm_do_dhm:"12df4d7689dff4c99d9ae57d7":1:"1e32158a35e34d7b619657d6":0
|
||||
|
||||
Diffie-Hellman full exchange: 286-bit
|
||||
dhm_do_dhm:"301abc09a57b66a953bfcc206a32e9ab56724084e4b47635779ca35fee79ce1060cb4117":36:"15aa1039b4dd361ed1b5b88e52f2919d0cbcb15adbe5fc290dab13b34e7":0
|
||||
|
||||
Diffie-Hellman small modulus
|
||||
dhm_do_dhm:"3":1:"5":MBEDTLS_ERR_DHM_MAKE_PARAMS_FAILED+MBEDTLS_ERR_MPI_BAD_INPUT_DATA
|
||||
|
||||
Diffie-Hellman zero modulus
|
||||
dhm_do_dhm:"0":1:"5":MBEDTLS_ERR_DHM_BAD_INPUT_DATA
|
||||
|
||||
Diffie-Hellman with G=0
|
||||
dhm_do_dhm:"12df4d7689dff4c99d9ae57d7":13:"0":MBEDTLS_ERR_DHM_BAD_INPUT_DATA
|
||||
|
||||
Diffie-Hellman with G=1
|
||||
dhm_do_dhm:"12df4d7689dff4c99d9ae57d7":13:"1":MBEDTLS_ERR_DHM_BAD_INPUT_DATA
|
||||
|
||||
Diffie-Hellman with G=-1
|
||||
dhm_do_dhm:"12df4d7689dff4c99d9ae57d7":13:"-1":MBEDTLS_ERR_DHM_BAD_INPUT_DATA
|
||||
|
||||
Diffie-Hellman with G=P-1
|
||||
dhm_do_dhm:"12df4d7689dff4c99d9ae57d7":13:"12df4d7689dff4c99d9ae57d6":MBEDTLS_ERR_DHM_BAD_INPUT_DATA
|
||||
|
||||
Diffie-Hellman with G=P-2
|
||||
dhm_do_dhm:"12df4d7689dff4c99d9ae57d7":13:"12df4d7689dff4c99d9ae57d5":0
|
||||
|
||||
Diffie-Hellman with G=P
|
||||
dhm_do_dhm:"12df4d7689dff4c99d9ae57d7":13:"12df4d7689dff4c99d9ae57d7":MBEDTLS_ERR_DHM_BAD_INPUT_DATA
|
||||
|
||||
Diffie-Hellman with G=P+1
|
||||
dhm_do_dhm:"12df4d7689dff4c99d9ae57d7":13:"12df4d7689dff4c99d9ae57d8":MBEDTLS_ERR_DHM_BAD_INPUT_DATA
|
||||
|
||||
Diffie-Hellman with G=P+2
|
||||
dhm_do_dhm:"12df4d7689dff4c99d9ae57d7":13:"12df4d7689dff4c99d9ae57d9":0
|
||||
|
||||
Diffie-Hellman: x_size < 0
|
||||
dhm_do_dhm:"12df4d7689dff4c99d9ae57d7":-1:"1e32158a35e34d7b619657d6":MBEDTLS_ERR_DHM_BAD_INPUT_DATA
|
||||
|
||||
Diffie-Hellman MPI_MAX_SIZE modulus
|
||||
dhm_make_public:MBEDTLS_MPI_MAX_SIZE:"5":0
|
||||
|
||||
Diffie-Hellman MPI_MAX_SIZE + 1 modulus
|
||||
dhm_make_public:MBEDTLS_MPI_MAX_SIZE + 1:"5":MBEDTLS_ERR_DHM_MAKE_PUBLIC_FAILED+MBEDTLS_ERR_MPI_BAD_INPUT_DATA
|
||||
|
||||
DH load parameters from PEM file (1024-bit, g=2)
|
||||
depends_on:MBEDTLS_PEM_PARSE_C
|
||||
dhm_file:"../framework/data_files/dhparams.pem":"9e35f430443a09904f3a39a979797d070df53378e79c2438bef4e761f3c714553328589b041c809be1d6c6b5f1fc9f47d3a25443188253a992a56818b37ba9de5a40d362e56eff0be5417474c125c199272c8fe41dea733df6f662c92ae76556e755d10c64e6a50968f67fc6ea73d0dca8569be2ba204e23580d8bca2f4975b3":"02":128
|
||||
|
||||
DH load parameters from PEM file (2048-bit, large g, privateValueLength)
|
||||
depends_on:MBEDTLS_PEM_PARSE_C
|
||||
dhm_file:"../framework/data_files/dh.optlen.pem":"b3126aeaf47153c7d67f403030b292b5bd5a6c9eae1c137af34087fce2a36a578d70c5c560ad2bdb924c4a4dbee20a1671be7103ce87defa76908936803dbeca60c33e1289c1a03ac2c6c4e49405e5902fa0596a1cbaa895cc402d5213ed4a5f1f5ba8b5e1ed3da951a4c475afeb0ca660b7368c38c8e809f382d96ae19e60dc984e61cb42b5dfd723322acf327f9e413cda6400c15c5b2ea1fa34405d83982fba40e6d852da3d91019bf23511314254dc211a90833e5b1798ee52a78198c555644729ad92f060367c74ded37704adfc273a4a33fec821bd2ebd3bc051730e97a4dd14d2b766062592f5eec09d16bb50efebf2cc00dd3e0e3418e60ec84870f7":"800abfe7dc667aa17bcd7c04614bc221a65482ccc04b604602b0e131908a938ea11b48dc515dab7abcbb1e0c7fd66511edc0d86551b7632496e03df94357e1c4ea07a7ce1e381a2fcafdff5f5bf00df828806020e875c00926e4d011f88477a1b01927d73813cad4847c6396b9244621be2b00b63c659253318413443cd244215cd7fd4cbe796e82c6cf70f89cc0c528fb8e344809b31876e7ef739d5160d095c9684188b0c8755c7a468d47f56d6db9ea012924ecb0556fb71312a8d7c93bb2898ea08ee54eeb594548285f06a973cbbe2a0cb02e90f323fe045521f34c68354a6d3e95dbfff1eb64692edc0a44f3d3e408d0e479a541e779a6054259e2d854":256
|
||||
|
||||
DH load parameters from DER file (2048-bit, large g, privateValueLength)
|
||||
dhm_file:"../framework/data_files/dh.optlen.der":"b3126aeaf47153c7d67f403030b292b5bd5a6c9eae1c137af34087fce2a36a578d70c5c560ad2bdb924c4a4dbee20a1671be7103ce87defa76908936803dbeca60c33e1289c1a03ac2c6c4e49405e5902fa0596a1cbaa895cc402d5213ed4a5f1f5ba8b5e1ed3da951a4c475afeb0ca660b7368c38c8e809f382d96ae19e60dc984e61cb42b5dfd723322acf327f9e413cda6400c15c5b2ea1fa34405d83982fba40e6d852da3d91019bf23511314254dc211a90833e5b1798ee52a78198c555644729ad92f060367c74ded37704adfc273a4a33fec821bd2ebd3bc051730e97a4dd14d2b766062592f5eec09d16bb50efebf2cc00dd3e0e3418e60ec84870f7":"800abfe7dc667aa17bcd7c04614bc221a65482ccc04b604602b0e131908a938ea11b48dc515dab7abcbb1e0c7fd66511edc0d86551b7632496e03df94357e1c4ea07a7ce1e381a2fcafdff5f5bf00df828806020e875c00926e4d011f88477a1b01927d73813cad4847c6396b9244621be2b00b63c659253318413443cd244215cd7fd4cbe796e82c6cf70f89cc0c528fb8e344809b31876e7ef739d5160d095c9684188b0c8755c7a468d47f56d6db9ea012924ecb0556fb71312a8d7c93bb2898ea08ee54eeb594548285f06a973cbbe2a0cb02e90f323fe045521f34c68354a6d3e95dbfff1eb64692edc0a44f3d3e408d0e479a541e779a6054259e2d854":256
|
||||
|
||||
Diffie-Hellman selftest
|
||||
dhm_selftest:
|
||||
292
vendor/mbedtls/tests/suites/test_suite_dhm.function
vendored
Normal file
292
vendor/mbedtls/tests/suites/test_suite_dhm.function
vendored
Normal file
@@ -0,0 +1,292 @@
|
||||
/* BEGIN_HEADER */
|
||||
#include "mbedtls/dhm.h"
|
||||
|
||||
static int check_get_value(const mbedtls_dhm_context *ctx,
|
||||
mbedtls_dhm_parameter param,
|
||||
const mbedtls_mpi *expected)
|
||||
{
|
||||
mbedtls_mpi actual;
|
||||
int ok = 0;
|
||||
mbedtls_mpi_init(&actual);
|
||||
|
||||
TEST_ASSERT(mbedtls_dhm_get_value(ctx, param, &actual) == 0);
|
||||
TEST_ASSERT(mbedtls_mpi_cmp_mpi(&actual, expected) == 0);
|
||||
ok = 1;
|
||||
|
||||
exit:
|
||||
mbedtls_mpi_free(&actual);
|
||||
return ok;
|
||||
}
|
||||
|
||||
/* Sanity checks on a Diffie-Hellman parameter: check the length-value
|
||||
* syntax and check that the value is the expected one (taken from the
|
||||
* DHM context by the caller). */
|
||||
static int check_dhm_param_output(const mbedtls_mpi *expected,
|
||||
const unsigned char *buffer,
|
||||
size_t size,
|
||||
size_t *offset)
|
||||
{
|
||||
size_t n;
|
||||
mbedtls_mpi actual;
|
||||
int ok = 0;
|
||||
mbedtls_mpi_init(&actual);
|
||||
|
||||
mbedtls_test_increment_step();
|
||||
|
||||
TEST_ASSERT(size >= *offset + 2);
|
||||
n = (buffer[*offset] << 8) | buffer[*offset + 1];
|
||||
*offset += 2;
|
||||
/* The DHM param output from Mbed TLS has leading zeros stripped, as
|
||||
* permitted but not required by RFC 5246 \S4.4. */
|
||||
TEST_EQUAL(n, mbedtls_mpi_size(expected));
|
||||
TEST_ASSERT(size >= *offset + n);
|
||||
TEST_EQUAL(0, mbedtls_mpi_read_binary(&actual, buffer + *offset, n));
|
||||
TEST_EQUAL(0, mbedtls_mpi_cmp_mpi(expected, &actual));
|
||||
*offset += n;
|
||||
|
||||
ok = 1;
|
||||
exit:
|
||||
mbedtls_mpi_free(&actual);
|
||||
return ok;
|
||||
}
|
||||
|
||||
/* Sanity checks on Diffie-Hellman parameters: syntax, range, and comparison
|
||||
* against the context. */
|
||||
static int check_dhm_params(const mbedtls_dhm_context *ctx,
|
||||
size_t x_size,
|
||||
const unsigned char *ske, size_t ske_len)
|
||||
{
|
||||
size_t offset = 0;
|
||||
|
||||
/* Check that ctx->X and ctx->GX are within range. */
|
||||
TEST_ASSERT(mbedtls_mpi_cmp_int(&ctx->X, 1) > 0);
|
||||
TEST_ASSERT(mbedtls_mpi_cmp_mpi(&ctx->X, &ctx->P) < 0);
|
||||
TEST_ASSERT(mbedtls_mpi_size(&ctx->X) <= x_size);
|
||||
TEST_ASSERT(mbedtls_mpi_cmp_int(&ctx->GX, 1) > 0);
|
||||
TEST_ASSERT(mbedtls_mpi_cmp_mpi(&ctx->GX, &ctx->P) < 0);
|
||||
|
||||
/* Check ske: it must contain P, G and G^X, each prefixed with a
|
||||
* 2-byte size. */
|
||||
if (!check_dhm_param_output(&ctx->P, ske, ske_len, &offset)) {
|
||||
goto exit;
|
||||
}
|
||||
if (!check_dhm_param_output(&ctx->G, ske, ske_len, &offset)) {
|
||||
goto exit;
|
||||
}
|
||||
if (!check_dhm_param_output(&ctx->GX, ske, ske_len, &offset)) {
|
||||
goto exit;
|
||||
}
|
||||
TEST_EQUAL(offset, ske_len);
|
||||
|
||||
return 1;
|
||||
exit:
|
||||
return 0;
|
||||
}
|
||||
|
||||
/* END_HEADER */
|
||||
|
||||
/* BEGIN_DEPENDENCIES
|
||||
* depends_on:MBEDTLS_DHM_C:MBEDTLS_BIGNUM_C
|
||||
* END_DEPENDENCIES
|
||||
*/
|
||||
|
||||
/* BEGIN_CASE */
|
||||
void dhm_do_dhm(char *input_P, int x_size,
|
||||
char *input_G, int result)
|
||||
{
|
||||
mbedtls_dhm_context ctx_srv;
|
||||
mbedtls_dhm_context ctx_cli;
|
||||
unsigned char ske[1000];
|
||||
unsigned char *p = ske;
|
||||
unsigned char pub_cli[1000];
|
||||
unsigned char sec_srv[1000];
|
||||
unsigned char sec_cli[1000];
|
||||
size_t ske_len = 0;
|
||||
size_t pub_cli_len = 0;
|
||||
size_t sec_srv_len;
|
||||
size_t sec_cli_len;
|
||||
int i;
|
||||
mbedtls_test_rnd_pseudo_info rnd_info;
|
||||
|
||||
mbedtls_dhm_init(&ctx_srv);
|
||||
mbedtls_dhm_init(&ctx_cli);
|
||||
memset(ske, 0x00, 1000);
|
||||
memset(pub_cli, 0x00, 1000);
|
||||
memset(sec_srv, 0x00, 1000);
|
||||
memset(sec_cli, 0x00, 1000);
|
||||
memset(&rnd_info, 0x00, sizeof(mbedtls_test_rnd_pseudo_info));
|
||||
|
||||
/*
|
||||
* Set params
|
||||
*/
|
||||
TEST_ASSERT(mbedtls_test_read_mpi(&ctx_srv.P, input_P) == 0);
|
||||
TEST_ASSERT(mbedtls_test_read_mpi(&ctx_srv.G, input_G) == 0);
|
||||
pub_cli_len = mbedtls_mpi_size(&ctx_srv.P);
|
||||
TEST_ASSERT(check_get_value(&ctx_srv, MBEDTLS_DHM_PARAM_P, &ctx_srv.P));
|
||||
TEST_ASSERT(check_get_value(&ctx_srv, MBEDTLS_DHM_PARAM_G, &ctx_srv.G));
|
||||
|
||||
/*
|
||||
* First key exchange
|
||||
*/
|
||||
mbedtls_test_set_step(10);
|
||||
TEST_ASSERT(mbedtls_dhm_make_params(&ctx_srv, x_size, ske, &ske_len,
|
||||
&mbedtls_test_rnd_pseudo_rand,
|
||||
&rnd_info) == result);
|
||||
if (result != 0) {
|
||||
goto exit;
|
||||
}
|
||||
if (!check_dhm_params(&ctx_srv, x_size, ske, ske_len)) {
|
||||
goto exit;
|
||||
}
|
||||
|
||||
ske[ske_len++] = 0;
|
||||
ske[ske_len++] = 0;
|
||||
TEST_ASSERT(mbedtls_dhm_read_params(&ctx_cli, &p, ske + ske_len) == 0);
|
||||
/* The domain parameters must be the same on both side. */
|
||||
TEST_ASSERT(check_get_value(&ctx_cli, MBEDTLS_DHM_PARAM_P, &ctx_srv.P));
|
||||
TEST_ASSERT(check_get_value(&ctx_cli, MBEDTLS_DHM_PARAM_G, &ctx_srv.G));
|
||||
|
||||
TEST_ASSERT(mbedtls_dhm_make_public(&ctx_cli, x_size, pub_cli, pub_cli_len,
|
||||
&mbedtls_test_rnd_pseudo_rand,
|
||||
&rnd_info) == 0);
|
||||
TEST_ASSERT(mbedtls_dhm_read_public(&ctx_srv, pub_cli, pub_cli_len) == 0);
|
||||
|
||||
TEST_ASSERT(mbedtls_dhm_calc_secret(&ctx_srv, sec_srv, sizeof(sec_srv),
|
||||
&sec_srv_len,
|
||||
&mbedtls_test_rnd_pseudo_rand,
|
||||
&rnd_info) == 0);
|
||||
TEST_ASSERT(mbedtls_dhm_calc_secret(&ctx_cli, sec_cli, sizeof(sec_cli),
|
||||
&sec_cli_len,
|
||||
&mbedtls_test_rnd_pseudo_rand,
|
||||
&rnd_info) == 0);
|
||||
|
||||
TEST_ASSERT(sec_srv_len == sec_cli_len);
|
||||
TEST_ASSERT(sec_srv_len != 0);
|
||||
TEST_ASSERT(memcmp(sec_srv, sec_cli, sec_srv_len) == 0);
|
||||
|
||||
/* Internal value checks */
|
||||
TEST_ASSERT(check_get_value(&ctx_cli, MBEDTLS_DHM_PARAM_X, &ctx_cli.X));
|
||||
TEST_ASSERT(check_get_value(&ctx_srv, MBEDTLS_DHM_PARAM_X, &ctx_srv.X));
|
||||
/* Cross-checks */
|
||||
TEST_ASSERT(check_get_value(&ctx_cli, MBEDTLS_DHM_PARAM_GX, &ctx_srv.GY));
|
||||
TEST_ASSERT(check_get_value(&ctx_cli, MBEDTLS_DHM_PARAM_GY, &ctx_srv.GX));
|
||||
TEST_ASSERT(check_get_value(&ctx_cli, MBEDTLS_DHM_PARAM_K, &ctx_srv.K));
|
||||
TEST_ASSERT(check_get_value(&ctx_srv, MBEDTLS_DHM_PARAM_GX, &ctx_cli.GY));
|
||||
TEST_ASSERT(check_get_value(&ctx_srv, MBEDTLS_DHM_PARAM_GY, &ctx_cli.GX));
|
||||
TEST_ASSERT(check_get_value(&ctx_srv, MBEDTLS_DHM_PARAM_K, &ctx_cli.K));
|
||||
|
||||
/* Re-do calc_secret on server a few times to test update of blinding values */
|
||||
for (i = 0; i < 3; i++) {
|
||||
mbedtls_test_set_step(20 + i);
|
||||
sec_srv_len = 1000;
|
||||
TEST_ASSERT(mbedtls_dhm_calc_secret(&ctx_srv, sec_srv,
|
||||
sizeof(sec_srv), &sec_srv_len,
|
||||
&mbedtls_test_rnd_pseudo_rand,
|
||||
&rnd_info) == 0);
|
||||
|
||||
TEST_ASSERT(sec_srv_len == sec_cli_len);
|
||||
TEST_ASSERT(sec_srv_len != 0);
|
||||
TEST_ASSERT(memcmp(sec_srv, sec_cli, sec_srv_len) == 0);
|
||||
}
|
||||
|
||||
/*
|
||||
* Second key exchange to test change of blinding values on server
|
||||
*/
|
||||
p = ske;
|
||||
|
||||
mbedtls_test_set_step(30);
|
||||
TEST_ASSERT(mbedtls_dhm_make_params(&ctx_srv, x_size, ske, &ske_len,
|
||||
&mbedtls_test_rnd_pseudo_rand,
|
||||
&rnd_info) == 0);
|
||||
if (!check_dhm_params(&ctx_srv, x_size, ske, ske_len)) {
|
||||
goto exit;
|
||||
}
|
||||
ske[ske_len++] = 0;
|
||||
ske[ske_len++] = 0;
|
||||
TEST_ASSERT(mbedtls_dhm_read_params(&ctx_cli, &p, ske + ske_len) == 0);
|
||||
|
||||
TEST_ASSERT(mbedtls_dhm_make_public(&ctx_cli, x_size, pub_cli, pub_cli_len,
|
||||
&mbedtls_test_rnd_pseudo_rand,
|
||||
&rnd_info) == 0);
|
||||
TEST_ASSERT(mbedtls_dhm_read_public(&ctx_srv, pub_cli, pub_cli_len) == 0);
|
||||
|
||||
TEST_ASSERT(mbedtls_dhm_calc_secret(&ctx_srv, sec_srv, sizeof(sec_srv),
|
||||
&sec_srv_len,
|
||||
&mbedtls_test_rnd_pseudo_rand,
|
||||
&rnd_info) == 0);
|
||||
TEST_ASSERT(mbedtls_dhm_calc_secret(&ctx_cli, sec_cli, sizeof(sec_cli),
|
||||
&sec_cli_len,
|
||||
&mbedtls_test_rnd_pseudo_rand,
|
||||
&rnd_info) == 0);
|
||||
|
||||
TEST_ASSERT(sec_srv_len == sec_cli_len);
|
||||
TEST_ASSERT(sec_srv_len != 0);
|
||||
TEST_ASSERT(memcmp(sec_srv, sec_cli, sec_srv_len) == 0);
|
||||
|
||||
exit:
|
||||
mbedtls_dhm_free(&ctx_srv);
|
||||
mbedtls_dhm_free(&ctx_cli);
|
||||
}
|
||||
/* END_CASE */
|
||||
|
||||
/* BEGIN_CASE */
|
||||
void dhm_make_public(int P_bytes, char *input_G, int result)
|
||||
{
|
||||
mbedtls_mpi P, G;
|
||||
mbedtls_dhm_context ctx;
|
||||
unsigned char output[MBEDTLS_MPI_MAX_SIZE];
|
||||
|
||||
mbedtls_mpi_init(&P);
|
||||
mbedtls_mpi_init(&G);
|
||||
mbedtls_dhm_init(&ctx);
|
||||
|
||||
TEST_ASSERT(mbedtls_mpi_lset(&P, 1) == 0);
|
||||
TEST_ASSERT(mbedtls_mpi_shift_l(&P, (P_bytes * 8) - 1) == 0);
|
||||
TEST_ASSERT(mbedtls_mpi_set_bit(&P, 0, 1) == 0);
|
||||
|
||||
TEST_ASSERT(mbedtls_test_read_mpi(&G, input_G) == 0);
|
||||
|
||||
TEST_ASSERT(mbedtls_dhm_set_group(&ctx, &P, &G) == 0);
|
||||
TEST_ASSERT(mbedtls_dhm_make_public(&ctx, (int) mbedtls_mpi_size(&P),
|
||||
output, sizeof(output),
|
||||
&mbedtls_test_rnd_pseudo_rand,
|
||||
NULL) == result);
|
||||
|
||||
exit:
|
||||
mbedtls_mpi_free(&P);
|
||||
mbedtls_mpi_free(&G);
|
||||
mbedtls_dhm_free(&ctx);
|
||||
}
|
||||
/* END_CASE */
|
||||
|
||||
/* BEGIN_CASE depends_on:MBEDTLS_FS_IO */
|
||||
void dhm_file(char *filename, char *p, char *g, int len)
|
||||
{
|
||||
mbedtls_dhm_context ctx;
|
||||
mbedtls_mpi P, G;
|
||||
|
||||
mbedtls_dhm_init(&ctx);
|
||||
mbedtls_mpi_init(&P); mbedtls_mpi_init(&G);
|
||||
|
||||
TEST_ASSERT(mbedtls_test_read_mpi(&P, p) == 0);
|
||||
TEST_ASSERT(mbedtls_test_read_mpi(&G, g) == 0);
|
||||
|
||||
TEST_ASSERT(mbedtls_dhm_parse_dhmfile(&ctx, filename) == 0);
|
||||
|
||||
TEST_EQUAL(mbedtls_dhm_get_len(&ctx), (size_t) len);
|
||||
TEST_EQUAL(mbedtls_dhm_get_bitlen(&ctx), mbedtls_mpi_bitlen(&P));
|
||||
TEST_ASSERT(check_get_value(&ctx, MBEDTLS_DHM_PARAM_P, &P));
|
||||
TEST_ASSERT(check_get_value(&ctx, MBEDTLS_DHM_PARAM_G, &G));
|
||||
|
||||
exit:
|
||||
mbedtls_mpi_free(&P); mbedtls_mpi_free(&G);
|
||||
mbedtls_dhm_free(&ctx);
|
||||
}
|
||||
/* END_CASE */
|
||||
|
||||
/* BEGIN_CASE depends_on:MBEDTLS_SELF_TEST */
|
||||
void dhm_selftest()
|
||||
{
|
||||
TEST_ASSERT(mbedtls_dhm_self_test(1) == 0);
|
||||
}
|
||||
/* END_CASE */
|
||||
154
vendor/mbedtls/tests/suites/test_suite_ecdh.data
vendored
Normal file
154
vendor/mbedtls/tests/suites/test_suite_ecdh.data
vendored
Normal file
@@ -0,0 +1,154 @@
|
||||
ECDH - Invalid parameters
|
||||
ecdh_invalid_param:
|
||||
|
||||
ECDH primitive random #1
|
||||
depends_on:MBEDTLS_ECP_DP_SECP192R1_ENABLED
|
||||
ecdh_primitive_random:MBEDTLS_ECP_DP_SECP192R1
|
||||
|
||||
ECDH primitive random #2
|
||||
depends_on:MBEDTLS_ECP_DP_SECP224R1_ENABLED
|
||||
ecdh_primitive_random:MBEDTLS_ECP_DP_SECP224R1
|
||||
|
||||
ECDH primitive random #3
|
||||
depends_on:MBEDTLS_ECP_DP_SECP256R1_ENABLED
|
||||
ecdh_primitive_random:MBEDTLS_ECP_DP_SECP256R1
|
||||
|
||||
ECDH primitive random #4
|
||||
depends_on:MBEDTLS_ECP_DP_SECP384R1_ENABLED
|
||||
ecdh_primitive_random:MBEDTLS_ECP_DP_SECP384R1
|
||||
|
||||
ECDH primitive random #5
|
||||
depends_on:MBEDTLS_ECP_DP_SECP521R1_ENABLED
|
||||
ecdh_primitive_random:MBEDTLS_ECP_DP_SECP521R1
|
||||
|
||||
ECDH primitive rfc 5903 p256
|
||||
depends_on:MBEDTLS_ECP_DP_SECP256R1_ENABLED
|
||||
ecdh_primitive_testvec:MBEDTLS_ECP_DP_SECP256R1:"C88F01F510D9AC3F70A292DAA2316DE544E9AAB8AFE84049C62A9C57862D1433":"DAD0B65394221CF9B051E1FECA5787D098DFE637FC90B9EF945D0C3772581180":"5271A0461CDB8252D61F1C456FA3E59AB1F45B33ACCF5F58389E0577B8990BB3":"C6EF9C5D78AE012A011164ACB397CE2088685D8F06BF9BE0B283AB46476BEE53":"D12DFB5289C8D4F81208B70270398C342296970A0BCCB74C736FC7554494BF63":"56FBF3CA366CC23E8157854C13C58D6AAC23F046ADA30F8353E74F33039872AB":"D6840F6B42F6EDAFD13116E0E12565202FEF8E9ECE7DCE03812464D04B9442DE"
|
||||
|
||||
ECDH primitive rfc 5903 p384
|
||||
depends_on:MBEDTLS_ECP_DP_SECP384R1_ENABLED
|
||||
ecdh_primitive_testvec:MBEDTLS_ECP_DP_SECP384R1:"099F3C7034D4A2C699884D73A375A67F7624EF7C6B3C0F160647B67414DCE655E35B538041E649EE3FAEF896783AB194":"667842D7D180AC2CDE6F74F37551F55755C7645C20EF73E31634FE72B4C55EE6DE3AC808ACB4BDB4C88732AEE95F41AA":"9482ED1FC0EEB9CAFC4984625CCFC23F65032149E0E144ADA024181535A0F38EEB9FCFF3C2C947DAE69B4C634573A81C":"41CB0779B4BDB85D47846725FBEC3C9430FAB46CC8DC5060855CC9BDA0AA2942E0308312916B8ED2960E4BD55A7448FC":"E558DBEF53EECDE3D3FCCFC1AEA08A89A987475D12FD950D83CFA41732BC509D0D1AC43A0336DEF96FDA41D0774A3571":"DCFBEC7AACF3196472169E838430367F66EEBE3C6E70C416DD5F0C68759DD1FFF83FA40142209DFF5EAAD96DB9E6386C":"11187331C279962D93D604243FD592CB9D0A926F422E47187521287E7156C5C4D603135569B9E9D09CF5D4A270F59746"
|
||||
|
||||
ECDH primitive rfc 5903 p521
|
||||
depends_on:MBEDTLS_ECP_DP_SECP521R1_ENABLED
|
||||
ecdh_primitive_testvec:MBEDTLS_ECP_DP_SECP521R1:"0037ADE9319A89F4DABDB3EF411AACCCA5123C61ACAB57B5393DCE47608172A095AA85A30FE1C2952C6771D937BA9777F5957B2639BAB072462F68C27A57382D4A52":"0015417E84DBF28C0AD3C278713349DC7DF153C897A1891BD98BAB4357C9ECBEE1E3BF42E00B8E380AEAE57C2D107564941885942AF5A7F4601723C4195D176CED3E":"017CAE20B6641D2EEB695786D8C946146239D099E18E1D5A514C739D7CB4A10AD8A788015AC405D7799DC75E7B7D5B6CF2261A6A7F1507438BF01BEB6CA3926F9582":"0145BA99A847AF43793FDD0E872E7CDFA16BE30FDC780F97BCCC3F078380201E9C677D600B343757A3BDBF2A3163E4C2F869CCA7458AA4A4EFFC311F5CB151685EB9":"00D0B3975AC4B799F5BEA16D5E13E9AF971D5E9B984C9F39728B5E5739735A219B97C356436ADC6E95BB0352F6BE64A6C2912D4EF2D0433CED2B6171640012D9460F":"015C68226383956E3BD066E797B623C27CE0EAC2F551A10C2C724D9852077B87220B6536C5C408A1D2AEBB8E86D678AE49CB57091F4732296579AB44FCD17F0FC56A":"01144C7D79AE6956BC8EDB8E7C787C4521CB086FA64407F97894E5E6B2D79B04D1427E73CA4BAA240A34786859810C06B3C715A3A8CC3151F2BEE417996D19F3DDEA"
|
||||
|
||||
ECDH exchange #1
|
||||
depends_on:MBEDTLS_ECP_DP_SECP192R1_ENABLED
|
||||
ecdh_exchange:MBEDTLS_ECP_DP_SECP192R1
|
||||
|
||||
ECDH exchange #2
|
||||
depends_on:MBEDTLS_ECP_DP_SECP521R1_ENABLED
|
||||
ecdh_exchange:MBEDTLS_ECP_DP_SECP521R1
|
||||
|
||||
ECDH restartable rfc 5903 p256 restart enabled max_ops=0 (disabled)
|
||||
depends_on:MBEDTLS_ECP_DP_SECP256R1_ENABLED
|
||||
ecdh_restart:MBEDTLS_ECP_DP_SECP256R1:"C88F01F510D9AC3F70A292DAA2316DE544E9AAB8AFE84049C62A9C57862D1433":"C6EF9C5D78AE012A011164ACB397CE2088685D8F06BF9BE0B283AB46476BEE53":"D6840F6B42F6EDAFD13116E0E12565202FEF8E9ECE7DCE03812464D04B9442DE":1:0:0:0
|
||||
|
||||
ECDH restartable rfc 5903 p256 restart enabled max_ops=1
|
||||
depends_on:MBEDTLS_ECP_DP_SECP256R1_ENABLED
|
||||
ecdh_restart:MBEDTLS_ECP_DP_SECP256R1:"C88F01F510D9AC3F70A292DAA2316DE544E9AAB8AFE84049C62A9C57862D1433":"C6EF9C5D78AE012A011164ACB397CE2088685D8F06BF9BE0B283AB46476BEE53":"D6840F6B42F6EDAFD13116E0E12565202FEF8E9ECE7DCE03812464D04B9442DE":1:1:1:10000
|
||||
|
||||
ECDH restartable rfc 5903 p256 restart enabled max_ops=10000
|
||||
depends_on:MBEDTLS_ECP_DP_SECP256R1_ENABLED
|
||||
ecdh_restart:MBEDTLS_ECP_DP_SECP256R1:"C88F01F510D9AC3F70A292DAA2316DE544E9AAB8AFE84049C62A9C57862D1433":"C6EF9C5D78AE012A011164ACB397CE2088685D8F06BF9BE0B283AB46476BEE53":"D6840F6B42F6EDAFD13116E0E12565202FEF8E9ECE7DCE03812464D04B9442DE":1:10000:0:0
|
||||
|
||||
ECDH restartable rfc 5903 p256 restart enabled max_ops=250
|
||||
depends_on:MBEDTLS_ECP_DP_SECP256R1_ENABLED
|
||||
ecdh_restart:MBEDTLS_ECP_DP_SECP256R1:"C88F01F510D9AC3F70A292DAA2316DE544E9AAB8AFE84049C62A9C57862D1433":"C6EF9C5D78AE012A011164ACB397CE2088685D8F06BF9BE0B283AB46476BEE53":"D6840F6B42F6EDAFD13116E0E12565202FEF8E9ECE7DCE03812464D04B9442DE":1:250:2:32
|
||||
|
||||
ECDH restartable rfc 5903 p256 restart disabled max_ops=0 (disabled)
|
||||
depends_on:MBEDTLS_ECP_DP_SECP256R1_ENABLED
|
||||
ecdh_restart:MBEDTLS_ECP_DP_SECP256R1:"C88F01F510D9AC3F70A292DAA2316DE544E9AAB8AFE84049C62A9C57862D1433":"C6EF9C5D78AE012A011164ACB397CE2088685D8F06BF9BE0B283AB46476BEE53":"D6840F6B42F6EDAFD13116E0E12565202FEF8E9ECE7DCE03812464D04B9442DE":0:0:0:0
|
||||
|
||||
ECDH restartable rfc 5903 p256 restart disabled max_ops=1
|
||||
depends_on:MBEDTLS_ECP_DP_SECP256R1_ENABLED
|
||||
ecdh_restart:MBEDTLS_ECP_DP_SECP256R1:"C88F01F510D9AC3F70A292DAA2316DE544E9AAB8AFE84049C62A9C57862D1433":"C6EF9C5D78AE012A011164ACB397CE2088685D8F06BF9BE0B283AB46476BEE53":"D6840F6B42F6EDAFD13116E0E12565202FEF8E9ECE7DCE03812464D04B9442DE":0:1:0:0
|
||||
|
||||
ECDH restartable rfc 5903 p256 restart disabled max_ops=10000
|
||||
depends_on:MBEDTLS_ECP_DP_SECP256R1_ENABLED
|
||||
ecdh_restart:MBEDTLS_ECP_DP_SECP256R1:"C88F01F510D9AC3F70A292DAA2316DE544E9AAB8AFE84049C62A9C57862D1433":"C6EF9C5D78AE012A011164ACB397CE2088685D8F06BF9BE0B283AB46476BEE53":"D6840F6B42F6EDAFD13116E0E12565202FEF8E9ECE7DCE03812464D04B9442DE":0:10000:0:0
|
||||
|
||||
ECDH restartable rfc 5903 p256 restart disabled max_ops=250
|
||||
depends_on:MBEDTLS_ECP_DP_SECP256R1_ENABLED
|
||||
ecdh_restart:MBEDTLS_ECP_DP_SECP256R1:"C88F01F510D9AC3F70A292DAA2316DE544E9AAB8AFE84049C62A9C57862D1433":"C6EF9C5D78AE012A011164ACB397CE2088685D8F06BF9BE0B283AB46476BEE53":"D6840F6B42F6EDAFD13116E0E12565202FEF8E9ECE7DCE03812464D04B9442DE":0:250:0:0
|
||||
|
||||
ECDH calc_secret: ours first, SECP256R1 (RFC 5903)
|
||||
depends_on:MBEDTLS_ECP_DP_SECP256R1_ENABLED
|
||||
ecdh_exchange_calc_secret:MBEDTLS_ECP_DP_SECP256R1:"c6ef9c5d78ae012a011164acb397ce2088685d8f06bf9be0b283ab46476bee53":"04dad0b65394221cf9b051e1feca5787d098dfe637fc90b9ef945d0c37725811805271a0461cdb8252d61f1c456fa3e59ab1f45b33accf5f58389e0577b8990bb3":0:"d6840f6b42f6edafd13116e0e12565202fef8e9ece7dce03812464d04b9442de"
|
||||
|
||||
ECDH calc_secret: theirs first, SECP256R1 (RFC 5903)
|
||||
depends_on:MBEDTLS_ECP_DP_SECP256R1_ENABLED
|
||||
ecdh_exchange_calc_secret:MBEDTLS_ECP_DP_SECP256R1:"c6ef9c5d78ae012a011164acb397ce2088685d8f06bf9be0b283ab46476bee53":"04dad0b65394221cf9b051e1feca5787d098dfe637fc90b9ef945d0c37725811805271a0461cdb8252d61f1c456fa3e59ab1f45b33accf5f58389e0577b8990bb3":1:"d6840f6b42f6edafd13116e0e12565202fef8e9ece7dce03812464d04b9442de"
|
||||
|
||||
# see generating script in previous commit message
|
||||
ECDH calc_secret: leading zero, SECP256R1
|
||||
depends_on:MBEDTLS_ECP_DP_SECP256R1_ENABLED
|
||||
ecdh_exchange_calc_secret:MBEDTLS_ECP_DP_SECP256R1:"800000000000000000000000000000000000000000000000000000000000000e":"046b17d1f2e12c4247f8bce6e563a440f277037d812deb33a0f4a13945d898c2964fe342e2fe1a7f9b8ee7eb4a7c0f9e162bce33576b315ececbb6406837bf51f5":0:"0054fe92ec56ef5ad8bf4d9c46d2ca773af76c2e8c8b00e20ab772cf8b34348f"
|
||||
|
||||
# see generating script in previous commit message
|
||||
ECDH calc_secret: leading zero, SECP521R1
|
||||
depends_on:MBEDTLS_ECP_DP_SECP521R1_ENABLED
|
||||
ecdh_exchange_calc_secret:MBEDTLS_ECP_DP_SECP521R1:"010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000":"0400c6858e06b70404e9cd9e3ecb662395b4429c648139053fb521f828af606b4d3dbaa14b5e77efe75928fe1dc127a2ffa8de3348b3c1856a429bf97e7e31c2e5bd66011839296a789a3bc0045c8a5fb42c7d1bd998f54449579b446817afbd17273e662c97ee72995ef42640c550b9013fad0761353c7086a272c24088be94769fd16650":0:"002da7db02840f023a36e1fffeaee16d3c47bb435bec6a231d4aab1ec5412f56fb90fcc4eaab9fd8571084cb9da252466c052d21913ce0fda47e61829972ce8f9a17"
|
||||
|
||||
ecdh calc_secret: ours first (Alice), curve25519 (rfc 7748)
|
||||
depends_on:MBEDTLS_ECP_DP_CURVE25519_ENABLED
|
||||
ecdh_exchange_calc_secret:MBEDTLS_ECP_DP_CURVE25519:"77076d0a7318a57d3c16c17251b26645df4c2f87ebc0992ab177fba51db92c2a":"de9edb7d7b7dc1b4d35b61c2ece435373f8343c85b78674dadfc7e146f882b4f":0:"4a5d9d5ba4ce2de1728e3bf480350f25e07e21c947d19e3376f09b3c1e161742"
|
||||
|
||||
ecdh calc_secret: theirs first (Alice), curve25519 (rfc 7748)
|
||||
depends_on:MBEDTLS_ECP_DP_CURVE25519_ENABLED
|
||||
ecdh_exchange_calc_secret:MBEDTLS_ECP_DP_CURVE25519:"77076d0a7318a57d3c16c17251b26645df4c2f87ebc0992ab177fba51db92c2a":"de9edb7d7b7dc1b4d35b61c2ece435373f8343c85b78674dadfc7e146f882b4f":1:"4a5d9d5ba4ce2de1728e3bf480350f25e07e21c947d19e3376f09b3c1e161742"
|
||||
|
||||
ecdh calc_secret: ours first (Bob), curve25519 (rfc 7748)
|
||||
depends_on:MBEDTLS_ECP_DP_CURVE25519_ENABLED
|
||||
ecdh_exchange_calc_secret:MBEDTLS_ECP_DP_CURVE25519:"5dab087e624a8a4b79e17f8b83800ee66f3bb1292618b6fd1c2f8b27ff88e0eb":"8520f0098930a754748b7ddcb43ef75a0dbf3a0d26381af4eba4a98eaa9b4e6a":0:"4a5d9d5ba4ce2de1728e3bf480350f25e07e21c947d19e3376f09b3c1e161742"
|
||||
|
||||
# see generating script in previous commit message
|
||||
ecdh calc_secret: MSB zero, curve25519
|
||||
depends_on:MBEDTLS_ECP_DP_CURVE25519_ENABLED
|
||||
ecdh_exchange_calc_secret:MBEDTLS_ECP_DP_CURVE25519:"8813000000000000000000000000000000000000000000000000000000000040":"0900000000000000000000000000000000000000000000000000000000000000":0:"9ec15224edbe326c5b40fa30311421f1fb309fdd0fcaf472b5d0ad2067b7db00"
|
||||
|
||||
# see generating script in previous commit message
|
||||
ecdh calc_secret: MSB zero, curve448
|
||||
depends_on:MBEDTLS_ECP_DP_CURVE448_ENABLED
|
||||
ecdh_exchange_calc_secret:MBEDTLS_ECP_DP_CURVE448:"d805000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000080":"0500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000":0:"517b6be2c2edd157319082d4ddc688add71297284b6da74b050170035d764c19b8a14da4600715b18d8a3320a8e18a1d80fc9e6f7ea85600"
|
||||
|
||||
ECDH context re-use: secp256r1
|
||||
depends_on:MBEDTLS_ECP_DP_SECP256R1_ENABLED
|
||||
ecdh_context_reuse:MBEDTLS_ECP_DP_SECP256R1:"8000000000000000000000000000000000000000000000000000000000000000":"046b17d1f2e12c4247f8bce6e563a440f277037d812deb33a0f4a13945d898c2964fe342e2fe1a7f9b8ee7eb4a7c0f9e162bce33576b315ececbb6406837bf51f5":"77b20a912e6b23135066e911891524bc4efe3560e3e92350b52dec8f375f2b54":"047cf27b188d034f7e8a52380304b51ac3c08969e277f21b35a60b48fc4766997807775510db8ed040293d9ac69f7430dbba7dade63ce982299e04b79d227873d1":"0b197a2e1e67a44b5afb62de48adde6400b60867487cab5739912513c420924a"
|
||||
|
||||
ECDH context re-use: secp521r1
|
||||
depends_on:MBEDTLS_ECP_DP_SECP521R1_ENABLED
|
||||
ecdh_context_reuse:MBEDTLS_ECP_DP_SECP521R1:"010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000":"0400c6858e06b70404e9cd9e3ecb662395b4429c648139053fb521f828af606b4d3dbaa14b5e77efe75928fe1dc127a2ffa8de3348b3c1856a429bf97e7e31c2e5bd66011839296a789a3bc0045c8a5fb42c7d1bd998f54449579b446817afbd17273e662c97ee72995ef42640c550b9013fad0761353c7086a272c24088be94769fd16650":"002da7db02840f023a36e1fffeaee16d3c47bb435bec6a231d4aab1ec5412f56fb90fcc4eaab9fd8571084cb9da252466c052d21913ce0fda47e61829972ce8f9a17":"0400433c219024277e7e682fcb288148c282747403279b1ccc06352c6e5505d769be97b3b204da6ef55507aa104a3a35c5af41cf2fa364d60fd967f43e3933ba6d783d00f4bb8cc7f86db26700a7f3eceeeed3f0b5c6b5107c4da97740ab21a29906c42dbbb3e377de9f251f6b93937fa99a3248f4eafcbe95edc0f4f71be356d661f41b02":"0033ffb964e05d5f6799c7865c906e2a0bd0c9b131eef6bf6453c960bca9bf06dea4650bd0df069416992b17027d972d1c60830492593fc3431582e051426b4c3f67"
|
||||
|
||||
ECDH context re-use: x25519
|
||||
depends_on:MBEDTLS_ECP_DP_CURVE25519_ENABLED
|
||||
ecdh_context_reuse:MBEDTLS_ECP_DP_CURVE25519:"0000000000000000000000000000000000000000000000000000000000000040":"0900000000000000000000000000000000000000000000000000000000000000":"2fe57da347cd62431528daac5fbb290730fff684afc4cfc2ed90995f58cb3b74":"fb4e68dd9c46ae5c5c0b351eed5c3f8f1471157d680c75d9b7f17318d542d320":"9d8e35e77dfa6c16ed6df587251ee0d6379bd2556344aecf8f85d83fb6fa6476"
|
||||
|
||||
ECDH context re-use: x448
|
||||
depends_on:MBEDTLS_ECP_DP_CURVE448_ENABLED
|
||||
ecdh_context_reuse:MBEDTLS_ECP_DP_CURVE448:"0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000080":"0500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000":"e9b820a44dba3bc569bee7214b62b09ee239b50978a7a1c69a9ade46858cc37c48eb03fd88c289badd708fc635c7d863cc40e4dfdd6d5d40":"b63c741cbca4327d0808125a25f0e82571ed00daf14737bfc16f261666763c5fd7831e51fbbe9aaccc5cbdd86546ef9ad4e3ca5722329163":"b23511da3c119e32b7b146122b59d1f122f22008f02715326e62d6ca162b4f20188a95a52dd9e40cb5b729f1f153da0d51c3acfc4c81944c"
|
||||
|
||||
ECDH get_params with mismatched groups: our BP256R1, their SECP256R1
|
||||
depends_on:MBEDTLS_ECP_DP_SECP256R1_ENABLED:MBEDTLS_ECP_DP_BP256R1_ENABLED
|
||||
ecdh_exchange_get_params_fail:MBEDTLS_ECP_DP_BP256R1:"1234567812345678123456781234567812345678123456781234567812345678":MBEDTLS_ECP_DP_SECP256R1:"04dad0b65394221cf9b051e1feca5787d098dfe637fc90b9ef945d0c37725811805271a0461cdb8252d61f1c456fa3e59ab1f45b33accf5f58389e0577b8990bb3":0:MBEDTLS_ERR_ECP_BAD_INPUT_DATA
|
||||
|
||||
ECDH get_params with mismatched groups: their SECP256R1, our BP256R1
|
||||
depends_on:MBEDTLS_ECP_DP_SECP256R1_ENABLED:MBEDTLS_ECP_DP_BP256R1_ENABLED
|
||||
ecdh_exchange_get_params_fail:MBEDTLS_ECP_DP_BP256R1:"1234567812345678123456781234567812345678123456781234567812345678":MBEDTLS_ECP_DP_SECP256R1:"04dad0b65394221cf9b051e1feca5787d098dfe637fc90b9ef945d0c37725811805271a0461cdb8252d61f1c456fa3e59ab1f45b33accf5f58389e0577b8990bb3":1:MBEDTLS_ERR_ECP_BAD_INPUT_DATA
|
||||
|
||||
Context get ECP Group #1
|
||||
depends_on:MBEDTLS_ECP_DP_SECP256R1_ENABLED
|
||||
ecdh_context_grp:MBEDTLS_ECP_DP_SECP256R1
|
||||
|
||||
Context get ECP Group #2
|
||||
depends_on:MBEDTLS_ECP_DP_SECP384R1_ENABLED
|
||||
ecdh_primitive_random:MBEDTLS_ECP_DP_SECP384R1
|
||||
|
||||
Context get ECP Group #3
|
||||
depends_on:MBEDTLS_ECP_DP_SECP521R1_ENABLED
|
||||
ecdh_primitive_random:MBEDTLS_ECP_DP_SECP521R1
|
||||
|
||||
Context get ECP Group #4
|
||||
depends_on:MBEDTLS_ECP_DP_CURVE448_ENABLED
|
||||
ecdh_primitive_random:MBEDTLS_ECP_DP_CURVE448
|
||||
590
vendor/mbedtls/tests/suites/test_suite_ecdh.function
vendored
Normal file
590
vendor/mbedtls/tests/suites/test_suite_ecdh.function
vendored
Normal file
@@ -0,0 +1,590 @@
|
||||
/* BEGIN_HEADER */
|
||||
#include "mbedtls/ecdh.h"
|
||||
|
||||
static int load_public_key(int grp_id, data_t *point,
|
||||
mbedtls_ecp_keypair *ecp)
|
||||
{
|
||||
int ok = 0;
|
||||
TEST_ASSERT(mbedtls_ecp_group_load(&ecp->grp, grp_id) == 0);
|
||||
TEST_ASSERT(mbedtls_ecp_point_read_binary(&ecp->grp,
|
||||
&ecp->Q,
|
||||
point->x,
|
||||
point->len) == 0);
|
||||
TEST_ASSERT(mbedtls_ecp_check_pubkey(&ecp->grp,
|
||||
&ecp->Q) == 0);
|
||||
ok = 1;
|
||||
exit:
|
||||
return ok;
|
||||
}
|
||||
|
||||
static int load_private_key(int grp_id, data_t *private_key,
|
||||
mbedtls_ecp_keypair *ecp,
|
||||
mbedtls_test_rnd_pseudo_info *rnd_info)
|
||||
{
|
||||
int ok = 0;
|
||||
TEST_ASSERT(mbedtls_ecp_read_key(grp_id, ecp,
|
||||
private_key->x,
|
||||
private_key->len) == 0);
|
||||
TEST_ASSERT(mbedtls_ecp_check_privkey(&ecp->grp, &ecp->d) == 0);
|
||||
/* Calculate the public key from the private key. */
|
||||
TEST_ASSERT(mbedtls_ecp_mul(&ecp->grp, &ecp->Q, &ecp->d,
|
||||
&ecp->grp.G,
|
||||
&mbedtls_test_rnd_pseudo_rand,
|
||||
rnd_info) == 0);
|
||||
ok = 1;
|
||||
exit:
|
||||
return ok;
|
||||
}
|
||||
|
||||
/* END_HEADER */
|
||||
|
||||
/* BEGIN_DEPENDENCIES
|
||||
* depends_on:MBEDTLS_ECDH_C
|
||||
* END_DEPENDENCIES
|
||||
*/
|
||||
|
||||
/* BEGIN_CASE */
|
||||
void ecdh_invalid_param()
|
||||
{
|
||||
mbedtls_ecdh_context ctx;
|
||||
mbedtls_ecp_keypair kp;
|
||||
int invalid_side = 42;
|
||||
|
||||
mbedtls_ecdh_init(&ctx);
|
||||
mbedtls_ecp_keypair_init(&kp);
|
||||
|
||||
TEST_EQUAL(MBEDTLS_ERR_ECP_BAD_INPUT_DATA,
|
||||
mbedtls_ecdh_get_params(&ctx, &kp,
|
||||
invalid_side));
|
||||
|
||||
exit:
|
||||
return;
|
||||
}
|
||||
/* END_CASE */
|
||||
|
||||
/* BEGIN_CASE */
|
||||
void ecdh_primitive_random(int id)
|
||||
{
|
||||
mbedtls_ecp_group grp;
|
||||
mbedtls_ecp_point qA, qB;
|
||||
mbedtls_mpi dA, dB, zA, zB;
|
||||
mbedtls_test_rnd_pseudo_info rnd_info;
|
||||
|
||||
mbedtls_ecp_group_init(&grp);
|
||||
mbedtls_ecp_point_init(&qA); mbedtls_ecp_point_init(&qB);
|
||||
mbedtls_mpi_init(&dA); mbedtls_mpi_init(&dB);
|
||||
mbedtls_mpi_init(&zA); mbedtls_mpi_init(&zB);
|
||||
memset(&rnd_info, 0x00, sizeof(mbedtls_test_rnd_pseudo_info));
|
||||
|
||||
TEST_ASSERT(mbedtls_ecp_group_load(&grp, id) == 0);
|
||||
|
||||
TEST_ASSERT(mbedtls_ecdh_gen_public(&grp, &dA, &qA,
|
||||
&mbedtls_test_rnd_pseudo_rand,
|
||||
&rnd_info) == 0);
|
||||
TEST_ASSERT(mbedtls_ecdh_gen_public(&grp, &dB, &qB,
|
||||
&mbedtls_test_rnd_pseudo_rand,
|
||||
&rnd_info) == 0);
|
||||
TEST_ASSERT(mbedtls_ecdh_compute_shared(&grp, &zA, &qB, &dA,
|
||||
&mbedtls_test_rnd_pseudo_rand,
|
||||
&rnd_info) == 0);
|
||||
TEST_ASSERT(mbedtls_ecdh_compute_shared(&grp, &zB, &qA, &dB,
|
||||
&mbedtls_test_rnd_pseudo_rand,
|
||||
&rnd_info) == 0);
|
||||
|
||||
TEST_ASSERT(mbedtls_mpi_cmp_mpi(&zA, &zB) == 0);
|
||||
|
||||
exit:
|
||||
mbedtls_ecp_group_free(&grp);
|
||||
mbedtls_ecp_point_free(&qA); mbedtls_ecp_point_free(&qB);
|
||||
mbedtls_mpi_free(&dA); mbedtls_mpi_free(&dB);
|
||||
mbedtls_mpi_free(&zA); mbedtls_mpi_free(&zB);
|
||||
}
|
||||
/* END_CASE */
|
||||
|
||||
/* BEGIN_CASE */
|
||||
void ecdh_primitive_testvec(int id, data_t *rnd_buf_A, char *xA_str,
|
||||
char *yA_str, data_t *rnd_buf_B,
|
||||
char *xB_str, char *yB_str, char *z_str)
|
||||
{
|
||||
mbedtls_ecp_group grp;
|
||||
mbedtls_ecp_point qA, qB;
|
||||
mbedtls_mpi dA, dB, zA, zB, check;
|
||||
mbedtls_test_rnd_buf_info rnd_info_A, rnd_info_B;
|
||||
mbedtls_test_rnd_pseudo_info rnd_info;
|
||||
|
||||
mbedtls_ecp_group_init(&grp);
|
||||
mbedtls_ecp_point_init(&qA); mbedtls_ecp_point_init(&qB);
|
||||
mbedtls_mpi_init(&dA); mbedtls_mpi_init(&dB);
|
||||
mbedtls_mpi_init(&zA); mbedtls_mpi_init(&zB); mbedtls_mpi_init(&check);
|
||||
memset(&rnd_info, 0x00, sizeof(mbedtls_test_rnd_pseudo_info));
|
||||
|
||||
TEST_ASSERT(mbedtls_ecp_group_load(&grp, id) == 0);
|
||||
|
||||
rnd_info_A.buf = rnd_buf_A->x;
|
||||
rnd_info_A.length = rnd_buf_A->len;
|
||||
rnd_info_A.fallback_f_rng = mbedtls_test_rnd_std_rand;
|
||||
rnd_info_A.fallback_p_rng = NULL;
|
||||
|
||||
/* Fix rnd_buf_A->x by shifting it left if necessary */
|
||||
if (grp.nbits % 8 != 0) {
|
||||
unsigned char shift = 8 - (grp.nbits % 8);
|
||||
size_t i;
|
||||
|
||||
for (i = 0; i < rnd_info_A.length - 1; i++) {
|
||||
rnd_buf_A->x[i] = rnd_buf_A->x[i] << shift
|
||||
| rnd_buf_A->x[i+1] >> (8 - shift);
|
||||
}
|
||||
|
||||
rnd_buf_A->x[rnd_info_A.length-1] <<= shift;
|
||||
}
|
||||
|
||||
rnd_info_B.buf = rnd_buf_B->x;
|
||||
rnd_info_B.length = rnd_buf_B->len;
|
||||
rnd_info_B.fallback_f_rng = mbedtls_test_rnd_std_rand;
|
||||
rnd_info_B.fallback_p_rng = NULL;
|
||||
|
||||
/* Fix rnd_buf_B->x by shifting it left if necessary */
|
||||
if (grp.nbits % 8 != 0) {
|
||||
unsigned char shift = 8 - (grp.nbits % 8);
|
||||
size_t i;
|
||||
|
||||
for (i = 0; i < rnd_info_B.length - 1; i++) {
|
||||
rnd_buf_B->x[i] = rnd_buf_B->x[i] << shift
|
||||
| rnd_buf_B->x[i+1] >> (8 - shift);
|
||||
}
|
||||
|
||||
rnd_buf_B->x[rnd_info_B.length-1] <<= shift;
|
||||
}
|
||||
|
||||
TEST_ASSERT(mbedtls_ecdh_gen_public(&grp, &dA, &qA,
|
||||
mbedtls_test_rnd_buffer_rand,
|
||||
&rnd_info_A) == 0);
|
||||
TEST_ASSERT(!mbedtls_ecp_is_zero(&qA));
|
||||
TEST_ASSERT(mbedtls_test_read_mpi(&check, xA_str) == 0);
|
||||
TEST_ASSERT(mbedtls_mpi_cmp_mpi(&qA.X, &check) == 0);
|
||||
TEST_ASSERT(mbedtls_test_read_mpi(&check, yA_str) == 0);
|
||||
TEST_ASSERT(mbedtls_mpi_cmp_mpi(&qA.Y, &check) == 0);
|
||||
|
||||
TEST_ASSERT(mbedtls_ecdh_gen_public(&grp, &dB, &qB,
|
||||
mbedtls_test_rnd_buffer_rand,
|
||||
&rnd_info_B) == 0);
|
||||
TEST_ASSERT(!mbedtls_ecp_is_zero(&qB));
|
||||
TEST_ASSERT(mbedtls_test_read_mpi(&check, xB_str) == 0);
|
||||
TEST_ASSERT(mbedtls_mpi_cmp_mpi(&qB.X, &check) == 0);
|
||||
TEST_ASSERT(mbedtls_test_read_mpi(&check, yB_str) == 0);
|
||||
TEST_ASSERT(mbedtls_mpi_cmp_mpi(&qB.Y, &check) == 0);
|
||||
|
||||
TEST_ASSERT(mbedtls_test_read_mpi(&check, z_str) == 0);
|
||||
TEST_ASSERT(mbedtls_ecdh_compute_shared(&grp, &zA, &qB, &dA,
|
||||
&mbedtls_test_rnd_pseudo_rand,
|
||||
&rnd_info) == 0);
|
||||
TEST_ASSERT(mbedtls_mpi_cmp_mpi(&zA, &check) == 0);
|
||||
TEST_ASSERT(mbedtls_ecdh_compute_shared(&grp, &zB, &qA, &dB,
|
||||
&mbedtls_test_rnd_pseudo_rand,
|
||||
&rnd_info) == 0);
|
||||
TEST_ASSERT(mbedtls_mpi_cmp_mpi(&zB, &check) == 0);
|
||||
|
||||
exit:
|
||||
mbedtls_ecp_group_free(&grp);
|
||||
mbedtls_ecp_point_free(&qA); mbedtls_ecp_point_free(&qB);
|
||||
mbedtls_mpi_free(&dA); mbedtls_mpi_free(&dB);
|
||||
mbedtls_mpi_free(&zA); mbedtls_mpi_free(&zB); mbedtls_mpi_free(&check);
|
||||
}
|
||||
/* END_CASE */
|
||||
|
||||
/* BEGIN_CASE */
|
||||
void ecdh_exchange(int id)
|
||||
{
|
||||
mbedtls_ecdh_context srv, cli;
|
||||
unsigned char buf[1000];
|
||||
const unsigned char *vbuf;
|
||||
size_t len;
|
||||
mbedtls_test_rnd_pseudo_info rnd_info;
|
||||
unsigned char res_buf[1000];
|
||||
size_t res_len;
|
||||
|
||||
mbedtls_ecdh_init(&srv);
|
||||
mbedtls_ecdh_init(&cli);
|
||||
memset(&rnd_info, 0x00, sizeof(mbedtls_test_rnd_pseudo_info));
|
||||
|
||||
TEST_ASSERT(mbedtls_ecdh_setup(&srv, id) == 0);
|
||||
|
||||
memset(buf, 0x00, sizeof(buf)); vbuf = buf;
|
||||
TEST_ASSERT(mbedtls_ecdh_make_params(&srv, &len, buf, 1000,
|
||||
&mbedtls_test_rnd_pseudo_rand,
|
||||
&rnd_info) == 0);
|
||||
TEST_ASSERT(mbedtls_ecdh_read_params(&cli, &vbuf, buf + len) == 0);
|
||||
|
||||
memset(buf, 0x00, sizeof(buf));
|
||||
TEST_ASSERT(mbedtls_ecdh_make_public(&cli, &len, buf, 1000,
|
||||
&mbedtls_test_rnd_pseudo_rand,
|
||||
&rnd_info) == 0);
|
||||
TEST_ASSERT(mbedtls_ecdh_read_public(&srv, buf, len) == 0);
|
||||
|
||||
TEST_ASSERT(mbedtls_ecdh_calc_secret(&srv, &len, buf, 1000,
|
||||
&mbedtls_test_rnd_pseudo_rand,
|
||||
&rnd_info) == 0);
|
||||
TEST_ASSERT(mbedtls_ecdh_calc_secret(&cli, &res_len, res_buf, 1000,
|
||||
&mbedtls_test_rnd_pseudo_rand,
|
||||
&rnd_info) == 0);
|
||||
TEST_ASSERT(len == res_len);
|
||||
TEST_ASSERT(memcmp(buf, res_buf, len) == 0);
|
||||
|
||||
exit:
|
||||
mbedtls_ecdh_free(&srv);
|
||||
mbedtls_ecdh_free(&cli);
|
||||
}
|
||||
/* END_CASE */
|
||||
|
||||
/* BEGIN_CASE depends_on:MBEDTLS_ECP_RESTARTABLE */
|
||||
void ecdh_restart(int id, data_t *dA, data_t *dB, data_t *z,
|
||||
int enable, int max_ops, int min_restart, int max_restart)
|
||||
{
|
||||
int ret;
|
||||
mbedtls_ecdh_context srv, cli;
|
||||
unsigned char buf[1000];
|
||||
const unsigned char *vbuf;
|
||||
size_t len;
|
||||
mbedtls_test_rnd_buf_info rnd_info_A, rnd_info_B;
|
||||
mbedtls_test_rnd_pseudo_info rnd_info;
|
||||
int cnt_restart;
|
||||
mbedtls_ecp_group grp;
|
||||
|
||||
mbedtls_ecp_group_init(&grp);
|
||||
mbedtls_ecdh_init(&srv);
|
||||
mbedtls_ecdh_init(&cli);
|
||||
memset(&rnd_info, 0x00, sizeof(mbedtls_test_rnd_pseudo_info));
|
||||
|
||||
rnd_info_A.fallback_f_rng = mbedtls_test_rnd_std_rand;
|
||||
rnd_info_A.fallback_p_rng = NULL;
|
||||
rnd_info_A.buf = dA->x;
|
||||
rnd_info_A.length = dA->len;
|
||||
|
||||
rnd_info_B.fallback_f_rng = mbedtls_test_rnd_std_rand;
|
||||
rnd_info_B.fallback_p_rng = NULL;
|
||||
rnd_info_B.buf = dB->x;
|
||||
rnd_info_B.length = dB->len;
|
||||
|
||||
/* The ECDH context is not guaranteed to have an mbedtls_ecp_group structure
|
||||
* in every configuration, therefore we load it separately. */
|
||||
TEST_ASSERT(mbedtls_ecp_group_load(&grp, id) == 0);
|
||||
|
||||
/* Otherwise we would have to fix the random buffer,
|
||||
* as in ecdh_primitive_testvec. */
|
||||
TEST_ASSERT(grp.nbits % 8 == 0);
|
||||
|
||||
TEST_ASSERT(mbedtls_ecdh_setup(&srv, id) == 0);
|
||||
|
||||
/* set up restart parameters */
|
||||
mbedtls_ecp_set_max_ops(max_ops);
|
||||
|
||||
if (enable) {
|
||||
mbedtls_ecdh_enable_restart(&srv);
|
||||
mbedtls_ecdh_enable_restart(&cli);
|
||||
}
|
||||
|
||||
/* server writes its parameters */
|
||||
memset(buf, 0x00, sizeof(buf));
|
||||
len = 0;
|
||||
|
||||
cnt_restart = 0;
|
||||
do {
|
||||
ret = mbedtls_ecdh_make_params(&srv, &len, buf, sizeof(buf),
|
||||
mbedtls_test_rnd_buffer_rand,
|
||||
&rnd_info_A);
|
||||
} while (ret == MBEDTLS_ERR_ECP_IN_PROGRESS && ++cnt_restart);
|
||||
|
||||
TEST_ASSERT(ret == 0);
|
||||
TEST_ASSERT(cnt_restart >= min_restart);
|
||||
TEST_ASSERT(cnt_restart <= max_restart);
|
||||
|
||||
/* client read server params */
|
||||
vbuf = buf;
|
||||
TEST_ASSERT(mbedtls_ecdh_read_params(&cli, &vbuf, buf + len) == 0);
|
||||
|
||||
/* client writes its key share */
|
||||
memset(buf, 0x00, sizeof(buf));
|
||||
len = 0;
|
||||
|
||||
cnt_restart = 0;
|
||||
do {
|
||||
ret = mbedtls_ecdh_make_public(&cli, &len, buf, sizeof(buf),
|
||||
mbedtls_test_rnd_buffer_rand,
|
||||
&rnd_info_B);
|
||||
} while (ret == MBEDTLS_ERR_ECP_IN_PROGRESS && ++cnt_restart);
|
||||
|
||||
TEST_ASSERT(ret == 0);
|
||||
TEST_ASSERT(cnt_restart >= min_restart);
|
||||
TEST_ASSERT(cnt_restart <= max_restart);
|
||||
|
||||
/* server reads client key share */
|
||||
TEST_ASSERT(mbedtls_ecdh_read_public(&srv, buf, len) == 0);
|
||||
|
||||
/* server computes shared secret */
|
||||
memset(buf, 0, sizeof(buf));
|
||||
len = 0;
|
||||
|
||||
cnt_restart = 0;
|
||||
do {
|
||||
ret = mbedtls_ecdh_calc_secret(&srv, &len, buf, sizeof(buf),
|
||||
&mbedtls_test_rnd_pseudo_rand,
|
||||
&rnd_info);
|
||||
} while (ret == MBEDTLS_ERR_ECP_IN_PROGRESS && ++cnt_restart);
|
||||
|
||||
TEST_ASSERT(ret == 0);
|
||||
TEST_ASSERT(cnt_restart >= min_restart);
|
||||
TEST_ASSERT(cnt_restart <= max_restart);
|
||||
|
||||
TEST_ASSERT(len == z->len);
|
||||
TEST_ASSERT(memcmp(buf, z->x, len) == 0);
|
||||
|
||||
/* client computes shared secret */
|
||||
memset(buf, 0, sizeof(buf));
|
||||
len = 0;
|
||||
|
||||
cnt_restart = 0;
|
||||
do {
|
||||
ret = mbedtls_ecdh_calc_secret(&cli, &len, buf, sizeof(buf),
|
||||
&mbedtls_test_rnd_pseudo_rand,
|
||||
&rnd_info);
|
||||
} while (ret == MBEDTLS_ERR_ECP_IN_PROGRESS && ++cnt_restart);
|
||||
|
||||
TEST_ASSERT(ret == 0);
|
||||
TEST_ASSERT(cnt_restart >= min_restart);
|
||||
TEST_ASSERT(cnt_restart <= max_restart);
|
||||
|
||||
TEST_ASSERT(len == z->len);
|
||||
TEST_ASSERT(memcmp(buf, z->x, len) == 0);
|
||||
|
||||
exit:
|
||||
mbedtls_ecp_group_free(&grp);
|
||||
mbedtls_ecdh_free(&srv);
|
||||
mbedtls_ecdh_free(&cli);
|
||||
}
|
||||
/* END_CASE */
|
||||
|
||||
/* BEGIN_CASE */
|
||||
void ecdh_context_reuse(int grp_id, data_t *our_private_key,
|
||||
data_t *their_point1, data_t *shared1,
|
||||
data_t *their_point2, data_t *shared2)
|
||||
{
|
||||
/* This test exercises re-using the context for static ECDH */
|
||||
mbedtls_test_rnd_pseudo_info rnd_info;
|
||||
mbedtls_ecp_keypair our_key;
|
||||
mbedtls_ecp_keypair their_key1;
|
||||
mbedtls_ecp_keypair their_key2;
|
||||
mbedtls_ecdh_context ecdh;
|
||||
unsigned char *buf = NULL;
|
||||
size_t min_buf_size = 0;
|
||||
size_t shared_secret_length = 0;
|
||||
|
||||
memset(&rnd_info, 0x00, sizeof(mbedtls_test_rnd_pseudo_info));
|
||||
mbedtls_ecdh_init(&ecdh);
|
||||
mbedtls_ecp_keypair_init(&our_key);
|
||||
mbedtls_ecp_keypair_init(&their_key1);
|
||||
mbedtls_ecp_keypair_init(&their_key2);
|
||||
|
||||
if (!load_private_key(grp_id, our_private_key, &our_key, &rnd_info)) {
|
||||
goto exit;
|
||||
}
|
||||
if (!load_public_key(grp_id, their_point1, &their_key1)) {
|
||||
goto exit;
|
||||
}
|
||||
if (!load_public_key(grp_id, their_point2, &their_key2)) {
|
||||
goto exit;
|
||||
}
|
||||
|
||||
/* Import our long-term private key */
|
||||
TEST_ASSERT(mbedtls_ecdh_get_params(
|
||||
&ecdh, &our_key, MBEDTLS_ECDH_OURS) == 0);
|
||||
|
||||
/* Allocate output buffer of minimal size */
|
||||
min_buf_size = (our_key.grp.pbits + 7) / 8;
|
||||
TEST_LE_U(min_buf_size, MBEDTLS_ECP_MAX_BYTES);
|
||||
TEST_CALLOC(buf, min_buf_size);
|
||||
|
||||
/* Import first peer key and perform first ECDH calculation */
|
||||
TEST_ASSERT(mbedtls_ecdh_get_params(
|
||||
&ecdh, &their_key1, MBEDTLS_ECDH_THEIRS) == 0);
|
||||
TEST_EQUAL(0,
|
||||
mbedtls_ecdh_calc_secret(
|
||||
&ecdh, &shared_secret_length,
|
||||
buf, min_buf_size,
|
||||
&mbedtls_test_rnd_pseudo_rand, &rnd_info));
|
||||
TEST_MEMORY_COMPARE(shared1->x, shared1->len,
|
||||
buf, shared_secret_length);
|
||||
|
||||
shared_secret_length = 0;
|
||||
|
||||
/* Import 2nd peer key and perform 2nd ECDH calculation */
|
||||
TEST_ASSERT(mbedtls_ecdh_get_params(
|
||||
&ecdh, &their_key2, MBEDTLS_ECDH_THEIRS) == 0);
|
||||
TEST_EQUAL(0,
|
||||
mbedtls_ecdh_calc_secret(
|
||||
&ecdh, &shared_secret_length,
|
||||
buf, min_buf_size,
|
||||
&mbedtls_test_rnd_pseudo_rand, &rnd_info));
|
||||
TEST_MEMORY_COMPARE(shared2->x, shared2->len,
|
||||
buf, shared_secret_length);
|
||||
|
||||
exit:
|
||||
mbedtls_free(buf);
|
||||
mbedtls_ecdh_free(&ecdh);
|
||||
mbedtls_ecp_keypair_free(&our_key);
|
||||
mbedtls_ecp_keypair_free(&their_key1);
|
||||
mbedtls_ecp_keypair_free(&their_key2);
|
||||
}
|
||||
/* END_CASE */
|
||||
|
||||
/* BEGIN_CASE */
|
||||
void ecdh_exchange_calc_secret(int grp_id,
|
||||
data_t *our_private_key,
|
||||
data_t *their_point,
|
||||
int ours_first,
|
||||
data_t *expected)
|
||||
{
|
||||
mbedtls_test_rnd_pseudo_info rnd_info;
|
||||
mbedtls_ecp_keypair our_key;
|
||||
mbedtls_ecp_keypair their_key;
|
||||
mbedtls_ecdh_context ecdh;
|
||||
unsigned char *buf = NULL;
|
||||
size_t min_buf_size = 0;
|
||||
size_t shared_secret_length = 0;
|
||||
|
||||
memset(&rnd_info, 0x00, sizeof(mbedtls_test_rnd_pseudo_info));
|
||||
mbedtls_ecdh_init(&ecdh);
|
||||
mbedtls_ecp_keypair_init(&our_key);
|
||||
mbedtls_ecp_keypair_init(&their_key);
|
||||
|
||||
if (!load_private_key(grp_id, our_private_key, &our_key, &rnd_info)) {
|
||||
goto exit;
|
||||
}
|
||||
if (!load_public_key(grp_id, their_point, &their_key)) {
|
||||
goto exit;
|
||||
}
|
||||
|
||||
/* Import the keys to the ECDH calculation. */
|
||||
if (ours_first) {
|
||||
TEST_ASSERT(mbedtls_ecdh_get_params(
|
||||
&ecdh, &our_key, MBEDTLS_ECDH_OURS) == 0);
|
||||
TEST_ASSERT(mbedtls_ecdh_get_params(
|
||||
&ecdh, &their_key, MBEDTLS_ECDH_THEIRS) == 0);
|
||||
} else {
|
||||
TEST_ASSERT(mbedtls_ecdh_get_params(
|
||||
&ecdh, &their_key, MBEDTLS_ECDH_THEIRS) == 0);
|
||||
TEST_ASSERT(mbedtls_ecdh_get_params(
|
||||
&ecdh, &our_key, MBEDTLS_ECDH_OURS) == 0);
|
||||
}
|
||||
|
||||
/* Compute minimal size of output buffer */
|
||||
min_buf_size = (our_key.grp.pbits + 7) / 8;
|
||||
TEST_LE_U(min_buf_size, MBEDTLS_ECP_MAX_BYTES);
|
||||
|
||||
/* Perform the ECDH calculation with exact size output buffer */
|
||||
TEST_CALLOC(buf, min_buf_size);
|
||||
TEST_EQUAL(0,
|
||||
mbedtls_ecdh_calc_secret(
|
||||
&ecdh, &shared_secret_length,
|
||||
buf, min_buf_size,
|
||||
&mbedtls_test_rnd_pseudo_rand, &rnd_info));
|
||||
TEST_MEMORY_COMPARE(expected->x, expected->len,
|
||||
buf, shared_secret_length);
|
||||
|
||||
mbedtls_free(buf);
|
||||
buf = NULL;
|
||||
shared_secret_length = 0;
|
||||
|
||||
/* Try again with an output buffer that's larger. */
|
||||
/* Note: this doubles as a weak test for re-using a context.
|
||||
* For a proper test, see ecdh_context_reuse(). */
|
||||
TEST_CALLOC(buf, min_buf_size + 1);
|
||||
TEST_EQUAL(0,
|
||||
mbedtls_ecdh_calc_secret(
|
||||
&ecdh, &shared_secret_length,
|
||||
buf, min_buf_size + 1,
|
||||
&mbedtls_test_rnd_pseudo_rand, &rnd_info));
|
||||
TEST_MEMORY_COMPARE(expected->x, expected->len,
|
||||
buf, shared_secret_length);
|
||||
|
||||
mbedtls_free(buf);
|
||||
buf = NULL;
|
||||
shared_secret_length = 0;
|
||||
|
||||
/* Try again with an output buffer that's too short. */
|
||||
TEST_CALLOC(buf, min_buf_size - 1);
|
||||
TEST_EQUAL(MBEDTLS_ERR_ECP_BUFFER_TOO_SMALL,
|
||||
mbedtls_ecdh_calc_secret(
|
||||
&ecdh, &shared_secret_length,
|
||||
buf, min_buf_size - 1,
|
||||
&mbedtls_test_rnd_pseudo_rand, &rnd_info));
|
||||
|
||||
exit:
|
||||
mbedtls_free(buf);
|
||||
mbedtls_ecdh_free(&ecdh);
|
||||
mbedtls_ecp_keypair_free(&our_key);
|
||||
mbedtls_ecp_keypair_free(&their_key);
|
||||
}
|
||||
/* END_CASE */
|
||||
|
||||
/* BEGIN_CASE */
|
||||
void ecdh_exchange_get_params_fail(int our_grp_id,
|
||||
data_t *our_private_key,
|
||||
int their_grp_id,
|
||||
data_t *their_point,
|
||||
int ours_first,
|
||||
int expected_ret)
|
||||
{
|
||||
mbedtls_test_rnd_pseudo_info rnd_info;
|
||||
mbedtls_ecp_keypair our_key;
|
||||
mbedtls_ecp_keypair their_key;
|
||||
mbedtls_ecdh_context ecdh;
|
||||
|
||||
memset(&rnd_info, 0x00, sizeof(mbedtls_test_rnd_pseudo_info));
|
||||
mbedtls_ecdh_init(&ecdh);
|
||||
mbedtls_ecp_keypair_init(&our_key);
|
||||
mbedtls_ecp_keypair_init(&their_key);
|
||||
|
||||
if (!load_private_key(our_grp_id, our_private_key, &our_key, &rnd_info)) {
|
||||
goto exit;
|
||||
}
|
||||
if (!load_public_key(their_grp_id, their_point, &their_key)) {
|
||||
goto exit;
|
||||
}
|
||||
|
||||
if (ours_first) {
|
||||
TEST_ASSERT(mbedtls_ecdh_get_params(
|
||||
&ecdh, &our_key, MBEDTLS_ECDH_OURS) == 0);
|
||||
TEST_ASSERT(mbedtls_ecdh_get_params(
|
||||
&ecdh, &their_key, MBEDTLS_ECDH_THEIRS) ==
|
||||
expected_ret);
|
||||
} else {
|
||||
TEST_ASSERT(mbedtls_ecdh_get_params(
|
||||
&ecdh, &their_key, MBEDTLS_ECDH_THEIRS) == 0);
|
||||
TEST_ASSERT(mbedtls_ecdh_get_params(
|
||||
&ecdh, &our_key, MBEDTLS_ECDH_OURS) ==
|
||||
expected_ret);
|
||||
}
|
||||
|
||||
exit:
|
||||
mbedtls_ecdh_free(&ecdh);
|
||||
mbedtls_ecp_keypair_free(&our_key);
|
||||
mbedtls_ecp_keypair_free(&their_key);
|
||||
}
|
||||
/* END_CASE */
|
||||
|
||||
/* BEGIN_CASE */
|
||||
void ecdh_context_grp(int id)
|
||||
{
|
||||
mbedtls_ecdh_context srv;
|
||||
|
||||
mbedtls_ecdh_init(&srv);
|
||||
TEST_ASSERT(mbedtls_ecdh_setup(&srv, id) == 0);
|
||||
|
||||
/* Test the retrieved group id matches/*/
|
||||
TEST_ASSERT((int) mbedtls_ecdh_get_grp_id(&srv) == id);
|
||||
|
||||
exit:
|
||||
mbedtls_ecdh_free(&srv);
|
||||
|
||||
}
|
||||
/* END_CASE */
|
||||
423
vendor/mbedtls/tests/suites/test_suite_ecdsa.data
vendored
Normal file
423
vendor/mbedtls/tests/suites/test_suite_ecdsa.data
vendored
Normal file
@@ -0,0 +1,423 @@
|
||||
ECDSA primitive hash zero #1
|
||||
depends_on:MBEDTLS_ECP_DP_SECP192R1_ENABLED
|
||||
ecdsa_prim_zero:MBEDTLS_ECP_DP_SECP192R1
|
||||
|
||||
ECDSA primitive hash zero #2
|
||||
depends_on:MBEDTLS_ECP_DP_SECP224R1_ENABLED
|
||||
ecdsa_prim_zero:MBEDTLS_ECP_DP_SECP224R1
|
||||
|
||||
ECDSA primitive hash zero #3
|
||||
depends_on:MBEDTLS_ECP_DP_SECP256R1_ENABLED
|
||||
ecdsa_prim_zero:MBEDTLS_ECP_DP_SECP256R1
|
||||
|
||||
ECDSA primitive hash zero #4
|
||||
depends_on:MBEDTLS_ECP_DP_SECP384R1_ENABLED
|
||||
ecdsa_prim_zero:MBEDTLS_ECP_DP_SECP384R1
|
||||
|
||||
ECDSA primitive hash zero #5
|
||||
depends_on:MBEDTLS_ECP_DP_SECP521R1_ENABLED
|
||||
ecdsa_prim_zero:MBEDTLS_ECP_DP_SECP521R1
|
||||
|
||||
ECDSA primitive random #1
|
||||
depends_on:MBEDTLS_ECP_DP_SECP192R1_ENABLED
|
||||
ecdsa_prim_random:MBEDTLS_ECP_DP_SECP192R1
|
||||
|
||||
ECDSA primitive random #2
|
||||
depends_on:MBEDTLS_ECP_DP_SECP224R1_ENABLED
|
||||
ecdsa_prim_random:MBEDTLS_ECP_DP_SECP224R1
|
||||
|
||||
ECDSA primitive random #3
|
||||
depends_on:MBEDTLS_ECP_DP_SECP256R1_ENABLED
|
||||
ecdsa_prim_random:MBEDTLS_ECP_DP_SECP256R1
|
||||
|
||||
ECDSA primitive random #4
|
||||
depends_on:MBEDTLS_ECP_DP_SECP384R1_ENABLED
|
||||
ecdsa_prim_random:MBEDTLS_ECP_DP_SECP384R1
|
||||
|
||||
ECDSA primitive random #5
|
||||
depends_on:MBEDTLS_ECP_DP_SECP521R1_ENABLED
|
||||
ecdsa_prim_random:MBEDTLS_ECP_DP_SECP521R1
|
||||
|
||||
ECDSA primitive rfc 4754 p256
|
||||
depends_on:MBEDTLS_ECP_DP_SECP256R1_ENABLED
|
||||
ecdsa_prim_test_vectors:MBEDTLS_ECP_DP_SECP256R1:"DC51D3866A15BACDE33D96F992FCA99DA7E6EF0934E7097559C27F1614C88A7F":"2442A5CC0ECD015FA3CA31DC8E2BBC70BF42D60CBCA20085E0822CB04235E970":"6FC98BD7E50211A4A27102FA3549DF79EBCB4BF246B80945CDDFE7D509BBFD7D":"9E56F509196784D963D1C0A401510EE7ADA3DCC5DEE04B154BF61AF1D5A6DECE":"BA7816BF8F01CFEA414140DE5DAE2223B00361A396177A9CB410FF61F20015AD":"CB28E0999B9C7715FD0A80D8E47A77079716CBBF917DD72E97566EA1C066957C":"86FA3BB4E26CAD5BF90B7F81899256CE7594BB1EA0C89212748BFF3B3D5B0315":0
|
||||
|
||||
ECDSA primitive rfc 4754 p384
|
||||
depends_on:MBEDTLS_ECP_DP_SECP384R1_ENABLED
|
||||
ecdsa_prim_test_vectors:MBEDTLS_ECP_DP_SECP384R1:"0BEB646634BA87735D77AE4809A0EBEA865535DE4C1E1DCB692E84708E81A5AF62E528C38B2A81B35309668D73524D9F":"96281BF8DD5E0525CA049C048D345D3082968D10FEDF5C5ACA0C64E6465A97EA5CE10C9DFEC21797415710721F437922":"447688BA94708EB6E2E4D59F6AB6D7EDFF9301D249FE49C33096655F5D502FAD3D383B91C5E7EDAA2B714CC99D5743CA":"B4B74E44D71A13D568003D7489908D564C7761E229C58CBFA18950096EB7463B854D7FA992F934D927376285E63414FA":"CB00753F45A35E8BB5A03D699AC65007272C32AB0EDED1631A8B605A43FF5BED8086072BA1E7CC2358BAECA134C825A7":"FB017B914E29149432D8BAC29A514640B46F53DDAB2C69948084E2930F1C8F7E08E07C9C63F2D21A07DCB56A6AF56EB3":"B263A1305E057F984D38726A1B46874109F417BCA112674C528262A40A629AF1CBB9F516CE0FA7D2FF630863A00E8B9F":0
|
||||
|
||||
ECDSA primitive rfc 4754 p521
|
||||
depends_on:MBEDTLS_ECP_DP_SECP521R1_ENABLED
|
||||
ecdsa_prim_test_vectors:MBEDTLS_ECP_DP_SECP521R1:"0065FDA3409451DCAB0A0EAD45495112A3D813C17BFD34BDF8C1209D7DF5849120597779060A7FF9D704ADF78B570FFAD6F062E95C7E0C5D5481C5B153B48B375FA1":"0151518F1AF0F563517EDD5485190DF95A4BF57B5CBA4CF2A9A3F6474725A35F7AFE0A6DDEB8BEDBCD6A197E592D40188901CECD650699C9B5E456AEA5ADD19052A8":"006F3B142EA1BFFF7E2837AD44C9E4FF6D2D34C73184BBAD90026DD5E6E85317D9DF45CAD7803C6C20035B2F3FF63AFF4E1BA64D1C077577DA3F4286C58F0AEAE643":"00C1C2B305419F5A41344D7E4359933D734096F556197A9B244342B8B62F46F9373778F9DE6B6497B1EF825FF24F42F9B4A4BD7382CFC3378A540B1B7F0C1B956C2F":"DDAF35A193617ABACC417349AE20413112E6FA4E89A97EA20A9EEEE64B55D39A2192992A274FC1A836BA3C23A3FEEBBD454D4423643CE80E2A9AC94FA54CA49F":"0154FD3836AF92D0DCA57DD5341D3053988534FDE8318FC6AAAAB68E2E6F4339B19F2F281A7E0B22C269D93CF8794A9278880ED7DBB8D9362CAEACEE544320552251":"017705A7030290D1CEB605A9A1BB03FF9CDD521E87A696EC926C8C10C8362DF4975367101F67D1CF9BCCBF2F3D239534FA509E70AAC851AE01AAC68D62F866472660":0
|
||||
|
||||
ECDSA write-read hash zero #1
|
||||
depends_on:MBEDTLS_ECP_DP_SECP192R1_ENABLED
|
||||
ecdsa_write_read_zero:MBEDTLS_ECP_DP_SECP192R1
|
||||
|
||||
ECDSA write-read hash zero #2
|
||||
depends_on:MBEDTLS_ECP_DP_SECP224R1_ENABLED
|
||||
ecdsa_write_read_zero:MBEDTLS_ECP_DP_SECP224R1
|
||||
|
||||
ECDSA write-read hash zero #3
|
||||
depends_on:MBEDTLS_ECP_DP_SECP256R1_ENABLED
|
||||
ecdsa_write_read_zero:MBEDTLS_ECP_DP_SECP256R1
|
||||
|
||||
ECDSA write-read hash zero #4
|
||||
depends_on:MBEDTLS_ECP_DP_SECP384R1_ENABLED
|
||||
ecdsa_write_read_zero:MBEDTLS_ECP_DP_SECP384R1
|
||||
|
||||
ECDSA write-read hash zero #5
|
||||
depends_on:MBEDTLS_ECP_DP_SECP521R1_ENABLED
|
||||
ecdsa_write_read_zero:MBEDTLS_ECP_DP_SECP521R1
|
||||
|
||||
ECDSA write-read random #1
|
||||
depends_on:MBEDTLS_ECP_DP_SECP192R1_ENABLED
|
||||
ecdsa_write_read_random:MBEDTLS_ECP_DP_SECP192R1
|
||||
|
||||
ECDSA write-read random #2
|
||||
depends_on:MBEDTLS_ECP_DP_SECP224R1_ENABLED
|
||||
ecdsa_write_read_random:MBEDTLS_ECP_DP_SECP224R1
|
||||
|
||||
ECDSA write-read random #3
|
||||
depends_on:MBEDTLS_ECP_DP_SECP256R1_ENABLED
|
||||
ecdsa_write_read_random:MBEDTLS_ECP_DP_SECP256R1
|
||||
|
||||
ECDSA write-read random #4
|
||||
depends_on:MBEDTLS_ECP_DP_SECP384R1_ENABLED
|
||||
ecdsa_write_read_random:MBEDTLS_ECP_DP_SECP384R1
|
||||
|
||||
ECDSA write-read random #5
|
||||
depends_on:MBEDTLS_ECP_DP_SECP521R1_ENABLED
|
||||
ecdsa_write_read_random:MBEDTLS_ECP_DP_SECP521R1
|
||||
|
||||
ECDSA deterministic test vector rfc 6979 p192 sha1 [#1]
|
||||
depends_on:MBEDTLS_ECP_DP_SECP192R1_ENABLED:MBEDTLS_MD_CAN_SHA1
|
||||
ecdsa_det_test_vectors:MBEDTLS_ECP_DP_SECP192R1:"6FAB034934E4C0FC9AE67F5B5659A9D7D1FEFD187EE09FD4":MBEDTLS_MD_SHA1:"8151325DCDBAE9E0FF95F9F9658432DBEDFDB209":"98C6BD12B23EAF5E2A2045132086BE3EB8EBD62ABF6698FF":"57A22B07DEA9530F8DE9471B1DC6624472E8E2844BC25B64"
|
||||
|
||||
ECDSA deterministic test vector rfc 6979 p192 sha224 [#1]
|
||||
depends_on:MBEDTLS_ECP_DP_SECP192R1_ENABLED:MBEDTLS_MD_CAN_SHA224
|
||||
ecdsa_det_test_vectors:MBEDTLS_ECP_DP_SECP192R1:"6FAB034934E4C0FC9AE67F5B5659A9D7D1FEFD187EE09FD4":MBEDTLS_MD_SHA224:"9003E374BC726550C2C289447FD0533160F875709386DFA377BFD41C":"A1F00DAD97AEEC91C95585F36200C65F3C01812AA60378F5":"E07EC1304C7C6C9DEBBE980B9692668F81D4DE7922A0F97A"
|
||||
|
||||
ECDSA deterministic test vector rfc 6979 p192 sha256 [#1]
|
||||
depends_on:MBEDTLS_ECP_DP_SECP192R1_ENABLED:MBEDTLS_MD_CAN_SHA256
|
||||
ecdsa_det_test_vectors:MBEDTLS_ECP_DP_SECP192R1:"6FAB034934E4C0FC9AE67F5B5659A9D7D1FEFD187EE09FD4":MBEDTLS_MD_SHA256:"AF2BDBE1AA9B6EC1E2ADE1D694F41FC71A831D0268E9891562113D8A62ADD1BF":"4B0B8CE98A92866A2820E20AA6B75B56382E0F9BFD5ECB55":"CCDB006926EA9565CBADC840829D8C384E06DE1F1E381B85"
|
||||
|
||||
ECDSA deterministic test vector rfc 6979 p192 sha384 [#1]
|
||||
depends_on:MBEDTLS_ECP_DP_SECP192R1_ENABLED:MBEDTLS_MD_CAN_SHA384
|
||||
ecdsa_det_test_vectors:MBEDTLS_ECP_DP_SECP192R1:"6FAB034934E4C0FC9AE67F5B5659A9D7D1FEFD187EE09FD4":MBEDTLS_MD_SHA384:"9A9083505BC92276AEC4BE312696EF7BF3BF603F4BBD381196A029F340585312313BCA4A9B5B890EFEE42C77B1EE25FE":"DA63BF0B9ABCF948FBB1E9167F136145F7A20426DCC287D5":"C3AA2C960972BD7A2003A57E1C4C77F0578F8AE95E31EC5E"
|
||||
|
||||
ECDSA deterministic test vector rfc 6979 p192 sha512 [#1]
|
||||
depends_on:MBEDTLS_ECP_DP_SECP192R1_ENABLED:MBEDTLS_MD_CAN_SHA512
|
||||
ecdsa_det_test_vectors:MBEDTLS_ECP_DP_SECP192R1:"6FAB034934E4C0FC9AE67F5B5659A9D7D1FEFD187EE09FD4":MBEDTLS_MD_SHA512:"39A5E04AAFF7455D9850C605364F514C11324CE64016960D23D5DC57D3FFD8F49A739468AB8049BF18EEF820CDB1AD6C9015F838556BC7FAD4138B23FDF986C7":"4D60C5AB1996BD848343B31C00850205E2EA6922DAC2E4B8":"3F6E837448F027A1BF4B34E796E32A811CBB4050908D8F67"
|
||||
|
||||
ECDSA deterministic test vector rfc 6979 p192 sha1 [#2]
|
||||
depends_on:MBEDTLS_ECP_DP_SECP192R1_ENABLED:MBEDTLS_MD_CAN_SHA1
|
||||
ecdsa_det_test_vectors:MBEDTLS_ECP_DP_SECP192R1:"6FAB034934E4C0FC9AE67F5B5659A9D7D1FEFD187EE09FD4":MBEDTLS_MD_SHA1:"A94A8FE5CCB19BA61C4C0873D391E987982FBBD3":"0F2141A0EBBC44D2E1AF90A50EBCFCE5E197B3B7D4DE036D":"EB18BC9E1F3D7387500CB99CF5F7C157070A8961E38700B7"
|
||||
|
||||
ECDSA deterministic test vector rfc 6979 p192 sha224 [#2]
|
||||
depends_on:MBEDTLS_ECP_DP_SECP192R1_ENABLED:MBEDTLS_MD_CAN_SHA224
|
||||
ecdsa_det_test_vectors:MBEDTLS_ECP_DP_SECP192R1:"6FAB034934E4C0FC9AE67F5B5659A9D7D1FEFD187EE09FD4":MBEDTLS_MD_SHA224:"90A3ED9E32B2AAF4C61C410EB925426119E1A9DC53D4286ADE99A809":"6945A1C1D1B2206B8145548F633BB61CEF04891BAF26ED34":"B7FB7FDFC339C0B9BD61A9F5A8EAF9BE58FC5CBA2CB15293"
|
||||
|
||||
ECDSA deterministic test vector rfc 6979 p192 sha256 [#2]
|
||||
depends_on:MBEDTLS_ECP_DP_SECP192R1_ENABLED:MBEDTLS_MD_CAN_SHA256
|
||||
ecdsa_det_test_vectors:MBEDTLS_ECP_DP_SECP192R1:"6FAB034934E4C0FC9AE67F5B5659A9D7D1FEFD187EE09FD4":MBEDTLS_MD_SHA256:"9F86D081884C7D659A2FEAA0C55AD015A3BF4F1B2B0B822CD15D6C15B0F00A08":"3A718BD8B4926C3B52EE6BBE67EF79B18CB6EB62B1AD97AE":"5662E6848A4A19B1F1AE2F72ACD4B8BBE50F1EAC65D9124F"
|
||||
|
||||
ECDSA deterministic test vector rfc 6979 p192 sha384 [#2]
|
||||
depends_on:MBEDTLS_ECP_DP_SECP192R1_ENABLED:MBEDTLS_MD_CAN_SHA384
|
||||
ecdsa_det_test_vectors:MBEDTLS_ECP_DP_SECP192R1:"6FAB034934E4C0FC9AE67F5B5659A9D7D1FEFD187EE09FD4":MBEDTLS_MD_SHA384:"768412320F7B0AA5812FCE428DC4706B3CAE50E02A64CAA16A782249BFE8EFC4B7EF1CCB126255D196047DFEDF17A0A9":"B234B60B4DB75A733E19280A7A6034BD6B1EE88AF5332367":"7994090B2D59BB782BE57E74A44C9A1C700413F8ABEFE77A"
|
||||
|
||||
ECDSA deterministic test vector rfc 6979 p192 sha512 [#2]
|
||||
depends_on:MBEDTLS_ECP_DP_SECP192R1_ENABLED:MBEDTLS_MD_CAN_SHA512
|
||||
ecdsa_det_test_vectors:MBEDTLS_ECP_DP_SECP192R1:"6FAB034934E4C0FC9AE67F5B5659A9D7D1FEFD187EE09FD4":MBEDTLS_MD_SHA512:"EE26B0DD4AF7E749AA1A8EE3C10AE9923F618980772E473F8819A5D4940E0DB27AC185F8A0E1D5F84F88BC887FD67B143732C304CC5FA9AD8E6F57F50028A8FF":"FE4F4AE86A58B6507946715934FE2D8FF9D95B6B098FE739":"74CF5605C98FBA0E1EF34D4B5A1577A7DCF59457CAE52290"
|
||||
|
||||
ECDSA deterministic test vector rfc 6979 p224 sha1 [#1]
|
||||
depends_on:MBEDTLS_ECP_DP_SECP224R1_ENABLED:MBEDTLS_MD_CAN_SHA1
|
||||
ecdsa_det_test_vectors:MBEDTLS_ECP_DP_SECP224R1:"F220266E1105BFE3083E03EC7A3A654651F45E37167E88600BF257C1":MBEDTLS_MD_SHA1:"8151325DCDBAE9E0FF95F9F9658432DBEDFDB209":"22226F9D40A96E19C4A301CE5B74B115303C0F3A4FD30FC257FB57AC":"66D1CDD83E3AF75605DD6E2FEFF196D30AA7ED7A2EDF7AF475403D69"
|
||||
|
||||
ECDSA deterministic test vector rfc 6979 p224 sha224 [#1]
|
||||
depends_on:MBEDTLS_ECP_DP_SECP224R1_ENABLED:MBEDTLS_MD_CAN_SHA224
|
||||
ecdsa_det_test_vectors:MBEDTLS_ECP_DP_SECP224R1:"F220266E1105BFE3083E03EC7A3A654651F45E37167E88600BF257C1":MBEDTLS_MD_SHA224:"9003E374BC726550C2C289447FD0533160F875709386DFA377BFD41C":"1CDFE6662DDE1E4A1EC4CDEDF6A1F5A2FB7FBD9145C12113E6ABFD3E":"A6694FD7718A21053F225D3F46197CA699D45006C06F871808F43EBC"
|
||||
|
||||
ECDSA deterministic test vector rfc 6979 p224 sha256 [#1]
|
||||
depends_on:MBEDTLS_ECP_DP_SECP224R1_ENABLED:MBEDTLS_MD_CAN_SHA256
|
||||
ecdsa_det_test_vectors:MBEDTLS_ECP_DP_SECP224R1:"F220266E1105BFE3083E03EC7A3A654651F45E37167E88600BF257C1":MBEDTLS_MD_SHA256:"AF2BDBE1AA9B6EC1E2ADE1D694F41FC71A831D0268E9891562113D8A62ADD1BF":"61AA3DA010E8E8406C656BC477A7A7189895E7E840CDFE8FF42307BA":"BC814050DAB5D23770879494F9E0A680DC1AF7161991BDE692B10101"
|
||||
|
||||
ECDSA deterministic test vector rfc 6979 p224 sha384 [#1]
|
||||
depends_on:MBEDTLS_ECP_DP_SECP224R1_ENABLED:MBEDTLS_MD_CAN_SHA384
|
||||
ecdsa_det_test_vectors:MBEDTLS_ECP_DP_SECP224R1:"F220266E1105BFE3083E03EC7A3A654651F45E37167E88600BF257C1":MBEDTLS_MD_SHA384:"9A9083505BC92276AEC4BE312696EF7BF3BF603F4BBD381196A029F340585312313BCA4A9B5B890EFEE42C77B1EE25FE":"0B115E5E36F0F9EC81F1325A5952878D745E19D7BB3EABFABA77E953":"830F34CCDFE826CCFDC81EB4129772E20E122348A2BBD889A1B1AF1D"
|
||||
|
||||
ECDSA deterministic test vector rfc 6979 p224 sha512 [#1]
|
||||
depends_on:MBEDTLS_ECP_DP_SECP224R1_ENABLED:MBEDTLS_MD_CAN_SHA512
|
||||
ecdsa_det_test_vectors:MBEDTLS_ECP_DP_SECP224R1:"F220266E1105BFE3083E03EC7A3A654651F45E37167E88600BF257C1":MBEDTLS_MD_SHA512:"39A5E04AAFF7455D9850C605364F514C11324CE64016960D23D5DC57D3FFD8F49A739468AB8049BF18EEF820CDB1AD6C9015F838556BC7FAD4138B23FDF986C7":"074BD1D979D5F32BF958DDC61E4FB4872ADCAFEB2256497CDAC30397":"A4CECA196C3D5A1FF31027B33185DC8EE43F288B21AB342E5D8EB084"
|
||||
|
||||
ECDSA deterministic test vector rfc 6979 p224 sha1 [#2]
|
||||
depends_on:MBEDTLS_ECP_DP_SECP224R1_ENABLED:MBEDTLS_MD_CAN_SHA1
|
||||
ecdsa_det_test_vectors:MBEDTLS_ECP_DP_SECP224R1:"F220266E1105BFE3083E03EC7A3A654651F45E37167E88600BF257C1":MBEDTLS_MD_SHA1:"A94A8FE5CCB19BA61C4C0873D391E987982FBBD3":"DEAA646EC2AF2EA8AD53ED66B2E2DDAA49A12EFD8356561451F3E21C":"95987796F6CF2062AB8135271DE56AE55366C045F6D9593F53787BD2"
|
||||
|
||||
ECDSA deterministic test vector rfc 6979 p224 sha224 [#2]
|
||||
depends_on:MBEDTLS_ECP_DP_SECP224R1_ENABLED:MBEDTLS_MD_CAN_SHA224
|
||||
ecdsa_det_test_vectors:MBEDTLS_ECP_DP_SECP224R1:"F220266E1105BFE3083E03EC7A3A654651F45E37167E88600BF257C1":MBEDTLS_MD_SHA224:"90A3ED9E32B2AAF4C61C410EB925426119E1A9DC53D4286ADE99A809":"C441CE8E261DED634E4CF84910E4C5D1D22C5CF3B732BB204DBEF019":"902F42847A63BDC5F6046ADA114953120F99442D76510150F372A3F4"
|
||||
|
||||
ECDSA deterministic test vector rfc 6979 p224 sha256 [#2]
|
||||
depends_on:MBEDTLS_ECP_DP_SECP224R1_ENABLED:MBEDTLS_MD_CAN_SHA256
|
||||
ecdsa_det_test_vectors:MBEDTLS_ECP_DP_SECP224R1:"F220266E1105BFE3083E03EC7A3A654651F45E37167E88600BF257C1":MBEDTLS_MD_SHA256:"9F86D081884C7D659A2FEAA0C55AD015A3BF4F1B2B0B822CD15D6C15B0F00A08":"AD04DDE87B84747A243A631EA47A1BA6D1FAA059149AD2440DE6FBA6":"178D49B1AE90E3D8B629BE3DB5683915F4E8C99FDF6E666CF37ADCFD"
|
||||
|
||||
ECDSA deterministic test vector rfc 6979 p224 sha384 [#2]
|
||||
depends_on:MBEDTLS_ECP_DP_SECP224R1_ENABLED:MBEDTLS_MD_CAN_SHA384
|
||||
ecdsa_det_test_vectors:MBEDTLS_ECP_DP_SECP224R1:"F220266E1105BFE3083E03EC7A3A654651F45E37167E88600BF257C1":MBEDTLS_MD_SHA384:"768412320F7B0AA5812FCE428DC4706B3CAE50E02A64CAA16A782249BFE8EFC4B7EF1CCB126255D196047DFEDF17A0A9":"389B92682E399B26518A95506B52C03BC9379A9DADF3391A21FB0EA4":"414A718ED3249FF6DBC5B50C27F71F01F070944DA22AB1F78F559AAB"
|
||||
|
||||
ECDSA deterministic test vector rfc 6979 p224 sha512 [#2]
|
||||
depends_on:MBEDTLS_ECP_DP_SECP224R1_ENABLED:MBEDTLS_MD_CAN_SHA512
|
||||
ecdsa_det_test_vectors:MBEDTLS_ECP_DP_SECP224R1:"F220266E1105BFE3083E03EC7A3A654651F45E37167E88600BF257C1":MBEDTLS_MD_SHA512:"EE26B0DD4AF7E749AA1A8EE3C10AE9923F618980772E473F8819A5D4940E0DB27AC185F8A0E1D5F84F88BC887FD67B143732C304CC5FA9AD8E6F57F50028A8FF":"049F050477C5ADD858CAC56208394B5A55BAEBBE887FDF765047C17C":"077EB13E7005929CEFA3CD0403C7CDCC077ADF4E44F3C41B2F60ECFF"
|
||||
|
||||
ECDSA deterministic test vector rfc 6979 p256 sha1 [#1]
|
||||
depends_on:MBEDTLS_ECP_DP_SECP256R1_ENABLED:MBEDTLS_MD_CAN_SHA1
|
||||
ecdsa_det_test_vectors:MBEDTLS_ECP_DP_SECP256R1:"C9AFA9D845BA75166B5C215767B1D6934E50C3DB36E89B127B8A622B120F6721":MBEDTLS_MD_SHA1:"8151325DCDBAE9E0FF95F9F9658432DBEDFDB209":"61340C88C3AAEBEB4F6D667F672CA9759A6CCAA9FA8811313039EE4A35471D32":"6D7F147DAC089441BB2E2FE8F7A3FA264B9C475098FDCF6E00D7C996E1B8B7EB"
|
||||
|
||||
ECDSA deterministic test vector rfc 6979 p256 sha224 [#1]
|
||||
depends_on:MBEDTLS_ECP_DP_SECP256R1_ENABLED:MBEDTLS_MD_CAN_SHA224
|
||||
ecdsa_det_test_vectors:MBEDTLS_ECP_DP_SECP256R1:"C9AFA9D845BA75166B5C215767B1D6934E50C3DB36E89B127B8A622B120F6721":MBEDTLS_MD_SHA224:"9003E374BC726550C2C289447FD0533160F875709386DFA377BFD41C":"53B2FFF5D1752B2C689DF257C04C40A587FABABB3F6FC2702F1343AF7CA9AA3F":"B9AFB64FDC03DC1A131C7D2386D11E349F070AA432A4ACC918BEA988BF75C74C"
|
||||
|
||||
ECDSA deterministic test vector rfc 6979 p256 sha256 [#1]
|
||||
depends_on:MBEDTLS_ECP_DP_SECP256R1_ENABLED:MBEDTLS_MD_CAN_SHA256
|
||||
ecdsa_det_test_vectors:MBEDTLS_ECP_DP_SECP256R1:"C9AFA9D845BA75166B5C215767B1D6934E50C3DB36E89B127B8A622B120F6721":MBEDTLS_MD_SHA256:"AF2BDBE1AA9B6EC1E2ADE1D694F41FC71A831D0268E9891562113D8A62ADD1BF":"EFD48B2AACB6A8FD1140DD9CD45E81D69D2C877B56AAF991C34D0EA84EAF3716":"F7CB1C942D657C41D436C7A1B6E29F65F3E900DBB9AFF4064DC4AB2F843ACDA8"
|
||||
|
||||
ECDSA deterministic test vector rfc 6979 p256 sha384 [#1]
|
||||
depends_on:MBEDTLS_ECP_DP_SECP256R1_ENABLED:MBEDTLS_MD_CAN_SHA384
|
||||
ecdsa_det_test_vectors:MBEDTLS_ECP_DP_SECP256R1:"C9AFA9D845BA75166B5C215767B1D6934E50C3DB36E89B127B8A622B120F6721":MBEDTLS_MD_SHA384:"9A9083505BC92276AEC4BE312696EF7BF3BF603F4BBD381196A029F340585312313BCA4A9B5B890EFEE42C77B1EE25FE":"0EAFEA039B20E9B42309FB1D89E213057CBF973DC0CFC8F129EDDDC800EF7719":"4861F0491E6998B9455193E34E7B0D284DDD7149A74B95B9261F13ABDE940954"
|
||||
|
||||
ECDSA deterministic test vector rfc 6979 p256 sha512 [#1]
|
||||
depends_on:MBEDTLS_ECP_DP_SECP256R1_ENABLED:MBEDTLS_MD_CAN_SHA512
|
||||
ecdsa_det_test_vectors:MBEDTLS_ECP_DP_SECP256R1:"C9AFA9D845BA75166B5C215767B1D6934E50C3DB36E89B127B8A622B120F6721":MBEDTLS_MD_SHA512:"39A5E04AAFF7455D9850C605364F514C11324CE64016960D23D5DC57D3FFD8F49A739468AB8049BF18EEF820CDB1AD6C9015F838556BC7FAD4138B23FDF986C7":"8496A60B5E9B47C825488827E0495B0E3FA109EC4568FD3F8D1097678EB97F00":"2362AB1ADBE2B8ADF9CB9EDAB740EA6049C028114F2460F96554F61FAE3302FE"
|
||||
|
||||
ECDSA deterministic test vector rfc 6979 p256 sha1 [#2]
|
||||
depends_on:MBEDTLS_ECP_DP_SECP256R1_ENABLED:MBEDTLS_MD_CAN_SHA1
|
||||
ecdsa_det_test_vectors:MBEDTLS_ECP_DP_SECP256R1:"C9AFA9D845BA75166B5C215767B1D6934E50C3DB36E89B127B8A622B120F6721":MBEDTLS_MD_SHA1:"A94A8FE5CCB19BA61C4C0873D391E987982FBBD3":"0CBCC86FD6ABD1D99E703E1EC50069EE5C0B4BA4B9AC60E409E8EC5910D81A89":"01B9D7B73DFAA60D5651EC4591A0136F87653E0FD780C3B1BC872FFDEAE479B1"
|
||||
|
||||
ECDSA deterministic test vector rfc 6979 p256 sha224 [#2]
|
||||
depends_on:MBEDTLS_ECP_DP_SECP256R1_ENABLED:MBEDTLS_MD_CAN_SHA224
|
||||
ecdsa_det_test_vectors:MBEDTLS_ECP_DP_SECP256R1:"C9AFA9D845BA75166B5C215767B1D6934E50C3DB36E89B127B8A622B120F6721":MBEDTLS_MD_SHA224:"90A3ED9E32B2AAF4C61C410EB925426119E1A9DC53D4286ADE99A809":"C37EDB6F0AE79D47C3C27E962FA269BB4F441770357E114EE511F662EC34A692":"C820053A05791E521FCAAD6042D40AEA1D6B1A540138558F47D0719800E18F2D"
|
||||
|
||||
ECDSA deterministic test vector rfc 6979 p256 sha256 [#2]
|
||||
depends_on:MBEDTLS_ECP_DP_SECP256R1_ENABLED:MBEDTLS_MD_CAN_SHA256
|
||||
ecdsa_det_test_vectors:MBEDTLS_ECP_DP_SECP256R1:"C9AFA9D845BA75166B5C215767B1D6934E50C3DB36E89B127B8A622B120F6721":MBEDTLS_MD_SHA256:"9F86D081884C7D659A2FEAA0C55AD015A3BF4F1B2B0B822CD15D6C15B0F00A08":"F1ABB023518351CD71D881567B1EA663ED3EFCF6C5132B354F28D3B0B7D38367":"019F4113742A2B14BD25926B49C649155F267E60D3814B4C0CC84250E46F0083"
|
||||
|
||||
ECDSA deterministic test vector rfc 6979 p256 sha384 [#2]
|
||||
depends_on:MBEDTLS_ECP_DP_SECP256R1_ENABLED:MBEDTLS_MD_CAN_SHA384
|
||||
ecdsa_det_test_vectors:MBEDTLS_ECP_DP_SECP256R1:"C9AFA9D845BA75166B5C215767B1D6934E50C3DB36E89B127B8A622B120F6721":MBEDTLS_MD_SHA384:"768412320F7B0AA5812FCE428DC4706B3CAE50E02A64CAA16A782249BFE8EFC4B7EF1CCB126255D196047DFEDF17A0A9":"83910E8B48BB0C74244EBDF7F07A1C5413D61472BD941EF3920E623FBCCEBEB6":"8DDBEC54CF8CD5874883841D712142A56A8D0F218F5003CB0296B6B509619F2C"
|
||||
|
||||
ECDSA deterministic test vector rfc 6979 p256 sha512 [#2]
|
||||
depends_on:MBEDTLS_ECP_DP_SECP256R1_ENABLED:MBEDTLS_MD_CAN_SHA512
|
||||
ecdsa_det_test_vectors:MBEDTLS_ECP_DP_SECP256R1:"C9AFA9D845BA75166B5C215767B1D6934E50C3DB36E89B127B8A622B120F6721":MBEDTLS_MD_SHA512:"EE26B0DD4AF7E749AA1A8EE3C10AE9923F618980772E473F8819A5D4940E0DB27AC185F8A0E1D5F84F88BC887FD67B143732C304CC5FA9AD8E6F57F50028A8FF":"461D93F31B6540894788FD206C07CFA0CC35F46FA3C91816FFF1040AD1581A04":"39AF9F15DE0DB8D97E72719C74820D304CE5226E32DEDAE67519E840D1194E55"
|
||||
|
||||
ECDSA deterministic test vector rfc 6979 p384 sha1 [#1]
|
||||
depends_on:MBEDTLS_ECP_DP_SECP384R1_ENABLED:MBEDTLS_MD_CAN_SHA1
|
||||
ecdsa_det_test_vectors:MBEDTLS_ECP_DP_SECP384R1:"6B9D3DAD2E1B8C1C05B19875B6659F4DE23C3B667BF297BA9AA47740787137D896D5724E4C70A825F872C9EA60D2EDF5":MBEDTLS_MD_SHA1:"8151325DCDBAE9E0FF95F9F9658432DBEDFDB209":"EC748D839243D6FBEF4FC5C4859A7DFFD7F3ABDDF72014540C16D73309834FA37B9BA002899F6FDA3A4A9386790D4EB2":"A3BCFA947BEEF4732BF247AC17F71676CB31A847B9FF0CBC9C9ED4C1A5B3FACF26F49CA031D4857570CCB5CA4424A443"
|
||||
|
||||
ECDSA deterministic test vector rfc 6979 p384 sha224 [#1]
|
||||
depends_on:MBEDTLS_ECP_DP_SECP384R1_ENABLED:MBEDTLS_MD_CAN_SHA224
|
||||
ecdsa_det_test_vectors:MBEDTLS_ECP_DP_SECP384R1:"6B9D3DAD2E1B8C1C05B19875B6659F4DE23C3B667BF297BA9AA47740787137D896D5724E4C70A825F872C9EA60D2EDF5":MBEDTLS_MD_SHA224:"9003E374BC726550C2C289447FD0533160F875709386DFA377BFD41C":"42356E76B55A6D9B4631C865445DBE54E056D3B3431766D0509244793C3F9366450F76EE3DE43F5A125333A6BE060122":"9DA0C81787064021E78DF658F2FBB0B042BF304665DB721F077A4298B095E4834C082C03D83028EFBF93A3C23940CA8D"
|
||||
|
||||
ECDSA deterministic test vector rfc 6979 p384 sha256 [#1]
|
||||
depends_on:MBEDTLS_ECP_DP_SECP384R1_ENABLED:MBEDTLS_MD_CAN_SHA256
|
||||
ecdsa_det_test_vectors:MBEDTLS_ECP_DP_SECP384R1:"6B9D3DAD2E1B8C1C05B19875B6659F4DE23C3B667BF297BA9AA47740787137D896D5724E4C70A825F872C9EA60D2EDF5":MBEDTLS_MD_SHA256:"AF2BDBE1AA9B6EC1E2ADE1D694F41FC71A831D0268E9891562113D8A62ADD1BF":"21B13D1E013C7FA1392D03C5F99AF8B30C570C6F98D4EA8E354B63A21D3DAA33BDE1E888E63355D92FA2B3C36D8FB2CD":"F3AA443FB107745BF4BD77CB3891674632068A10CA67E3D45DB2266FA7D1FEEBEFDC63ECCD1AC42EC0CB8668A4FA0AB0"
|
||||
|
||||
ECDSA deterministic test vector rfc 6979 p384 sha384 [#1]
|
||||
depends_on:MBEDTLS_ECP_DP_SECP384R1_ENABLED:MBEDTLS_MD_CAN_SHA384
|
||||
ecdsa_det_test_vectors:MBEDTLS_ECP_DP_SECP384R1:"6B9D3DAD2E1B8C1C05B19875B6659F4DE23C3B667BF297BA9AA47740787137D896D5724E4C70A825F872C9EA60D2EDF5":MBEDTLS_MD_SHA384:"9A9083505BC92276AEC4BE312696EF7BF3BF603F4BBD381196A029F340585312313BCA4A9B5B890EFEE42C77B1EE25FE":"94EDBB92A5ECB8AAD4736E56C691916B3F88140666CE9FA73D64C4EA95AD133C81A648152E44ACF96E36DD1E80FABE46":"99EF4AEB15F178CEA1FE40DB2603138F130E740A19624526203B6351D0A3A94FA329C145786E679E7B82C71A38628AC8"
|
||||
|
||||
ECDSA deterministic test vector rfc 6979 p384 sha512 [#1]
|
||||
depends_on:MBEDTLS_ECP_DP_SECP384R1_ENABLED:MBEDTLS_MD_CAN_SHA512
|
||||
ecdsa_det_test_vectors:MBEDTLS_ECP_DP_SECP384R1:"6B9D3DAD2E1B8C1C05B19875B6659F4DE23C3B667BF297BA9AA47740787137D896D5724E4C70A825F872C9EA60D2EDF5":MBEDTLS_MD_SHA512:"39A5E04AAFF7455D9850C605364F514C11324CE64016960D23D5DC57D3FFD8F49A739468AB8049BF18EEF820CDB1AD6C9015F838556BC7FAD4138B23FDF986C7":"ED0959D5880AB2D869AE7F6C2915C6D60F96507F9CB3E047C0046861DA4A799CFE30F35CC900056D7C99CD7882433709":"512C8CCEEE3890A84058CE1E22DBC2198F42323CE8ACA9135329F03C068E5112DC7CC3EF3446DEFCEB01A45C2667FDD5"
|
||||
|
||||
ECDSA deterministic test vector rfc 6979 p384 sha1 [#2]
|
||||
depends_on:MBEDTLS_ECP_DP_SECP384R1_ENABLED:MBEDTLS_MD_CAN_SHA1
|
||||
ecdsa_det_test_vectors:MBEDTLS_ECP_DP_SECP384R1:"6B9D3DAD2E1B8C1C05B19875B6659F4DE23C3B667BF297BA9AA47740787137D896D5724E4C70A825F872C9EA60D2EDF5":MBEDTLS_MD_SHA1:"A94A8FE5CCB19BA61C4C0873D391E987982FBBD3":"4BC35D3A50EF4E30576F58CD96CE6BF638025EE624004A1F7789A8B8E43D0678ACD9D29876DAF46638645F7F404B11C7":"D5A6326C494ED3FF614703878961C0FDE7B2C278F9A65FD8C4B7186201A2991695BA1C84541327E966FA7B50F7382282"
|
||||
|
||||
ECDSA deterministic test vector rfc 6979 p384 sha224 [#2]
|
||||
depends_on:MBEDTLS_ECP_DP_SECP384R1_ENABLED:MBEDTLS_MD_CAN_SHA224
|
||||
ecdsa_det_test_vectors:MBEDTLS_ECP_DP_SECP384R1:"6B9D3DAD2E1B8C1C05B19875B6659F4DE23C3B667BF297BA9AA47740787137D896D5724E4C70A825F872C9EA60D2EDF5":MBEDTLS_MD_SHA224:"90A3ED9E32B2AAF4C61C410EB925426119E1A9DC53D4286ADE99A809":"E8C9D0B6EA72A0E7837FEA1D14A1A9557F29FAA45D3E7EE888FC5BF954B5E62464A9A817C47FF78B8C11066B24080E72":"07041D4A7A0379AC7232FF72E6F77B6DDB8F09B16CCE0EC3286B2BD43FA8C6141C53EA5ABEF0D8231077A04540A96B66"
|
||||
|
||||
ECDSA deterministic test vector rfc 6979 p384 sha256 [#2]
|
||||
depends_on:MBEDTLS_ECP_DP_SECP384R1_ENABLED:MBEDTLS_MD_CAN_SHA256
|
||||
ecdsa_det_test_vectors:MBEDTLS_ECP_DP_SECP384R1:"6B9D3DAD2E1B8C1C05B19875B6659F4DE23C3B667BF297BA9AA47740787137D896D5724E4C70A825F872C9EA60D2EDF5":MBEDTLS_MD_SHA256:"9F86D081884C7D659A2FEAA0C55AD015A3BF4F1B2B0B822CD15D6C15B0F00A08":"6D6DEFAC9AB64DABAFE36C6BF510352A4CC27001263638E5B16D9BB51D451559F918EEDAF2293BE5B475CC8F0188636B":"2D46F3BECBCC523D5F1A1256BF0C9B024D879BA9E838144C8BA6BAEB4B53B47D51AB373F9845C0514EEFB14024787265"
|
||||
|
||||
ECDSA deterministic test vector rfc 6979 p384 sha384 [#2]
|
||||
depends_on:MBEDTLS_ECP_DP_SECP384R1_ENABLED:MBEDTLS_MD_CAN_SHA384
|
||||
ecdsa_det_test_vectors:MBEDTLS_ECP_DP_SECP384R1:"6B9D3DAD2E1B8C1C05B19875B6659F4DE23C3B667BF297BA9AA47740787137D896D5724E4C70A825F872C9EA60D2EDF5":MBEDTLS_MD_SHA384:"768412320F7B0AA5812FCE428DC4706B3CAE50E02A64CAA16A782249BFE8EFC4B7EF1CCB126255D196047DFEDF17A0A9":"8203B63D3C853E8D77227FB377BCF7B7B772E97892A80F36AB775D509D7A5FEB0542A7F0812998DA8F1DD3CA3CF023DB":"DDD0760448D42D8A43AF45AF836FCE4DE8BE06B485E9B61B827C2F13173923E06A739F040649A667BF3B828246BAA5A5"
|
||||
|
||||
ECDSA deterministic test vector rfc 6979 p384 sha512 [#2]
|
||||
depends_on:MBEDTLS_ECP_DP_SECP384R1_ENABLED:MBEDTLS_MD_CAN_SHA512
|
||||
ecdsa_det_test_vectors:MBEDTLS_ECP_DP_SECP384R1:"6B9D3DAD2E1B8C1C05B19875B6659F4DE23C3B667BF297BA9AA47740787137D896D5724E4C70A825F872C9EA60D2EDF5":MBEDTLS_MD_SHA512:"EE26B0DD4AF7E749AA1A8EE3C10AE9923F618980772E473F8819A5D4940E0DB27AC185F8A0E1D5F84F88BC887FD67B143732C304CC5FA9AD8E6F57F50028A8FF":"A0D5D090C9980FAF3C2CE57B7AE951D31977DD11C775D314AF55F76C676447D06FB6495CD21B4B6E340FC236584FB277":"976984E59B4C77B0E8E4460DCA3D9F20E07B9BB1F63BEEFAF576F6B2E8B224634A2092CD3792E0159AD9CEE37659C736"
|
||||
|
||||
ECDSA deterministic test vector rfc 6979 p521 sha1 [#1]
|
||||
depends_on:MBEDTLS_ECP_DP_SECP521R1_ENABLED:MBEDTLS_MD_CAN_SHA1
|
||||
ecdsa_det_test_vectors:MBEDTLS_ECP_DP_SECP521R1:"0FAD06DAA62BA3B25D2FB40133DA757205DE67F5BB0018FEE8C86E1B68C7E75CAA896EB32F1F47C70855836A6D16FCC1466F6D8FBEC67DB89EC0C08B0E996B83538":MBEDTLS_MD_SHA1:"8151325DCDBAE9E0FF95F9F9658432DBEDFDB209":"0343B6EC45728975EA5CBA6659BBB6062A5FF89EEA58BE3C80B619F322C87910FE092F7D45BB0F8EEE01ED3F20BABEC079D202AE677B243AB40B5431D497C55D75D":"0E7B0E675A9B24413D448B8CC119D2BF7B2D2DF032741C096634D6D65D0DBE3D5694625FB9E8104D3B842C1B0E2D0B98BEA19341E8676AEF66AE4EBA3D5475D5D16"
|
||||
|
||||
ECDSA deterministic test vector rfc 6979 p521 sha224 [#1]
|
||||
depends_on:MBEDTLS_ECP_DP_SECP521R1_ENABLED:MBEDTLS_MD_CAN_SHA224
|
||||
ecdsa_det_test_vectors:MBEDTLS_ECP_DP_SECP521R1:"0FAD06DAA62BA3B25D2FB40133DA757205DE67F5BB0018FEE8C86E1B68C7E75CAA896EB32F1F47C70855836A6D16FCC1466F6D8FBEC67DB89EC0C08B0E996B83538":MBEDTLS_MD_SHA224:"9003E374BC726550C2C289447FD0533160F875709386DFA377BFD41C":"1776331CFCDF927D666E032E00CF776187BC9FDD8E69D0DABB4109FFE1B5E2A30715F4CC923A4A5E94D2503E9ACFED92857B7F31D7152E0F8C00C15FF3D87E2ED2E":"050CB5265417FE2320BBB5A122B8E1A32BD699089851128E360E620A30C7E17BA41A666AF126CE100E5799B153B60528D5300D08489CA9178FB610A2006C254B41F"
|
||||
|
||||
ECDSA deterministic test vector rfc 6979 p521 sha256 [#1]
|
||||
depends_on:MBEDTLS_ECP_DP_SECP521R1_ENABLED:MBEDTLS_MD_CAN_SHA256
|
||||
ecdsa_det_test_vectors:MBEDTLS_ECP_DP_SECP521R1:"0FAD06DAA62BA3B25D2FB40133DA757205DE67F5BB0018FEE8C86E1B68C7E75CAA896EB32F1F47C70855836A6D16FCC1466F6D8FBEC67DB89EC0C08B0E996B83538":MBEDTLS_MD_SHA256:"AF2BDBE1AA9B6EC1E2ADE1D694F41FC71A831D0268E9891562113D8A62ADD1BF":"1511BB4D675114FE266FC4372B87682BAECC01D3CC62CF2303C92B3526012659D16876E25C7C1E57648F23B73564D67F61C6F14D527D54972810421E7D87589E1A7":"04A171143A83163D6DF460AAF61522695F207A58B95C0644D87E52AA1A347916E4F7A72930B1BC06DBE22CE3F58264AFD23704CBB63B29B931F7DE6C9D949A7ECFC"
|
||||
|
||||
ECDSA deterministic test vector rfc 6979 p521 sha384 [#1]
|
||||
depends_on:MBEDTLS_ECP_DP_SECP521R1_ENABLED:MBEDTLS_MD_CAN_SHA384
|
||||
ecdsa_det_test_vectors:MBEDTLS_ECP_DP_SECP521R1:"0FAD06DAA62BA3B25D2FB40133DA757205DE67F5BB0018FEE8C86E1B68C7E75CAA896EB32F1F47C70855836A6D16FCC1466F6D8FBEC67DB89EC0C08B0E996B83538":MBEDTLS_MD_SHA384:"9A9083505BC92276AEC4BE312696EF7BF3BF603F4BBD381196A029F340585312313BCA4A9B5B890EFEE42C77B1EE25FE":"1EA842A0E17D2DE4F92C15315C63DDF72685C18195C2BB95E572B9C5136CA4B4B576AD712A52BE9730627D16054BA40CC0B8D3FF035B12AE75168397F5D50C67451":"1F21A3CEE066E1961025FB048BD5FE2B7924D0CD797BABE0A83B66F1E35EEAF5FDE143FA85DC394A7DEE766523393784484BDF3E00114A1C857CDE1AA203DB65D61"
|
||||
|
||||
ECDSA deterministic test vector rfc 6979 p521 sha512 [#1]
|
||||
depends_on:MBEDTLS_ECP_DP_SECP521R1_ENABLED:MBEDTLS_MD_CAN_SHA512
|
||||
ecdsa_det_test_vectors:MBEDTLS_ECP_DP_SECP521R1:"0FAD06DAA62BA3B25D2FB40133DA757205DE67F5BB0018FEE8C86E1B68C7E75CAA896EB32F1F47C70855836A6D16FCC1466F6D8FBEC67DB89EC0C08B0E996B83538":MBEDTLS_MD_SHA512:"39A5E04AAFF7455D9850C605364F514C11324CE64016960D23D5DC57D3FFD8F49A739468AB8049BF18EEF820CDB1AD6C9015F838556BC7FAD4138B23FDF986C7":"0C328FAFCBD79DD77850370C46325D987CB525569FB63C5D3BC53950E6D4C5F174E25A1EE9017B5D450606ADD152B534931D7D4E8455CC91F9B15BF05EC36E377FA":"0617CCE7CF5064806C467F678D3B4080D6F1CC50AF26CA209417308281B68AF282623EAA63E5B5C0723D8B8C37FF0777B1A20F8CCB1DCCC43997F1EE0E44DA4A67A"
|
||||
|
||||
ECDSA deterministic test vector rfc 6979 p521 sha1 [#2]
|
||||
depends_on:MBEDTLS_ECP_DP_SECP521R1_ENABLED:MBEDTLS_MD_CAN_SHA1
|
||||
ecdsa_det_test_vectors:MBEDTLS_ECP_DP_SECP521R1:"0FAD06DAA62BA3B25D2FB40133DA757205DE67F5BB0018FEE8C86E1B68C7E75CAA896EB32F1F47C70855836A6D16FCC1466F6D8FBEC67DB89EC0C08B0E996B83538":MBEDTLS_MD_SHA1:"A94A8FE5CCB19BA61C4C0873D391E987982FBBD3":"13BAD9F29ABE20DE37EBEB823C252CA0F63361284015A3BF430A46AAA80B87B0693F0694BD88AFE4E661FC33B094CD3B7963BED5A727ED8BD6A3A202ABE009D0367":"1E9BB81FF7944CA409AD138DBBEE228E1AFCC0C890FC78EC8604639CB0DBDC90F717A99EAD9D272855D00162EE9527567DD6A92CBD629805C0445282BBC916797FF"
|
||||
|
||||
ECDSA deterministic test vector rfc 6979 p521 sha224 [#2]
|
||||
depends_on:MBEDTLS_ECP_DP_SECP521R1_ENABLED:MBEDTLS_MD_CAN_SHA224
|
||||
ecdsa_det_test_vectors:MBEDTLS_ECP_DP_SECP521R1:"0FAD06DAA62BA3B25D2FB40133DA757205DE67F5BB0018FEE8C86E1B68C7E75CAA896EB32F1F47C70855836A6D16FCC1466F6D8FBEC67DB89EC0C08B0E996B83538":MBEDTLS_MD_SHA224:"90A3ED9E32B2AAF4C61C410EB925426119E1A9DC53D4286ADE99A809":"1C7ED902E123E6815546065A2C4AF977B22AA8EADDB68B2C1110E7EA44D42086BFE4A34B67DDC0E17E96536E358219B23A706C6A6E16BA77B65E1C595D43CAE17FB":"177336676304FCB343CE028B38E7B4FBA76C1C1B277DA18CAD2A8478B2A9A9F5BEC0F3BA04F35DB3E4263569EC6AADE8C92746E4C82F8299AE1B8F1739F8FD519A4"
|
||||
|
||||
ECDSA deterministic test vector rfc 6979 p521 sha256 [#2]
|
||||
depends_on:MBEDTLS_ECP_DP_SECP521R1_ENABLED:MBEDTLS_MD_CAN_SHA256
|
||||
ecdsa_det_test_vectors:MBEDTLS_ECP_DP_SECP521R1:"0FAD06DAA62BA3B25D2FB40133DA757205DE67F5BB0018FEE8C86E1B68C7E75CAA896EB32F1F47C70855836A6D16FCC1466F6D8FBEC67DB89EC0C08B0E996B83538":MBEDTLS_MD_SHA256:"9F86D081884C7D659A2FEAA0C55AD015A3BF4F1B2B0B822CD15D6C15B0F00A08":"00E871C4A14F993C6C7369501900C4BC1E9C7B0B4BA44E04868B30B41D8071042EB28C4C250411D0CE08CD197E4188EA4876F279F90B3D8D74A3C76E6F1E4656AA8":"0CD52DBAA33B063C3A6CD8058A1FB0A46A4754B034FCC644766CA14DA8CA5CA9FDE00E88C1AD60CCBA759025299079D7A427EC3CC5B619BFBC828E7769BCD694E86"
|
||||
|
||||
ECDSA deterministic test vector rfc 6979 p521 sha384 [#2]
|
||||
depends_on:MBEDTLS_ECP_DP_SECP521R1_ENABLED:MBEDTLS_MD_CAN_SHA384
|
||||
ecdsa_det_test_vectors:MBEDTLS_ECP_DP_SECP521R1:"0FAD06DAA62BA3B25D2FB40133DA757205DE67F5BB0018FEE8C86E1B68C7E75CAA896EB32F1F47C70855836A6D16FCC1466F6D8FBEC67DB89EC0C08B0E996B83538":MBEDTLS_MD_SHA384:"768412320F7B0AA5812FCE428DC4706B3CAE50E02A64CAA16A782249BFE8EFC4B7EF1CCB126255D196047DFEDF17A0A9":"14BEE21A18B6D8B3C93FAB08D43E739707953244FDBE924FA926D76669E7AC8C89DF62ED8975C2D8397A65A49DCC09F6B0AC62272741924D479354D74FF6075578C":"133330865C067A0EAF72362A65E2D7BC4E461E8C8995C3B6226A21BD1AA78F0ED94FE536A0DCA35534F0CD1510C41525D163FE9D74D134881E35141ED5E8E95B979"
|
||||
|
||||
ECDSA deterministic test vector rfc 6979 p521 sha512 [#2]
|
||||
depends_on:MBEDTLS_ECP_DP_SECP521R1_ENABLED:MBEDTLS_MD_CAN_SHA512
|
||||
ecdsa_det_test_vectors:MBEDTLS_ECP_DP_SECP521R1:"0FAD06DAA62BA3B25D2FB40133DA757205DE67F5BB0018FEE8C86E1B68C7E75CAA896EB32F1F47C70855836A6D16FCC1466F6D8FBEC67DB89EC0C08B0E996B83538":MBEDTLS_MD_SHA512:"EE26B0DD4AF7E749AA1A8EE3C10AE9923F618980772E473F8819A5D4940E0DB27AC185F8A0E1D5F84F88BC887FD67B143732C304CC5FA9AD8E6F57F50028A8FF":"13E99020ABF5CEE7525D16B69B229652AB6BDF2AFFCAEF38773B4B7D08725F10CDB93482FDCC54EDCEE91ECA4166B2A7C6265EF0CE2BD7051B7CEF945BABD47EE6D":"1FBD0013C674AA79CB39849527916CE301C66EA7CE8B80682786AD60F98F7E78A19CA69EFF5C57400E3B3A0AD66CE0978214D13BAF4E9AC60752F7B155E2DE4DCE3"
|
||||
|
||||
ECDSA restartable read-verify: max_ops=0 (disabled)
|
||||
depends_on:MBEDTLS_ECP_DP_SECP256R1_ENABLED
|
||||
ecdsa_read_restart:MBEDTLS_ECP_DP_SECP256R1:"04e8f573412a810c5f81ecd2d251bb94387e72f28af70dced90ebe75725c97a6428231069c2b1ef78509a22c59044319f6ed3cb750dfe64c2a282b35967a458ad6":"dee9d4d8b0e40a034602d6e638197998060f6e9f353ae1d10c94cd56476d3c92":"304502210098a5a1392abe29e4b0a4da3fefe9af0f8c32e5b839ab52ba6a05da9c3b7edd0f0220596f0e195ae1e58c1e53e9e7f0f030b274348a8c11232101778d89c4943f5ad2":0:0:0
|
||||
|
||||
ECDSA restartable read-verify: max_ops=1
|
||||
depends_on:MBEDTLS_ECP_DP_SECP256R1_ENABLED
|
||||
ecdsa_read_restart:MBEDTLS_ECP_DP_SECP256R1:"04e8f573412a810c5f81ecd2d251bb94387e72f28af70dced90ebe75725c97a6428231069c2b1ef78509a22c59044319f6ed3cb750dfe64c2a282b35967a458ad6":"dee9d4d8b0e40a034602d6e638197998060f6e9f353ae1d10c94cd56476d3c92":"304502210098a5a1392abe29e4b0a4da3fefe9af0f8c32e5b839ab52ba6a05da9c3b7edd0f0220596f0e195ae1e58c1e53e9e7f0f030b274348a8c11232101778d89c4943f5ad2":1:42:10000
|
||||
|
||||
ECDSA restartable read-verify: max_ops=10000
|
||||
depends_on:MBEDTLS_ECP_DP_SECP256R1_ENABLED
|
||||
ecdsa_read_restart:MBEDTLS_ECP_DP_SECP256R1:"04e8f573412a810c5f81ecd2d251bb94387e72f28af70dced90ebe75725c97a6428231069c2b1ef78509a22c59044319f6ed3cb750dfe64c2a282b35967a458ad6":"dee9d4d8b0e40a034602d6e638197998060f6e9f353ae1d10c94cd56476d3c92":"304502210098a5a1392abe29e4b0a4da3fefe9af0f8c32e5b839ab52ba6a05da9c3b7edd0f0220596f0e195ae1e58c1e53e9e7f0f030b274348a8c11232101778d89c4943f5ad2":10000:0:0
|
||||
|
||||
ECDSA restartable read-verify: max_ops=250
|
||||
depends_on:MBEDTLS_ECP_DP_SECP256R1_ENABLED
|
||||
ecdsa_read_restart:MBEDTLS_ECP_DP_SECP256R1:"04e8f573412a810c5f81ecd2d251bb94387e72f28af70dced90ebe75725c97a6428231069c2b1ef78509a22c59044319f6ed3cb750dfe64c2a282b35967a458ad6":"dee9d4d8b0e40a034602d6e638197998060f6e9f353ae1d10c94cd56476d3c92":"304502210098a5a1392abe29e4b0a4da3fefe9af0f8c32e5b839ab52ba6a05da9c3b7edd0f0220596f0e195ae1e58c1e53e9e7f0f030b274348a8c11232101778d89c4943f5ad2":250:4:64
|
||||
|
||||
ECDSA restartable sign-write: secp256r1 max_ops=0 (disabled)
|
||||
depends_on:MBEDTLS_ECP_DP_SECP256R1_ENABLED:MBEDTLS_MD_CAN_SHA256
|
||||
ecdsa_write_restart:MBEDTLS_ECP_DP_SECP256R1:"C9AFA9D845BA75166B5C215767B1D6934E50C3DB36E89B127B8A622B120F6721":MBEDTLS_MD_SHA256:"9F86D081884C7D659A2FEAA0C55AD015A3BF4F1B2B0B822CD15D6C15B0F00A08":"3045022100f1abb023518351cd71d881567b1ea663ed3efcf6c5132b354f28d3b0b7d383670220019f4113742a2b14bd25926b49c649155f267e60d3814b4c0cc84250e46f0083":0:0:0
|
||||
|
||||
ECDSA restartable sign-write: secp256r1 restart max_ops=1
|
||||
depends_on:MBEDTLS_ECP_DP_SECP256R1_ENABLED:MBEDTLS_MD_CAN_SHA256
|
||||
ecdsa_write_restart:MBEDTLS_ECP_DP_SECP256R1:"C9AFA9D845BA75166B5C215767B1D6934E50C3DB36E89B127B8A622B120F6721":MBEDTLS_MD_SHA256:"9F86D081884C7D659A2FEAA0C55AD015A3BF4F1B2B0B822CD15D6C15B0F00A08":"3045022100f1abb023518351cd71d881567b1ea663ed3efcf6c5132b354f28d3b0b7d383670220019f4113742a2b14bd25926b49c649155f267e60d3814b4c0cc84250e46f0083":1:1:10000
|
||||
|
||||
ECDSA restartable sign-write: secp256r1 restart max_ops=10000
|
||||
depends_on:MBEDTLS_ECP_DP_SECP256R1_ENABLED:MBEDTLS_MD_CAN_SHA256
|
||||
ecdsa_write_restart:MBEDTLS_ECP_DP_SECP256R1:"C9AFA9D845BA75166B5C215767B1D6934E50C3DB36E89B127B8A622B120F6721":MBEDTLS_MD_SHA256:"9F86D081884C7D659A2FEAA0C55AD015A3BF4F1B2B0B822CD15D6C15B0F00A08":"3045022100f1abb023518351cd71d881567b1ea663ed3efcf6c5132b354f28d3b0b7d383670220019f4113742a2b14bd25926b49c649155f267e60d3814b4c0cc84250e46f0083":10000:0:0
|
||||
|
||||
ECDSA restartable sign-write: secp256r1 restart max_ops=250
|
||||
depends_on:MBEDTLS_ECP_DP_SECP256R1_ENABLED:MBEDTLS_MD_CAN_SHA256
|
||||
ecdsa_write_restart:MBEDTLS_ECP_DP_SECP256R1:"C9AFA9D845BA75166B5C215767B1D6934E50C3DB36E89B127B8A622B120F6721":MBEDTLS_MD_SHA256:"9F86D081884C7D659A2FEAA0C55AD015A3BF4F1B2B0B822CD15D6C15B0F00A08":"3045022100f1abb023518351cd71d881567b1ea663ed3efcf6c5132b354f28d3b0b7d383670220019f4113742a2b14bd25926b49c649155f267e60d3814b4c0cc84250e46f0083":250:2:32
|
||||
|
||||
ECDSA zero private parameter p192
|
||||
depends_on:MBEDTLS_ECP_DP_SECP192R1_ENABLED
|
||||
ecdsa_prim_test_vectors:MBEDTLS_ECP_DP_SECP192R1:"0":"2442A5CC0ECD015FA3CA31DC8E2BBC70BF42D60CBCA20085":"6FC98BD7E50211A4A27102FA3549DF79EBCB4BF246B80945":"9E56F509196784D963D1C0A401510EE7ADA3DCC5DEE04B15":"BA7816BF8F01CFEA414140DE5DAE2223B00361A396177A9C":"98C6BD12B23EAF5E2A2045132086BE3EB8EBD62ABF6698FF":"57A22B07DEA9530F8DE9471B1DC6624472E8E2844BC25B64":MBEDTLS_ERR_ECP_INVALID_KEY
|
||||
|
||||
ECDSA private parameter greater than n p192
|
||||
depends_on:MBEDTLS_ECP_DP_SECP192R1_ENABLED
|
||||
ecdsa_prim_test_vectors:MBEDTLS_ECP_DP_SECP192R1:"6FAB034934E4C0FC9AE67F5B5659A9D7D1FEFD187EE09FD41":"2442A5CC0ECD015FA3CA31DC8E2BBC70BF42D60CBCA20085":"6FC98BD7E50211A4A27102FA3549DF79EBCB4BF246B80945":"9E56F509196784D963D1C0A401510EE7ADA3DCC5DEE04B15":"BA7816BF8F01CFEA414140DE5DAE2223B00361A396177A9CB410FF61":"98C6BD12B23EAF5E2A2045132086BE3EB8EBD62ABF6698FF":"57A22B07DEA9530F8DE9471B1DC6624472E8E2844BC25B64":MBEDTLS_ERR_ECP_INVALID_KEY
|
||||
|
||||
ECDSA zero private parameter p224
|
||||
depends_on:MBEDTLS_ECP_DP_SECP224R1_ENABLED
|
||||
ecdsa_prim_test_vectors:MBEDTLS_ECP_DP_SECP224R1:"0":"2442A5CC0ECD015FA3CA31DC8E2BBC70BF42D60CBCA20085E0822CB04235E970":"6FC98BD7E50211A4A27102FA3549DF79EBCB4BF246B80945CDDFE7D5":"9E56F509196784D963D1C0A401510EE7ADA3DCC5DEE04B154BF61AF1":"BA7816BF8F01CFEA414140DE5DAE2223B00361A396177A9CB410FF61":"22226F9D40A96E19C4A301CE5B74B115303C0F3A4FD30FC257FB57AC":"66D1CDD83E3AF75605DD6E2FEFF196D30AA7ED7A2EDF7AF475403D69":MBEDTLS_ERR_ECP_INVALID_KEY
|
||||
|
||||
ECDSA private parameter greater than n p224
|
||||
depends_on:MBEDTLS_ECP_DP_SECP224R1_ENABLED
|
||||
ecdsa_prim_test_vectors:MBEDTLS_ECP_DP_SECP224R1:"F220266E1105BFE3083E03EC7A3A654651F45E37167E88600BF257C11":"2442A5CC0ECD015FA3CA31DC8E2BBC70BF42D60CBCA20085E0822CB04235E970":"6FC98BD7E50211A4A27102FA3549DF79EBCB4BF246B80945CDDFE7D5":"9E56F509196784D963D1C0A401510EE7ADA3DCC5DEE04B154BF61AF1":"BA7816BF8F01CFEA414140DE5DAE2223B00361A396177A9CB410FF61F20015AD":"22226F9D40A96E19C4A301CE5B74B115303C0F3A4FD30FC257FB57AC":"66D1CDD83E3AF75605DD6E2FEFF196D30AA7ED7A2EDF7AF475403D69":MBEDTLS_ERR_ECP_INVALID_KEY
|
||||
|
||||
ECDSA zero private parameter p256
|
||||
depends_on:MBEDTLS_ECP_DP_SECP256R1_ENABLED
|
||||
ecdsa_prim_test_vectors:MBEDTLS_ECP_DP_SECP256R1:"0":"2442A5CC0ECD015FA3CA31DC8E2BBC70BF42D60CBCA20085E0822CB04235E970":"6FC98BD7E50211A4A27102FA3549DF79EBCB4BF246B80945CDDFE7D509BBFD7D":"9E56F509196784D963D1C0A401510EE7ADA3DCC5DEE04B154BF61AF1D5A6DECE":"BA7816BF8F01CFEA414140DE5DAE2223B00361A396177A9CB410FF61F20015AD":"CB28E0999B9C7715FD0A80D8E47A77079716CBBF917DD72E97566EA1C066957C":"86FA3BB4E26CAD5BF90B7F81899256CE7594BB1EA0C89212748BFF3B3D5B0315":MBEDTLS_ERR_ECP_INVALID_KEY
|
||||
|
||||
ECDSA private parameter greater than n p256
|
||||
depends_on:MBEDTLS_ECP_DP_SECP256R1_ENABLED
|
||||
ecdsa_prim_test_vectors:MBEDTLS_ECP_DP_SECP256R1:"DC51D3866A15BACDE33D96F992FCA99DA7E6EF0934E7097559C27F1614C88A7F1":"2442A5CC0ECD015FA3CA31DC8E2BBC70BF42D60CBCA20085E0822CB04235E970":"6FC98BD7E50211A4A27102FA3549DF79EBCB4BF246B80945CDDFE7D509BBFD7D":"9E56F509196784D963D1C0A401510EE7ADA3DCC5DEE04B154BF61AF1D5A6DECE":"BA7816BF8F01CFEA414140DE5DAE2223B00361A396177A9CB410FF61F20015AD":"CB28E0999B9C7715FD0A80D8E47A77079716CBBF917DD72E97566EA1C066957C":"86FA3BB4E26CAD5BF90B7F81899256CE7594BB1EA0C89212748BFF3B3D5B0315":MBEDTLS_ERR_ECP_INVALID_KEY
|
||||
|
||||
ECDSA zero private parameter p384
|
||||
depends_on:MBEDTLS_ECP_DP_SECP384R1_ENABLED
|
||||
ecdsa_prim_test_vectors:MBEDTLS_ECP_DP_SECP384R1:"0":"96281BF8DD5E0525CA049C048D345D3082968D10FEDF5C5ACA0C64E6465A97EA5CE10C9DFEC21797415710721F437922":"447688BA94708EB6E2E4D59F6AB6D7EDFF9301D249FE49C33096655F5D502FAD3D383B91C5E7EDAA2B714CC99D5743CA":"B4B74E44D71A13D568003D7489908D564C7761E229C58CBFA18950096EB7463B854D7FA992F934D927376285E63414FA":"CB00753F45A35E8BB5A03D699AC65007272C32AB0EDED1631A8B605A43FF5BED8086072BA1E7CC2358BAECA134C825A7":"FB017B914E29149432D8BAC29A514640B46F53DDAB2C69948084E2930F1C8F7E08E07C9C63F2D21A07DCB56A6AF56EB3":"B263A1305E057F984D38726A1B46874109F417BCA112674C528262A40A629AF1CBB9F516CE0FA7D2FF630863A00E8B9F":MBEDTLS_ERR_ECP_INVALID_KEY
|
||||
|
||||
ECDSA private parameter greater than n p384
|
||||
depends_on:MBEDTLS_ECP_DP_SECP384R1_ENABLED
|
||||
ecdsa_prim_test_vectors:MBEDTLS_ECP_DP_SECP384R1:"10BEB646634BA87735D77AE4809A0EBEA865535DE4C1E1DCB692E84708E81A5AF62E528C38B2A81B35309668D73524D9F":"96281BF8DD5E0525CA049C048D345D3082968D10FEDF5C5ACA0C64E6465A97EA5CE10C9DFEC21797415710721F437922":"447688BA94708EB6E2E4D59F6AB6D7EDFF9301D249FE49C33096655F5D502FAD3D383B91C5E7EDAA2B714CC99D5743CA":"B4B74E44D71A13D568003D7489908D564C7761E229C58CBFA18950096EB7463B854D7FA992F934D927376285E63414FA":"CB00753F45A35E8BB5A03D699AC65007272C32AB0EDED1631A8B605A43FF5BED8086072BA1E7CC2358BAECA134C825A7":"FB017B914E29149432D8BAC29A514640B46F53DDAB2C69948084E2930F1C8F7E08E07C9C63F2D21A07DCB56A6AF56EB3":"B263A1305E057F984D38726A1B46874109F417BCA112674C528262A40A629AF1CBB9F516CE0FA7D2FF630863A00E8B9F":MBEDTLS_ERR_ECP_INVALID_KEY
|
||||
|
||||
ECDSA zero private parameter p521
|
||||
depends_on:MBEDTLS_ECP_DP_SECP521R1_ENABLED
|
||||
ecdsa_prim_test_vectors:MBEDTLS_ECP_DP_SECP521R1:"0":"0151518F1AF0F563517EDD5485190DF95A4BF57B5CBA4CF2A9A3F6474725A35F7AFE0A6DDEB8BEDBCD6A197E592D40188901CECD650699C9B5E456AEA5ADD19052A8":"006F3B142EA1BFFF7E2837AD44C9E4FF6D2D34C73184BBAD90026DD5E6E85317D9DF45CAD7803C6C20035B2F3FF63AFF4E1BA64D1C077577DA3F4286C58F0AEAE643":"00C1C2B305419F5A41344D7E4359933D734096F556197A9B244342B8B62F46F9373778F9DE6B6497B1EF825FF24F42F9B4A4BD7382CFC3378A540B1B7F0C1B956C2F":"DDAF35A193617ABACC417349AE20413112E6FA4E89A97EA20A9EEEE64B55D39A2192992A274FC1A836BA3C23A3FEEBBD454D4423643CE80E2A9AC94FA54CA49F":"0154FD3836AF92D0DCA57DD5341D3053988534FDE8318FC6AAAAB68E2E6F4339B19F2F281A7E0B22C269D93CF8794A9278880ED7DBB8D9362CAEACEE544320552251":"017705A7030290D1CEB605A9A1BB03FF9CDD521E87A696EC926C8C10C8362DF4975367101F67D1CF9BCCBF2F3D239534FA509E70AAC851AE01AAC68D62F866472660":MBEDTLS_ERR_ECP_INVALID_KEY
|
||||
|
||||
ECDSA private parameter greater than n p521
|
||||
depends_on:MBEDTLS_ECP_DP_SECP521R1_ENABLED
|
||||
ecdsa_prim_test_vectors:MBEDTLS_ECP_DP_SECP521R1:"0065FDA3409451DCAB0A0EAD45495112A3D813C17BFD34BDF8C1209D7DF5849120597779060A7FF9D704ADF78B570FFAD6F062E95C7E0C5D5481C5B153B48B375FA11":"0151518F1AF0F563517EDD5485190DF95A4BF57B5CBA4CF2A9A3F6474725A35F7AFE0A6DDEB8BEDBCD6A197E592D40188901CECD650699C9B5E456AEA5ADD19052A8":"006F3B142EA1BFFF7E2837AD44C9E4FF6D2D34C73184BBAD90026DD5E6E85317D9DF45CAD7803C6C20035B2F3FF63AFF4E1BA64D1C077577DA3F4286C58F0AEAE643":"00C1C2B305419F5A41344D7E4359933D734096F556197A9B244342B8B62F46F9373778F9DE6B6497B1EF825FF24F42F9B4A4BD7382CFC3378A540B1B7F0C1B956C2F":"DDAF35A193617ABACC417349AE20413112E6FA4E89A97EA20A9EEEE64B55D39A2192992A274FC1A836BA3C23A3FEEBBD454D4423643CE80E2A9AC94FA54CA49F":"0154FD3836AF92D0DCA57DD5341D3053988534FDE8318FC6AAAAB68E2E6F4339B19F2F281A7E0B22C269D93CF8794A9278880ED7DBB8D9362CAEACEE544320552251":"017705A7030290D1CEB605A9A1BB03FF9CDD521E87A696EC926C8C10C8362DF4975367101F67D1CF9BCCBF2F3D239534FA509E70AAC851AE01AAC68D62F866472660":MBEDTLS_ERR_ECP_INVALID_KEY
|
||||
|
||||
ECDSA verify invalid pub key (not on curve), zero bytes of data
|
||||
depends_on:MBEDTLS_ECP_DP_SECP256K1_ENABLED
|
||||
ecdsa_verify:MBEDTLS_ECP_DP_SECP256K1:"1":"2":"1":"1":"":MBEDTLS_ERR_ECP_INVALID_KEY
|
||||
|
||||
ECDSA verify invalid pub key (not on curve), one byte of data
|
||||
depends_on:MBEDTLS_ECP_DP_SECP256K1_ENABLED
|
||||
ecdsa_verify:MBEDTLS_ECP_DP_SECP256K1:"1":"2":"1":"1":"00":MBEDTLS_ERR_ECP_INVALID_KEY
|
||||
|
||||
ECDSA verify invalid pub key (not on curve), r=1, s=1
|
||||
depends_on:MBEDTLS_ECP_DP_SECP256K1_ENABLED
|
||||
ecdsa_verify:MBEDTLS_ECP_DP_SECP256K1:"1":"2":"1":"1":"0000000000000000000000000000000000000000000000000000000000000000":MBEDTLS_ERR_ECP_INVALID_KEY
|
||||
|
||||
ECDSA verify invalid pub key (also not on curve), r=1, s=1
|
||||
depends_on:MBEDTLS_ECP_DP_SECP256K1_ENABLED
|
||||
ecdsa_verify:MBEDTLS_ECP_DP_SECP256K1:"1":"12345":"1":"1":"0000000000000000000000000000000000000000000000000000000000000000":MBEDTLS_ERR_ECP_INVALID_KEY
|
||||
|
||||
ECDSA verify invalid pub key (not on curve), r=12345, s=1
|
||||
depends_on:MBEDTLS_ECP_DP_SECP256K1_ENABLED
|
||||
ecdsa_verify:MBEDTLS_ECP_DP_SECP256K1:"1":"2":"12345":"1":"0000000000000000000000000000000000000000000000000000000000000000":MBEDTLS_ERR_ECP_INVALID_KEY
|
||||
|
||||
ECDSA verify invalid pub key (not on curve), r=1, s=12345
|
||||
depends_on:MBEDTLS_ECP_DP_SECP256K1_ENABLED
|
||||
ecdsa_verify:MBEDTLS_ECP_DP_SECP256K1:"1":"2":"1":"12345":"0000000000000000000000000000000000000000000000000000000000000000":MBEDTLS_ERR_ECP_INVALID_KEY
|
||||
|
||||
ECDSA verify valid pub key, invalid sig (r=0), 0 bytes of data
|
||||
depends_on:MBEDTLS_ECP_DP_SECP256K1_ENABLED
|
||||
ecdsa_verify:MBEDTLS_ECP_DP_SECP256K1:"79BE667EF9DCBBAC55A06295CE870B07029BFCDB2DCE28D959F2815B16F81798":"483ADA7726A3C4655DA4FBFC0E1108A8FD17B448A68554199C47D08FFB10D4B8":"0":"1":"":MBEDTLS_ERR_ECP_VERIFY_FAILED
|
||||
|
||||
ECDSA verify valid pub key, invalid sig (r=0), 1 byte of data
|
||||
depends_on:MBEDTLS_ECP_DP_SECP256K1_ENABLED
|
||||
ecdsa_verify:MBEDTLS_ECP_DP_SECP256K1:"79BE667EF9DCBBAC55A06295CE870B07029BFCDB2DCE28D959F2815B16F81798":"483ADA7726A3C4655DA4FBFC0E1108A8FD17B448A68554199C47D08FFB10D4B8":"0":"1":"00":MBEDTLS_ERR_ECP_VERIFY_FAILED
|
||||
|
||||
ECDSA verify valid pub key, invalid sig (r>n-1), 32 bytes of data
|
||||
depends_on:MBEDTLS_ECP_DP_SECP256K1_ENABLED
|
||||
ecdsa_verify:MBEDTLS_ECP_DP_SECP256K1:"79BE667EF9DCBBAC55A06295CE870B07029BFCDB2DCE28D959F2815B16F81798":"483ADA7726A3C4655DA4FBFC0E1108A8FD17B448A68554199C47D08FFB10D4B8":"FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEBAAEDCE6AF48A03BBFD25E8CD0364141":"12":"0000000000000000000000000000000000000000000000000000000000000000":MBEDTLS_ERR_ECP_VERIFY_FAILED
|
||||
|
||||
ECDSA verify valid pub key, valid/incorrect sig, 0 bytes of data
|
||||
depends_on:MBEDTLS_ECP_DP_SECP256K1_ENABLED
|
||||
ecdsa_verify:MBEDTLS_ECP_DP_SECP256K1:"79BE667EF9DCBBAC55A06295CE870B07029BFCDB2DCE28D959F2815B16F81798":"483ADA7726A3C4655DA4FBFC0E1108A8FD17B448A68554199C47D08FFB10D4B8":"ed3bace23c5e17652e174c835fb72bf53ee306b3406a26890221b4cef7500f88":"84eead3fb3cdbdac882412af64cc125b6784690bebf575f1c32162ab65080037":"":MBEDTLS_ERR_ECP_VERIFY_FAILED
|
||||
|
||||
ECDSA verify valid pub key, valid/incorrect sig, 1 byte of data
|
||||
depends_on:MBEDTLS_ECP_DP_SECP256K1_ENABLED
|
||||
ecdsa_verify:MBEDTLS_ECP_DP_SECP256K1:"79BE667EF9DCBBAC55A06295CE870B07029BFCDB2DCE28D959F2815B16F81798":"483ADA7726A3C4655DA4FBFC0E1108A8FD17B448A68554199C47D08FFB10D4B8":"ed3bace23c5e17652e174c835fb72bf53ee306b3406a26890221b4cef7500f88":"84eead3fb3cdbdac882412af64cc125b6784690bebf575f1c32162ab65080037":"00":MBEDTLS_ERR_ECP_VERIFY_FAILED
|
||||
|
||||
ECDSA verify valid pub key, valid/incorrect sig, 32 bytes of data
|
||||
depends_on:MBEDTLS_ECP_DP_SECP256K1_ENABLED
|
||||
ecdsa_verify:MBEDTLS_ECP_DP_SECP256K1:"79BE667EF9DCBBAC55A06295CE870B07029BFCDB2DCE28D959F2815B16F81798":"483ADA7726A3C4655DA4FBFC0E1108A8FD17B448A68554199C47D08FFB10D4B8":"ed3bace23c5e17652e174c835fb72bf53ee306b3406a26890221b4cef7500f88":"84eead3fb3cdbdac882412af64cc125b6784690bebf575f1c32162ab65080037":"0000000000000000000000000000000000000000000000000000000000000000":MBEDTLS_ERR_ECP_VERIFY_FAILED
|
||||
|
||||
ECDSA verify valid public key, correct sig, 0 bytes of data
|
||||
depends_on:MBEDTLS_ECP_DP_SECP256K1_ENABLED
|
||||
ecdsa_verify:MBEDTLS_ECP_DP_SECP256K1:"79BE667EF9DCBBAC55A06295CE870B07029BFCDB2DCE28D959F2815B16F81798":"483ADA7726A3C4655DA4FBFC0E1108A8FD17B448A68554199C47D08FFB10D4B8":"ed3bace23c5e17652e174c835fb72bf53ee306b3406a26890221b4cef7500f88":"c9cc1ba95156bc103055a5d7946f3a3ae7f0657d1e53f1d5c2c9782950aa69b":"":0
|
||||
|
||||
ECDSA verify valid pub key, correct sig, 1 byte of data
|
||||
depends_on:MBEDTLS_ECP_DP_SECP256K1_ENABLED
|
||||
ecdsa_verify:MBEDTLS_ECP_DP_SECP256K1:"79BE667EF9DCBBAC55A06295CE870B07029BFCDB2DCE28D959F2815B16F81798":"483ADA7726A3C4655DA4FBFC0E1108A8FD17B448A68554199C47D08FFB10D4B8":"ed3bace23c5e17652e174c835fb72bf53ee306b3406a26890221b4cef7500f88":"c9cc1ba95156bc103055a5d7946f3a3ae7f0657d1e53f1d5c2c9782950aa69b":"00":0
|
||||
|
||||
ECDSA verify valid pub key, correct sig, 32 bytes of data
|
||||
depends_on:MBEDTLS_ECP_DP_SECP256K1_ENABLED
|
||||
ecdsa_verify:MBEDTLS_ECP_DP_SECP256K1:"79BE667EF9DCBBAC55A06295CE870B07029BFCDB2DCE28D959F2815B16F81798":"483ADA7726A3C4655DA4FBFC0E1108A8FD17B448A68554199C47D08FFB10D4B8":"ed3bace23c5e17652e174c835fb72bf53ee306b3406a26890221b4cef7500f88":"c9cc1ba95156bc103055a5d7946f3a3ae7f0657d1e53f1d5c2c9782950aa69b":"0000000000000000000000000000000000000000000000000000000000000000":0
|
||||
529
vendor/mbedtls/tests/suites/test_suite_ecdsa.function
vendored
Normal file
529
vendor/mbedtls/tests/suites/test_suite_ecdsa.function
vendored
Normal file
@@ -0,0 +1,529 @@
|
||||
/* BEGIN_HEADER */
|
||||
#include "mbedtls/ecdsa.h"
|
||||
/* END_HEADER */
|
||||
|
||||
/* BEGIN_DEPENDENCIES
|
||||
* depends_on:MBEDTLS_ECDSA_C
|
||||
* END_DEPENDENCIES
|
||||
*/
|
||||
|
||||
/* BEGIN_CASE */
|
||||
void ecdsa_prim_zero(int id)
|
||||
{
|
||||
mbedtls_ecp_group grp;
|
||||
mbedtls_ecp_point Q;
|
||||
mbedtls_mpi d, r, s;
|
||||
mbedtls_test_rnd_pseudo_info rnd_info;
|
||||
unsigned char buf[MBEDTLS_MD_MAX_SIZE];
|
||||
|
||||
mbedtls_ecp_group_init(&grp);
|
||||
mbedtls_ecp_point_init(&Q);
|
||||
mbedtls_mpi_init(&d); mbedtls_mpi_init(&r); mbedtls_mpi_init(&s);
|
||||
memset(&rnd_info, 0x00, sizeof(mbedtls_test_rnd_pseudo_info));
|
||||
memset(buf, 0, sizeof(buf));
|
||||
|
||||
TEST_ASSERT(mbedtls_ecp_group_load(&grp, id) == 0);
|
||||
TEST_ASSERT(mbedtls_ecp_gen_keypair(&grp, &d, &Q,
|
||||
&mbedtls_test_rnd_pseudo_rand,
|
||||
&rnd_info) == 0);
|
||||
|
||||
TEST_ASSERT(mbedtls_ecdsa_sign(&grp, &r, &s, &d, buf, sizeof(buf),
|
||||
&mbedtls_test_rnd_pseudo_rand,
|
||||
&rnd_info) == 0);
|
||||
TEST_ASSERT(mbedtls_ecdsa_verify(&grp, buf, sizeof(buf), &Q, &r, &s) == 0);
|
||||
|
||||
exit:
|
||||
mbedtls_ecp_group_free(&grp);
|
||||
mbedtls_ecp_point_free(&Q);
|
||||
mbedtls_mpi_free(&d); mbedtls_mpi_free(&r); mbedtls_mpi_free(&s);
|
||||
}
|
||||
/* END_CASE */
|
||||
|
||||
/* BEGIN_CASE */
|
||||
void ecdsa_prim_random(int id)
|
||||
{
|
||||
mbedtls_ecp_group grp;
|
||||
mbedtls_ecp_point Q;
|
||||
mbedtls_mpi d, r, s;
|
||||
mbedtls_test_rnd_pseudo_info rnd_info;
|
||||
unsigned char buf[MBEDTLS_MD_MAX_SIZE];
|
||||
|
||||
mbedtls_ecp_group_init(&grp);
|
||||
mbedtls_ecp_point_init(&Q);
|
||||
mbedtls_mpi_init(&d); mbedtls_mpi_init(&r); mbedtls_mpi_init(&s);
|
||||
memset(&rnd_info, 0x00, sizeof(mbedtls_test_rnd_pseudo_info));
|
||||
memset(buf, 0, sizeof(buf));
|
||||
|
||||
/* prepare material for signature */
|
||||
TEST_ASSERT(mbedtls_test_rnd_pseudo_rand(&rnd_info,
|
||||
buf, sizeof(buf)) == 0);
|
||||
TEST_ASSERT(mbedtls_ecp_group_load(&grp, id) == 0);
|
||||
TEST_ASSERT(mbedtls_ecp_gen_keypair(&grp, &d, &Q,
|
||||
&mbedtls_test_rnd_pseudo_rand,
|
||||
&rnd_info) == 0);
|
||||
|
||||
TEST_ASSERT(mbedtls_ecdsa_sign(&grp, &r, &s, &d, buf, sizeof(buf),
|
||||
&mbedtls_test_rnd_pseudo_rand,
|
||||
&rnd_info) == 0);
|
||||
TEST_ASSERT(mbedtls_ecdsa_verify(&grp, buf, sizeof(buf), &Q, &r, &s) == 0);
|
||||
|
||||
exit:
|
||||
mbedtls_ecp_group_free(&grp);
|
||||
mbedtls_ecp_point_free(&Q);
|
||||
mbedtls_mpi_free(&d); mbedtls_mpi_free(&r); mbedtls_mpi_free(&s);
|
||||
}
|
||||
/* END_CASE */
|
||||
|
||||
/* BEGIN_CASE */
|
||||
void ecdsa_prim_test_vectors(int id, char *d_str, char *xQ_str,
|
||||
char *yQ_str, data_t *rnd_buf,
|
||||
data_t *hash, char *r_str, char *s_str,
|
||||
int result)
|
||||
{
|
||||
mbedtls_ecp_group grp;
|
||||
mbedtls_ecp_point Q;
|
||||
mbedtls_mpi d, r, s, r_check, s_check, zero;
|
||||
mbedtls_test_rnd_buf_info rnd_info;
|
||||
|
||||
mbedtls_ecp_group_init(&grp);
|
||||
mbedtls_ecp_point_init(&Q);
|
||||
mbedtls_mpi_init(&d); mbedtls_mpi_init(&r); mbedtls_mpi_init(&s);
|
||||
mbedtls_mpi_init(&r_check); mbedtls_mpi_init(&s_check);
|
||||
mbedtls_mpi_init(&zero);
|
||||
|
||||
TEST_ASSERT(mbedtls_ecp_group_load(&grp, id) == 0);
|
||||
TEST_ASSERT(mbedtls_ecp_point_read_string(&Q, 16, xQ_str, yQ_str) == 0);
|
||||
TEST_ASSERT(mbedtls_test_read_mpi(&d, d_str) == 0);
|
||||
TEST_ASSERT(mbedtls_test_read_mpi(&r_check, r_str) == 0);
|
||||
TEST_ASSERT(mbedtls_test_read_mpi(&s_check, s_str) == 0);
|
||||
rnd_info.fallback_f_rng = mbedtls_test_rnd_std_rand;
|
||||
rnd_info.fallback_p_rng = NULL;
|
||||
rnd_info.buf = rnd_buf->x;
|
||||
rnd_info.length = rnd_buf->len;
|
||||
|
||||
/* Fix rnd_buf->x by shifting it left if necessary */
|
||||
if (grp.nbits % 8 != 0) {
|
||||
unsigned char shift = 8 - (grp.nbits % 8);
|
||||
size_t i;
|
||||
|
||||
for (i = 0; i < rnd_info.length - 1; i++) {
|
||||
rnd_buf->x[i] = rnd_buf->x[i] << shift | rnd_buf->x[i+1] >> (8 - shift);
|
||||
}
|
||||
|
||||
rnd_buf->x[rnd_info.length-1] <<= shift;
|
||||
}
|
||||
|
||||
TEST_ASSERT(mbedtls_ecdsa_sign(&grp, &r, &s, &d, hash->x, hash->len,
|
||||
mbedtls_test_rnd_buffer_rand, &rnd_info) == result);
|
||||
|
||||
if (result == 0) {
|
||||
/* Check we generated the expected values */
|
||||
TEST_EQUAL(mbedtls_mpi_cmp_mpi(&r, &r_check), 0);
|
||||
TEST_EQUAL(mbedtls_mpi_cmp_mpi(&s, &s_check), 0);
|
||||
|
||||
/* Valid signature */
|
||||
TEST_EQUAL(mbedtls_ecdsa_verify(&grp, hash->x, hash->len,
|
||||
&Q, &r_check, &s_check), 0);
|
||||
|
||||
/* Invalid signature: wrong public key (G instead of Q) */
|
||||
TEST_EQUAL(mbedtls_ecdsa_verify(&grp, hash->x, hash->len,
|
||||
&grp.G, &r_check, &s_check), MBEDTLS_ERR_ECP_VERIFY_FAILED);
|
||||
|
||||
/* Invalid signatures: r or s or both one off */
|
||||
TEST_EQUAL(mbedtls_mpi_sub_int(&r, &r_check, 1), 0);
|
||||
TEST_EQUAL(mbedtls_mpi_add_int(&s, &s_check, 1), 0);
|
||||
|
||||
TEST_EQUAL(mbedtls_ecdsa_verify(&grp, hash->x, hash->len, &Q,
|
||||
&r, &s_check), MBEDTLS_ERR_ECP_VERIFY_FAILED);
|
||||
TEST_EQUAL(mbedtls_ecdsa_verify(&grp, hash->x, hash->len, &Q,
|
||||
&r_check, &s), MBEDTLS_ERR_ECP_VERIFY_FAILED);
|
||||
TEST_EQUAL(mbedtls_ecdsa_verify(&grp, hash->x, hash->len, &Q,
|
||||
&r, &s), MBEDTLS_ERR_ECP_VERIFY_FAILED);
|
||||
|
||||
/* Invalid signatures: r, s or both (CVE-2022-21449) are zero */
|
||||
TEST_EQUAL(mbedtls_mpi_lset(&zero, 0), 0);
|
||||
|
||||
TEST_EQUAL(mbedtls_ecdsa_verify(&grp, hash->x, hash->len, &Q,
|
||||
&zero, &s_check), MBEDTLS_ERR_ECP_VERIFY_FAILED);
|
||||
TEST_EQUAL(mbedtls_ecdsa_verify(&grp, hash->x, hash->len, &Q,
|
||||
&r_check, &zero), MBEDTLS_ERR_ECP_VERIFY_FAILED);
|
||||
TEST_EQUAL(mbedtls_ecdsa_verify(&grp, hash->x, hash->len, &Q,
|
||||
&zero, &zero), MBEDTLS_ERR_ECP_VERIFY_FAILED);
|
||||
|
||||
/* Invalid signatures: r, s or both are == N */
|
||||
TEST_EQUAL(mbedtls_ecdsa_verify(&grp, hash->x, hash->len, &Q,
|
||||
&grp.N, &s_check), MBEDTLS_ERR_ECP_VERIFY_FAILED);
|
||||
TEST_EQUAL(mbedtls_ecdsa_verify(&grp, hash->x, hash->len, &Q,
|
||||
&r_check, &grp.N), MBEDTLS_ERR_ECP_VERIFY_FAILED);
|
||||
TEST_EQUAL(mbedtls_ecdsa_verify(&grp, hash->x, hash->len, &Q,
|
||||
&grp.N, &grp.N), MBEDTLS_ERR_ECP_VERIFY_FAILED);
|
||||
|
||||
/* Invalid signatures: r, s or both are negative */
|
||||
TEST_EQUAL(mbedtls_mpi_sub_mpi(&r, &r_check, &grp.N), 0);
|
||||
TEST_EQUAL(mbedtls_mpi_sub_mpi(&s, &s_check, &grp.N), 0);
|
||||
|
||||
TEST_EQUAL(mbedtls_ecdsa_verify(&grp, hash->x, hash->len, &Q,
|
||||
&r, &s_check), MBEDTLS_ERR_ECP_VERIFY_FAILED);
|
||||
TEST_EQUAL(mbedtls_ecdsa_verify(&grp, hash->x, hash->len, &Q,
|
||||
&r_check, &s), MBEDTLS_ERR_ECP_VERIFY_FAILED);
|
||||
TEST_EQUAL(mbedtls_ecdsa_verify(&grp, hash->x, hash->len, &Q,
|
||||
&r, &s), MBEDTLS_ERR_ECP_VERIFY_FAILED);
|
||||
|
||||
/* Invalid signatures: r or s or both are > N */
|
||||
TEST_EQUAL(mbedtls_mpi_add_mpi(&r, &r_check, &grp.N), 0);
|
||||
TEST_EQUAL(mbedtls_mpi_add_mpi(&s, &s_check, &grp.N), 0);
|
||||
|
||||
TEST_EQUAL(mbedtls_ecdsa_verify(&grp, hash->x, hash->len, &Q,
|
||||
&r, &s_check), MBEDTLS_ERR_ECP_VERIFY_FAILED);
|
||||
TEST_EQUAL(mbedtls_ecdsa_verify(&grp, hash->x, hash->len, &Q,
|
||||
&r_check, &s), MBEDTLS_ERR_ECP_VERIFY_FAILED);
|
||||
TEST_EQUAL(mbedtls_ecdsa_verify(&grp, hash->x, hash->len, &Q,
|
||||
&r, &s), MBEDTLS_ERR_ECP_VERIFY_FAILED);
|
||||
}
|
||||
|
||||
exit:
|
||||
mbedtls_ecp_group_free(&grp);
|
||||
mbedtls_ecp_point_free(&Q);
|
||||
mbedtls_mpi_free(&d); mbedtls_mpi_free(&r); mbedtls_mpi_free(&s);
|
||||
mbedtls_mpi_free(&r_check); mbedtls_mpi_free(&s_check);
|
||||
mbedtls_mpi_free(&zero);
|
||||
}
|
||||
/* END_CASE */
|
||||
|
||||
/* BEGIN_CASE depends_on:MBEDTLS_ECDSA_DETERMINISTIC */
|
||||
void ecdsa_det_test_vectors(int id, char *d_str, int md_alg, data_t *hash,
|
||||
char *r_str, char *s_str)
|
||||
{
|
||||
mbedtls_ecp_group grp;
|
||||
mbedtls_mpi d, r, s, r_check, s_check;
|
||||
mbedtls_ecp_group_init(&grp);
|
||||
mbedtls_mpi_init(&d); mbedtls_mpi_init(&r); mbedtls_mpi_init(&s);
|
||||
mbedtls_mpi_init(&r_check); mbedtls_mpi_init(&s_check);
|
||||
|
||||
MD_PSA_INIT();
|
||||
|
||||
TEST_ASSERT(mbedtls_ecp_group_load(&grp, id) == 0);
|
||||
TEST_ASSERT(mbedtls_test_read_mpi(&d, d_str) == 0);
|
||||
TEST_ASSERT(mbedtls_test_read_mpi(&r_check, r_str) == 0);
|
||||
TEST_ASSERT(mbedtls_test_read_mpi(&s_check, s_str) == 0);
|
||||
|
||||
TEST_ASSERT(
|
||||
mbedtls_ecdsa_sign_det_ext(&grp, &r, &s, &d,
|
||||
hash->x, hash->len, md_alg,
|
||||
mbedtls_test_rnd_std_rand,
|
||||
NULL)
|
||||
== 0);
|
||||
|
||||
TEST_ASSERT(mbedtls_mpi_cmp_mpi(&r, &r_check) == 0);
|
||||
TEST_ASSERT(mbedtls_mpi_cmp_mpi(&s, &s_check) == 0);
|
||||
|
||||
exit:
|
||||
mbedtls_ecp_group_free(&grp);
|
||||
mbedtls_mpi_free(&d); mbedtls_mpi_free(&r); mbedtls_mpi_free(&s);
|
||||
mbedtls_mpi_free(&r_check); mbedtls_mpi_free(&s_check);
|
||||
MD_PSA_DONE();
|
||||
}
|
||||
/* END_CASE */
|
||||
|
||||
/* BEGIN_CASE depends_on:MBEDTLS_MD_CAN_SHA256 */
|
||||
void ecdsa_write_read_zero(int id)
|
||||
{
|
||||
mbedtls_ecdsa_context ctx;
|
||||
mbedtls_test_rnd_pseudo_info rnd_info;
|
||||
unsigned char hash[32];
|
||||
unsigned char sig[200];
|
||||
size_t sig_len, i;
|
||||
|
||||
mbedtls_ecdsa_init(&ctx);
|
||||
memset(&rnd_info, 0x00, sizeof(mbedtls_test_rnd_pseudo_info));
|
||||
memset(hash, 0, sizeof(hash));
|
||||
memset(sig, 0x2a, sizeof(sig));
|
||||
|
||||
MD_PSA_INIT();
|
||||
|
||||
/* generate signing key */
|
||||
TEST_ASSERT(mbedtls_ecdsa_genkey(&ctx, id,
|
||||
&mbedtls_test_rnd_pseudo_rand,
|
||||
&rnd_info) == 0);
|
||||
|
||||
/* generate and write signature, then read and verify it */
|
||||
TEST_ASSERT(mbedtls_ecdsa_write_signature(&ctx, MBEDTLS_MD_SHA256,
|
||||
hash, sizeof(hash),
|
||||
sig, sizeof(sig), &sig_len,
|
||||
&mbedtls_test_rnd_pseudo_rand,
|
||||
&rnd_info) == 0);
|
||||
TEST_ASSERT(mbedtls_ecdsa_read_signature(&ctx, hash, sizeof(hash),
|
||||
sig, sig_len) == 0);
|
||||
|
||||
/* check we didn't write past the announced length */
|
||||
for (i = sig_len; i < sizeof(sig); i++) {
|
||||
TEST_ASSERT(sig[i] == 0x2a);
|
||||
}
|
||||
|
||||
/* try verification with invalid length */
|
||||
TEST_ASSERT(mbedtls_ecdsa_read_signature(&ctx, hash, sizeof(hash),
|
||||
sig, sig_len - 1) != 0);
|
||||
TEST_ASSERT(mbedtls_ecdsa_read_signature(&ctx, hash, sizeof(hash),
|
||||
sig, sig_len + 1) != 0);
|
||||
|
||||
/* try invalid sequence tag */
|
||||
sig[0]++;
|
||||
TEST_ASSERT(mbedtls_ecdsa_read_signature(&ctx, hash, sizeof(hash),
|
||||
sig, sig_len) != 0);
|
||||
sig[0]--;
|
||||
|
||||
/* try modifying r */
|
||||
sig[10]++;
|
||||
TEST_ASSERT(mbedtls_ecdsa_read_signature(&ctx, hash, sizeof(hash),
|
||||
sig, sig_len) == MBEDTLS_ERR_ECP_VERIFY_FAILED);
|
||||
sig[10]--;
|
||||
|
||||
/* try modifying s */
|
||||
sig[sig_len - 1]++;
|
||||
TEST_ASSERT(mbedtls_ecdsa_read_signature(&ctx, hash, sizeof(hash),
|
||||
sig, sig_len) == MBEDTLS_ERR_ECP_VERIFY_FAILED);
|
||||
sig[sig_len - 1]--;
|
||||
|
||||
exit:
|
||||
mbedtls_ecdsa_free(&ctx);
|
||||
MD_PSA_DONE();
|
||||
}
|
||||
/* END_CASE */
|
||||
|
||||
/* BEGIN_CASE depends_on:MBEDTLS_MD_CAN_SHA256 */
|
||||
void ecdsa_write_read_random(int id)
|
||||
{
|
||||
mbedtls_ecdsa_context ctx;
|
||||
mbedtls_test_rnd_pseudo_info rnd_info;
|
||||
unsigned char hash[32];
|
||||
unsigned char sig[200];
|
||||
size_t sig_len, i;
|
||||
|
||||
mbedtls_ecdsa_init(&ctx);
|
||||
memset(&rnd_info, 0x00, sizeof(mbedtls_test_rnd_pseudo_info));
|
||||
memset(hash, 0, sizeof(hash));
|
||||
memset(sig, 0x2a, sizeof(sig));
|
||||
|
||||
MD_PSA_INIT();
|
||||
|
||||
/* prepare material for signature */
|
||||
TEST_ASSERT(mbedtls_test_rnd_pseudo_rand(&rnd_info,
|
||||
hash, sizeof(hash)) == 0);
|
||||
|
||||
/* generate signing key */
|
||||
TEST_ASSERT(mbedtls_ecdsa_genkey(&ctx, id,
|
||||
&mbedtls_test_rnd_pseudo_rand,
|
||||
&rnd_info) == 0);
|
||||
|
||||
/* generate and write signature, then read and verify it */
|
||||
TEST_ASSERT(mbedtls_ecdsa_write_signature(&ctx, MBEDTLS_MD_SHA256,
|
||||
hash, sizeof(hash),
|
||||
sig, sizeof(sig), &sig_len,
|
||||
&mbedtls_test_rnd_pseudo_rand,
|
||||
&rnd_info) == 0);
|
||||
TEST_ASSERT(mbedtls_ecdsa_read_signature(&ctx, hash, sizeof(hash),
|
||||
sig, sig_len) == 0);
|
||||
|
||||
/* check we didn't write past the announced length */
|
||||
for (i = sig_len; i < sizeof(sig); i++) {
|
||||
TEST_ASSERT(sig[i] == 0x2a);
|
||||
}
|
||||
|
||||
/* try verification with invalid length */
|
||||
TEST_ASSERT(mbedtls_ecdsa_read_signature(&ctx, hash, sizeof(hash),
|
||||
sig, sig_len - 1) != 0);
|
||||
TEST_ASSERT(mbedtls_ecdsa_read_signature(&ctx, hash, sizeof(hash),
|
||||
sig, sig_len + 1) != 0);
|
||||
|
||||
/* try invalid sequence tag */
|
||||
sig[0]++;
|
||||
TEST_ASSERT(mbedtls_ecdsa_read_signature(&ctx, hash, sizeof(hash),
|
||||
sig, sig_len) != 0);
|
||||
sig[0]--;
|
||||
|
||||
/* try modifying r */
|
||||
sig[10]++;
|
||||
TEST_ASSERT(mbedtls_ecdsa_read_signature(&ctx, hash, sizeof(hash),
|
||||
sig, sig_len) == MBEDTLS_ERR_ECP_VERIFY_FAILED);
|
||||
sig[10]--;
|
||||
|
||||
/* try modifying s */
|
||||
sig[sig_len - 1]++;
|
||||
TEST_ASSERT(mbedtls_ecdsa_read_signature(&ctx, hash, sizeof(hash),
|
||||
sig, sig_len) == MBEDTLS_ERR_ECP_VERIFY_FAILED);
|
||||
sig[sig_len - 1]--;
|
||||
|
||||
exit:
|
||||
mbedtls_ecdsa_free(&ctx);
|
||||
MD_PSA_DONE();
|
||||
}
|
||||
/* END_CASE */
|
||||
|
||||
/* BEGIN_CASE depends_on:MBEDTLS_ECP_RESTARTABLE */
|
||||
void ecdsa_read_restart(int id, data_t *pk, data_t *hash, data_t *sig,
|
||||
int max_ops, int min_restart, int max_restart)
|
||||
{
|
||||
mbedtls_ecdsa_context ctx;
|
||||
mbedtls_ecdsa_restart_ctx rs_ctx;
|
||||
int ret, cnt_restart;
|
||||
|
||||
mbedtls_ecdsa_init(&ctx);
|
||||
mbedtls_ecdsa_restart_init(&rs_ctx);
|
||||
|
||||
TEST_ASSERT(mbedtls_ecp_group_load(&ctx.grp, id) == 0);
|
||||
TEST_ASSERT(mbedtls_ecp_point_read_binary(&ctx.grp, &ctx.Q,
|
||||
pk->x, pk->len) == 0);
|
||||
|
||||
mbedtls_ecp_set_max_ops(max_ops);
|
||||
|
||||
cnt_restart = 0;
|
||||
do {
|
||||
ret = mbedtls_ecdsa_read_signature_restartable(&ctx,
|
||||
hash->x, hash->len, sig->x, sig->len,
|
||||
&rs_ctx);
|
||||
} while (ret == MBEDTLS_ERR_ECP_IN_PROGRESS && ++cnt_restart);
|
||||
|
||||
TEST_ASSERT(ret == 0);
|
||||
TEST_ASSERT(cnt_restart >= min_restart);
|
||||
TEST_ASSERT(cnt_restart <= max_restart);
|
||||
|
||||
/* try modifying r */
|
||||
|
||||
TEST_ASSERT(sig->len > 10);
|
||||
sig->x[10]++;
|
||||
do {
|
||||
ret = mbedtls_ecdsa_read_signature_restartable(&ctx,
|
||||
hash->x, hash->len, sig->x, sig->len,
|
||||
&rs_ctx);
|
||||
} while (ret == MBEDTLS_ERR_ECP_IN_PROGRESS);
|
||||
TEST_ASSERT(ret == MBEDTLS_ERR_ECP_VERIFY_FAILED);
|
||||
sig->x[10]--;
|
||||
|
||||
/* try modifying s */
|
||||
sig->x[sig->len - 1]++;
|
||||
do {
|
||||
ret = mbedtls_ecdsa_read_signature_restartable(&ctx,
|
||||
hash->x, hash->len, sig->x, sig->len,
|
||||
&rs_ctx);
|
||||
} while (ret == MBEDTLS_ERR_ECP_IN_PROGRESS);
|
||||
TEST_ASSERT(ret == MBEDTLS_ERR_ECP_VERIFY_FAILED);
|
||||
sig->x[sig->len - 1]--;
|
||||
|
||||
/* Do we leak memory when aborting an operation?
|
||||
* This test only makes sense when we actually restart */
|
||||
if (min_restart > 0) {
|
||||
ret = mbedtls_ecdsa_read_signature_restartable(&ctx,
|
||||
hash->x, hash->len, sig->x, sig->len,
|
||||
&rs_ctx);
|
||||
TEST_ASSERT(ret == MBEDTLS_ERR_ECP_IN_PROGRESS);
|
||||
}
|
||||
|
||||
exit:
|
||||
mbedtls_ecdsa_free(&ctx);
|
||||
mbedtls_ecdsa_restart_free(&rs_ctx);
|
||||
}
|
||||
/* END_CASE */
|
||||
|
||||
/* BEGIN_CASE depends_on:MBEDTLS_ECP_RESTARTABLE:MBEDTLS_ECDSA_DETERMINISTIC */
|
||||
void ecdsa_write_restart(int id, char *d_str, int md_alg,
|
||||
data_t *hash, data_t *sig_check,
|
||||
int max_ops, int min_restart, int max_restart)
|
||||
{
|
||||
int ret, cnt_restart;
|
||||
mbedtls_ecdsa_restart_ctx rs_ctx;
|
||||
mbedtls_ecdsa_context ctx;
|
||||
unsigned char sig[MBEDTLS_ECDSA_MAX_LEN];
|
||||
size_t slen;
|
||||
|
||||
mbedtls_ecdsa_restart_init(&rs_ctx);
|
||||
mbedtls_ecdsa_init(&ctx);
|
||||
memset(sig, 0, sizeof(sig));
|
||||
|
||||
MD_PSA_INIT();
|
||||
|
||||
TEST_ASSERT(mbedtls_ecp_group_load(&ctx.grp, id) == 0);
|
||||
TEST_ASSERT(mbedtls_test_read_mpi(&ctx.d, d_str) == 0);
|
||||
|
||||
mbedtls_ecp_set_max_ops(max_ops);
|
||||
|
||||
slen = sizeof(sig);
|
||||
cnt_restart = 0;
|
||||
do {
|
||||
ret = mbedtls_ecdsa_write_signature_restartable(&ctx,
|
||||
md_alg,
|
||||
hash->x,
|
||||
hash->len,
|
||||
sig,
|
||||
sizeof(sig),
|
||||
&slen,
|
||||
mbedtls_test_rnd_std_rand,
|
||||
NULL,
|
||||
&rs_ctx);
|
||||
} while (ret == MBEDTLS_ERR_ECP_IN_PROGRESS && ++cnt_restart);
|
||||
|
||||
TEST_ASSERT(ret == 0);
|
||||
TEST_ASSERT(slen == sig_check->len);
|
||||
TEST_ASSERT(memcmp(sig, sig_check->x, slen) == 0);
|
||||
|
||||
TEST_ASSERT(cnt_restart >= min_restart);
|
||||
TEST_ASSERT(cnt_restart <= max_restart);
|
||||
|
||||
/* Do we leak memory when aborting an operation?
|
||||
* This test only makes sense when we actually restart */
|
||||
if (min_restart > 0) {
|
||||
ret = mbedtls_ecdsa_write_signature_restartable(&ctx,
|
||||
md_alg,
|
||||
hash->x,
|
||||
hash->len,
|
||||
sig,
|
||||
sizeof(sig),
|
||||
&slen,
|
||||
mbedtls_test_rnd_std_rand,
|
||||
NULL,
|
||||
&rs_ctx);
|
||||
TEST_ASSERT(ret == MBEDTLS_ERR_ECP_IN_PROGRESS);
|
||||
}
|
||||
|
||||
exit:
|
||||
mbedtls_ecdsa_restart_free(&rs_ctx);
|
||||
mbedtls_ecdsa_free(&ctx);
|
||||
MD_PSA_DONE();
|
||||
}
|
||||
/* END_CASE */
|
||||
|
||||
/* BEGIN_CASE */
|
||||
void ecdsa_verify(int grp_id, char *x, char *y, char *r, char *s, data_t *content, int expected)
|
||||
{
|
||||
mbedtls_ecdsa_context ctx;
|
||||
mbedtls_mpi sig_r, sig_s;
|
||||
|
||||
mbedtls_ecdsa_init(&ctx);
|
||||
mbedtls_mpi_init(&sig_r);
|
||||
mbedtls_mpi_init(&sig_s);
|
||||
|
||||
/* Prepare ECP group context */
|
||||
TEST_EQUAL(mbedtls_ecp_group_load(&ctx.grp, grp_id), 0);
|
||||
|
||||
/* Prepare public key */
|
||||
TEST_EQUAL(mbedtls_test_read_mpi(&ctx.Q.X, x), 0);
|
||||
TEST_EQUAL(mbedtls_test_read_mpi(&ctx.Q.Y, y), 0);
|
||||
TEST_EQUAL(mbedtls_mpi_lset(&ctx.Q.Z, 1), 0);
|
||||
|
||||
/* Prepare signature R & S */
|
||||
TEST_EQUAL(mbedtls_test_read_mpi(&sig_r, r), 0);
|
||||
TEST_EQUAL(mbedtls_test_read_mpi(&sig_s, s), 0);
|
||||
|
||||
/* Test whether public key has expected validity */
|
||||
TEST_EQUAL(mbedtls_ecp_check_pubkey(&ctx.grp, &ctx.Q),
|
||||
expected == MBEDTLS_ERR_ECP_INVALID_KEY ? MBEDTLS_ERR_ECP_INVALID_KEY : 0);
|
||||
|
||||
/* Verification */
|
||||
int result = mbedtls_ecdsa_verify(&ctx.grp, content->x, content->len, &ctx.Q, &sig_r, &sig_s);
|
||||
|
||||
TEST_EQUAL(result, expected);
|
||||
exit:
|
||||
mbedtls_ecdsa_free(&ctx);
|
||||
mbedtls_mpi_free(&sig_r);
|
||||
mbedtls_mpi_free(&sig_s);
|
||||
}
|
||||
/* END_CASE */
|
||||
236
vendor/mbedtls/tests/suites/test_suite_ecjpake.data
vendored
Normal file
236
vendor/mbedtls/tests/suites/test_suite_ecjpake.data
vendored
Normal file
@@ -0,0 +1,236 @@
|
||||
ECJPAKE parameter validation
|
||||
ecjpake_invalid_param:
|
||||
|
||||
ECJPAKE selftest
|
||||
ecjpake_selftest:
|
||||
|
||||
ECJPAKE fail read corrupt MD
|
||||
read_bad_md:"41047ea6e3a4487037a9e0dbd79262b2cc273e779930fc18409ac5361c5fe669d702e147790aeb4ce7fd6575ab0f6c7fd1c335939aa863ba37ec91b7e32bb013bb2b410409f85b3d20ebd7885ce464c08d056d6428fe4dd9287aa365f131f4360ff386d846898bc4b41583c2a5197f65d78742746c12a5ec0a4ffe2f270a750a1d8fb51620934d74eb43e54df424fd96306c0117bf131afabf90a9d33d1198d905193735144104190a07700ffa4be6ae1d79ee0f06aeb544cd5addaabedf70f8623321332c54f355f0fbfec783ed359e5d0bf7377a0fc4ea7ace473c9c112b41ccd41ac56a56124104360a1cea33fce641156458e0a4eac219e96831e6aebc88b3f3752f93a0281d1bf1fb106051db9694a8d6e862a5ef1324a3d9e27894f1ee4f7c59199965a8dd4a2091847d2d22df3ee55faa2a3fb33fd2d1e055a07a7c61ecfb8d80ec00c2c9eb12"
|
||||
|
||||
ECJPAKE round one: client, valid
|
||||
read_round_one:MBEDTLS_ECJPAKE_CLIENT:"41047ea6e3a4487037a9e0dbd79262b2cc273e779930fc18409ac5361c5fe669d702e147790aeb4ce7fd6575ab0f6c7fd1c335939aa863ba37ec91b7e32bb013bb2b410409f85b3d20ebd7885ce464c08d056d6428fe4dd9287aa365f131f4360ff386d846898bc4b41583c2a5197f65d78742746c12a5ec0a4ffe2f270a750a1d8fb51620934d74eb43e54df424fd96306c0117bf131afabf90a9d33d1198d905193735144104190a07700ffa4be6ae1d79ee0f06aeb544cd5addaabedf70f8623321332c54f355f0fbfec783ed359e5d0bf7377a0fc4ea7ace473c9c112b41ccd41ac56a56124104360a1cea33fce641156458e0a4eac219e96831e6aebc88b3f3752f93a0281d1bf1fb106051db9694a8d6e862a5ef1324a3d9e27894f1ee4f7c59199965a8dd4a2091847d2d22df3ee55faa2a3fb33fd2d1e055a07a7c61ecfb8d80ec00c2c9eb12":0
|
||||
|
||||
ECJPAKE round one: server, valid
|
||||
read_round_one:MBEDTLS_ECJPAKE_SERVER:"4104accf0106ef858fa2d919331346805a78b58bbad0b844e5c7892879146187dd2666ada781bb7f111372251a8910621f634df128ac48e381fd6ef9060731f694a441041dd0bd5d4566c9bed9ce7de701b5e82e08e84b730466018ab903c79eb982172236c0c1728ae4bf73610d34de44246ef3d9c05a2236fb66a6583d7449308babce2072fe16662992e9235c25002f11b15087b82738e03c945bf7a2995dda1e98345841047ea6e3a4487037a9e0dbd79262b2cc273e779930fc18409ac5361c5fe669d702e147790aeb4ce7fd6575ab0f6c7fd1c335939aa863ba37ec91b7e32bb013bb2b4104a49558d32ed1ebfc1816af4ff09b55fcb4ca47b2a02d1e7caf1179ea3fe1395b22b861964016fabaf72c975695d93d4df0e5197fe9f040634ed59764937787be20bc4deebbf9b8d60a335f046ca3aa941e45864c7cadef9cf75b3d8b010e443ef0":0
|
||||
|
||||
ECJPAKE round one: role mismatch
|
||||
read_round_one:MBEDTLS_ECJPAKE_CLIENT:"4104accf0106ef858fa2d919331346805a78b58bbad0b844e5c7892879146187dd2666ada781bb7f111372251a8910621f634df128ac48e381fd6ef9060731f694a441041dd0bd5d4566c9bed9ce7de701b5e82e08e84b730466018ab903c79eb982172236c0c1728ae4bf73610d34de44246ef3d9c05a2236fb66a6583d7449308babce2072fe16662992e9235c25002f11b15087b82738e03c945bf7a2995dda1e98345841047ea6e3a4487037a9e0dbd79262b2cc273e779930fc18409ac5361c5fe669d702e147790aeb4ce7fd6575ab0f6c7fd1c335939aa863ba37ec91b7e32bb013bb2b4104a49558d32ed1ebfc1816af4ff09b55fcb4ca47b2a02d1e7caf1179ea3fe1395b22b861964016fabaf72c975695d93d4df0e5197fe9f040634ed59764937787be20bc4deebbf9b8d60a335f046ca3aa941e45864c7cadef9cf75b3d8b010e443ef0":MBEDTLS_ERR_ECP_VERIFY_FAILED
|
||||
|
||||
ECJPAKE round one: trailing byte
|
||||
read_round_one:MBEDTLS_ECJPAKE_CLIENT:"41047ea6e3a4487037a9e0dbd79262b2cc273e779930fc18409ac5361c5fe669d702e147790aeb4ce7fd6575ab0f6c7fd1c335939aa863ba37ec91b7e32bb013bb2b410409f85b3d20ebd7885ce464c08d056d6428fe4dd9287aa365f131f4360ff386d846898bc4b41583c2a5197f65d78742746c12a5ec0a4ffe2f270a750a1d8fb51620934d74eb43e54df424fd96306c0117bf131afabf90a9d33d1198d905193735144104190a07700ffa4be6ae1d79ee0f06aeb544cd5addaabedf70f8623321332c54f355f0fbfec783ed359e5d0bf7377a0fc4ea7ace473c9c112b41ccd41ac56a56124104360a1cea33fce641156458e0a4eac219e96831e6aebc88b3f3752f93a0281d1bf1fb106051db9694a8d6e862a5ef1324a3d9e27894f1ee4f7c59199965a8dd4a2091847d2d22df3ee55faa2a3fb33fd2d1e055a07a7c61ecfb8d80ec00c2c9eb1200":MBEDTLS_ERR_ECP_BAD_INPUT_DATA
|
||||
|
||||
ECJPAKE round one: KKP1: no data
|
||||
read_round_one:MBEDTLS_ECJPAKE_CLIENT:"":MBEDTLS_ERR_ECP_BAD_INPUT_DATA
|
||||
|
||||
ECJPAKE round one: KKP1: length of first point too small
|
||||
read_round_one:MBEDTLS_ECJPAKE_CLIENT:"00":MBEDTLS_ERR_ECP_BAD_INPUT_DATA
|
||||
|
||||
ECJPAKE round one: KKP1: length of first point too big
|
||||
read_round_one:MBEDTLS_ECJPAKE_CLIENT:"01":MBEDTLS_ERR_ECP_BAD_INPUT_DATA
|
||||
|
||||
ECJPAKE round one: KKP1: no point data
|
||||
read_round_one:MBEDTLS_ECJPAKE_CLIENT:"0104":MBEDTLS_ERR_ECP_BAD_INPUT_DATA
|
||||
|
||||
ECJPAKE round one: KKP1: first point is zero
|
||||
read_round_one:MBEDTLS_ECJPAKE_CLIENT:"0100":MBEDTLS_ERR_ECP_INVALID_KEY
|
||||
|
||||
ECJPAKE round one: KKP1: unknown first point format
|
||||
read_round_one:MBEDTLS_ECJPAKE_CLIENT:"41057ea6e3a4487037a9e0dbd79262b2cc273e779930fc18409ac5361c5fe669d702e147790aeb4ce7fd6575ab0f6c7fd1c335939aa863ba37ec91b7e32bb013bb2b":MBEDTLS_ERR_ECP_BAD_INPUT_DATA
|
||||
|
||||
ECJPAKE round one: KKP1: nothing after first point
|
||||
read_round_one:MBEDTLS_ECJPAKE_CLIENT:"41047ea6e3a4487037a9e0dbd79262b2cc273e779930fc18409ac5361c5fe669d702e147790aeb4ce7fd6575ab0f6c7fd1c335939aa863ba37ec91b7e32bb013bb2b":MBEDTLS_ERR_ECP_BAD_INPUT_DATA
|
||||
|
||||
ECJPAKE round one: KKP1: length of second point too small
|
||||
read_round_one:MBEDTLS_ECJPAKE_CLIENT:"41047ea6e3a4487037a9e0dbd79262b2cc273e779930fc18409ac5361c5fe669d702e147790aeb4ce7fd6575ab0f6c7fd1c335939aa863ba37ec91b7e32bb013bb2b00":MBEDTLS_ERR_ECP_BAD_INPUT_DATA
|
||||
|
||||
ECJPAKE round one: KKP1: length of second point too big
|
||||
read_round_one:MBEDTLS_ECJPAKE_CLIENT:"41047ea6e3a4487037a9e0dbd79262b2cc273e779930fc18409ac5361c5fe669d702e147790aeb4ce7fd6575ab0f6c7fd1c335939aa863ba37ec91b7e32bb013bb2b01":MBEDTLS_ERR_ECP_BAD_INPUT_DATA
|
||||
|
||||
ECJPAKE round one: KKP1: no second point data
|
||||
read_round_one:MBEDTLS_ECJPAKE_CLIENT:"41047ea6e3a4487037a9e0dbd79262b2cc273e779930fc18409ac5361c5fe669d702e147790aeb4ce7fd6575ab0f6c7fd1c335939aa863ba37ec91b7e32bb013bb2b0104":MBEDTLS_ERR_ECP_BAD_INPUT_DATA
|
||||
|
||||
ECJPAKE round one: KKP1: unknown second point format
|
||||
read_round_one:MBEDTLS_ECJPAKE_CLIENT:"41047ea6e3a4487037a9e0dbd79262b2cc273e779930fc18409ac5361c5fe669d702e147790aeb4ce7fd6575ab0f6c7fd1c335939aa863ba37ec91b7e32bb013bb2b410509f85b3d20ebd7885ce464c08d056d6428fe4dd9287aa365f131f4360ff386d846898bc4b41583c2a5197f65d78742746c12a5ec0a4ffe2f270a750a1d8fb516":MBEDTLS_ERR_ECP_BAD_INPUT_DATA
|
||||
|
||||
ECJPAKE round one: KKP1: nothing after second point
|
||||
read_round_one:MBEDTLS_ECJPAKE_CLIENT:"41047ea6e3a4487037a9e0dbd79262b2cc273e779930fc18409ac5361c5fe669d702e147790aeb4ce7fd6575ab0f6c7fd1c335939aa863ba37ec91b7e32bb013bb2b410409f85b3d20ebd7885ce464c08d056d6428fe4dd9287aa365f131f4360ff386d846898bc4b41583c2a5197f65d78742746c12a5ec0a4ffe2f270a750a1d8fb516":MBEDTLS_ERR_ECP_BAD_INPUT_DATA
|
||||
|
||||
ECJPAKE round one: KKP1: zero-length r
|
||||
read_round_one:MBEDTLS_ECJPAKE_CLIENT:"41047ea6e3a4487037a9e0dbd79262b2cc273e779930fc18409ac5361c5fe669d702e147790aeb4ce7fd6575ab0f6c7fd1c335939aa863ba37ec91b7e32bb013bb2b410409f85b3d20ebd7885ce464c08d056d6428fe4dd9287aa365f131f4360ff386d846898bc4b41583c2a5197f65d78742746c12a5ec0a4ffe2f270a750a1d8fb51600":MBEDTLS_ERR_ECP_BAD_INPUT_DATA
|
||||
|
||||
ECJPAKE round one: KKP1: no data for r
|
||||
read_round_one:MBEDTLS_ECJPAKE_CLIENT:"41047ea6e3a4487037a9e0dbd79262b2cc273e779930fc18409ac5361c5fe669d702e147790aeb4ce7fd6575ab0f6c7fd1c335939aa863ba37ec91b7e32bb013bb2b410409f85b3d20ebd7885ce464c08d056d6428fe4dd9287aa365f131f4360ff386d846898bc4b41583c2a5197f65d78742746c12a5ec0a4ffe2f270a750a1d8fb51601":MBEDTLS_ERR_ECP_BAD_INPUT_DATA
|
||||
|
||||
ECJPAKE round one: KKP1: corrupted r
|
||||
read_round_one:MBEDTLS_ECJPAKE_CLIENT:"41047ea6e3a4487037a9e0dbd79262b2cc273e779930fc18409ac5361c5fe669d702e147790aeb4ce7fd6575ab0f6c7fd1c335939aa863ba37ec91b7e32bb013bb2b410409f85b3d20ebd7885ce464c08d056d6428fe4dd9287aa365f131f4360ff386d846898bc4b41583c2a5197f65d78742746c12a5ec0a4ffe2f270a750a1d8fb51620934d74eb43e54df424fd96306c0117bf131afabf90a9d33d1198d90519373515":MBEDTLS_ERR_ECP_VERIFY_FAILED
|
||||
|
||||
ECJPAKE round one: KKP1: X not on the curve
|
||||
read_round_one:MBEDTLS_ECJPAKE_CLIENT:"41047ea6e3a4487037a9e0dbd79262b2cc273e779930fc18409ac5361c5fe669d702e147790aeb4ce7fd6575ab0f6c7fd1c335939aa863ba37ec91b7e32bb013bb2a410409f85b3d20ebd7885ce464c08d056d6428fe4dd9287aa365f131f4360ff386d846898bc4b41583c2a5197f65d78742746c12a5ec0a4ffe2f270a750a1d8fb51620934d74eb43e54df424fd96306c0117bf131afabf90a9d33d1198d90519373514":MBEDTLS_ERR_ECP_INVALID_KEY
|
||||
|
||||
ECJPAKE round one: KKP2: no data
|
||||
read_round_one:MBEDTLS_ECJPAKE_CLIENT:"4104190a07700ffa4be6ae1d79ee0f06aeb544cd5addaabedf70f8623321332c54f355f0fbfec783ed359e5d0bf7377a0fc4ea7ace473c9c112b41ccd41ac56a56124104360a1cea33fce641156458e0a4eac219e96831e6aebc88b3f3752f93a0281d1bf1fb106051db9694a8d6e862a5ef1324a3d9e27894f1ee4f7c59199965a8dd4a2091847d2d22df3ee55faa2a3fb33fd2d1e055a07a7c61ecfb8d80ec00c2c9eb12":MBEDTLS_ERR_ECP_BAD_INPUT_DATA
|
||||
|
||||
ECJPAKE round one: KKP2: length of first point too small
|
||||
read_round_one:MBEDTLS_ECJPAKE_CLIENT:"4104190a07700ffa4be6ae1d79ee0f06aeb544cd5addaabedf70f8623321332c54f355f0fbfec783ed359e5d0bf7377a0fc4ea7ace473c9c112b41ccd41ac56a56124104360a1cea33fce641156458e0a4eac219e96831e6aebc88b3f3752f93a0281d1bf1fb106051db9694a8d6e862a5ef1324a3d9e27894f1ee4f7c59199965a8dd4a2091847d2d22df3ee55faa2a3fb33fd2d1e055a07a7c61ecfb8d80ec00c2c9eb1200":MBEDTLS_ERR_ECP_BAD_INPUT_DATA
|
||||
|
||||
ECJPAKE round one: KKP2: length of first point too big
|
||||
read_round_one:MBEDTLS_ECJPAKE_CLIENT:"4104190a07700ffa4be6ae1d79ee0f06aeb544cd5addaabedf70f8623321332c54f355f0fbfec783ed359e5d0bf7377a0fc4ea7ace473c9c112b41ccd41ac56a56124104360a1cea33fce641156458e0a4eac219e96831e6aebc88b3f3752f93a0281d1bf1fb106051db9694a8d6e862a5ef1324a3d9e27894f1ee4f7c59199965a8dd4a2091847d2d22df3ee55faa2a3fb33fd2d1e055a07a7c61ecfb8d80ec00c2c9eb1201":MBEDTLS_ERR_ECP_BAD_INPUT_DATA
|
||||
|
||||
ECJPAKE round one: KKP2: no point data
|
||||
read_round_one:MBEDTLS_ECJPAKE_CLIENT:"4104190a07700ffa4be6ae1d79ee0f06aeb544cd5addaabedf70f8623321332c54f355f0fbfec783ed359e5d0bf7377a0fc4ea7ace473c9c112b41ccd41ac56a56124104360a1cea33fce641156458e0a4eac219e96831e6aebc88b3f3752f93a0281d1bf1fb106051db9694a8d6e862a5ef1324a3d9e27894f1ee4f7c59199965a8dd4a2091847d2d22df3ee55faa2a3fb33fd2d1e055a07a7c61ecfb8d80ec00c2c9eb120104":MBEDTLS_ERR_ECP_BAD_INPUT_DATA
|
||||
|
||||
ECJPAKE round one: KKP2: first point is zero
|
||||
read_round_one:MBEDTLS_ECJPAKE_CLIENT:"4104190a07700ffa4be6ae1d79ee0f06aeb544cd5addaabedf70f8623321332c54f355f0fbfec783ed359e5d0bf7377a0fc4ea7ace473c9c112b41ccd41ac56a56124104360a1cea33fce641156458e0a4eac219e96831e6aebc88b3f3752f93a0281d1bf1fb106051db9694a8d6e862a5ef1324a3d9e27894f1ee4f7c59199965a8dd4a2091847d2d22df3ee55faa2a3fb33fd2d1e055a07a7c61ecfb8d80ec00c2c9eb120100":MBEDTLS_ERR_ECP_INVALID_KEY
|
||||
|
||||
ECJPAKE round one: KKP2: unknown first point format
|
||||
read_round_one:MBEDTLS_ECJPAKE_CLIENT:"4104190a07700ffa4be6ae1d79ee0f06aeb544cd5addaabedf70f8623321332c54f355f0fbfec783ed359e5d0bf7377a0fc4ea7ace473c9c112b41ccd41ac56a56124104360a1cea33fce641156458e0a4eac219e96831e6aebc88b3f3752f93a0281d1bf1fb106051db9694a8d6e862a5ef1324a3d9e27894f1ee4f7c59199965a8dd4a2091847d2d22df3ee55faa2a3fb33fd2d1e055a07a7c61ecfb8d80ec00c2c9eb1241057ea6e3a4487037a9e0dbd79262b2cc273e779930fc18409ac5361c5fe669d702e147790aeb4ce7fd6575ab0f6c7fd1c335939aa863ba37ec91b7e32bb013bb2b":MBEDTLS_ERR_ECP_BAD_INPUT_DATA
|
||||
|
||||
ECJPAKE round one: KKP2: nothing after first point
|
||||
read_round_one:MBEDTLS_ECJPAKE_CLIENT:"4104190a07700ffa4be6ae1d79ee0f06aeb544cd5addaabedf70f8623321332c54f355f0fbfec783ed359e5d0bf7377a0fc4ea7ace473c9c112b41ccd41ac56a56124104360a1cea33fce641156458e0a4eac219e96831e6aebc88b3f3752f93a0281d1bf1fb106051db9694a8d6e862a5ef1324a3d9e27894f1ee4f7c59199965a8dd4a2091847d2d22df3ee55faa2a3fb33fd2d1e055a07a7c61ecfb8d80ec00c2c9eb1241047ea6e3a4487037a9e0dbd79262b2cc273e779930fc18409ac5361c5fe669d702e147790aeb4ce7fd6575ab0f6c7fd1c335939aa863ba37ec91b7e32bb013bb2b":MBEDTLS_ERR_ECP_BAD_INPUT_DATA
|
||||
|
||||
ECJPAKE round one: KKP2: length of second point too small
|
||||
read_round_one:MBEDTLS_ECJPAKE_CLIENT:"4104190a07700ffa4be6ae1d79ee0f06aeb544cd5addaabedf70f8623321332c54f355f0fbfec783ed359e5d0bf7377a0fc4ea7ace473c9c112b41ccd41ac56a56124104360a1cea33fce641156458e0a4eac219e96831e6aebc88b3f3752f93a0281d1bf1fb106051db9694a8d6e862a5ef1324a3d9e27894f1ee4f7c59199965a8dd4a2091847d2d22df3ee55faa2a3fb33fd2d1e055a07a7c61ecfb8d80ec00c2c9eb1241047ea6e3a4487037a9e0dbd79262b2cc273e779930fc18409ac5361c5fe669d702e147790aeb4ce7fd6575ab0f6c7fd1c335939aa863ba37ec91b7e32bb013bb2b00":MBEDTLS_ERR_ECP_BAD_INPUT_DATA
|
||||
|
||||
ECJPAKE round one: KKP2: length of second point too big
|
||||
read_round_one:MBEDTLS_ECJPAKE_CLIENT:"4104190a07700ffa4be6ae1d79ee0f06aeb544cd5addaabedf70f8623321332c54f355f0fbfec783ed359e5d0bf7377a0fc4ea7ace473c9c112b41ccd41ac56a56124104360a1cea33fce641156458e0a4eac219e96831e6aebc88b3f3752f93a0281d1bf1fb106051db9694a8d6e862a5ef1324a3d9e27894f1ee4f7c59199965a8dd4a2091847d2d22df3ee55faa2a3fb33fd2d1e055a07a7c61ecfb8d80ec00c2c9eb1241047ea6e3a4487037a9e0dbd79262b2cc273e779930fc18409ac5361c5fe669d702e147790aeb4ce7fd6575ab0f6c7fd1c335939aa863ba37ec91b7e32bb013bb2b01":MBEDTLS_ERR_ECP_BAD_INPUT_DATA
|
||||
|
||||
ECJPAKE round one: KKP2: no second point data
|
||||
read_round_one:MBEDTLS_ECJPAKE_CLIENT:"4104190a07700ffa4be6ae1d79ee0f06aeb544cd5addaabedf70f8623321332c54f355f0fbfec783ed359e5d0bf7377a0fc4ea7ace473c9c112b41ccd41ac56a56124104360a1cea33fce641156458e0a4eac219e96831e6aebc88b3f3752f93a0281d1bf1fb106051db9694a8d6e862a5ef1324a3d9e27894f1ee4f7c59199965a8dd4a2091847d2d22df3ee55faa2a3fb33fd2d1e055a07a7c61ecfb8d80ec00c2c9eb1241047ea6e3a4487037a9e0dbd79262b2cc273e779930fc18409ac5361c5fe669d702e147790aeb4ce7fd6575ab0f6c7fd1c335939aa863ba37ec91b7e32bb013bb2b0104":MBEDTLS_ERR_ECP_BAD_INPUT_DATA
|
||||
|
||||
ECJPAKE round one: KKP2: unknown second point format
|
||||
read_round_one:MBEDTLS_ECJPAKE_CLIENT:"4104190a07700ffa4be6ae1d79ee0f06aeb544cd5addaabedf70f8623321332c54f355f0fbfec783ed359e5d0bf7377a0fc4ea7ace473c9c112b41ccd41ac56a56124104360a1cea33fce641156458e0a4eac219e96831e6aebc88b3f3752f93a0281d1bf1fb106051db9694a8d6e862a5ef1324a3d9e27894f1ee4f7c59199965a8dd4a2091847d2d22df3ee55faa2a3fb33fd2d1e055a07a7c61ecfb8d80ec00c2c9eb1241047ea6e3a4487037a9e0dbd79262b2cc273e779930fc18409ac5361c5fe669d702e147790aeb4ce7fd6575ab0f6c7fd1c335939aa863ba37ec91b7e32bb013bb2b410509f85b3d20ebd7885ce464c08d056d6428fe4dd9287aa365f131f4360ff386d846898bc4b41583c2a5197f65d78742746c12a5ec0a4ffe2f270a750a1d8fb516":MBEDTLS_ERR_ECP_BAD_INPUT_DATA
|
||||
|
||||
ECJPAKE round one: KKP2: nothing after second point
|
||||
read_round_one:MBEDTLS_ECJPAKE_CLIENT:"4104190a07700ffa4be6ae1d79ee0f06aeb544cd5addaabedf70f8623321332c54f355f0fbfec783ed359e5d0bf7377a0fc4ea7ace473c9c112b41ccd41ac56a56124104360a1cea33fce641156458e0a4eac219e96831e6aebc88b3f3752f93a0281d1bf1fb106051db9694a8d6e862a5ef1324a3d9e27894f1ee4f7c59199965a8dd4a2091847d2d22df3ee55faa2a3fb33fd2d1e055a07a7c61ecfb8d80ec00c2c9eb1241047ea6e3a4487037a9e0dbd79262b2cc273e779930fc18409ac5361c5fe669d702e147790aeb4ce7fd6575ab0f6c7fd1c335939aa863ba37ec91b7e32bb013bb2b410409f85b3d20ebd7885ce464c08d056d6428fe4dd9287aa365f131f4360ff386d846898bc4b41583c2a5197f65d78742746c12a5ec0a4ffe2f270a750a1d8fb516":MBEDTLS_ERR_ECP_BAD_INPUT_DATA
|
||||
|
||||
ECJPAKE round one: KKP2: zero-length r
|
||||
read_round_one:MBEDTLS_ECJPAKE_CLIENT:"4104190a07700ffa4be6ae1d79ee0f06aeb544cd5addaabedf70f8623321332c54f355f0fbfec783ed359e5d0bf7377a0fc4ea7ace473c9c112b41ccd41ac56a56124104360a1cea33fce641156458e0a4eac219e96831e6aebc88b3f3752f93a0281d1bf1fb106051db9694a8d6e862a5ef1324a3d9e27894f1ee4f7c59199965a8dd4a2091847d2d22df3ee55faa2a3fb33fd2d1e055a07a7c61ecfb8d80ec00c2c9eb1241047ea6e3a4487037a9e0dbd79262b2cc273e779930fc18409ac5361c5fe669d702e147790aeb4ce7fd6575ab0f6c7fd1c335939aa863ba37ec91b7e32bb013bb2b410409f85b3d20ebd7885ce464c08d056d6428fe4dd9287aa365f131f4360ff386d846898bc4b41583c2a5197f65d78742746c12a5ec0a4ffe2f270a750a1d8fb51600":MBEDTLS_ERR_ECP_BAD_INPUT_DATA
|
||||
|
||||
ECJPAKE round one: KKP2: no data for r
|
||||
read_round_one:MBEDTLS_ECJPAKE_CLIENT:"4104190a07700ffa4be6ae1d79ee0f06aeb544cd5addaabedf70f8623321332c54f355f0fbfec783ed359e5d0bf7377a0fc4ea7ace473c9c112b41ccd41ac56a56124104360a1cea33fce641156458e0a4eac219e96831e6aebc88b3f3752f93a0281d1bf1fb106051db9694a8d6e862a5ef1324a3d9e27894f1ee4f7c59199965a8dd4a2091847d2d22df3ee55faa2a3fb33fd2d1e055a07a7c61ecfb8d80ec00c2c9eb1241047ea6e3a4487037a9e0dbd79262b2cc273e779930fc18409ac5361c5fe669d702e147790aeb4ce7fd6575ab0f6c7fd1c335939aa863ba37ec91b7e32bb013bb2b410409f85b3d20ebd7885ce464c08d056d6428fe4dd9287aa365f131f4360ff386d846898bc4b41583c2a5197f65d78742746c12a5ec0a4ffe2f270a750a1d8fb51601":MBEDTLS_ERR_ECP_BAD_INPUT_DATA
|
||||
|
||||
ECJPAKE round one: KKP2: corrupted r
|
||||
read_round_one:MBEDTLS_ECJPAKE_CLIENT:"4104190a07700ffa4be6ae1d79ee0f06aeb544cd5addaabedf70f8623321332c54f355f0fbfec783ed359e5d0bf7377a0fc4ea7ace473c9c112b41ccd41ac56a56124104360a1cea33fce641156458e0a4eac219e96831e6aebc88b3f3752f93a0281d1bf1fb106051db9694a8d6e862a5ef1324a3d9e27894f1ee4f7c59199965a8dd4a2091847d2d22df3ee55faa2a3fb33fd2d1e055a07a7c61ecfb8d80ec00c2c9eb1241047ea6e3a4487037a9e0dbd79262b2cc273e779930fc18409ac5361c5fe669d702e147790aeb4ce7fd6575ab0f6c7fd1c335939aa863ba37ec91b7e32bb013bb2b410409f85b3d20ebd7885ce464c08d056d6428fe4dd9287aa365f131f4360ff386d846898bc4b41583c2a5197f65d78742746c12a5ec0a4ffe2f270a750a1d8fb51620934d74eb43e54df424fd96306c0117bf131afabf90a9d33d1198d90519373515":MBEDTLS_ERR_ECP_VERIFY_FAILED
|
||||
|
||||
ECJPAKE round one: KKP2: X not on the curve
|
||||
read_round_one:MBEDTLS_ECJPAKE_CLIENT:"4104190a07700ffa4be6ae1d79ee0f06aeb544cd5addaabedf70f8623321332c54f355f0fbfec783ed359e5d0bf7377a0fc4ea7ace473c9c112b41ccd41ac56a56124104360a1cea33fce641156458e0a4eac219e96831e6aebc88b3f3752f93a0281d1bf1fb106051db9694a8d6e862a5ef1324a3d9e27894f1ee4f7c59199965a8dd4a2091847d2d22df3ee55faa2a3fb33fd2d1e055a07a7c61ecfb8d80ec00c2c9eb1241047ea6e3a4487037a9e0dbd79262b2cc273e779930fc18409ac5361c5fe669d702e147790aeb4ce7fd6575ab0f6c7fd1c335939aa863ba37ec91b7e32bb013bb2a410409f85b3d20ebd7885ce464c08d056d6428fe4dd9287aa365f131f4360ff386d846898bc4b41583c2a5197f65d78742746c12a5ec0a4ffe2f270a750a1d8fb51620934d74eb43e54df424fd96306c0117bf131afabf90a9d33d1198d90519373514":MBEDTLS_ERR_ECP_INVALID_KEY
|
||||
|
||||
ECJPAKE round two client: valid
|
||||
read_round_two_cli:"03001741040fb22b1d5d1123e0ef9feb9d8a2e590a1f4d7ced2c2b06586e8f2a16d4eb2fda4328a20b07d8fd667654ca18c54e32a333a0845451e926ee8804fd7af0aaa7a641045516ea3e54a0d5d8b2ce786b38d383370029a5dbe4459c9dd601b408a24ae6465c8ac905b9eb03b5d3691c139ef83f1cd4200f6c9cd4ec392218a59ed243d3c820ff724a9a70b88cb86f20b434c6865aa1cd7906dd7c9bce3525f508276f26836c":0
|
||||
|
||||
ECJPAKE round two client: trailing byte
|
||||
read_round_two_cli:"03001741040fb22b1d5d1123e0ef9feb9d8a2e590a1f4d7ced2c2b06586e8f2a16d4eb2fda4328a20b07d8fd667654ca18c54e32a333a0845451e926ee8804fd7af0aaa7a641045516ea3e54a0d5d8b2ce786b38d383370029a5dbe4459c9dd601b408a24ae6465c8ac905b9eb03b5d3691c139ef83f1cd4200f6c9cd4ec392218a59ed243d3c820ff724a9a70b88cb86f20b434c6865aa1cd7906dd7c9bce3525f508276f26836c00":MBEDTLS_ERR_ECP_BAD_INPUT_DATA
|
||||
|
||||
ECJPAKE round two client: no data
|
||||
read_round_two_cli:"":MBEDTLS_ERR_ECP_BAD_INPUT_DATA
|
||||
|
||||
ECJPAKE round two client: ECParams too short
|
||||
read_round_two_cli:"0300":MBEDTLS_ERR_ECP_BAD_INPUT_DATA
|
||||
|
||||
ECJPAKE round two client: ECParams not named curve
|
||||
read_round_two_cli:"010017":MBEDTLS_ERR_ECP_BAD_INPUT_DATA
|
||||
|
||||
ECJPAKE round two client: ECParams wrong curve
|
||||
read_round_two_cli:"030016":MBEDTLS_ERR_ECP_FEATURE_UNAVAILABLE
|
||||
|
||||
ECJPAKE round two client: no data after ECParams
|
||||
read_round_two_cli:"030017":MBEDTLS_ERR_ECP_BAD_INPUT_DATA
|
||||
|
||||
ECJPAKE round two client: length of first point too small
|
||||
read_round_two_cli:"03001700":MBEDTLS_ERR_ECP_BAD_INPUT_DATA
|
||||
|
||||
ECJPAKE round two client: length of first point too big
|
||||
read_round_two_cli:"03001701":MBEDTLS_ERR_ECP_BAD_INPUT_DATA
|
||||
|
||||
ECJPAKE round two client: no first point data
|
||||
read_round_two_cli:"0300170104":MBEDTLS_ERR_ECP_BAD_INPUT_DATA
|
||||
|
||||
ECJPAKE round two client: first point is zero
|
||||
read_round_two_cli:"0300170100":MBEDTLS_ERR_ECP_INVALID_KEY
|
||||
|
||||
ECJPAKE round two client: unknown first point format
|
||||
read_round_two_cli:"03001741050fb22b1d5d1123e0ef9feb9d8a2e590a1f4d7ced2c2b06586e8f2a16d4eb2fda4328a20b07d8fd667654ca18c54e32a333a0845451e926ee8804fd7af0aaa7a6":MBEDTLS_ERR_ECP_BAD_INPUT_DATA
|
||||
|
||||
ECJPAKE round two client: nothing after first point
|
||||
read_round_two_cli:"03001741040fb22b1d5d1123e0ef9feb9d8a2e590a1f4d7ced2c2b06586e8f2a16d4eb2fda4328a20b07d8fd667654ca18c54e32a333a0845451e926ee8804fd7af0aaa7a6":MBEDTLS_ERR_ECP_BAD_INPUT_DATA
|
||||
|
||||
ECJPAKE round two client: length of second point too small
|
||||
read_round_two_cli:"03001741040fb22b1d5d1123e0ef9feb9d8a2e590a1f4d7ced2c2b06586e8f2a16d4eb2fda4328a20b07d8fd667654ca18c54e32a333a0845451e926ee8804fd7af0aaa7a600":MBEDTLS_ERR_ECP_BAD_INPUT_DATA
|
||||
|
||||
ECJPAKE round two client: length of second point too big
|
||||
read_round_two_cli:"03001741040fb22b1d5d1123e0ef9feb9d8a2e590a1f4d7ced2c2b06586e8f2a16d4eb2fda4328a20b07d8fd667654ca18c54e32a333a0845451e926ee8804fd7af0aaa7a601":MBEDTLS_ERR_ECP_BAD_INPUT_DATA
|
||||
|
||||
ECJPAKE round two client: no second point data
|
||||
read_round_two_cli:"03001741040fb22b1d5d1123e0ef9feb9d8a2e590a1f4d7ced2c2b06586e8f2a16d4eb2fda4328a20b07d8fd667654ca18c54e32a333a0845451e926ee8804fd7af0aaa7a60104":MBEDTLS_ERR_ECP_BAD_INPUT_DATA
|
||||
|
||||
ECJPAKE round two client: unknown second point format
|
||||
read_round_two_cli:"03001741040fb22b1d5d1123e0ef9feb9d8a2e590a1f4d7ced2c2b06586e8f2a16d4eb2fda4328a20b07d8fd667654ca18c54e32a333a0845451e926ee8804fd7af0aaa7a641055516ea3e54a0d5d8b2ce786b38d383370029a5dbe4459c9dd601b408a24ae6465c8ac905b9eb03b5d3691c139ef83f1cd4200f6c9cd4ec392218a59ed243d3c8":MBEDTLS_ERR_ECP_BAD_INPUT_DATA
|
||||
|
||||
ECJPAKE round two client: nothing after second point
|
||||
read_round_two_cli:"03001741040fb22b1d5d1123e0ef9feb9d8a2e590a1f4d7ced2c2b06586e8f2a16d4eb2fda4328a20b07d8fd667654ca18c54e32a333a0845451e926ee8804fd7af0aaa7a641045516ea3e54a0d5d8b2ce786b38d383370029a5dbe4459c9dd601b408a24ae6465c8ac905b9eb03b5d3691c139ef83f1cd4200f6c9cd4ec392218a59ed243d3c8":MBEDTLS_ERR_ECP_BAD_INPUT_DATA
|
||||
|
||||
ECJPAKE round two client: zero-length r
|
||||
read_round_two_cli:"03001741040fb22b1d5d1123e0ef9feb9d8a2e590a1f4d7ced2c2b06586e8f2a16d4eb2fda4328a20b07d8fd667654ca18c54e32a333a0845451e926ee8804fd7af0aaa7a641045516ea3e54a0d5d8b2ce786b38d383370029a5dbe4459c9dd601b408a24ae6465c8ac905b9eb03b5d3691c139ef83f1cd4200f6c9cd4ec392218a59ed243d3c800":MBEDTLS_ERR_ECP_BAD_INPUT_DATA
|
||||
|
||||
ECJPAKE round two client: no data for r
|
||||
read_round_two_cli:"03001741040fb22b1d5d1123e0ef9feb9d8a2e590a1f4d7ced2c2b06586e8f2a16d4eb2fda4328a20b07d8fd667654ca18c54e32a333a0845451e926ee8804fd7af0aaa7a641045516ea3e54a0d5d8b2ce786b38d383370029a5dbe4459c9dd601b408a24ae6465c8ac905b9eb03b5d3691c139ef83f1cd4200f6c9cd4ec392218a59ed243d3c801":MBEDTLS_ERR_ECP_BAD_INPUT_DATA
|
||||
|
||||
ECJPAKE round two client: corrupted r
|
||||
read_round_two_cli:"03001741040fb22b1d5d1123e0ef9feb9d8a2e590a1f4d7ced2c2b06586e8f2a16d4eb2fda4328a20b07d8fd667654ca18c54e32a333a0845451e926ee8804fd7af0aaa7a641045516ea3e54a0d5d8b2ce786b38d383370029a5dbe4459c9dd601b408a24ae6465c8ac905b9eb03b5d3691c139ef83f1cd4200f6c9cd4ec392218a59ed243d3c820ff724a9a70b88cb86f20b434c6865aa1cd7906dd7c9bce3525f508276f26836d":MBEDTLS_ERR_ECP_VERIFY_FAILED
|
||||
|
||||
ECJPAKE round two client: X not on the curve
|
||||
read_round_two_cli:"03001741040fb22b1d5d1123e0ef9feb9d8a2e590a1f4d7ced2c2b06586e8f2a16d4eb2fda4328a20b07d8fd667654ca18c54e32a333a0845451e926ee8804fd7af0aaa7a741045516ea3e54a0d5d8b2ce786b38d383370029a5dbe4459c9dd601b408a24ae6465c8ac905b9eb03b5d3691c139ef83f1cd4200f6c9cd4ec392218a59ed243d3c820ff724a9a70b88cb86f20b434c6865aa1cd7906dd7c9bce3525f508276f26836c":MBEDTLS_ERR_ECP_INVALID_KEY
|
||||
|
||||
ECJPAKE round two server: valid
|
||||
read_round_two_srv:"410469d54ee85e90ce3f1246742de507e939e81d1dc1c5cb988b58c310c9fdd9524d93720b45541c83ee8841191da7ced86e3312d43623c1d63e74989aba4affd1ee4104077e8c31e20e6bedb760c13593e69f15be85c27d68cd09ccb8c4183608917c5c3d409fac39fefee82f7292d36f0d23e055913f45a52b85dd8a2052e9e129bb4d200f011f19483535a6e89a580c9b0003baf21462ece91a82cc38dbdcae60d9c54c":0
|
||||
|
||||
ECJPAKE round two server: trailing byte
|
||||
read_round_two_srv:"410469d54ee85e90ce3f1246742de507e939e81d1dc1c5cb988b58c310c9fdd9524d93720b45541c83ee8841191da7ced86e3312d43623c1d63e74989aba4affd1ee4104077e8c31e20e6bedb760c13593e69f15be85c27d68cd09ccb8c4183608917c5c3d409fac39fefee82f7292d36f0d23e055913f45a52b85dd8a2052e9e129bb4d200f011f19483535a6e89a580c9b0003baf21462ece91a82cc38dbdcae60d9c54c00":MBEDTLS_ERR_ECP_BAD_INPUT_DATA
|
||||
|
||||
ECJPAKE round two server: no data
|
||||
read_round_two_srv:"":MBEDTLS_ERR_ECP_BAD_INPUT_DATA
|
||||
|
||||
ECJPAKE round two server: length of first point too small
|
||||
read_round_two_srv:"00":MBEDTLS_ERR_ECP_BAD_INPUT_DATA
|
||||
|
||||
ECJPAKE round two server: length of first point too big
|
||||
read_round_two_srv:"01":MBEDTLS_ERR_ECP_BAD_INPUT_DATA
|
||||
|
||||
ECJPAKE round two server: no first point data
|
||||
read_round_two_srv:"0104":MBEDTLS_ERR_ECP_BAD_INPUT_DATA
|
||||
|
||||
ECJPAKE round two server: first point is zero
|
||||
read_round_two_srv:"0100":MBEDTLS_ERR_ECP_INVALID_KEY
|
||||
|
||||
ECJPAKE round two server: unknown first point format
|
||||
read_round_two_srv:"410569d54ee85e90ce3f1246742de507e939e81d1dc1c5cb988b58c310c9fdd9524d93720b45541c83ee8841191da7ced86e3312d43623c1d63e74989aba4affd1ee":MBEDTLS_ERR_ECP_BAD_INPUT_DATA
|
||||
|
||||
ECJPAKE round two server: nothing after first point
|
||||
read_round_two_srv:"410469d54ee85e90ce3f1246742de507e939e81d1dc1c5cb988b58c310c9fdd9524d93720b45541c83ee8841191da7ced86e3312d43623c1d63e74989aba4affd1ee":MBEDTLS_ERR_ECP_BAD_INPUT_DATA
|
||||
|
||||
ECJPAKE round two server: length of second point too small
|
||||
read_round_two_srv:"410469d54ee85e90ce3f1246742de507e939e81d1dc1c5cb988b58c310c9fdd9524d93720b45541c83ee8841191da7ced86e3312d43623c1d63e74989aba4affd1ee00":MBEDTLS_ERR_ECP_BAD_INPUT_DATA
|
||||
|
||||
ECJPAKE round two server: length of second point too big
|
||||
read_round_two_srv:"410469d54ee85e90ce3f1246742de507e939e81d1dc1c5cb988b58c310c9fdd9524d93720b45541c83ee8841191da7ced86e3312d43623c1d63e74989aba4affd1ee01":MBEDTLS_ERR_ECP_BAD_INPUT_DATA
|
||||
|
||||
ECJPAKE round two server: no second point data
|
||||
read_round_two_srv:"410469d54ee85e90ce3f1246742de507e939e81d1dc1c5cb988b58c310c9fdd9524d93720b45541c83ee8841191da7ced86e3312d43623c1d63e74989aba4affd1ee0104":MBEDTLS_ERR_ECP_BAD_INPUT_DATA
|
||||
|
||||
ECJPAKE round two server: unknown second point format
|
||||
read_round_two_srv:"410569d54ee85e90ce3f1246742de507e939e81d1dc1c5cb988b58c310c9fdd9524d93720b45541c83ee8841191da7ced86e3312d43623c1d63e74989aba4affd1ee4104077e8c31e20e6bedb760c13593e69f15be85c27d68cd09ccb8c4183608917c5c3d409fac39fefee82f7292d36f0d23e055913f45a52b85dd8a2052e9e129bb4d":MBEDTLS_ERR_ECP_BAD_INPUT_DATA
|
||||
|
||||
ECJPAKE round two server: nothing after second point
|
||||
read_round_two_srv:"410469d54ee85e90ce3f1246742de507e939e81d1dc1c5cb988b58c310c9fdd9524d93720b45541c83ee8841191da7ced86e3312d43623c1d63e74989aba4affd1ee4104077e8c31e20e6bedb760c13593e69f15be85c27d68cd09ccb8c4183608917c5c3d409fac39fefee82f7292d36f0d23e055913f45a52b85dd8a2052e9e129bb4d":MBEDTLS_ERR_ECP_BAD_INPUT_DATA
|
||||
|
||||
ECJPAKE round two server: zero-length r
|
||||
read_round_two_srv:"410469d54ee85e90ce3f1246742de507e939e81d1dc1c5cb988b58c310c9fdd9524d93720b45541c83ee8841191da7ced86e3312d43623c1d63e74989aba4affd1ee4104077e8c31e20e6bedb760c13593e69f15be85c27d68cd09ccb8c4183608917c5c3d409fac39fefee82f7292d36f0d23e055913f45a52b85dd8a2052e9e129bb4d00":MBEDTLS_ERR_ECP_BAD_INPUT_DATA
|
||||
|
||||
ECJPAKE round two server: no data for r
|
||||
read_round_two_srv:"410469d54ee85e90ce3f1246742de507e939e81d1dc1c5cb988b58c310c9fdd9524d93720b45541c83ee8841191da7ced86e3312d43623c1d63e74989aba4affd1ee4104077e8c31e20e6bedb760c13593e69f15be85c27d68cd09ccb8c4183608917c5c3d409fac39fefee82f7292d36f0d23e055913f45a52b85dd8a2052e9e129bb4d20":MBEDTLS_ERR_ECP_BAD_INPUT_DATA
|
||||
|
||||
ECJPAKE round two server: corrupted r
|
||||
read_round_two_srv:"410469d54ee85e90ce3f1246742de507e939e81d1dc1c5cb988b58c310c9fdd9524d93720b45541c83ee8841191da7ced86e3312d43623c1d63e74989aba4affd1ee4104077e8c31e20e6bedb760c13593e69f15be85c27d68cd09ccb8c4183608917c5c3d409fac39fefee82f7292d36f0d23e055913f45a52b85dd8a2052e9e129bb4d200f011f19483535a6e89a580c9b0003baf21462ece91a82cc38dbdcae60d9c54d":MBEDTLS_ERR_ECP_VERIFY_FAILED
|
||||
|
||||
ECJPAKE round two server: X not on curve
|
||||
read_round_two_srv:"410469d54ee85e90ce3f1246742de507e939e81d1dc1c5cb988b58c310c9fdd9524d93720b45541c83ee8841191da7ced86e3312d43623c1d63e74989aba4affd1ef4104077e8c31e20e6bedb760c13593e69f15be85c27d68cd09ccb8c4183608917c5c3d409fac39fefee82f7292d36f0d23e055913f45a52b85dd8a2052e9e129bb4d200f011f19483535a6e89a580c9b0003baf21462ece91a82cc38dbdcae60d9c54c":MBEDTLS_ERR_ECP_INVALID_KEY
|
||||
238
vendor/mbedtls/tests/suites/test_suite_ecjpake.function
vendored
Normal file
238
vendor/mbedtls/tests/suites/test_suite_ecjpake.function
vendored
Normal file
@@ -0,0 +1,238 @@
|
||||
/* BEGIN_HEADER */
|
||||
#include "mbedtls/ecjpake.h"
|
||||
|
||||
#if defined(MBEDTLS_ECP_DP_SECP256R1_ENABLED) && defined(MBEDTLS_MD_CAN_SHA256)
|
||||
static const unsigned char ecjpake_test_x1[] = {
|
||||
0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c,
|
||||
0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18,
|
||||
0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x21
|
||||
};
|
||||
|
||||
static const unsigned char ecjpake_test_x2[] = {
|
||||
0x61, 0x62, 0x63, 0x64, 0x65, 0x66, 0x67, 0x68, 0x69, 0x6a, 0x6b, 0x6c,
|
||||
0x6d, 0x6e, 0x6f, 0x70, 0x71, 0x72, 0x73, 0x74, 0x75, 0x76, 0x77, 0x78,
|
||||
0x79, 0x7a, 0x7b, 0x7c, 0x7d, 0x7e, 0x7f, 0x81
|
||||
};
|
||||
|
||||
static const unsigned char ecjpake_test_x3[] = {
|
||||
0x61, 0x62, 0x63, 0x64, 0x65, 0x66, 0x67, 0x68, 0x69, 0x6a, 0x6b, 0x6c,
|
||||
0x6d, 0x6e, 0x6f, 0x70, 0x71, 0x72, 0x73, 0x74, 0x75, 0x76, 0x77, 0x78,
|
||||
0x79, 0x7a, 0x7b, 0x7c, 0x7d, 0x7e, 0x7f, 0x81
|
||||
};
|
||||
|
||||
static const unsigned char ecjpake_test_x4[] = {
|
||||
0xc1, 0xc2, 0xc3, 0xc4, 0xc5, 0xc6, 0xc7, 0xc8, 0xc9, 0xca, 0xcb, 0xcc,
|
||||
0xcd, 0xce, 0xcf, 0xd0, 0xd1, 0xd2, 0xd3, 0xd4, 0xd5, 0xd6, 0xd7, 0xd8,
|
||||
0xd9, 0xda, 0xdb, 0xdc, 0xdd, 0xde, 0xdf, 0xe1
|
||||
};
|
||||
|
||||
static const unsigned char ecjpake_test_X1[] = {
|
||||
0x04, 0xac, 0xcf, 0x01, 0x06, 0xef, 0x85, 0x8f, 0xa2, 0xd9, 0x19, 0x33,
|
||||
0x13, 0x46, 0x80, 0x5a, 0x78, 0xb5, 0x8b, 0xba, 0xd0, 0xb8, 0x44, 0xe5,
|
||||
0xc7, 0x89, 0x28, 0x79, 0x14, 0x61, 0x87, 0xdd, 0x26, 0x66, 0xad, 0xa7,
|
||||
0x81, 0xbb, 0x7f, 0x11, 0x13, 0x72, 0x25, 0x1a, 0x89, 0x10, 0x62, 0x1f,
|
||||
0x63, 0x4d, 0xf1, 0x28, 0xac, 0x48, 0xe3, 0x81, 0xfd, 0x6e, 0xf9, 0x06,
|
||||
0x07, 0x31, 0xf6, 0x94, 0xa4
|
||||
};
|
||||
|
||||
static const unsigned char ecjpake_test_X2[] = {
|
||||
0x04, 0x7e, 0xa6, 0xe3, 0xa4, 0x48, 0x70, 0x37, 0xa9, 0xe0, 0xdb, 0xd7,
|
||||
0x92, 0x62, 0xb2, 0xcc, 0x27, 0x3e, 0x77, 0x99, 0x30, 0xfc, 0x18, 0x40,
|
||||
0x9a, 0xc5, 0x36, 0x1c, 0x5f, 0xe6, 0x69, 0xd7, 0x02, 0xe1, 0x47, 0x79,
|
||||
0x0a, 0xeb, 0x4c, 0xe7, 0xfd, 0x65, 0x75, 0xab, 0x0f, 0x6c, 0x7f, 0xd1,
|
||||
0xc3, 0x35, 0x93, 0x9a, 0xa8, 0x63, 0xba, 0x37, 0xec, 0x91, 0xb7, 0xe3,
|
||||
0x2b, 0xb0, 0x13, 0xbb, 0x2b
|
||||
};
|
||||
|
||||
static const unsigned char ecjpake_test_X3[] = {
|
||||
0x04, 0x7e, 0xa6, 0xe3, 0xa4, 0x48, 0x70, 0x37, 0xa9, 0xe0, 0xdb, 0xd7,
|
||||
0x92, 0x62, 0xb2, 0xcc, 0x27, 0x3e, 0x77, 0x99, 0x30, 0xfc, 0x18, 0x40,
|
||||
0x9a, 0xc5, 0x36, 0x1c, 0x5f, 0xe6, 0x69, 0xd7, 0x02, 0xe1, 0x47, 0x79,
|
||||
0x0a, 0xeb, 0x4c, 0xe7, 0xfd, 0x65, 0x75, 0xab, 0x0f, 0x6c, 0x7f, 0xd1,
|
||||
0xc3, 0x35, 0x93, 0x9a, 0xa8, 0x63, 0xba, 0x37, 0xec, 0x91, 0xb7, 0xe3,
|
||||
0x2b, 0xb0, 0x13, 0xbb, 0x2b
|
||||
};
|
||||
|
||||
static const unsigned char ecjpake_test_X4[] = {
|
||||
0x04, 0x19, 0x0a, 0x07, 0x70, 0x0f, 0xfa, 0x4b, 0xe6, 0xae, 0x1d, 0x79,
|
||||
0xee, 0x0f, 0x06, 0xae, 0xb5, 0x44, 0xcd, 0x5a, 0xdd, 0xaa, 0xbe, 0xdf,
|
||||
0x70, 0xf8, 0x62, 0x33, 0x21, 0x33, 0x2c, 0x54, 0xf3, 0x55, 0xf0, 0xfb,
|
||||
0xfe, 0xc7, 0x83, 0xed, 0x35, 0x9e, 0x5d, 0x0b, 0xf7, 0x37, 0x7a, 0x0f,
|
||||
0xc4, 0xea, 0x7a, 0xce, 0x47, 0x3c, 0x9c, 0x11, 0x2b, 0x41, 0xcc, 0xd4,
|
||||
0x1a, 0xc5, 0x6a, 0x56, 0x12
|
||||
};
|
||||
|
||||
/* Load my private and public keys, and peer's public keys */
|
||||
static int ecjpake_test_load(mbedtls_ecjpake_context *ctx,
|
||||
const unsigned char *xm1, size_t len_xm1,
|
||||
const unsigned char *xm2, size_t len_xm2,
|
||||
const unsigned char *Xm1, size_t len_Xm1,
|
||||
const unsigned char *Xm2, size_t len_Xm2,
|
||||
const unsigned char *Xp1, size_t len_Xp1,
|
||||
const unsigned char *Xp2, size_t len_Xp2)
|
||||
{
|
||||
int ret;
|
||||
|
||||
MBEDTLS_MPI_CHK(mbedtls_mpi_read_binary(&ctx->xm1, xm1, len_xm1));
|
||||
MBEDTLS_MPI_CHK(mbedtls_mpi_read_binary(&ctx->xm2, xm2, len_xm2));
|
||||
|
||||
MBEDTLS_MPI_CHK(mbedtls_ecp_point_read_binary(&ctx->grp,
|
||||
&ctx->Xm1, Xm1, len_Xm1));
|
||||
MBEDTLS_MPI_CHK(mbedtls_ecp_point_read_binary(&ctx->grp,
|
||||
&ctx->Xm2, Xm2, len_Xm2));
|
||||
MBEDTLS_MPI_CHK(mbedtls_ecp_point_read_binary(&ctx->grp,
|
||||
&ctx->Xp1, Xp1, len_Xp1));
|
||||
MBEDTLS_MPI_CHK(mbedtls_ecp_point_read_binary(&ctx->grp,
|
||||
&ctx->Xp2, Xp2, len_Xp2));
|
||||
|
||||
cleanup:
|
||||
return ret;
|
||||
}
|
||||
|
||||
#define ADD_SIZE(x) x, sizeof(x)
|
||||
#endif /* MBEDTLS_ECP_DP_SECP256R1_ENABLED && MBEDTLS_MD_CAN_SHA256 */
|
||||
/* END_HEADER */
|
||||
|
||||
/* BEGIN_DEPENDENCIES
|
||||
* depends_on:MBEDTLS_ECJPAKE_C
|
||||
* END_DEPENDENCIES
|
||||
*/
|
||||
|
||||
/* BEGIN_CASE */
|
||||
void ecjpake_invalid_param()
|
||||
{
|
||||
mbedtls_ecjpake_context ctx;
|
||||
mbedtls_ecjpake_init(&ctx);
|
||||
unsigned char buf[42] = { 0 };
|
||||
size_t const len = sizeof(buf);
|
||||
mbedtls_ecjpake_role invalid_role = (mbedtls_ecjpake_role) 42;
|
||||
mbedtls_md_type_t valid_md = MBEDTLS_MD_SHA256;
|
||||
mbedtls_ecp_group_id valid_group = MBEDTLS_ECP_DP_SECP256R1;
|
||||
|
||||
MD_PSA_INIT();
|
||||
|
||||
TEST_EQUAL(MBEDTLS_ERR_ECP_BAD_INPUT_DATA,
|
||||
mbedtls_ecjpake_setup(&ctx,
|
||||
invalid_role,
|
||||
valid_md,
|
||||
valid_group,
|
||||
buf, len));
|
||||
exit:
|
||||
MD_PSA_DONE();
|
||||
}
|
||||
/* END_CASE */
|
||||
|
||||
/* BEGIN_CASE depends_on:MBEDTLS_SELF_TEST */
|
||||
void ecjpake_selftest()
|
||||
{
|
||||
MD_PSA_INIT();
|
||||
|
||||
TEST_ASSERT(mbedtls_ecjpake_self_test(1) == 0);
|
||||
|
||||
exit:
|
||||
MD_PSA_DONE();
|
||||
}
|
||||
/* END_CASE */
|
||||
|
||||
/* BEGIN_CASE depends_on:MBEDTLS_ECP_DP_SECP256R1_ENABLED:MBEDTLS_MD_CAN_SHA256 */
|
||||
void read_bad_md(data_t *msg)
|
||||
{
|
||||
mbedtls_ecjpake_context corrupt_ctx;
|
||||
mbedtls_ecjpake_init(&corrupt_ctx);
|
||||
const unsigned char *pw = NULL;
|
||||
const size_t pw_len = 0;
|
||||
int any_role = MBEDTLS_ECJPAKE_CLIENT;
|
||||
|
||||
MD_PSA_INIT();
|
||||
|
||||
TEST_ASSERT(mbedtls_ecjpake_setup(&corrupt_ctx, any_role,
|
||||
MBEDTLS_MD_SHA256, MBEDTLS_ECP_DP_SECP256R1, pw,
|
||||
pw_len) == 0);
|
||||
corrupt_ctx.md_type = MBEDTLS_MD_NONE;
|
||||
|
||||
TEST_EQUAL(mbedtls_ecjpake_read_round_one(&corrupt_ctx, msg->x,
|
||||
msg->len), MBEDTLS_ERR_MD_BAD_INPUT_DATA);
|
||||
|
||||
exit:
|
||||
mbedtls_ecjpake_free(&corrupt_ctx);
|
||||
MD_PSA_DONE();
|
||||
}
|
||||
/* END_CASE */
|
||||
|
||||
/* BEGIN_CASE depends_on:MBEDTLS_ECP_DP_SECP256R1_ENABLED:MBEDTLS_MD_CAN_SHA256 */
|
||||
void read_round_one(int role, data_t *msg, int ref_ret)
|
||||
{
|
||||
mbedtls_ecjpake_context ctx;
|
||||
mbedtls_ecjpake_init(&ctx);
|
||||
const unsigned char *pw = NULL;
|
||||
const size_t pw_len = 0;
|
||||
|
||||
MD_PSA_INIT();
|
||||
|
||||
TEST_ASSERT(mbedtls_ecjpake_setup(&ctx, role,
|
||||
MBEDTLS_MD_SHA256, MBEDTLS_ECP_DP_SECP256R1, pw,
|
||||
pw_len) == 0);
|
||||
|
||||
TEST_ASSERT(mbedtls_ecjpake_read_round_one(&ctx, msg->x, msg->len) == ref_ret);
|
||||
|
||||
exit:
|
||||
mbedtls_ecjpake_free(&ctx);
|
||||
MD_PSA_DONE();
|
||||
}
|
||||
/* END_CASE */
|
||||
|
||||
/* BEGIN_CASE depends_on:MBEDTLS_ECP_DP_SECP256R1_ENABLED:MBEDTLS_MD_CAN_SHA256 */
|
||||
void read_round_two_cli(data_t *msg, int ref_ret)
|
||||
{
|
||||
mbedtls_ecjpake_context ctx;
|
||||
mbedtls_ecjpake_init(&ctx);
|
||||
const unsigned char *pw = NULL;
|
||||
const size_t pw_len = 0;
|
||||
|
||||
MD_PSA_INIT();
|
||||
|
||||
TEST_ASSERT(mbedtls_ecjpake_setup(&ctx, MBEDTLS_ECJPAKE_CLIENT,
|
||||
MBEDTLS_MD_SHA256, MBEDTLS_ECP_DP_SECP256R1, pw,
|
||||
pw_len) == 0);
|
||||
|
||||
TEST_ASSERT(ecjpake_test_load(&ctx,
|
||||
ADD_SIZE(ecjpake_test_x1), ADD_SIZE(ecjpake_test_x2),
|
||||
ADD_SIZE(ecjpake_test_X1), ADD_SIZE(ecjpake_test_X2),
|
||||
ADD_SIZE(ecjpake_test_X3), ADD_SIZE(ecjpake_test_X4))
|
||||
== 0);
|
||||
|
||||
TEST_ASSERT(mbedtls_ecjpake_read_round_two(&ctx, msg->x, msg->len) == ref_ret);
|
||||
|
||||
exit:
|
||||
mbedtls_ecjpake_free(&ctx);
|
||||
MD_PSA_DONE();
|
||||
}
|
||||
/* END_CASE */
|
||||
|
||||
/* BEGIN_CASE depends_on:MBEDTLS_ECP_DP_SECP256R1_ENABLED:MBEDTLS_MD_CAN_SHA256 */
|
||||
void read_round_two_srv(data_t *msg, int ref_ret)
|
||||
{
|
||||
mbedtls_ecjpake_context ctx;
|
||||
mbedtls_ecjpake_init(&ctx);
|
||||
const unsigned char *pw = NULL;
|
||||
const size_t pw_len = 0;
|
||||
|
||||
MD_PSA_INIT();
|
||||
|
||||
TEST_ASSERT(mbedtls_ecjpake_setup(&ctx, MBEDTLS_ECJPAKE_SERVER,
|
||||
MBEDTLS_MD_SHA256, MBEDTLS_ECP_DP_SECP256R1, pw,
|
||||
pw_len) == 0);
|
||||
|
||||
TEST_ASSERT(ecjpake_test_load(&ctx,
|
||||
ADD_SIZE(ecjpake_test_x3), ADD_SIZE(ecjpake_test_x4),
|
||||
ADD_SIZE(ecjpake_test_X3), ADD_SIZE(ecjpake_test_X4),
|
||||
ADD_SIZE(ecjpake_test_X1), ADD_SIZE(ecjpake_test_X2))
|
||||
== 0);
|
||||
|
||||
TEST_ASSERT(mbedtls_ecjpake_read_round_two(&ctx, msg->x, msg->len) == ref_ret);
|
||||
|
||||
exit:
|
||||
mbedtls_ecjpake_free(&ctx);
|
||||
MD_PSA_DONE();
|
||||
}
|
||||
/* END_CASE */
|
||||
2270
vendor/mbedtls/tests/suites/test_suite_ecp.data
vendored
Normal file
2270
vendor/mbedtls/tests/suites/test_suite_ecp.data
vendored
Normal file
File diff suppressed because it is too large
Load Diff
1932
vendor/mbedtls/tests/suites/test_suite_ecp.function
vendored
Normal file
1932
vendor/mbedtls/tests/suites/test_suite_ecp.function
vendored
Normal file
File diff suppressed because it is too large
Load Diff
919
vendor/mbedtls/tests/suites/test_suite_ecp.generated.data
vendored
Normal file
919
vendor/mbedtls/tests/suites/test_suite_ecp.generated.data
vendored
Normal file
@@ -0,0 +1,919 @@
|
||||
# Automatically generated by generate_ecp_tests.py. Do not edit!
|
||||
|
||||
ecp_mod_p192k1_raw #1 - 0 mod fffffffffffffffffffffffffffffffffffffffeffffee37
|
||||
depends_on:MBEDTLS_ECP_DP_SECP192K1_ENABLED
|
||||
ecp_mod_p_generic_raw:MBEDTLS_ECP_DP_SECP192K1:"fffffffffffffffffffffffffffffffffffffffeffffee37":"000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000":"000000000000000000000000000000000000000000000000"
|
||||
|
||||
ecp_mod_p192k1_raw #2 - 1 mod fffffffffffffffffffffffffffffffffffffffeffffee37
|
||||
depends_on:MBEDTLS_ECP_DP_SECP192K1_ENABLED
|
||||
ecp_mod_p_generic_raw:MBEDTLS_ECP_DP_SECP192K1:"fffffffffffffffffffffffffffffffffffffffeffffee37":"000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001":"000000000000000000000000000000000000000000000001"
|
||||
|
||||
ecp_mod_p192k1_raw #3 - fffffffffffffffffffffffffffffffffffffffeffffee36 mod fffffffffffffffffffffffffffffffffffffffeffffee37
|
||||
depends_on:MBEDTLS_ECP_DP_SECP192K1_ENABLED
|
||||
ecp_mod_p_generic_raw:MBEDTLS_ECP_DP_SECP192K1:"fffffffffffffffffffffffffffffffffffffffeffffee37":"000000000000000000000000000000000000000000000000fffffffffffffffffffffffffffffffffffffffeffffee36":"fffffffffffffffffffffffffffffffffffffffeffffee36"
|
||||
|
||||
ecp_mod_p192k1_raw #4 - fffffffffffffffffffffffffffffffffffffffeffffee38 mod fffffffffffffffffffffffffffffffffffffffeffffee37
|
||||
depends_on:MBEDTLS_ECP_DP_SECP192K1_ENABLED
|
||||
ecp_mod_p_generic_raw:MBEDTLS_ECP_DP_SECP192K1:"fffffffffffffffffffffffffffffffffffffffeffffee37":"000000000000000000000000000000000000000000000000fffffffffffffffffffffffffffffffffffffffeffffee38":"000000000000000000000000000000000000000000000001"
|
||||
|
||||
ecp_mod_p192k1_raw #5 - ffffffffffffffffffffffffffffffffffffffffffffffff mod fffffffffffffffffffffffffffffffffffffffeffffee37
|
||||
depends_on:MBEDTLS_ECP_DP_SECP192K1_ENABLED
|
||||
ecp_mod_p_generic_raw:MBEDTLS_ECP_DP_SECP192K1:"fffffffffffffffffffffffffffffffffffffffeffffee37":"000000000000000000000000000000000000000000000000ffffffffffffffffffffffffffffffffffffffffffffffff":"0000000000000000000000000000000000000001000011c8"
|
||||
|
||||
ecp_mod_p192k1_raw #6 - fffffffffffffffffffffffffffffffffffffffdffffdc6c0000000000000000000000000000000100002394013c7364 mod fffffffffffffffffffffffffffffffffffffffeffffee37
|
||||
depends_on:MBEDTLS_ECP_DP_SECP192K1_ENABLED
|
||||
ecp_mod_p_generic_raw:MBEDTLS_ECP_DP_SECP192K1:"fffffffffffffffffffffffffffffffffffffffeffffee37":"fffffffffffffffffffffffffffffffffffffffdffffdc6c0000000000000000000000000000000100002394013c7364":"000000000000000000000000000000000000000000000001"
|
||||
|
||||
ecp_mod_p192k1_raw #7 - 7ffff71b809e27dd832cfd5e04d9d2dbb9f8da2170000000000000000000000000000000000000000520834f0 mod fffffffffffffffffffffffffffffffffffffffeffffee37
|
||||
depends_on:MBEDTLS_ECP_DP_SECP192K1_ENABLED
|
||||
ecp_mod_p_generic_raw:MBEDTLS_ECP_DP_SECP192K1:"fffffffffffffffffffffffffffffffffffffffeffffee37":"00000007ffff71b809e27dd832cfd5e04d9d2dbb9f8da2170000000000000000000000000000000000000000520834f0":"000000000000000000000000000000000000000800008e47"
|
||||
|
||||
ecp_mod_p192k1_raw #8 - cf1822ffbc6887782b491044d5e341245c6e433715ba2bdd177219d30e7a269fd95bafc8f2a4d27bdcf4bb99f4bea973 mod fffffffffffffffffffffffffffffffffffffffeffffee37
|
||||
depends_on:MBEDTLS_ECP_DP_SECP192K1_ENABLED
|
||||
ecp_mod_p_generic_raw:MBEDTLS_ECP_DP_SECP192K1:"fffffffffffffffffffffffffffffffffffffffeffffee37":"cf1822ffbc6887782b491044d5e341245c6e433715ba2bdd177219d30e7a269fd95bafc8f2a4d27bdcf4bb99f4bea973":"0821179918d48f1e85b1492d55d4a563a6d095ee961b20b3"
|
||||
|
||||
ecp_mod_p192k1_raw #9 - ffed9235288bc781ae66267594c9c9500925e4749b575bd13653f8dd9b1f282e4067c3584ee207f8da94e3e8ab73738f mod fffffffffffffffffffffffffffffffffffffffeffffee37
|
||||
depends_on:MBEDTLS_ECP_DP_SECP192K1_ENABLED
|
||||
ecp_mod_p_generic_raw:MBEDTLS_ECP_DP_SECP192K1:"fffffffffffffffffffffffffffffffffffffffeffffee37":"ffed9235288bc781ae66267594c9c9500925e4749b575bd13653f8dd9b1f282e4067c3584ee207f8da94e3e8ab73738f":"171d13cd6784900a8bf38ddb90d54ce128c6135d299cfa4d"
|
||||
|
||||
ecp_mod_p192k1_raw #10 - ef8acd128b4f2fc15f3f57ebf30b94fa82523e86feac7eb7dc38f519b91751dacdbd47d364be8049a372db8f6e405d93 mod fffffffffffffffffffffffffffffffffffffffeffffee37
|
||||
depends_on:MBEDTLS_ECP_DP_SECP192K1_ENABLED
|
||||
ecp_mod_p_generic_raw:MBEDTLS_ECP_DP_SECP192K1:"fffffffffffffffffffffffffffffffffffffffeffffee37":"ef8acd128b4f2fc15f3f57ebf30b94fa82523e86feac7eb7dc38f519b91751dacdbd47d364be8049a372db8f6e405d93":"b32163aabbaeffedbe5b9033800d5a295a64578924db3df1"
|
||||
|
||||
ecp_mod_p192k1_raw #11 - e8624fab5186ee32ee8d7ee9770348a05d300cb90706a045defc044a09325626e6b58de744ab6cce80877b6f71e1f6d2 mod fffffffffffffffffffffffffffffffffffffffeffffee37
|
||||
depends_on:MBEDTLS_ECP_DP_SECP192K1_ENABLED
|
||||
ecp_mod_p_generic_raw:MBEDTLS_ECP_DP_SECP192K1:"fffffffffffffffffffffffffffffffffffffffeffffee37":"e8624fab5186ee32ee8d7ee9770348a05d300cb90706a045defc044a09325626e6b58de744ab6cce80877b6f71e1f6d2":"2cfde069f0823ce5103efcbd4b4225a1cb82d26864547e18"
|
||||
|
||||
ecp_mod_p192k1_raw #12 - 2d3d854e061b90303b08c6e33c7295782d6c797f8f7d9b782a1be9cd8697bbd0e2520e33e44c50556c71c4a66148a86f mod fffffffffffffffffffffffffffffffffffffffeffffee37
|
||||
depends_on:MBEDTLS_ECP_DP_SECP192K1_ENABLED
|
||||
ecp_mod_p_generic_raw:MBEDTLS_ECP_DP_SECP192K1:"fffffffffffffffffffffffffffffffffffffffeffffee37":"2d3d854e061b90303b08c6e33c7295782d6c797f8f7d9b782a1be9cd8697bbd0e2520e33e44c50556c71c4a66148a86f":"cb5f52a861d7ec7e0ddde31a239d20350769c963fd9a6529"
|
||||
|
||||
ecp_mod_p192k1_raw #13 - fec3f6b32e8d4b8a8f54f8ceacaab39e83844b40ffa9b9f15c14bc4a829e07b0829a48d422fe99a22c70501e533c9135 mod fffffffffffffffffffffffffffffffffffffffeffffee37
|
||||
depends_on:MBEDTLS_ECP_DP_SECP192K1_ENABLED
|
||||
ecp_mod_p_generic_raw:MBEDTLS_ECP_DP_SECP192K1:"fffffffffffffffffffffffffffffffffffffffeffffee37":"fec3f6b32e8d4b8a8f54f8ceacaab39e83844b40ffa9b9f15c14bc4a829e07b0829a48d422fe99a22c70501e533c9135":"95e0a09c00e783ce5d82102f8e77731536bc8b2b6151ee84"
|
||||
|
||||
ecp_mod_p192k1_raw #14 - 97eeab64ca2ce6bc5d3fd983c34c769fe89204e2e8168561867e5e15bc01bfce6a27e0dfcbf8754472154e76e4c11ab2 mod fffffffffffffffffffffffffffffffffffffffeffffee37
|
||||
depends_on:MBEDTLS_ECP_DP_SECP192K1_ENABLED
|
||||
ecp_mod_p_generic_raw:MBEDTLS_ECP_DP_SECP192K1:"fffffffffffffffffffffffffffffffffffffffeffffee37":"97eeab64ca2ce6bc5d3fd983c34c769fe89204e2e8168561867e5e15bc01bfce6a27e0dfcbf8754472154e76e4c11ab2":"74718861d1d54568a207dfec1f743c273f137beac1cd43a6"
|
||||
|
||||
ecp_mod_p192k1_raw #15 - bd143fa9b714210c665d7435c1066932f4767f26294365b2721dea3bf63f23d0dbe53fcafb2147df5ca495fa5a91c89b mod fffffffffffffffffffffffffffffffffffffffeffffee37
|
||||
depends_on:MBEDTLS_ECP_DP_SECP192K1_ENABLED
|
||||
ecp_mod_p_generic_raw:MBEDTLS_ECP_DP_SECP192K1:"fffffffffffffffffffffffffffffffffffffffeffffee37":"bd143fa9b714210c665d7435c1066932f4767f26294365b2721dea3bf63f23d0dbe53fcafb2147df5ca495fa5a91c89b":"f6524cb1719c5d8f31037903ea9cc2441277b34f08474b89"
|
||||
|
||||
ecp_mod_p192k1_raw #16 - 47733e847d718d733ff98ff387c56473a7a83ee0761ebfd2 mod fffffffffffffffffffffffffffffffffffffffeffffee37
|
||||
depends_on:MBEDTLS_ECP_DP_SECP192K1_ENABLED
|
||||
ecp_mod_p_generic_raw:MBEDTLS_ECP_DP_SECP192K1:"fffffffffffffffffffffffffffffffffffffffeffffee37":"00000000000000000000000000000000000000000000000047733e847d718d733ff98ff387c56473a7a83ee0761ebfd2":"47733e847d718d733ff98ff387c56473a7a83ee0761ebfd2"
|
||||
|
||||
ecp_mod_p192k1_raw #17 - cbd4d3e2d4dec9ef83f0be4e80371eb97f81375eecc1cb63 mod fffffffffffffffffffffffffffffffffffffffeffffee37
|
||||
depends_on:MBEDTLS_ECP_DP_SECP192K1_ENABLED
|
||||
ecp_mod_p_generic_raw:MBEDTLS_ECP_DP_SECP192K1:"fffffffffffffffffffffffffffffffffffffffeffffee37":"000000000000000000000000000000000000000000000000cbd4d3e2d4dec9ef83f0be4e80371eb97f81375eecc1cb63":"cbd4d3e2d4dec9ef83f0be4e80371eb97f81375eecc1cb63"
|
||||
|
||||
ecp_mod_p192_raw #1 - 0 mod fffffffffffffffffffffffffffffffeffffffffffffffff
|
||||
depends_on:MBEDTLS_ECP_DP_SECP192R1_ENABLED:MBEDTLS_ECP_NIST_OPTIM
|
||||
ecp_mod_p_generic_raw:MBEDTLS_ECP_DP_SECP192R1:"fffffffffffffffffffffffffffffffeffffffffffffffff":"000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000":"000000000000000000000000000000000000000000000000"
|
||||
|
||||
ecp_mod_p192_raw #2 - 1 mod fffffffffffffffffffffffffffffffeffffffffffffffff
|
||||
depends_on:MBEDTLS_ECP_DP_SECP192R1_ENABLED:MBEDTLS_ECP_NIST_OPTIM
|
||||
ecp_mod_p_generic_raw:MBEDTLS_ECP_DP_SECP192R1:"fffffffffffffffffffffffffffffffeffffffffffffffff":"000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001":"000000000000000000000000000000000000000000000001"
|
||||
|
||||
ecp_mod_p192_raw #3 - fffffffffffffffffffffffffffffffefffffffffffffffe mod fffffffffffffffffffffffffffffffeffffffffffffffff
|
||||
depends_on:MBEDTLS_ECP_DP_SECP192R1_ENABLED:MBEDTLS_ECP_NIST_OPTIM
|
||||
ecp_mod_p_generic_raw:MBEDTLS_ECP_DP_SECP192R1:"fffffffffffffffffffffffffffffffeffffffffffffffff":"000000000000000000000000000000000000000000000000fffffffffffffffffffffffffffffffefffffffffffffffe":"fffffffffffffffffffffffffffffffefffffffffffffffe"
|
||||
|
||||
ecp_mod_p192_raw #4 - ffffffffffffffffffffffffffffffff0000000000000000 mod fffffffffffffffffffffffffffffffeffffffffffffffff
|
||||
depends_on:MBEDTLS_ECP_DP_SECP192R1_ENABLED:MBEDTLS_ECP_NIST_OPTIM
|
||||
ecp_mod_p_generic_raw:MBEDTLS_ECP_DP_SECP192R1:"fffffffffffffffffffffffffffffffeffffffffffffffff":"000000000000000000000000000000000000000000000000ffffffffffffffffffffffffffffffff0000000000000000":"000000000000000000000000000000000000000000000001"
|
||||
|
||||
ecp_mod_p192_raw #5 - ffffffffffffffffffffffffffffffffffffffffffffffff mod fffffffffffffffffffffffffffffffeffffffffffffffff
|
||||
depends_on:MBEDTLS_ECP_DP_SECP192R1_ENABLED:MBEDTLS_ECP_NIST_OPTIM
|
||||
ecp_mod_p_generic_raw:MBEDTLS_ECP_DP_SECP192R1:"fffffffffffffffffffffffffffffffeffffffffffffffff":"000000000000000000000000000000000000000000000000ffffffffffffffffffffffffffffffffffffffffffffffff":"000000000000000000000000000000010000000000000000"
|
||||
|
||||
ecp_mod_p192_raw #6 - fffffffffffffffffffffffffffffffdfffffffffffffffc000000000000000100000000000000040000000000000004 mod fffffffffffffffffffffffffffffffeffffffffffffffff
|
||||
depends_on:MBEDTLS_ECP_DP_SECP192R1_ENABLED:MBEDTLS_ECP_NIST_OPTIM
|
||||
ecp_mod_p_generic_raw:MBEDTLS_ECP_DP_SECP192R1:"fffffffffffffffffffffffffffffffeffffffffffffffff":"fffffffffffffffffffffffffffffffdfffffffffffffffc000000000000000100000000000000040000000000000004":"000000000000000000000000000000000000000000000001"
|
||||
|
||||
ecp_mod_p192_raw #7 - 1ffffffffffffffffffffffffffffffffffffffffffffffff0000000000000000 mod fffffffffffffffffffffffffffffffeffffffffffffffff
|
||||
depends_on:MBEDTLS_ECP_DP_SECP192R1_ENABLED:MBEDTLS_ECP_NIST_OPTIM
|
||||
ecp_mod_p_generic_raw:MBEDTLS_ECP_DP_SECP192R1:"fffffffffffffffffffffffffffffffeffffffffffffffff":"00000000000000000000000000000001ffffffffffffffffffffffffffffffffffffffffffffffff0000000000000000":"000000000000000200000000000000010000000000000000"
|
||||
|
||||
ecp_mod_p192_raw #8 - ffffffffffffffff00000000000000010000000000000000fffffffffffffffeffffffffffffffff0000000000000000 mod fffffffffffffffffffffffffffffffeffffffffffffffff
|
||||
depends_on:MBEDTLS_ECP_DP_SECP192R1_ENABLED:MBEDTLS_ECP_NIST_OPTIM
|
||||
ecp_mod_p_generic_raw:MBEDTLS_ECP_DP_SECP192R1:"fffffffffffffffffffffffffffffffeffffffffffffffff":"ffffffffffffffff00000000000000010000000000000000fffffffffffffffeffffffffffffffff0000000000000000":"000000000000000000000000000000020000000000000001"
|
||||
|
||||
ecp_mod_p192_raw #9 - cf1822ffbc6887782b491044d5e341245c6e433715ba2bdd177219d30e7a269fd95bafc8f2a4d27bdcf4bb99f4bea973 mod fffffffffffffffffffffffffffffffeffffffffffffffff
|
||||
depends_on:MBEDTLS_ECP_DP_SECP192R1_ENABLED:MBEDTLS_ECP_NIST_OPTIM
|
||||
ecp_mod_p_generic_raw:MBEDTLS_ECP_DP_SECP192R1:"fffffffffffffffffffffffffffffffeffffffffffffffff":"cf1822ffbc6887782b491044d5e341245c6e433715ba2bdd177219d30e7a269fd95bafc8f2a4d27bdcf4bb99f4bea973":"11d34d17a0c5ef3d302b26449aaac6f7087b21d0c6e15cc9"
|
||||
|
||||
ecp_mod_p192_raw #10 - ffed9235288bc781ae66267594c9c9500925e4749b575bd13653f8dd9b1f282e4067c3584ee207f8da94e3e8ab73738f mod fffffffffffffffffffffffffffffffeffffffffffffffff
|
||||
depends_on:MBEDTLS_ECP_DP_SECP192R1_ENABLED:MBEDTLS_ECP_NIST_OPTIM
|
||||
ecp_mod_p_generic_raw:MBEDTLS_ECP_DP_SECP192R1:"fffffffffffffffffffffffffffffffeffffffffffffffff":"ffed9235288bc781ae66267594c9c9500925e4749b575bd13653f8dd9b1f282e4067c3584ee207f8da94e3e8ab73738f":"e4a7b1885874b900f7e16077a78ef49ce3a85a926f5696e2"
|
||||
|
||||
ecp_mod_p192_raw #11 - ef8acd128b4f2fc15f3f57ebf30b94fa82523e86feac7eb7dc38f519b91751dacdbd47d364be8049a372db8f6e405d93 mod fffffffffffffffffffffffffffffffeffffffffffffffff
|
||||
depends_on:MBEDTLS_ECP_DP_SECP192R1_ENABLED:MBEDTLS_ECP_NIST_OPTIM
|
||||
ecp_mod_p_generic_raw:MBEDTLS_ECP_DP_SECP192R1:"fffffffffffffffffffffffffffffffeffffffffffffffff":"ef8acd128b4f2fc15f3f57ebf30b94fa82523e86feac7eb7dc38f519b91751dacdbd47d364be8049a372db8f6e405d93":"2b031a18377216979ed9ab58e1c5c3bf154fe728f83c0c0d"
|
||||
|
||||
ecp_mod_p192_raw #12 - e8624fab5186ee32ee8d7ee9770348a05d300cb90706a045defc044a09325626e6b58de744ab6cce80877b6f71e1f6d2 mod fffffffffffffffffffffffffffffffeffffffffffffffff
|
||||
depends_on:MBEDTLS_ECP_DP_SECP192R1_ENABLED:MBEDTLS_ECP_NIST_OPTIM
|
||||
ecp_mod_p_generic_raw:MBEDTLS_ECP_DP_SECP192R1:"fffffffffffffffffffffffffffffffeffffffffffffffff":"e8624fab5186ee32ee8d7ee9770348a05d300cb90706a045defc044a09325626e6b58de744ab6cce80877b6f71e1f6d2":"b5ebd2ded1bc8cfb1ad56935143c43e8c619d7d3ca6f854b"
|
||||
|
||||
ecp_mod_p192_raw #13 - 2d3d854e061b90303b08c6e33c7295782d6c797f8f7d9b782a1be9cd8697bbd0e2520e33e44c50556c71c4a66148a86f mod fffffffffffffffffffffffffffffffeffffffffffffffff
|
||||
depends_on:MBEDTLS_ECP_DP_SECP192R1_ENABLED:MBEDTLS_ECP_NIST_OPTIM
|
||||
ecp_mod_p_generic_raw:MBEDTLS_ECP_DP_SECP192R1:"fffffffffffffffffffffffffffffffeffffffffffffffff":"2d3d854e061b90303b08c6e33c7295782d6c797f8f7d9b782a1be9cd8697bbd0e2520e33e44c50556c71c4a66148a86f":"926235fec925e1797804d3e4b6581175c71bc373f6e1d417"
|
||||
|
||||
ecp_mod_p192_raw #14 - fec3f6b32e8d4b8a8f54f8ceacaab39e83844b40ffa9b9f15c14bc4a829e07b0829a48d422fe99a22c70501e533c9135 mod fffffffffffffffffffffffffffffffeffffffffffffffff
|
||||
depends_on:MBEDTLS_ECP_DP_SECP192R1_ENABLED:MBEDTLS_ECP_NIST_OPTIM
|
||||
ecp_mod_p_generic_raw:MBEDTLS_ECP_DP_SECP192R1:"fffffffffffffffffffffffffffffffeffffffffffffffff":"fec3f6b32e8d4b8a8f54f8ceacaab39e83844b40ffa9b9f15c14bc4a829e07b0829a48d422fe99a22c70501e533c9135":"ea2dabcc5dd606da94378396fde052bdaeb89212817396b1"
|
||||
|
||||
ecp_mod_p192_raw #15 - 97eeab64ca2ce6bc5d3fd983c34c769fe89204e2e8168561867e5e15bc01bfce6a27e0dfcbf8754472154e76e4c11ab2 mod fffffffffffffffffffffffffffffffeffffffffffffffff
|
||||
depends_on:MBEDTLS_ECP_DP_SECP192R1_ENABLED:MBEDTLS_ECP_NIST_OPTIM
|
||||
ecp_mod_p_generic_raw:MBEDTLS_ECP_DP_SECP192R1:"fffffffffffffffffffffffffffffffeffffffffffffffff":"97eeab64ca2ce6bc5d3fd983c34c769fe89204e2e8168561867e5e15bc01bfce6a27e0dfcbf8754472154e76e4c11ab2":"7bace2fe497b1d2b47e86aab41885802f295febe970486d0"
|
||||
|
||||
ecp_mod_p192_raw #16 - bd143fa9b714210c665d7435c1066932f4767f26294365b2721dea3bf63f23d0dbe53fcafb2147df5ca495fa5a91c89b mod fffffffffffffffffffffffffffffffeffffffffffffffff
|
||||
depends_on:MBEDTLS_ECP_DP_SECP192R1_ENABLED:MBEDTLS_ECP_NIST_OPTIM
|
||||
ecp_mod_p_generic_raw:MBEDTLS_ECP_DP_SECP192R1:"fffffffffffffffffffffffffffffffeffffffffffffffff":"bd143fa9b714210c665d7435c1066932f4767f26294365b2721dea3bf63f23d0dbe53fcafb2147df5ca495fa5a91c89b":"958f9e1b6e59ae10f3cd72d09c7f37d20e2f54ca3ae94f5a"
|
||||
|
||||
ecp_mod_p192_raw #17 - 47733e847d718d733ff98ff387c56473a7a83ee0761ebfd2 mod fffffffffffffffffffffffffffffffeffffffffffffffff
|
||||
depends_on:MBEDTLS_ECP_DP_SECP192R1_ENABLED:MBEDTLS_ECP_NIST_OPTIM
|
||||
ecp_mod_p_generic_raw:MBEDTLS_ECP_DP_SECP192R1:"fffffffffffffffffffffffffffffffeffffffffffffffff":"00000000000000000000000000000000000000000000000047733e847d718d733ff98ff387c56473a7a83ee0761ebfd2":"47733e847d718d733ff98ff387c56473a7a83ee0761ebfd2"
|
||||
|
||||
ecp_mod_p192_raw #18 - cbd4d3e2d4dec9ef83f0be4e80371eb97f81375eecc1cb63 mod fffffffffffffffffffffffffffffffeffffffffffffffff
|
||||
depends_on:MBEDTLS_ECP_DP_SECP192R1_ENABLED:MBEDTLS_ECP_NIST_OPTIM
|
||||
ecp_mod_p_generic_raw:MBEDTLS_ECP_DP_SECP192R1:"fffffffffffffffffffffffffffffffeffffffffffffffff":"000000000000000000000000000000000000000000000000cbd4d3e2d4dec9ef83f0be4e80371eb97f81375eecc1cb63":"cbd4d3e2d4dec9ef83f0be4e80371eb97f81375eecc1cb63"
|
||||
|
||||
ecp_mod_p224k1_raw #1 - 0 mod fffffffffffffffffffffffffffffffffffffffffffffffeffffe56d
|
||||
depends_on:MBEDTLS_ECP_DP_SECP224K1_ENABLED:MBEDTLS_HAVE_INT32
|
||||
ecp_mod_p_generic_raw:MBEDTLS_ECP_DP_SECP224K1:"fffffffffffffffffffffffffffffffffffffffffffffffeffffe56d":"0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000":"00000000000000000000000000000000000000000000000000000000"
|
||||
|
||||
ecp_mod_p224k1_raw #2 - 0 mod fffffffffffffffffffffffffffffffffffffffffffffffeffffe56d
|
||||
depends_on:MBEDTLS_ECP_DP_SECP224K1_ENABLED:MBEDTLS_HAVE_INT64
|
||||
ecp_mod_p_generic_raw:MBEDTLS_ECP_DP_SECP224K1:"00000000fffffffffffffffffffffffffffffffffffffffffffffffeffffe56d":"00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000":"0000000000000000000000000000000000000000000000000000000000000000"
|
||||
|
||||
ecp_mod_p224k1_raw #3 - 1 mod fffffffffffffffffffffffffffffffffffffffffffffffeffffe56d
|
||||
depends_on:MBEDTLS_ECP_DP_SECP224K1_ENABLED:MBEDTLS_HAVE_INT32
|
||||
ecp_mod_p_generic_raw:MBEDTLS_ECP_DP_SECP224K1:"fffffffffffffffffffffffffffffffffffffffffffffffeffffe56d":"0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001":"00000000000000000000000000000000000000000000000000000001"
|
||||
|
||||
ecp_mod_p224k1_raw #4 - 1 mod fffffffffffffffffffffffffffffffffffffffffffffffeffffe56d
|
||||
depends_on:MBEDTLS_ECP_DP_SECP224K1_ENABLED:MBEDTLS_HAVE_INT64
|
||||
ecp_mod_p_generic_raw:MBEDTLS_ECP_DP_SECP224K1:"00000000fffffffffffffffffffffffffffffffffffffffffffffffeffffe56d":"00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001":"0000000000000000000000000000000000000000000000000000000000000001"
|
||||
|
||||
ecp_mod_p224k1_raw #5 - fffffffffffffffffffffffffffffffffffffffffffffffeffffe56c mod fffffffffffffffffffffffffffffffffffffffffffffffeffffe56d
|
||||
depends_on:MBEDTLS_ECP_DP_SECP224K1_ENABLED:MBEDTLS_HAVE_INT32
|
||||
ecp_mod_p_generic_raw:MBEDTLS_ECP_DP_SECP224K1:"fffffffffffffffffffffffffffffffffffffffffffffffeffffe56d":"00000000000000000000000000000000000000000000000000000000fffffffffffffffffffffffffffffffffffffffffffffffeffffe56c":"fffffffffffffffffffffffffffffffffffffffffffffffeffffe56c"
|
||||
|
||||
ecp_mod_p224k1_raw #6 - fffffffffffffffffffffffffffffffffffffffffffffffeffffe56c mod fffffffffffffffffffffffffffffffffffffffffffffffeffffe56d
|
||||
depends_on:MBEDTLS_ECP_DP_SECP224K1_ENABLED:MBEDTLS_HAVE_INT64
|
||||
ecp_mod_p_generic_raw:MBEDTLS_ECP_DP_SECP224K1:"00000000fffffffffffffffffffffffffffffffffffffffffffffffeffffe56d":"000000000000000000000000000000000000000000000000000000000000000000000000fffffffffffffffffffffffffffffffffffffffffffffffeffffe56c":"00000000fffffffffffffffffffffffffffffffffffffffffffffffeffffe56c"
|
||||
|
||||
ecp_mod_p224k1_raw #7 - fffffffffffffffffffffffffffffffffffffffffffffffeffffe56e mod fffffffffffffffffffffffffffffffffffffffffffffffeffffe56d
|
||||
depends_on:MBEDTLS_ECP_DP_SECP224K1_ENABLED:MBEDTLS_HAVE_INT32
|
||||
ecp_mod_p_generic_raw:MBEDTLS_ECP_DP_SECP224K1:"fffffffffffffffffffffffffffffffffffffffffffffffeffffe56d":"00000000000000000000000000000000000000000000000000000000fffffffffffffffffffffffffffffffffffffffffffffffeffffe56e":"00000000000000000000000000000000000000000000000000000001"
|
||||
|
||||
ecp_mod_p224k1_raw #8 - fffffffffffffffffffffffffffffffffffffffffffffffeffffe56e mod fffffffffffffffffffffffffffffffffffffffffffffffeffffe56d
|
||||
depends_on:MBEDTLS_ECP_DP_SECP224K1_ENABLED:MBEDTLS_HAVE_INT64
|
||||
ecp_mod_p_generic_raw:MBEDTLS_ECP_DP_SECP224K1:"00000000fffffffffffffffffffffffffffffffffffffffffffffffeffffe56d":"000000000000000000000000000000000000000000000000000000000000000000000000fffffffffffffffffffffffffffffffffffffffffffffffeffffe56e":"0000000000000000000000000000000000000000000000000000000000000001"
|
||||
|
||||
ecp_mod_p224k1_raw #9 - ffffffffffffffffffffffffffffffffffffffffffffffffffffffff mod fffffffffffffffffffffffffffffffffffffffffffffffeffffe56d
|
||||
depends_on:MBEDTLS_ECP_DP_SECP224K1_ENABLED:MBEDTLS_HAVE_INT32
|
||||
ecp_mod_p_generic_raw:MBEDTLS_ECP_DP_SECP224K1:"fffffffffffffffffffffffffffffffffffffffffffffffeffffe56d":"00000000000000000000000000000000000000000000000000000000ffffffffffffffffffffffffffffffffffffffffffffffffffffffff":"00000000000000000000000000000000000000000000000100001a92"
|
||||
|
||||
ecp_mod_p224k1_raw #10 - ffffffffffffffffffffffffffffffffffffffffffffffffffffffff mod fffffffffffffffffffffffffffffffffffffffffffffffeffffe56d
|
||||
depends_on:MBEDTLS_ECP_DP_SECP224K1_ENABLED:MBEDTLS_HAVE_INT64
|
||||
ecp_mod_p_generic_raw:MBEDTLS_ECP_DP_SECP224K1:"00000000fffffffffffffffffffffffffffffffffffffffffffffffeffffe56d":"000000000000000000000000000000000000000000000000000000000000000000000000ffffffffffffffffffffffffffffffffffffffffffffffffffffffff":"0000000000000000000000000000000000000000000000000000000100001a92"
|
||||
|
||||
ecp_mod_p224k1_raw #11 - fffffffffffffffffffffffffffffffffffffffffffffffdffffcad800000000000000000000000000000000000000010000352802c26590 mod fffffffffffffffffffffffffffffffffffffffffffffffeffffe56d
|
||||
depends_on:MBEDTLS_ECP_DP_SECP224K1_ENABLED:MBEDTLS_HAVE_INT32
|
||||
ecp_mod_p_generic_raw:MBEDTLS_ECP_DP_SECP224K1:"fffffffffffffffffffffffffffffffffffffffffffffffeffffe56d":"fffffffffffffffffffffffffffffffffffffffffffffffdffffcad800000000000000000000000000000000000000010000352802c26590":"00000000000000000000000000000000000000000000000000000001"
|
||||
|
||||
ecp_mod_p224k1_raw #12 - fffffffffffffffffffffffffffffffffffffffffffffffdffffcad800000000000000000000000000000000000000010000352802c26590 mod fffffffffffffffffffffffffffffffffffffffffffffffeffffe56d
|
||||
depends_on:MBEDTLS_ECP_DP_SECP224K1_ENABLED:MBEDTLS_HAVE_INT64
|
||||
ecp_mod_p_generic_raw:MBEDTLS_ECP_DP_SECP224K1:"00000000fffffffffffffffffffffffffffffffffffffffffffffffeffffe56d":"0000000000000000fffffffffffffffffffffffffffffffffffffffffffffffdffffcad800000000000000000000000000000000000000010000352802c26590":"0000000000000000000000000000000000000000000000000000000000000001"
|
||||
|
||||
ecp_mod_p224k1_raw #13 - 7ffff2b68161180fd8cd92e1a109be158a19a99b1809db80320000000000000000000000000000000000000000000000000bf04f49 mod fffffffffffffffffffffffffffffffffffffffffffffffeffffe56d
|
||||
depends_on:MBEDTLS_ECP_DP_SECP224K1_ENABLED:MBEDTLS_HAVE_INT32
|
||||
ecp_mod_p_generic_raw:MBEDTLS_ECP_DP_SECP224K1:"fffffffffffffffffffffffffffffffffffffffffffffffeffffe56d":"0000007ffff2b68161180fd8cd92e1a109be158a19a99b1809db80320000000000000000000000000000000000000000000000000bf04f49":"000000000000000000000000000000000000000000000080000d497f"
|
||||
|
||||
ecp_mod_p224k1_raw #14 - 7ffff2b68161180fd8cd92e1a109be158a19a99b1809db80320000000000000000000000000000000000000000000000000bf04f49 mod fffffffffffffffffffffffffffffffffffffffffffffffeffffe56d
|
||||
depends_on:MBEDTLS_ECP_DP_SECP224K1_ENABLED:MBEDTLS_HAVE_INT64
|
||||
ecp_mod_p_generic_raw:MBEDTLS_ECP_DP_SECP224K1:"00000000fffffffffffffffffffffffffffffffffffffffffffffffeffffe56d":"00000000000000000000007ffff2b68161180fd8cd92e1a109be158a19a99b1809db80320000000000000000000000000000000000000000000000000bf04f49":"00000000000000000000000000000000000000000000000000000080000d497f"
|
||||
|
||||
ecp_mod_p224k1_raw #15 - da94e3e8ab73738fcf1822ffbc6887782b491044d5e341245c6e433715ba2bdd177219d30e7a269fd95bafc8f2a4d27bdcf4bb99f4bea973 mod fffffffffffffffffffffffffffffffffffffffffffffffeffffe56d
|
||||
depends_on:MBEDTLS_ECP_DP_SECP224K1_ENABLED:MBEDTLS_HAVE_INT32
|
||||
ecp_mod_p_generic_raw:MBEDTLS_ECP_DP_SECP224K1:"fffffffffffffffffffffffffffffffffffffffffffffffeffffe56d":"da94e3e8ab73738fcf1822ffbc6887782b491044d5e341245c6e433715ba2bdd177219d30e7a269fd95bafc8f2a4d27bdcf4bb99f4bea973":"63d21f711392336f294cc013d26cbe740f2368e0fa14295edfe247e3"
|
||||
|
||||
ecp_mod_p224k1_raw #16 - da94e3e8ab73738fcf1822ffbc6887782b491044d5e341245c6e433715ba2bdd177219d30e7a269fd95bafc8f2a4d27bdcf4bb99f4bea973 mod fffffffffffffffffffffffffffffffffffffffffffffffeffffe56d
|
||||
depends_on:MBEDTLS_ECP_DP_SECP224K1_ENABLED:MBEDTLS_HAVE_INT64
|
||||
ecp_mod_p_generic_raw:MBEDTLS_ECP_DP_SECP224K1:"00000000fffffffffffffffffffffffffffffffffffffffffffffffeffffe56d":"0000000000000000da94e3e8ab73738fcf1822ffbc6887782b491044d5e341245c6e433715ba2bdd177219d30e7a269fd95bafc8f2a4d27bdcf4bb99f4bea973":"0000000063d21f711392336f294cc013d26cbe740f2368e0fa14295edfe247e3"
|
||||
|
||||
ecp_mod_p224k1_raw #17 - cdbd47d364be8049a372db8f6e405d93ffed9235288bc781ae66267594c9c9500925e4749b575bd13653f8dd9b1f282e4067c3584ee207f8 mod fffffffffffffffffffffffffffffffffffffffffffffffeffffe56d
|
||||
depends_on:MBEDTLS_ECP_DP_SECP224K1_ENABLED:MBEDTLS_HAVE_INT32
|
||||
ecp_mod_p_generic_raw:MBEDTLS_ECP_DP_SECP224K1:"fffffffffffffffffffffffffffffffffffffffffffffffeffffe56d":"cdbd47d364be8049a372db8f6e405d93ffed9235288bc781ae66267594c9c9500925e4749b575bd13653f8dd9b1f282e4067c3584ee207f8":"56840037df03e4e68ed85df40eb84f0cd9ef4a553712178532a54724"
|
||||
|
||||
ecp_mod_p224k1_raw #18 - cdbd47d364be8049a372db8f6e405d93ffed9235288bc781ae66267594c9c9500925e4749b575bd13653f8dd9b1f282e4067c3584ee207f8 mod fffffffffffffffffffffffffffffffffffffffffffffffeffffe56d
|
||||
depends_on:MBEDTLS_ECP_DP_SECP224K1_ENABLED:MBEDTLS_HAVE_INT64
|
||||
ecp_mod_p_generic_raw:MBEDTLS_ECP_DP_SECP224K1:"00000000fffffffffffffffffffffffffffffffffffffffffffffffeffffe56d":"0000000000000000cdbd47d364be8049a372db8f6e405d93ffed9235288bc781ae66267594c9c9500925e4749b575bd13653f8dd9b1f282e4067c3584ee207f8":"0000000056840037df03e4e68ed85df40eb84f0cd9ef4a553712178532a54724"
|
||||
|
||||
ecp_mod_p224k1_raw #19 - defc044a09325626e6b58de744ab6cce80877b6f71e1f6d2ef8acd128b4f2fc15f3f57ebf30b94fa82523e86feac7eb7dc38f519b91751da mod fffffffffffffffffffffffffffffffffffffffffffffffeffffe56d
|
||||
depends_on:MBEDTLS_ECP_DP_SECP224K1_ENABLED:MBEDTLS_HAVE_INT32
|
||||
ecp_mod_p_generic_raw:MBEDTLS_ECP_DP_SECP224K1:"fffffffffffffffffffffffffffffffffffffffffffffffeffffe56d":"defc044a09325626e6b58de744ab6cce80877b6f71e1f6d2ef8acd128b4f2fc15f3f57ebf30b94fa82523e86feac7eb7dc38f519b91751da":"37a7815aaa9c51982260fa8eda562d9800e3a81b02921c35042c0880"
|
||||
|
||||
ecp_mod_p224k1_raw #20 - defc044a09325626e6b58de744ab6cce80877b6f71e1f6d2ef8acd128b4f2fc15f3f57ebf30b94fa82523e86feac7eb7dc38f519b91751da mod fffffffffffffffffffffffffffffffffffffffffffffffeffffe56d
|
||||
depends_on:MBEDTLS_ECP_DP_SECP224K1_ENABLED:MBEDTLS_HAVE_INT64
|
||||
ecp_mod_p_generic_raw:MBEDTLS_ECP_DP_SECP224K1:"00000000fffffffffffffffffffffffffffffffffffffffffffffffeffffe56d":"0000000000000000defc044a09325626e6b58de744ab6cce80877b6f71e1f6d2ef8acd128b4f2fc15f3f57ebf30b94fa82523e86feac7eb7dc38f519b91751da":"0000000037a7815aaa9c51982260fa8eda562d9800e3a81b02921c35042c0880"
|
||||
|
||||
ecp_mod_p224k1_raw #21 - 2d6c797f8f7d9b782a1be9cd8697bbd0e2520e33e44c50556c71c4a66148a86fe8624fab5186ee32ee8d7ee9770348a05d300cb90706a045 mod fffffffffffffffffffffffffffffffffffffffffffffffeffffe56d
|
||||
depends_on:MBEDTLS_ECP_DP_SECP224K1_ENABLED:MBEDTLS_HAVE_INT32
|
||||
ecp_mod_p_generic_raw:MBEDTLS_ECP_DP_SECP224K1:"fffffffffffffffffffffffffffffffffffffffffffffffeffffe56d":"2d6c797f8f7d9b782a1be9cd8697bbd0e2520e33e44c50556c71c4a66148a86fe8624fab5186ee32ee8d7ee9770348a05d300cb90706a045":"0a66fcba3968b3bfdbe4cab383139d0ba5df05f1cf09225df471772c"
|
||||
|
||||
ecp_mod_p224k1_raw #22 - 2d6c797f8f7d9b782a1be9cd8697bbd0e2520e33e44c50556c71c4a66148a86fe8624fab5186ee32ee8d7ee9770348a05d300cb90706a045 mod fffffffffffffffffffffffffffffffffffffffffffffffeffffe56d
|
||||
depends_on:MBEDTLS_ECP_DP_SECP224K1_ENABLED:MBEDTLS_HAVE_INT64
|
||||
ecp_mod_p_generic_raw:MBEDTLS_ECP_DP_SECP224K1:"00000000fffffffffffffffffffffffffffffffffffffffffffffffeffffe56d":"00000000000000002d6c797f8f7d9b782a1be9cd8697bbd0e2520e33e44c50556c71c4a66148a86fe8624fab5186ee32ee8d7ee9770348a05d300cb90706a045":"000000000a66fcba3968b3bfdbe4cab383139d0ba5df05f1cf09225df471772c"
|
||||
|
||||
ecp_mod_p224k1_raw #23 - 8f54f8ceacaab39e83844b40ffa9b9f15c14bc4a829e07b0829a48d422fe99a22c70501e533c91352d3d854e061b90303b08c6e33c729578 mod fffffffffffffffffffffffffffffffffffffffffffffffeffffe56d
|
||||
depends_on:MBEDTLS_ECP_DP_SECP224K1_ENABLED:MBEDTLS_HAVE_INT32
|
||||
ecp_mod_p_generic_raw:MBEDTLS_ECP_DP_SECP224K1:"fffffffffffffffffffffffffffffffffffffffffffffffeffffe56d":"8f54f8ceacaab39e83844b40ffa9b9f15c14bc4a829e07b0829a48d422fe99a22c70501e533c91352d3d854e061b90303b08c6e33c729578":"beb929772c37d8c047821b7094aa8a8a83c147ee5a7e7de5d70b1eb1"
|
||||
|
||||
ecp_mod_p224k1_raw #24 - 8f54f8ceacaab39e83844b40ffa9b9f15c14bc4a829e07b0829a48d422fe99a22c70501e533c91352d3d854e061b90303b08c6e33c729578 mod fffffffffffffffffffffffffffffffffffffffffffffffeffffe56d
|
||||
depends_on:MBEDTLS_ECP_DP_SECP224K1_ENABLED:MBEDTLS_HAVE_INT64
|
||||
ecp_mod_p_generic_raw:MBEDTLS_ECP_DP_SECP224K1:"00000000fffffffffffffffffffffffffffffffffffffffffffffffeffffe56d":"00000000000000008f54f8ceacaab39e83844b40ffa9b9f15c14bc4a829e07b0829a48d422fe99a22c70501e533c91352d3d854e061b90303b08c6e33c729578":"00000000beb929772c37d8c047821b7094aa8a8a83c147ee5a7e7de5d70b1eb1"
|
||||
|
||||
ecp_mod_p224k1_raw #25 - 97eeab64ca2ce6bc5d3fd983c34c769fe89204e2e8168561867e5e15bc01bfce6a27e0dfcbf8754472154e76e4c11ab2fec3f6b32e8d4b8a mod fffffffffffffffffffffffffffffffffffffffffffffffeffffe56d
|
||||
depends_on:MBEDTLS_ECP_DP_SECP224K1_ENABLED:MBEDTLS_HAVE_INT32
|
||||
ecp_mod_p_generic_raw:MBEDTLS_ECP_DP_SECP224K1:"fffffffffffffffffffffffffffffffffffffffffffffffeffffe56d":"97eeab64ca2ce6bc5d3fd983c34c769fe89204e2e8168561867e5e15bc01bfce6a27e0dfcbf8754472154e76e4c11ab2fec3f6b32e8d4b8a":"01a34df36e9f5a0597063463439baecb2d2f79f2abab9e61bbc34b4a"
|
||||
|
||||
ecp_mod_p224k1_raw #26 - 97eeab64ca2ce6bc5d3fd983c34c769fe89204e2e8168561867e5e15bc01bfce6a27e0dfcbf8754472154e76e4c11ab2fec3f6b32e8d4b8a mod fffffffffffffffffffffffffffffffffffffffffffffffeffffe56d
|
||||
depends_on:MBEDTLS_ECP_DP_SECP224K1_ENABLED:MBEDTLS_HAVE_INT64
|
||||
ecp_mod_p_generic_raw:MBEDTLS_ECP_DP_SECP224K1:"00000000fffffffffffffffffffffffffffffffffffffffffffffffeffffe56d":"000000000000000097eeab64ca2ce6bc5d3fd983c34c769fe89204e2e8168561867e5e15bc01bfce6a27e0dfcbf8754472154e76e4c11ab2fec3f6b32e8d4b8a":"0000000001a34df36e9f5a0597063463439baecb2d2f79f2abab9e61bbc34b4a"
|
||||
|
||||
ecp_mod_p224k1_raw #27 - a7a83ee0761ebfd2bd143fa9b714210c665d7435c1066932f4767f26294365b2721dea3bf63f23d0dbe53fcafb2147df5ca495fa5a91c89b mod fffffffffffffffffffffffffffffffffffffffffffffffeffffe56d
|
||||
depends_on:MBEDTLS_ECP_DP_SECP224K1_ENABLED:MBEDTLS_HAVE_INT32
|
||||
ecp_mod_p_generic_raw:MBEDTLS_ECP_DP_SECP224K1:"fffffffffffffffffffffffffffffffffffffffffffffffeffffe56d":"a7a83ee0761ebfd2bd143fa9b714210c665d7435c1066932f4767f26294365b2721dea3bf63f23d0dbe53fcafb2147df5ca495fa5a91c89b":"fb610c682255b71c4e6b0fe96e2cf085019ee18b76210be52153f632"
|
||||
|
||||
ecp_mod_p224k1_raw #28 - a7a83ee0761ebfd2bd143fa9b714210c665d7435c1066932f4767f26294365b2721dea3bf63f23d0dbe53fcafb2147df5ca495fa5a91c89b mod fffffffffffffffffffffffffffffffffffffffffffffffeffffe56d
|
||||
depends_on:MBEDTLS_ECP_DP_SECP224K1_ENABLED:MBEDTLS_HAVE_INT64
|
||||
ecp_mod_p_generic_raw:MBEDTLS_ECP_DP_SECP224K1:"00000000fffffffffffffffffffffffffffffffffffffffffffffffeffffe56d":"0000000000000000a7a83ee0761ebfd2bd143fa9b714210c665d7435c1066932f4767f26294365b2721dea3bf63f23d0dbe53fcafb2147df5ca495fa5a91c89b":"00000000fb610c682255b71c4e6b0fe96e2cf085019ee18b76210be52153f632"
|
||||
|
||||
ecp_mod_p224k1_raw #29 - 74667bffe202849da9643a295a9ac6decbd4d3e2d4dec9ef83f0be4e80371eb97f81375eecc1cb6347733e847d718d733ff98ff387c56473 mod fffffffffffffffffffffffffffffffffffffffffffffffeffffe56d
|
||||
depends_on:MBEDTLS_ECP_DP_SECP224K1_ENABLED:MBEDTLS_HAVE_INT32
|
||||
ecp_mod_p_generic_raw:MBEDTLS_ECP_DP_SECP224K1:"fffffffffffffffffffffffffffffffffffffffffffffffeffffe56d":"74667bffe202849da9643a295a9ac6decbd4d3e2d4dec9ef83f0be4e80371eb97f81375eecc1cb6347733e847d718d733ff98ff387c56473":"a1aad43a31cf9b44b9d22b34d25ae509fb0b0c4214c12a5aff08dd4c"
|
||||
|
||||
ecp_mod_p224k1_raw #30 - 74667bffe202849da9643a295a9ac6decbd4d3e2d4dec9ef83f0be4e80371eb97f81375eecc1cb6347733e847d718d733ff98ff387c56473 mod fffffffffffffffffffffffffffffffffffffffffffffffeffffe56d
|
||||
depends_on:MBEDTLS_ECP_DP_SECP224K1_ENABLED:MBEDTLS_HAVE_INT64
|
||||
ecp_mod_p_generic_raw:MBEDTLS_ECP_DP_SECP224K1:"00000000fffffffffffffffffffffffffffffffffffffffffffffffeffffe56d":"000000000000000074667bffe202849da9643a295a9ac6decbd4d3e2d4dec9ef83f0be4e80371eb97f81375eecc1cb6347733e847d718d733ff98ff387c56473":"00000000a1aad43a31cf9b44b9d22b34d25ae509fb0b0c4214c12a5aff08dd4c"
|
||||
|
||||
ecp_mod_p224k1_raw #31 - eb9ac688b9d39cca91551e8259cc60b17604e4b4e73695c3e652c71a mod fffffffffffffffffffffffffffffffffffffffffffffffeffffe56d
|
||||
depends_on:MBEDTLS_ECP_DP_SECP224K1_ENABLED:MBEDTLS_HAVE_INT32
|
||||
ecp_mod_p_generic_raw:MBEDTLS_ECP_DP_SECP224K1:"fffffffffffffffffffffffffffffffffffffffffffffffeffffe56d":"00000000000000000000000000000000000000000000000000000000eb9ac688b9d39cca91551e8259cc60b17604e4b4e73695c3e652c71a":"eb9ac688b9d39cca91551e8259cc60b17604e4b4e73695c3e652c71a"
|
||||
|
||||
ecp_mod_p224k1_raw #32 - eb9ac688b9d39cca91551e8259cc60b17604e4b4e73695c3e652c71a mod fffffffffffffffffffffffffffffffffffffffffffffffeffffe56d
|
||||
depends_on:MBEDTLS_ECP_DP_SECP224K1_ENABLED:MBEDTLS_HAVE_INT64
|
||||
ecp_mod_p_generic_raw:MBEDTLS_ECP_DP_SECP224K1:"00000000fffffffffffffffffffffffffffffffffffffffffffffffeffffe56d":"000000000000000000000000000000000000000000000000000000000000000000000000eb9ac688b9d39cca91551e8259cc60b17604e4b4e73695c3e652c71a":"00000000eb9ac688b9d39cca91551e8259cc60b17604e4b4e73695c3e652c71a"
|
||||
|
||||
ecp_mod_p224k1_raw #33 - f0caeef038c89b38a8acb5137c9260dc74e088a9b9492f258ebdbfe3 mod fffffffffffffffffffffffffffffffffffffffffffffffeffffe56d
|
||||
depends_on:MBEDTLS_ECP_DP_SECP224K1_ENABLED:MBEDTLS_HAVE_INT32
|
||||
ecp_mod_p_generic_raw:MBEDTLS_ECP_DP_SECP224K1:"fffffffffffffffffffffffffffffffffffffffffffffffeffffe56d":"00000000000000000000000000000000000000000000000000000000f0caeef038c89b38a8acb5137c9260dc74e088a9b9492f258ebdbfe3":"f0caeef038c89b38a8acb5137c9260dc74e088a9b9492f258ebdbfe3"
|
||||
|
||||
ecp_mod_p224k1_raw #34 - f0caeef038c89b38a8acb5137c9260dc74e088a9b9492f258ebdbfe3 mod fffffffffffffffffffffffffffffffffffffffffffffffeffffe56d
|
||||
depends_on:MBEDTLS_ECP_DP_SECP224K1_ENABLED:MBEDTLS_HAVE_INT64
|
||||
ecp_mod_p_generic_raw:MBEDTLS_ECP_DP_SECP224K1:"00000000fffffffffffffffffffffffffffffffffffffffffffffffeffffe56d":"000000000000000000000000000000000000000000000000000000000000000000000000f0caeef038c89b38a8acb5137c9260dc74e088a9b9492f258ebdbfe3":"00000000f0caeef038c89b38a8acb5137c9260dc74e088a9b9492f258ebdbfe3"
|
||||
|
||||
ecp_mod_p224_raw #1 - 0 mod ffffffffffffffffffffffffffffffff000000000000000000000001
|
||||
depends_on:MBEDTLS_ECP_DP_SECP224R1_ENABLED:MBEDTLS_ECP_NIST_OPTIM:MBEDTLS_HAVE_INT32
|
||||
ecp_mod_p_generic_raw:MBEDTLS_ECP_DP_SECP224R1:"ffffffffffffffffffffffffffffffff000000000000000000000001":"0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000":"00000000000000000000000000000000000000000000000000000000"
|
||||
|
||||
ecp_mod_p224_raw #2 - 0 mod ffffffffffffffffffffffffffffffff000000000000000000000001
|
||||
depends_on:MBEDTLS_ECP_DP_SECP224R1_ENABLED:MBEDTLS_ECP_NIST_OPTIM:MBEDTLS_HAVE_INT64
|
||||
ecp_mod_p_generic_raw:MBEDTLS_ECP_DP_SECP224R1:"00000000ffffffffffffffffffffffffffffffff000000000000000000000001":"00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000":"0000000000000000000000000000000000000000000000000000000000000000"
|
||||
|
||||
ecp_mod_p224_raw #3 - 1 mod ffffffffffffffffffffffffffffffff000000000000000000000001
|
||||
depends_on:MBEDTLS_ECP_DP_SECP224R1_ENABLED:MBEDTLS_ECP_NIST_OPTIM:MBEDTLS_HAVE_INT32
|
||||
ecp_mod_p_generic_raw:MBEDTLS_ECP_DP_SECP224R1:"ffffffffffffffffffffffffffffffff000000000000000000000001":"0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001":"00000000000000000000000000000000000000000000000000000001"
|
||||
|
||||
ecp_mod_p224_raw #4 - 1 mod ffffffffffffffffffffffffffffffff000000000000000000000001
|
||||
depends_on:MBEDTLS_ECP_DP_SECP224R1_ENABLED:MBEDTLS_ECP_NIST_OPTIM:MBEDTLS_HAVE_INT64
|
||||
ecp_mod_p_generic_raw:MBEDTLS_ECP_DP_SECP224R1:"00000000ffffffffffffffffffffffffffffffff000000000000000000000001":"00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001":"0000000000000000000000000000000000000000000000000000000000000001"
|
||||
|
||||
ecp_mod_p224_raw #5 - ffffffffffffffffffffffffffffffff000000000000000000000000 mod ffffffffffffffffffffffffffffffff000000000000000000000001
|
||||
depends_on:MBEDTLS_ECP_DP_SECP224R1_ENABLED:MBEDTLS_ECP_NIST_OPTIM:MBEDTLS_HAVE_INT32
|
||||
ecp_mod_p_generic_raw:MBEDTLS_ECP_DP_SECP224R1:"ffffffffffffffffffffffffffffffff000000000000000000000001":"00000000000000000000000000000000000000000000000000000000ffffffffffffffffffffffffffffffff000000000000000000000000":"ffffffffffffffffffffffffffffffff000000000000000000000000"
|
||||
|
||||
ecp_mod_p224_raw #6 - ffffffffffffffffffffffffffffffff000000000000000000000000 mod ffffffffffffffffffffffffffffffff000000000000000000000001
|
||||
depends_on:MBEDTLS_ECP_DP_SECP224R1_ENABLED:MBEDTLS_ECP_NIST_OPTIM:MBEDTLS_HAVE_INT64
|
||||
ecp_mod_p_generic_raw:MBEDTLS_ECP_DP_SECP224R1:"00000000ffffffffffffffffffffffffffffffff000000000000000000000001":"000000000000000000000000000000000000000000000000000000000000000000000000ffffffffffffffffffffffffffffffff000000000000000000000000":"00000000ffffffffffffffffffffffffffffffff000000000000000000000000"
|
||||
|
||||
ecp_mod_p224_raw #7 - ffffffffffffffffffffffffffffffff000000000000000000000002 mod ffffffffffffffffffffffffffffffff000000000000000000000001
|
||||
depends_on:MBEDTLS_ECP_DP_SECP224R1_ENABLED:MBEDTLS_ECP_NIST_OPTIM:MBEDTLS_HAVE_INT32
|
||||
ecp_mod_p_generic_raw:MBEDTLS_ECP_DP_SECP224R1:"ffffffffffffffffffffffffffffffff000000000000000000000001":"00000000000000000000000000000000000000000000000000000000ffffffffffffffffffffffffffffffff000000000000000000000002":"00000000000000000000000000000000000000000000000000000001"
|
||||
|
||||
ecp_mod_p224_raw #8 - ffffffffffffffffffffffffffffffff000000000000000000000002 mod ffffffffffffffffffffffffffffffff000000000000000000000001
|
||||
depends_on:MBEDTLS_ECP_DP_SECP224R1_ENABLED:MBEDTLS_ECP_NIST_OPTIM:MBEDTLS_HAVE_INT64
|
||||
ecp_mod_p_generic_raw:MBEDTLS_ECP_DP_SECP224R1:"00000000ffffffffffffffffffffffffffffffff000000000000000000000001":"000000000000000000000000000000000000000000000000000000000000000000000000ffffffffffffffffffffffffffffffff000000000000000000000002":"0000000000000000000000000000000000000000000000000000000000000001"
|
||||
|
||||
ecp_mod_p224_raw #9 - ffffffffffffffffffffffffffffffffffffffffffffffffffffffff mod ffffffffffffffffffffffffffffffff000000000000000000000001
|
||||
depends_on:MBEDTLS_ECP_DP_SECP224R1_ENABLED:MBEDTLS_ECP_NIST_OPTIM:MBEDTLS_HAVE_INT32
|
||||
ecp_mod_p_generic_raw:MBEDTLS_ECP_DP_SECP224R1:"ffffffffffffffffffffffffffffffff000000000000000000000001":"00000000000000000000000000000000000000000000000000000000ffffffffffffffffffffffffffffffffffffffffffffffffffffffff":"00000000000000000000000000000000fffffffffffffffffffffffe"
|
||||
|
||||
ecp_mod_p224_raw #10 - ffffffffffffffffffffffffffffffffffffffffffffffffffffffff mod ffffffffffffffffffffffffffffffff000000000000000000000001
|
||||
depends_on:MBEDTLS_ECP_DP_SECP224R1_ENABLED:MBEDTLS_ECP_NIST_OPTIM:MBEDTLS_HAVE_INT64
|
||||
ecp_mod_p_generic_raw:MBEDTLS_ECP_DP_SECP224R1:"00000000ffffffffffffffffffffffffffffffff000000000000000000000001":"000000000000000000000000000000000000000000000000000000000000000000000000ffffffffffffffffffffffffffffffffffffffffffffffffffffffff":"0000000000000000000000000000000000000000fffffffffffffffffffffffe"
|
||||
|
||||
ecp_mod_p224_raw #11 - fffffffffffffffffffffffffffffffe00000000000000000000000000000001000000000000000000000000000000000000000000000000 mod ffffffffffffffffffffffffffffffff000000000000000000000001
|
||||
depends_on:MBEDTLS_ECP_DP_SECP224R1_ENABLED:MBEDTLS_ECP_NIST_OPTIM:MBEDTLS_HAVE_INT32
|
||||
ecp_mod_p_generic_raw:MBEDTLS_ECP_DP_SECP224R1:"ffffffffffffffffffffffffffffffff000000000000000000000001":"fffffffffffffffffffffffffffffffe00000000000000000000000000000001000000000000000000000000000000000000000000000000":"00000000000000000000000000000000000000000000000000000001"
|
||||
|
||||
ecp_mod_p224_raw #12 - fffffffffffffffffffffffffffffffe00000000000000000000000000000001000000000000000000000000000000000000000000000000 mod ffffffffffffffffffffffffffffffff000000000000000000000001
|
||||
depends_on:MBEDTLS_ECP_DP_SECP224R1_ENABLED:MBEDTLS_ECP_NIST_OPTIM:MBEDTLS_HAVE_INT64
|
||||
ecp_mod_p_generic_raw:MBEDTLS_ECP_DP_SECP224R1:"00000000ffffffffffffffffffffffffffffffff000000000000000000000001":"0000000000000000fffffffffffffffffffffffffffffffe00000000000000000000000000000001000000000000000000000000000000000000000000000000":"0000000000000000000000000000000000000000000000000000000000000001"
|
||||
|
||||
ecp_mod_p224_raw #13 - 10000000070000000002000001000ffffffffffff9fffffffffe00000efff000070000000002000001003 mod ffffffffffffffffffffffffffffffff000000000000000000000001
|
||||
depends_on:MBEDTLS_ECP_DP_SECP224R1_ENABLED:MBEDTLS_ECP_NIST_OPTIM:MBEDTLS_HAVE_INT32
|
||||
ecp_mod_p_generic_raw:MBEDTLS_ECP_DP_SECP224R1:"ffffffffffffffffffffffffffffffff000000000000000000000001":"00000000000000000000000000010000000070000000002000001000ffffffffffff9fffffffffe00000efff000070000000002000001003":"00010000000010000000000000000000000000000000000000000002"
|
||||
|
||||
ecp_mod_p224_raw #14 - 10000000070000000002000001000ffffffffffff9fffffffffe00000efff000070000000002000001003 mod ffffffffffffffffffffffffffffffff000000000000000000000001
|
||||
depends_on:MBEDTLS_ECP_DP_SECP224R1_ENABLED:MBEDTLS_ECP_NIST_OPTIM:MBEDTLS_HAVE_INT64
|
||||
ecp_mod_p_generic_raw:MBEDTLS_ECP_DP_SECP224R1:"00000000ffffffffffffffffffffffffffffffff000000000000000000000001":"000000000000000000000000000000000000000000010000000070000000002000001000ffffffffffff9fffffffffe00000efff000070000000002000001003":"0000000000010000000010000000000000000000000000000000000000000002"
|
||||
|
||||
ecp_mod_p224_raw #15 - 100000000000000000000000000000000000000000000000000000000000dc0000000000000000001000000010000000100000003 mod ffffffffffffffffffffffffffffffff000000000000000000000001
|
||||
depends_on:MBEDTLS_ECP_DP_SECP224R1_ENABLED:MBEDTLS_ECP_NIST_OPTIM:MBEDTLS_HAVE_INT32
|
||||
ecp_mod_p_generic_raw:MBEDTLS_ECP_DP_SECP224R1:"ffffffffffffffffffffffffffffffff000000000000000000000001":"0000000100000000000000000000000000000000000000000000000000000000000dc0000000000000000001000000010000000100000003":"ffffffff000dc0010000000000000000000000000000000100000004"
|
||||
|
||||
ecp_mod_p224_raw #16 - 100000000000000000000000000000000000000000000000000000000000dc0000000000000000001000000010000000100000003 mod ffffffffffffffffffffffffffffffff000000000000000000000001
|
||||
depends_on:MBEDTLS_ECP_DP_SECP224R1_ENABLED:MBEDTLS_ECP_NIST_OPTIM:MBEDTLS_HAVE_INT64
|
||||
ecp_mod_p_generic_raw:MBEDTLS_ECP_DP_SECP224R1:"00000000ffffffffffffffffffffffffffffffff000000000000000000000001":"00000000000000000000000100000000000000000000000000000000000000000000000000000000000dc0000000000000000001000000010000000100000003":"00000000ffffffff000dc0010000000000000000000000000000000100000004"
|
||||
|
||||
ecp_mod_p224_raw #17 - da94e3e8ab73738fcf1822ffbc6887782b491044d5e341245c6e433715ba2bdd177219d30e7a269fd95bafc8f2a4d27bdcf4bb99f4bea973 mod ffffffffffffffffffffffffffffffff000000000000000000000001
|
||||
depends_on:MBEDTLS_ECP_DP_SECP224R1_ENABLED:MBEDTLS_ECP_NIST_OPTIM:MBEDTLS_HAVE_INT32
|
||||
ecp_mod_p_generic_raw:MBEDTLS_ECP_DP_SECP224R1:"ffffffffffffffffffffffffffffffff000000000000000000000001":"da94e3e8ab73738fcf1822ffbc6887782b491044d5e341245c6e433715ba2bdd177219d30e7a269fd95bafc8f2a4d27bdcf4bb99f4bea973":"f78dcf6d71dc9a70c0b8b85448798e84ecc6de4e5b9e06e5c938433e"
|
||||
|
||||
ecp_mod_p224_raw #18 - da94e3e8ab73738fcf1822ffbc6887782b491044d5e341245c6e433715ba2bdd177219d30e7a269fd95bafc8f2a4d27bdcf4bb99f4bea973 mod ffffffffffffffffffffffffffffffff000000000000000000000001
|
||||
depends_on:MBEDTLS_ECP_DP_SECP224R1_ENABLED:MBEDTLS_ECP_NIST_OPTIM:MBEDTLS_HAVE_INT64
|
||||
ecp_mod_p_generic_raw:MBEDTLS_ECP_DP_SECP224R1:"00000000ffffffffffffffffffffffffffffffff000000000000000000000001":"0000000000000000da94e3e8ab73738fcf1822ffbc6887782b491044d5e341245c6e433715ba2bdd177219d30e7a269fd95bafc8f2a4d27bdcf4bb99f4bea973":"00000000f78dcf6d71dc9a70c0b8b85448798e84ecc6de4e5b9e06e5c938433e"
|
||||
|
||||
ecp_mod_p224_raw #19 - cdbd47d364be8049a372db8f6e405d93ffed9235288bc781ae66267594c9c9500925e4749b575bd13653f8dd9b1f282e4067c3584ee207f8 mod ffffffffffffffffffffffffffffffff000000000000000000000001
|
||||
depends_on:MBEDTLS_ECP_DP_SECP224R1_ENABLED:MBEDTLS_ECP_NIST_OPTIM:MBEDTLS_HAVE_INT32
|
||||
ecp_mod_p_generic_raw:MBEDTLS_ECP_DP_SECP224R1:"ffffffffffffffffffffffffffffffff000000000000000000000001":"cdbd47d364be8049a372db8f6e405d93ffed9235288bc781ae66267594c9c9500925e4749b575bd13653f8dd9b1f282e4067c3584ee207f8":"354cdf1172123e33852ec80d19ec9d4ccd744e25b31d7b8cfd0905f4"
|
||||
|
||||
ecp_mod_p224_raw #20 - cdbd47d364be8049a372db8f6e405d93ffed9235288bc781ae66267594c9c9500925e4749b575bd13653f8dd9b1f282e4067c3584ee207f8 mod ffffffffffffffffffffffffffffffff000000000000000000000001
|
||||
depends_on:MBEDTLS_ECP_DP_SECP224R1_ENABLED:MBEDTLS_ECP_NIST_OPTIM:MBEDTLS_HAVE_INT64
|
||||
ecp_mod_p_generic_raw:MBEDTLS_ECP_DP_SECP224R1:"00000000ffffffffffffffffffffffffffffffff000000000000000000000001":"0000000000000000cdbd47d364be8049a372db8f6e405d93ffed9235288bc781ae66267594c9c9500925e4749b575bd13653f8dd9b1f282e4067c3584ee207f8":"00000000354cdf1172123e33852ec80d19ec9d4ccd744e25b31d7b8cfd0905f4"
|
||||
|
||||
ecp_mod_p224_raw #21 - defc044a09325626e6b58de744ab6cce80877b6f71e1f6d2ef8acd128b4f2fc15f3f57ebf30b94fa82523e86feac7eb7dc38f519b91751da mod ffffffffffffffffffffffffffffffff000000000000000000000001
|
||||
depends_on:MBEDTLS_ECP_DP_SECP224R1_ENABLED:MBEDTLS_ECP_NIST_OPTIM:MBEDTLS_HAVE_INT32
|
||||
ecp_mod_p_generic_raw:MBEDTLS_ECP_DP_SECP224R1:"ffffffffffffffffffffffffffffffff000000000000000000000001":"defc044a09325626e6b58de744ab6cce80877b6f71e1f6d2ef8acd128b4f2fc15f3f57ebf30b94fa82523e86feac7eb7dc38f519b91751da":"f0fe9846b590817e876a540d13e72caf9f28fefe6124a81fe2d6f6e2"
|
||||
|
||||
ecp_mod_p224_raw #22 - defc044a09325626e6b58de744ab6cce80877b6f71e1f6d2ef8acd128b4f2fc15f3f57ebf30b94fa82523e86feac7eb7dc38f519b91751da mod ffffffffffffffffffffffffffffffff000000000000000000000001
|
||||
depends_on:MBEDTLS_ECP_DP_SECP224R1_ENABLED:MBEDTLS_ECP_NIST_OPTIM:MBEDTLS_HAVE_INT64
|
||||
ecp_mod_p_generic_raw:MBEDTLS_ECP_DP_SECP224R1:"00000000ffffffffffffffffffffffffffffffff000000000000000000000001":"0000000000000000defc044a09325626e6b58de744ab6cce80877b6f71e1f6d2ef8acd128b4f2fc15f3f57ebf30b94fa82523e86feac7eb7dc38f519b91751da":"00000000f0fe9846b590817e876a540d13e72caf9f28fefe6124a81fe2d6f6e2"
|
||||
|
||||
ecp_mod_p224_raw #23 - 2d6c797f8f7d9b782a1be9cd8697bbd0e2520e33e44c50556c71c4a66148a86fe8624fab5186ee32ee8d7ee9770348a05d300cb90706a045 mod ffffffffffffffffffffffffffffffff000000000000000000000001
|
||||
depends_on:MBEDTLS_ECP_DP_SECP224R1_ENABLED:MBEDTLS_ECP_NIST_OPTIM:MBEDTLS_HAVE_INT32
|
||||
ecp_mod_p_generic_raw:MBEDTLS_ECP_DP_SECP224R1:"ffffffffffffffffffffffffffffffff000000000000000000000001":"2d6c797f8f7d9b782a1be9cd8697bbd0e2520e33e44c50556c71c4a66148a86fe8624fab5186ee32ee8d7ee9770348a05d300cb90706a045":"ba73eac168a33be69b34f032fe83718b6744c0ece96620eb7078f1d2"
|
||||
|
||||
ecp_mod_p224_raw #24 - 2d6c797f8f7d9b782a1be9cd8697bbd0e2520e33e44c50556c71c4a66148a86fe8624fab5186ee32ee8d7ee9770348a05d300cb90706a045 mod ffffffffffffffffffffffffffffffff000000000000000000000001
|
||||
depends_on:MBEDTLS_ECP_DP_SECP224R1_ENABLED:MBEDTLS_ECP_NIST_OPTIM:MBEDTLS_HAVE_INT64
|
||||
ecp_mod_p_generic_raw:MBEDTLS_ECP_DP_SECP224R1:"00000000ffffffffffffffffffffffffffffffff000000000000000000000001":"00000000000000002d6c797f8f7d9b782a1be9cd8697bbd0e2520e33e44c50556c71c4a66148a86fe8624fab5186ee32ee8d7ee9770348a05d300cb90706a045":"00000000ba73eac168a33be69b34f032fe83718b6744c0ece96620eb7078f1d2"
|
||||
|
||||
ecp_mod_p224_raw #25 - 8f54f8ceacaab39e83844b40ffa9b9f15c14bc4a829e07b0829a48d422fe99a22c70501e533c91352d3d854e061b90303b08c6e33c729578 mod ffffffffffffffffffffffffffffffff000000000000000000000001
|
||||
depends_on:MBEDTLS_ECP_DP_SECP224R1_ENABLED:MBEDTLS_ECP_NIST_OPTIM:MBEDTLS_HAVE_INT32
|
||||
ecp_mod_p_generic_raw:MBEDTLS_ECP_DP_SECP224R1:"ffffffffffffffffffffffffffffffff000000000000000000000001":"8f54f8ceacaab39e83844b40ffa9b9f15c14bc4a829e07b0829a48d422fe99a22c70501e533c91352d3d854e061b90303b08c6e33c729578":"93535ac56b2f5198ff01014333b25f701ab1db170bc00b9436540164"
|
||||
|
||||
ecp_mod_p224_raw #26 - 8f54f8ceacaab39e83844b40ffa9b9f15c14bc4a829e07b0829a48d422fe99a22c70501e533c91352d3d854e061b90303b08c6e33c729578 mod ffffffffffffffffffffffffffffffff000000000000000000000001
|
||||
depends_on:MBEDTLS_ECP_DP_SECP224R1_ENABLED:MBEDTLS_ECP_NIST_OPTIM:MBEDTLS_HAVE_INT64
|
||||
ecp_mod_p_generic_raw:MBEDTLS_ECP_DP_SECP224R1:"00000000ffffffffffffffffffffffffffffffff000000000000000000000001":"00000000000000008f54f8ceacaab39e83844b40ffa9b9f15c14bc4a829e07b0829a48d422fe99a22c70501e533c91352d3d854e061b90303b08c6e33c729578":"0000000093535ac56b2f5198ff01014333b25f701ab1db170bc00b9436540164"
|
||||
|
||||
ecp_mod_p224_raw #27 - 97eeab64ca2ce6bc5d3fd983c34c769fe89204e2e8168561867e5e15bc01bfce6a27e0dfcbf8754472154e76e4c11ab2fec3f6b32e8d4b8a mod ffffffffffffffffffffffffffffffff000000000000000000000001
|
||||
depends_on:MBEDTLS_ECP_DP_SECP224R1_ENABLED:MBEDTLS_ECP_NIST_OPTIM:MBEDTLS_HAVE_INT32
|
||||
ecp_mod_p_generic_raw:MBEDTLS_ECP_DP_SECP224R1:"ffffffffffffffffffffffffffffffff000000000000000000000001":"97eeab64ca2ce6bc5d3fd983c34c769fe89204e2e8168561867e5e15bc01bfce6a27e0dfcbf8754472154e76e4c11ab2fec3f6b32e8d4b8a":"e75f8b0a207baa6b20fc07de92870f6e64406a6b4c808a954acf13f2"
|
||||
|
||||
ecp_mod_p224_raw #28 - 97eeab64ca2ce6bc5d3fd983c34c769fe89204e2e8168561867e5e15bc01bfce6a27e0dfcbf8754472154e76e4c11ab2fec3f6b32e8d4b8a mod ffffffffffffffffffffffffffffffff000000000000000000000001
|
||||
depends_on:MBEDTLS_ECP_DP_SECP224R1_ENABLED:MBEDTLS_ECP_NIST_OPTIM:MBEDTLS_HAVE_INT64
|
||||
ecp_mod_p_generic_raw:MBEDTLS_ECP_DP_SECP224R1:"00000000ffffffffffffffffffffffffffffffff000000000000000000000001":"000000000000000097eeab64ca2ce6bc5d3fd983c34c769fe89204e2e8168561867e5e15bc01bfce6a27e0dfcbf8754472154e76e4c11ab2fec3f6b32e8d4b8a":"00000000e75f8b0a207baa6b20fc07de92870f6e64406a6b4c808a954acf13f2"
|
||||
|
||||
ecp_mod_p224_raw #29 - a7a83ee0761ebfd2bd143fa9b714210c665d7435c1066932f4767f26294365b2721dea3bf63f23d0dbe53fcafb2147df5ca495fa5a91c89b mod ffffffffffffffffffffffffffffffff000000000000000000000001
|
||||
depends_on:MBEDTLS_ECP_DP_SECP224R1_ENABLED:MBEDTLS_ECP_NIST_OPTIM:MBEDTLS_HAVE_INT32
|
||||
ecp_mod_p_generic_raw:MBEDTLS_ECP_DP_SECP224R1:"ffffffffffffffffffffffffffffffff000000000000000000000001":"a7a83ee0761ebfd2bd143fa9b714210c665d7435c1066932f4767f26294365b2721dea3bf63f23d0dbe53fcafb2147df5ca495fa5a91c89b":"38af47df0a04dd7f70500d2cd65bdd8ced1b94c9257f6cf4a90709cc"
|
||||
|
||||
ecp_mod_p224_raw #30 - a7a83ee0761ebfd2bd143fa9b714210c665d7435c1066932f4767f26294365b2721dea3bf63f23d0dbe53fcafb2147df5ca495fa5a91c89b mod ffffffffffffffffffffffffffffffff000000000000000000000001
|
||||
depends_on:MBEDTLS_ECP_DP_SECP224R1_ENABLED:MBEDTLS_ECP_NIST_OPTIM:MBEDTLS_HAVE_INT64
|
||||
ecp_mod_p_generic_raw:MBEDTLS_ECP_DP_SECP224R1:"00000000ffffffffffffffffffffffffffffffff000000000000000000000001":"0000000000000000a7a83ee0761ebfd2bd143fa9b714210c665d7435c1066932f4767f26294365b2721dea3bf63f23d0dbe53fcafb2147df5ca495fa5a91c89b":"0000000038af47df0a04dd7f70500d2cd65bdd8ced1b94c9257f6cf4a90709cc"
|
||||
|
||||
ecp_mod_p224_raw #31 - 74667bffe202849da9643a295a9ac6decbd4d3e2d4dec9ef83f0be4e80371eb97f81375eecc1cb6347733e847d718d733ff98ff387c56473 mod ffffffffffffffffffffffffffffffff000000000000000000000001
|
||||
depends_on:MBEDTLS_ECP_DP_SECP224R1_ENABLED:MBEDTLS_ECP_NIST_OPTIM:MBEDTLS_HAVE_INT32
|
||||
ecp_mod_p_generic_raw:MBEDTLS_ECP_DP_SECP224R1:"ffffffffffffffffffffffffffffffff000000000000000000000001":"74667bffe202849da9643a295a9ac6decbd4d3e2d4dec9ef83f0be4e80371eb97f81375eecc1cb6347733e847d718d733ff98ff387c56473":"666b6998ddba02a3fa3edfc71a2d701c3d363d90891841665a706bfc"
|
||||
|
||||
ecp_mod_p224_raw #32 - 74667bffe202849da9643a295a9ac6decbd4d3e2d4dec9ef83f0be4e80371eb97f81375eecc1cb6347733e847d718d733ff98ff387c56473 mod ffffffffffffffffffffffffffffffff000000000000000000000001
|
||||
depends_on:MBEDTLS_ECP_DP_SECP224R1_ENABLED:MBEDTLS_ECP_NIST_OPTIM:MBEDTLS_HAVE_INT64
|
||||
ecp_mod_p_generic_raw:MBEDTLS_ECP_DP_SECP224R1:"00000000ffffffffffffffffffffffffffffffff000000000000000000000001":"000000000000000074667bffe202849da9643a295a9ac6decbd4d3e2d4dec9ef83f0be4e80371eb97f81375eecc1cb6347733e847d718d733ff98ff387c56473":"00000000666b6998ddba02a3fa3edfc71a2d701c3d363d90891841665a706bfc"
|
||||
|
||||
ecp_mod_p224_raw #33 - eb9ac688b9d39cca91551e8259cc60b17604e4b4e73695c3e652c71a mod ffffffffffffffffffffffffffffffff000000000000000000000001
|
||||
depends_on:MBEDTLS_ECP_DP_SECP224R1_ENABLED:MBEDTLS_ECP_NIST_OPTIM:MBEDTLS_HAVE_INT32
|
||||
ecp_mod_p_generic_raw:MBEDTLS_ECP_DP_SECP224R1:"ffffffffffffffffffffffffffffffff000000000000000000000001":"00000000000000000000000000000000000000000000000000000000eb9ac688b9d39cca91551e8259cc60b17604e4b4e73695c3e652c71a":"eb9ac688b9d39cca91551e8259cc60b17604e4b4e73695c3e652c71a"
|
||||
|
||||
ecp_mod_p224_raw #34 - eb9ac688b9d39cca91551e8259cc60b17604e4b4e73695c3e652c71a mod ffffffffffffffffffffffffffffffff000000000000000000000001
|
||||
depends_on:MBEDTLS_ECP_DP_SECP224R1_ENABLED:MBEDTLS_ECP_NIST_OPTIM:MBEDTLS_HAVE_INT64
|
||||
ecp_mod_p_generic_raw:MBEDTLS_ECP_DP_SECP224R1:"00000000ffffffffffffffffffffffffffffffff000000000000000000000001":"000000000000000000000000000000000000000000000000000000000000000000000000eb9ac688b9d39cca91551e8259cc60b17604e4b4e73695c3e652c71a":"00000000eb9ac688b9d39cca91551e8259cc60b17604e4b4e73695c3e652c71a"
|
||||
|
||||
ecp_mod_p224_raw #35 - f0caeef038c89b38a8acb5137c9260dc74e088a9b9492f258ebdbfe3 mod ffffffffffffffffffffffffffffffff000000000000000000000001
|
||||
depends_on:MBEDTLS_ECP_DP_SECP224R1_ENABLED:MBEDTLS_ECP_NIST_OPTIM:MBEDTLS_HAVE_INT32
|
||||
ecp_mod_p_generic_raw:MBEDTLS_ECP_DP_SECP224R1:"ffffffffffffffffffffffffffffffff000000000000000000000001":"00000000000000000000000000000000000000000000000000000000f0caeef038c89b38a8acb5137c9260dc74e088a9b9492f258ebdbfe3":"f0caeef038c89b38a8acb5137c9260dc74e088a9b9492f258ebdbfe3"
|
||||
|
||||
ecp_mod_p224_raw #36 - f0caeef038c89b38a8acb5137c9260dc74e088a9b9492f258ebdbfe3 mod ffffffffffffffffffffffffffffffff000000000000000000000001
|
||||
depends_on:MBEDTLS_ECP_DP_SECP224R1_ENABLED:MBEDTLS_ECP_NIST_OPTIM:MBEDTLS_HAVE_INT64
|
||||
ecp_mod_p_generic_raw:MBEDTLS_ECP_DP_SECP224R1:"00000000ffffffffffffffffffffffffffffffff000000000000000000000001":"000000000000000000000000000000000000000000000000000000000000000000000000f0caeef038c89b38a8acb5137c9260dc74e088a9b9492f258ebdbfe3":"00000000f0caeef038c89b38a8acb5137c9260dc74e088a9b9492f258ebdbfe3"
|
||||
|
||||
mbedtls_ecp_mod_p255_raw #1 - 0 mod 7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffed
|
||||
depends_on:MBEDTLS_ECP_DP_CURVE25519_ENABLED
|
||||
ecp_mod_p_generic_raw:MBEDTLS_ECP_DP_CURVE25519:"7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffed":"00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000":"0000000000000000000000000000000000000000000000000000000000000000"
|
||||
|
||||
mbedtls_ecp_mod_p255_raw #2 - 1 mod 7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffed
|
||||
depends_on:MBEDTLS_ECP_DP_CURVE25519_ENABLED
|
||||
ecp_mod_p_generic_raw:MBEDTLS_ECP_DP_CURVE25519:"7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffed":"00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001":"0000000000000000000000000000000000000000000000000000000000000001"
|
||||
|
||||
mbedtls_ecp_mod_p255_raw #3 - 7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffec mod 7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffed
|
||||
depends_on:MBEDTLS_ECP_DP_CURVE25519_ENABLED
|
||||
ecp_mod_p_generic_raw:MBEDTLS_ECP_DP_CURVE25519:"7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffed":"00000000000000000000000000000000000000000000000000000000000000007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffec":"7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffec"
|
||||
|
||||
mbedtls_ecp_mod_p255_raw #4 - 7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffee mod 7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffed
|
||||
depends_on:MBEDTLS_ECP_DP_CURVE25519_ENABLED
|
||||
ecp_mod_p_generic_raw:MBEDTLS_ECP_DP_CURVE25519:"7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffed":"00000000000000000000000000000000000000000000000000000000000000007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffee":"0000000000000000000000000000000000000000000000000000000000000001"
|
||||
|
||||
mbedtls_ecp_mod_p255_raw #5 - 7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff mod 7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffed
|
||||
depends_on:MBEDTLS_ECP_DP_CURVE25519_ENABLED
|
||||
ecp_mod_p_generic_raw:MBEDTLS_ECP_DP_CURVE25519:"7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffed":"00000000000000000000000000000000000000000000000000000000000000007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff":"0000000000000000000000000000000000000000000000000000000000000012"
|
||||
|
||||
mbedtls_ecp_mod_p255_raw #6 - 3fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffec0000000000000000000000000000000000000000000000000000000000000190 mod 7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffed
|
||||
depends_on:MBEDTLS_ECP_DP_CURVE25519_ENABLED
|
||||
ecp_mod_p_generic_raw:MBEDTLS_ECP_DP_CURVE25519:"7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffed":"3fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffec0000000000000000000000000000000000000000000000000000000000000190":"0000000000000000000000000000000000000000000000000000000000000001"
|
||||
|
||||
mbedtls_ecp_mod_p255_raw #7 - 1019f0d64ee207f8da94e3e8ab73738fcf1822ffbc6887782b491044d5e341245c6e433715ba2bdd177219d30e7a269fd95bafc8f2a4d27bdcf4bb99f4bea973 mod 7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffed
|
||||
depends_on:MBEDTLS_ECP_DP_CURVE25519_ENABLED
|
||||
ecp_mod_p_generic_raw:MBEDTLS_ECP_DP_CURVE25519:"7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffed":"1019f0d64ee207f8da94e3e8ab73738fcf1822ffbc6887782b491044d5e341245c6e433715ba2bdd177219d30e7a269fd95bafc8f2a4d27bdcf4bb99f4bea973":"40480306cb475acd898bee5c819d4df896f0e1beea28ee5249cd25d1b47a552a"
|
||||
|
||||
mbedtls_ecp_mod_p255_raw #8 - 20948fa1feac7eb7dc38f519b91751dacdbd47d364be8049a372db8f6e405d93ffed9235288bc781ae66267594c9c9500925e4749b575bd13653f8dd9b1f282e mod 7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffed
|
||||
depends_on:MBEDTLS_ECP_DP_CURVE25519_ENABLED
|
||||
ecp_mod_p_generic_raw:MBEDTLS_ECP_DP_CURVE25519:"7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffed":"20948fa1feac7eb7dc38f519b91751dacdbd47d364be8049a372db8f6e405d93ffed9235288bc781ae66267594c9c9500925e4749b575bd13653f8dd9b1f282e":"55fae440f62696cc5eda88470e3fefca933e8dd58f9e66bf79609027f8ad0cd1"
|
||||
|
||||
mbedtls_ecp_mod_p255_raw #9 - 3a1893ea5186ee32ee8d7ee9770348a05d300cb90706a045defc044a09325626e6b58de744ab6cce80877b6f71e1f6d2ef8acd128b4f2fc15f3f57ebf30b94fa mod 7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffed
|
||||
depends_on:MBEDTLS_ECP_DP_CURVE25519_ENABLED
|
||||
ecp_mod_p_generic_raw:MBEDTLS_ECP_DP_CURVE25519:"7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffed":"3a1893ea5186ee32ee8d7ee9770348a05d300cb90706a045defc044a09325626e6b58de744ab6cce80877b6f71e1f6d2ef8acd128b4f2fc15f3f57ebf30b94fa":"065b82af5eb2c85de98852171c5ebea0c4acb089964afa2078a7fae950846007"
|
||||
|
||||
mbedtls_ecp_mod_p255_raw #10 - 20a6923522fe99a22c70501e533c91352d3d854e061b90303b08c6e33c7295782d6c797f8f7d9b782a1be9cd8697bbd0e2520e33e44c50556c71c4a66148a86f mod 7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffed
|
||||
depends_on:MBEDTLS_ECP_DP_CURVE25519_ENABLED
|
||||
ecp_mod_p_generic_raw:MBEDTLS_ECP_DP_CURVE25519:"7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffed":"20a6923522fe99a22c70501e533c91352d3d854e061b90303b08c6e33c7295782d6c797f8f7d9b782a1be9cd8697bbd0e2520e33e44c50556c71c4a66148a86f":"06262d62c148698ac2c7ce4de19549b59973d7c8cc63b77e2fbf4a615a4ad8fd"
|
||||
|
||||
mbedtls_ecp_mod_p255_raw #11 - 3a248138e8168561867e5e15bc01bfce6a27e0dfcbf8754472154e76e4c11ab2fec3f6b32e8d4b8a8f54f8ceacaab39e83844b40ffa9b9f15c14bc4a829e07b0 mod 7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffed
|
||||
depends_on:MBEDTLS_ECP_DP_CURVE25519_ENABLED
|
||||
ecp_mod_p_generic_raw:MBEDTLS_ECP_DP_CURVE25519:"7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffed":"3a248138e8168561867e5e15bc01bfce6a27e0dfcbf8754472154e76e4c11ab2fec3f6b32e8d4b8a8f54f8ceacaab39e83844b40ffa9b9f15c14bc4a829e07b0":"202f2525a1e518048616f00894ed2c42456fac79468b221a4b3e61f07747ff85"
|
||||
|
||||
mbedtls_ecp_mod_p255_raw #12 - 2f450feab714210c665d7435c1066932f4767f26294365b2721dea3bf63f23d0dbe53fcafb2147df5ca495fa5a91c89b97eeab64ca2ce6bc5d3fd983c34c769f mod 7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffed
|
||||
depends_on:MBEDTLS_ECP_DP_CURVE25519_ENABLED
|
||||
ecp_mod_p_generic_raw:MBEDTLS_ECP_DP_CURVE25519:"7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffed":"2f450feab714210c665d7435c1066932f4767f26294365b2721dea3bf63f23d0dbe53fcafb2147df5ca495fa5a91c89b97eeab64ca2ce6bc5d3fd983c34c769f":"60259ca2281e2fb68e83d5f50185662be1858b0eea2dff394db09e6a50abc89c"
|
||||
|
||||
mbedtls_ecp_mod_p255_raw #13 - 1d199effe202849da9643a295a9ac6decbd4d3e2d4dec9ef83f0be4e80371eb97f81375eecc1cb6347733e847d718d733ff98ff387c56473a7a83ee0761ebfd2 mod 7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffed
|
||||
depends_on:MBEDTLS_ECP_DP_CURVE25519_ENABLED
|
||||
ecp_mod_p_generic_raw:MBEDTLS_ECP_DP_CURVE25519:"7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffed":"1d199effe202849da9643a295a9ac6decbd4d3e2d4dec9ef83f0be4e80371eb97f81375eecc1cb6347733e847d718d733ff98ff387c56473a7a83ee0761ebfd2":"514ed15a79217aca6c53e0a7f06b12858191039f20d75e013d647e877e4d4ff3"
|
||||
|
||||
mbedtls_ecp_mod_p255_raw #14 - 3423c6ec531d6460f0caeef038c89b38a8acb5137c9260dc74e088a9b9492f258ebdbfe3eb9ac688b9d39cca91551e8259cc60b17604e4b4e73695c3e652c71a mod 7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffed
|
||||
depends_on:MBEDTLS_ECP_DP_CURVE25519_ENABLED
|
||||
ecp_mod_p_generic_raw:MBEDTLS_ECP_DP_CURVE25519:"7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffed":"3423c6ec531d6460f0caeef038c89b38a8acb5137c9260dc74e088a9b9492f258ebdbfe3eb9ac688b9d39cca91551e8259cc60b17604e4b4e73695c3e652c71a":"4c0d46f841f7acec77f31472ff1c28eb636f4195f3bf456e408adef5672fc7c8"
|
||||
|
||||
mbedtls_ecp_mod_p255_raw #15 - 62f1243644a4a8f69dc8db48e86ec9c6e06f291b2a838af8d5c44a4eb3172062 mod 7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffed
|
||||
depends_on:MBEDTLS_ECP_DP_CURVE25519_ENABLED
|
||||
ecp_mod_p_generic_raw:MBEDTLS_ECP_DP_CURVE25519:"7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffed":"000000000000000000000000000000000000000000000000000000000000000062f1243644a4a8f69dc8db48e86ec9c6e06f291b2a838af8d5c44a4eb3172062":"62f1243644a4a8f69dc8db48e86ec9c6e06f291b2a838af8d5c44a4eb3172062"
|
||||
|
||||
mbedtls_ecp_mod_p255_raw #16 - 6a606e54b4c9e755cc9c3adcf515a8234da4daeb4f3f87777ad1f45ae9500ec9 mod 7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffed
|
||||
depends_on:MBEDTLS_ECP_DP_CURVE25519_ENABLED
|
||||
ecp_mod_p_generic_raw:MBEDTLS_ECP_DP_CURVE25519:"7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffed":"00000000000000000000000000000000000000000000000000000000000000006a606e54b4c9e755cc9c3adcf515a8234da4daeb4f3f87777ad1f45ae9500ec9":"6a606e54b4c9e755cc9c3adcf515a8234da4daeb4f3f87777ad1f45ae9500ec9"
|
||||
|
||||
ecp_mod_p256k1_raw #1 - 0 mod fffffffffffffffffffffffffffffffffffffffffffffffffffffffefffffc2f
|
||||
depends_on:MBEDTLS_ECP_DP_SECP256K1_ENABLED
|
||||
ecp_mod_p_generic_raw:MBEDTLS_ECP_DP_SECP256K1:"fffffffffffffffffffffffffffffffffffffffffffffffffffffffefffffc2f":"00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000":"0000000000000000000000000000000000000000000000000000000000000000"
|
||||
|
||||
ecp_mod_p256k1_raw #2 - 1 mod fffffffffffffffffffffffffffffffffffffffffffffffffffffffefffffc2f
|
||||
depends_on:MBEDTLS_ECP_DP_SECP256K1_ENABLED
|
||||
ecp_mod_p_generic_raw:MBEDTLS_ECP_DP_SECP256K1:"fffffffffffffffffffffffffffffffffffffffffffffffffffffffefffffc2f":"00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001":"0000000000000000000000000000000000000000000000000000000000000001"
|
||||
|
||||
ecp_mod_p256k1_raw #3 - fffffffffffffffffffffffffffffffffffffffffffffffffffffffefffffc2e mod fffffffffffffffffffffffffffffffffffffffffffffffffffffffefffffc2f
|
||||
depends_on:MBEDTLS_ECP_DP_SECP256K1_ENABLED
|
||||
ecp_mod_p_generic_raw:MBEDTLS_ECP_DP_SECP256K1:"fffffffffffffffffffffffffffffffffffffffffffffffffffffffefffffc2f":"0000000000000000000000000000000000000000000000000000000000000000fffffffffffffffffffffffffffffffffffffffffffffffffffffffefffffc2e":"fffffffffffffffffffffffffffffffffffffffffffffffffffffffefffffc2e"
|
||||
|
||||
ecp_mod_p256k1_raw #4 - fffffffffffffffffffffffffffffffffffffffffffffffffffffffefffffc30 mod fffffffffffffffffffffffffffffffffffffffffffffffffffffffefffffc2f
|
||||
depends_on:MBEDTLS_ECP_DP_SECP256K1_ENABLED
|
||||
ecp_mod_p_generic_raw:MBEDTLS_ECP_DP_SECP256K1:"fffffffffffffffffffffffffffffffffffffffffffffffffffffffefffffc2f":"0000000000000000000000000000000000000000000000000000000000000000fffffffffffffffffffffffffffffffffffffffffffffffffffffffefffffc30":"0000000000000000000000000000000000000000000000000000000000000001"
|
||||
|
||||
ecp_mod_p256k1_raw #5 - ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff mod fffffffffffffffffffffffffffffffffffffffffffffffffffffffefffffc2f
|
||||
depends_on:MBEDTLS_ECP_DP_SECP256K1_ENABLED
|
||||
ecp_mod_p_generic_raw:MBEDTLS_ECP_DP_SECP256K1:"fffffffffffffffffffffffffffffffffffffffffffffffffffffffefffffc2f":"0000000000000000000000000000000000000000000000000000000000000000ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff":"00000000000000000000000000000000000000000000000000000001000003d0"
|
||||
|
||||
ecp_mod_p256k1_raw #6 - fffffffffffffffffffffffffffffffffffffffffffffffffffffffdfffff85c000000000000000000000000000000000000000000000001000007a4000e9844 mod fffffffffffffffffffffffffffffffffffffffffffffffffffffffefffffc2f
|
||||
depends_on:MBEDTLS_ECP_DP_SECP256K1_ENABLED
|
||||
ecp_mod_p_generic_raw:MBEDTLS_ECP_DP_SECP256K1:"fffffffffffffffffffffffffffffffffffffffffffffffffffffffefffffc2f":"fffffffffffffffffffffffffffffffffffffffffffffffffffffffdfffff85c000000000000000000000000000000000000000000000001000007a4000e9844":"0000000000000000000000000000000000000000000000000000000000000001"
|
||||
|
||||
ecp_mod_p256k1_raw #7 - fffffc2f000e90a0c86a0a63234e5ba641f43a7e4aecc4040e67ec85056200000000000000000000000000000000000000000000000000000000585674fd mod fffffffffffffffffffffffffffffffffffffffffffffffffffffffefffffc2f
|
||||
depends_on:MBEDTLS_ECP_DP_SECP256K1_ENABLED
|
||||
ecp_mod_p_generic_raw:MBEDTLS_ECP_DP_SECP256K1:"fffffffffffffffffffffffffffffffffffffffffffffffffffffffefffffc2f":"0000fffffc2f000e90a0c86a0a63234e5ba641f43a7e4aecc4040e67ec85056200000000000000000000000000000000000000000000000000000000585674fd":"0000000000000000000000000000000000000000000000000001000003d0ffff"
|
||||
|
||||
ecp_mod_p256k1_raw #8 - fffffc2f000e90a0c86a0a63234e5ba641f43a7e4aecc4040e67ec85056200000000000000000000000000000000000000000000000000000000585674fd mod fffffffffffffffffffffffffffffffffffffffffffffffffffffffefffffc2f
|
||||
depends_on:MBEDTLS_ECP_DP_SECP256K1_ENABLED
|
||||
ecp_mod_p_generic_raw:MBEDTLS_ECP_DP_SECP256K1:"fffffffffffffffffffffffffffffffffffffffffffffffffffffffefffffc2f":"0000fffffc2f000e90a0c86a0a63234e5ba641f43a7e4aecc4040e67ec85056200000000000000000000000000000000000000000000000000000000585674fd":"0000000000000000000000000000000000000000000000000001000003d0ffff"
|
||||
|
||||
ecp_mod_p256k1_raw #9 - 4067c3584ee207f8da94e3e8ab73738fcf1822ffbc6887782b491044d5e341245c6e433715ba2bdd177219d30e7a269fd95bafc8f2a4d27bdcf4bb99f4bea973 mod fffffffffffffffffffffffffffffffffffffffffffffffffffffffefffffc2f
|
||||
depends_on:MBEDTLS_ECP_DP_SECP256K1_ENABLED
|
||||
ecp_mod_p_generic_raw:MBEDTLS_ECP_DP_SECP256K1:"fffffffffffffffffffffffffffffffffffffffffffffffffffffffefffffc2f":"4067c3584ee207f8da94e3e8ab73738fcf1822ffbc6887782b491044d5e341245c6e433715ba2bdd177219d30e7a269fd95bafc8f2a4d27bdcf4bb99f4bea973":"7750cf34fcef7c7ff51f5859312e5174f0e1c93f28dae45e2516d8b6090e7185"
|
||||
|
||||
ecp_mod_p256k1_raw #10 - 82523e86feac7eb7dc38f519b91751dacdbd47d364be8049a372db8f6e405d93ffed9235288bc781ae66267594c9c9500925e4749b575bd13653f8dd9b1f282e mod fffffffffffffffffffffffffffffffffffffffffffffffffffffffefffffc2f
|
||||
depends_on:MBEDTLS_ECP_DP_SECP256K1_ENABLED
|
||||
ecp_mod_p_generic_raw:MBEDTLS_ECP_DP_SECP256K1:"fffffffffffffffffffffffffffffffffffffffffffffffffffffffefffffc2f":"82523e86feac7eb7dc38f519b91751dacdbd47d364be8049a372db8f6e405d93ffed9235288bc781ae66267594c9c9500925e4749b575bd13653f8dd9b1f282e":"5a7ab21ef514584adcdcdf7bc486752e9d438281b9d1d069f03e873ebaac53fa"
|
||||
|
||||
ecp_mod_p256k1_raw #11 - e8624fab5186ee32ee8d7ee9770348a05d300cb90706a045defc044a09325626e6b58de744ab6cce80877b6f71e1f6d2ef8acd128b4f2fc15f3f57ebf30b94fa mod fffffffffffffffffffffffffffffffffffffffffffffffffffffffefffffc2f
|
||||
depends_on:MBEDTLS_ECP_DP_SECP256K1_ENABLED
|
||||
ecp_mod_p_generic_raw:MBEDTLS_ECP_DP_SECP256K1:"fffffffffffffffffffffffffffffffffffffffffffffffffffffffefffffc2f":"e8624fab5186ee32ee8d7ee9770348a05d300cb90706a045defc044a09325626e6b58de744ab6cce80877b6f71e1f6d2ef8acd128b4f2fc15f3f57ebf30b94fa":"176e88ec572bfc18618c1d0f029a2f8f9af1fb7c3a94deb450a06338eb65a493"
|
||||
|
||||
ecp_mod_p256k1_raw #12 - 829a48d422fe99a22c70501e533c91352d3d854e061b90303b08c6e33c7295782d6c797f8f7d9b782a1be9cd8697bbd0e2520e33e44c50556c71c4a66148a86f mod fffffffffffffffffffffffffffffffffffffffffffffffffffffffefffffc2f
|
||||
depends_on:MBEDTLS_ECP_DP_SECP256K1_ENABLED
|
||||
ecp_mod_p_generic_raw:MBEDTLS_ECP_DP_SECP256K1:"fffffffffffffffffffffffffffffffffffffffffffffffffffffffefffffc2f":"829a48d422fe99a22c70501e533c91352d3d854e061b90303b08c6e33c7295782d6c797f8f7d9b782a1be9cd8697bbd0e2520e33e44c50556c71c4a66148a86f":"bf3b04bb49963f8215fa3ebe5dfb6d1090375d296e865f4a77fdb010816c750d"
|
||||
|
||||
ecp_mod_p256k1_raw #13 - e89204e2e8168561867e5e15bc01bfce6a27e0dfcbf8754472154e76e4c11ab2fec3f6b32e8d4b8a8f54f8ceacaab39e83844b40ffa9b9f15c14bc4a829e07b0 mod fffffffffffffffffffffffffffffffffffffffffffffffffffffffefffffc2f
|
||||
depends_on:MBEDTLS_ECP_DP_SECP256K1_ENABLED
|
||||
ecp_mod_p_generic_raw:MBEDTLS_ECP_DP_SECP256K1:"fffffffffffffffffffffffffffffffffffffffffffffffffffffffefffffc2f":"e89204e2e8168561867e5e15bc01bfce6a27e0dfcbf8754472154e76e4c11ab2fec3f6b32e8d4b8a8f54f8ceacaab39e83844b40ffa9b9f15c14bc4a829e07b0":"7c1f220c72feb2d2939bc98f997f974171adf69ee0f692a08cb8568e1ce6cc4d"
|
||||
|
||||
ecp_mod_p256k1_raw #14 - bd143fa9b714210c665d7435c1066932f4767f26294365b2721dea3bf63f23d0dbe53fcafb2147df5ca495fa5a91c89b97eeab64ca2ce6bc5d3fd983c34c769f mod fffffffffffffffffffffffffffffffffffffffffffffffffffffffefffffc2f
|
||||
depends_on:MBEDTLS_ECP_DP_SECP256K1_ENABLED
|
||||
ecp_mod_p_generic_raw:MBEDTLS_ECP_DP_SECP256K1:"fffffffffffffffffffffffffffffffffffffffffffffffffffffffefffffc2f":"bd143fa9b714210c665d7435c1066932f4767f26294365b2721dea3bf63f23d0dbe53fcafb2147df5ca495fa5a91c89b97eeab64ca2ce6bc5d3fd983c34c769f":"2d40578b1550dc67c8538052f87fc338b96d51bab681eefe94be31782495deab"
|
||||
|
||||
ecp_mod_p256k1_raw #15 - 74667bffe202849da9643a295a9ac6decbd4d3e2d4dec9ef83f0be4e80371eb97f81375eecc1cb6347733e847d718d733ff98ff387c56473a7a83ee0761ebfd2 mod fffffffffffffffffffffffffffffffffffffffffffffffffffffffefffffc2f
|
||||
depends_on:MBEDTLS_ECP_DP_SECP256K1_ENABLED
|
||||
ecp_mod_p_generic_raw:MBEDTLS_ECP_DP_SECP256K1:"fffffffffffffffffffffffffffffffffffffffffffffffffffffffefffffc2f":"74667bffe202849da9643a295a9ac6decbd4d3e2d4dec9ef83f0be4e80371eb97f81375eecc1cb6347733e847d718d733ff98ff387c56473a7a83ee0761ebfd2":"9ca2f78a21c22340198ffd3611f7599dfc14fe9171f6cdd9260c26a903a0da57"
|
||||
|
||||
ecp_mod_p256k1_raw #16 - d08f1bb2531d6460f0caeef038c89b38a8acb5137c9260dc74e088a9b9492f258ebdbfe3eb9ac688b9d39cca91551e8259cc60b17604e4b4e73695c3e652c71a mod fffffffffffffffffffffffffffffffffffffffffffffffffffffffefffffc2f
|
||||
depends_on:MBEDTLS_ECP_DP_SECP256K1_ENABLED
|
||||
ecp_mod_p_generic_raw:MBEDTLS_ECP_DP_SECP256K1:"fffffffffffffffffffffffffffffffffffffffffffffffffffffffefffffc2f":"d08f1bb2531d6460f0caeef038c89b38a8acb5137c9260dc74e088a9b9492f258ebdbfe3eb9ac688b9d39cca91551e8259cc60b17604e4b4e73695c3e652c71a":"d403d7d40f91cb6fe9161acbef9a36d1917dd0ec558916b97df8768ef8d4437d"
|
||||
|
||||
ecp_mod_p256k1_raw #17 - c5e2486c44a4a8f69dc8db48e86ec9c6e06f291b2a838af8d5c44a4eb3172062 mod fffffffffffffffffffffffffffffffffffffffffffffffffffffffefffffc2f
|
||||
depends_on:MBEDTLS_ECP_DP_SECP256K1_ENABLED
|
||||
ecp_mod_p_generic_raw:MBEDTLS_ECP_DP_SECP256K1:"fffffffffffffffffffffffffffffffffffffffffffffffffffffffefffffc2f":"0000000000000000000000000000000000000000000000000000000000000000c5e2486c44a4a8f69dc8db48e86ec9c6e06f291b2a838af8d5c44a4eb3172062":"c5e2486c44a4a8f69dc8db48e86ec9c6e06f291b2a838af8d5c44a4eb3172062"
|
||||
|
||||
ecp_mod_p256k1_raw #18 - d4c0dca8b4c9e755cc9c3adcf515a8234da4daeb4f3f87777ad1f45ae9500ec9 mod fffffffffffffffffffffffffffffffffffffffffffffffffffffffefffffc2f
|
||||
depends_on:MBEDTLS_ECP_DP_SECP256K1_ENABLED
|
||||
ecp_mod_p_generic_raw:MBEDTLS_ECP_DP_SECP256K1:"fffffffffffffffffffffffffffffffffffffffffffffffffffffffefffffc2f":"0000000000000000000000000000000000000000000000000000000000000000d4c0dca8b4c9e755cc9c3adcf515a8234da4daeb4f3f87777ad1f45ae9500ec9":"d4c0dca8b4c9e755cc9c3adcf515a8234da4daeb4f3f87777ad1f45ae9500ec9"
|
||||
|
||||
ecp_mod_p256_raw #1 - 0 mod ffffffff00000001000000000000000000000000ffffffffffffffffffffffff
|
||||
depends_on:MBEDTLS_ECP_DP_SECP256R1_ENABLED:MBEDTLS_ECP_NIST_OPTIM
|
||||
ecp_mod_p_generic_raw:MBEDTLS_ECP_DP_SECP256R1:"ffffffff00000001000000000000000000000000ffffffffffffffffffffffff":"00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000":"0000000000000000000000000000000000000000000000000000000000000000"
|
||||
|
||||
ecp_mod_p256_raw #2 - 1 mod ffffffff00000001000000000000000000000000ffffffffffffffffffffffff
|
||||
depends_on:MBEDTLS_ECP_DP_SECP256R1_ENABLED:MBEDTLS_ECP_NIST_OPTIM
|
||||
ecp_mod_p_generic_raw:MBEDTLS_ECP_DP_SECP256R1:"ffffffff00000001000000000000000000000000ffffffffffffffffffffffff":"00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001":"0000000000000000000000000000000000000000000000000000000000000001"
|
||||
|
||||
ecp_mod_p256_raw #3 - ffffffff00000001000000000000000000000000fffffffffffffffffffffffe mod ffffffff00000001000000000000000000000000ffffffffffffffffffffffff
|
||||
depends_on:MBEDTLS_ECP_DP_SECP256R1_ENABLED:MBEDTLS_ECP_NIST_OPTIM
|
||||
ecp_mod_p_generic_raw:MBEDTLS_ECP_DP_SECP256R1:"ffffffff00000001000000000000000000000000ffffffffffffffffffffffff":"0000000000000000000000000000000000000000000000000000000000000000ffffffff00000001000000000000000000000000fffffffffffffffffffffffe":"ffffffff00000001000000000000000000000000fffffffffffffffffffffffe"
|
||||
|
||||
ecp_mod_p256_raw #4 - ffffffff00000001000000000000000000000001000000000000000000000000 mod ffffffff00000001000000000000000000000000ffffffffffffffffffffffff
|
||||
depends_on:MBEDTLS_ECP_DP_SECP256R1_ENABLED:MBEDTLS_ECP_NIST_OPTIM
|
||||
ecp_mod_p_generic_raw:MBEDTLS_ECP_DP_SECP256R1:"ffffffff00000001000000000000000000000000ffffffffffffffffffffffff":"0000000000000000000000000000000000000000000000000000000000000000ffffffff00000001000000000000000000000001000000000000000000000000":"0000000000000000000000000000000000000000000000000000000000000001"
|
||||
|
||||
ecp_mod_p256_raw #5 - ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff mod ffffffff00000001000000000000000000000000ffffffffffffffffffffffff
|
||||
depends_on:MBEDTLS_ECP_DP_SECP256R1_ENABLED:MBEDTLS_ECP_NIST_OPTIM
|
||||
ecp_mod_p_generic_raw:MBEDTLS_ECP_DP_SECP256R1:"ffffffff00000001000000000000000000000000ffffffffffffffffffffffff":"0000000000000000000000000000000000000000000000000000000000000000ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff":"00000000fffffffeffffffffffffffffffffffff000000000000000000000000"
|
||||
|
||||
ecp_mod_p256_raw #6 - fffffffe00000002fffffffe0000000100000001fffffffe00000001fffffffc00000003fffffffcfffffffffffffffffffffffc000000000000000000000004 mod ffffffff00000001000000000000000000000000ffffffffffffffffffffffff
|
||||
depends_on:MBEDTLS_ECP_DP_SECP256R1_ENABLED:MBEDTLS_ECP_NIST_OPTIM
|
||||
ecp_mod_p_generic_raw:MBEDTLS_ECP_DP_SECP256R1:"ffffffff00000001000000000000000000000000ffffffffffffffffffffffff":"fffffffe00000002fffffffe0000000100000001fffffffe00000001fffffffc00000003fffffffcfffffffffffffffffffffffc000000000000000000000004":"0000000000000000000000000000000000000000000000000000000000000001"
|
||||
|
||||
ecp_mod_p256_raw #7 - 1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000ffffffff mod ffffffff00000001000000000000000000000000ffffffffffffffffffffffff
|
||||
depends_on:MBEDTLS_ECP_DP_SECP256R1_ENABLED:MBEDTLS_ECP_NIST_OPTIM
|
||||
ecp_mod_p_generic_raw:MBEDTLS_ECP_DP_SECP256R1:"ffffffff00000001000000000000000000000000ffffffffffffffffffffffff":"000000000000000000000001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000ffffffff":"fffffffe00000002000000020000000200000001fffffffefffffffffffffffd"
|
||||
|
||||
ecp_mod_p256_raw #8 - 10ffffffff00000000000000000000000000000000000000000000000000000000 mod ffffffff00000001000000000000000000000000ffffffffffffffffffffffff
|
||||
depends_on:MBEDTLS_ECP_DP_SECP256R1_ENABLED:MBEDTLS_ECP_NIST_OPTIM
|
||||
ecp_mod_p_generic_raw:MBEDTLS_ECP_DP_SECP256R1:"ffffffff00000001000000000000000000000000ffffffffffffffffffffffff":"0000000000000000000000000000000000000000000000000000000000000010ffffffff00000000000000000000000000000000000000000000000000000000":"0000000fffffffeeffffffffffffffffffffffef000000000000000000000011"
|
||||
|
||||
ecp_mod_p256_raw #9 - aaaaaaaa0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000aaaaaaacaaaaaaaaaaaaaaaa00000000 mod ffffffff00000001000000000000000000000000ffffffffffffffffffffffff
|
||||
depends_on:MBEDTLS_ECP_DP_SECP256R1_ENABLED:MBEDTLS_ECP_NIST_OPTIM
|
||||
ecp_mod_p_generic_raw:MBEDTLS_ECP_DP_SECP256R1:"ffffffff00000001000000000000000000000000ffffffffffffffffffffffff":"aaaaaaaa0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000aaaaaaacaaaaaaaaaaaaaaaa00000000":"0000000155555552aaaaaaaa0000000000000000000000000000000000000002"
|
||||
|
||||
ecp_mod_p256_raw #10 - 1ffffffff000000000000000000000000000000000000000000000000000000000000000000000002000000020000000100000002 mod ffffffff00000001000000000000000000000000ffffffffffffffffffffffff
|
||||
depends_on:MBEDTLS_ECP_DP_SECP256R1_ENABLED:MBEDTLS_ECP_NIST_OPTIM
|
||||
ecp_mod_p_generic_raw:MBEDTLS_ECP_DP_SECP256R1:"ffffffff00000001000000000000000000000000ffffffffffffffffffffffff":"000000000000000000000001ffffffff000000000000000000000000000000000000000000000000000000000000000000000002000000020000000100000002":"fffffffe00000003000000040000000200000003000000000000000000000000"
|
||||
|
||||
ecp_mod_p256_raw #11 - 4067c3584ee207f8da94e3e8ab73738fcf1822ffbc6887782b491044d5e341245c6e433715ba2bdd177219d30e7a269fd95bafc8f2a4d27bdcf4bb99f4bea973 mod ffffffff00000001000000000000000000000000ffffffffffffffffffffffff
|
||||
depends_on:MBEDTLS_ECP_DP_SECP256R1_ENABLED:MBEDTLS_ECP_NIST_OPTIM
|
||||
ecp_mod_p_generic_raw:MBEDTLS_ECP_DP_SECP256R1:"ffffffff00000001000000000000000000000000ffffffffffffffffffffffff":"4067c3584ee207f8da94e3e8ab73738fcf1822ffbc6887782b491044d5e341245c6e433715ba2bdd177219d30e7a269fd95bafc8f2a4d27bdcf4bb99f4bea973":"e1ffcc745c985cf81f470a7681bb45cc6773ac0f1446cdb9af54308d51e8786b"
|
||||
|
||||
ecp_mod_p256_raw #12 - 82523e86feac7eb7dc38f519b91751dacdbd47d364be8049a372db8f6e405d93ffed9235288bc781ae66267594c9c9500925e4749b575bd13653f8dd9b1f282e mod ffffffff00000001000000000000000000000000ffffffffffffffffffffffff
|
||||
depends_on:MBEDTLS_ECP_DP_SECP256R1_ENABLED:MBEDTLS_ECP_NIST_OPTIM
|
||||
ecp_mod_p_generic_raw:MBEDTLS_ECP_DP_SECP256R1:"ffffffff00000001000000000000000000000000ffffffffffffffffffffffff":"82523e86feac7eb7dc38f519b91751dacdbd47d364be8049a372db8f6e405d93ffed9235288bc781ae66267594c9c9500925e4749b575bd13653f8dd9b1f282e":"2d589c4ef3bb7cacb4078482b5e57a175f02953e709b7195283650834b1853d3"
|
||||
|
||||
ecp_mod_p256_raw #13 - e8624fab5186ee32ee8d7ee9770348a05d300cb90706a045defc044a09325626e6b58de744ab6cce80877b6f71e1f6d2ef8acd128b4f2fc15f3f57ebf30b94fa mod ffffffff00000001000000000000000000000000ffffffffffffffffffffffff
|
||||
depends_on:MBEDTLS_ECP_DP_SECP256R1_ENABLED:MBEDTLS_ECP_NIST_OPTIM
|
||||
ecp_mod_p_generic_raw:MBEDTLS_ECP_DP_SECP256R1:"ffffffff00000001000000000000000000000000ffffffffffffffffffffffff":"e8624fab5186ee32ee8d7ee9770348a05d300cb90706a045defc044a09325626e6b58de744ab6cce80877b6f71e1f6d2ef8acd128b4f2fc15f3f57ebf30b94fa":"df475e8b1063fb3584dbf854a887cf88b5ee4c8fc70f1ff7a5c7f713c6f22cf7"
|
||||
|
||||
ecp_mod_p256_raw #14 - 829a48d422fe99a22c70501e533c91352d3d854e061b90303b08c6e33c7295782d6c797f8f7d9b782a1be9cd8697bbd0e2520e33e44c50556c71c4a66148a86f mod ffffffff00000001000000000000000000000000ffffffffffffffffffffffff
|
||||
depends_on:MBEDTLS_ECP_DP_SECP256R1_ENABLED:MBEDTLS_ECP_NIST_OPTIM
|
||||
ecp_mod_p_generic_raw:MBEDTLS_ECP_DP_SECP256R1:"ffffffff00000001000000000000000000000000ffffffffffffffffffffffff":"829a48d422fe99a22c70501e533c91352d3d854e061b90303b08c6e33c7295782d6c797f8f7d9b782a1be9cd8697bbd0e2520e33e44c50556c71c4a66148a86f":"3ea7f2a4b2a2edc9183af0a467cbc10615a0e627459c333e885057f008db0488"
|
||||
|
||||
ecp_mod_p256_raw #15 - e89204e2e8168561867e5e15bc01bfce6a27e0dfcbf8754472154e76e4c11ab2fec3f6b32e8d4b8a8f54f8ceacaab39e83844b40ffa9b9f15c14bc4a829e07b0 mod ffffffff00000001000000000000000000000000ffffffffffffffffffffffff
|
||||
depends_on:MBEDTLS_ECP_DP_SECP256R1_ENABLED:MBEDTLS_ECP_NIST_OPTIM
|
||||
ecp_mod_p_generic_raw:MBEDTLS_ECP_DP_SECP256R1:"ffffffff00000001000000000000000000000000ffffffffffffffffffffffff":"e89204e2e8168561867e5e15bc01bfce6a27e0dfcbf8754472154e76e4c11ab2fec3f6b32e8d4b8a8f54f8ceacaab39e83844b40ffa9b9f15c14bc4a829e07b0":"249aac0ae79cda5f1ef06e7bdbb3b10c16ed7ca2dea327ba86f9d7dd44b5ecb7"
|
||||
|
||||
ecp_mod_p256_raw #16 - bd143fa9b714210c665d7435c1066932f4767f26294365b2721dea3bf63f23d0dbe53fcafb2147df5ca495fa5a91c89b97eeab64ca2ce6bc5d3fd983c34c769f mod ffffffff00000001000000000000000000000000ffffffffffffffffffffffff
|
||||
depends_on:MBEDTLS_ECP_DP_SECP256R1_ENABLED:MBEDTLS_ECP_NIST_OPTIM
|
||||
ecp_mod_p_generic_raw:MBEDTLS_ECP_DP_SECP256R1:"ffffffff00000001000000000000000000000000ffffffffffffffffffffffff":"bd143fa9b714210c665d7435c1066932f4767f26294365b2721dea3bf63f23d0dbe53fcafb2147df5ca495fa5a91c89b97eeab64ca2ce6bc5d3fd983c34c769f":"c443605a9886908036e21b4fc50c548a43d4a2940d60f6a85d14eb5358bb0712"
|
||||
|
||||
ecp_mod_p256_raw #17 - 74667bffe202849da9643a295a9ac6decbd4d3e2d4dec9ef83f0be4e80371eb97f81375eecc1cb6347733e847d718d733ff98ff387c56473a7a83ee0761ebfd2 mod ffffffff00000001000000000000000000000000ffffffffffffffffffffffff
|
||||
depends_on:MBEDTLS_ECP_DP_SECP256R1_ENABLED:MBEDTLS_ECP_NIST_OPTIM
|
||||
ecp_mod_p_generic_raw:MBEDTLS_ECP_DP_SECP256R1:"ffffffff00000001000000000000000000000000ffffffffffffffffffffffff":"74667bffe202849da9643a295a9ac6decbd4d3e2d4dec9ef83f0be4e80371eb97f81375eecc1cb6347733e847d718d733ff98ff387c56473a7a83ee0761ebfd2":"b8392b3f20d2ae5d31f39a400ea28be2bdaea69728abc77ea60fc578c8704352"
|
||||
|
||||
ecp_mod_p256_raw #18 - d08f1bb2531d6460f0caeef038c89b38a8acb5137c9260dc74e088a9b9492f258ebdbfe3eb9ac688b9d39cca91551e8259cc60b17604e4b4e73695c3e652c71a mod ffffffff00000001000000000000000000000000ffffffffffffffffffffffff
|
||||
depends_on:MBEDTLS_ECP_DP_SECP256R1_ENABLED:MBEDTLS_ECP_NIST_OPTIM
|
||||
ecp_mod_p_generic_raw:MBEDTLS_ECP_DP_SECP256R1:"ffffffff00000001000000000000000000000000ffffffffffffffffffffffff":"d08f1bb2531d6460f0caeef038c89b38a8acb5137c9260dc74e088a9b9492f258ebdbfe3eb9ac688b9d39cca91551e8259cc60b17604e4b4e73695c3e652c71a":"6ae1a20b48b2622fecf4492f4626adae0ec91cb586cc8ba08b69750def1edb4e"
|
||||
|
||||
ecp_mod_p256_raw #19 - c5e2486c44a4a8f69dc8db48e86ec9c6e06f291b2a838af8d5c44a4eb3172062 mod ffffffff00000001000000000000000000000000ffffffffffffffffffffffff
|
||||
depends_on:MBEDTLS_ECP_DP_SECP256R1_ENABLED:MBEDTLS_ECP_NIST_OPTIM
|
||||
ecp_mod_p_generic_raw:MBEDTLS_ECP_DP_SECP256R1:"ffffffff00000001000000000000000000000000ffffffffffffffffffffffff":"0000000000000000000000000000000000000000000000000000000000000000c5e2486c44a4a8f69dc8db48e86ec9c6e06f291b2a838af8d5c44a4eb3172062":"c5e2486c44a4a8f69dc8db48e86ec9c6e06f291b2a838af8d5c44a4eb3172062"
|
||||
|
||||
ecp_mod_p256_raw #20 - d4c0dca8b4c9e755cc9c3adcf515a8234da4daeb4f3f87777ad1f45ae9500ec9 mod ffffffff00000001000000000000000000000000ffffffffffffffffffffffff
|
||||
depends_on:MBEDTLS_ECP_DP_SECP256R1_ENABLED:MBEDTLS_ECP_NIST_OPTIM
|
||||
ecp_mod_p_generic_raw:MBEDTLS_ECP_DP_SECP256R1:"ffffffff00000001000000000000000000000000ffffffffffffffffffffffff":"0000000000000000000000000000000000000000000000000000000000000000d4c0dca8b4c9e755cc9c3adcf515a8234da4daeb4f3f87777ad1f45ae9500ec9":"d4c0dca8b4c9e755cc9c3adcf515a8234da4daeb4f3f87777ad1f45ae9500ec9"
|
||||
|
||||
ecp_mod_p384_raw #1 0 mod fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffeffffffff0000000000000000ffffffff
|
||||
depends_on:MBEDTLS_ECP_DP_SECP384R1_ENABLED:MBEDTLS_ECP_NIST_OPTIM
|
||||
ecp_mod_p_generic_raw:MBEDTLS_ECP_DP_SECP384R1:"fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffeffffffff0000000000000000ffffffff":"000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000":"000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000"
|
||||
|
||||
ecp_mod_p384_raw #2 1 mod fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffeffffffff0000000000000000ffffffff
|
||||
depends_on:MBEDTLS_ECP_DP_SECP384R1_ENABLED:MBEDTLS_ECP_NIST_OPTIM
|
||||
ecp_mod_p_generic_raw:MBEDTLS_ECP_DP_SECP384R1:"fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffeffffffff0000000000000000ffffffff":"000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001":"000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001"
|
||||
|
||||
ecp_mod_p384_raw #3 fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffeffffffff0000000000000000fffffffe mod fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffeffffffff0000000000000000ffffffff
|
||||
depends_on:MBEDTLS_ECP_DP_SECP384R1_ENABLED:MBEDTLS_ECP_NIST_OPTIM
|
||||
ecp_mod_p_generic_raw:MBEDTLS_ECP_DP_SECP384R1:"fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffeffffffff0000000000000000ffffffff":"000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffeffffffff0000000000000000fffffffe":"fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffeffffffff0000000000000000fffffffe"
|
||||
|
||||
ecp_mod_p384_raw #4 fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffeffffffff000000000000000100000000 mod fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffeffffffff0000000000000000ffffffff
|
||||
depends_on:MBEDTLS_ECP_DP_SECP384R1_ENABLED:MBEDTLS_ECP_NIST_OPTIM
|
||||
ecp_mod_p_generic_raw:MBEDTLS_ECP_DP_SECP384R1:"fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffeffffffff0000000000000000ffffffff":"000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffeffffffff000000000000000100000000":"000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001"
|
||||
|
||||
ecp_mod_p384_raw #5 ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff mod fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffeffffffff0000000000000000ffffffff
|
||||
depends_on:MBEDTLS_ECP_DP_SECP384R1_ENABLED:MBEDTLS_ECP_NIST_OPTIM
|
||||
ecp_mod_p_generic_raw:MBEDTLS_ECP_DP_SECP384R1:"fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffeffffffff0000000000000000ffffffff":"000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff":"000000000000000000000000000000000000000000000000000000000000000100000000ffffffffffffffff00000000"
|
||||
|
||||
ecp_mod_p384_raw #6 fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffdfffffffe0000000000000001fffffffc000000000000000000000000000000010000000200000000fffffffe000000020000000400000000fffffffc00000004 mod fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffeffffffff0000000000000000ffffffff
|
||||
depends_on:MBEDTLS_ECP_DP_SECP384R1_ENABLED:MBEDTLS_ECP_NIST_OPTIM
|
||||
ecp_mod_p_generic_raw:MBEDTLS_ECP_DP_SECP384R1:"fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffeffffffff0000000000000000ffffffff":"fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffdfffffffe0000000000000001fffffffc000000000000000000000000000000010000000200000000fffffffe000000020000000400000000fffffffc00000004":"000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001"
|
||||
|
||||
ecp_mod_p384_raw #7 497811378624857a2c2af60d70583376545484cfae5c812fe2999fc1abb51d18b559e8ca3b50aaf263fdf8f24bdfb98fffffffff20e65bf9099e4e73a5e8b517cf4fbeb8fd1750fdae6d43f2e53f82d5ffffffffffffffffcc6f1e06111c62e0 mod fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffeffffffff0000000000000000ffffffff
|
||||
depends_on:MBEDTLS_ECP_DP_SECP384R1_ENABLED:MBEDTLS_ECP_NIST_OPTIM
|
||||
ecp_mod_p_generic_raw:MBEDTLS_ECP_DP_SECP384R1:"fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffeffffffff0000000000000000ffffffff":"497811378624857a2c2af60d70583376545484cfae5c812fe2999fc1abb51d18b559e8ca3b50aaf263fdf8f24bdfb98fffffffff20e65bf9099e4e73a5e8b517cf4fbeb8fd1750fdae6d43f2e53f82d5ffffffffffffffffcc6f1e06111c62e0":"880044027d90f165566731fc503b20991fced973d2996e12068c7cb9475aec4292cf8a39f49fcd2a43d1c0a3b00734bc"
|
||||
|
||||
ecp_mod_p384_raw #8 dfdd25e96777406b3c04b8c7b406f5fcf287e1e576003a092852a6fbe517f2712b68abef41dbd35183a0614fb7222606ffffffff84396eee542f18a9189d94396c784059c17a9f18f807214ef32f2f10ffffffff8a77fac20000000000000000 mod fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffeffffffff0000000000000000ffffffff
|
||||
depends_on:MBEDTLS_ECP_DP_SECP384R1_ENABLED:MBEDTLS_ECP_NIST_OPTIM
|
||||
ecp_mod_p_generic_raw:MBEDTLS_ECP_DP_SECP384R1:"fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffeffffffff0000000000000000ffffffff":"dfdd25e96777406b3c04b8c7b406f5fcf287e1e576003a092852a6fbe517f2712b68abef41dbd35183a0614fb7222606ffffffff84396eee542f18a9189d94396c784059c17a9f18f807214ef32f2f10ffffffff8a77fac20000000000000000":"1ef4bd60183412807a7fbc78e78741bed95dac81a39e3da5eb8e6a00bb6e590e49664715ec8bd9e65fcbab9ec750aee3"
|
||||
|
||||
ecp_mod_p384_raw #9 783753f8a5afba6c1862eead1deb2fcdd907272be3ffd18542b24a71ee8b26cab0aa33513610ff973042bbe1637cc9fc99ad36c7f703514572cf4f5c3044469a8f5be6312c19e5d3f8fc1ac6ffffffffffffffff8c86252400000000ffffffff mod fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffeffffffff0000000000000000ffffffff
|
||||
depends_on:MBEDTLS_ECP_DP_SECP384R1_ENABLED:MBEDTLS_ECP_NIST_OPTIM
|
||||
ecp_mod_p_generic_raw:MBEDTLS_ECP_DP_SECP384R1:"fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffeffffffff0000000000000000ffffffff":"783753f8a5afba6c1862eead1deb2fcdd907272be3ffd18542b24a71ee8b26cab0aa33513610ff973042bbe1637cc9fc99ad36c7f703514572cf4f5c3044469a8f5be6312c19e5d3f8fc1ac6ffffffffffffffff8c86252400000000ffffffff":"6327274e415715b593f92a32a665c0799bcfe9ed4a41022d8f70b163d59298f9f67d0dccf228ce25ccc1d07c2193947e"
|
||||
|
||||
ecp_mod_p384_raw #10 65e1d2362fce922663b7fd517586e88842a9b4bd092e93e6251c9c69f278cbf8285d99ae3b53da5ba36e56701e2b17c225f1239556c5f00117fa140218b46ebd8e34f50d0018701fa8a0a5cc00000000000000004410bcb4ffffffff00000000 mod fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffeffffffff0000000000000000ffffffff
|
||||
depends_on:MBEDTLS_ECP_DP_SECP384R1_ENABLED:MBEDTLS_ECP_NIST_OPTIM
|
||||
ecp_mod_p_generic_raw:MBEDTLS_ECP_DP_SECP384R1:"fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffeffffffff0000000000000000ffffffff":"65e1d2362fce922663b7fd517586e88842a9b4bd092e93e6251c9c69f278cbf8285d99ae3b53da5ba36e56701e2b17c225f1239556c5f00117fa140218b46ebd8e34f50d0018701fa8a0a5cc00000000000000004410bcb4ffffffff00000000":"143500ea6eb4cd793476591b63270aeb48684dc1436e1238e33d9add2cb671614ec35892de201585a56cba8091882b66"
|
||||
|
||||
ecp_mod_p384_raw #11 ffffffffffffffffffffffffffffffffffffffffffffffffffffffff00000000000000000000000000000000ffffffff00000000000000000000000100000000000000000000000000000000ffffffff00000001 mod fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffeffffffff0000000000000000ffffffff
|
||||
depends_on:MBEDTLS_ECP_DP_SECP384R1_ENABLED:MBEDTLS_ECP_NIST_OPTIM
|
||||
ecp_mod_p_generic_raw:MBEDTLS_ECP_DP_SECP384R1:"fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffeffffffff0000000000000000ffffffff":"000000000000000000000000ffffffffffffffffffffffffffffffffffffffffffffffffffffffff00000000000000000000000000000000ffffffff00000000000000000000000100000000000000000000000000000000ffffffff00000001":"000000000000000000000000000000000000000000000000000000000000000200000001fffffffeffffffff00000002"
|
||||
|
||||
ecp_mod_p384_raw #12 ffed9235288bc781ae66267594c9c9500925e4749b575bd13653f8dd9b1f282e4067c3584ee207f8da94e3e8ab73738fcf1822ffbc6887782b491044d5e341245c6e433715ba2bdd177219d30e7a269fd95bafc8f2a4d27bdcf4bb99f4bea973 mod fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffeffffffff0000000000000000ffffffff
|
||||
depends_on:MBEDTLS_ECP_DP_SECP384R1_ENABLED:MBEDTLS_ECP_NIST_OPTIM
|
||||
ecp_mod_p_generic_raw:MBEDTLS_ECP_DP_SECP384R1:"fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffeffffffff0000000000000000ffffffff":"ffed9235288bc781ae66267594c9c9500925e4749b575bd13653f8dd9b1f282e4067c3584ee207f8da94e3e8ab73738fcf1822ffbc6887782b491044d5e341245c6e433715ba2bdd177219d30e7a269fd95bafc8f2a4d27bdcf4bb99f4bea973":"44699b77db0b68ca1690c21932fa470ca5b14998326e460edb891e1009809c40910b74c8b879624c9fc5bc57e3747a94"
|
||||
|
||||
ecp_mod_p384_raw #13 e8624fab5186ee32ee8d7ee9770348a05d300cb90706a045defc044a09325626e6b58de744ab6cce80877b6f71e1f6d2ef8acd128b4f2fc15f3f57ebf30b94fa82523e86feac7eb7dc38f519b91751dacdbd47d364be8049a372db8f6e405d93 mod fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffeffffffff0000000000000000ffffffff
|
||||
depends_on:MBEDTLS_ECP_DP_SECP384R1_ENABLED:MBEDTLS_ECP_NIST_OPTIM
|
||||
ecp_mod_p_generic_raw:MBEDTLS_ECP_DP_SECP384R1:"fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffeffffffff0000000000000000ffffffff":"e8624fab5186ee32ee8d7ee9770348a05d300cb90706a045defc044a09325626e6b58de744ab6cce80877b6f71e1f6d2ef8acd128b4f2fc15f3f57ebf30b94fa82523e86feac7eb7dc38f519b91751dacdbd47d364be8049a372db8f6e405d93":"5a9983e4527f4c09bccc32c4f50d2b53b0c5deb57463a2f3f1333673a2de21ac0d50e96c22b7426b74fe55685d50cc45"
|
||||
|
||||
ecp_mod_p384_raw #14 fec3f6b32e8d4b8a8f54f8ceacaab39e83844b40ffa9b9f15c14bc4a829e07b0829a48d422fe99a22c70501e533c91352d3d854e061b90303b08c6e33c7295782d6c797f8f7d9b782a1be9cd8697bbd0e2520e33e44c50556c71c4a66148a86f mod fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffeffffffff0000000000000000ffffffff
|
||||
depends_on:MBEDTLS_ECP_DP_SECP384R1_ENABLED:MBEDTLS_ECP_NIST_OPTIM
|
||||
ecp_mod_p_generic_raw:MBEDTLS_ECP_DP_SECP384R1:"fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffeffffffff0000000000000000ffffffff":"fec3f6b32e8d4b8a8f54f8ceacaab39e83844b40ffa9b9f15c14bc4a829e07b0829a48d422fe99a22c70501e533c91352d3d854e061b90303b08c6e33c7295782d6c797f8f7d9b782a1be9cd8697bbd0e2520e33e44c50556c71c4a66148a86f":"2da32f562881e81e7971824f444bc1d1b543520904c0b4873e350ebd02a25f60a3d8b8cc4a4997bec64c122cf1c0ef5f"
|
||||
|
||||
ecp_mod_p384_raw #15 bd143fa9b714210c665d7435c1066932f4767f26294365b2721dea3bf63f23d0dbe53fcafb2147df5ca495fa5a91c89b97eeab64ca2ce6bc5d3fd983c34c769fe89204e2e8168561867e5e15bc01bfce6a27e0dfcbf8754472154e76e4c11ab2 mod fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffeffffffff0000000000000000ffffffff
|
||||
depends_on:MBEDTLS_ECP_DP_SECP384R1_ENABLED:MBEDTLS_ECP_NIST_OPTIM
|
||||
ecp_mod_p_generic_raw:MBEDTLS_ECP_DP_SECP384R1:"fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffeffffffff0000000000000000ffffffff":"bd143fa9b714210c665d7435c1066932f4767f26294365b2721dea3bf63f23d0dbe53fcafb2147df5ca495fa5a91c89b97eeab64ca2ce6bc5d3fd983c34c769fe89204e2e8168561867e5e15bc01bfce6a27e0dfcbf8754472154e76e4c11ab2":"536bb25b389d786b9df83474f8396eba42fdc19da77f28e2ebbcf851583ef5c158b91e1ac12bf29e274a1357a9a2810d"
|
||||
|
||||
ecp_mod_p384_raw #16 8ebdbfe3eb9ac688b9d39cca91551e8259cc60b17604e4b4e73695c3e652c71a74667bffe202849da9643a295a9ac6decbd4d3e2d4dec9ef83f0be4e80371eb97f81375eecc1cb6347733e847d718d733ff98ff387c56473a7a83ee0761ebfd2 mod fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffeffffffff0000000000000000ffffffff
|
||||
depends_on:MBEDTLS_ECP_DP_SECP384R1_ENABLED:MBEDTLS_ECP_NIST_OPTIM
|
||||
ecp_mod_p_generic_raw:MBEDTLS_ECP_DP_SECP384R1:"fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffeffffffff0000000000000000ffffffff":"8ebdbfe3eb9ac688b9d39cca91551e8259cc60b17604e4b4e73695c3e652c71a74667bffe202849da9643a295a9ac6decbd4d3e2d4dec9ef83f0be4e80371eb97f81375eecc1cb6347733e847d718d733ff98ff387c56473a7a83ee0761ebfd2":"5a194c71d677391409aab70f854939694cbfb65adb0f6142f384b5b3c678786dfdc88315954dd201df751a148d24821a"
|
||||
|
||||
ecp_mod_p384_raw #17 d4c0dca8b4c9e755cc9c3adcf515a8234da4daeb4f3f87777ad1f45ae9500ec9c5e2486c44a4a8f69dc8db48e86ec9c6e06f291b2a838af8d5c44a4eb3172062d08f1bb2531d6460f0caeef038c89b38a8acb5137c9260dc74e088a9b9492f25 mod fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffeffffffff0000000000000000ffffffff
|
||||
depends_on:MBEDTLS_ECP_DP_SECP384R1_ENABLED:MBEDTLS_ECP_NIST_OPTIM
|
||||
ecp_mod_p_generic_raw:MBEDTLS_ECP_DP_SECP384R1:"fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffeffffffff0000000000000000ffffffff":"d4c0dca8b4c9e755cc9c3adcf515a8234da4daeb4f3f87777ad1f45ae9500ec9c5e2486c44a4a8f69dc8db48e86ec9c6e06f291b2a838af8d5c44a4eb3172062d08f1bb2531d6460f0caeef038c89b38a8acb5137c9260dc74e088a9b9492f25":"4320a17caf9599d4775c58dabea9f0c052e7a306905d89886fab3ef07c0452874a803d532b92d056beafb6058ea8ff44"
|
||||
|
||||
ecp_mod_p384_raw #18 227eeb7b9d7d01f5769da05d205bbfcc8c69069134bccd3e1cf4f589f8e4ce0af29d115ef24bd625dd961e6830b54fa7d28f93435339774bb1e386c4fd5079e681b8f5896838b769da59b74a6c3181c81e220df848b1df78feb994a81167346 mod fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffeffffffff0000000000000000ffffffff
|
||||
depends_on:MBEDTLS_ECP_DP_SECP384R1_ENABLED:MBEDTLS_ECP_NIST_OPTIM
|
||||
ecp_mod_p_generic_raw:MBEDTLS_ECP_DP_SECP384R1:"fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffeffffffff0000000000000000ffffffff":"0227eeb7b9d7d01f5769da05d205bbfcc8c69069134bccd3e1cf4f589f8e4ce0af29d115ef24bd625dd961e6830b54fa7d28f93435339774bb1e386c4fd5079e681b8f5896838b769da59b74a6c3181c81e220df848b1df78feb994a81167346":"6045643273b3eacb359d72a1da71cf6b6e765f9c247644f8fa262631ae6dad80326260b8c0948e2554b3a9112b696f8b"
|
||||
|
||||
ecp_mod_p384_raw #19 d322a7353ead4efe440e2b4fda9c025a22f1a83185b98f5fc11e60de1b343f52ea748db9e020307aaeb6db2c3a038a709779ac1f45e9dd320c855fdfa7251af0930cdbd30f0ad2a81b2d19a2beaa14a7ff3fe32a30ffc4eed0a7bd04e85bfcdd mod fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffeffffffff0000000000000000ffffffff
|
||||
depends_on:MBEDTLS_ECP_DP_SECP384R1_ENABLED:MBEDTLS_ECP_NIST_OPTIM
|
||||
ecp_mod_p_generic_raw:MBEDTLS_ECP_DP_SECP384R1:"fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffeffffffff0000000000000000ffffffff":"d322a7353ead4efe440e2b4fda9c025a22f1a83185b98f5fc11e60de1b343f52ea748db9e020307aaeb6db2c3a038a709779ac1f45e9dd320c855fdfa7251af0930cdbd30f0ad2a81b2d19a2beaa14a7ff3fe32a30ffc4eed0a7bd04e85bfcdd":"297caee1e9343871bccf79133b22154b091068e8832d5cc7e479b754d344856b50720251f17d96237c8f01986de70dc3"
|
||||
|
||||
ecp_mod_p384_raw #20 5c3747465cc36c270e8a35b10828d569c268a20eb78ac332e5e138e26c4454b90f756132e16dce72f18e859835e1f291 mod fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffeffffffff0000000000000000ffffffff
|
||||
depends_on:MBEDTLS_ECP_DP_SECP384R1_ENABLED:MBEDTLS_ECP_NIST_OPTIM
|
||||
ecp_mod_p_generic_raw:MBEDTLS_ECP_DP_SECP384R1:"fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffeffffffff0000000000000000ffffffff":"0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005c3747465cc36c270e8a35b10828d569c268a20eb78ac332e5e138e26c4454b90f756132e16dce72f18e859835e1f291":"5c3747465cc36c270e8a35b10828d569c268a20eb78ac332e5e138e26c4454b90f756132e16dce72f18e859835e1f291"
|
||||
|
||||
ecp_mod_p384_raw #21 eb2b5693babb7fbb0a76c196067cfdcb11457d9cf45e2fa01d7f4275153924800600571fac3a5b263fdf57cd2c006497 mod fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffeffffffff0000000000000000ffffffff
|
||||
depends_on:MBEDTLS_ECP_DP_SECP384R1_ENABLED:MBEDTLS_ECP_NIST_OPTIM
|
||||
ecp_mod_p_generic_raw:MBEDTLS_ECP_DP_SECP384R1:"fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffeffffffff0000000000000000ffffffff":"000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000eb2b5693babb7fbb0a76c196067cfdcb11457d9cf45e2fa01d7f4275153924800600571fac3a5b263fdf57cd2c006497":"eb2b5693babb7fbb0a76c196067cfdcb11457d9cf45e2fa01d7f4275153924800600571fac3a5b263fdf57cd2c006497"
|
||||
|
||||
ecp_mod_p448_raw #1 - 0 mod fffffffffffffffffffffffffffffffffffffffffffffffffffffffeffffffffffffffffffffffffffffffffffffffffffffffffffffffff
|
||||
depends_on:MBEDTLS_ECP_DP_CURVE448_ENABLED
|
||||
ecp_mod_p_generic_raw:MBEDTLS_ECP_DP_CURVE448:"fffffffffffffffffffffffffffffffffffffffffffffffffffffffeffffffffffffffffffffffffffffffffffffffffffffffffffffffff":"00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000":"0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000"
|
||||
|
||||
ecp_mod_p448_raw #2 - 1 mod fffffffffffffffffffffffffffffffffffffffffffffffffffffffeffffffffffffffffffffffffffffffffffffffffffffffffffffffff
|
||||
depends_on:MBEDTLS_ECP_DP_CURVE448_ENABLED
|
||||
ecp_mod_p_generic_raw:MBEDTLS_ECP_DP_CURVE448:"fffffffffffffffffffffffffffffffffffffffffffffffffffffffeffffffffffffffffffffffffffffffffffffffffffffffffffffffff":"00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001":"0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001"
|
||||
|
||||
ecp_mod_p448_raw #3 - fffffffffffffffffffffffffffffffffffffffffffffffffffffffefffffffffffffffffffffffffffffffffffffffffffffffffffffffe mod fffffffffffffffffffffffffffffffffffffffffffffffffffffffeffffffffffffffffffffffffffffffffffffffffffffffffffffffff
|
||||
depends_on:MBEDTLS_ECP_DP_CURVE448_ENABLED
|
||||
ecp_mod_p_generic_raw:MBEDTLS_ECP_DP_CURVE448:"fffffffffffffffffffffffffffffffffffffffffffffffffffffffeffffffffffffffffffffffffffffffffffffffffffffffffffffffff":"0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000fffffffffffffffffffffffffffffffffffffffffffffffffffffffefffffffffffffffffffffffffffffffffffffffffffffffffffffffe":"fffffffffffffffffffffffffffffffffffffffffffffffffffffffefffffffffffffffffffffffffffffffffffffffffffffffffffffffe"
|
||||
|
||||
ecp_mod_p448_raw #4 - ffffffffffffffffffffffffffffffffffffffffffffffffffffffff00000000000000000000000000000000000000000000000000000000 mod fffffffffffffffffffffffffffffffffffffffffffffffffffffffeffffffffffffffffffffffffffffffffffffffffffffffffffffffff
|
||||
depends_on:MBEDTLS_ECP_DP_CURVE448_ENABLED
|
||||
ecp_mod_p_generic_raw:MBEDTLS_ECP_DP_CURVE448:"fffffffffffffffffffffffffffffffffffffffffffffffffffffffeffffffffffffffffffffffffffffffffffffffffffffffffffffffff":"0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000ffffffffffffffffffffffffffffffffffffffffffffffffffffffff00000000000000000000000000000000000000000000000000000000":"0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001"
|
||||
|
||||
ecp_mod_p448_raw #5 - ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff mod fffffffffffffffffffffffffffffffffffffffffffffffffffffffeffffffffffffffffffffffffffffffffffffffffffffffffffffffff
|
||||
depends_on:MBEDTLS_ECP_DP_CURVE448_ENABLED
|
||||
ecp_mod_p_generic_raw:MBEDTLS_ECP_DP_CURVE448:"fffffffffffffffffffffffffffffffffffffffffffffffffffffffeffffffffffffffffffffffffffffffffffffffffffffffffffffffff":"0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff":"0000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000"
|
||||
|
||||
ecp_mod_p448_raw #6 - fffffffffffffffffffffffffffffffffffffffffffffffffffffffdfffffffffffffffffffffffffffffffffffffffffffffffffffffffd0000000000000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000004 mod fffffffffffffffffffffffffffffffffffffffffffffffffffffffeffffffffffffffffffffffffffffffffffffffffffffffffffffffff
|
||||
depends_on:MBEDTLS_ECP_DP_CURVE448_ENABLED
|
||||
ecp_mod_p_generic_raw:MBEDTLS_ECP_DP_CURVE448:"fffffffffffffffffffffffffffffffffffffffffffffffffffffffeffffffffffffffffffffffffffffffffffffffffffffffffffffffff":"fffffffffffffffffffffffffffffffffffffffffffffffffffffffdfffffffffffffffffffffffffffffffffffffffffffffffffffffffd0000000000000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000004":"0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001"
|
||||
|
||||
ecp_mod_p448_raw #7 - 74667bffe202849da9643a295a9ac6decbd4d3e2d4dec9ef83f0be4e80371eb97f81375eecc1cb6347733e847d718d733ff98ff387c56473a7a83ee0761ebfd2bd143fa9b714210c665d7435c1066932f4767f26294365b2721dea3bf63f23d0dbe53fcafb2147df5ca495fa5a91c89b mod fffffffffffffffffffffffffffffffffffffffffffffffffffffffeffffffffffffffffffffffffffffffffffffffffffffffffffffffff
|
||||
depends_on:MBEDTLS_ECP_DP_CURVE448_ENABLED
|
||||
ecp_mod_p_generic_raw:MBEDTLS_ECP_DP_CURVE448:"fffffffffffffffffffffffffffffffffffffffffffffffffffffffeffffffffffffffffffffffffffffffffffffffffffffffffffffffff":"74667bffe202849da9643a295a9ac6decbd4d3e2d4dec9ef83f0be4e80371eb97f81375eecc1cb6347733e847d718d733ff98ff387c56473a7a83ee0761ebfd2bd143fa9b714210c665d7435c1066932f4767f26294365b2721dea3bf63f23d0dbe53fcafb2147df5ca495fa5a91c89b":"10ac5599b9a5006cfc9e7f5fb3bced4e7b78a96eaabd8d05841d60381de1006bd3a1a6388c65295d7df3452e4467a935717cefdd6647eb5e"
|
||||
|
||||
ecp_mod_p448_raw #8 - 4da4daeb4f3f87777ad1f45ae9500ec9c5e2486c44a4a8f69dc8db48e86ec9c6e06f291b2a838af8d5c44a4eb3172062d08f1bb2531d6460f0caeef038c89b38a8acb5137c9260dc74e088a9b9492f258ebdbfe3eb9ac688b9d39cca91551e8259cc60b17604e4b4e73695c3e652c71a mod fffffffffffffffffffffffffffffffffffffffffffffffffffffffeffffffffffffffffffffffffffffffffffffffffffffffffffffffff
|
||||
depends_on:MBEDTLS_ECP_DP_CURVE448_ENABLED
|
||||
ecp_mod_p_generic_raw:MBEDTLS_ECP_DP_CURVE448:"fffffffffffffffffffffffffffffffffffffffffffffffffffffffeffffffffffffffffffffffffffffffffffffffffffffffffffffffff":"4da4daeb4f3f87777ad1f45ae9500ec9c5e2486c44a4a8f69dc8db48e86ec9c6e06f291b2a838af8d5c44a4eb3172062d08f1bb2531d6460f0caeef038c89b38a8acb5137c9260dc74e088a9b9492f258ebdbfe3eb9ac688b9d39cca91551e8259cc60b17604e4b4e73695c3e652c71a":"74836e8db7b6d342c8d428c224f6c8beb3bc39e513219cc51d6cdad721ae6b3ae9824d5d36aa9dd618e0b9c9eefe4d83fc6a5a6cd73906c4"
|
||||
|
||||
ecp_mod_p448_raw #9 - bc1b00d92838e766ef9b6bf2d037fe2e20b6a8464174e75a5f834da70569c018eb2b5693babb7fbb0a76c196067cfdcb11457d9cf45e2fa01d7f4275153924800600571fac3a5b263fdf57cd2c0064975c3747465cc36c270e8a35b10828d569c268a20eb78ac332e5e138e26c4454b9 mod fffffffffffffffffffffffffffffffffffffffffffffffffffffffeffffffffffffffffffffffffffffffffffffffffffffffffffffffff
|
||||
depends_on:MBEDTLS_ECP_DP_CURVE448_ENABLED
|
||||
ecp_mod_p_generic_raw:MBEDTLS_ECP_DP_CURVE448:"fffffffffffffffffffffffffffffffffffffffffffffffffffffffeffffffffffffffffffffffffffffffffffffffffffffffffffffffff":"bc1b00d92838e766ef9b6bf2d037fe2e20b6a8464174e75a5f834da70569c018eb2b5693babb7fbb0a76c196067cfdcb11457d9cf45e2fa01d7f4275153924800600571fac3a5b263fdf57cd2c0064975c3747465cc36c270e8a35b10828d569c268a20eb78ac332e5e138e26c4454b9":"9b1f044050d649e19ff2aec05721191887c9a624c02fb0e90f9c12361e482d1921ee73abb27fc1179d1761d2debe6944389b9dd9c025d201"
|
||||
|
||||
ecp_mod_p448_raw #10 - 8d2f527e72daf0a54ef25c0707e338687d1f71575653a45c49390aa51cf5192bbf67da14be11d56ba0b4a2969d8055a9f03f2d71581d8e830112ff0f0948eccaf8877acf26c377c13f719726fd70bddacb4deeec0b0c995e96e6bc4d62b47204007ee4fab105d83e85e951862f0981ae mod fffffffffffffffffffffffffffffffffffffffffffffffffffffffeffffffffffffffffffffffffffffffffffffffffffffffffffffffff
|
||||
depends_on:MBEDTLS_ECP_DP_CURVE448_ENABLED
|
||||
ecp_mod_p_generic_raw:MBEDTLS_ECP_DP_CURVE448:"fffffffffffffffffffffffffffffffffffffffffffffffffffffffeffffffffffffffffffffffffffffffffffffffffffffffffffffffff":"8d2f527e72daf0a54ef25c0707e338687d1f71575653a45c49390aa51cf5192bbf67da14be11d56ba0b4a2969d8055a9f03f2d71581d8e830112ff0f0948eccaf8877acf26c377c13f719726fd70bddacb4deeec0b0c995e96e6bc4d62b47204007ee4fab105d83e85e951862f0981ae":"3866bd37ae66a82a547e0848d73e8b28d730cf7f9a573404b5dd92bab5310508c92987076fb8a376a916bff9cba59f3fcc7c2353d0601ad7"
|
||||
|
||||
ecp_mod_p448_raw #11 - 84ae65e920a63ac1f2b64df6dff07870c9d531ae72a47403063238da1a1fe3f9d6a179fa50f96cd4aff9261aa92c0e6f17ec940639bc2ccdf572df00790813e32748dd1db4917fc09f20dbb0dcc93f0e66dfe717c17313394391b6e2e6eacb0f0bb7be72bd6d25009aeb7fa0c4169b14 mod fffffffffffffffffffffffffffffffffffffffffffffffffffffffeffffffffffffffffffffffffffffffffffffffffffffffffffffffff
|
||||
depends_on:MBEDTLS_ECP_DP_CURVE448_ENABLED
|
||||
ecp_mod_p_generic_raw:MBEDTLS_ECP_DP_CURVE448:"fffffffffffffffffffffffffffffffffffffffffffffffffffffffeffffffffffffffffffffffffffffffffffffffffffffffffffffffff":"84ae65e920a63ac1f2b64df6dff07870c9d531ae72a47403063238da1a1fe3f9d6a179fa50f96cd4aff9261aa92c0e6f17ec940639bc2ccdf572df00790813e32748dd1db4917fc09f20dbb0dcc93f0e66dfe717c17313394391b6e2e6eacb0f0bb7be72bd6d25009aeb7fa0c4169b14":"18ef8ecc90f603615daee5e0246b96bcdbf74d7cd9febb1aad00859b60415d1c3ad96b9f2a9a85da9ba15cfe306e651e257c87aa040500bd"
|
||||
|
||||
ecp_mod_p448_raw #12 - 2bb3b36f29421c4021b7379f0897246a40c270b00e893302aba9e7b823fc5ad2f58105748ed5d1b7b310b730049dd332a73fa0b26b75196cf87eb8a09b27ec714307c68c425424a1574f1eedf5b0f16cdfdb839424d201e653f53d6883ca1c107ca6e706649889c0c7f3860895bfa813 mod fffffffffffffffffffffffffffffffffffffffffffffffffffffffeffffffffffffffffffffffffffffffffffffffffffffffffffffffff
|
||||
depends_on:MBEDTLS_ECP_DP_CURVE448_ENABLED
|
||||
ecp_mod_p_generic_raw:MBEDTLS_ECP_DP_CURVE448:"fffffffffffffffffffffffffffffffffffffffffffffffffffffffeffffffffffffffffffffffffffffffffffffffffffffffffffffffff":"2bb3b36f29421c4021b7379f0897246a40c270b00e893302aba9e7b823fc5ad2f58105748ed5d1b7b310b730049dd332a73fa0b26b75196cf87eb8a09b27ec714307c68c425424a1574f1eedf5b0f16cdfdb839424d201e653f53d6883ca1c107ca6e706649889c0c7f3860895bfa813":"73e27a51e32d2a66154c0782069324a5dd71d380ba02f824a2a46c717482102872b85f1d34572567384ec2a0a9f8cda37dbc59bdacdea938"
|
||||
|
||||
ecp_mod_p448_raw #13 - af3f5d7841b1256d5c1dc12fb5a1ae519fb8883accda6559caa538a09fc9370d3a6b86a7975b54a31497024640332b0612d4050771d7b14eb6c004cc3b8367dc3f2bb31efe9934ad0809eae3ef232a32b5459d83fbc46f1aea990e94821d46063b4dbf2ca294523d74115c86188b1044 mod fffffffffffffffffffffffffffffffffffffffffffffffffffffffeffffffffffffffffffffffffffffffffffffffffffffffffffffffff
|
||||
depends_on:MBEDTLS_ECP_DP_CURVE448_ENABLED
|
||||
ecp_mod_p_generic_raw:MBEDTLS_ECP_DP_CURVE448:"fffffffffffffffffffffffffffffffffffffffffffffffffffffffeffffffffffffffffffffffffffffffffffffffffffffffffffffffff":"af3f5d7841b1256d5c1dc12fb5a1ae519fb8883accda6559caa538a09fc9370d3a6b86a7975b54a31497024640332b0612d4050771d7b14eb6c004cc3b8367dc3f2bb31efe9934ad0809eae3ef232a32b5459d83fbc46f1aea990e94821d46063b4dbf2ca294523d74115c86188b1044":"b507f6c9f951395e8ec28a217e73939687ae265f9babf9edbc67c0154acd03a066b5baa975965bd905866fc48280057e53bfc6e75507fa34"
|
||||
|
||||
ecp_mod_p448_raw #14 - 7430051376e31f5aab63ad02854efa600641b4fa37a47ce41aeffafc3b45402ac02659fe2e87d4150511baeb198ababb1a16daff3da95cd2167b75dfb948f82a8317cba01c75f67e290535d868a24b7f627f285509167d4126af8090013c3273c02c6b9586b4625b475b51096c4ad652 mod fffffffffffffffffffffffffffffffffffffffffffffffffffffffeffffffffffffffffffffffffffffffffffffffffffffffffffffffff
|
||||
depends_on:MBEDTLS_ECP_DP_CURVE448_ENABLED
|
||||
ecp_mod_p_generic_raw:MBEDTLS_ECP_DP_CURVE448:"fffffffffffffffffffffffffffffffffffffffffffffffffffffffeffffffffffffffffffffffffffffffffffffffffffffffffffffffff":"7430051376e31f5aab63ad02854efa600641b4fa37a47ce41aeffafc3b45402ac02659fe2e87d4150511baeb198ababb1a16daff3da95cd2167b75dfb948f82a8317cba01c75f67e290535d868a24b7f627f285509167d4126af8090013c3273c02c6b9586b4625b475b51096c4ad652":"3a20c031673590de0866f9ba2c25a6294f135a87f2022046d6087b20b88bc27f5db8f9e8db27b38b4a8d20e0a680d2109916a8ecc4e42e21"
|
||||
|
||||
ecp_mod_p448_raw #15 - f4ae65e920a63ac1f2b64df6dff07870c9d531ae72a47403063238da1a1fe3f9d6a179fa50f96cd4aff9261aa92c0e6f17ec940639bc2ccd0b519a16df59c53e0d49b209200f878f362ace518d5b8bfcf9cdc725e5e01c06295e8605af06932b5006d9e556d3f190e8136bf9c643d332 mod fffffffffffffffffffffffffffffffffffffffffffffffffffffffeffffffffffffffffffffffffffffffffffffffffffffffffffffffff
|
||||
depends_on:MBEDTLS_ECP_DP_CURVE448_ENABLED
|
||||
ecp_mod_p_generic_raw:MBEDTLS_ECP_DP_CURVE448:"fffffffffffffffffffffffffffffffffffffffffffffffffffffffeffffffffffffffffffffffffffffffffffffffffffffffffffffffff":"f4ae65e920a63ac1f2b64df6dff07870c9d531ae72a47403063238da1a1fe3f9d6a179fa50f96cd4aff9261aa92c0e6f17ec940639bc2ccd0b519a16df59c53e0d49b209200f878f362ace518d5b8bfcf9cdc725e5e01c06295e8605af06932b5006d9e556d3f190e8136bf9c643d332":"0ece49e2f747b4bc43afbacb8fe99e8b7301401d8a9108093fee65a9f4ae65e920a63ac1f2b64df6dff07870c9d531ae72a47403063238db"
|
||||
|
||||
ecp_mod_p448_raw #16 - 8f54f8ceacaab39e83844b40ffa9b9f15c14bc4a829e07b0829a48d422fe99a22c70501e533c91352d3d854e061b90303b08c6e33c729578 mod fffffffffffffffffffffffffffffffffffffffffffffffffffffffeffffffffffffffffffffffffffffffffffffffffffffffffffffffff
|
||||
depends_on:MBEDTLS_ECP_DP_CURVE448_ENABLED
|
||||
ecp_mod_p_generic_raw:MBEDTLS_ECP_DP_CURVE448:"fffffffffffffffffffffffffffffffffffffffffffffffffffffffeffffffffffffffffffffffffffffffffffffffffffffffffffffffff":"00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000008f54f8ceacaab39e83844b40ffa9b9f15c14bc4a829e07b0829a48d422fe99a22c70501e533c91352d3d854e061b90303b08c6e33c729578":"8f54f8ceacaab39e83844b40ffa9b9f15c14bc4a829e07b0829a48d422fe99a22c70501e533c91352d3d854e061b90303b08c6e33c729578"
|
||||
|
||||
ecp_mod_p448_raw #17 - 97eeab64ca2ce6bc5d3fd983c34c769fe89204e2e8168561867e5e15bc01bfce6a27e0dfcbf8754472154e76e4c11ab2fec3f6b32e8d4b8a mod fffffffffffffffffffffffffffffffffffffffffffffffffffffffeffffffffffffffffffffffffffffffffffffffffffffffffffffffff
|
||||
depends_on:MBEDTLS_ECP_DP_CURVE448_ENABLED
|
||||
ecp_mod_p_generic_raw:MBEDTLS_ECP_DP_CURVE448:"fffffffffffffffffffffffffffffffffffffffffffffffffffffffeffffffffffffffffffffffffffffffffffffffffffffffffffffffff":"000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000097eeab64ca2ce6bc5d3fd983c34c769fe89204e2e8168561867e5e15bc01bfce6a27e0dfcbf8754472154e76e4c11ab2fec3f6b32e8d4b8a":"97eeab64ca2ce6bc5d3fd983c34c769fe89204e2e8168561867e5e15bc01bfce6a27e0dfcbf8754472154e76e4c11ab2fec3f6b32e8d4b8a"
|
||||
|
||||
ecp_mod_p521_raw #1 0 mod 1ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
|
||||
depends_on:MBEDTLS_ECP_DP_SECP521R1_ENABLED:MBEDTLS_ECP_NIST_OPTIM:MBEDTLS_HAVE_INT32
|
||||
ecp_mod_p_generic_raw:MBEDTLS_ECP_DP_SECP521R1:"000001ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff":"00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000":"0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000"
|
||||
|
||||
ecp_mod_p521_raw #2 0 mod 1ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
|
||||
depends_on:MBEDTLS_ECP_DP_SECP521R1_ENABLED:MBEDTLS_ECP_NIST_OPTIM:MBEDTLS_HAVE_INT64
|
||||
ecp_mod_p_generic_raw:MBEDTLS_ECP_DP_SECP521R1:"00000000000001ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff":"000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000":"000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000"
|
||||
|
||||
ecp_mod_p521_raw #3 1 mod 1ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
|
||||
depends_on:MBEDTLS_ECP_DP_SECP521R1_ENABLED:MBEDTLS_ECP_NIST_OPTIM:MBEDTLS_HAVE_INT32
|
||||
ecp_mod_p_generic_raw:MBEDTLS_ECP_DP_SECP521R1:"000001ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff":"00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001":"0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001"
|
||||
|
||||
ecp_mod_p521_raw #4 1 mod 1ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
|
||||
depends_on:MBEDTLS_ECP_DP_SECP521R1_ENABLED:MBEDTLS_ECP_NIST_OPTIM:MBEDTLS_HAVE_INT64
|
||||
ecp_mod_p_generic_raw:MBEDTLS_ECP_DP_SECP521R1:"00000000000001ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff":"000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001":"000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001"
|
||||
|
||||
ecp_mod_p521_raw #5 1fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe mod 1ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
|
||||
depends_on:MBEDTLS_ECP_DP_SECP521R1_ENABLED:MBEDTLS_ECP_NIST_OPTIM:MBEDTLS_HAVE_INT32
|
||||
ecp_mod_p_generic_raw:MBEDTLS_ECP_DP_SECP521R1:"000001ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff":"0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe":"000001fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe"
|
||||
|
||||
ecp_mod_p521_raw #6 1fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe mod 1ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
|
||||
depends_on:MBEDTLS_ECP_DP_SECP521R1_ENABLED:MBEDTLS_ECP_NIST_OPTIM:MBEDTLS_HAVE_INT64
|
||||
ecp_mod_p_generic_raw:MBEDTLS_ECP_DP_SECP521R1:"00000000000001ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff":"00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe":"00000000000001fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe"
|
||||
|
||||
ecp_mod_p521_raw #7 20000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 mod 1ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
|
||||
depends_on:MBEDTLS_ECP_DP_SECP521R1_ENABLED:MBEDTLS_ECP_NIST_OPTIM:MBEDTLS_HAVE_INT32
|
||||
ecp_mod_p_generic_raw:MBEDTLS_ECP_DP_SECP521R1:"000001ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff":"00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000":"0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001"
|
||||
|
||||
ecp_mod_p521_raw #8 20000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 mod 1ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
|
||||
depends_on:MBEDTLS_ECP_DP_SECP521R1_ENABLED:MBEDTLS_ECP_NIST_OPTIM:MBEDTLS_HAVE_INT64
|
||||
ecp_mod_p_generic_raw:MBEDTLS_ECP_DP_SECP521R1:"00000000000001ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff":"000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000":"000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001"
|
||||
|
||||
ecp_mod_p521_raw #9 3fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff80000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004 mod 1ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
|
||||
depends_on:MBEDTLS_ECP_DP_SECP521R1_ENABLED:MBEDTLS_ECP_NIST_OPTIM:MBEDTLS_HAVE_INT32
|
||||
ecp_mod_p_generic_raw:MBEDTLS_ECP_DP_SECP521R1:"000001ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff":"000000000003fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff80000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004":"0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001"
|
||||
|
||||
ecp_mod_p521_raw #10 3fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff80000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004 mod 1ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
|
||||
depends_on:MBEDTLS_ECP_DP_SECP521R1_ENABLED:MBEDTLS_ECP_NIST_OPTIM:MBEDTLS_HAVE_INT64
|
||||
ecp_mod_p_generic_raw:MBEDTLS_ECP_DP_SECP521R1:"00000000000001ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff":"0000000000000000000000000003fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff80000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004":"000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001"
|
||||
|
||||
ecp_mod_p521_raw #11 1efffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff000001ef0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f000000 mod 1ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
|
||||
depends_on:MBEDTLS_ECP_DP_SECP521R1_ENABLED:MBEDTLS_ECP_NIST_OPTIM:MBEDTLS_HAVE_INT32
|
||||
ecp_mod_p_generic_raw:MBEDTLS_ECP_DP_SECP521R1:"000001ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff":"000000000001efffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff000001ef0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f000000":"000000e70000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000e800001"
|
||||
|
||||
ecp_mod_p521_raw #12 1efffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff000001ef0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f000000 mod 1ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
|
||||
depends_on:MBEDTLS_ECP_DP_SECP521R1_ENABLED:MBEDTLS_ECP_NIST_OPTIM:MBEDTLS_HAVE_INT64
|
||||
ecp_mod_p_generic_raw:MBEDTLS_ECP_DP_SECP521R1:"00000000000001ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff":"0000000000000000000000000001efffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff000001ef0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f000000":"00000000000000e70000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000e800001"
|
||||
|
||||
ecp_mod_p521_raw #13 3cc2e82523e86feac7eb7dc38f519b91751dacdbd47d364be8049a372db8f6e405d93ffed9235288bc781ae66267594c9c9500925e4749b575bd13653f8dd9b1f282e4067c3584ee207f8da94e3e8ab73738fcf1822ffbc6887782b491044d5e341245c6e433715ba2bdd177219d30e7a269fd95bafc8f2a4d27bdcf4bb99f4bea973 mod 1ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
|
||||
depends_on:MBEDTLS_ECP_DP_SECP521R1_ENABLED:MBEDTLS_ECP_NIST_OPTIM:MBEDTLS_HAVE_INT32
|
||||
ecp_mod_p_generic_raw:MBEDTLS_ECP_DP_SECP521R1:"000001ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff":"000000000003cc2e82523e86feac7eb7dc38f519b91751dacdbd47d364be8049a372db8f6e405d93ffed9235288bc781ae66267594c9c9500925e4749b575bd13653f8dd9b1f282e4067c3584ee207f8da94e3e8ab73738fcf1822ffbc6887782b491044d5e341245c6e433715ba2bdd177219d30e7a269fd95bafc8f2a4d27bdcf4bb99f4bea973":"0000001457a8ec7792615e3836830063384fff38bc7f01a3a61ae6b8501ac9b29d9a6153266e3a00304e71c0d8494ce649448b84816042bb2cf27e29c58fe596638c3908"
|
||||
|
||||
ecp_mod_p521_raw #14 3cc2e82523e86feac7eb7dc38f519b91751dacdbd47d364be8049a372db8f6e405d93ffed9235288bc781ae66267594c9c9500925e4749b575bd13653f8dd9b1f282e4067c3584ee207f8da94e3e8ab73738fcf1822ffbc6887782b491044d5e341245c6e433715ba2bdd177219d30e7a269fd95bafc8f2a4d27bdcf4bb99f4bea973 mod 1ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
|
||||
depends_on:MBEDTLS_ECP_DP_SECP521R1_ENABLED:MBEDTLS_ECP_NIST_OPTIM:MBEDTLS_HAVE_INT64
|
||||
ecp_mod_p_generic_raw:MBEDTLS_ECP_DP_SECP521R1:"00000000000001ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff":"0000000000000000000000000003cc2e82523e86feac7eb7dc38f519b91751dacdbd47d364be8049a372db8f6e405d93ffed9235288bc781ae66267594c9c9500925e4749b575bd13653f8dd9b1f282e4067c3584ee207f8da94e3e8ab73738fcf1822ffbc6887782b491044d5e341245c6e433715ba2bdd177219d30e7a269fd95bafc8f2a4d27bdcf4bb99f4bea973":"000000000000001457a8ec7792615e3836830063384fff38bc7f01a3a61ae6b8501ac9b29d9a6153266e3a00304e71c0d8494ce649448b84816042bb2cf27e29c58fe596638c3908"
|
||||
|
||||
ecp_mod_p521_raw #15 17052829e07b0829a48d422fe99a22c70501e533c91352d3d854e061b90303b08c6e33c7295782d6c797f8f7d9b782a1be9cd8697bbd0e2520e33e44c50556c71c4a66148a86fe8624fab5186ee32ee8d7ee9770348a05d300cb90706a045defc044a09325626e6b58de744ab6cce80877b6f71e1f6d2ef8acd128b4f2fc15f3f57eb mod 1ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
|
||||
depends_on:MBEDTLS_ECP_DP_SECP521R1_ENABLED:MBEDTLS_ECP_NIST_OPTIM:MBEDTLS_HAVE_INT32
|
||||
ecp_mod_p_generic_raw:MBEDTLS_ECP_DP_SECP521R1:"000001ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff":"0000000000017052829e07b0829a48d422fe99a22c70501e533c91352d3d854e061b90303b08c6e33c7295782d6c797f8f7d9b782a1be9cd8697bbd0e2520e33e44c50556c71c4a66148a86fe8624fab5186ee32ee8d7ee9770348a05d300cb90706a045defc044a09325626e6b58de744ab6cce80877b6f71e1f6d2ef8acd128b4f2fc15f3f57eb":"0000015e8a89f773c0a39ccfbb986d7fbfa3b711862ce6e8f7c6ab7bae09ae0df71988ad7ad08f71a2cc442404732b9c3c9c896458a542b0d7fbf619a54155e989f590cd"
|
||||
|
||||
ecp_mod_p521_raw #16 17052829e07b0829a48d422fe99a22c70501e533c91352d3d854e061b90303b08c6e33c7295782d6c797f8f7d9b782a1be9cd8697bbd0e2520e33e44c50556c71c4a66148a86fe8624fab5186ee32ee8d7ee9770348a05d300cb90706a045defc044a09325626e6b58de744ab6cce80877b6f71e1f6d2ef8acd128b4f2fc15f3f57eb mod 1ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
|
||||
depends_on:MBEDTLS_ECP_DP_SECP521R1_ENABLED:MBEDTLS_ECP_NIST_OPTIM:MBEDTLS_HAVE_INT64
|
||||
ecp_mod_p_generic_raw:MBEDTLS_ECP_DP_SECP521R1:"00000000000001ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff":"00000000000000000000000000017052829e07b0829a48d422fe99a22c70501e533c91352d3d854e061b90303b08c6e33c7295782d6c797f8f7d9b782a1be9cd8697bbd0e2520e33e44c50556c71c4a66148a86fe8624fab5186ee32ee8d7ee9770348a05d300cb90706a045defc044a09325626e6b58de744ab6cce80877b6f71e1f6d2ef8acd128b4f2fc15f3f57eb":"000000000000015e8a89f773c0a39ccfbb986d7fbfa3b711862ce6e8f7c6ab7bae09ae0df71988ad7ad08f71a2cc442404732b9c3c9c896458a542b0d7fbf619a54155e989f590cd"
|
||||
|
||||
ecp_mod_p521_raw #17 21f15a7a83ee0761ebfd2bd143fa9b714210c665d7435c1066932f4767f26294365b2721dea3bf63f23d0dbe53fcafb2147df5ca495fa5a91c89b97eeab64ca2ce6bc5d3fd983c34c769fe89204e2e8168561867e5e15bc01bfce6a27e0dfcbf8754472154e76e4c11ab2fec3f6b32e8d4b8a8f54f8ceacaab39e83844b40ffa9b9f1 mod 1ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
|
||||
depends_on:MBEDTLS_ECP_DP_SECP521R1_ENABLED:MBEDTLS_ECP_NIST_OPTIM:MBEDTLS_HAVE_INT32
|
||||
ecp_mod_p_generic_raw:MBEDTLS_ECP_DP_SECP521R1:"000001ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff":"0000000000021f15a7a83ee0761ebfd2bd143fa9b714210c665d7435c1066932f4767f26294365b2721dea3bf63f23d0dbe53fcafb2147df5ca495fa5a91c89b97eeab64ca2ce6bc5d3fd983c34c769fe89204e2e8168561867e5e15bc01bfce6a27e0dfcbf8754472154e76e4c11ab2fec3f6b32e8d4b8a8f54f8ceacaab39e83844b40ffa9b9f1":"000001cbe813ada3338785ffd1f08f02bcf20f720cb18ccfd6e2430303a21c1f5f0d16f74b4e5d6c02bc3a44e731e953140adc2e7f034b19a9d7fc82d1504296b20ed064"
|
||||
|
||||
ecp_mod_p521_raw #18 21f15a7a83ee0761ebfd2bd143fa9b714210c665d7435c1066932f4767f26294365b2721dea3bf63f23d0dbe53fcafb2147df5ca495fa5a91c89b97eeab64ca2ce6bc5d3fd983c34c769fe89204e2e8168561867e5e15bc01bfce6a27e0dfcbf8754472154e76e4c11ab2fec3f6b32e8d4b8a8f54f8ceacaab39e83844b40ffa9b9f1 mod 1ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
|
||||
depends_on:MBEDTLS_ECP_DP_SECP521R1_ENABLED:MBEDTLS_ECP_NIST_OPTIM:MBEDTLS_HAVE_INT64
|
||||
ecp_mod_p_generic_raw:MBEDTLS_ECP_DP_SECP521R1:"00000000000001ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff":"00000000000000000000000000021f15a7a83ee0761ebfd2bd143fa9b714210c665d7435c1066932f4767f26294365b2721dea3bf63f23d0dbe53fcafb2147df5ca495fa5a91c89b97eeab64ca2ce6bc5d3fd983c34c769fe89204e2e8168561867e5e15bc01bfce6a27e0dfcbf8754472154e76e4c11ab2fec3f6b32e8d4b8a8f54f8ceacaab39e83844b40ffa9b9f1":"00000000000001cbe813ada3338785ffd1f08f02bcf20f720cb18ccfd6e2430303a21c1f5f0d16f74b4e5d6c02bc3a44e731e953140adc2e7f034b19a9d7fc82d1504296b20ed064"
|
||||
|
||||
ecp_mod_p521_raw #19 381bc2a838af8d5c44a4eb3172062d08f1bb2531d6460f0caeef038c89b38a8acb5137c9260dc74e088a9b9492f258ebdbfe3eb9ac688b9d39cca91551e8259cc60b17604e4b4e73695c3e652c71a74667bffe202849da9643a295a9ac6decbd4d3e2d4dec9ef83f0be4e80371eb97f81375eecc1cb6347733e847d718d733ff98ff3 mod 1ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
|
||||
depends_on:MBEDTLS_ECP_DP_SECP521R1_ENABLED:MBEDTLS_ECP_NIST_OPTIM:MBEDTLS_HAVE_INT32
|
||||
ecp_mod_p_generic_raw:MBEDTLS_ECP_DP_SECP521R1:"000001ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff":"00000000000381bc2a838af8d5c44a4eb3172062d08f1bb2531d6460f0caeef038c89b38a8acb5137c9260dc74e088a9b9492f258ebdbfe3eb9ac688b9d39cca91551e8259cc60b17604e4b4e73695c3e652c71a74667bffe202849da9643a295a9ac6decbd4d3e2d4dec9ef83f0be4e80371eb97f81375eecc1cb6347733e847d718d733ff98ff3":"00000072541a267a63a177e90dac52aaa5cec38dbb2c134fd9dc9fa0d2b72b2c68292a3d5e9d131ff22b2e92d513c3511248963edeb798c68bd02852e2ba380281267624"
|
||||
|
||||
ecp_mod_p521_raw #20 381bc2a838af8d5c44a4eb3172062d08f1bb2531d6460f0caeef038c89b38a8acb5137c9260dc74e088a9b9492f258ebdbfe3eb9ac688b9d39cca91551e8259cc60b17604e4b4e73695c3e652c71a74667bffe202849da9643a295a9ac6decbd4d3e2d4dec9ef83f0be4e80371eb97f81375eecc1cb6347733e847d718d733ff98ff3 mod 1ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
|
||||
depends_on:MBEDTLS_ECP_DP_SECP521R1_ENABLED:MBEDTLS_ECP_NIST_OPTIM:MBEDTLS_HAVE_INT64
|
||||
ecp_mod_p_generic_raw:MBEDTLS_ECP_DP_SECP521R1:"00000000000001ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff":"000000000000000000000000000381bc2a838af8d5c44a4eb3172062d08f1bb2531d6460f0caeef038c89b38a8acb5137c9260dc74e088a9b9492f258ebdbfe3eb9ac688b9d39cca91551e8259cc60b17604e4b4e73695c3e652c71a74667bffe202849da9643a295a9ac6decbd4d3e2d4dec9ef83f0be4e80371eb97f81375eecc1cb6347733e847d718d733ff98ff3":"0000000000000072541a267a63a177e90dac52aaa5cec38dbb2c134fd9dc9fa0d2b72b2c68292a3d5e9d131ff22b2e92d513c3511248963edeb798c68bd02852e2ba380281267624"
|
||||
|
||||
ecp_mod_p521_raw #21 34816c8c69069134bccd3e1cf4f589f8e4ce0af29d115ef24bd625dd961e6830b54fa7d28f93435339774bb1e386c4fd5079e681b8f5896838b769da59b74a6c3181c81e220df848b1df78feb994a81167346d4c0dca8b4c9e755cc9c3adcf515a8234da4daeb4f3f87777ad1f45ae9500ec9c5e2486c44a4a8f69dc8db48e86ec9c6 mod 1ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
|
||||
depends_on:MBEDTLS_ECP_DP_SECP521R1_ENABLED:MBEDTLS_ECP_NIST_OPTIM:MBEDTLS_HAVE_INT32
|
||||
ecp_mod_p_generic_raw:MBEDTLS_ECP_DP_SECP521R1:"000001ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff":"0000000000034816c8c69069134bccd3e1cf4f589f8e4ce0af29d115ef24bd625dd961e6830b54fa7d28f93435339774bb1e386c4fd5079e681b8f5896838b769da59b74a6c3181c81e220df848b1df78feb994a81167346d4c0dca8b4c9e755cc9c3adcf515a8234da4daeb4f3f87777ad1f45ae9500ec9c5e2486c44a4a8f69dc8db48e86ec9c6":"000001c08d468427b914c3ddf9dc80f22d663a6d451871913fc179b47dcb278de8572dcdcae36f67e95a2143352f83771f77f94d95165633f0efeabc5917ae16a2c22b52"
|
||||
|
||||
ecp_mod_p521_raw #22 34816c8c69069134bccd3e1cf4f589f8e4ce0af29d115ef24bd625dd961e6830b54fa7d28f93435339774bb1e386c4fd5079e681b8f5896838b769da59b74a6c3181c81e220df848b1df78feb994a81167346d4c0dca8b4c9e755cc9c3adcf515a8234da4daeb4f3f87777ad1f45ae9500ec9c5e2486c44a4a8f69dc8db48e86ec9c6 mod 1ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
|
||||
depends_on:MBEDTLS_ECP_DP_SECP521R1_ENABLED:MBEDTLS_ECP_NIST_OPTIM:MBEDTLS_HAVE_INT64
|
||||
ecp_mod_p_generic_raw:MBEDTLS_ECP_DP_SECP521R1:"00000000000001ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff":"00000000000000000000000000034816c8c69069134bccd3e1cf4f589f8e4ce0af29d115ef24bd625dd961e6830b54fa7d28f93435339774bb1e386c4fd5079e681b8f5896838b769da59b74a6c3181c81e220df848b1df78feb994a81167346d4c0dca8b4c9e755cc9c3adcf515a8234da4daeb4f3f87777ad1f45ae9500ec9c5e2486c44a4a8f69dc8db48e86ec9c6":"00000000000001c08d468427b914c3ddf9dc80f22d663a6d451871913fc179b47dcb278de8572dcdcae36f67e95a2143352f83771f77f94d95165633f0efeabc5917ae16a2c22b52"
|
||||
|
||||
ecp_mod_p521_raw #23 397846c4454b90f756132e16dce72f18e859835e1f291d322a7353ead4efe440e2b4fda9c025a22f1a83185b98f5fc11e60de1b343f52ea748db9e020307aaeb6db2c3a038a709779ac1f45e9dd320c855fdfa7251af0930cdbd30f0ad2a81b2d19a2beaa14a7ff3fe32a30ffc4eed0a7bd04e85bfcdd0227eeb7b9d7d01f5769da05 mod 1ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
|
||||
depends_on:MBEDTLS_ECP_DP_SECP521R1_ENABLED:MBEDTLS_ECP_NIST_OPTIM:MBEDTLS_HAVE_INT32
|
||||
ecp_mod_p_generic_raw:MBEDTLS_ECP_DP_SECP521R1:"000001ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff":"00000000000397846c4454b90f756132e16dce72f18e859835e1f291d322a7353ead4efe440e2b4fda9c025a22f1a83185b98f5fc11e60de1b343f52ea748db9e020307aaeb6db2c3a038a709779ac1f45e9dd320c855fdfa7251af0930cdbd30f0ad2a81b2d19a2beaa14a7ff3fe32a30ffc4eed0a7bd04e85bfcdd0227eeb7b9d7d01f5769da05":"000000f7fc39ac9af40166cfdf5a941945fe272273400be9dbf66d26a9aa294f9a4f20b8669762a92c515bfe49c2a1b680884c35576996fcab9d28fe96c7e03794c13573"
|
||||
|
||||
ecp_mod_p521_raw #24 397846c4454b90f756132e16dce72f18e859835e1f291d322a7353ead4efe440e2b4fda9c025a22f1a83185b98f5fc11e60de1b343f52ea748db9e020307aaeb6db2c3a038a709779ac1f45e9dd320c855fdfa7251af0930cdbd30f0ad2a81b2d19a2beaa14a7ff3fe32a30ffc4eed0a7bd04e85bfcdd0227eeb7b9d7d01f5769da05 mod 1ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
|
||||
depends_on:MBEDTLS_ECP_DP_SECP521R1_ENABLED:MBEDTLS_ECP_NIST_OPTIM:MBEDTLS_HAVE_INT64
|
||||
ecp_mod_p_generic_raw:MBEDTLS_ECP_DP_SECP521R1:"00000000000001ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff":"000000000000000000000000000397846c4454b90f756132e16dce72f18e859835e1f291d322a7353ead4efe440e2b4fda9c025a22f1a83185b98f5fc11e60de1b343f52ea748db9e020307aaeb6db2c3a038a709779ac1f45e9dd320c855fdfa7251af0930cdbd30f0ad2a81b2d19a2beaa14a7ff3fe32a30ffc4eed0a7bd04e85bfcdd0227eeb7b9d7d01f5769da05":"00000000000000f7fc39ac9af40166cfdf5a941945fe272273400be9dbf66d26a9aa294f9a4f20b8669762a92c515bfe49c2a1b680884c35576996fcab9d28fe96c7e03794c13573"
|
||||
|
||||
ecp_mod_p521_raw #25 2c3296e6bc4d62b47204007ee4fab105d83e85e951862f0981aebc1b00d92838e766ef9b6bf2d037fe2e20b6a8464174e75a5f834da70569c018eb2b5693babb7fbb0a76c196067cfdcb11457d9cf45e2fa01d7f4275153924800600571fac3a5b263fdf57cd2c0064975c3747465cc36c270e8a35b10828d569c268a20eb78ac332 mod 1ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
|
||||
depends_on:MBEDTLS_ECP_DP_SECP521R1_ENABLED:MBEDTLS_ECP_NIST_OPTIM:MBEDTLS_HAVE_INT32
|
||||
ecp_mod_p_generic_raw:MBEDTLS_ECP_DP_SECP521R1:"000001ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff":"0000000000002c3296e6bc4d62b47204007ee4fab105d83e85e951862f0981aebc1b00d92838e766ef9b6bf2d037fe2e20b6a8464174e75a5f834da70569c018eb2b5693babb7fbb0a76c196067cfdcb11457d9cf45e2fa01d7f4275153924800600571fac3a5b263fdf57cd2c0064975c3747465cc36c270e8a35b10828d569c268a20eb78ac332":"000001d123c234f42d2e58041345bd0f71b6b28c3cc2371dd850a940dd5e64a018ce7799f3572583256880967347a29a7fe4269abbb9f757dbab8a49cede37ba016820f1"
|
||||
|
||||
ecp_mod_p521_raw #26 2c3296e6bc4d62b47204007ee4fab105d83e85e951862f0981aebc1b00d92838e766ef9b6bf2d037fe2e20b6a8464174e75a5f834da70569c018eb2b5693babb7fbb0a76c196067cfdcb11457d9cf45e2fa01d7f4275153924800600571fac3a5b263fdf57cd2c0064975c3747465cc36c270e8a35b10828d569c268a20eb78ac332 mod 1ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
|
||||
depends_on:MBEDTLS_ECP_DP_SECP521R1_ENABLED:MBEDTLS_ECP_NIST_OPTIM:MBEDTLS_HAVE_INT64
|
||||
ecp_mod_p_generic_raw:MBEDTLS_ECP_DP_SECP521R1:"00000000000001ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff":"00000000000000000000000000002c3296e6bc4d62b47204007ee4fab105d83e85e951862f0981aebc1b00d92838e766ef9b6bf2d037fe2e20b6a8464174e75a5f834da70569c018eb2b5693babb7fbb0a76c196067cfdcb11457d9cf45e2fa01d7f4275153924800600571fac3a5b263fdf57cd2c0064975c3747465cc36c270e8a35b10828d569c268a20eb78ac332":"00000000000001d123c234f42d2e58041345bd0f71b6b28c3cc2371dd850a940dd5e64a018ce7799f3572583256880967347a29a7fe4269abbb9f757dbab8a49cede37ba016820f1"
|
||||
|
||||
ecp_mod_p521_raw #27 9d23b4917fc09f20dbb0dcc93f0e66dfe717c17313394391b6e2e6eacb0f0bb7be72bd6d25009aeb7fa0c4169b148d2f527e72daf0a54ef25c0707e338687d1f71575653a45c49390aa51cf5192bbf67da14be11d56ba0b4a2969d8055a9f03f2d71581d8e830112ff0f0948eccaf8877acf26c377c13f719726fd70bddacb4deeec mod 1ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
|
||||
depends_on:MBEDTLS_ECP_DP_SECP521R1_ENABLED:MBEDTLS_ECP_NIST_OPTIM:MBEDTLS_HAVE_INT32
|
||||
ecp_mod_p_generic_raw:MBEDTLS_ECP_DP_SECP521R1:"000001ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff":"0000000000009d23b4917fc09f20dbb0dcc93f0e66dfe717c17313394391b6e2e6eacb0f0bb7be72bd6d25009aeb7fa0c4169b148d2f527e72daf0a54ef25c0707e338687d1f71575653a45c49390aa51cf5192bbf67da14be11d56ba0b4a2969d8055a9f03f2d71581d8e830112ff0f0948eccaf8877acf26c377c13f719726fd70bddacb4deeec":"000001a5e82ded1c29889b12f5637dcb469b4a0849f28ef53d566b720ef3cb0f77c50950917c4515816074ced9aaf81882ce127865fce5399219105500f4af76ff8c7ea4"
|
||||
|
||||
ecp_mod_p521_raw #28 9d23b4917fc09f20dbb0dcc93f0e66dfe717c17313394391b6e2e6eacb0f0bb7be72bd6d25009aeb7fa0c4169b148d2f527e72daf0a54ef25c0707e338687d1f71575653a45c49390aa51cf5192bbf67da14be11d56ba0b4a2969d8055a9f03f2d71581d8e830112ff0f0948eccaf8877acf26c377c13f719726fd70bddacb4deeec mod 1ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
|
||||
depends_on:MBEDTLS_ECP_DP_SECP521R1_ENABLED:MBEDTLS_ECP_NIST_OPTIM:MBEDTLS_HAVE_INT64
|
||||
ecp_mod_p_generic_raw:MBEDTLS_ECP_DP_SECP521R1:"00000000000001ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff":"00000000000000000000000000009d23b4917fc09f20dbb0dcc93f0e66dfe717c17313394391b6e2e6eacb0f0bb7be72bd6d25009aeb7fa0c4169b148d2f527e72daf0a54ef25c0707e338687d1f71575653a45c49390aa51cf5192bbf67da14be11d56ba0b4a2969d8055a9f03f2d71581d8e830112ff0f0948eccaf8877acf26c377c13f719726fd70bddacb4deeec":"00000000000001a5e82ded1c29889b12f5637dcb469b4a0849f28ef53d566b720ef3cb0f77c50950917c4515816074ced9aaf81882ce127865fce5399219105500f4af76ff8c7ea4"
|
||||
|
||||
ecp_mod_p521_raw #29 12b84ae65e920a63ac1f2b64df6dff07870c9d531ae72a47403063238da1a1fe3f9d6a179fa50f96cd4aff9261aa92c0e6f17ec940639bc2ccdf572df00790813e3 mod 1ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
|
||||
depends_on:MBEDTLS_ECP_DP_SECP521R1_ENABLED:MBEDTLS_ECP_NIST_OPTIM:MBEDTLS_HAVE_INT32
|
||||
ecp_mod_p_generic_raw:MBEDTLS_ECP_DP_SECP521R1:"000001ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff":"00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000012b84ae65e920a63ac1f2b64df6dff07870c9d531ae72a47403063238da1a1fe3f9d6a179fa50f96cd4aff9261aa92c0e6f17ec940639bc2ccdf572df00790813e3":"0000012b84ae65e920a63ac1f2b64df6dff07870c9d531ae72a47403063238da1a1fe3f9d6a179fa50f96cd4aff9261aa92c0e6f17ec940639bc2ccdf572df00790813e3"
|
||||
|
||||
ecp_mod_p521_raw #30 12b84ae65e920a63ac1f2b64df6dff07870c9d531ae72a47403063238da1a1fe3f9d6a179fa50f96cd4aff9261aa92c0e6f17ec940639bc2ccdf572df00790813e3 mod 1ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
|
||||
depends_on:MBEDTLS_ECP_DP_SECP521R1_ENABLED:MBEDTLS_ECP_NIST_OPTIM:MBEDTLS_HAVE_INT64
|
||||
ecp_mod_p_generic_raw:MBEDTLS_ECP_DP_SECP521R1:"00000000000001ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff":"000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000012b84ae65e920a63ac1f2b64df6dff07870c9d531ae72a47403063238da1a1fe3f9d6a179fa50f96cd4aff9261aa92c0e6f17ec940639bc2ccdf572df00790813e3":"000000000000012b84ae65e920a63ac1f2b64df6dff07870c9d531ae72a47403063238da1a1fe3f9d6a179fa50f96cd4aff9261aa92c0e6f17ec940639bc2ccdf572df00790813e3"
|
||||
|
||||
ecp_mod_p521_raw #31 166049dd332a73fa0b26b75196cf87eb8a09b27ec714307c68c425424a1574f1eedf5b0f16cdfdb839424d201e653f53d6883ca1c107ca6e706649889c0c7f38608 mod 1ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
|
||||
depends_on:MBEDTLS_ECP_DP_SECP521R1_ENABLED:MBEDTLS_ECP_NIST_OPTIM:MBEDTLS_HAVE_INT32
|
||||
ecp_mod_p_generic_raw:MBEDTLS_ECP_DP_SECP521R1:"000001ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff":"000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000166049dd332a73fa0b26b75196cf87eb8a09b27ec714307c68c425424a1574f1eedf5b0f16cdfdb839424d201e653f53d6883ca1c107ca6e706649889c0c7f38608":"00000166049dd332a73fa0b26b75196cf87eb8a09b27ec714307c68c425424a1574f1eedf5b0f16cdfdb839424d201e653f53d6883ca1c107ca6e706649889c0c7f38608"
|
||||
|
||||
ecp_mod_p521_raw #32 166049dd332a73fa0b26b75196cf87eb8a09b27ec714307c68c425424a1574f1eedf5b0f16cdfdb839424d201e653f53d6883ca1c107ca6e706649889c0c7f38608 mod 1ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
|
||||
depends_on:MBEDTLS_ECP_DP_SECP521R1_ENABLED:MBEDTLS_ECP_NIST_OPTIM:MBEDTLS_HAVE_INT64
|
||||
ecp_mod_p_generic_raw:MBEDTLS_ECP_DP_SECP521R1:"00000000000001ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff":"0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000166049dd332a73fa0b26b75196cf87eb8a09b27ec714307c68c425424a1574f1eedf5b0f16cdfdb839424d201e653f53d6883ca1c107ca6e706649889c0c7f38608":"0000000000000166049dd332a73fa0b26b75196cf87eb8a09b27ec714307c68c425424a1574f1eedf5b0f16cdfdb839424d201e653f53d6883ca1c107ca6e706649889c0c7f38608"
|
||||
|
||||
# End of automatically generated file.
|
||||
89
vendor/mbedtls/tests/suites/test_suite_entropy.data
vendored
Normal file
89
vendor/mbedtls/tests/suites/test_suite_entropy.data
vendored
Normal file
@@ -0,0 +1,89 @@
|
||||
Entropy init-free-free
|
||||
entropy_init_free:0
|
||||
|
||||
Entropy init-free-init-free
|
||||
entropy_init_free:1
|
||||
|
||||
Entropy: count default sources
|
||||
entropy_count_sources:
|
||||
|
||||
Create NV seed_file
|
||||
nv_seed_file_create:
|
||||
|
||||
Entropy write/update seed file: good
|
||||
entropy_seed_file:"../framework/data_files/entropy_seed":0
|
||||
|
||||
Entropy write/update seed file: nonexistent
|
||||
entropy_seed_file:"no_such_dir/file":MBEDTLS_ERR_ENTROPY_FILE_IO_ERROR
|
||||
|
||||
Entropy write/update seed file: base NV seed file
|
||||
entropy_write_base_seed_file:0
|
||||
|
||||
Entropy no sources
|
||||
entropy_no_sources:
|
||||
|
||||
Entropy too many sources
|
||||
entropy_too_many_sources:
|
||||
|
||||
Entropy output length: 0
|
||||
entropy_func_len:0:0
|
||||
|
||||
Entropy output length: 1
|
||||
entropy_func_len:1:0
|
||||
|
||||
Entropy output length: 2
|
||||
entropy_func_len:2:0
|
||||
|
||||
Entropy output length: 31
|
||||
entropy_func_len:31:0
|
||||
|
||||
Entropy output length: 65 > BLOCK_SIZE
|
||||
entropy_func_len:65:MBEDTLS_ERR_ENTROPY_SOURCE_FAILED
|
||||
|
||||
Entropy failing source
|
||||
entropy_source_fail:"../framework/data_files/entropy_seed"
|
||||
|
||||
Entropy threshold: 16=2*8
|
||||
entropy_threshold:16:2:8
|
||||
|
||||
Entropy threshold: 32=1*32
|
||||
entropy_threshold:32:1:32
|
||||
|
||||
Entropy threshold: 0* never reaches the threshold
|
||||
entropy_threshold:16:0:MBEDTLS_ERR_ENTROPY_SOURCE_FAILED
|
||||
|
||||
Entropy threshold: 1024 never reached
|
||||
entropy_threshold:1024:1:MBEDTLS_ERR_ENTROPY_SOURCE_FAILED
|
||||
|
||||
Entropy calls: no strong
|
||||
entropy_calls:MBEDTLS_ENTROPY_SOURCE_WEAK:MBEDTLS_ENTROPY_SOURCE_WEAK:1:MBEDTLS_ENTROPY_BLOCK_SIZE:MBEDTLS_ERR_ENTROPY_NO_STRONG_SOURCE
|
||||
|
||||
Entropy calls: 1 strong, 1*BLOCK_SIZE
|
||||
entropy_calls:MBEDTLS_ENTROPY_SOURCE_STRONG:MBEDTLS_ENTROPY_SOURCE_WEAK:1:MBEDTLS_ENTROPY_BLOCK_SIZE:1
|
||||
|
||||
Entropy calls: 1 strong, 2*(BLOCK_SIZE/2)
|
||||
entropy_calls:MBEDTLS_ENTROPY_SOURCE_STRONG:MBEDTLS_ENTROPY_SOURCE_WEAK:1:(MBEDTLS_ENTROPY_BLOCK_SIZE+1)/2:2
|
||||
|
||||
Entropy calls: 1 strong, BLOCK_SIZE*1
|
||||
entropy_calls:MBEDTLS_ENTROPY_SOURCE_STRONG:MBEDTLS_ENTROPY_SOURCE_WEAK:1:1:MBEDTLS_ENTROPY_BLOCK_SIZE
|
||||
|
||||
Entropy calls: 1 strong, 2*BLOCK_SIZE to reach threshold
|
||||
entropy_calls:MBEDTLS_ENTROPY_SOURCE_STRONG:MBEDTLS_ENTROPY_SOURCE_WEAK:MBEDTLS_ENTROPY_BLOCK_SIZE+1:MBEDTLS_ENTROPY_BLOCK_SIZE:2
|
||||
|
||||
Entropy calls: 2 strong, BLOCK_SIZE/2 each
|
||||
entropy_calls:MBEDTLS_ENTROPY_SOURCE_STRONG:MBEDTLS_ENTROPY_SOURCE_WEAK:(MBEDTLS_ENTROPY_BLOCK_SIZE+1)/2:(MBEDTLS_ENTROPY_BLOCK_SIZE+1)/2:2
|
||||
|
||||
Check NV seed standard IO
|
||||
entropy_nv_seed_std_io:
|
||||
|
||||
Check NV seed manually #1
|
||||
entropy_nv_seed:"00112233445566778899AABBCCDDEEFF00112233445566778899AABBCCDDEEFF00112233445566778899AABBCCDDEEFF00112233445566778899AABBCCDDEEFF"
|
||||
|
||||
Check NV seed manually #2
|
||||
entropy_nv_seed:"00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000"
|
||||
|
||||
Check NV seed manually #3
|
||||
entropy_nv_seed:"ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff"
|
||||
|
||||
Entropy self test
|
||||
entropy_selftest:0
|
||||
590
vendor/mbedtls/tests/suites/test_suite_entropy.function
vendored
Normal file
590
vendor/mbedtls/tests/suites/test_suite_entropy.function
vendored
Normal file
@@ -0,0 +1,590 @@
|
||||
/* BEGIN_HEADER */
|
||||
#include "mbedtls/entropy.h"
|
||||
#include "entropy_poll.h"
|
||||
#include "mbedtls/md.h"
|
||||
#include "string.h"
|
||||
|
||||
typedef enum {
|
||||
DUMMY_CONSTANT_LENGTH, /* Output context->length bytes */
|
||||
DUMMY_REQUESTED_LENGTH, /* Output whatever length was requested */
|
||||
DUMMY_FAIL, /* Return an error code */
|
||||
} entropy_dummy_instruction;
|
||||
|
||||
typedef struct {
|
||||
entropy_dummy_instruction instruction;
|
||||
size_t length; /* Length to return for DUMMY_CONSTANT_LENGTH */
|
||||
size_t calls; /* Incremented at each call */
|
||||
} entropy_dummy_context;
|
||||
|
||||
/*
|
||||
* Dummy entropy source
|
||||
*
|
||||
* If data is NULL, write exactly the requested length.
|
||||
* Otherwise, write the length indicated by data or error if negative
|
||||
*/
|
||||
static int entropy_dummy_source(void *arg, unsigned char *output,
|
||||
size_t len, size_t *olen)
|
||||
{
|
||||
entropy_dummy_context *context = arg;
|
||||
++context->calls;
|
||||
|
||||
switch (context->instruction) {
|
||||
case DUMMY_CONSTANT_LENGTH:
|
||||
*olen = context->length;
|
||||
break;
|
||||
case DUMMY_REQUESTED_LENGTH:
|
||||
*olen = len;
|
||||
break;
|
||||
case DUMMY_FAIL:
|
||||
return MBEDTLS_ERR_ENTROPY_SOURCE_FAILED;
|
||||
}
|
||||
|
||||
memset(output, 0x2a, *olen);
|
||||
return 0;
|
||||
}
|
||||
|
||||
/*
|
||||
* Ability to clear entropy sources to allow testing with just predefined
|
||||
* entropy sources. This function or tests depending on it might break if there
|
||||
* are internal changes to how entropy sources are registered.
|
||||
*
|
||||
* To be called immediately after mbedtls_entropy_init().
|
||||
*
|
||||
* Just resetting the counter. New sources will overwrite existing ones.
|
||||
* This might break memory checks in the future if sources need 'free-ing' then
|
||||
* as well.
|
||||
*/
|
||||
static void entropy_clear_sources(mbedtls_entropy_context *ctx)
|
||||
{
|
||||
ctx->source_count = 0;
|
||||
}
|
||||
|
||||
#if defined(MBEDTLS_ENTROPY_NV_SEED)
|
||||
|
||||
#if defined(MBEDTLS_MD_LIGHT) && defined(MBEDTLS_PLATFORM_NV_SEED_ALT)
|
||||
/*
|
||||
* NV seed read/write functions that use a buffer instead of a file
|
||||
*/
|
||||
static unsigned char buffer_seed[MBEDTLS_ENTROPY_BLOCK_SIZE];
|
||||
|
||||
static int buffer_nv_seed_read(unsigned char *buf, size_t buf_len)
|
||||
{
|
||||
if (buf_len != MBEDTLS_ENTROPY_BLOCK_SIZE) {
|
||||
return -1;
|
||||
}
|
||||
|
||||
memcpy(buf, buffer_seed, MBEDTLS_ENTROPY_BLOCK_SIZE);
|
||||
return 0;
|
||||
}
|
||||
|
||||
static int buffer_nv_seed_write(unsigned char *buf, size_t buf_len)
|
||||
{
|
||||
if (buf_len != MBEDTLS_ENTROPY_BLOCK_SIZE) {
|
||||
return -1;
|
||||
}
|
||||
|
||||
memcpy(buffer_seed, buf, MBEDTLS_ENTROPY_BLOCK_SIZE);
|
||||
return 0;
|
||||
}
|
||||
#endif /* MBEDTLS_MD_LIGHT && MBEDTLS_PLATFORM_NV_SEED_ALT */
|
||||
|
||||
#if defined(MBEDTLS_FS_IO)
|
||||
/*
|
||||
* NV seed read/write helpers that fill the base seedfile
|
||||
*/
|
||||
static int write_nv_seed(unsigned char *buf, size_t buf_len)
|
||||
{
|
||||
FILE *f;
|
||||
|
||||
if (buf_len != MBEDTLS_ENTROPY_BLOCK_SIZE) {
|
||||
return -1;
|
||||
}
|
||||
|
||||
if ((f = fopen(MBEDTLS_PLATFORM_STD_NV_SEED_FILE, "w")) == NULL) {
|
||||
return -1;
|
||||
}
|
||||
|
||||
if (fwrite(buf, 1, MBEDTLS_ENTROPY_BLOCK_SIZE, f) !=
|
||||
MBEDTLS_ENTROPY_BLOCK_SIZE) {
|
||||
fclose(f);
|
||||
return -1;
|
||||
}
|
||||
|
||||
fclose(f);
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
#if defined(MBEDTLS_PLATFORM_NV_SEED_ALT)
|
||||
static int read_nv_seed(unsigned char *buf, size_t buf_len)
|
||||
{
|
||||
FILE *f;
|
||||
|
||||
if (buf_len != MBEDTLS_ENTROPY_BLOCK_SIZE) {
|
||||
return -1;
|
||||
}
|
||||
|
||||
if ((f = fopen(MBEDTLS_PLATFORM_STD_NV_SEED_FILE, "rb")) == NULL) {
|
||||
return -1;
|
||||
}
|
||||
|
||||
if (fread(buf, 1, MBEDTLS_ENTROPY_BLOCK_SIZE, f) !=
|
||||
MBEDTLS_ENTROPY_BLOCK_SIZE) {
|
||||
fclose(f);
|
||||
return -1;
|
||||
}
|
||||
|
||||
fclose(f);
|
||||
|
||||
return 0;
|
||||
}
|
||||
#endif /* MBEDTLS_PLATFORM_NV_SEED_ALT */
|
||||
#endif /* MBEDTLS_FS_IO */
|
||||
#endif /* MBEDTLS_ENTROPY_NV_SEED */
|
||||
/* END_HEADER */
|
||||
|
||||
/* BEGIN_DEPENDENCIES
|
||||
* depends_on:MBEDTLS_ENTROPY_C:!MBEDTLS_PSA_INJECT_ENTROPY
|
||||
* END_DEPENDENCIES
|
||||
*/
|
||||
|
||||
/* BEGIN_CASE */
|
||||
void entropy_init_free(int reinit)
|
||||
{
|
||||
mbedtls_entropy_context ctx;
|
||||
|
||||
/* Double free is not explicitly documented to work, but it is convenient
|
||||
* to call mbedtls_entropy_free() unconditionally on an error path without
|
||||
* checking whether it has already been called in the success path. */
|
||||
|
||||
mbedtls_entropy_init(&ctx);
|
||||
mbedtls_entropy_free(&ctx);
|
||||
|
||||
if (reinit) {
|
||||
mbedtls_entropy_init(&ctx);
|
||||
}
|
||||
mbedtls_entropy_free(&ctx);
|
||||
|
||||
/* This test case always succeeds, functionally speaking. A plausible
|
||||
* bug might trigger an invalid pointer dereference or a memory leak. */
|
||||
goto exit;
|
||||
}
|
||||
/* END_CASE */
|
||||
|
||||
/* BEGIN_CASE */
|
||||
void entropy_count_sources()
|
||||
{
|
||||
mbedtls_entropy_context ctx;
|
||||
mbedtls_entropy_init(&ctx);
|
||||
|
||||
#if defined(MBEDTLS_ENTROPY_HAVE_SOURCES)
|
||||
TEST_EQUAL(MBEDTLS_ENTROPY_HAVE_SOURCES, ctx.source_count);
|
||||
#else
|
||||
TEST_EQUAL(0, ctx.source_count);
|
||||
#endif
|
||||
|
||||
#if defined(MBEDTLS_ENTROPY_NV_SEED)
|
||||
TEST_EQUAL(MBEDTLS_ENTROPY_TRUE_SOURCES + 1, ctx.source_count);
|
||||
#else
|
||||
TEST_EQUAL(MBEDTLS_ENTROPY_TRUE_SOURCES, ctx.source_count);
|
||||
#endif
|
||||
|
||||
exit:
|
||||
mbedtls_entropy_free(&ctx);
|
||||
}
|
||||
/* END_CASE */
|
||||
|
||||
/* BEGIN_CASE depends_on:MBEDTLS_ENTROPY_NV_SEED:MBEDTLS_FS_IO */
|
||||
void entropy_seed_file(char *path, int ret)
|
||||
{
|
||||
mbedtls_entropy_context ctx;
|
||||
mbedtls_entropy_init(&ctx);
|
||||
|
||||
MD_PSA_INIT();
|
||||
|
||||
TEST_ASSERT(mbedtls_entropy_write_seed_file(&ctx, path) == ret);
|
||||
TEST_ASSERT(mbedtls_entropy_update_seed_file(&ctx, path) == ret);
|
||||
|
||||
exit:
|
||||
mbedtls_entropy_free(&ctx);
|
||||
MD_PSA_DONE();
|
||||
}
|
||||
/* END_CASE */
|
||||
|
||||
/* BEGIN_CASE depends_on:MBEDTLS_ENTROPY_NV_SEED:MBEDTLS_FS_IO */
|
||||
void entropy_write_base_seed_file(int ret)
|
||||
{
|
||||
mbedtls_entropy_context ctx;
|
||||
mbedtls_entropy_init(&ctx);
|
||||
|
||||
MD_PSA_INIT();
|
||||
|
||||
TEST_ASSERT(mbedtls_entropy_write_seed_file(&ctx, MBEDTLS_PLATFORM_STD_NV_SEED_FILE) == ret);
|
||||
TEST_ASSERT(mbedtls_entropy_update_seed_file(&ctx, MBEDTLS_PLATFORM_STD_NV_SEED_FILE) == ret);
|
||||
|
||||
exit:
|
||||
mbedtls_entropy_free(&ctx);
|
||||
MD_PSA_DONE();
|
||||
}
|
||||
/* END_CASE */
|
||||
|
||||
/* BEGIN_CASE */
|
||||
void entropy_no_sources()
|
||||
{
|
||||
mbedtls_entropy_context ctx;
|
||||
unsigned char buf[MBEDTLS_ENTROPY_BLOCK_SIZE];
|
||||
|
||||
mbedtls_entropy_init(&ctx);
|
||||
entropy_clear_sources(&ctx);
|
||||
TEST_EQUAL(mbedtls_entropy_func(&ctx, buf, sizeof(buf)),
|
||||
MBEDTLS_ERR_ENTROPY_NO_SOURCES_DEFINED);
|
||||
|
||||
exit:
|
||||
mbedtls_entropy_free(&ctx);
|
||||
}
|
||||
/* END_CASE */
|
||||
|
||||
/* BEGIN_CASE */
|
||||
void entropy_too_many_sources()
|
||||
{
|
||||
mbedtls_entropy_context ctx;
|
||||
size_t i;
|
||||
entropy_dummy_context dummy = { DUMMY_REQUESTED_LENGTH, 0, 0 };
|
||||
|
||||
mbedtls_entropy_init(&ctx);
|
||||
|
||||
/*
|
||||
* It's hard to tell precisely when the error will occur,
|
||||
* since we don't know how many sources were automatically added.
|
||||
*/
|
||||
for (i = 0; i < MBEDTLS_ENTROPY_MAX_SOURCES; i++) {
|
||||
(void) mbedtls_entropy_add_source(&ctx, entropy_dummy_source, &dummy,
|
||||
16, MBEDTLS_ENTROPY_SOURCE_WEAK);
|
||||
}
|
||||
|
||||
TEST_ASSERT(mbedtls_entropy_add_source(&ctx, entropy_dummy_source, &dummy,
|
||||
16, MBEDTLS_ENTROPY_SOURCE_WEAK)
|
||||
== MBEDTLS_ERR_ENTROPY_MAX_SOURCES);
|
||||
|
||||
exit:
|
||||
mbedtls_entropy_free(&ctx);
|
||||
}
|
||||
/* END_CASE */
|
||||
|
||||
/* BEGIN_CASE depends_on:ENTROPY_HAVE_STRONG */
|
||||
void entropy_func_len(int len, int ret)
|
||||
{
|
||||
mbedtls_entropy_context ctx;
|
||||
unsigned char buf[MBEDTLS_ENTROPY_BLOCK_SIZE + 10] = { 0 };
|
||||
unsigned char acc[MBEDTLS_ENTROPY_BLOCK_SIZE + 10] = { 0 };
|
||||
size_t i, j;
|
||||
|
||||
mbedtls_entropy_init(&ctx);
|
||||
|
||||
MD_PSA_INIT();
|
||||
|
||||
/*
|
||||
* See comments in mbedtls_entropy_self_test()
|
||||
*/
|
||||
for (i = 0; i < 8; i++) {
|
||||
TEST_ASSERT(mbedtls_entropy_func(&ctx, buf, len) == ret);
|
||||
for (j = 0; j < sizeof(buf); j++) {
|
||||
acc[j] |= buf[j];
|
||||
}
|
||||
}
|
||||
|
||||
if (ret == 0) {
|
||||
for (j = 0; j < (size_t) len; j++) {
|
||||
TEST_ASSERT(acc[j] != 0);
|
||||
}
|
||||
}
|
||||
|
||||
for (j = len; j < sizeof(buf); j++) {
|
||||
TEST_ASSERT(acc[j] == 0);
|
||||
}
|
||||
|
||||
exit:
|
||||
mbedtls_entropy_free(&ctx);
|
||||
MD_PSA_DONE();
|
||||
}
|
||||
/* END_CASE */
|
||||
|
||||
/* BEGIN_CASE */
|
||||
void entropy_source_fail(char *path)
|
||||
{
|
||||
mbedtls_entropy_context ctx;
|
||||
unsigned char buf[16];
|
||||
entropy_dummy_context dummy = { DUMMY_FAIL, 0, 0 };
|
||||
|
||||
mbedtls_entropy_init(&ctx);
|
||||
|
||||
MD_PSA_INIT();
|
||||
|
||||
TEST_ASSERT(mbedtls_entropy_add_source(&ctx, entropy_dummy_source,
|
||||
&dummy, 16,
|
||||
MBEDTLS_ENTROPY_SOURCE_WEAK)
|
||||
== 0);
|
||||
|
||||
TEST_ASSERT(mbedtls_entropy_func(&ctx, buf, sizeof(buf))
|
||||
== MBEDTLS_ERR_ENTROPY_SOURCE_FAILED);
|
||||
TEST_ASSERT(mbedtls_entropy_gather(&ctx)
|
||||
== MBEDTLS_ERR_ENTROPY_SOURCE_FAILED);
|
||||
#if defined(MBEDTLS_FS_IO) && defined(MBEDTLS_ENTROPY_NV_SEED)
|
||||
TEST_ASSERT(mbedtls_entropy_write_seed_file(&ctx, path)
|
||||
== MBEDTLS_ERR_ENTROPY_SOURCE_FAILED);
|
||||
TEST_ASSERT(mbedtls_entropy_update_seed_file(&ctx, path)
|
||||
== MBEDTLS_ERR_ENTROPY_SOURCE_FAILED);
|
||||
#else
|
||||
((void) path);
|
||||
#endif
|
||||
|
||||
exit:
|
||||
mbedtls_entropy_free(&ctx);
|
||||
MD_PSA_DONE();
|
||||
}
|
||||
/* END_CASE */
|
||||
|
||||
/* BEGIN_CASE */
|
||||
void entropy_threshold(int threshold, int chunk_size, int result)
|
||||
{
|
||||
mbedtls_entropy_context ctx;
|
||||
entropy_dummy_context strong =
|
||||
{ DUMMY_CONSTANT_LENGTH, MBEDTLS_ENTROPY_BLOCK_SIZE, 0 };
|
||||
entropy_dummy_context weak = { DUMMY_CONSTANT_LENGTH, chunk_size, 0 };
|
||||
unsigned char buf[MBEDTLS_ENTROPY_BLOCK_SIZE] = { 0 };
|
||||
int ret;
|
||||
|
||||
mbedtls_entropy_init(&ctx);
|
||||
entropy_clear_sources(&ctx);
|
||||
|
||||
MD_PSA_INIT();
|
||||
|
||||
/* Set strong source that reaches its threshold immediately and
|
||||
* a weak source whose threshold is a test parameter. */
|
||||
TEST_ASSERT(mbedtls_entropy_add_source(&ctx, entropy_dummy_source,
|
||||
&strong, 1,
|
||||
MBEDTLS_ENTROPY_SOURCE_STRONG) == 0);
|
||||
TEST_ASSERT(mbedtls_entropy_add_source(&ctx, entropy_dummy_source,
|
||||
&weak, threshold,
|
||||
MBEDTLS_ENTROPY_SOURCE_WEAK) == 0);
|
||||
|
||||
ret = mbedtls_entropy_func(&ctx, buf, sizeof(buf));
|
||||
|
||||
if (result >= 0) {
|
||||
TEST_ASSERT(ret == 0);
|
||||
#if defined(MBEDTLS_ENTROPY_NV_SEED)
|
||||
/* If the NV seed functionality is enabled, there are two entropy
|
||||
* updates: before and after updating the NV seed. */
|
||||
result *= 2;
|
||||
#endif
|
||||
TEST_ASSERT(weak.calls == (size_t) result);
|
||||
} else {
|
||||
TEST_ASSERT(ret == result);
|
||||
}
|
||||
|
||||
exit:
|
||||
mbedtls_entropy_free(&ctx);
|
||||
MD_PSA_DONE();
|
||||
}
|
||||
/* END_CASE */
|
||||
|
||||
/* BEGIN_CASE */
|
||||
void entropy_calls(int strength1, int strength2,
|
||||
int threshold, int chunk_size,
|
||||
int result)
|
||||
{
|
||||
/*
|
||||
* if result >= 0: result = expected number of calls to source 1
|
||||
* if result < 0: result = expected return code from mbedtls_entropy_func()
|
||||
*/
|
||||
|
||||
mbedtls_entropy_context ctx;
|
||||
entropy_dummy_context dummy1 = { DUMMY_CONSTANT_LENGTH, chunk_size, 0 };
|
||||
entropy_dummy_context dummy2 = { DUMMY_CONSTANT_LENGTH, chunk_size, 0 };
|
||||
unsigned char buf[MBEDTLS_ENTROPY_BLOCK_SIZE] = { 0 };
|
||||
int ret;
|
||||
|
||||
mbedtls_entropy_init(&ctx);
|
||||
entropy_clear_sources(&ctx);
|
||||
|
||||
MD_PSA_INIT();
|
||||
|
||||
TEST_ASSERT(mbedtls_entropy_add_source(&ctx, entropy_dummy_source,
|
||||
&dummy1, threshold,
|
||||
strength1) == 0);
|
||||
TEST_ASSERT(mbedtls_entropy_add_source(&ctx, entropy_dummy_source,
|
||||
&dummy2, threshold,
|
||||
strength2) == 0);
|
||||
|
||||
ret = mbedtls_entropy_func(&ctx, buf, sizeof(buf));
|
||||
|
||||
if (result >= 0) {
|
||||
TEST_ASSERT(ret == 0);
|
||||
#if defined(MBEDTLS_ENTROPY_NV_SEED)
|
||||
/* If the NV seed functionality is enabled, there are two entropy
|
||||
* updates: before and after updating the NV seed. */
|
||||
result *= 2;
|
||||
#endif
|
||||
TEST_ASSERT(dummy1.calls == (size_t) result);
|
||||
} else {
|
||||
TEST_ASSERT(ret == result);
|
||||
}
|
||||
|
||||
exit:
|
||||
mbedtls_entropy_free(&ctx);
|
||||
MD_PSA_DONE();
|
||||
}
|
||||
/* END_CASE */
|
||||
|
||||
/* BEGIN_CASE depends_on:MBEDTLS_ENTROPY_NV_SEED:MBEDTLS_FS_IO */
|
||||
void nv_seed_file_create()
|
||||
{
|
||||
unsigned char buf[MBEDTLS_ENTROPY_BLOCK_SIZE];
|
||||
|
||||
memset(buf, 0, MBEDTLS_ENTROPY_BLOCK_SIZE);
|
||||
|
||||
TEST_ASSERT(write_nv_seed(buf, MBEDTLS_ENTROPY_BLOCK_SIZE) == 0);
|
||||
}
|
||||
/* END_CASE */
|
||||
|
||||
/* BEGIN_CASE depends_on:MBEDTLS_ENTROPY_NV_SEED:MBEDTLS_FS_IO:MBEDTLS_PLATFORM_NV_SEED_ALT */
|
||||
void entropy_nv_seed_std_io()
|
||||
{
|
||||
unsigned char io_seed[MBEDTLS_ENTROPY_BLOCK_SIZE];
|
||||
unsigned char check_seed[MBEDTLS_ENTROPY_BLOCK_SIZE];
|
||||
|
||||
memset(io_seed, 1, MBEDTLS_ENTROPY_BLOCK_SIZE);
|
||||
memset(check_seed, 0, MBEDTLS_ENTROPY_BLOCK_SIZE);
|
||||
|
||||
mbedtls_platform_set_nv_seed(mbedtls_platform_std_nv_seed_read,
|
||||
mbedtls_platform_std_nv_seed_write);
|
||||
|
||||
/* Check if platform NV read and write manipulate the same data */
|
||||
TEST_ASSERT(write_nv_seed(io_seed, MBEDTLS_ENTROPY_BLOCK_SIZE) == 0);
|
||||
TEST_ASSERT(mbedtls_nv_seed_read(check_seed, MBEDTLS_ENTROPY_BLOCK_SIZE) ==
|
||||
MBEDTLS_ENTROPY_BLOCK_SIZE);
|
||||
|
||||
TEST_ASSERT(memcmp(io_seed, check_seed, MBEDTLS_ENTROPY_BLOCK_SIZE) == 0);
|
||||
|
||||
memset(check_seed, 0, MBEDTLS_ENTROPY_BLOCK_SIZE);
|
||||
|
||||
/* Check if platform NV write and raw read manipulate the same data */
|
||||
TEST_ASSERT(mbedtls_nv_seed_write(io_seed, MBEDTLS_ENTROPY_BLOCK_SIZE) ==
|
||||
MBEDTLS_ENTROPY_BLOCK_SIZE);
|
||||
TEST_ASSERT(read_nv_seed(check_seed, MBEDTLS_ENTROPY_BLOCK_SIZE) == 0);
|
||||
|
||||
TEST_ASSERT(memcmp(io_seed, check_seed, MBEDTLS_ENTROPY_BLOCK_SIZE) == 0);
|
||||
}
|
||||
/* END_CASE */
|
||||
|
||||
/* BEGIN_CASE depends_on:MBEDTLS_MD_LIGHT:MBEDTLS_ENTROPY_NV_SEED:MBEDTLS_PLATFORM_NV_SEED_ALT */
|
||||
void entropy_nv_seed(data_t *read_seed)
|
||||
{
|
||||
#if defined(MBEDTLS_ENTROPY_SHA512_ACCUMULATOR)
|
||||
const mbedtls_md_info_t *md_info =
|
||||
mbedtls_md_info_from_type(MBEDTLS_MD_SHA512);
|
||||
#elif defined(MBEDTLS_ENTROPY_SHA256_ACCUMULATOR)
|
||||
const mbedtls_md_info_t *md_info =
|
||||
mbedtls_md_info_from_type(MBEDTLS_MD_SHA256);
|
||||
#else
|
||||
#error "Unsupported entropy accumulator"
|
||||
#endif
|
||||
mbedtls_md_context_t accumulator;
|
||||
mbedtls_entropy_context ctx;
|
||||
int (*original_mbedtls_nv_seed_read)(unsigned char *buf, size_t buf_len) =
|
||||
mbedtls_nv_seed_read;
|
||||
int (*original_mbedtls_nv_seed_write)(unsigned char *buf, size_t buf_len) =
|
||||
mbedtls_nv_seed_write;
|
||||
|
||||
unsigned char header[2];
|
||||
unsigned char entropy[MBEDTLS_ENTROPY_BLOCK_SIZE];
|
||||
unsigned char buf[MBEDTLS_ENTROPY_BLOCK_SIZE];
|
||||
unsigned char empty[MBEDTLS_ENTROPY_BLOCK_SIZE];
|
||||
unsigned char check_seed[MBEDTLS_ENTROPY_BLOCK_SIZE];
|
||||
unsigned char check_entropy[MBEDTLS_ENTROPY_BLOCK_SIZE];
|
||||
|
||||
memset(entropy, 0, MBEDTLS_ENTROPY_BLOCK_SIZE);
|
||||
memset(buf, 0, MBEDTLS_ENTROPY_BLOCK_SIZE);
|
||||
memset(empty, 0, MBEDTLS_ENTROPY_BLOCK_SIZE);
|
||||
memset(check_seed, 2, MBEDTLS_ENTROPY_BLOCK_SIZE);
|
||||
memset(check_entropy, 3, MBEDTLS_ENTROPY_BLOCK_SIZE);
|
||||
|
||||
// Make sure we read/write NV seed from our buffers
|
||||
mbedtls_platform_set_nv_seed(buffer_nv_seed_read, buffer_nv_seed_write);
|
||||
|
||||
mbedtls_md_init(&accumulator);
|
||||
mbedtls_entropy_init(&ctx);
|
||||
entropy_clear_sources(&ctx);
|
||||
|
||||
MD_PSA_INIT();
|
||||
|
||||
TEST_ASSERT(mbedtls_entropy_add_source(&ctx, mbedtls_nv_seed_poll, NULL,
|
||||
MBEDTLS_ENTROPY_BLOCK_SIZE,
|
||||
MBEDTLS_ENTROPY_SOURCE_STRONG) == 0);
|
||||
|
||||
// Set the initial NV seed to read
|
||||
TEST_ASSERT(read_seed->len >= MBEDTLS_ENTROPY_BLOCK_SIZE);
|
||||
memcpy(buffer_seed, read_seed->x, MBEDTLS_ENTROPY_BLOCK_SIZE);
|
||||
|
||||
// Do an entropy run
|
||||
TEST_ASSERT(mbedtls_entropy_func(&ctx, entropy, sizeof(entropy)) == 0);
|
||||
// Determine what should have happened with manual entropy internal logic
|
||||
|
||||
// Init accumulator
|
||||
header[1] = MBEDTLS_ENTROPY_BLOCK_SIZE;
|
||||
TEST_ASSERT(mbedtls_md_setup(&accumulator, md_info, 0) == 0);
|
||||
|
||||
// First run for updating write_seed
|
||||
header[0] = 0;
|
||||
TEST_ASSERT(mbedtls_md_starts(&accumulator) == 0);
|
||||
TEST_ASSERT(mbedtls_md_update(&accumulator, header, 2) == 0);
|
||||
TEST_ASSERT(mbedtls_md_update(&accumulator,
|
||||
read_seed->x, MBEDTLS_ENTROPY_BLOCK_SIZE) == 0);
|
||||
TEST_ASSERT(mbedtls_md_finish(&accumulator, buf) == 0);
|
||||
|
||||
TEST_ASSERT(mbedtls_md_starts(&accumulator) == 0);
|
||||
TEST_ASSERT(mbedtls_md_update(&accumulator,
|
||||
buf, MBEDTLS_ENTROPY_BLOCK_SIZE) == 0);
|
||||
|
||||
TEST_ASSERT(mbedtls_md(md_info, buf, MBEDTLS_ENTROPY_BLOCK_SIZE,
|
||||
check_seed) == 0);
|
||||
|
||||
// Second run for actual entropy (triggers mbedtls_entropy_update_nv_seed)
|
||||
header[0] = MBEDTLS_ENTROPY_SOURCE_MANUAL;
|
||||
TEST_ASSERT(mbedtls_md_update(&accumulator, header, 2) == 0);
|
||||
TEST_ASSERT(mbedtls_md_update(&accumulator,
|
||||
empty, MBEDTLS_ENTROPY_BLOCK_SIZE) == 0);
|
||||
|
||||
header[0] = 0;
|
||||
TEST_ASSERT(mbedtls_md_update(&accumulator, header, 2) == 0);
|
||||
TEST_ASSERT(mbedtls_md_update(&accumulator,
|
||||
check_seed, MBEDTLS_ENTROPY_BLOCK_SIZE) == 0);
|
||||
TEST_ASSERT(mbedtls_md_finish(&accumulator, buf) == 0);
|
||||
|
||||
TEST_ASSERT(mbedtls_md(md_info, buf, MBEDTLS_ENTROPY_BLOCK_SIZE,
|
||||
check_entropy) == 0);
|
||||
|
||||
// Check result of both NV file and entropy received with the manual calculations
|
||||
TEST_ASSERT(memcmp(check_seed, buffer_seed, MBEDTLS_ENTROPY_BLOCK_SIZE) == 0);
|
||||
TEST_ASSERT(memcmp(check_entropy, entropy, MBEDTLS_ENTROPY_BLOCK_SIZE) == 0);
|
||||
|
||||
exit:
|
||||
mbedtls_md_free(&accumulator);
|
||||
mbedtls_entropy_free(&ctx);
|
||||
mbedtls_nv_seed_read = original_mbedtls_nv_seed_read;
|
||||
mbedtls_nv_seed_write = original_mbedtls_nv_seed_write;
|
||||
MD_PSA_DONE();
|
||||
}
|
||||
/* END_CASE */
|
||||
|
||||
/* BEGIN_CASE depends_on:ENTROPY_HAVE_STRONG:MBEDTLS_SELF_TEST */
|
||||
void entropy_selftest(int result)
|
||||
{
|
||||
MD_PSA_INIT();
|
||||
|
||||
TEST_ASSERT(mbedtls_entropy_self_test(1) == result);
|
||||
|
||||
exit:
|
||||
MD_PSA_DONE();
|
||||
}
|
||||
/* END_CASE */
|
||||
21
vendor/mbedtls/tests/suites/test_suite_error.data
vendored
Normal file
21
vendor/mbedtls/tests/suites/test_suite_error.data
vendored
Normal file
@@ -0,0 +1,21 @@
|
||||
Single low error
|
||||
depends_on:MBEDTLS_AES_C
|
||||
error_strerror:-0x0020:"AES - Invalid key length"
|
||||
|
||||
Single high error
|
||||
depends_on:MBEDTLS_RSA_C
|
||||
error_strerror:-0x4080:"RSA - Bad input parameters to function"
|
||||
|
||||
Low and high error
|
||||
depends_on:MBEDTLS_AES_C:MBEDTLS_RSA_C
|
||||
error_strerror:-0x40A0:"RSA - Bad input parameters to function \: AES - Invalid key length"
|
||||
|
||||
Non existing high error
|
||||
error_strerror:-0x8880:"UNKNOWN ERROR CODE (8880)"
|
||||
|
||||
Non existing low error
|
||||
error_strerror:-0x007F:"UNKNOWN ERROR CODE (007F)"
|
||||
|
||||
Non existing low and high error
|
||||
error_strerror:-0x88FF:"UNKNOWN ERROR CODE (8880) \: UNKNOWN ERROR CODE (007F)"
|
||||
|
||||
21
vendor/mbedtls/tests/suites/test_suite_error.function
vendored
Normal file
21
vendor/mbedtls/tests/suites/test_suite_error.function
vendored
Normal file
@@ -0,0 +1,21 @@
|
||||
/* BEGIN_HEADER */
|
||||
#include "mbedtls/error.h"
|
||||
/* END_HEADER */
|
||||
|
||||
/* BEGIN_DEPENDENCIES
|
||||
* depends_on:MBEDTLS_ERROR_C
|
||||
* END_DEPENDENCIES
|
||||
*/
|
||||
|
||||
/* BEGIN_CASE */
|
||||
void error_strerror(int code, char *result_str)
|
||||
{
|
||||
char buf[500];
|
||||
|
||||
memset(buf, 0, sizeof(buf));
|
||||
|
||||
mbedtls_strerror(code, buf, 500);
|
||||
|
||||
TEST_ASSERT(strcmp(buf, result_str) == 0);
|
||||
}
|
||||
/* END_CASE */
|
||||
1407
vendor/mbedtls/tests/suites/test_suite_gcm.aes128_de.data
vendored
Normal file
1407
vendor/mbedtls/tests/suites/test_suite_gcm.aes128_de.data
vendored
Normal file
File diff suppressed because it is too large
Load Diff
1407
vendor/mbedtls/tests/suites/test_suite_gcm.aes128_en.data
vendored
Normal file
1407
vendor/mbedtls/tests/suites/test_suite_gcm.aes128_en.data
vendored
Normal file
File diff suppressed because it is too large
Load Diff
1351
vendor/mbedtls/tests/suites/test_suite_gcm.aes192_de.data
vendored
Normal file
1351
vendor/mbedtls/tests/suites/test_suite_gcm.aes192_de.data
vendored
Normal file
File diff suppressed because it is too large
Load Diff
1351
vendor/mbedtls/tests/suites/test_suite_gcm.aes192_en.data
vendored
Normal file
1351
vendor/mbedtls/tests/suites/test_suite_gcm.aes192_en.data
vendored
Normal file
File diff suppressed because it is too large
Load Diff
1351
vendor/mbedtls/tests/suites/test_suite_gcm.aes256_de.data
vendored
Normal file
1351
vendor/mbedtls/tests/suites/test_suite_gcm.aes256_de.data
vendored
Normal file
File diff suppressed because it is too large
Load Diff
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user